@charset "UTF-8";@font-face{font-family:ABeeZee;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/abeezee/abeezee-regular-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:ABeeZee;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/abeezee/abeezee-regular-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:ABeeZee;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/abeezee/abeezee-italic-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:ABeeZee;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/abeezee/abeezee-italic-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/nunito/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/nunito/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/nunito/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/nunito/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/nunito/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito/nunito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/nunito/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--brand-primary:#F67160;--brand-secondary:#F0C374;--brand-accent-dark:#EA580C;--brand-accent-light:#FF8F61;--brand-highlight:#FAD8D6;--brand-primary-rgb:246,113,96;--brand-accent-rgb:255,143,97;--brand-header-rgb:239,123,82;--brand-focus-rgb:249,115,99;--brand-focus-alt-rgb:250,120,97;--brand-primary-faded:rgba(var(--brand-primary-rgb), 0.4);--brand-accent-bg:rgba(var(--brand-accent-rgb), 0.1);--brand-accent-bg-subtle:rgba(var(--brand-accent-rgb), 0.08);--brand-accent-bg-faint:rgba(var(--brand-accent-rgb), 0.06);--brand-accent-bg-hover:rgba(var(--brand-accent-rgb), 0.18);--brand-accent-border:rgba(var(--brand-accent-rgb), 0.15);--text-dark:#111827;--text-primary:#1F2937;--text-secondary:#374151;--text-muted:#6B7280;--text-border-gray:#929292;--text-white:#ffffff;--text-white-muted:rgba(255, 255, 255, 0.85);--bg-white:#ffffff;--bg-cream:#FBF6F3;--bg-panel-cream:#FCF4EF;--bg-panel-cream-alt:#FCF6F2;--bg-hover-cream:#F8EAE2;--bg-gray-light:#F3F4F6;--bg-gray-medium:#E5E7EB;--bg-gray-muted:#6B7280;--bg-error-light:lightyellow;--bg-hover-faint:rgba(0, 0, 0, 0.03);--bg-hover-light:rgba(0, 0, 0, 0.06);--border-soft:#E5E7EB;--border-side:#EAD9D1;--border-subtle:rgba(0, 0, 0, 0.05);--border-light-pink:#FAD9D4;--status-success:#28a745;--status-success-dark:#218838;--status-success-validation:#26b050;--status-error:#dc3545;--status-error-dark:#c82333;--status-error-validation:#e50000;--status-warning-red:#EF4444;--status-warning-orange:#f5a623;--status-cooldown-complete:#43a047;--link-default:#006bb7;--btn-primary-bg:#1b6ec2;--btn-primary-border:#1861ac;--btn-focus:var(--focus-ring-brand);--shadow-xs:rgba(0, 0, 0, 0.03);--shadow-sm:rgba(0, 0, 0, 0.05);--shadow-md:rgba(0, 0, 0, 0.1);--shadow-lg:rgba(0, 0, 0, 0.12);--shadow-xl:rgba(0, 0, 0, 0.18);--shadow-2xl:rgba(0, 0, 0, 0.2);--shadow-3xl:rgba(0, 0, 0, 0.35);--shadow-dark:rgba(0, 0, 0, 0.5);--focus-ring-brand:rgba(var(--brand-focus-rgb), 0.25);--focus-ring-brand-alt:rgba(var(--brand-focus-alt-rgb), 0.25);--focus-ring-blue:rgba(77, 144, 254, 0.5);--focus-ring-teal:rgba(0, 128, 128, 0.15);--focus-ring-dark:rgba(33, 37, 41, 0.2);--focus-ring-white:rgba(255, 255, 255, 0.2);--bs-focus-ring-color:var(--focus-ring-brand);--overlay-dark:rgba(0, 0, 0, 0.5);--overlay-darker:rgba(0, 0, 0, 0.7);--overlay-backdrop:rgba(0, 0, 0, 0.6);--overlay-light:rgba(255, 255, 255, 0.2);--overlay-light-strong:rgba(255, 255, 255, 0.25);--overlay-light-md:rgba(255, 255, 255, 0.3);--overlay-light-lg:rgba(255, 255, 255, 0.4);--group-coral:#E8927C;--group-gray:#6B7280;--group-teal:#5EBBAB;--group-green:#6ABF69;--group-brown:#A67C52;--group-pink:#DB7093;--group-purple:#9B59B6;--group-blue:#5B9BD5;--group-navy:#1B3A57;--group-yellow:#F4D03F;--group-red:#E74C3C;--glow-brand-xs:rgba(var(--brand-primary-rgb), 0.15);--glow-brand-sm:rgba(var(--brand-header-rgb), 0.2);--glow-brand-md:rgba(var(--brand-header-rgb), 0.3);--glow-brand-lg:rgba(var(--brand-primary-rgb), 0.35);--skeleton-base:#F0F0F0;--skeleton-highlight:#E0E0E0;--ratho-header-gradient-yellow:#F7A832;--ratho-header-gradient-orange:#EF7B52;--ratho-header-gradient-coral:#E8837C;--gradient-start:var(--brand-primary);--gradient-end:var(--brand-accent-light);--gradient-nav-start:#F16B5A;--gradient-nav-end:#FF9A6C;--cream:var(--bg-cream);--page-pad:clamp(0.75rem, 2.5vw, 3rem);--page-max:clamp(1600px, 100vw - 4rem, 2400px);--content-top-gap:1rem;--sidebar-width:16rem;--sidebar-content-gap:clamp(3rem, 4vw, 5rem);--content-surface-height:clamp(420px, 55dvh, 640px);--flyout-width:600px;--flyout-handle-width:32px;--flyout-handle-height:80px;--flyout-radius:14px;--flyout-speed:0.3s;--flyout-bg:var(--bg-cream);--flyout-margin:30px;--header-height:5rem;--ratho-input-height:44px;--ratho-input-height-mobile:48px;--ratho-input-radius:.75rem;--ratho-input-padding-x:.75rem;--ratho-input-border-color:var(--brand-accent-light, #ff8f61);--ratho-input-border-color-hover:var(--brand-accent-dark, #e67a4a);--ratho-input-focus-shadow:0 0 0 0.2rem rgba(var(--brand-accent-rgb), 0.25);--ratho-input-min-width:220px;--z-header:1030;--z-dropdown-menu:1045;--z-offcanvas:1055;--surface-primary:var(--bg-cream);--surface-elevated:var(--bg-white);--surface-secondary:var(--bg-panel-cream);--surface-hover:var(--bg-hover-cream);--text-on-surface:var(--text-dark);--text-on-brand:var(--text-white)}[data-theme=dark]{--bg-cream:#1a1a2e;--bg-white:#16213e;--bg-panel-cream:#1a1a2e;--bg-panel-cream-alt:#1e2a45;--bg-hover-cream:#2a2a4a;--bg-gray-light:#1e2a45;--bg-gray-medium:#334155;--bg-error-light:#3b2e00;--bg-hover-faint:rgba(255, 255, 255, 0.03);--bg-hover-light:rgba(255, 255, 255, 0.06);--text-dark:#f1f5f9;--text-primary:#e2e8f0;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-border-gray:#64748b;--border-soft:#334155;--border-side:#334155;--border-subtle:rgba(255, 255, 255, 0.08);--border-light-pink:#4a2a3a;--shadow-xs:rgba(0, 0, 0, 0.2);--shadow-sm:rgba(0, 0, 0, 0.3);--shadow-md:rgba(0, 0, 0, 0.4);--shadow-lg:rgba(0, 0, 0, 0.45);--shadow-xl:rgba(0, 0, 0, 0.5);--shadow-2xl:rgba(0, 0, 0, 0.55);--shadow-3xl:rgba(0, 0, 0, 0.6);--shadow-dark:rgba(0, 0, 0, 0.7);--skeleton-base:#2a2a4a;--skeleton-highlight:#334155;--link-default:#60a5fa;--btn-primary-bg:#2563eb;--btn-primary-border:#1d4ed8;--brand-highlight:#3a2a3a;--focus-ring-brand:rgba(var(--brand-focus-rgb), 0.5);--focus-ring-brand-alt:rgba(var(--brand-focus-alt-rgb), 0.5);--focus-ring-blue:rgba(77, 144, 254, 0.6);--focus-ring-dark:rgba(255, 255, 255, 0.3)}@media (prefers-color-scheme:dark){[data-theme=auto]{--bg-cream:#1a1a2e;--bg-white:#16213e;--bg-panel-cream:#1a1a2e;--bg-panel-cream-alt:#1e2a45;--bg-hover-cream:#2a2a4a;--bg-gray-light:#1e2a45;--bg-gray-medium:#334155;--bg-error-light:#3b2e00;--bg-hover-faint:rgba(255, 255, 255, 0.03);--bg-hover-light:rgba(255, 255, 255, 0.06);--text-dark:#f1f5f9;--text-primary:#e2e8f0;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--text-border-gray:#64748b;--border-soft:#334155;--border-side:#334155;--border-subtle:rgba(255, 255, 255, 0.08);--border-light-pink:#4a2a3a;--shadow-xs:rgba(0, 0, 0, 0.2);--shadow-sm:rgba(0, 0, 0, 0.3);--shadow-md:rgba(0, 0, 0, 0.4);--shadow-lg:rgba(0, 0, 0, 0.45);--shadow-xl:rgba(0, 0, 0, 0.5);--shadow-2xl:rgba(0, 0, 0, 0.55);--shadow-3xl:rgba(0, 0, 0, 0.6);--shadow-dark:rgba(0, 0, 0, 0.7);--skeleton-base:#2a2a4a;--skeleton-highlight:#334155;--link-default:#60a5fa;--btn-primary-bg:#2563eb;--btn-primary-border:#1d4ed8;--brand-highlight:#3a2a3a;--focus-ring-brand:rgba(var(--brand-focus-rgb), 0.5);--focus-ring-brand-alt:rgba(var(--brand-focus-alt-rgb), 0.5);--focus-ring-blue:rgba(77, 144, 254, 0.6);--focus-ring-dark:rgba(255, 255, 255, 0.3)}}body,html{height:100%;width:100%;margin:0;font-family:var(--font-family-base)}html{overflow-x:hidden}body{min-height:100vh;background-color:var(--bg-cream);box-sizing:border-box}.page-container{width:100%;max-width:var(--page-max);margin-left:auto;margin-right:auto;padding-left:var(--page-pad);padding-right:var(--page-pad);box-sizing:border-box}.side-width{width:var(--sidebar-width);flex-shrink:0}.mt-content{margin-top:var(--content-top-gap)}.content{padding-top:1.1rem}.bg-brand-gradient{background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end))}@media (max-width:575.98px){:root{--sidebar-width:100%;--sidebar-content-gap:0;--content-top-gap:0.75rem;--flyout-width:100%;--flyout-margin:10px}}@media (min-width:576px) and (max-width:767.98px){:root{--content-top-gap:0.875rem;--sidebar-width:100%;--sidebar-content-gap:0}}@media (min-width:768px) and (max-width:1199.98px){:root{--sidebar-width:14rem;--sidebar-content-gap:0}}.btn-link,a{color:var(--link-default)}.pe-force{cursor:pointer}button:disabled,button[disabled]{cursor:not-allowed;pointer-events:auto}.btn-primary{color:var(--text-white);background-color:var(--btn-primary-bg);border-color:var(--btn-primary-border)}.btn-link.nav-link:focus,.btn:active:focus,.btn:focus,.form-check-input:focus,.form-control:focus,.form-select:focus{box-shadow:0 0 0 .1rem var(--bg-white),0 0 0 .25rem var(--btn-focus);border-color:var(--brand-primary)}h1:focus{outline:0}.valid.modified:not([type=checkbox]){outline:1px solid var(--status-success-validation)}.invalid{outline:1px solid var(--status-error-validation)}.validation-message{color:var(--status-error-validation)}.darker-border-checkbox.form-check-input{border-color:var(--text-border-gray)}.form-check-input:checked,.form-check-input:indeterminate{background-color:var(--brand-accent-light,#ff8f61);border-color:var(--brand-accent-light,#ff8f61)}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:var(--bs-secondary-color);text-align:end}.form-floating>.form-control-plaintext:focus::placeholder,.form-floating>.form-control:focus::placeholder{text-align:start}.blazor-error-boundary{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem,#b32121;padding:1rem 1rem 1rem 3.7rem;color:#fff}.blazor-error-boundary::after{content:"An error has occurred."}:root{--font-family-base:Nunito,sans-serif;--font-family-student:ABeeZee,sans-serif;--font-family-mono:Consolas,Courier New,monospace;--fs-3xs:0.625rem;--fs-2xs:0.6875rem;--fs-xs:0.75rem;--fs-sm:0.875rem;--fs-base:1rem;--fs-md:1.125rem;--fs-lg:1.25rem;--fs-xl:1.5rem;--fs-2xl:2rem;--fs-3xl:3rem;--fs-4xl:4rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.2;--lh-normal:1.5;--lh-loose:1.7}.ratio picture{display:block}.content-soft-bg{background-color:var(--bg-panel-cream-alt);border-radius:.75rem;padding:1rem}.border-soft{border:1px solid var(--border-side)}.text-gradient-end{color:var(--gradient-end)}@media (max-width:991.98px){*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none}}.bg-brand-gradient{background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end))!important}.gradient-border{padding:3px;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border-radius:8px}.gradient-border-sm{padding:2px;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border-radius:4px}.back-button-arrow,.ratho-title-bar-icon,.text-brand-gradient{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.back-button-position{left:.75rem}.min-w-0{min-width:0!important}@media (min-width:768px){.w-md-auto{width:auto!important}}.btn-icon-square{width:2.5rem;height:2.5rem;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.library-add-btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;font-size:1rem;font-weight:600;color:var(--text-white);background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border:none;border-radius:.625rem;cursor:pointer;text-decoration:none;box-shadow:0 3px 8px var(--glow-brand-md);transition:all .2s ease}.library-add-btn i{margin-right:.75rem;font-size:1rem}.library-add-btn:hover:not(:disabled){box-shadow:0 4px 12px var(--glow-brand-lg);transform:translateY(-2px)}.library-add-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 6px var(--glow-brand-md)}.library-add-btn:focus,.library-add-btn:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.library-add-btn:disabled{opacity:.6;cursor:not-allowed}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;transition-duration:0s!important;scroll-behavior:auto!important}}.page{min-height:100dvh;background-color:var(--bg-cream);padding-bottom:.75rem;position:relative;z-index:1;display:flex;flex-direction:column;overflow-x:hidden}.group-select-page-wrapper~.page{background-color:transparent}.standard-layout-bg{background-color:var(--bg-cream)}.group-select-page-wrapper~.standard-layout-bg{background-color:transparent}.layout-gap{gap:var(--sidebar-content-gap)}.page>.page-container{flex:0 0 auto}@media (min-width:1200px){.layout-gap>.side-width{position:sticky;top:calc(var(--header-height) + 1rem);align-self:flex-start}}.tab-main{max-width:100%;min-width:0;padding-bottom:.75rem;display:flex;flex-direction:column}.tab-main>.ratho-card{min-height:var(--content-surface-height);margin-bottom:0;margin-top:3.5rem}.tab-main .ratho-tab-view{display:flex;flex-direction:column}.tab-main .ratho-tab-view .nav-link.active{box-shadow:0 .125rem .25rem var(--shadow-xs)}.tab-main .ratho-tab-view .ratho-tab-content{min-height:9.375rem;overflow:visible;box-shadow:0 .125rem .25rem var(--shadow-xs)}.tab-main .ratho-tab-view .ratho-tab-content::before{box-shadow:none}@media (min-width:1200px){.tab-main>.ratho-card{min-height:0;flex-grow:1}.tab-main .ratho-tab-view{flex-grow:1}.tab-main .ratho-tab-view .ratho-tab-content{min-height:0;flex-grow:1}}.mobile-sidebar-offcanvas{background-color:var(--bg-cream);width:var(--sidebar-width);max-width:85vw;z-index:var(--z-offcanvas)}.mobile-sidebar-offcanvas .offcanvas-header{padding:1rem;justify-content:flex-end;border-bottom:1px solid var(--border-soft)}.mobile-sidebar-offcanvas .offcanvas-body{overflow-y:auto}.mobile-sidebar-offcanvas .portal-sidebar{width:100%}#blazor-error-ui{color-scheme:light only;background:var(--bg-error-light);bottom:0;box-shadow:0 -1px 2px var(--shadow-2xl);display:none;left:0;padding:.6rem 1.25rem .7rem 1.25rem;position:fixed;width:100%;z-index:1000}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem}#blazor-error-ui .reload{color:inherit;text-decoration:underline}.portal-header{height:var(--header-height);overflow:visible;position:relative;z-index:var(--z-header)}.mobile-sidebar-toggle{width:2.5rem;height:2.5rem;background-color:var(--bg-white);border:none;border-radius:1rem;box-shadow:0 2px 6px var(--shadow-lg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:box-shadow .15s ease}.mobile-sidebar-toggle:hover{box-shadow:0 4px 10px var(--shadow-xl)}.mobile-sidebar-toggle i{font-size:1.25rem;color:var(--gradient-end)}.portal-header-svg{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.portal-header-content{position:relative;z-index:2;height:100%;padding-bottom:1rem}.portal-header-content>div:first-child{transform:rotate(.3deg);transform-origin:center center}.portal-header-content>div:last-child{transform:rotate(-.3deg);transform-origin:center center}.portal-header-logo-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding-bottom:1rem}@media (max-width:575.98px){.mobile-sidebar-toggle{width:2.25rem;height:2.25rem;border-radius:.75rem}.mobile-sidebar-toggle i{font-size:1.125rem}}.portal-sidebar{width:var(--sidebar-width)}@media (max-width:1199.98px){.portal-sidebar{width:100%;margin-bottom:1rem}}.portal-sidebar .ratho-sidebar-nav-btn:first-of-type{margin-top:.5rem}.portal-sidebar .group-libraries{margin-top:.75rem}.header-dropdown,.header-dropdown-btn{--dropdown-btn-size:2.5rem;--dropdown-radius:1rem;--dropdown-transition:0.18s ease}.header-dropdown{--dropdown-min-width:280px;position:relative;display:inline-block;z-index:var(--z-dropdown-menu)}.header-dropdown-btn{width:var(--dropdown-btn-size);height:var(--dropdown-btn-size);background-color:var(--bg-white);border:none;border-radius:var(--dropdown-radius);box-shadow:0 2px 6px var(--shadow-lg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:box-shadow .15s ease;text-decoration:none;color:inherit}.header-dropdown-btn:hover{box-shadow:0 4px 10px var(--shadow-xl)}.header-dropdown-btn:focus{outline:0}.header-dropdown-btn:focus-visible{outline:2px solid var(--focus-ring-brand);outline-offset:2px}.header-dropdown-btn i{font-size:1.25rem;color:var(--gradient-end)}.header-dropdown-menu{position:absolute;top:calc(100% + .25rem);min-width:var(--dropdown-min-width);background:var(--bg-white);border-radius:var(--dropdown-radius);box-shadow:0 18px 45px var(--shadow-xl);border:1px solid var(--border-side);padding:1rem;z-index:var(--z-dropdown-menu);opacity:0;transform:scale(.92);transition:opacity var(--dropdown-transition),transform var(--dropdown-transition);pointer-events:none}.header-dropdown-menu.show{opacity:1;transform:scale(1);pointer-events:auto}.header-dropdown-menu .dropdown-divider,.header-dropdown-menu hr{height:0;margin:.5rem 0;border:0;border-top:1px solid var(--border-side)}@media (max-width:767.98px){.header-dropdown{--dropdown-min-width:260px}.header-dropdown-menu{padding:.75rem}}@media (max-width:575.98px){.header-dropdown,.header-dropdown-btn{--dropdown-btn-size:2.25rem;--dropdown-radius:0.75rem}.header-dropdown{--dropdown-min-width:min(240px, calc(100vw - 2rem))}.header-dropdown-btn i{font-size:1.125rem}.header-dropdown-menu{padding:.625rem}}.dropdown-menu-item{display:flex;align-items:center;gap:.75rem;padding:.65rem .6rem;border-radius:.6rem;color:var(--text-primary);text-decoration:none;transition:background-color .15s ease;background:0 0;border:none;width:100%;text-align:left;font-size:inherit;font-family:inherit;cursor:pointer}.dropdown-menu-item:hover{background-color:var(--bg-panel-cream);color:var(--text-primary)}.dropdown-menu-item i{color:var(--brand-primary);font-size:1rem;width:1.25rem;text-align:center}.dropdown-menu-item-disabled{opacity:.5;cursor:not-allowed}.dropdown-menu-item-disabled:hover{background-color:transparent}.dropdown-menu-item-disabled i:last-child{color:var(--text-muted)}@media (max-width:575.98px){.dropdown-menu-item{padding:.75rem .625rem;min-height:44px;font-size:1rem}}.header-settings-dropdown .header-dropdown-menu{right:0;transform-origin:top right}.header-app-drawer{--dropdown-min-width:320px}.header-app-drawer .header-dropdown-menu{left:0;transform-origin:top left;padding:.75rem}.header-app-drawer-btn .custom-grid-icon{display:block;width:18px;height:18px;color:var(--gradient-end)}.header-app-drawer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.125rem}.header-app-drawer-item{padding:.5rem .25rem .4rem;border-radius:.6rem;color:var(--text-primary);transition:background-color .15s ease}.header-app-drawer-item:hover{background-color:var(--bg-panel-cream);color:var(--text-primary)}.header-app-drawer-icon{width:56px;height:56px}.header-app-drawer-icon img{width:100%;height:100%;object-fit:contain}.header-app-drawer-icon i{font-size:2rem;color:var(--text-muted)}.header-app-drawer-name{font-size:.75rem;line-height:1.2;color:var(--text-secondary)}@media (max-width:575.98px){.header-app-drawer{--dropdown-min-width:min(280px, calc(100vw - 2rem))}.header-app-drawer .header-dropdown-menu{left:-.5rem;padding:.5rem}.header-app-drawer-item{padding:.375rem .125rem}.header-app-drawer-icon{width:44px;height:44px}.header-app-drawer-icon i{font-size:1.5rem}}.student-profile{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1rem 0;margin-bottom:1rem;width:100%}.student-profile-avatar{position:relative;width:min(85%,220px);height:auto;aspect-ratio:1;border-radius:50%;padding:6px;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));display:flex;align-items:center;justify-content:center;transition:transform .2s ease;margin-bottom:.75rem;box-shadow:0 4px 12px var(--shadow-sm)}.student-profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;background-color:var(--bg-white);pointer-events:none}.student-profile-avatar .student-profile-avatar-overlay{position:absolute;inset:6px;border-radius:50%;background-color:var(--overlay-dark);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;pointer-events:none}.student-profile-avatar .student-profile-avatar-overlay i{color:var(--text-white);font-size:1.25rem}.student-profile-avatar.is-editable{cursor:pointer}.student-profile-avatar.is-editable:hover{transform:scale(1.05)}.student-profile-avatar.is-editable:focus .student-profile-avatar-overlay,.student-profile-avatar.is-editable:hover .student-profile-avatar-overlay{opacity:1}.student-profile-name{display:flex;flex-direction:column;align-items:center;gap:.125rem}.student-profile-name .student-firstname{font-size:1.25rem;font-weight:700;color:var(--brand-primary);line-height:1.2}.student-profile-name .student-lastname{font-size:1rem;font-weight:500;color:var(--text-dark);line-height:1.2}.student-profile-name .student-env-name{font-size:.875rem;font-weight:400;color:var(--text-muted);line-height:1.2;margin-top:.25rem}.student-profile-name .student-groupname{font-size:1rem;font-weight:400;color:var(--text-muted);line-height:1.2;margin-top:.25rem}.profile-card{background-color:var(--bg-white);border-radius:.75rem;box-shadow:0 1px 2px var(--shadow-sm);overflow:hidden;margin-bottom:1rem}.profile-card-header{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));padding:1rem}.profile-avatar{width:3.25rem;height:3.25rem;border-radius:50%;background-color:var(--bg-white);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;position:relative}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-avatar .profile-avatar-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--overlay-dark);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.profile-avatar .profile-avatar-overlay i{color:var(--text-white);font-size:.875rem}.profile-avatar.is-editable{cursor:pointer}.profile-avatar.is-editable:focus .profile-avatar-overlay,.profile-avatar.is-editable:hover .profile-avatar-overlay{opacity:1}.profile-info{color:var(--text-white);flex:1;min-width:0}.profile-name{margin-bottom:0;font-weight:600;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-env-logo{display:block;width:auto;height:4.5rem;max-width:100%;margin:0 auto .5rem;object-fit:contain;object-position:center}.profile-env-row{position:relative;padding-top:.625rem;margin-top:.25rem}.profile-env-row::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:2.5rem;height:1px;background-color:var(--bg-gray-medium)}.profile-env-name{flex:0 1 auto;min-width:0;font-size:.875rem;color:var(--text-muted)}.profile-switch-btn{flex:0 0 1.75rem;width:1.75rem;height:1.75rem;background-color:var(--bg-gray-light);border-radius:.5rem;border:none;display:inline-flex;align-items:center;justify-content:center;transition:background-color .15s ease}.profile-switch-btn:hover{background-color:var(--bg-gray-medium)}.profile-switch-btn i{font-size:.875rem;color:var(--text-muted)}.profile-substitute-indicator{color:var(--brand-primary)}@media (max-width:991.98px){.student-profile{padding:.75rem 0;margin-bottom:.75rem}.student-profile-avatar{width:min(60%,160px);margin-bottom:.5rem}.student-profile-name .student-firstname{font-size:1.125rem}.student-profile-name .student-groupname,.student-profile-name .student-lastname{font-size:1rem}.profile-env-logo{height:3.5rem}}@media (max-width:575.98px){.student-profile-avatar{width:min(50%,140px)}.student-profile-name .student-firstname{font-size:1rem}.student-profile-name .student-groupname,.student-profile-name .student-lastname{font-size:.875rem}}.group-libraries{position:relative;z-index:var(--z-dropdown-menu);margin-top:.25rem;margin-bottom:.75rem}.group-libraries>.group-libraries-toggle .group-icon{font-size:1.5rem;width:1.875rem}.group-libraries .group-icon{color:var(--brand-accent-light)}.group-libraries-toggle{border-bottom:1px solid var(--bs-gray-300,#dee2e6);padding:1rem .5rem;color:var(--text-secondary);border-radius:0;transition:background-color .2s ease}.group-libraries-toggle:hover{background-color:transparent}.group-libraries-toggle:focus{outline:2px solid var(--focus-ring-brand-alt);outline-offset:2px}.group-libraries-toggle>span{gap:1rem}.group-libraries-toggle>span:first-child span{font-weight:500;font-size:.875rem}.group-libraries-toggle .group-libraries-count{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.group-libraries-toggle .group-libraries-toggle-icon{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;background-color:var(--bg-white);border-radius:50%;font-size:.625rem;color:var(--text-muted);transition:transform .2s ease}.group-libraries-toggle[aria-expanded=false] .group-libraries-toggle-icon{transform:rotate(180deg)}.group-libraries-list{margin-top:.75rem;padding:0 .25rem}.group-libraries-item{background-color:transparent;color:var(--text-secondary);border:1px solid var(--bs-gray-400,#adb5bd);border-radius:.5rem;padding:.625rem .875rem;margin-bottom:.5rem;margin-left:.25rem;margin-right:.25rem;transition:background-color .15s ease,border-color .15s ease}.group-libraries-item:hover{background-color:var(--bg-hover-cream);border-color:var(--bs-gray-500,#6c757d)}.group-libraries-item .group-libraries-link{display:flex;align-items:center;text-decoration:none;color:var(--text-secondary);flex-grow:1;font-size:1rem}.group-libraries-item .group-libraries-link .group-icon{color:var(--brand-accent-light);font-size:.875rem}.group-libraries-item .group-libraries-link:hover{color:var(--text-secondary)}.group-libraries-item .group-libraries-link.active{color:var(--text-white);font-weight:600}.group-libraries-item:has(.group-libraries-link.active){background-image:linear-gradient(to right,var(--gradient-nav-start),var(--gradient-nav-end));background-color:var(--brand-primary);border-color:transparent;box-shadow:0 4px 12px var(--glow-brand-lg)}.group-libraries-item:has(.group-libraries-link.active):hover{background-image:linear-gradient(to right,var(--gradient-nav-start),var(--gradient-nav-end));background-color:var(--brand-primary)}.group-libraries-item:has(.group-libraries-link.active) .group-libraries-link,.group-libraries-item:has(.group-libraries-link.active) .group-libraries-link:hover{color:var(--text-white)}.group-libraries-item:has(.group-libraries-link.active) .group-icon{color:var(--text-white)}.group-libraries-item:has(.group-libraries-link.active) i.fa-chevron-right{color:var(--text-white)}.group-libraries-item i.fa-chevron-right{color:var(--text-muted);font-size:.75rem}.group-libraries-view-all{display:flex;align-items:center;justify-content:center;width:100%;padding:.375rem .75rem .5rem .75rem;color:var(--brand-accent-dark);font-size:.875rem;font-weight:600;text-decoration:none;background:0 0;border:none;border-bottom:1px solid var(--bs-gray-300,#dee2e6);border-radius:0;cursor:pointer;transition:color .15s ease,background-color .15s ease}.group-libraries-view-all:hover{background-color:var(--bg-hover-cream);color:var(--text-dark);text-decoration:none}.group-libraries-view-all:focus{outline:2px solid var(--focus-ring-brand-alt);outline-offset:2px}.ratho-tab-scroll-container{overflow-x:auto;overflow-y:hidden;min-width:0;scrollbar-width:none;-ms-overflow-style:none}.ratho-tab-scroll-container::-webkit-scrollbar{display:none}.ratho-tab-scroll-container>.nav-tabs{flex-wrap:nowrap;width:max-content}.ratho-reorder-ghost{opacity:.4}.ratho-reorder-chosen,.ratho-reorder-chosen .group-libraries-link,.ratho-reorder-chosen .nav-link{cursor:grabbing}.ratho-tab-scroll-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;color:var(--bs-secondary-color);background:0 0;border:none;border-radius:50%;transition:color .15s ease,background-color .15s ease}.ratho-tab-scroll-btn:hover{color:var(--bs-body-color);background-color:var(--bg-hover-light)}.ratho-tab-scroll-btn:focus,.ratho-tab-scroll-btn:focus-visible{outline:0;box-shadow:none}.ratho-tab-scroll-btn i{font-size:.75rem}.user-tile-card{display:flex;flex-direction:column;align-items:center;text-align:center;cursor:pointer;transition:transform .3s ease}.user-tile-card:hover{transform:translateY(-4px)}.user-tile-card:hover .user-tile-avatar{box-shadow:0 8px 24px var(--shadow-lg)}.user-tile-card:hover .user-tile-avatar img{transform:scale(1.05)}.user-tile-card:hover .user-tile-name{color:var(--brand-primary)}.user-tile-card:active{transform:translateY(-2px)}.user-tile-avatar{width:100px;height:100px;border-radius:50%;padding:3px;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease;border:2px solid transparent;transition:box-shadow .3s ease;box-shadow:0 4px 12px var(--shadow-sm)}.user-tile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;background-color:var(--bg-white)}.user-tile-avatar:hover{transform:scale(1.05)}.user-tile-avatar img{pointer-events:none;transition:transform .3s ease}.user-tile-name{margin-top:.5rem;font-weight:600;font-size:1rem;line-height:1.2;color:var(--text-dark);transition:color .3s ease;word-break:break-word;max-width:100%}@media (max-width:575.98px){.user-tile-avatar{width:70px;height:70px}.user-tile-name{font-size:.75rem;margin-top:.375rem}}@media (min-width:576px) and (max-width:767.98px){.user-tile-avatar{width:85px;height:85px}.user-tile-name{font-size:.875rem}}.user-tile-card.compact{width:4rem}.user-tile-card.compact .user-tile-avatar{width:3rem;height:3rem}.user-tile-card.compact .user-tile-name{font-size:.75rem;margin-top:.25rem}.user-tile-dismiss{top:-.25rem;right:-.25rem;width:1.25rem;height:1.25rem;background-color:var(--bg-white);color:var(--brand-primary);font-size:.625rem;box-shadow:0 1px 3px var(--shadow-sm);transition:background-color .15s ease,transform .15s ease;z-index:1}.user-tile-dismiss:hover{background-color:var(--brand-primary);color:var(--bg-white);transform:scale(1.1)}.user-tile-dismiss:focus-visible{outline:2px solid var(--focus-ring-brand-alt);outline-offset:2px}@keyframes skeleton-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.skeleton-avatar{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:50%;width:var(--avatar-size,120px);height:var(--avatar-size,120px)}@media (max-width:575.98px){.skeleton-avatar{width:80px;height:80px}}@media (min-width:576px) and (max-width:767.98px){.skeleton-avatar{width:100px;height:100px}}.skeleton-image{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;aspect-ratio:4/3;border-radius:var(--bs-border-radius);width:100%}.skeleton-line{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;height:.75rem;border-radius:.25rem}.skeleton-text-lines{gap:.35rem}.skeleton-tag{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;height:1.25rem;border-radius:1rem}.skeleton-tag--lg{width:3rem}.skeleton-tag--md{width:2.5rem}.skeleton-tag--sm{width:2rem}.skeleton-widget-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:6px;padding:1rem 0}.skeleton-widget{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;aspect-ratio:1;border-radius:var(--bs-border-radius)}.skeleton-login-tile{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;aspect-ratio:1;border-radius:.75rem;width:100%}.skeleton-group-tile{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;aspect-ratio:1/1;border-radius:10px;width:100%}.portal-loading-owl{animation:owl-bounce 2s ease-in-out infinite;filter:drop-shadow(0 4px 8px rgba(0, 0, 0, .1))}@keyframes owl-bounce{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-12px) rotate(3deg)}}.skeleton-sidebar-nav-btn{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;width:100%;margin-bottom:.75rem;padding:2.8rem 1.5rem;border-radius:.875rem}.skeleton-sidebar-nav-btn:first-of-type{margin-top:.5rem}@media (max-width:991.98px){.skeleton-sidebar-nav-btn{padding:2rem 1.25rem}}@media (max-width:767.98px){.skeleton-sidebar-nav-btn{padding:1.5rem 1rem;margin-bottom:.5rem;border-radius:.75rem}}@media (max-width:575.98px){.skeleton-sidebar-nav-btn{padding:1.25rem .875rem}}.skeleton-tab-button{display:inline-flex;align-items:center;gap:.375rem;pointer-events:none;border-color:transparent!important}.skeleton-tab-button .skeleton-tab-icon{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;width:1rem;height:1rem;border-radius:.25rem;flex-shrink:0}.skeleton-tab-button .skeleton-tab-label{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;width:4rem;height:.75rem;border-radius:.25rem}.skeleton-tab-button.active{background-color:var(--bg-white,#fff)}.skeleton-list-item{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border-subtle)}.skeleton-list-item:last-child{border-bottom:none}.skeleton-list-item .skeleton-icon{background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:50%;flex-shrink:0}.skeleton-list-item .skeleton-icon.skeleton-list-icon{width:32px;height:32px}.skeleton-list-item .skeleton-line--secondary{opacity:.6}.alert:has(>.alert-icon){padding:0;display:flex;align-items:stretch;overflow:hidden}.alert:has(>.alert-icon)>.alert-icon{display:flex;align-items:center;justify-content:center;padding:.75rem 1rem;margin:0;background-color:rgba(0,0,0,.05);flex-shrink:0;--bs-gutter-x:0;--bs-gutter-y:0}.alert:has(>.alert-icon)>.alert-message{padding:.75rem 1rem;flex:1}.alert:has(>.alert-icon)>.btn-close{align-self:center;margin-right:.75rem;filter:none}.beta-banner-attention{animation:beta-banner-attention 1.6s ease-out .2s 1;will-change:transform,box-shadow}@media (prefers-reduced-motion:reduce){.beta-banner-attention{animation:none}}@keyframes beta-banner-attention{0%{transform:scale(.985);opacity:0;box-shadow:0 0 0 0 rgba(var(--bs-success-rgb,25,135,84),0)}35%{transform:scale(1.01);opacity:1;box-shadow:0 0 0 6px rgba(var(--bs-success-rgb,25,135,84),.18)}100%{transform:scale(1);opacity:1;box-shadow:0 0 0 0 rgba(var(--bs-success-rgb,25,135,84),0)}}.ratho-blazor-select{min-width:var(--ratho-input-min-width)}.ratho-blazor-select.multi-select .select-dropdown .search-container{display:none}.ratho-blazor-select.multi-select .options-container .option .option-label input[type=checkbox]{display:none}.ratho-blazor-select.multi-select .options-container .option.selected .option-label::after{content:"\f00c";font-family:"Font Awesome 7 Free","Font Awesome 6 Free",FontAwesome;font-weight:900;color:var(--brand-accent-light,#ff8f61);font-size:.875rem;margin-left:auto;flex-shrink:0;line-height:1}.ratho-blazor-select .select-button{height:var(--ratho-input-height);min-height:var(--ratho-input-height);border-color:var(--ratho-input-border-color);border-radius:var(--ratho-input-radius);font-weight:500;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease}@media (max-width:575.98px){.ratho-blazor-select .select-button{height:var(--ratho-input-height-mobile);min-height:var(--ratho-input-height-mobile)}}.ratho-blazor-select .select-button:hover:not(.disabled){border-color:var(--ratho-input-border-color-hover);background-color:var(--bg-hover-cream,#fff9f5)}.ratho-blazor-select .select-button:focus,.ratho-blazor-select .select-button:focus-visible{border-color:var(--ratho-input-border-color);box-shadow:var(--ratho-input-focus-shadow)}.ratho-blazor-select .select-button .select-value .selected-count{color:var(--text-dark,#111827);font-weight:600}.ratho-blazor-select .select-button .select-value .select-placeholder-text{font-style:normal}.ratho-blazor-select .selected-pills .pill{background:linear-gradient(to right,var(--gradient-start,#ff8f61),var(--gradient-end,#f67160));color:var(--text-white,#fff);border-radius:1rem}.ratho-blazor-select .selected-pills .pill:hover{box-shadow:0 2px 8px rgba(var(--brand-accent-rgb),.35)}.ratho-blazor-select .select-dropdown{border-color:var(--brand-accent-light,#ff8f61);border-radius:var(--ratho-input-radius);box-shadow:0 4px 16px rgba(var(--brand-accent-rgb),.12);overflow:hidden;max-height:none}.ratho-blazor-select .select-dropdown .dropdown-header-actions{padding:.5rem .75rem;border-bottom:1px solid var(--bs-secondary-bg);background-color:var(--bs-tertiary-bg)}.ratho-blazor-select .select-dropdown .dropdown-header-actions .btn,.ratho-blazor-select .select-dropdown .quick-select-presets .btn{padding:.5rem .75rem;font-size:.875rem;border-radius:.5rem}.ratho-blazor-select .select-dropdown .btn-outline-primary{color:var(--brand-accent-dark,#e67a4a);border-color:var(--brand-accent-light,#ff8f61);background-color:transparent}.ratho-blazor-select .select-dropdown .btn-outline-primary.active,.ratho-blazor-select .select-dropdown .btn-outline-primary:active,.ratho-blazor-select .select-dropdown .btn-outline-primary:focus,.ratho-blazor-select .select-dropdown .btn-outline-primary:hover{color:var(--text-white,#fff);background-color:var(--brand-accent-light,#ff8f61);border-color:var(--brand-accent-light,#ff8f61);box-shadow:0 0 0 .2rem rgba(var(--brand-accent-rgb),.25)}.ratho-blazor-select .select-dropdown .btn-primary{color:var(--text-white,#fff);background-color:var(--brand-accent-light,#ff8f61);border-color:var(--brand-accent-light,#ff8f61)}.ratho-blazor-select .select-dropdown .btn-primary:active,.ratho-blazor-select .select-dropdown .btn-primary:focus,.ratho-blazor-select .select-dropdown .btn-primary:hover{background-color:var(--brand-accent-dark,#e67a4a);border-color:var(--brand-accent-dark,#e67a4a);box-shadow:0 0 0 .2rem rgba(var(--brand-accent-rgb),.25)}.ratho-blazor-select .select-dropdown .search-container .search-input:focus{border-color:var(--brand-accent-light,#ff8f61);box-shadow:0 0 0 .2rem rgba(var(--brand-accent-rgb),.15)}.ratho-blazor-select .select-dropdown .options-container{padding:.375rem;max-height:60vh;overflow-y:auto}.ratho-blazor-select .select-dropdown .options-container .option{border-radius:.5rem;border-bottom:0}.ratho-blazor-select .select-dropdown .options-container .option:not(:last-child){margin-bottom:2px}.ratho-blazor-select .select-dropdown .options-container .option:hover{transform:none}.ratho-blazor-select .select-dropdown .options-container .option:hover{background-color:var(--bg-hover-cream,#fff9f5)}.ratho-blazor-select .select-dropdown .options-container .option.selected{background-color:rgba(var(--brand-accent-rgb),.12);color:var(--brand-accent-dark,#e67a4a)}.ratho-blazor-select .select-dropdown .options-container .option.selected:hover{background-color:rgba(var(--brand-accent-rgb),.18)}.ratho-blazor-select .select-dropdown .options-container .option .option-content i.fa-check{color:var(--brand-accent-light,#ff8f61)}.ratho-blazor-select .select-dropdown .dropdown-footer .dropdown-footer-actions:not(:last-child){margin-bottom:.5rem}.flyout-footer{border-bottom-left-radius:calc(var(--flyout-radius,14px) - 2px)}#flyout-main{width:var(--flyout-width);margin:var(--flyout-margin) 0;height:auto;max-height:calc(100vh - var(--flyout-margin) * 2);border-top-left-radius:var(--flyout-radius);border-bottom-left-radius:var(--flyout-radius);border-top-right-radius:0;border-bottom-right-radius:0;visibility:visible;background-color:var(--flyout-bg);border-top:2px solid var(--ratho-header-gradient-orange);border-bottom:2px solid var(--ratho-header-gradient-orange);border-left:2px solid var(--ratho-header-gradient-orange);border-right:none;box-shadow:0 4px 24px var(--glow-brand-sm);transform:translateX(100%)}#flyout-main.show,#flyout-main.showing{transform:translateX(0)}#flyout-main.offcanvas{overflow:visible}#flyout-main .offcanvas-body>.fast-actions{margin-top:auto}#flyout-main .offcanvas-header{border-top-left-radius:12px}#flyout-main .offcanvas-header>.d-flex>i,#flyout-main .offcanvas-header>.d-flex>svg{font-size:1.25rem;line-height:1.5;background:linear-gradient(135deg,var(--ratho-header-gradient-yellow),var(--ratho-header-gradient-orange));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.offcanvas-backdrop{background-color:var(--overlay-backdrop)}.offcanvas-backdrop.show{opacity:1}@media (max-width:768px){:root{--flyout-width:95%;--flyout-margin:20px}}@media (max-width:575.98px){:root{--flyout-width:100%;--flyout-margin:10px}#flyout-main{border-radius:0;margin:0;max-height:100vh}#flyout-main.show,#flyout-main.showing{border-left:none}#flyout-main .offcanvas-header{border-top-left-radius:0}.flyout-footer{border-bottom-left-radius:0}#flyout-main.w-75{width:100%!important}.flyout-handle{--flyout-handle-width:24px;--flyout-handle-height:48px;border-top-left-radius:14px;border-bottom-left-radius:14px;font-size:.75rem}.flyout-handle.flyout-handle-open{display:none}.flyout-user-selector{padding:0 1rem}.user-selector-avatar{width:24px;height:24px}}.manuals-and-videos-flyout-content a{color:var(--bs-body-color)}.flyout-handle{position:absolute;left:calc(-1 * var(--flyout-handle-width));top:50%;transform:translateY(-50%);touch-action:none;width:var(--flyout-handle-width);height:var(--flyout-handle-height);display:grid;place-items:center;background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));color:var(--text-white);border:0;outline:0;border-top-left-radius:20px;border-bottom-left-radius:20px;border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:-2px 0 8px var(--glow-brand-md);cursor:pointer;z-index:1}body:has(.screenshot-viewer-overlay) .flyout-handle{display:none}.flyout-handle:hover{filter:brightness(.95)}.flyout-handle:focus{outline:0;box-shadow:-2px 0 8px var(--glow-brand-md)}.flyout-handle:focus-visible{outline:0;box-shadow:-2px 0 8px var(--glow-brand-md),0 0 0 .25rem var(--focus-ring-brand)}.flyout-chevron{transition:transform .3s ease}.flyout-handle-open .flyout-chevron{transform:rotate(180deg)}.action-list .action-row{cursor:pointer;transition:background-color .15s ease}.action-list .action-row:hover{background-color:var(--shadow-xs)}.action-list .action-row-disabled{cursor:not-allowed;opacity:.5}.action-list .action-row-disabled:hover{background-color:transparent}.action-list .action-row-disabled span{color:var(--text-muted)}.action-list .action-icon{width:28px;height:28px;border-radius:6px;background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));flex-shrink:0}.action-list .action-icon i{font-size:.75rem;line-height:1}.action-list .action-icon-disabled{background:var(--text-muted)}.action-list .action-go{width:26px;height:26px;border-radius:50%;background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));flex-shrink:0}.action-list .action-go-disabled{background:var(--text-muted);cursor:help}.action-list .action-row{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)}.action-list .action-row:last-child{border-bottom:none}.flyout-user-selector{padding:0 1.25rem}.user-selector-search{padding-left:2rem;border:1px solid var(--brand-accent-light);border-radius:.75rem}.user-selector-search:focus{border-color:var(--brand-accent-light);box-shadow:0 0 0 .2rem var(--focus-ring-brand)}.user-selector-search-icon{position:absolute;left:.625rem;top:50%;transform:translateY(-50%);color:var(--brand-accent-light);font-size:.875rem;pointer-events:none}.user-selector-list{background-color:var(--bg-white)}.user-selector-item{padding-left:.75rem;padding-right:.75rem;transition:background-color .15s ease;border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)}.user-selector-item:hover{background-color:var(--bg-hover-cream)}.user-selector-item:last-child{border-bottom:none}.user-selector-avatar{width:28px;height:28px;object-fit:cover;flex-shrink:0}.flyout-tabs{background-color:var(--brand-accent-bg-faint);border:1px solid var(--brand-accent-border);border-radius:.625rem;padding:.25rem;gap:.25rem}.flyout-tabs .nav-item{flex:1 1 0}.flyout-tabs .nav-link{width:100%;color:var(--text-secondary);font-weight:600;background-color:transparent;border:0;border-radius:.5rem;padding:.4rem .75rem;transition:background-color 150ms ease,color 150ms ease,box-shadow 150ms ease}.flyout-tabs .nav-link:hover:not(.active){background-color:var(--brand-accent-bg-subtle);color:var(--brand-accent-dark)}.flyout-tabs .nav-link.active{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));color:var(--text-white);box-shadow:0 2px 6px var(--glow-brand-sm)}.flyout-tabs .nav-link:focus,.flyout-tabs .nav-link:focus-visible{outline:0;box-shadow:0 0 0 .2rem var(--focus-ring-brand)}.import-list{display:flex;flex-direction:column;gap:.375rem}.import-list .import-list-item{width:100%;border:1px solid var(--border-soft);border-radius:.625rem;padding:.5rem .75rem;background-color:var(--bg-white);color:var(--text-dark);text-align:left;cursor:pointer;transition:background-color 150ms ease,border-color 150ms ease,box-shadow 150ms ease}.import-list .import-list-item:hover:not(:disabled):not(.selected){background-color:var(--bg-hover-cream);border-color:var(--brand-accent-border)}.import-list .import-list-item:focus-visible{outline:0;box-shadow:0 0 0 .2rem var(--focus-ring-brand)}.import-list .import-list-item:disabled{cursor:not-allowed;opacity:.7}.import-list .import-list-item.selected{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border-color:transparent;color:var(--text-white);box-shadow:0 2px 6px var(--glow-brand-sm)}.import-list .import-list-item.selected .text-muted{color:var(--text-white-muted)!important}.import-list .import-list-item.selected .import-list-item-indicator{color:var(--text-white)}.import-list .import-list-item .import-list-item-indicator{color:var(--brand-accent-light);font-size:1.25rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}.import-list .import-list-item-body{flex:1 1 auto;min-width:0}.import-list .import-list-empty{text-align:center;color:var(--text-muted);padding:2rem 1rem}.flyout-search{position:relative}.flyout-search .flyout-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--brand-accent-light);font-size:.875rem;pointer-events:none;z-index:2}.flyout-search .form-control{padding-left:2.25rem}.flyout-content .ratho-icon-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.2rem,1fr));gap:.5rem}.flyout-content .ratho-icon-selector .ratho-icon-selector-btn{width:100%;height:auto;aspect-ratio:1;min-width:0}.flyout-content .ratho-icon-selector .ratho-icon-selector-btn i{font-size:1rem}.shortcut-form-header{gap:.75rem;margin-bottom:.75rem}.shortcut-form-fields{flex:1 1 200px;min-width:0;display:flex;flex-direction:column;justify-content:space-between}.shortcut-preview,.shortcut-preview-sm,.shortcut-preview-xs{container-type:inline-size;pointer-events:none;user-select:none;border-radius:.75rem;overflow:hidden;box-shadow:0 2px 8px var(--shadow-lg);flex-shrink:0}.shortcut-preview{width:180px;height:180px}.shortcut-preview-sm{width:140px;height:140px}.shortcut-preview-xs{width:56px;height:56px}.shortcut-preview-xs .appshortcut-category,.shortcut-preview-xs .appshortcut-tags,.shortcut-preview-xs .appshortcut-title{display:none}.color-selector .color-selector-btn{position:relative;width:32px;height:32px;border-radius:.375rem;border:2px solid transparent;cursor:pointer;transition:all 150ms ease;padding:0}.color-selector .color-selector-btn:hover{transform:scale(1.1);box-shadow:0 2px 8px var(--shadow-md)}.color-selector .color-selector-btn.selected{border-color:var(--bs-dark,#333);transform:scale(1.05)}.color-selector .color-selector-btn.selected-new{border-color:var(--gradient-start);transform:scale(1.05)}.color-selector .color-selector-btn .ratho-color-check-overlay{position:absolute;top:-4px;right:-4px;font-size:.5rem;width:14px;height:14px;border-radius:50%;background-color:var(--bs-dark,#333);color:#fff;display:flex;align-items:center;justify-content:center;z-index:1}.environment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.environment-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;background-color:var(--bg-white);border:1px solid var(--bs-border-color);border-radius:.75rem;text-align:left;cursor:pointer;transition:all .2s ease}.environment-card:hover{background-color:var(--bg-hover-cream);border-color:var(--gradient-start);transform:translateY(-2px);box-shadow:0 4px 12px var(--glow-brand-sm)}.environment-card:focus-visible{outline:2px solid var(--focus-ring-brand);outline-offset:2px}.environment-card.selected{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border-color:transparent;color:var(--text-white);box-shadow:0 4px 12px var(--glow-brand-md)}.environment-card.selected .environment-card-icon{background:var(--overlay-light-strong)}.environment-card.selected .environment-card-icon i{color:var(--text-white)}.environment-card.selected .environment-card-name{color:var(--text-white)}.environment-card.selected .environment-card-subtitle{color:var(--text-white-muted)}.environment-card-icon{width:2.25rem;height:2.25rem;border-radius:.5rem;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));display:flex;align-items:center;justify-content:center;flex-shrink:0}.environment-card-icon i{font-size:1rem;color:var(--text-white)}.environment-card-text{display:flex;flex-direction:column;min-width:0}.environment-card-name{font-size:.875rem;font-weight:600;color:var(--text-dark);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0}.environment-card-subtitle{font-size:.75rem;font-weight:400;color:var(--text-muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:575.98px){.environment-grid{grid-template-columns:1fr;gap:.5rem}.environment-card{padding:.625rem}.environment-card-icon{width:2rem;height:2rem}.environment-card-icon i{font-size:.875rem}}.croppie-container{background-color:var(--bg-gray-light);border-radius:.5rem;padding:.75rem;min-height:260px}.croppie-container .croppie-container{padding:0}.croppie-container .cr-boundary{border-radius:.5rem}.croppie-container .cr-viewport{border:2px solid var(--gradient-start);box-shadow:0 0 0 9999px var(--overlay-dark)}.croppie-container .cr-slider-wrap{margin-top:1rem;width:100%}.croppie-container .cr-slider-wrap .cr-slider{width:100%}.cr-viewport.cr-vp-circle{border-radius:50%}.quickstart-welcome-video iframe{transform:scale(1.14);transform-origin:center center}.quickstart-video-frame{border:2px solid var(--brand-accent-light)}.reset-password-flyout .bulk-actions .btn-group .btn,.reset-password-flyout .password-type-toggle .btn-group .btn{flex:1}.reset-password-flyout .student-password-list{padding-right:.5rem}.reset-password-flyout .student-password-item{background:var(--bs-gray-100);border-radius:8px;padding:1rem;margin-bottom:1.5rem}.reset-password-flyout .student-password-item:last-child{margin-bottom:0}.student-header .student-avatar{width:40px;height:40px;object-fit:cover;border:2px solid var(--bs-gray-300)}.rup-password-input input[type=password]::-ms-reveal,.rup-password-input input[type=password]::-webkit-credentials-auto-fill-button{display:none}.portal-password .rup-password-photos{padding:.5rem;background:var(--bs-gray-200);border-radius:8px;gap:.25rem;align-items:flex-start;overflow-x:auto;overflow-y:visible}.portal-password .rup-password-photos .rup-password-photo{--tile-size:clamp(36px, 8vw, 48px);width:var(--tile-size);height:var(--tile-size);flex-shrink:0;flex-grow:0;border-radius:6px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease;border:2px solid transparent;display:flex;align-items:center;justify-content:center;aspect-ratio:1;overflow:hidden}.portal-password .rup-password-photos .rup-password-photo img{width:100%;height:100%;object-fit:cover;display:block}.portal-password .rup-password-photos .rup-password-photo:hover{transform:scale(1.05);filter:brightness(.95)}.portal-password .rup-password-photos .rup-password-photo:focus{outline:0;box-shadow:0 0 0 3px var(--shadow-md)}.portal-password .rup-password-photos .rup-password-photo.selected{border-color:var(--text-dark);box-shadow:0 0 0 3px var(--focus-ring-dark)}.portal-password .rup-password-photos .rup-password-photo.selected:hover{transform:scale(1.02)}.portal-password .rup-toggle-btn{border:1px solid var(--gradient-end);color:var(--gradient-end)}.portal-password .rup-toggle-btn.active{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));color:var(--text-white);border-color:transparent}.password-type-toggle .btn-group .btn{position:relative;overflow:hidden}.password-type-toggle .btn-group .btn::before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--overlay-light);opacity:0;transition:opacity .2s ease}.password-type-toggle .btn-group .btn:hover::before{opacity:1}.password-type-toggle .btn-group .btn:active::before{background:var(--shadow-md);opacity:1}@media (max-width:767.98px){.reset-password-flyout .student-password-item{padding:.75rem}.student-header .student-avatar{width:36px;height:36px}}@media (max-width:575.98px){.reset-password-flyout .student-password-list{padding-right:.25rem}.reset-password-flyout .student-password-item{padding:.625rem;border-radius:6px}.student-header .student-avatar{width:32px;height:32px}.password-requirements{font-size:.75rem}}.manage-pinned-groups-list .manage-pinned-groups-item{cursor:grab}.manage-pinned-groups-list .manage-pinned-groups-item:active{cursor:grabbing}.manage-pinned-groups-list .manage-pinned-groups-drag-handle{font-size:.875rem}.tab-expand-handle{position:absolute;top:max(50%,13rem);left:0;transform:translate(-100%,-50%);z-index:1030;width:var(--flyout-handle-width);height:var(--flyout-handle-height);display:grid;place-items:center;background:var(--bg-white);color:var(--text-muted);border:0;outline:0;border-top-left-radius:20px;border-bottom-left-radius:20px;border-top-right-radius:0;border-bottom-right-radius:0;box-shadow:-.125rem .125rem .25rem var(--shadow-xs);cursor:pointer}.tab-expand-handle:hover{filter:brightness(.95)}.tab-expand-handle:active,.tab-expand-handle:focus{outline:0;box-shadow:-.125rem .125rem .25rem var(--shadow-xs)}.tab-expand-handle:focus-visible{outline:0;box-shadow:-.125rem .125rem .25rem var(--shadow-xs),0 0 0 .25rem var(--focus-ring-brand)}.side-width{transition:width .25s ease,margin .25s ease,transform .25s ease,opacity .2s ease}.tab-expand-icon{color:inherit;font-size:1rem;transition:transform .25s ease}body.sidebar-collapsed .tab-expand-icon{transform:rotate(180deg)}body.sidebar-collapsed .side-width{width:0;margin-left:0;margin-right:0;transform:translateX(-1rem);opacity:0;overflow:hidden;pointer-events:none}body.sidebar-collapsed .layout-gap{gap:0}body.sidebar-collapsed main.flex-grow-1{margin-right:0}.student-login-card{display:flex;flex-direction:column}.student-hover-preview-bottom{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.75rem;margin-top:.5rem;padding:.25rem .75rem;transition:all .3s ease}@media (max-width:768px){.student-hover-preview-bottom{flex-direction:column;margin-top:1rem;padding:.75rem}}.student-hover-avatar{width:60px;height:60px;border-radius:50%;box-shadow:0 8px 24px var(--shadow-md);transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.student-hover-avatar picture{width:80%;height:80%;display:flex;align-items:center;justify-content:center}.student-hover-avatar img{width:100%;height:100%;object-fit:contain;animation:popIn .3s cubic-bezier(.34,1.56,.64,1)}@media (max-width:768px){.student-hover-avatar{width:70px;height:70px;flex-shrink:0}}.student-hover-placeholder{width:100%;height:100%;border-radius:50%;background:var(--bg-cream);display:flex;align-items:center;justify-content:center;position:relative}.student-hover-placeholder::before{content:"?";font-size:3rem;font-weight:700;color:var(--brand-primary-faded);line-height:1}@media (max-width:768px){.student-hover-placeholder::before{font-size:3rem}}.student-hover-name{font-size:1.125rem;font-weight:600;color:var(--text-dark);max-width:200px;word-wrap:break-word;min-height:1.5rem;transition:all .3s ease}@media (max-width:768px){.student-hover-name{font-size:1rem;max-width:150px}}.student-preview-card{background:var(--bg-cream);border:none;border-radius:1.25rem;transition:transform .3s ease,box-shadow .3s ease;display:flex;flex-direction:column;--bs-secondary-color:var(--text-muted)}.student-preview-card .card-body{padding:1.5rem 1.25rem;display:flex;flex-direction:column;justify-content:center;flex:1}.student-preview-card h5{color:var(--text-dark);font-weight:600;min-height:2rem;display:flex;align-items:center;justify-content:center}.student-preview-card .text-muted{word-break:break-word;overflow-wrap:break-word;max-width:100%;padding:0 .5rem}@media (max-width:992px){.student-preview-card{margin-bottom:1rem}}.student-login-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--bg-cream);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;gap:1.5rem;animation:fadeIn .3s ease}.student-login-overlay .login-overlay-text{color:var(--text-dark);font-size:1.25rem;font-weight:600;text-align:center;max-width:400px;line-height:1.4}@media (max-width:768px){.student-login-overlay .login-overlay-text{font-size:1.125rem;padding:0 1rem}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.student-hover-preview-bottom .student-profile-avatar,.student-images-section .student-profile-avatar{width:100px;height:100px;border-radius:50%;padding:3px;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}.student-hover-preview-bottom .student-profile-avatar img,.student-images-section .student-profile-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;background-color:var(--bg-white)}.student-hover-preview-bottom .student-profile-avatar:hover,.student-images-section .student-profile-avatar:hover{transform:scale(1.05)}.student-hover-preview-bottom .student-profile-avatar img,.student-images-section .student-profile-avatar img{object-position:center;object-fit:contain;transition:transform .3s ease}.student-hover-preview-bottom .student-profile-avatar img.avatar-preview-active,.student-images-section .student-profile-avatar img.avatar-preview-active{animation:popIn .3s cubic-bezier(.34,1.56,.64,1)}.student-hover-preview-bottom .student-profile-avatar img.avatar-preview-selected,.student-images-section .student-profile-avatar img.avatar-preview-selected{transform:scale(1.05)}@keyframes popIn{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}.student-images-section .login-tile-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(4,1fr);gap:.75rem;justify-content:center;max-width:100%}@media (max-width:992px){.student-images-section .login-tile-grid{grid-template-columns:repeat(6,1fr);grid-template-rows:auto;gap:.75rem}}@media (max-width:768px){.student-images-section .login-tile-grid{grid-template-columns:repeat(4,1fr);gap:.75rem}}@media (max-width:575.98px){.student-images-section .login-tile-grid{grid-template-columns:repeat(3,1fr);gap:.75rem}}.student-images-section .login-tile-grid.shuffling .login-tile{transform:scale(0) rotate(180deg);opacity:0;transition:transform .35s cubic-bezier(.4,0,1,1),opacity .25s ease}.student-images-section .login-tile-grid.spreading .login-tile{animation:tile-spread-in .4s cubic-bezier(.34,1.56,.64,1) both}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(1){animation-delay:15ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(2){animation-delay:30ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(3){animation-delay:45ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(4){animation-delay:60ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(5){animation-delay:75ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(6){animation-delay:90ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(7){animation-delay:105ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(8){animation-delay:120ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(9){animation-delay:135ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(10){animation-delay:150ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(11){animation-delay:165ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(12){animation-delay:180ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(13){animation-delay:195ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(14){animation-delay:210ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(15){animation-delay:225ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(16){animation-delay:240ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(17){animation-delay:255ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(18){animation-delay:270ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(19){animation-delay:285ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(20){animation-delay:.3s}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(21){animation-delay:315ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(22){animation-delay:330ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(23){animation-delay:345ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(24){animation-delay:360ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(25){animation-delay:375ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(26){animation-delay:390ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(27){animation-delay:405ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(28){animation-delay:420ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(29){animation-delay:435ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(30){animation-delay:450ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(31){animation-delay:465ms}.student-images-section .login-tile-grid.spreading .login-tile:nth-child(32){animation-delay:480ms}.student-images-section .login-tile{width:100%;aspect-ratio:1;border-radius:.75rem;overflow:hidden;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px var(--shadow-md);position:relative;transform-style:preserve-3d;perspective:1000px}.student-images-section .login-tile::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--overlay-light) 0,transparent 60%);opacity:0;transition:opacity .35s ease;z-index:1;pointer-events:none;border-radius:.75rem}.student-images-section .login-tile::after{content:"";position:absolute;inset:-5px;border-radius:.75rem;background:radial-gradient(circle at center,var(--glow-brand-lg),transparent 70%);opacity:0;transition:opacity .35s ease;z-index:-1}.student-images-section .login-tile:hover{transform:translateY(-8px) rotateX(5deg) rotateY(5deg) scale(1.08);box-shadow:0 16px 40px var(--shadow-3xl);z-index:10}.student-images-section .login-tile:hover::before{opacity:1}.student-images-section .login-tile:hover::after{opacity:1}.student-images-section .login-tile:active{transform:translateY(-4px) rotateX(2deg) rotateY(2deg) scale(1.04);transition-duration:.1s;box-shadow:0 8px 24px var(--shadow-lg)}.student-images-section .login-tile:focus-visible{outline:3px solid var(--focus-ring-brand);outline-offset:3px}.student-images-section .login-tile.wrong{animation:tile-shake .4s ease;border:3px solid var(--bs-danger);box-shadow:0 0 16px rgba(220,53,69,.4)}.student-images-section .login-tile picture,.student-images-section .login-tile-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.login-tile:hover .student-images-section .login-tile picture,.login-tile:hover .student-images-section .login-tile-img{transform:scale(1.05)}.student-cooldown-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}@media (max-width:768px){.student-cooldown-zone{min-height:280px}}.student-cooldown-owl{width:100px;height:auto}@media (max-width:768px){.student-cooldown-owl{width:80px}}.student-cooldown-dot{width:14px;height:14px;border-radius:50%;transition:background-color .3s ease}.student-cooldown-dot.used{background-color:var(--bs-danger)}.student-cooldown-dot.available{background-color:var(--status-warning-orange)}.student-cooldown-progress{max-width:300px;width:100%;height:10px;border-radius:5px}.student-cooldown-progress .progress-bar{transition:width 1s linear,background-color .5s ease}.student-warning-pill{background-color:rgba(245,166,35,.15);color:#b47a00;border:1px solid rgba(245,166,35,.4);border-radius:2rem;padding:.35rem 1rem;font-size:.875rem;font-weight:600;animation:pill-fade-in .3s ease}@keyframes pill-fade-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes tile-shake{0%,100%{transform:translateX(0)}15%{transform:translateX(-6px) rotate(-2deg)}30%{transform:translateX(5px) rotate(1.5deg)}45%{transform:translateX(-4px) rotate(-1deg)}60%{transform:translateX(3px) rotate(.5deg)}75%{transform:translateX(-2px)}}@keyframes tile-spread-in{0%{transform:scale(0) rotate(-90deg);opacity:0}60%{transform:scale(1.08) rotate(2deg);opacity:1}100%{transform:scale(1) rotate(0);opacity:1}}html.avatar-flipped .student-profile-avatar{transform:rotateY(180deg);transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.student-preview-card .student-profile-avatar{cursor:pointer;transition:transform .6s cubic-bezier(.34,1.56,.64,1)}.group-select-page-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--bg-cream);z-index:0;pointer-events:none;transform:translateX(3%)}.group-select-content-wrapper{position:relative;z-index:1;max-width:1280px;width:100%;margin:0 auto;padding:0 1rem}@media (min-width:768px){.group-select-content-wrapper{padding:0 2rem}}.group-select-card{--card-height:580px;border-radius:20px;overflow:hidden;backdrop-filter:blur(10px);background-color:rgba(255,255,255,.98);padding:1.5rem 2rem;min-height:var(--card-height)}@media (max-width:768px){.group-select-card{--card-height:450px;padding:1rem 1.5rem}}@media (min-width:992px){.group-select-card{--card-height:600px}}@media (min-width:1200px){.group-select-card{--card-height:620px}}@keyframes float-owls{0%,100%{transform:translateY(0) rotate(var(--rotation,0deg))}50%{transform:translateY(-8px) rotate(var(--rotation,0deg))}}.group-select-background-owl{position:fixed;width:100px;height:100px;background-size:70%;background-repeat:no-repeat;background-position:center;opacity:.05;pointer-events:none;z-index:0;animation:float-owls 5s ease-in-out infinite}.group-select-background-owl.owl-1{background-image:url(/images/login/owl-book.webp);top:0;left:0;--rotation:-8deg;animation-delay:0s}.group-select-background-owl.owl-2{background-image:url(/images/login/owl-music.webp);top:0;left:12.5%;--rotation:5deg;animation-delay:.3s}.group-select-background-owl.owl-3{background-image:url(/images/login/owl-pencil.webp);top:0;left:25%;--rotation:-12deg;animation-delay:.6s}.group-select-background-owl.owl-4{background-image:url(/images/login/owl-soccer.webp);top:0;left:37.5%;--rotation:10deg;animation-delay:.9s}.group-select-background-owl.owl-5{background-image:url(/images/login/owl-bicycle.webp);top:0;left:50%;--rotation:-5deg;animation-delay:1.2s}.group-select-background-owl.owl-6{background-image:url(/images/login/owl-play.webp);top:0;left:62.5%;--rotation:8deg;animation-delay:1.5s}.group-select-background-owl.owl-7{background-image:url(/images/login/owl-lunch.webp);top:0;left:75%;--rotation:-10deg;animation-delay:1.8s}.group-select-background-owl.owl-8{background-image:url(/images/login/owl-laptop.webp);top:0;left:87.5%;--rotation:6deg;animation-delay:2.1s}.group-select-background-owl.owl-9{background-image:url(/images/login/owl-camp.webp);top:16.66%;left:0;--rotation:7deg;animation-delay:.4s}.group-select-background-owl.owl-10{background-image:url(/images/login/owl-garden.webp);top:16.66%;left:12.5%;--rotation:-9deg;animation-delay:.7s}.group-select-background-owl.owl-11{background-image:url(/images/login/owl-rope.webp);top:16.66%;left:25%;--rotation:11deg;animation-delay:1s}.group-select-background-owl.owl-12{background-image:url(/images/login/owl-sail.webp);top:16.66%;left:37.5%;--rotation:-6deg;animation-delay:1.3s}.group-select-background-owl.owl-13{background-image:url(/images/login/owl-skate.webp);top:16.66%;left:50%;--rotation:9deg;animation-delay:1.6s}.group-select-background-owl.owl-14{background-image:url(/images/login/owl-snowman.webp);top:16.66%;left:62.5%;--rotation:-7deg;animation-delay:1.9s}.group-select-background-owl.owl-15{background-image:url(/images/login/owl-walk.webp);top:16.66%;left:75%;--rotation:8deg;animation-delay:2.2s}.group-select-background-owl.owl-16{background-image:url(/images/login/owl-book.webp);top:16.66%;left:87.5%;--rotation:-11deg;animation-delay:2.5s}.group-select-background-owl.owl-17{background-image:url(/images/login/owl-music.webp);top:33.33%;left:0;--rotation:10deg;animation-delay:.5s}.group-select-background-owl.owl-18{background-image:url(/images/login/owl-pencil.webp);top:33.33%;left:12.5%;--rotation:-8deg;animation-delay:.8s}.group-select-background-owl.owl-19{background-image:url(/images/login/owl-soccer.webp);top:33.33%;left:25%;--rotation:6deg;animation-delay:1.1s}.group-select-background-owl.owl-20{background-image:url(/images/login/owl-bicycle.webp);top:33.33%;left:37.5%;--rotation:-12deg;animation-delay:1.4s}.group-select-background-owl.owl-21{background-image:url(/images/login/owl-play.webp);top:33.33%;left:50%;--rotation:9deg;animation-delay:1.7s}.group-select-background-owl.owl-22{background-image:url(/images/login/owl-lunch.webp);top:33.33%;left:62.5%;--rotation:-7deg;animation-delay:2s}.group-select-background-owl.owl-23{background-image:url(/images/login/owl-laptop.webp);top:33.33%;left:75%;--rotation:11deg;animation-delay:2.3s}.group-select-background-owl.owl-24{background-image:url(/images/login/owl-camp.webp);top:33.33%;left:87.5%;--rotation:-9deg;animation-delay:2.6s}.group-select-background-owl.owl-25{background-image:url(/images/login/owl-garden.webp);top:50%;left:0;--rotation:-10deg;animation-delay:.6s}.group-select-background-owl.owl-26{background-image:url(/images/login/owl-rope.webp);top:50%;left:12.5%;--rotation:8deg;animation-delay:.9s}.group-select-background-owl.owl-27{background-image:url(/images/login/owl-sail.webp);top:50%;left:25%;--rotation:-6deg;animation-delay:1.2s}.group-select-background-owl.owl-28{background-image:url(/images/login/owl-skate.webp);top:50%;left:37.5%;--rotation:12deg;animation-delay:1.5s}.group-select-background-owl.owl-29{background-image:url(/images/login/owl-snowman.webp);top:50%;left:50%;--rotation:-8deg;animation-delay:1.8s}.group-select-background-owl.owl-30{background-image:url(/images/login/owl-walk.webp);top:50%;left:62.5%;--rotation:7deg;animation-delay:2.1s}.group-select-background-owl.owl-31{background-image:url(/images/login/owl-book.webp);top:50%;left:75%;--rotation:-11deg;animation-delay:2.4s}.group-select-background-owl.owl-32{background-image:url(/images/login/owl-music.webp);top:50%;left:87.5%;--rotation:9deg;animation-delay:2.7s}.group-select-background-owl.owl-33{background-image:url(/images/login/owl-pencil.webp);top:66.66%;left:0;--rotation:6deg;animation-delay:.7s}.group-select-background-owl.owl-34{background-image:url(/images/login/owl-soccer.webp);top:66.66%;left:12.5%;--rotation:-9deg;animation-delay:1s}.group-select-background-owl.owl-35{background-image:url(/images/login/owl-bicycle.webp);top:66.66%;left:25%;--rotation:11deg;animation-delay:1.3s}.group-select-background-owl.owl-36{background-image:url(/images/login/owl-play.webp);top:66.66%;left:37.5%;--rotation:-7deg;animation-delay:1.6s}.group-select-background-owl.owl-37{background-image:url(/images/login/owl-lunch.webp);top:66.66%;left:50%;--rotation:10deg;animation-delay:1.9s}.group-select-background-owl.owl-38{background-image:url(/images/login/owl-laptop.webp);top:66.66%;left:62.5%;--rotation:-12deg;animation-delay:2.2s}.group-select-background-owl.owl-39{background-image:url(/images/login/owl-camp.webp);top:66.66%;left:75%;--rotation:8deg;animation-delay:2.5s}.group-select-background-owl.owl-40{background-image:url(/images/login/owl-garden.webp);top:66.66%;left:87.5%;--rotation:-10deg;animation-delay:2.8s}.group-select-background-owl.owl-41{background-image:url(/images/login/owl-rope.webp);top:83.33%;left:0;--rotation:-8deg;animation-delay:.8s}.group-select-background-owl.owl-42{background-image:url(/images/login/owl-sail.webp);top:83.33%;left:12.5%;--rotation:9deg;animation-delay:1.1s}.group-select-background-owl.owl-43{background-image:url(/images/login/owl-skate.webp);top:83.33%;left:25%;--rotation:-11deg;animation-delay:1.4s}.group-select-background-owl.owl-44{background-image:url(/images/login/owl-snowman.webp);top:83.33%;left:37.5%;--rotation:7deg;animation-delay:1.7s}.group-select-background-owl.owl-45{background-image:url(/images/login/owl-walk.webp);top:83.33%;left:50%;--rotation:-9deg;animation-delay:2s}.group-select-background-owl.owl-46{background-image:url(/images/login/owl-book.webp);top:83.33%;left:62.5%;--rotation:12deg;animation-delay:2.3s}.group-select-background-owl.owl-47{background-image:url(/images/login/owl-music.webp);top:83.33%;left:75%;--rotation:-6deg;animation-delay:2.6s}.group-select-background-owl.owl-48{background-image:url(/images/login/owl-pencil.webp);top:83.33%;left:87.5%;--rotation:10deg;animation-delay:2.9s}@media (max-width:768px){.group-select-background-owl{width:80px;height:80px;opacity:.04}}@media (min-width:1400px){.group-select-background-owl{width:120px;height:120px;opacity:.06}}.group-select-grid-container{position:relative;z-index:1;max-width:100%;margin:0 auto;padding:0 1rem}@media (min-width:1280px){.group-select-grid-container{max-width:1280px}}.group-tiles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;width:100%}@media (min-width:576px){.group-tiles-grid{grid-template-columns:repeat(4,1fr)}}@media (min-width:768px){.group-tiles-grid{grid-template-columns:repeat(6,1fr);gap:1rem}}@media (min-width:992px){.group-tiles-grid{grid-template-columns:repeat(8,1fr)}}@media (min-width:1200px){.group-tiles-grid{grid-template-columns:repeat(8,1fr)}}.group-tile{aspect-ratio:1/1;width:100%;transition:all .35s cubic-bezier(.4,0,.2,1);color:#fff;box-shadow:0 4px 12px var(--shadow-md);position:relative;overflow:hidden;border-radius:10px}.group-tile::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,.15) 0,rgba(255,255,255,0) 60%);opacity:0;transition:opacity .35s ease}.group-tile::after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.2) 0,transparent 70%);opacity:0;transition:opacity .35s ease}.group-tile:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 12px 32px var(--shadow-3xl)}.group-tile:hover::after,.group-tile:hover::before{opacity:1}.group-tile:active{transform:translateY(-3px) scale(1.01);transition-duration:.1s}.group-tile:focus-visible{outline:3px solid var(--focus-ring-brand);outline-offset:2px}.group-tile-icon{width:36px;height:36px;box-shadow:0 2px 6px var(--shadow-sm);transition:transform .3s ease}.group-tile:hover .group-tile-icon{transform:scale(1.08)}@media (min-width:768px){.group-tile-icon{width:40px;height:40px}}@media (min-width:992px){.group-tile-icon{width:44px;height:44px}}.group-tile-icon-fallback{font-size:1rem}@media (min-width:768px){.group-tile-icon-fallback{font-size:1rem}}@media (min-width:992px){.group-tile-icon-fallback{font-size:1.125rem}}.group-tile-image{max-width:36px;max-height:36px;object-fit:contain;filter:drop-shadow(0 2px 4px var(--shadow-md));transition:transform .3s ease}.group-tile:hover .group-tile-image{transform:scale(1.08)}@media (min-width:768px){.group-tile-image{max-width:40px;max-height:40px}}@media (min-width:992px){.group-tile-image{max-width:44px;max-height:44px}}.group-tile-name{font-size:.625rem;letter-spacing:.3px;text-shadow:0 1px 3px var(--shadow-lg);line-height:1.2}@media (min-width:768px){.group-tile-name{font-size:.6875rem;letter-spacing:.35px}}@media (min-width:992px){.group-tile-name{font-size:.6875rem;letter-spacing:.4px}}.Bg_coral,.bg-coral{background-color:var(--group-coral)}.group-tile.Bg_coral .group-tile-icon-fallback,.group-tile.bg-coral .group-tile-icon-fallback{color:var(--group-coral)}.Bg_gray,.bg-gray{background-color:var(--group-gray)}.group-tile.Bg_gray .group-tile-icon-fallback,.group-tile.bg-gray .group-tile-icon-fallback{color:var(--group-gray)}.Bg_teal,.bg-teal{background-color:var(--group-teal)}.group-tile.Bg_teal .group-tile-icon-fallback,.group-tile.bg-teal .group-tile-icon-fallback{color:var(--group-teal)}.Bg_green,.bg-green{background-color:var(--group-green)}.group-tile.Bg_green .group-tile-icon-fallback,.group-tile.bg-green .group-tile-icon-fallback{color:var(--group-green)}.Bg_brown,.bg-brown{background-color:var(--group-brown)}.group-tile.Bg_brown .group-tile-icon-fallback,.group-tile.bg-brown .group-tile-icon-fallback{color:var(--group-brown)}.Bg_orange,.bg-orange{background-color:var(--group-coral)}.group-tile.Bg_orange .group-tile-icon-fallback,.group-tile.bg-orange .group-tile-icon-fallback{color:var(--group-coral)}.Bg_pink,.bg-pink{background-color:var(--group-pink)}.group-tile.Bg_pink .group-tile-icon-fallback,.group-tile.bg-pink .group-tile-icon-fallback{color:var(--group-pink)}.Bg_purple,.bg-purple{background-color:var(--group-purple)}.group-tile.Bg_purple .group-tile-icon-fallback,.group-tile.bg-purple .group-tile-icon-fallback{color:var(--group-purple)}.Bg_blue,.bg-blue{background-color:var(--group-blue)}.group-tile.Bg_blue .group-tile-icon-fallback,.group-tile.bg-blue .group-tile-icon-fallback{color:var(--group-blue)}.Bg_navy,.bg-navy{background-color:var(--group-navy)}.group-tile.Bg_navy .group-tile-icon-fallback,.group-tile.bg-navy .group-tile-icon-fallback{color:var(--group-navy)}.Bg_yellow,.bg-yellow{background-color:var(--group-yellow)}.group-tile.Bg_yellow .group-tile-icon-fallback,.group-tile.bg-yellow .group-tile-icon-fallback{color:var(--group-yellow)}.Bg_red,.bg-red{background-color:var(--group-red)}.group-tile.Bg_red .group-tile-icon-fallback,.group-tile.bg-red .group-tile-icon-fallback{color:var(--group-red)}@keyframes viewer-fade-in{from{opacity:0}to{opacity:1}}@keyframes viewer-slide-up{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.screenshot-viewer-overlay{inset:0;z-index:9999;background:rgba(0,0,0,.85);outline:0;animation:viewer-fade-in .2s ease}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-overlay{padding:1rem}}.screenshot-viewer-modal{width:100vw;height:100vh;height:100svh;background:var(--bg-white);box-shadow:0 8px 32px var(--shadow-dark);animation:viewer-slide-up .25s ease}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-modal{width:92vw;height:90vh;max-width:1800px;border-radius:8px}}@media (min-width:1200px){.screenshot-viewer-modal{height:92vh;border-radius:12px}}.screenshot-viewer-header{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));padding-top:.25rem;padding-bottom:.25rem}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-header{padding-top:.5rem;padding-bottom:.5rem}}.screenshot-viewer-header .viewer-h-group{display:inline-flex;align-items:center;gap:.25rem;position:relative}.screenshot-viewer-header .viewer-h-btn+.viewer-h-group,.screenshot-viewer-header .viewer-h-group+.viewer-h-btn:not(.viewer-h-btn--close),.screenshot-viewer-header .viewer-h-group+.viewer-h-group{margin-left:.875rem;padding-left:.875rem}.screenshot-viewer-header .viewer-h-btn+.viewer-h-group::before,.screenshot-viewer-header .viewer-h-group+.viewer-h-btn:not(.viewer-h-btn--close)::before,.screenshot-viewer-header .viewer-h-group+.viewer-h-group::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:1px;background:rgba(255,255,255,.28)}.screenshot-viewer-header .viewer-h-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;position:relative;min-width:2.25rem;height:2.25rem;padding:0 .625rem;border:0;border-radius:999px;background:0 0;color:var(--text-white);font-size:.85rem;font-weight:600;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.screenshot-viewer-header .viewer-h-btn:hover:not(:disabled){background:rgba(255,255,255,.18)}.screenshot-viewer-header .viewer-h-btn[data-active=true]{background:var(--bg-white);color:var(--gradient-start);box-shadow:0 2px 0 rgba(0,0,0,.06),0 4px 14px -4px rgba(0,0,0,.18)}.screenshot-viewer-header .viewer-h-btn[data-active=true]:hover{background:var(--bg-white)}.screenshot-viewer-header .viewer-h-btn:disabled{opacity:.5;cursor:not-allowed}.screenshot-viewer-header .viewer-h-btn[data-variant=live][data-active=true]{color:var(--status-warning-red)}.screenshot-viewer-header .viewer-h-btn[data-variant=close]:hover:not(:disabled){background:rgba(212,63,63,.12);color:var(--status-warning-red)}.viewer-profile-avatar{width:28px;height:28px}@media (min-width:768px) and (min-height:500px){.viewer-profile-avatar{width:32px;height:32px}}.viewer-latency-badge{font-variant-numeric:tabular-nums;font-size:.78em;padding:.15em .6em;border-radius:999px;border:1px solid var(--border-side);background:var(--bg-white);color:var(--text-secondary);line-height:1.4}.viewer-latency-badge[data-state=good]{color:#1b5e2c;background:#dff3e4;border-color:transparent}.viewer-latency-badge[data-state=warn]{color:var(--status-warning-orange);background:#fbedd4;border-color:transparent}.viewer-latency-badge[data-state=bad]{color:var(--status-warning-red);background:#fce3e6;border-color:transparent}.viewer-live-badge{margin-top:16px;z-index:2;padding:5px 12px 5px 10px;border-radius:999px;background:var(--status-warning-red);color:var(--text-white);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 4px 14px rgba(239,68,68,.45)}.viewer-live-badge--inline{margin-top:0;padding:2px 8px 2px 6px;font-size:.66rem;box-shadow:none}.viewer-live-pulse{width:7px;height:7px;border-radius:50%;background:var(--text-white);animation:viewer-live-pulse 1.2s ease-in-out infinite}@keyframes viewer-live-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.viewer-camera-count{font-size:.78em;font-weight:600;font-variant-numeric:tabular-nums;min-width:1.25em;text-align:center;line-height:1}.screenshot-viewer--desktop-only{display:none!important}@media (min-width:768px) and (min-height:500px){.screenshot-viewer--desktop-only{display:inline-flex!important}}.screenshot-viewer--desktop-only-block{display:none!important}@media (min-width:768px) and (min-height:500px){.screenshot-viewer--desktop-only-block{display:block!important}}.screenshot-viewer--mobile-only{display:flex!important}@media (min-width:768px) and (min-height:500px){.screenshot-viewer--mobile-only{display:none!important}}.screenshot-viewer-bottom-bar .btn{min-width:2.5rem;min-height:2.5rem}.screenshot-viewer-action-input .form-control-sm{min-width:0}.screenshot-timer-badge{min-width:1.5em;font-variant-numeric:tabular-nums}.screenshot-zoom-container{transform:scale(var(--zoom-scale,1)) translate(var(--pan-x,0),var(--pan-y,0));transform-origin:center center;will-change:transform}.fullscreen-modal-container{overflow:hidden;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1050;width:90%;max-width:900px;max-height:90vh;background-color:var(--bg-white);border-radius:.5rem;box-shadow:0 10px 40px var(--shadow-3xl)}@media (max-width:575.98px){.fullscreen-modal-container{width:95%;border-radius:.375rem}}.fullscreen-modal-container .modal-content{border:none;box-shadow:none;border-radius:0;padding:1rem}.screenshot-viewer-content{flex:1 1 auto;flex-direction:column;min-height:0}.screenshot-viewer-content.has-panel .screenshot-viewer-body{flex:1 1 55%;min-height:120px}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-content{flex-direction:row}.screenshot-viewer-content.has-panel .screenshot-viewer-body{flex:1 1 auto;max-height:none}}@media (max-width:767px) and (orientation:landscape){.screenshot-viewer-content{flex-direction:row}.screenshot-viewer-content.has-panel .screenshot-viewer-body{flex:0 0 60%;max-height:none}}.screenshot-viewer-body{flex:1 1 auto;min-height:150px;background:#1a1a2e;touch-action:none}.screenshot-viewer-body .screenshot-nav-btn{opacity:.6}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-body{min-height:300px}.screenshot-viewer-body .screenshot-nav-btn{opacity:.4}.screenshot-viewer-body:hover .screenshot-nav-btn{opacity:.7}}.screenshot-viewer-image{pointer-events:none}.cursor-zoom-in{cursor:zoom-in}.cursor-zoom-out{cursor:zoom-out}.viewer-zoom-dock{right:.75rem;bottom:.75rem;z-index:10;gap:2px;padding:4px;border-radius:10px;background:rgba(20,22,27,.65);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.06)}.viewer-zoom-dock__btn{width:28px;height:28px;border:0;border-radius:6px;background:0 0;color:rgba(255,255,255,.7);font-size:.75rem;display:grid;place-items:center;transition:background-color .15s ease,color .15s ease}.viewer-zoom-dock__btn:hover:not(:disabled){background:rgba(255,255,255,.08);color:var(--text-white)}.viewer-zoom-dock__btn:disabled{opacity:.35;cursor:not-allowed}.viewer-zoom-dock__value{font-size:.6875rem;font-weight:500;color:rgba(255,255,255,.85);min-width:3rem;text-align:center;font-variant-numeric:tabular-nums}.viewer-zoom-dock__separator{width:1px;height:16px;background:rgba(255,255,255,.1);margin:0 4px}.screenshot-nav-btn{top:50%;transform:translateY(-50%);z-index:10;width:36px;height:36px;background:var(--overlay-dark);font-size:.875rem;cursor:pointer;transition:background-color .15s ease,transform .15s ease,opacity .2s ease}.screenshot-nav-btn:hover{background:rgba(0,0,0,.75);opacity:1;transform:translateY(-50%) scale(1.05)}@media (min-width:768px) and (min-height:500px){.screenshot-nav-btn{width:40px;height:40px;font-size:1rem}}.screenshot-nav-left{left:.5rem}@media (min-width:768px) and (min-height:500px){.screenshot-nav-left{left:.75rem}}.screenshot-nav-right{right:.5rem}@media (min-width:768px) and (min-height:500px){.screenshot-nav-right{right:.75rem}}.screenshot-viewer-metadata{padding-top:.125rem;padding-bottom:.125rem}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-metadata{padding-top:.5rem;padding-bottom:.5rem}}.viewer-favicon{width:16px;height:16px}.screenshot-viewer-thumbnails{background:var(--bs-gray-50,#fafafa);scroll-snap-type:x mandatory;scrollbar-width:thin;padding-top:.125rem;padding-bottom:.125rem}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-thumbnails{padding-top:.5rem;padding-bottom:.5rem}}@media (max-width:767px) and (orientation:landscape){.screenshot-viewer-thumbnails{display:none!important}}.screenshot-viewer-thumbnails::-webkit-scrollbar{height:4px}.screenshot-viewer-thumbnails::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:2px}.viewer-thumbnail{width:56px;height:42px;border-radius:4px;border:2px solid transparent;cursor:pointer;scroll-snap-align:center;transition:border-color .2s ease,transform .15s ease,box-shadow .2s ease}.viewer-thumbnail:hover{border-color:var(--bs-gray-400);transform:scale(1.03)}.viewer-thumbnail.active{border-color:var(--gradient-start);box-shadow:0 0 0 1px var(--gradient-start)}.viewer-thumbnail img{pointer-events:none}@media (min-width:576px){.viewer-thumbnail{width:64px;height:48px}}@media (min-width:768px) and (min-height:500px){.viewer-thumbnail{width:80px;height:60px}}.viewer-panel-pico{width:22px;height:22px;border-radius:6px;background:var(--bg-white);border:1px solid var(--border-side);font-size:.7rem;color:var(--brand-primary)}.viewer-panel-refresh{padding:4px 10px;border:1px solid var(--border-side);border-radius:6px;background:var(--bg-white);color:var(--text-muted);transition:background-color .15s ease,color .15s ease,border-color .15s ease}.viewer-panel-refresh:hover:not(:disabled){background:var(--bg-hover-cream);color:var(--text-dark);border-color:var(--brand-accent-light)}.viewer-panel-refresh:disabled{opacity:.6;cursor:not-allowed}.screenshot-viewer-panel{flex:1 1 45%;min-height:100px;border-top:1px solid var(--bs-border-color,#dee2e6)}@media (min-width:768px) and (min-height:500px){.screenshot-viewer-panel{flex:0 0 clamp(280px,28%,400px);border-top:none;border-left:1px solid var(--bs-border-color,#dee2e6)}}@media (max-width:767px) and (orientation:landscape){.screenshot-viewer-panel{flex:0 0 40%;border-top:none;border-left:1px solid var(--bs-border-color,#dee2e6)}}.viewer-panel-count{display:inline-grid;place-items:center;min-width:1.4em;height:1.4em;padding:0 .4em;border-radius:999px;background:var(--bg-white);border:1px solid var(--border-side);color:var(--text-muted);font-size:.72rem;font-weight:600}.tab-row{padding:.5rem .4rem;border-radius:8px;transition:background-color .15s ease}.tab-row:focus-within,.tab-row:hover{background:var(--bg-hover-cream)}.tab-row__favicon{width:18px;height:18px;margin-top:1px;display:grid;place-items:center;flex-shrink:0}.tab-row__favicon img{max-width:16px;max-height:16px;border-radius:3px}.tab-row__actions{display:none;align-items:center;gap:2px}.tab-row:focus-within .tab-row__actions,.tab-row:hover .tab-row__actions{display:flex}.tab-action-btn{width:26px;height:26px;border:0;border-radius:6px;background:0 0;color:var(--text-muted);font-size:.78rem;display:grid;place-items:center;transition:background-color .15s ease,color .15s ease}.tab-action-btn:hover:not(:disabled){background:var(--border-side);color:var(--text-dark)}.tab-action-btn:disabled{opacity:.4;cursor:not-allowed}.tab-action-btn--danger:hover:not(:disabled){background:#fce3e6;color:var(--status-warning-red)}.panel-section-header{font-size:.625rem;letter-spacing:.08em;padding:.25rem 0}.panel-mono{font-family:"JetBrains Mono",ui-monospace,monospace;font-variant-numeric:tabular-nums}.panel-url{font-family:"JetBrains Mono",ui-monospace,monospace;font-size:.6875rem}.diag-score-card{padding:.875rem;background:var(--bg-panel-cream-alt);border:1px solid var(--border-side);border-radius:12px}.diag-score-ring{width:60px;height:60px}.diag-score-ring-bg{stroke:var(--border-side)}.diag-score-ring-fg{transition:stroke-dasharray .4s ease}.diag-score-ring-fg[data-state=good]{stroke:var(--brand-primary)}.diag-score-ring-fg[data-state=warn]{stroke:var(--status-warning-orange)}.diag-score-ring-fg[data-state=bad]{stroke:var(--status-warning-red)}.diag-score-value{font-family:"JetBrains Mono",ui-monospace,monospace;font-size:1rem;font-weight:600}.viewer-panel-body{scrollbar-width:thin}.viewer-panel-body::-webkit-scrollbar{width:4px}.viewer-panel-body::-webkit-scrollbar-thumb{background:var(--bs-gray-400);border-radius:2px}@media (max-width:767px) and (orientation:landscape){.screenshot-viewer-metadata{padding-top:.125rem;padding-bottom:.125rem}}.troubleshooting-wizard .wizard-step{padding:1.25rem;flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow-y:auto}.troubleshooting-wizard .wizard-loading{padding:3rem 1rem}.troubleshooting-wizard .student-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;flex:1 1 auto;min-height:0;overflow-y:auto;padding:2px}.troubleshooting-wizard .student-select-card{display:flex;flex-direction:column;align-items:center;padding:1rem .75rem;border-radius:.75rem;border:1px solid var(--border-side);background:var(--bg-white);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;position:relative;box-shadow:0 1px 2px var(--shadow-xs)}.troubleshooting-wizard .student-select-card .white_checkbox{position:absolute;top:.5rem;right:.5rem;width:18px;height:18px}.troubleshooting-wizard .student-select-card:hover{border-color:var(--gradient-start);background:var(--brand-accent-bg-subtle);color:var(--gradient-end)}.troubleshooting-wizard .student-select-card.selected{border-color:var(--gradient-start);background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--text-white);box-shadow:0 4px 10px rgba(var(--brand-accent-rgb),.25)}.troubleshooting-wizard .student-select-card.selected .student-name{color:var(--text-white);font-weight:600}.troubleshooting-wizard .student-select-card.has-issue::after{content:"";position:absolute;top:.4rem;left:.4rem;width:8px;height:8px;background:var(--brand-accent-light);border-radius:50%;border:1px solid var(--bg-white)}.troubleshooting-wizard .student-select-card.has-issue.selected .issue-badge{color:var(--text-white)}.troubleshooting-wizard .student-select-card .student-avatar{width:48px;height:48px;border-radius:50%;object-fit:cover;margin-bottom:.5rem;border:2px solid var(--border-side)}.troubleshooting-wizard .student-select-card.selected .student-avatar{border-color:var(--text-white)}.troubleshooting-wizard .student-select-card .student-info-text{text-align:center;position:relative}.troubleshooting-wizard .student-select-card .student-name{font-size:.8125rem;font-weight:500;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.troubleshooting-wizard .student-select-card .issue-badge{color:var(--brand-accent-light);font-size:.75rem;margin-left:.25rem}.troubleshooting-wizard .student-diagnostics-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem;margin-bottom:1rem;align-items:start}.troubleshooting-wizard .student-diag-card{background:var(--bg-white);border:1px solid var(--border-side);border-radius:.75rem;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease;display:flex;flex-direction:column;height:100%;min-height:280px;color:var(--text-secondary);box-shadow:0 1px 2px var(--shadow-xs)}.troubleshooting-wizard .student-diag-card:hover{border-color:var(--gradient-start);box-shadow:0 4px 12px rgba(var(--brand-accent-rgb),.12)}.troubleshooting-wizard .student-diag-header{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--text-white);flex-shrink:0;min-height:58px}.troubleshooting-wizard .student-diag-header .student-avatar-sm{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--text-white);flex-shrink:0}.troubleshooting-wizard .student-diag-header .flex-grow-1{min-width:0;flex:1}.troubleshooting-wizard .student-diag-header .fw-semibold{font-size:.875rem;margin-bottom:.125rem;color:var(--text-white);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.troubleshooting-wizard .student-diag-header small{font-size:.6875rem;color:var(--text-white-muted);display:block}.troubleshooting-wizard .student-diag-header small.text-danger,.troubleshooting-wizard .student-diag-header small.text-success,.troubleshooting-wizard .student-diag-header small.text-warning{color:var(--text-white)!important;opacity:.95}.troubleshooting-wizard .student-diag-header .btn-copy-student{background:0 0;border:1px solid var(--text-white-muted);color:var(--text-white);padding:.25rem .5rem;border-radius:.375rem;cursor:pointer;font-size:.75rem;transition:all .15s ease;margin-left:auto;flex-shrink:0}.troubleshooting-wizard .student-diag-header .btn-copy-student:hover{background:var(--overlay-light-md,rgba(255,255,255,.18));border-color:var(--text-white)}.troubleshooting-wizard .diag-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;padding:.5rem;background:var(--bg-panel-cream-alt);border-bottom:1px solid var(--border-side);flex-shrink:0}.troubleshooting-wizard .diag-stats .diag-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:70px;max-width:100px;padding:.25rem .5rem}.troubleshooting-wizard .diag-stats .diag-stat i{font-size:.875rem;color:var(--brand-accent-light);margin-bottom:2px}.troubleshooting-wizard .diag-stats .diag-stat i.transport-p2p{color:#16a34a}.troubleshooting-wizard .diag-stats .diag-stat i.transport-server{color:var(--brand-accent-dark)}.troubleshooting-wizard .diag-stats .diag-stat span{font-weight:600;color:var(--text-primary);white-space:nowrap;font-size:.6875rem;overflow:hidden;text-overflow:ellipsis;max-width:100%}.troubleshooting-wizard .diag-stats .diag-stat small{font-size:.5rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.troubleshooting-wizard .diag-checks-compact{padding:.5rem .75rem;flex:1;display:flex;flex-direction:column}.troubleshooting-wizard .diag-checks-compact .check-item-compact{display:flex;align-items:center;gap:.5rem;padding:.5rem;font-size:.8125rem;color:var(--text-secondary);border-radius:.375rem;margin:2px 0;background:var(--bg-gray-light)}.troubleshooting-wizard .diag-checks-compact .check-item-compact.success{background:rgba(22,163,74,.08)}.troubleshooting-wizard .diag-checks-compact .check-item-compact.success i{color:#16a34a}.troubleshooting-wizard .diag-checks-compact .check-item-compact.info{background:rgba(59,130,246,.08)}.troubleshooting-wizard .diag-checks-compact .check-item-compact.info i{color:#2563eb}.troubleshooting-wizard .diag-checks-compact .check-item-compact.warning{background:rgba(var(--brand-accent-rgb),.1)}.troubleshooting-wizard .diag-checks-compact .check-item-compact.warning i{color:var(--brand-accent-dark)}.troubleshooting-wizard .diag-checks-compact .check-item-compact.error{background:rgba(220,38,38,.08)}.troubleshooting-wizard .diag-checks-compact .check-item-compact.error i{color:#dc2626}.troubleshooting-wizard .diag-checks-compact .check-item-compact i{font-size:.875rem;flex-shrink:0;width:16px}.troubleshooting-wizard .diag-checks-compact .check-item-compact span{flex:1;font-weight:500}.troubleshooting-wizard .diag-checks-compact .check-item-compact .check-detail{color:var(--text-muted);font-size:.6875rem;margin-left:auto}.troubleshooting-wizard .diag-cause{padding:.625rem .75rem;background:rgba(var(--brand-accent-rgb),.08);border-top:1px solid var(--border-side);display:flex;align-items:start;gap:.5rem;font-size:.6875rem;color:var(--text-secondary);flex-shrink:0;min-height:40px}.troubleshooting-wizard .diag-cause i{color:var(--brand-accent-dark);margin-top:2px;flex-shrink:0;width:16px}.troubleshooting-wizard .diag-cause span{flex:1;line-height:1.4}.troubleshooting-wizard .diag-actions{padding:.625rem .75rem;background:var(--bg-panel-cream);border-top:1px solid var(--border-side);font-size:.6875rem;color:var(--text-secondary);flex-shrink:0;margin-top:auto}.troubleshooting-wizard .diag-actions .fw-semibold{color:var(--text-primary);font-size:.6875rem;margin-bottom:.375rem}.troubleshooting-wizard .diag-actions .fw-semibold i{color:var(--brand-accent-light);width:16px}.troubleshooting-wizard .diag-actions ul{margin:0;padding-left:1.25rem}.troubleshooting-wizard .diag-actions ul li{margin-bottom:.25rem;line-height:1.4}.student-card{min-width:0;padding:.5rem .25rem;border-radius:.75rem;transition:background-color .15s ease}.student-card:has(.student-avatar-selectable.selected){background-color:var(--brand-accent-bg-subtle)}.student-avatar{width:120px;height:120px;border-radius:50%;padding:3px;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .2s ease;border:2px solid transparent;flex-shrink:0}.student-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%;background-color:var(--bg-white)}.student-avatar:hover{transform:scale(1.05)}.student-avatar img{pointer-events:none}@media (max-width:575.98px){.student-avatar{width:80px;height:80px}}@media (min-width:576px) and (max-width:767.98px){.student-avatar{width:100px;height:100px}}.student-name{font-size:1rem;line-height:1.2;color:var(--text-dark);word-break:break-word}@media (max-width:575.98px){.student-name{font-size:.75rem}}.student-badge{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background-image:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border:2px solid var(--bg-white);transform:translate(25%,25%);font-size:.875rem;transition:transform .15s ease,background-color .15s ease}@media (max-width:575.98px){.student-badge{width:22px;height:22px;font-size:.6875rem}}.student-badge-fullscreen{background:var(--status-success);cursor:pointer;transform:translate(25%,-25%);opacity:0;transition:opacity .2s ease,background-color .15s ease,transform .15s ease}.student-badge-fullscreen:hover{background:var(--status-success-dark);transform:translate(25%,-25%) scale(1.1)}.student-avatar-selectable:hover .student-badge-fullscreen{opacity:1}.student-avatar-selectable.monitoring-active .student-badge-fullscreen{opacity:1}.student-badge-deselect{background:var(--status-error);cursor:pointer}.student-badge-deselect:hover{background:var(--status-error-dark);transform:translate(25%,25%) scale(1.1)}.student-badge-selected{bottom:0;right:0;transform:translate(15%,15%)}.student-badge-profile{width:36px;height:36px;border-radius:50%;border:2px solid var(--bg-white);overflow:hidden;transform:translate(-25%,-25%);background-color:var(--bg-white);padding:0;background-image:none}.student-badge-profile img{width:100%;height:100%;object-fit:cover}.student-offline{opacity:.3;transition:opacity .3s ease}.student-offline:hover{opacity:.4}.student-connecting{opacity:.55;transition:opacity .3s ease}.student-connecting:hover{opacity:.65}.student-connection-lost{opacity:.4;transition:opacity .3s ease}.student-connection-lost:hover{opacity:.5}.student-sync-screen-offline{background:var(--bs-gray-400)}.student-offline-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:var(--bg-hover-faint);border-radius:6px}.student-offline-placeholder i{font-size:2rem;color:var(--bs-gray-500)}.student-offline-placeholder--connecting i{color:var(--gradient-start)}.student-offline-placeholder--waiting i{color:var(--bs-info,#0dcaf0)}.student-offline-placeholder--lost i{color:var(--status-warning,#ffc107)}.student-offline-placeholder--error i{color:var(--status-error)}.student-name-last{font-size:.75rem;color:var(--text-muted)}.student-avatar-selectable{position:relative;width:100%;height:100%;cursor:pointer;border-radius:50%;transition:opacity .15s ease,box-shadow .2s ease}.student-avatar-selectable:hover{opacity:.85}.student-avatar-selectable.selected img{box-shadow:0 0 0 3px var(--gradient-start)}.student-sync-screen{border-radius:8px;background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));padding:3px;width:100%;height:auto;aspect-ratio:4/3;overflow:visible;transition:box-shadow .2s ease}.student-sync-screen:hover{box-shadow:0 4px 16px var(--shadow-lg)}.student-sync-screen img{border-radius:6px;object-fit:cover;transition:opacity .3s ease}.student-sync-screen .student-avatar-selectable{border-radius:6px;overflow:visible}.student-sync-screen .student-avatar-selectable>img{position:absolute;top:0;left:0}.student-sync-screen .student-badge-fullscreen{width:36px;height:36px;font-size:1rem;transform:translate(25%,-25%);z-index:2;opacity:0}.student-sync-screen .student-avatar-selectable:hover .student-badge-fullscreen,.student-sync-screen:hover .student-badge-fullscreen{opacity:1}.student-fullscreen-image{max-height:70vh;object-fit:contain}.classmanagement-grid{display:grid;width:100%;grid-template-columns:repeat(2,1fr);gap:1rem}@media (min-width:576px){.classmanagement-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem}}@media (min-width:768px){.classmanagement-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem}}@media (min-width:992px){.classmanagement-grid{grid-template-columns:repeat(5,1fr)}}@media (min-width:1200px){.classmanagement-grid{grid-template-columns:repeat(6,1fr)}}@media (min-width:1400px){.classmanagement-grid{grid-template-columns:repeat(7,1fr)}}@media (min-width:1700px){.classmanagement-grid{grid-template-columns:repeat(8,1fr);gap:1.25rem}}.classmanagement-grid-screens{gap:.5rem}@media (min-width:576px){.classmanagement-grid-screens{gap:.625rem}}@media (min-width:768px){.classmanagement-grid-screens{gap:.75rem}}@media (min-width:1200px){.classmanagement-grid-screens{gap:.5rem}}@media (min-width:992px){.sidebar-collapsed .classmanagement-grid{grid-template-columns:repeat(7,1fr)}}@media (min-width:1200px){.sidebar-collapsed .classmanagement-grid{grid-template-columns:repeat(8,1fr);gap:.75rem}}@media (min-width:1400px){.sidebar-collapsed .classmanagement-grid{grid-template-columns:repeat(9,1fr)}}@media (min-width:1700px){.sidebar-collapsed .classmanagement-grid{grid-template-columns:repeat(10,1fr)}}@media (min-width:1200px){.sidebar-collapsed .classmanagement-grid .student-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}@media (min-width:1400px){.classmanagement-grid .student-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}}.ratho-tab-content{overflow-x:clip;max-width:100%}.ratho-tab-pane{overflow-x:clip;max-width:100%}.class-management-page .ratho-tab-view{--content-padding:2rem}.class-management-page .ratho-tab-view,.class-management-page .ratho-tab-view .ratho-tab-content,.class-management-page .ratho-tab-view .ratho-tab-pane{height:auto!important;max-height:none!important;overflow-y:visible!important}@media (max-width:575.98px){.ratho-tab-content>.ratho-tab-pane{padding:1rem}}@media (min-width:576px) and (max-width:991.98px){.ratho-tab-content>.ratho-tab-pane{padding:1.5rem}}.classmanagement-page-title-bar{background-color:var(--bg-panel-cream-alt);border-radius:1rem;color:var(--bs-dark,#212529);min-height:2.875rem}@media (max-width:767.98px){.classmanagement-page-title-bar{border-radius:.75rem}}.classmanagement-page-title{font-size:1.25rem;line-height:1.2}.classmanagement-page-title i{color:var(--brand-accent-light);font-size:1.5rem}@media (max-width:991.98px){.classmanagement-page-title{font-size:1.15rem}.classmanagement-page-title i{font-size:1.35rem}}@media (max-width:767.98px){.classmanagement-page-title{font-size:1.05rem}.classmanagement-page-title i{font-size:1.2rem}}@media (max-width:575.98px){.classmanagement-page-title{font-size:.95rem}.classmanagement-page-title i{font-size:1.1rem}}.classmanagement-online-badge{background-color:#479e76;color:#fff}.classmanagement-online-dot{font-size:.5rem}.classmanagement-dashboard{border-radius:1rem;overflow:visible;background:var(--bg-panel-cream-alt);border:1px solid var(--border-side);box-shadow:0 1px 2px var(--shadow-xs)}@media (max-width:767.98px){.classmanagement-dashboard{border-radius:.75rem}}.classmanagement-dashboard .dashboard-action-bar{background-color:var(--bg-panel-cream-alt);border-radius:inherit}.classmanagement-dashboard__latency{color:var(--gradient-end)}.classmanagement-dashboard__online-dot{font-size:.5rem}.classmanagement-dashboard__toggle{border:1px solid transparent}@media (min-width:768px){.classmanagement-dashboard__toggle{min-width:11rem;justify-content:center}}.classmanagement-dashboard__intervals .btn{min-width:2.75rem}.classmanagement-dashboard__intervals .btn,.classmanagement-dashboard__troubleshoot{border:1px solid var(--border-side);background:var(--bg-white);color:var(--text-secondary)}.classmanagement-dashboard__intervals .btn:hover,.classmanagement-dashboard__troubleshoot:hover{background:var(--bg-hover-faint);color:var(--gradient-end)}.classmanagement-dashboard__intervals .btn:focus,.classmanagement-dashboard__intervals .btn:focus-visible,.classmanagement-dashboard__troubleshoot:focus,.classmanagement-dashboard__troubleshoot:focus-visible{transform:none;border-color:var(--border-side)}.classmanagement-dashboard__intervals .btn.active,.classmanagement-dashboard__troubleshoot.active{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));border-color:var(--gradient-start);color:var(--text-white)}.classmanagement-dashboard__intervals .btn.active .badge,.classmanagement-dashboard__troubleshoot.active .badge{display:inline-block;min-width:2.4em;padding:.15em .4em;text-align:center;font-size:.75em;font-variant-numeric:tabular-nums;line-height:1;border-radius:.5rem;background:var(--overlay-light-md);color:var(--text-white);vertical-align:middle}.classmanagement-selectall{display:inline-flex;align-items:center}.tag-list .btn-link{color:var(--brand-accent-light)}.tag-list .btn-link:hover{color:var(--brand-accent-dark)}.cm2-monitor{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem 1.5rem;padding:1rem 1.5rem;background-color:var(--bg-panel-cream-alt);border:1px solid var(--border-side);border-radius:1rem;box-shadow:0 1px 2px var(--shadow-xs);--cm2-control-h:2.5rem}@media (max-width:767.98px){.cm2-monitor{grid-template-columns:auto 1fr;gap:.75rem 1rem;padding:.875rem 1rem;border-radius:.75rem}}@media (max-width:575.98px){.cm2-monitor{grid-template-columns:1fr;gap:.625rem;padding:.75rem;--cm2-control-h:2.75rem}}.cm2-monitor__viz{width:3rem;height:3rem;border-radius:50%;display:grid;place-items:center;background-color:var(--bg-white);color:var(--bs-gray-500);font-size:1.25rem;flex-shrink:0;transition:background-color .25s ease,color .25s ease}@media (max-width:575.98px){.cm2-monitor__viz{display:none}}.cm2-monitor__body{min-width:0}@media (max-width:575.98px){.cm2-monitor__body{grid-column:1}}.cm2-monitor__heading{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}@media (max-width:575.98px){.cm2-monitor__heading{gap:.5rem}}.cm2-monitor__title{font-size:1.25rem;font-weight:600;line-height:1.2;margin:0;color:var(--text-dark)}@media (max-width:575.98px){.cm2-monitor__title{font-size:1.125rem}}.cm2-monitor__online{font-size:.6875rem;padding:.25em .6em}.cm2-monitor__controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}@media (max-width:767.98px){.cm2-monitor__controls{grid-column:1/-1}}@media (max-width:575.98px){.cm2-monitor__controls{gap:.5rem;justify-content:flex-start}}.cm2-monitor__live{display:contents}.cm2-monitor__icon-btn{width:var(--cm2-control-h);height:var(--cm2-control-h);border-radius:.5rem;background-color:var(--bg-white);border:1px solid var(--border-side);color:var(--text-secondary);display:grid;place-items:center;transition:background-color .15s ease,color .15s ease;flex-shrink:0}.cm2-monitor__icon-btn:hover{background-color:var(--bg-hover-faint);color:var(--gradient-end)}.cm2-monitor__cta{height:var(--cm2-control-h);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:0 1.25rem;border-radius:.625rem;border:1px solid transparent;background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));color:var(--text-white);font-weight:600;font-size:.875rem;transition:filter .15s ease,transform .15s ease}.cm2-monitor__cta:hover{filter:brightness(1.05)}.cm2-monitor__cta:active{transform:translateY(1px)}@media (max-width:575.98px){.cm2-monitor__cta{flex:1 1 100%}}.cm2-monitor[data-state=on] .cm2-monitor__viz{background-color:var(--gradient-start);color:var(--text-white);animation:cm2-monitor-eye-pulse 2.5s ease-in-out infinite}.cm2-monitor[data-state=off] .cm2-monitor__live{display:none}@keyframes cm2-monitor-eye-pulse{0%,100%{box-shadow:0 0 0 0 rgba(241,107,90,.35)}50%{box-shadow:0 0 0 6px rgba(241,107,90,0)}}.cm2-interval{display:inline-flex;align-items:stretch;height:var(--cm2-control-h);border-radius:.5rem;overflow:hidden;border:1px solid var(--border-side);background-color:var(--bg-white);flex-shrink:0}.cm2-interval__btn{border:0;background:0 0;color:var(--text-secondary);font-size:.875rem;padding:0 .75rem;line-height:1;transition:background-color .15s ease,color .15s ease}.cm2-interval__btn+.cm2-interval__btn{border-left:1px solid var(--border-side)}.cm2-interval__btn:hover{background-color:var(--bg-hover-faint);color:var(--gradient-end)}.cm2-interval__btn.active{background:linear-gradient(to right,var(--gradient-start),var(--gradient-end));color:var(--text-white);font-weight:600}.cm2-interval__btn.active .badge{display:inline-block;min-width:2.4em;text-align:center;line-height:1;vertical-align:middle;background:var(--overlay-light-md);color:var(--text-white);margin-left:.4em;padding:.15em .4em;font-size:.75em;border-radius:.4rem;font-variant-numeric:tabular-nums}.cm2-interval__btn--camera i{color:var(--gradient-end)}.cm2-interval .dropdown-menu .dropdown-item.active,.cm2-interval .dropdown-menu .dropdown-item:active{background-color:var(--brand-accent-bg-hover);color:var(--brand-primary)}@keyframes screenshot-pulse{0%{opacity:1}40%{opacity:.35}100%{opacity:1}}.screenshot-pulse{animation:screenshot-pulse .4s ease-in-out}.problem-icon{width:32px;height:32px;border-radius:50%}.problem-icon--heartbeat{background-color:var(--status-error)}.problem-icon--connection{background-color:var(--bs-warning)}.problem-icon--screenshot{background-color:var(--bs-info)}.student-badge-connection{width:24px;height:24px;font-size:.6875rem;transform:translate(-25%,-25%);transition:background-color .2s ease,opacity .2s ease}@media (max-width:575.98px){.student-badge-connection{width:20px;height:20px;font-size:.625rem}}.student-badge-connection--offline{background:var(--bs-gray-400);opacity:.6}.student-badge-connection--connecting{opacity:.7}.student-badge-connection--error{background:var(--status-error)}.student-badge-connection--lost{background:var(--status-warning,#ffc107)}.student-badge-connection--image{background:0 0;border:0;opacity:1}.student-badge-connection--image>img{width:100%;height:100%;display:block;object-fit:contain;pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-user-select:none}.student-tags{display:flex;flex-wrap:wrap;justify-content:center;gap:.2rem;margin-top:.25rem;max-width:100%}.student-tags .ratho-status-badge{font-size:.6875rem;padding:.1rem .4rem;line-height:1.1}.student-tags .student-tag-clickable{cursor:pointer;transition:transform .1s ease,opacity .1s ease}.student-tags .student-tag-clickable:hover{transform:translateY(-1px);opacity:.85}@media (max-width:575.98px){.student-tags .ratho-status-badge{font-size:.625rem;padding:.05rem .3rem}}.student-tag-overflow{font-size:.6875rem;color:var(--text-muted);padding:.1rem .3rem;border-radius:.4rem;background:var(--bg-hover-faint);cursor:default;line-height:1.1}.history-list-item,.tab-list-item{transition:background-color .15s ease;border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)}.history-list-item:last-child,.tab-list-item:last-child{border-bottom:none}.history-list-item:hover,.tab-list-item:hover{background-color:var(--bg-hover-faint)}.history-list-item .flex-grow-1,.tab-list-item .flex-grow-1{min-width:0}.history-list-item .flex-grow-1>div,.tab-list-item .flex-grow-1>div{min-width:0}.tab-favicon{width:16px;height:16px;object-fit:contain}.tab-list-icon{width:1.25rem;text-align:center}.flyout-student-avatar{width:24px;height:24px;object-fit:cover}.lock-screen-message{resize:vertical;min-height:60px}.badge-sm{font-size:.6875rem;padding:.15em .4em}.diagnostics-section-title{font-size:.75rem;font-weight:600;border-bottom:1px solid var(--bs-border-color,#dee2e6);padding-bottom:.25rem;margin-bottom:.25rem}.diagnostics-grid{padding-left:.25rem}.diagnostics-error-item{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)}.diagnostics-error-item:last-child{border-bottom:none}.lockscreen-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-cream);color:var(--bs-gray-800);margin:0;padding:1rem}.lockscreen-container{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.lockscreen-card{padding:3rem 2.5rem;background:var(--bg-white);border-radius:16px;box-shadow:0 4px 24px var(--shadow-sm);max-width:480px;width:100%}.lockscreen-icon{font-size:3rem;width:80px;height:80px;line-height:80px;border-radius:50%;background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--text-white)}.lockscreen-title{font-size:1.25rem;font-weight:700;margin-bottom:.75rem;color:var(--bs-gray-800)}.lockscreen-teacher-message{font-size:1rem;font-weight:400;color:var(--bs-gray-600,#6c757d);word-break:break-word;min-height:1.5em}.export-picture-passwords{max-width:800px}.export-picture-passwords__logo{height:40px}.export-picture-passwords__card{break-inside:avoid}.export-picture-passwords__icon{height:50px}body:has(.print-layout) #flyout-handle,body:has(.print-layout) #flyout-main{display:none!important}.password-char{font-size:1.1rem;line-height:1.2}.password-char--upper{font-weight:700;text-transform:uppercase}.password-char--lower{font-weight:400}.password-char--digit{font-weight:700}.password-char--special{font-weight:700}@media print{body{print-color-adjust:exact}}.info-panel{background-color:var(--bg-cream);border:1px solid var(--border-side)}.info-item{background-color:transparent;border:none;border-bottom:1px solid var(--border-light-pink);border-radius:0;padding:.5rem 0;margin-bottom:.5rem}.info-item:last-child{border-bottom:none}.info-icon{width:40px;height:40px;background-color:var(--brand-accent-light);color:var(--text-white);font-size:.875rem}.admin-avatar{width:40px;height:40px;object-fit:cover;border:2px solid var(--brand-accent-light)}.example-label{color:var(--brand-accent-light);font-weight:400}.example-email{color:var(--brand-accent-light);text-decoration:none;font-size:.875rem}.example-email:hover{text-decoration:underline}@media (max-width:575.98px){.info-icon{width:34px;height:34px;font-size:.75rem}.admin-avatar{width:34px;height:34px}.patch-note-card{padding:.625rem .75rem}.patch-note-read-more{min-height:44px;display:inline-flex;align-items:center}}.admin-scroll{max-height:180px;overflow-y:auto;overflow-x:hidden;padding-right:.5rem;scrollbar-width:thin;scrollbar-color:var(--border-side) transparent}.admin-scroll::-webkit-scrollbar{width:6px}.admin-scroll::-webkit-scrollbar-track{background:0 0;border-radius:3px}.admin-scroll::-webkit-scrollbar-thumb{background:var(--border-side);border-radius:3px}.patch-note-card{background-color:var(--bg-cream);border:1px solid var(--border-side);border-radius:.75rem;padding:.75rem .9rem}.patch-note-title{color:var(--status-warning-red);font-weight:600;font-size:1rem}.patch-note-desc{color:var(--text-secondary);font-size:1rem}.patch-note-list{font-size:.875rem;color:var(--text-muted);padding-left:1rem;margin-top:.35rem;margin-bottom:0}.patch-note-list li{margin:.15rem 0}.patch-note-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.patch-note-read-more{background:0 0;border:none;color:var(--brand-accent-light);font-size:.875rem;font-weight:600;padding:0;cursor:pointer;transition:color .15s ease}.patch-note-read-more:hover{color:var(--brand-accent-dark)}.patch-note-read-more i{font-size:.625rem}.patch-note-full-content{font-size:1rem;line-height:1.6;color:var(--text-secondary)}.patch-note-full-content ol,.patch-note-full-content ul{padding-left:1.25rem;margin-bottom:1rem}.patch-note-full-content li{margin-bottom:.25rem}.patch-note-full-content p{margin-bottom:.75rem}.patch-note-full-content b,.patch-note-full-content strong{color:var(--text-dark)}.help-video-player{width:100%;max-width:calc((100vh - 15rem) * 1.7778)}.update-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--overlay-dark);z-index:1040;cursor:pointer}.update-modal-container{overflow-y:auto;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1050;width:90%;max-width:800px;max-height:90vh;background-color:var(--bg-white);border-radius:.75rem;box-shadow:0 10px 40px var(--shadow-3xl)}@media (max-width:575.98px){.update-modal-container{width:95%;border-radius:.375rem}}.update-modal-container .modal-content{border:none;box-shadow:none}.update-modal-container .modal-header{padding:1rem 1.5rem .5rem}.update-modal-container .modal-body{padding:.5rem 1.5rem 1.5rem}@media (max-width:575.98px){.update-modal-container .modal-header{padding:.75rem 1rem .5rem}.update-modal-container .modal-body{padding:.5rem 1rem 1rem}}.group-select-login-section{position:relative;z-index:1;padding:1.5rem 0;border-bottom:1px solid var(--border-soft);margin-bottom:0}.group-select-login-btn{padding:.75rem 2rem;transition:all .35s cubic-bezier(.4,0,.2,1);border-radius:10px;box-shadow:0 3px 8px var(--shadow-sm);font-weight:600;border:2px solid var(--border-soft);background-color:#fff}.group-select-login-btn:hover{transform:translateY(-3px);box-shadow:0 6px 16px var(--shadow-md);background-color:var(--bg-gray-light);border-color:var(--border-light-pink)}.group-select-login-btn:active{transform:translateY(-1px);box-shadow:0 2px 6px var(--shadow-sm);transition-duration:.1s}.group-select-login-btn:focus-visible{outline:3px solid var(--focus-ring-brand);outline-offset:2px}.group-select-login-icon{height:20px;width:auto;flex-shrink:0}.start-page{display:flex;flex-direction:column;flex-grow:1;min-height:0}.start-page .ratho-tab-view{--content-padding:2rem}.ratho-tab-view .nav-link img{filter:grayscale(1) brightness(.55);transition:filter .15s ease}.ratho-tab-view .nav-link.active img{filter:grayscale(1) brightness(.35)}.ratho-tab-view .nav-item:has(.nav-link.disabled){cursor:not-allowed}.ratho-tab-view .nav-link.disabled{pointer-events:none;color:var(--bs-secondary-color);opacity:.55}@media (max-width:575.98px){.ratho-tab-view .nav-link i{margin-right:0;font-size:1.125rem}}.error-page{min-height:80vh;display:flex;align-items:center;padding:3rem 15px;background:var(--bg-cream)}.error-page-card{background:var(--bg-white);border:1px solid var(--border-side);border-radius:1.25rem;padding:3rem 2.5rem;box-shadow:0 4px 24px var(--shadow-sm);max-width:800px;margin:0 auto;animation:errorSlideIn .6s ease-out}.error-page-subtitle{max-width:500px}.error-page-icon{font-size:4rem;z-index:1}.error-page-pulse{position:absolute;width:120px;height:120px;border-radius:50%;border:2px solid var(--brand-primary);opacity:0;animation:errorPulse 2s ease-out infinite}.error-page .ratho-action-card{background:var(--bg-panel-cream);border-color:var(--border-soft)}.error-page .ratho-action-card:hover{background:var(--bg-white);box-shadow:0 4px 16px var(--shadow-sm)}.error-page .ratho-action-card .ratho-action-card-icon{color:var(--brand-primary)}.error-page .ratho-action-card .ratho-action-card-title{color:var(--text-dark)}.error-page-footer{border-color:var(--border-soft)!important}.error-page-technical-details{max-width:550px}@keyframes errorSlideIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes errorPulse{0%{transform:scale(.5);opacity:.6}100%{transform:scale(1.2);opacity:0}}.error-page-owl{width:120px;height:auto;animation:errorOwlFloat 3s ease-in-out infinite}@keyframes errorOwlFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (max-width:768px){.error-page{padding:2rem 15px}.error-page-card{padding:2rem 1.5rem}.error-page-actions{flex-direction:column}}.customer-onboarding-page{padding:3rem 0;min-height:85vh;position:relative}.customer-onboarding-page .onboarding-card{background:var(--bg-white);border:1px solid var(--border-side);border-radius:1.25rem;padding:3rem 2.5rem;box-shadow:0 4px 24px var(--shadow-sm);position:relative;overflow:hidden;animation:slideInUp .8s ease-out}.customer-onboarding-page .onboarding-mascot{width:100px;height:auto;filter:drop-shadow(0 4px 12px var(--glow-brand-xs))}.customer-onboarding-page .onboarding-hero{position:relative;z-index:1}.customer-onboarding-page .onboarding-hero .hero-title{color:var(--text-dark);font-weight:700;font-size:2rem}.customer-onboarding-page .onboarding-hero .hero-description,.customer-onboarding-page .onboarding-hero .hero-subtitle{font-size:1.125rem;line-height:1.5;color:var(--text-muted)}.customer-onboarding-page .onboarding-benefits{position:relative;z-index:1}.customer-onboarding-page .onboarding-benefits h4{color:var(--text-dark);font-weight:700}.customer-onboarding-page .onboarding-benefits .benefit-item{padding:1.5rem;border-radius:.75rem;background:var(--bg-panel-cream);border:1px solid var(--border-soft);height:100%}.customer-onboarding-page .onboarding-benefits .benefit-item h6{font-weight:600;color:var(--text-dark);margin-bottom:.5rem}.customer-onboarding-page .onboarding-benefits .benefit-item p{color:var(--text-muted);margin-bottom:0;line-height:1.4}.customer-onboarding-page .onboarding-cta{position:relative;z-index:1}.customer-onboarding-page .onboarding-cta h5{color:var(--text-dark);font-weight:700}.customer-onboarding-page .onboarding-cta .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.customer-onboarding-page .onboarding-cta .cta-buttons .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.5rem;border-radius:.75rem;font-weight:600;transition:all .3s ease;min-width:160px}.customer-onboarding-page .onboarding-cta .cta-buttons .btn:hover{transform:translateY(-2px)}.customer-onboarding-page .onboarding-cta .alternative-login{border-color:var(--border-soft)!important}@media (max-width:768px){.customer-onboarding-page{padding:2rem 0}.customer-onboarding-page .onboarding-card{padding:2rem 1.5rem}.customer-onboarding-page .onboarding-hero .hero-title{font-size:1.5rem}}.rathogridstack-host{transition:opacity .2s ease;opacity:1}.rathogridstack-host.is-reloading{opacity:.55}.grid-stack{overflow:visible;margin-left:calc(var(--gs-item-margin-left,6px) * -1);margin-right:calc(var(--gs-item-margin-right,6px) * -1)}.grid-stack .grid-stack-item{overflow:visible;container-type:inline-size;visibility:hidden}.grid-stack .grid-stack-item>.grid-stack-item-content{border-radius:.75rem;box-shadow:0 1px 3px var(--shadow-sm);transition:transform 150ms ease,box-shadow 150ms ease;overflow:hidden;background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-highlight) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}.grid-stack .grid-stack-item>.grid-stack-item-content>*{opacity:0;transition:opacity .3s ease}.grid-stack .grid-stack-item:hover>.grid-stack-item-content{transform:translateY(-2px);box-shadow:0 8px 20px var(--shadow-xl)}.grid-stack.gs-no-transition,.grid-stack.gs-no-transition .grid-stack-item,.grid-stack.gs-no-transition .grid-stack-item-content{transition:none!important}.grid-stack.gs-initialized .grid-stack-item{visibility:visible}.grid-stack.gs-content-ready .grid-stack-item>.grid-stack-item-content{animation:none;background:0 0}.grid-stack.gs-content-ready .grid-stack-item>.grid-stack-item-content>*{opacity:1}.gs-delete-indicator,.gs-edit-indicator,.gs-lock-indicator,.gs-widget-badge{position:absolute;z-index:10;user-select:none;-webkit-user-select:none;width:clamp(1.75rem,17cqi,3.25rem);height:clamp(1.75rem,17cqi,3.25rem);border-radius:50%;background-color:var(--gradient-start);border:3px solid var(--bg-white);padding:0;transition:transform 150ms ease;display:flex;align-items:center;justify-content:center}.gs-delete-indicator i,.gs-edit-indicator i,.gs-lock-indicator i,.gs-widget-badge i{color:var(--text-white);font-size:clamp(.7rem,7.5cqi,1.25rem);line-height:1;display:inline-flex;align-items:center;justify-content:center}.gs-delete-indicator>img,.gs-edit-indicator>img,.gs-lock-indicator>img,.gs-widget-badge>img{width:100%;height:100%;display:block;object-fit:contain;pointer-events:none;-webkit-user-drag:none}.grid-stack-item:hover .gs-delete-indicator,.grid-stack-item:hover .gs-edit-indicator,.grid-stack-item:hover .gs-lock-indicator,.grid-stack-item:hover .gs-widget-badge{transform:translateY(-2px)}.gs-lock-indicator{top:clamp(.2rem,1cqi,.4rem);right:clamp(.2rem,1cqi,.4rem);background:0 0;border:0}.gs-lock-indicator--interactive{cursor:pointer;outline:0}.gs-lock-indicator--interactive:hover{filter:brightness(.9)}.gs-lock-indicator--interactive:focus-visible{outline:2px solid var(--focus-ring-blue);outline-offset:2px}.gs-lock-indicator--unlocked{filter:grayscale(1)}.gs-lock-indicator--unlocked.gs-lock-indicator--interactive:hover{filter:grayscale(1) brightness(.9)}.gs-edit-indicator{top:clamp(.2rem,1cqi,.4rem);left:clamp(.2rem,1cqi,.4rem);cursor:pointer;outline:0}.gs-edit-indicator:hover{filter:brightness(.9)}.gs-edit-indicator:focus-visible{outline:2px solid var(--focus-ring-blue);outline-offset:2px}.gs-delete-indicator{bottom:clamp(.2rem,1cqi,.4rem);left:clamp(.2rem,1cqi,.4rem);background:0 0;border:0;cursor:pointer;outline:0}.gs-delete-indicator:hover{filter:brightness(.9)}.gs-delete-indicator:focus-visible{outline:2px solid var(--focus-ring-blue);outline-offset:2px}@media (max-width:575.98px){.grid-stack>.grid-stack-item>.grid-stack-item-content{inset:3px}}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9mb250cy5zY3NzIiwiTGF5b3V0L0dlbmVyYWwuc2NzcyIsIl90eXBvZ3JhcGh5LXRva2Vucy5zY3NzIiwiY29tcG9uZW50cy9fYmFzZS9fdXRpbGl0aWVzLnNjc3MiLCJMYXlvdXQvTWFpbkxheW91dC5zY3NzIiwiTGF5b3V0L1BvcnRhbEhlYWRlci5zY3NzIiwiTGF5b3V0L1BvcnRhbFNpZGViYXIuc2NzcyIsIkxheW91dC9IZWFkZXJEcm9wZG93bi5zY3NzIiwiTGF5b3V0L0Ryb3Bkb3duTWVudUl0ZW0uc2NzcyIsIkxheW91dC9IZWFkZXJTZXR0aW5nc0Ryb3Bkb3duLnNjc3MiLCJMYXlvdXQvSGVhZGVyQXBwRHJhd2VyLnNjc3MiLCJjb21wb25lbnRzL1NpZGVNZW51L1Byb2ZpbGVDYXJkLnNjc3MiLCJjb21wb25lbnRzL1NpZGVNZW51L0dyb3VwTGlicmFyaWVzLnNjc3MiLCJjb21wb25lbnRzL1RhYlNjcm9sbC5zY3NzIiwiY29tcG9uZW50cy9Vc2VyVGlsZUNhcmQuc2NzcyIsImNvbXBvbmVudHMvU2tlbGV0b24uc2NzcyIsImNvbXBvbmVudHMvUmF0aG9BbGVydC5zY3NzIiwiY29tcG9uZW50cy9CZXRhQmFubmVyLnNjc3MiLCJjb21wb25lbnRzL1JhdGhvQmxhem9yU2VsZWN0SW5wdXQuc2NzcyIsImNvbXBvbmVudHMvRmx5b3V0L0ZseW91dC5zY3NzIiwiY29tcG9uZW50cy9GbHlvdXQvQ2hhbmdlRW52aXJvbm1lbnRGbHlvdXQuc2NzcyIsImNvbXBvbmVudHMvRmx5b3V0L0NoYW5nZVByb2ZpbGVQaWN0dXJlRmx5b3V0LnNjc3MiLCJjb21wb25lbnRzL0ZseW91dC9RdWlja1N0YXJ0Rmx5b3V0LnNjc3MiLCJjb21wb25lbnRzL0ZseW91dC9SZXNldFBhc3N3b3JkRmx5b3V0LnNjc3MiLCJjb21wb25lbnRzL0ZseW91dC9NYW5hZ2VQaW5uZWRHcm91cHNGbHlvdXQuc2NzcyIsIkxheW91dC9UYWJFeHBhbmRIYW5kbGUuc2NzcyIsInBhZ2VzL0FjY291bnQvU3R1ZGVudC5zY3NzIiwicGFnZXMvQWNjb3VudC9Hcm91cHMuc2NzcyIsInBhZ2VzL0NsYXNzTWFuYWdlbWVudC9fU2NyZWVuc2hvdFZpZXdlci5zY3NzIiwicGFnZXMvQ2xhc3NNYW5hZ2VtZW50L19Ucm91Ymxlc2hvb3RpbmdXaXphcmQuc2NzcyIsInBhZ2VzL0NsYXNzTWFuYWdlbWVudC9DbGFzc01hbmFnZW1lbnQuc2NzcyIsInBhZ2VzL0NsYXNzTWFuYWdlbWVudC9FeHBvcnRQaWN0dXJlUGFzc3dvcmRzLnNjc3MiLCJwYWdlcy9IZWxwZGVzay9IZWxwVXBkYXRlcy5zY3NzIiwicGFnZXMvQWNjb3VudC9Db21wb25lbnRzL01pY3Jvc29mdExvZ2luQnV0dG9uLnNjc3MiLCJwYWdlcy9TdGFydC9TdGFydC5zY3NzIiwicGFnZXMvRXJyb3IvRXJyb3JQYWdlLnNjc3MiLCJwYWdlcy9FcnJvci9Ob1J1cC5zY3NzIiwiY29tcG9uZW50cy9ncmlkc3RhY2svcmF0aG9ncmlkc3RhY2suc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiaUJBR0EsV0FDRSxZQUFBLFFBQ0EsV0FBQSxPQUNBLFlBQUEsSUFDQSxhQUFBLEtBQ0EsSUFBQSxvREFBQSxnQkFDQSxjQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxZQUdGLFdBQ0UsWUFBQSxRQUNBLFdBQUEsT0FDQSxZQUFBLElBQ0EsYUFBQSxLQUNBLElBQUEsZ0RBQUEsZ0JBQ0EsY0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxPQUlGLFdBQ0UsWUFBQSxRQUNBLFdBQUEsT0FDQSxZQUFBLElBQ0EsYUFBQSxLQUNBLElBQUEsbURBQUEsZ0JBQ0EsY0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsWUFHRixXQUNFLFlBQUEsUUFDQSxXQUFBLE9BQ0EsWUFBQSxJQUNBLGFBQUEsS0FDQSxJQUFBLCtDQUFBLGdCQUNBLGNBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsT0FJRixXQUNFLFlBQUEsT0FDQSxXQUFBLE9BQ0EsWUFBQSxJQUNBLGFBQUEsS0FDQSxJQUFBLDBDQUFBLGdCQUNBLGNBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFlBR0YsV0FDRSxZQUFBLE9BQ0EsV0FBQSxPQUNBLFlBQUEsSUFDQSxhQUFBLEtBQ0EsSUFBQSxzQ0FBQSxnQkFDQSxjQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE9BR0YsV0FDRSxZQUFBLE9BQ0EsV0FBQSxPQUNBLFlBQUEsSUFDQSxhQUFBLEtBQ0EsSUFBQSwwQ0FBQSxnQkFDQSxjQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxZQUdGLFdBQ0UsWUFBQSxPQUNBLFdBQUEsT0FDQSxZQUFBLElBQ0EsYUFBQSxLQUNBLElBQUEsc0NBQUEsZ0JBQ0EsY0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxPQUdGLFdBQ0UsWUFBQSxPQUNBLFdBQUEsT0FDQSxZQUFBLElBQ0EsYUFBQSxLQUNBLElBQUEsMENBQUEsZ0JBQ0EsY0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsWUFHRixXQUNFLFlBQUEsT0FDQSxXQUFBLE9BQ0EsWUFBQSxJQUNBLGFBQUEsS0FDQSxJQUFBLHNDQUFBLGdCQUNBLGNBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsT0FHRixXQUNFLFlBQUEsT0FDQSxXQUFBLE9BQ0EsWUFBQSxJQUNBLGFBQUEsS0FDQSxJQUFBLDBDQUFBLGdCQUNBLGNBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFlBR0YsV0FDRSxZQUFBLE9BQ0EsV0FBQSxPQUNBLFlBQUEsSUFDQSxhQUFBLEtBQ0EsSUFBQSxzQ0FBQSxnQkFDQSxjQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsV0FBQSxDQUFBLFdBQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxXQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE1BQUEsQ0FBQSxNQUFBLENBQUEsTUFBQSxDQUFBLE9DMUdGLE1BSUMsZ0JBQUEsUUFDQSxrQkFBQSxRQUNBLG9CQUFBLFFBQ0EscUJBQUEsUUFDQSxrQkFBQSxRQUdBLG9CQUFBLEdBQUEsQ0FBQSxHQUFBLENBQUEsR0FDQSxtQkFBQSxHQUFBLENBQUEsR0FBQSxDQUFBLEdBQ0EsbUJBQUEsR0FBQSxDQUFBLEdBQUEsQ0FBQSxHQUNBLGtCQUFBLEdBQUEsQ0FBQSxHQUFBLENBQUEsR0FDQSxzQkFBQSxHQUFBLENBQUEsR0FBQSxDQUFB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QUNJLFFBQUEsSUFBQSxNQUFBLHVCQUNBLGVBQUEsSUFXUiw0QkFDSSxzREFDSSxNQUFBIiwiZmlsZSI6InBvcnRhbC5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBMb2NhbCBmb250IGRlZmluaXRpb25zIChob3N0ZWQgaW5zdGVhZCBvZiBHb29nbGUgRm9udHMgZm9yIHByaXZhY3kvcGVyZm9ybWFuY2UpXHJcblxyXG4vLyBBQmVlWmVlIC0gUmVndWxhclxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ0FCZWVaZWUnO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL2FiZWV6ZWUvYWJlZXplZS1yZWd1bGFyLWxhdGluLWV4dC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcclxuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdBQmVlWmVlJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9hYmVlemVlL2FiZWV6ZWUtcmVndWxhci1sYXRpbi53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcclxuICB1bmljb2RlLXJhbmdlOiBVKzAwMDAtMDBGRiwgVSswMTMxLCBVKzAxNTItMDE1MywgVSswMkJCLTAyQkMsIFUrMDJDNiwgVSswMkRBLCBVKzAyREMsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMjAwMC0yMDZGLCBVKzIwQUMsIFUrMjEyMiwgVSsyMTkxLCBVKzIxOTMsIFUrMjIxMiwgVSsyMjE1LCBVK0ZFRkYsIFUrRkZGRDtcclxufVxyXG5cclxuLy8gQUJlZVplZSAtIEl0YWxpY1xyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ0FCZWVaZWUnO1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL2FiZWV6ZWUvYWJlZXplZS1pdGFsaWMtbGF0aW4tZXh0LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpO1xyXG4gIHVuaWNvZGUtcmFuZ2U6IFUrMDEwMC0wMkJBLCBVKzAyQkQtMDJDNSwgVSswMkM3LTAyQ0MsIFUrMDJDRS0wMkQ3LCBVKzAyREQtMDJGRiwgVSswMzA0LCBVKzAzMDgsIFUrMDMyOSwgVSsxRDAwLTFEQkYsIFUrMUUwMC0xRTlGLCBVKzFFRjItMUVGRiwgVSsyMDIwLCBVKzIwQTAtMjBBQiwgVSsyMEFELTIwQzAsIFUrMjExMywgVSsyQzYwLTJDN0YsIFUrQTcyMC1BN0ZGO1xyXG59XHJcblxyXG5AZm9udC1mYWNlIHtcclxuICBmb250LWZhbWlseTogJ0FCZWVaZWUnO1xyXG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL2FiZWV6ZWUvYWJlZXplZS1pdGFsaWMtbGF0aW4ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XHJcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XHJcbn1cclxuXHJcbi8vIE51bml0byAtIFdlaWdodHMgNDAwLCA1MDAsIDYwMCwgNzAwXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnTnVuaXRvJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9udW5pdG8vbnVuaXRvLWxhdGluLWV4dC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcclxuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdOdW5pdG8nO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNDAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL251bml0by9udW5pdG8tbGF0aW4ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XHJcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnTnVuaXRvJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9udW5pdG8vbnVuaXRvLWxhdGluLWV4dC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcclxuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdOdW5pdG8nO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNTAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL251bml0by9udW5pdG8tbGF0aW4ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XHJcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnTnVuaXRvJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9udW5pdG8vbnVuaXRvLWxhdGluLWV4dC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcclxuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdOdW5pdG8nO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL251bml0by9udW5pdG8tbGF0aW4ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XHJcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XHJcbn1cclxuXHJcbkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnTnVuaXRvJztcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBmb250LWRpc3BsYXk6IHN3YXA7XHJcbiAgc3JjOiB1cmwoJy9mb250cy9udW5pdG8vbnVuaXRvLWxhdGluLWV4dC53b2ZmMicpIGZvcm1hdCgnd29mZjInKTtcclxuICB1bmljb2RlLXJhbmdlOiBVKzAxMDAtMDJCQSwgVSswMkJELTAyQzUsIFUrMDJDNy0wMkNDLCBVKzAyQ0UtMDJENywgVSswMkRELTAyRkYsIFUrMDMwNCwgVSswMzA4LCBVKzAzMjksIFUrMUQwMC0xREJGLCBVKzFFMDAtMUU5RiwgVSsxRUYyLTFFRkYsIFUrMjAyMCwgVSsyMEEwLTIwQUIsIFUrMjBBRC0yMEMwLCBVKzIxMTMsIFUrMkM2MC0yQzdGLCBVK0E3MjAtQTdGRjtcclxufVxyXG5cclxuQGZvbnQtZmFjZSB7XHJcbiAgZm9udC1mYW1pbHk6ICdOdW5pdG8nO1xyXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGZvbnQtZGlzcGxheTogc3dhcDtcclxuICBzcmM6IHVybCgnL2ZvbnRzL251bml0by9udW5pdG8tbGF0aW4ud29mZjInKSBmb3JtYXQoJ3dvZmYyJyk7XHJcbiAgdW5pY29kZS1yYW5nZTogVSswMDAwLTAwRkYsIFUrMDEzMSwgVSswMTUyLTAxNTMsIFUrMDJCQi0wMkJDLCBVKzAyQzYsIFUrMDJEQSwgVSswMkRDLCBVKzAzMDQsIFUrMDMwOCwgVSswMzI5LCBVKzIwMDAtMjA2RiwgVSsyMEFDLCBVKzIxMjIsIFUrMjE5MSwgVSsyMTkzLCBVKzIyMTIsIFUrMjIxNSwgVStGRUZGLCBVK0ZGRkQ7XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgR0xPQkFMIFRIRU1FIC0gQ1NTIFZhcmlhYmxlcyBhbmQgQmFzZSBTdHlsZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbjpyb290IHtcclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgQlJBTkQgQ09MT1JTIChVc2luZyBSYXRobyBEZXNpZ24gU3lzdGVtKVxyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLWJyYW5kLXByaW1hcnk6ICNGNjcxNjA7ICAgICAgICAgICAgICAgLyogUmF0aG8gY29yYWwvc2FsbW9uICovXHJcblx0LS1icmFuZC1zZWNvbmRhcnk6ICNGMEMzNzQ7ICAgICAgICAgICAgIC8qIFJhdGhvIGdyb3VwIHRleHQgZ29sZCAqL1xyXG5cdC0tYnJhbmQtYWNjZW50LWRhcms6ICNFQTU4MEM7XHJcblx0LS1icmFuZC1hY2NlbnQtbGlnaHQ6ICNGRjhGNjE7ICAgICAgICAgIC8qIFJhdGhvIG9yYW5nZSAqL1xyXG5cdC0tYnJhbmQtaGlnaGxpZ2h0OiAjRkFEOEQ2OyAgICAgICAgICAgICAvKiBSYXRobyBncm91cCBzZWxlY3Rpb24gcGluayAqL1xyXG5cclxuXHQvKiBSR0IgY29tcG9uZW50cyDigJQgdXNlIHdpdGggcmdiYSh2YXIoLS1icmFuZC0qLXJnYiksIGFscGhhKSAqL1xyXG5cdC0tYnJhbmQtcHJpbWFyeS1yZ2I6IDI0NiwgMTEzLCA5NjsgICAgIC8qICNGNjcxNjAgY29yYWwgKi9cclxuXHQtLWJyYW5kLWFjY2VudC1yZ2I6IDI1NSwgMTQzLCA5NzsgICAgICAvKiAjRkY4RjYxIG9yYW5nZSAqL1xyXG5cdC0tYnJhbmQtaGVhZGVyLXJnYjogMjM5LCAxMjMsIDgyOyAgICAgIC8qICNFRjdCNTIgaGVhZGVyIGdyYWRpZW50IG9yYW5nZSAqL1xyXG5cdC0tYnJhbmQtZm9jdXMtcmdiOiAyNDksIDExNSwgOTk7ICAgICAgIC8qIGZvY3VzIHJpbmcgY29yYWwgKi9cclxuXHQtLWJyYW5kLWZvY3VzLWFsdC1yZ2I6IDI1MCwgMTIwLCA5NzsgICAvKiBmb2N1cyByaW5nIGFsdCAqL1xyXG5cclxuXHQtLWJyYW5kLXByaW1hcnktZmFkZWQ6IHJnYmEodmFyKC0tYnJhbmQtcHJpbWFyeS1yZ2IpLCAwLjQpO1xyXG5cdC0tYnJhbmQtYWNjZW50LWJnOiByZ2JhKHZhcigtLWJyYW5kLWFjY2VudC1yZ2IpLCAwLjEpO1xyXG5cdC0tYnJhbmQtYWNjZW50LWJnLXN1YnRsZTogcmdiYSh2YXIoLS1icmFuZC1hY2NlbnQtcmdiKSwgMC4wOCk7XHJcblx0LS1icmFuZC1hY2NlbnQtYmctZmFpbnQ6IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMDYpO1xyXG5cdC0tYnJhbmQtYWNjZW50LWJnLWhvdmVyOiByZ2JhKHZhcigtLWJyYW5kLWFjY2VudC1yZ2IpLCAwLjE4KTtcclxuXHQtLWJyYW5kLWFjY2VudC1ib3JkZXI6IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMTUpO1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgVEVYVCBDT0xPUlNcclxuXHQgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblx0LS10ZXh0LWRhcms6ICMxMTE4Mjc7XHJcblx0LS10ZXh0LXByaW1hcnk6ICMxRjI5Mzc7XHJcblx0LS10ZXh0LXNlY29uZGFyeTogIzM3NDE1MTtcclxuXHQtLXRleHQtbXV0ZWQ6ICM2QjcyODA7XHJcblx0LS10ZXh0LWJvcmRlci1ncmF5OiAjOTI5MjkyO1xyXG5cdC0tdGV4dC13aGl0ZTogI2ZmZmZmZjtcclxuXHQtLXRleHQtd2hpdGUtbXV0ZWQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XHJcblxyXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHQgICBCQUNLR1JPVU5EIENPTE9SUyAoVXNpbmcgUmF0aG8gRGVzaWduIFN5c3RlbSlcclxuXHQgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblx0LS1iZy13aGl0ZTogI2ZmZmZmZjtcclxuXHQtLWJnLWNyZWFtOiAjRkJGNkYzOyAgICAgICAgICAgICAgICAgICAgLyogUmF0aG8gYXBwIGJhY2tncm91bmQgKi9cclxuXHQtLWJnLXBhbmVsLWNyZWFtOiAjRkNGNEVGO1xyXG5cdC0tYmctcGFuZWwtY3JlYW0tYWx0OiAjRkNGNkYyO1xyXG5cdC0tYmctaG92ZXItY3JlYW06ICNGOEVBRTI7XHJcblx0LS1iZy1ncmF5LWxpZ2h0OiAjRjNGNEY2O1xyXG5cdC0tYmctZ3JheS1tZWRpdW06ICNFNUU3RUI7XHJcblx0LS1iZy1ncmF5LW11dGVkOiAjNkI3MjgwO1xyXG5cdC0tYmctZXJyb3ItbGlnaHQ6IGxpZ2h0eWVsbG93O1xyXG5cdC0tYmctaG92ZXItZmFpbnQ6IHJnYmEoMCwgMCwgMCwgMC4wMyk7XHJcblx0LS1iZy1ob3Zlci1saWdodDogcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuXHJcblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cdCAgIEJPUkRFUiBDT0xPUlNcclxuXHQgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblx0LS1ib3JkZXItc29mdDogI0U1RTdFQjtcclxuXHQtLWJvcmRlci1zaWRlOiAjRUFEOUQxO1xyXG5cdC0tYm9yZGVyLXN1YnRsZTogcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHQtLWJvcmRlci1saWdodC1waW5rOiAjRkFEOUQ0O1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgU1RBVFVTIENPTE9SU1xyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLXN0YXR1cy1zdWNjZXNzOiAjMjhhNzQ1O1xyXG5cdC0tc3RhdHVzLXN1Y2Nlc3MtZGFyazogIzIxODgzODtcclxuXHQtLXN0YXR1cy1zdWNjZXNzLXZhbGlkYXRpb246ICMyNmIwNTA7XHJcblx0LS1zdGF0dXMtZXJyb3I6ICNkYzM1NDU7XHJcblx0LS1zdGF0dXMtZXJyb3ItZGFyazogI2M4MjMzMztcclxuXHQtLXN0YXR1cy1lcnJvci12YWxpZGF0aW9uOiAjZTUwMDAwO1xyXG5cdC0tc3RhdHVzLXdhcm5pbmctcmVkOiAjRUY0NDQ0O1xyXG5cdC0tc3RhdHVzLXdhcm5pbmctb3JhbmdlOiAjZjVhNjIzO1xyXG5cdC0tc3RhdHVzLWNvb2xkb3duLWNvbXBsZXRlOiAjNDNhMDQ3O1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgTElOSyAmIEJVVFRPTiBDT0xPUlNcclxuXHQgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblx0LS1saW5rLWRlZmF1bHQ6ICMwMDZiYjc7XHJcblx0LS1idG4tcHJpbWFyeS1iZzogIzFiNmVjMjtcclxuXHQtLWJ0bi1wcmltYXJ5LWJvcmRlcjogIzE4NjFhYztcclxuXHQtLWJ0bi1mb2N1czogdmFyKC0tZm9jdXMtcmluZy1icmFuZCk7XHJcblxyXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHQgICBTSEFET1cgQ09MT1JTIChSR0JBKVxyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLXNoYWRvdy14czogcmdiYSgwLCAwLCAwLCAwLjAzKTtcclxuXHQtLXNoYWRvdy1zbTogcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHQtLXNoYWRvdy1tZDogcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdC0tc2hhZG93LWxnOiByZ2JhKDAsIDAsIDAsIDAuMTIpO1xyXG5cdC0tc2hhZG93LXhsOiByZ2JhKDAsIDAsIDAsIDAuMTgpO1xyXG5cdC0tc2hhZG93LTJ4bDogcmdiYSgwLCAwLCAwLCAwLjIpO1xyXG5cdC0tc2hhZG93LTN4bDogcmdiYSgwLCAwLCAwLCAwLjM1KTtcclxuXHQtLXNoYWRvdy1kYXJrOiByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcblxyXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHQgICBGT0NVUyBSSU5HIENPTE9SU1xyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLWZvY3VzLXJpbmctYnJhbmQ6IHJnYmEodmFyKC0tYnJhbmQtZm9jdXMtcmdiKSwgMC4yNSk7XHJcblx0LS1mb2N1cy1yaW5nLWJyYW5kLWFsdDogcmdiYSh2YXIoLS1icmFuZC1mb2N1cy1hbHQtcmdiKSwgMC4yNSk7XHJcblx0LS1mb2N1cy1yaW5nLWJsdWU6IHJnYmEoNzcsIDE0NCwgMjU0LCAwLjUpO1xyXG5cdC0tZm9jdXMtcmluZy10ZWFsOiByZ2JhKDAsIDEyOCwgMTI4LCAwLjE1KTtcclxuXHQtLWZvY3VzLXJpbmctZGFyazogcmdiYSgzMywgMzcsIDQxLCAwLjIpO1xyXG5cdC0tZm9jdXMtcmluZy13aGl0ZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xyXG5cclxuXHQvKiBPdmVycmlkZSBCb290c3RyYXAncyBkZWZhdWx0IGJsdWUgZm9jdXMgcmluZyB3aXRoIGJyYW5kIG9yYW5nZSAqL1xyXG5cdC0tYnMtZm9jdXMtcmluZy1jb2xvcjogdmFyKC0tZm9jdXMtcmluZy1icmFuZCk7XHJcblxyXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHQgICBPVkVSTEFZIENPTE9SU1xyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLW92ZXJsYXktZGFyazogcmdiYSgwLCAwLCAwLCAwLjUpO1xyXG5cdC0tb3ZlcmxheS1kYXJrZXI6IHJnYmEoMCwgMCwgMCwgMC43KTtcclxuXHQtLW92ZXJsYXktYmFja2Ryb3A6IHJnYmEoMCwgMCwgMCwgMC42KTtcclxuXHQtLW92ZXJsYXktbGlnaHQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcclxuXHQtLW92ZXJsYXktbGlnaHQtc3Ryb25nOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMjUpO1xyXG5cdC0tb3ZlcmxheS1saWdodC1tZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xyXG5cdC0tb3ZlcmxheS1saWdodC1sZzogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgR1JPVVAgVElMRSBDT0xPUlNcclxuXHQgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblx0LS1ncm91cC1jb3JhbDogI0U4OTI3QztcclxuXHQtLWdyb3VwLWdyYXk6ICM2QjcyODA7XHJcblx0LS1ncm91cC10ZWFsOiAjNUVCQkFCO1xyXG5cdC0tZ3JvdXAtZ3JlZW46ICM2QUJGNjk7XHJcblx0LS1ncm91cC1icm93bjogI0E2N0M1MjtcclxuXHQtLWdyb3VwLXBpbms6ICNEQjcwOTM7XHJcblx0LS1ncm91cC1wdXJwbGU6ICM5QjU5QjY7XHJcblx0LS1ncm91cC1ibHVlOiAjNUI5QkQ1O1xyXG5cdC0tZ3JvdXAtbmF2eTogIzFCM0E1NztcclxuXHQtLWdyb3VwLXllbGxvdzogI0Y0RDAzRjtcclxuXHQtLWdyb3VwLXJlZDogI0U3NEMzQztcclxuXHJcblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cdCAgIEJSQU5EIEdMT1cgLyBTSEFET1cgQ09MT1JTIChvcmFuZ2UtdGludGVkKVxyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLWdsb3ctYnJhbmQteHM6IHJnYmEodmFyKC0tYnJhbmQtcHJpbWFyeS1yZ2IpLCAwLjE1KTtcclxuXHQtLWdsb3ctYnJhbmQtc206IHJnYmEodmFyKC0tYnJhbmQtaGVhZGVyLXJnYiksIDAuMik7XHJcblx0LS1nbG93LWJyYW5kLW1kOiByZ2JhKHZhcigtLWJyYW5kLWhlYWRlci1yZ2IpLCAwLjMpO1xyXG5cdC0tZ2xvdy1icmFuZC1sZzogcmdiYSh2YXIoLS1icmFuZC1wcmltYXJ5LXJnYiksIDAuMzUpO1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgU0tFTEVUT04gTE9BRElORyBDT0xPUlNcclxuXHQgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblx0LS1za2VsZXRvbi1iYXNlOiAjRjBGMEYwO1xyXG5cdC0tc2tlbGV0b24taGlnaGxpZ2h0OiAjRTBFMEUwO1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgUkFUSE8gSEVBREVSIEdSQURJRU5UIENPTE9SU1xyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLXJhdGhvLWhlYWRlci1ncmFkaWVudC15ZWxsb3c6ICNGN0E4MzI7ICAgICAgLyogTGVmdCAtIEdvbGRlbiB5ZWxsb3ctb3JhbmdlICovXHJcblx0LS1yYXRoby1oZWFkZXItZ3JhZGllbnQtb3JhbmdlOiAjRUY3QjUyOyAgICAgIC8qIENlbnRlciAtIENvcmFsIG9yYW5nZSAqL1xyXG5cdC0tcmF0aG8taGVhZGVyLWdyYWRpZW50LWNvcmFsOiAjRTg4MzdDOyAgICAgICAvKiBSaWdodCAtIFNhbG1vbiBjb3JhbCB3aXRoIGR1c3R5IHJvc2UgdG9uZSAqL1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgTEVHQUNZIFZBUklBQkxFUyAoZm9yIGNvbXBhdGliaWxpdHkpXHJcblx0ICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cdC8qIEdyYWRpZW50IHNob3J0Y3V0cyAtIHdpZGVseSB1c2VkIGFjcm9zcyBjb2RlYmFzZSAqL1xyXG5cdC0tZ3JhZGllbnQtc3RhcnQ6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG5cdC0tZ3JhZGllbnQtZW5kOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG5cdC8qIFNpZGViYXIgbmF2LWJ1dHRvbiBncmFkaWVudCAoZGFyayAtPiBsaWdodCwgbGVmdCB0byByaWdodCkuIFNoYXJlZCBieVxyXG5cdCAgIC5yYXRoby1zaWRlYmFyLW5hdi1idG4uYWN0aXZlIGFuZCB0aGUgYWN0aXZlIGdyb3VwLWxpYnJhcmllcyBpdGVtIHNvIHRoZVxyXG5cdCAgIG9yYW5qZSBncmFkaWVudHMgaW4gdGhlIHNpZGViYXIgbG9wZW4gY29uc2lzdGVudCBkZXplbGZkZSBrYW50IG9wLiAqL1xyXG5cdC0tZ3JhZGllbnQtbmF2LXN0YXJ0OiAjRjE2QjVBO1xyXG5cdC0tZ3JhZGllbnQtbmF2LWVuZDogI0ZGOUE2QztcclxuXHQvKiBDcmVhbSBhbGlhcyAtIHVzZWQgYnkgRW1iZXIgUmF0aG9UYWJWaWV3IGZhbGxiYWNrIGNoYWluICovXHJcblx0LS1jcmVhbTogdmFyKC0tYmctY3JlYW0pO1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgVFlQT0dSQVBIWVxyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQvKiAtLWZvbnQtZmFtaWx5LWJhc2UgYW5kIHR5cGUtc2NhbGUgdG9rZW5zIGxpdmUgaW4gX3R5cG9ncmFwaHktdG9rZW5zLnNjc3MgKi9cclxuXHJcblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cdCAgIExBWU9VVCDigJQgZmx1aWQgc2NhbGluZ1xyXG5cdCAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHQgICAtLXBhZ2UtcGFkIGFuZCAtLXBhZ2UtbWF4IHNjYWxlIHNtb290aGx5IHdpdGggdmlld3BvcnQgdmlhIGNsYW1wKCkgc28gdGhlXHJcblx0ICAgd2lkZ2V0IGdyaWQgKGFuZCBldmVyeSBvdGhlciBwYWdlLWNvbnRhaW5lciBjaGlsZCkgZ2V0cyBhIGNvbnRhaW5lciB3aWR0aFxyXG5cdCAgIHRoYXQgZ3Jvd3MgbW9ub3RvbmljYWxseSB3aXRob3V0IGRpc2NyZXRlIGJyZWFrcG9pbnQgc3RlcHMuIFRoZSBwcmV2aW91c1xyXG5cdCAgIHN0ZXBwZWQgbWVkaWEgcXVlcmllcyBjYXVzZWQgMi1jb2x1bW4ganVtcHMgaW4gdGhlIHdpZGdldCBncmlkIGFzIHRoZVxyXG5cdCAgIHBhZ2UtY29udGFpbmVyIGlubmVyIHdpZHRoIGNyb3NzZWQgaW50ZWdlci10aWxlIGJvdW5kYXJpZXMuXHJcblx0ICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cdC0tcGFnZS1wYWQ6IGNsYW1wKDAuNzVyZW0sIDIuNXZ3LCAzcmVtKTtcclxuXHQtLXBhZ2UtbWF4OiBjbGFtcCgxNjAwcHgsIDEwMHZ3IC0gNHJlbSwgMjQwMHB4KTtcclxuXHQtLWNvbnRlbnQtdG9wLWdhcDogMXJlbTtcclxuXHQtLXNpZGViYXItd2lkdGg6IDE2cmVtO1xyXG5cdC0tc2lkZWJhci1jb250ZW50LWdhcDogY2xhbXAoM3JlbSwgNHZ3LCA1cmVtKTtcclxuXHJcblx0LyogTWluLWhlaWdodCBvZiB0aGUgd2hpdGUgY29udGVudCBzdXJmYWNlICgucmF0aG8tY2FyZCAvIC5yYXRoby10YWItY29udGVudCkuXHJcblx0ICAgVXNlcyBjbGFtcCgpIHNvIHRoZSBzdXJmYWNlIGFjY29tbW9kYXRlcyB+MyB3aWRnZXQgcm93cyB3aXRob3V0IHNjcm9sbGluZyBvblxyXG5cdCAgIHR5cGljYWwgZGVza3RvcCB2aWV3cG9ydHMsIGJ1dCBkb2Vzbid0IGdyb3cgdG8gZmlsbCB0YWxsIHZpZXdwb3J0cyDigJQgd2hpY2hcclxuXHQgICBwcmV2aW91c2x5IGxlZnQgYSBiaWcgZW1wdHkgYmFuZCBiZWxvdyBzaG9ydCB3aWRnZXQgZ3JpZHMuIENvbnRlbnQgcGFzdCB0aGlzXHJcblx0ICAgaGVpZ2h0IGdyb3dzIHRoZSBzdXJmYWNlIG5hdHVyYWxseTsgdGhlIHBhZ2UgKG5vdCBhbiBpbm5lciBjb250YWluZXIpXHJcblx0ICAgcHJvdmlkZXMgdGhlIHNjcm9sbGJhci4gKi9cclxuXHQtLWNvbnRlbnQtc3VyZmFjZS1oZWlnaHQ6IGNsYW1wKDQyMHB4LCA1NWR2aCwgNjQwcHgpO1xyXG5cclxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcblx0ICAgQ09NUE9ORU5UU1xyXG5cdCAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHQtLWZseW91dC13aWR0aDogNjAwcHg7XHJcblx0LS1mbHlvdXQtaGFuZGxlLXdpZHRoOiAzMnB4O1xyXG5cdC0tZmx5b3V0LWhhbmRsZS1oZWlnaHQ6IDgwcHg7XHJcblx0LS1mbHlvdXQtcmFkaXVzOiAxNHB4O1xyXG5cdC0tZmx5b3V0LXNwZWVkOiAwLjNzO1xyXG5cdC0tZmx5b3V0LWJnOiB2YXIoLS1iZy1jcmVhbSk7XHJcblx0LS1mbHlvdXQtbWFyZ2luOiAzMHB4O1xyXG5cclxuXHQvKiBIZWFkZXIgKi9cclxuXHQtLWhlYWRlci1oZWlnaHQ6IDVyZW07XHJcblxyXG5cdC8qIElucHV0cyDigJQgc2hhcmVkIHRva2VucyBmb3IgZXZlcnkgdGV4dC1zdHlsZSBpbnB1dCBpbiB0aGUgUG9ydGFsIHNvXHJcblx0ICAgUmF0aG9UZXh0SW5wdXQsIFNlYXJjaEJhciBhbmQgUmF0aG9CbGF6b3JTZWxlY3QgbGluZSB1cCBpbiBmbHlvdXQgcm93cy5cclxuXHQgICBGb3JtLWNoZWNrIGNvbnRyb2xzIChSYXRob0NoZWNrYm94LCBSYXRob0Zvcm1Td2l0Y2gsIFJhdGhvVG9nZ2xlQnV0dG9uKVxyXG5cdCAgIGtlZXAgdGhlaXIgbmF0aXZlIGZvcm0tY2hlY2sgc2l6aW5nIGFuZCBpbnRlbnRpb25hbGx5IGRvIE5PVCB1c2UgdGhlc2UuICovXHJcblx0LS1yYXRoby1pbnB1dC1oZWlnaHQ6IDQ0cHg7XHJcblx0LS1yYXRoby1pbnB1dC1oZWlnaHQtbW9iaWxlOiA0OHB4O1xyXG5cdC0tcmF0aG8taW5wdXQtcmFkaXVzOiAuNzVyZW07XHJcblx0LS1yYXRoby1pbnB1dC1wYWRkaW5nLXg6IC43NXJlbTtcclxuXHQtLXJhdGhvLWlucHV0LWJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0LCAjZmY4ZjYxKTtcclxuXHQtLXJhdGhvLWlucHV0LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tYnJhbmQtYWNjZW50LWRhcmssICNlNjdhNGEpO1xyXG5cdC0tcmF0aG8taW5wdXQtZm9jdXMtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSh2YXIoLS1icmFuZC1hY2NlbnQtcmdiKSwgMC4yNSk7XHJcblx0LyogTWluaW11bSB3aWR0aCBmb3IgZHJvcGRvd24vc2VsZWN0IGlucHV0cyDigJQga2VlcHMgUmF0aG9CbGF6b3JTZWxlY3QgZnJvbVxyXG5cdCAgIGNvbGxhcHNpbmcgb3IgZ3Jvd2luZyB3aXRoIHRoZSBzZWxlY3RlZCBvcHRpb24ncyB0ZXh0LiAqL1xyXG5cdC0tcmF0aG8taW5wdXQtbWluLXdpZHRoOiAyMjBweDtcclxuXHJcblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cdCAgIFotSU5ERVggTEFZRVJTIChCb290c3RyYXAgc3RhbmRhcmQgKyBjdXN0b20pXHJcblx0ICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cdC0tei1oZWFkZXI6IDEwMzA7ICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEJvb3RzdHJhcCBzdGlja3kgKi9cclxuXHQtLXotZHJvcGRvd24tbWVudTogMTA0NTtcclxuXHQtLXotb2ZmY2FudmFzOiAxMDU1OyAgICAgICAgICAgICAgICAgICAgICAvKiBCb290c3RyYXAgb2ZmY2FudmFzICovXHJcblxyXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuXHQgICBTRU1BTlRJQyBBTElBU0VTIChmb3IgdGhlbWUgc3dpdGNoaW5nKVxyXG5cdCAgIFRPRE86IG1pZ3JhdGUgY29tcG9uZW50cyB0byB0aGVzZSBzZW1hbnRpYyBhbGlhc2VzXHJcblx0ICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cdC0tc3VyZmFjZS1wcmltYXJ5OiB2YXIoLS1iZy1jcmVhbSk7XHJcblx0LS1zdXJmYWNlLWVsZXZhdGVkOiB2YXIoLS1iZy13aGl0ZSk7XHJcblx0LS1zdXJmYWNlLXNlY29uZGFyeTogdmFyKC0tYmctcGFuZWwtY3JlYW0pO1xyXG5cdC0tc3VyZmFjZS1ob3ZlcjogdmFyKC0tYmctaG92ZXItY3JlYW0pO1xyXG5cdC0tdGV4dC1vbi1zdXJmYWNlOiB2YXIoLS10ZXh0LWRhcmspO1xyXG5cdC0tdGV4dC1vbi1icmFuZDogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIERBUksgVEhFTUUgT1ZFUlJJREVTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWl4aW4gZGFyay10aGVtZSB7XHJcblx0LyogQmFja2dyb3VuZHMgKi9cclxuXHQtLWJnLWNyZWFtOiAjMWExYTJlO1xyXG5cdC0tYmctd2hpdGU6ICMxNjIxM2U7XHJcblx0LS1iZy1wYW5lbC1jcmVhbTogIzFhMWEyZTtcclxuXHQtLWJnLXBhbmVsLWNyZWFtLWFsdDogIzFlMmE0NTtcclxuXHQtLWJnLWhvdmVyLWNyZWFtOiAjMmEyYTRhO1xyXG5cdC0tYmctZ3JheS1saWdodDogIzFlMmE0NTtcclxuXHQtLWJnLWdyYXktbWVkaXVtOiAjMzM0MTU1O1xyXG5cdC0tYmctZXJyb3ItbGlnaHQ6ICMzYjJlMDA7XHJcblx0LS1iZy1ob3Zlci1mYWludDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcclxuXHQtLWJnLWhvdmVyLWxpZ2h0OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xyXG5cclxuXHQvKiBUZXh0ICovXHJcblx0LS10ZXh0LWRhcms6ICNmMWY1Zjk7XHJcblx0LS10ZXh0LXByaW1hcnk6ICNlMmU4ZjA7XHJcblx0LS10ZXh0LXNlY29uZGFyeTogI2NiZDVlMTtcclxuXHQtLXRleHQtbXV0ZWQ6ICM5NGEzYjg7XHJcblx0LS10ZXh0LWJvcmRlci1ncmF5OiAjNjQ3NDhiO1xyXG5cclxuXHQvKiBCb3JkZXJzICovXHJcblx0LS1ib3JkZXItc29mdDogIzMzNDE1NTtcclxuXHQtLWJvcmRlci1zaWRlOiAjMzM0MTU1O1xyXG5cdC0tYm9yZGVyLXN1YnRsZTogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcclxuXHQtLWJvcmRlci1saWdodC1waW5rOiAjNGEyYTNhO1xyXG5cclxuXHQvKiBTaGFkb3dzICovXHJcblx0LS1zaGFkb3cteHM6IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHQtLXNoYWRvdy1zbTogcmdiYSgwLCAwLCAwLCAwLjMpO1xyXG5cdC0tc2hhZG93LW1kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcblx0LS1zaGFkb3ctbGc6IHJnYmEoMCwgMCwgMCwgMC40NSk7XHJcblx0LS1zaGFkb3cteGw6IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuXHQtLXNoYWRvdy0yeGw6IHJnYmEoMCwgMCwgMCwgMC41NSk7XHJcblx0LS1zaGFkb3ctM3hsOiByZ2JhKDAsIDAsIDAsIDAuNik7XHJcblx0LS1zaGFkb3ctZGFyazogcmdiYSgwLCAwLCAwLCAwLjcpO1xyXG5cclxuXHQvKiBTa2VsZXRvbiAqL1xyXG5cdC0tc2tlbGV0b24tYmFzZTogIzJhMmE0YTtcclxuXHQtLXNrZWxldG9uLWhpZ2hsaWdodDogIzMzNDE1NTtcclxuXHJcblx0LyogTGluayAmIEJ1dHRvbiAqL1xyXG5cdC0tbGluay1kZWZhdWx0OiAjNjBhNWZhO1xyXG5cdC0tYnRuLXByaW1hcnktYmc6ICMyNTYzZWI7XHJcblx0LS1idG4tcHJpbWFyeS1ib3JkZXI6ICMxZDRlZDg7XHJcblxyXG5cdC8qIEJyYW5kICovXHJcblx0LS1icmFuZC1oaWdobGlnaHQ6ICMzYTJhM2E7ICAgICAgICAgICAgIC8qIGRhcmsgcGluayBmb3IgY29udHJhc3Qgb24gZGFyayBiZyAqL1xyXG5cclxuXHQvKiBGb2N1cyByaW5ncyDigJQgaGlnaGVyIG9wYWNpdHkgZm9yIHZpc2liaWxpdHkgb24gZGFyayBiZyAqL1xyXG5cdC0tZm9jdXMtcmluZy1icmFuZDogcmdiYSh2YXIoLS1icmFuZC1mb2N1cy1yZ2IpLCAwLjUpO1xyXG5cdC0tZm9jdXMtcmluZy1icmFuZC1hbHQ6IHJnYmEodmFyKC0tYnJhbmQtZm9jdXMtYWx0LXJnYiksIDAuNSk7XHJcblx0LS1mb2N1cy1yaW5nLWJsdWU6IHJnYmEoNzcsIDE0NCwgMjU0LCAwLjYpO1xyXG5cdC0tZm9jdXMtcmluZy1kYXJrOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcbn1cclxuXHJcbltkYXRhLXRoZW1lPVwiZGFya1wiXSB7XHJcblx0QGluY2x1ZGUgZGFyay10aGVtZTtcclxufVxyXG5cclxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xyXG5cdFtkYXRhLXRoZW1lPVwiYXV0b1wiXSB7XHJcblx0XHRAaW5jbHVkZSBkYXJrLXRoZW1lO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQkFTRSBQQUdFIFNUWUxJTkdcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbmh0bWwsIGJvZHkge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5LWJhc2UpO1xyXG59XHJcblxyXG5odG1sIHtcclxuXHRvdmVyZmxvdy14OiBoaWRkZW47ICAgICAgICAgICAgICAgICAgICAvKiBQcmV2ZW50IGhvcml6b250YWwgc2Nyb2xsOyB2ZXJ0aWNhbCBoYW5kbGVkIGJ5IC5wYWdlICovXHJcbn1cclxuXHJcbmJvZHkge1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNyZWFtKTtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBMQVlPVVQgVVRJTElUSUVTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBDb25zdHJhaW5lZCBwYWdlIGNvbnRhaW5lciAqL1xyXG4ucGFnZS1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogdmFyKC0tcGFnZS1tYXgpO1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdG1hcmdpbi1yaWdodDogYXV0bztcclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXBhZ2UtcGFkKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1wYWdlLXBhZCk7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLnNpZGUtd2lkdGggeyBcclxuXHR3aWR0aDogdmFyKC0tc2lkZWJhci13aWR0aCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5tdC1jb250ZW50IHsgXHJcblx0bWFyZ2luLXRvcDogdmFyKC0tY29udGVudC10b3AtZ2FwKTtcclxufVxyXG5cclxuLmNvbnRlbnQge1xyXG5cdHBhZGRpbmctdG9wOiAxLjFyZW07XHJcbn1cclxuXHJcbi8qIEJyYW5kIGdyYWRpZW50IHV0aWxpdHkgKi9cclxuLmJnLWJyYW5kLWdyYWRpZW50IHsgXHJcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSRVNQT05TSVZFIEJSRUFLUE9JTlRTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBNb2JpbGUgLyB0YWJsZXQgLyBzbWFsbC1kZXNrdG9wIHN0cnVjdHVyYWwgb3ZlcnJpZGVzIOKAlCB0aGUgaW4tZmxvdyBzaWRlYmFyXHJcbiAgIGlzIG9ubHkgc2hvd24gYXQgeGwrICjiiaUxMjAwcHgpLiBCZWxvdyB0aGF0IGl0IGxpdmVzIGluIHRoZSBvZmZjYW52YXMsIHNvXHJcbiAgIC0tc2lkZWJhci13aWR0aCBkcml2ZXMgb25seSB0aGUgb2ZmY2FudmFzIHdpZHRoIGFuZCAtLXNpZGViYXItY29udGVudC1nYXBcclxuICAgaXMgZm9yY2VkIHRvIDAgKG5vIGluLWZsb3cgZ2FwKS4gVGhlIGNsYW1wKCkgZGVmYXVsdHMgZm9yIC0tcGFnZS1wYWQgYW5kXHJcbiAgIC0tcGFnZS1tYXggc3RpbGwgYXBwbHkgc21vb3RobHkgYWNyb3NzIGFsbCB2aWV3cG9ydHMuICovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuXHQ6cm9vdCB7XHJcblx0XHQtLXNpZGViYXItd2lkdGg6IDEwMCU7XHJcblx0XHQtLXNpZGViYXItY29udGVudC1nYXA6IDA7XHJcblx0XHQtLWNvbnRlbnQtdG9wLWdhcDogMC43NXJlbTtcclxuXHRcdC0tZmx5b3V0LXdpZHRoOiAxMDAlO1xyXG5cdFx0LS1mbHlvdXQtbWFyZ2luOiAxMHB4O1xyXG5cdH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuXHQ6cm9vdCB7XHJcblx0XHQtLWNvbnRlbnQtdG9wLWdhcDogMC44NzVyZW07XHJcblx0XHQtLXNpZGViYXItd2lkdGg6IDEwMCU7XHJcblx0XHQtLXNpZGViYXItY29udGVudC1nYXA6IDA7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcclxuXHQ6cm9vdCB7XHJcblx0XHQtLXNpZGViYXItd2lkdGg6IDE0cmVtO1xyXG5cdFx0LS1zaWRlYmFyLWNvbnRlbnQtZ2FwOiAwO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTElOSyAmIEJVVFRPTiBTVFlMRVNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbmEsIC5idG4tbGluayB7XHJcblx0Y29sb3I6IHZhcigtLWxpbmstZGVmYXVsdCk7XHJcbn1cclxuXHJcbi5wZS1mb3JjZSB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4vKiBTaG93IFwibm90LWFsbG93ZWRcIiBjdXJzb3Igb24gZGlzYWJsZWQgYnV0dG9ucy4gQm9vdHN0cmFwIHNldHMgcG9pbnRlci1ldmVudHM6IG5vbmVcclxuICAgb24gLmJ0bjpkaXNhYmxlZCwgd2hpY2ggc3VwcHJlc3NlcyBjdXJzb3IgY2hhbmdlcyBlbnRpcmVseTsgd2UgcmUtZW5hYmxlIHBvaW50ZXJcclxuICAgZXZlbnRzLiBTY29wZWQgdG8gbmF0aXZlIDxidXR0b24gZGlzYWJsZWQ+IG9ubHkg4oCUIHRoZSBkaXNhYmxlZCBhdHRyaWJ1dGUgYmxvY2tzXHJcbiAgIGNsaWNrcyBhdCB0aGUgYnJvd3NlciBsZXZlbCwgc28gcmUtZW5hYmxpbmcgcG9pbnRlci1ldmVudHMgc3RheXMgc2FmZS4gQW5jaG9yLWJhc2VkXHJcbiAgIC5idG4uZGlzYWJsZWQgaXMgaW50ZW50aW9uYWxseSBsZWZ0IGFsb25lIChpdCByZWxpZXMgb24gcG9pbnRlci1ldmVudHM6IG5vbmUgdG9cclxuICAgYmxvY2sgbmF2aWdhdGlvbikuICovXHJcbmJ1dHRvbjpkaXNhYmxlZCxcclxuYnV0dG9uW2Rpc2FibGVkXSB7XHJcblx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxufVxyXG5cclxuLmJ0bi1wcmltYXJ5IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYmcpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYnRuLXByaW1hcnktYm9yZGVyKTtcclxufVxyXG5cclxuLmJ0bjpmb2N1cyxcclxuLmJ0bjphY3RpdmU6Zm9jdXMsXHJcbi5idG4tbGluay5uYXYtbGluazpmb2N1cyxcclxuLmZvcm0tY29udHJvbDpmb2N1cyxcclxuLmZvcm0tc2VsZWN0OmZvY3VzLFxyXG4uZm9ybS1jaGVjay1pbnB1dDpmb2N1cyB7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMC4xcmVtIHZhcigtLWJnLXdoaXRlKSwgMCAwIDAgMC4yNXJlbSB2YXIoLS1idG4tZm9jdXMpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbmgxOmZvY3VzIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGT1JNIFZBTElEQVRJT04gU1RZTEVTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4udmFsaWQubW9kaWZpZWQ6bm90KFt0eXBlPWNoZWNrYm94XSkge1xyXG5cdG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1zdGF0dXMtc3VjY2Vzcy12YWxpZGF0aW9uKTtcclxufVxyXG5cclxuLmludmFsaWQge1xyXG5cdG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1zdGF0dXMtZXJyb3ItdmFsaWRhdGlvbik7XHJcbn1cclxuXHJcbi52YWxpZGF0aW9uLW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1zdGF0dXMtZXJyb3ItdmFsaWRhdGlvbik7XHJcbn1cclxuXHJcbi5kYXJrZXItYm9yZGVyLWNoZWNrYm94LmZvcm0tY2hlY2staW5wdXQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1ib3JkZXItZ3JheSk7XHJcbn1cclxuXHJcbi8qIEJyYW5kLWNvbG9yZWQgY2hlY2tib3hlcyBhbmQgdG9nZ2xlIHN3aXRjaGVzIOKAlCBhcHBsaWVkIGdsb2JhbGx5IHNvIGFsbFxyXG4gICBmb3JtLWNoZWNrIGlucHV0cyAoY2hlY2tib3hlcyArIHN3aXRjaGVzKSB1c2UgdGhlIGJyYW5kIGFjY2VudCBjb2xvci5cclxuICAgUHJldmlvdXNseSBvcHQtaW4gdmlhIC5mb3JtLWNoZWNrLWJyYW5kOyBtYWRlIGdsb2JhbCB0byBtYXRjaCB0aGVcclxuICAgcG9ydGFsLXdpZGUgYnJhbmQgdGhlbWluZy4gKi9cclxuLmZvcm0tY2hlY2staW5wdXQ6Y2hlY2tlZCxcclxuLmZvcm0tY2hlY2staW5wdXQ6aW5kZXRlcm1pbmF0ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0LCAjZmY4ZjYxKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCwgI2ZmOGY2MSk7XHJcbn1cclxuXHJcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQ6OnBsYWNlaG9sZGVyLFxyXG4uZm9ybS1mbG9hdGluZyA+IC5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcclxuXHRjb2xvcjogdmFyKC0tYnMtc2Vjb25kYXJ5LWNvbG9yKTtcclxuXHR0ZXh0LWFsaWduOiBlbmQ7XHJcbn1cclxuXHJcbi5mb3JtLWZsb2F0aW5nID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQ6Zm9jdXM6OnBsYWNlaG9sZGVyLCBcclxuLmZvcm0tZmxvYXRpbmcgPiAuZm9ybS1jb250cm9sOmZvY3VzOjpwbGFjZWhvbGRlciB7XHJcblx0dGV4dC1hbGlnbjogc3RhcnQ7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEJMQVpPUiBFUlJPUiBCT1VOREFSWVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmJsYXpvci1lcnJvci1ib3VuZGFyeSB7XHJcblx0YmFja2dyb3VuZDogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjNhV1IwYUQwaU5UWWlJR2hsYVdkb2REMGlORGtpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJRzkyWlhKbWJHOTNQU0pvYVdSa1pXNGlQanhrWldaelBqeGpiR2x3VUdGMGFDQnBaRDBpWTJ4cGNEQWlQanh5WldOMElIZzlJakl6TlNJZ2VUMGlOVEVpSUhkcFpIUm9QU0kxTmlJZ2FHVnBaMmgwUFNJME9TSXZQand2WTJ4cGNGQmhkR2crUEM5a1pXWnpQanhuSUdOc2FYQXRjR0YwYUQwaWRYSnNLQ05qYkdsd01Da2lJSFJ5WVc1elptOXliVDBpZEhKaGJuTnNZWFJsS0MweU16VWdMVFV4S1NJK1BIQmhkR2dnWkQwaVRUSTJNeTQxTURZZ05URkRNalkwTGpjeE55QTFNU0F5TmpVdU9ERXpJRFV4TGpRNE16Y2dNalkyTGpZd05pQTFNaTR5TmpVNFRESTJOeTR3TlRJZ05USXVOems0TnlBeU5qY3VOVE01SURVekxqWXlPRE1nTWprd0xqRTROU0E1TWk0eE9ETXhJREk1TUM0MU5EVWdPVEl1TnprMUlESTVNQzQyTlRZZ09USXVPVGsyUXpJNU1DNDROemNnT1RNdU5URXpJREk1TVNBNU5DNHdPREUxSURJNU1TQTVOQzQyTnpneUlESTVNU0E1Tnk0d05qVXhJREk0T1M0d016Z2dPVGtnTWpnMkxqWXhOeUE1T1V3eU5EQXVNemd6SURrNVF6SXpOeTQ1TmpNZ09Ua2dNak0ySURrM0xqQTJOVEVnTWpNMklEazBMalkzT0RJZ01qTTJJRGswTGpNM09Ua2dNak0yTGpBek1TQTVOQzR3T0RnMklESXpOaTR3T0RrZ09UTXVPREEzTWt3eU16WXVNek00SURrekxqQXhOaklnTWpNMkxqZzFPQ0E1TWk0eE16RTBJREkxT1M0ME56TWdOVE11TmpJNU5DQXlOVGt1T1RZeElEVXlMamM1T0RVZ01qWXdMalF3TnlBMU1pNHlOalU0UXpJMk1TNHlJRFV4TGpRNE16Y2dNall5TGpJNU5pQTFNU0F5TmpNdU5UQTJJRFV4V2sweU5qTXVOVGcySURZMkxqQXhPRE5ETWpZd0xqY3pOeUEyTmk0d01UZ3pJREkxT1M0ek1UTWdOamN1TVRJME5TQXlOVGt1TXpFeklEWTVMak16TnlBeU5Ua3VNekV6SURZNUxqWXhNRElnTWpVNUxqTXpNaUEyT1M0NE5qQTRJREkxT1M0ek56RWdOekF1TURnNE4wd3lOakV1TnprMUlEZzBMakF4TmpFZ01qWTFMak00SURnMExqQXhOakVnTWpZM0xqZ3lNU0EyT1M0M05EYzFRekkyTnk0NE5pQTJPUzQzTXpBNUlESTJOeTQ0TnprZ05qa3VOVGczTnlBeU5qY3VPRGM1SURZNUxqTXhOemtnTWpZM0xqZzNPU0EyTnk0eE1UZ3lJREkyTmk0ME5EZ2dOall1TURFNE15QXlOak11TlRnMklEWTJMakF4T0ROYVRUSTJNeTQxTnpZZ09EWXVNRFUwTjBNeU5qRXVNRFE1SURnMkxqQTFORGNnTWpVNUxqYzROaUE0Tnk0ek1EQTFJREkxT1M0M09EWWdPRGt1TnpreU1TQXlOVGt1TnpnMklEa3lMakk0TXpjZ01qWXhMakEwT1NBNU15NDFNamsxSURJMk15NDFOellnT1RNdU5USTVOU0F5TmpZdU1URTJJRGt6TGpVeU9UVWdNalkzTGpNNE55QTVNaTR5T0RNM0lESTJOeTR6T0RjZ09Ea3VOemt5TVNBeU5qY3VNemczSURnM0xqTXdNRFVnTWpZMkxqRXhOaUE0Tmk0d05UUTNJREkyTXk0MU56WWdPRFl1TURVME4xb2lJR1pwYkd3OUlpTkdSa1UxTURBaUlHWnBiR3d0Y25Wc1pUMGlaWFpsYm05a1pDSXZQand2Wno0OEwzTjJaejQ9KSBuby1yZXBlYXQgMXJlbS8xLjhyZW0sICNiMzIxMjE7XHJcblx0cGFkZGluZzogMXJlbSAxcmVtIDFyZW0gMy43cmVtO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmJsYXpvci1lcnJvci1ib3VuZGFyeTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiQW4gZXJyb3IgaGFzIG9jY3VycmVkLlwiXHJcbn1cclxuIiwiLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gVFlQT0dSQVBIWSBUT0tFTlNcclxuLy8gU2luZ2xlIHNvdXJjZSBvZiB0cnV0aCBmb3IgZm9udC1mYW1pbHksIGZvbnQtc2l6ZSBzY2FsZSwgd2VpZ2h0cywgbGluZS1oZWlnaHRzLlxyXG4vLyBQb3J0YWwgU0NTUyBmaWxlcyByZWZlcmVuY2UgdGhlIFNDU1MgdmFyaWFibGVzICgkZnMtc20sIGV0Yy4pO1xyXG4vLyBydW50aW1lIG92ZXJyaWRlcyAoUnVwU3RhdGVQcm92aWRlciByb2xlLWZvbnQgc3dhcCwgZGFyayB0aGVtZSkgdXNlIHRoZVxyXG4vLyBDU1MgY3VzdG9tIHByb3BlcnRpZXMgKHZhcigtLWZvbnQtZmFtaWx5LXN0dWRlbnQpLCB2YXIoLS1mcy1zbSksIGV0Yy4pLlxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLy8gLS0tLS0gRm9udC1mYW1pbHkgc3RhY2tzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRmb250LWZhbWlseS1iYXNlOiAgICAnTnVuaXRvJywgc2Fucy1zZXJpZjtcclxuJGZvbnQtZmFtaWx5LXN0dWRlbnQ6ICdBQmVlWmVlJywgc2Fucy1zZXJpZjtcclxuJGZvbnQtZmFtaWx5LW1vbm86ICAgICdDb25zb2xhcycsICdDb3VyaWVyIE5ldycsIG1vbm9zcGFjZTtcclxuXHJcbi8vIC0tLS0tIE1vZHVsYXIgdHlwZSBzY2FsZSAoMXJlbSA9IDE2cHgpIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vLyBBYnNvcmJzIHRoZSB+MjUgYWQtaG9jIHJlbSB2YWx1ZXMgaGlzdG9yaWNhbGx5IHNjYXR0ZXJlZCBhY3Jvc3MgUG9ydGFsIFNDU1MuXHJcbiRmcy0zeHM6ICAwLjYyNXJlbTsgICAvLyAxMHB4IOKAlCBhYnNvcmJzIDAuNTUsIDAuNiwgMC42MjVcclxuJGZzLTJ4czogIDAuNjg3NXJlbTsgIC8vIDExcHgg4oCUIGFic29yYnMgMC42NSwgMC43XHJcbiRmcy14czogICAwLjc1cmVtOyAgICAvLyAxMnB4IOKAlCBhYnNvcmJzIDAuNzUsIDAuNzc1LCAwLjhcclxuJGZzLXNtOiAgIDAuODc1cmVtOyAgIC8vIDE0cHgg4oCUIGFic29yYnMgMC44MTI1LCAwLjg1LCAwLjg3NVxyXG4kZnMtYmFzZTogMXJlbTsgICAgICAgLy8gMTZweCDigJQgYWJzb3JicyAwLjksIDAuOTM3NSwgMC45NSwgMSwgMS4wNVxyXG4kZnMtbWQ6ICAgMS4xMjVyZW07ICAgLy8gMThweCDigJQgYWJzb3JicyAxLjEsIDEuMTVcclxuJGZzLWxnOiAgIDEuMjVyZW07ICAgIC8vIDIwcHgg4oCUIGFic29yYnMgMS4yNSwgMS4zNVxyXG4kZnMteGw6ICAgMS41cmVtOyAgICAgLy8gMjRweCDigJQgYWJzb3JicyAxLjUsIDEuNlxyXG4kZnMtMnhsOiAgMnJlbTsgICAgICAgLy8gMzJweCDigJQgYWJzb3JicyAxLjc1LCAyXHJcbiRmcy0zeGw6ICAzcmVtOyAgICAgICAvLyA0OHB4IOKAlCBhYnNvcmJzIDMsIDMuNVxyXG4kZnMtNHhsOiAgNHJlbTsgICAgICAgLy8gNjRweCDigJQgYWJzb3JicyA0XHJcblxyXG4vLyAtLS0tLSBXZWlnaHRzIChOdW5pdG8gc2hpcHMgNDAwLzUwMC82MDAvNzAwKSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4kZnctcmVndWxhcjogIDQwMDtcclxuJGZ3LW1lZGl1bTogICA1MDA7XHJcbiRmdy1zZW1pYm9sZDogNjAwO1xyXG4kZnctYm9sZDogICAgIDcwMDtcclxuXHJcbi8vIC0tLS0tIExpbmUtaGVpZ2h0cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiRsaC10aWdodDogIDEuMjtcclxuJGxoLW5vcm1hbDogMS41O1xyXG4kbGgtbG9vc2U6ICAxLjc7XHJcblxyXG4vLyAtLS0tLSBDU1MgY3VzdG9tIHByb3BlcnRpZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuLy8gRXhwb3NlZCBzbyBydW50aW1lIHN0eWxlIGluamVjdGlvbnMgKHJvbGUtZm9udCBvdmVycmlkZSBpbiBSdXBTdGF0ZVByb3ZpZGVyLFxyXG4vLyB0aGVtZSB0b2dnbGVzKSBhbmQgc2hhcmVkIGxpYnJhcmllcyBjYW4gY29uc3VtZSB0aGUgc2FtZSBzY2FsZS5cclxuOnJvb3Qge1xyXG4gICAgLS1mb250LWZhbWlseS1iYXNlOiAgICAjeyRmb250LWZhbWlseS1iYXNlfTtcclxuICAgIC0tZm9udC1mYW1pbHktc3R1ZGVudDogI3skZm9udC1mYW1pbHktc3R1ZGVudH07XHJcbiAgICAtLWZvbnQtZmFtaWx5LW1vbm86ICAgICN7JGZvbnQtZmFtaWx5LW1vbm99O1xyXG5cclxuICAgIC0tZnMtM3hzOiAgI3skZnMtM3hzfTtcclxuICAgIC0tZnMtMnhzOiAgI3skZnMtMnhzfTtcclxuICAgIC0tZnMteHM6ICAgI3skZnMteHN9O1xyXG4gICAgLS1mcy1zbTogICAjeyRmcy1zbX07XHJcbiAgICAtLWZzLWJhc2U6ICN7JGZzLWJhc2V9O1xyXG4gICAgLS1mcy1tZDogICAjeyRmcy1tZH07XHJcbiAgICAtLWZzLWxnOiAgICN7JGZzLWxnfTtcclxuICAgIC0tZnMteGw6ICAgI3skZnMteGx9O1xyXG4gICAgLS1mcy0yeGw6ICAjeyRmcy0yeGx9O1xyXG4gICAgLS1mcy0zeGw6ICAjeyRmcy0zeGx9O1xyXG4gICAgLS1mcy00eGw6ICAjeyRmcy00eGx9O1xyXG5cclxuICAgIC0tZnctcmVndWxhcjogICN7JGZ3LXJlZ3VsYXJ9O1xyXG4gICAgLS1mdy1tZWRpdW06ICAgI3skZnctbWVkaXVtfTtcclxuICAgIC0tZnctc2VtaWJvbGQ6ICN7JGZ3LXNlbWlib2xkfTtcclxuICAgIC0tZnctYm9sZDogICAgICN7JGZ3LWJvbGR9O1xyXG5cclxuICAgIC0tbGgtdGlnaHQ6ICAjeyRsaC10aWdodH07XHJcbiAgICAtLWxoLW5vcm1hbDogI3skbGgtbm9ybWFsfTtcclxuICAgIC0tbGgtbG9vc2U6ICAjeyRsaC1sb29zZX07XHJcbn1cclxuIiwiQHVzZSBcInR5cG9ncmFwaHktdG9rZW5zXCIgYXMgKjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFVUSUxJVFkgQ0xBU1NFUyAtIFJldXNhYmxlIGhlbHBlcnNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEJvb3RzdHJhcCAucmF0aW8gZml4OiA8cGljdHVyZT4gaXMgaW5saW5lIGJ5IGRlZmF1bHQsIGJyZWFraW5nIC5yYXRpbyA+ICogc2l6aW5nICovXHJcbi5yYXRpbyBwaWN0dXJlIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4vKiBTdXJmYWNlIHV0aWxpdGllcyAqL1xyXG4uY29udGVudC1zb2Z0LWJnIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXBhbmVsLWNyZWFtLWFsdCk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAuNzVyZW07XHJcbiAgICBwYWRkaW5nOiAxcmVtO1xyXG59XHJcblxyXG4uYm9yZGVyLXNvZnQgeyBcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTsgXHJcbn1cclxuXHJcbi8qIEljb24gY29sb3IgKi9cclxuLnRleHQtZ3JhZGllbnQtZW5kIHtcclxuICAgIGNvbG9yOiB2YXIoLS1ncmFkaWVudC1lbmQpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBNSVhJTlMgLSBSZXVzYWJsZSBwYXR0ZXJucyBmb3IgUG9ydGFsIGNvbXBvbmVudHNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEF2YXRhciB3aXRoIGdyYWRpZW50IGJvcmRlciBtaXhpblxyXG4gICBDb25zb2xpZGF0ZXMgZHVwbGljYXRlIHBhdHRlcm4gZnJvbSBTdHVkZW50LnNjc3MsIENsYXNzTWFuYWdlbWVudC5zY3NzLCBVc2VyVGlsZUNhcmQuc2Nzc1xyXG4gICBVc2FnZTogQGluY2x1ZGUgcmF0aG8tYXZhdGFyLWdyYWRpZW50KDEyMHB4LCAzcHgpOyAqL1xyXG5AbWl4aW4gcmF0aG8tYXZhdGFyLWdyYWRpZW50KCRzaXplOiAxMDBweCwgJGJvcmRlci13aWR0aDogM3B4KSB7XHJcbiAgICB3aWR0aDogJHNpemU7XHJcbiAgICBoZWlnaHQ6ICRzaXplO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgcGFkZGluZzogJGJvcmRlci13aWR0aDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgIH1cclxufVxyXG5cclxuLyogR3JhZGllbnQgYm9yZGVyIG1peGluXHJcbiAgIEZvciBhbnkgZWxlbWVudCB0aGF0IG5lZWRzIHRoZSBicmFuZCBncmFkaWVudCBhcyBhIGJvcmRlclxyXG4gICBVc2FnZTogQGluY2x1ZGUgcmF0aG8tZ3JhZGllbnQtYm9yZGVyKDNweCwgOHB4KTsgKi9cclxuQG1peGluIHJhdGhvLWdyYWRpZW50LWJvcmRlcigkYm9yZGVyLXdpZHRoOiAycHgsICRyYWRpdXM6IDhweCkge1xyXG4gICAgcGFkZGluZzogJGJvcmRlci13aWR0aDtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XHJcbn1cclxuXHJcbi8qIEN1c3RvbSBzY3JvbGxiYXIgbWl4aW5cclxuICAgTW92ZWQgZnJvbSBSZXNldFBhc3N3b3JkRmx5b3V0LnNjc3MgZm9yIHJldXNlIGFjcm9zcyBjb21wb25lbnRzXHJcbiAgIFVzYWdlOiBAaW5jbHVkZSBjdXN0b20tc2Nyb2xsYmFyKHZhcigtLWJvcmRlci1zb2Z0KSwgdHJhbnNwYXJlbnQpOyAqL1xyXG5AbWl4aW4gY3VzdG9tLXNjcm9sbGJhcigkdGh1bWItY29sb3I6IHZhcigtLWJzLWdyYXktNDAwKSwgJHRyYWNrLWNvbG9yOiB0cmFuc3BhcmVudCkge1xyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgICAgIHdpZHRoOiA2cHg7XHJcbiAgICB9XHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogJHRyYWNrLWNvbG9yO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcclxuICAgIH1cclxuICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkdGh1bWItY29sb3I7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBMaXN0IGl0ZW0gYm9yZGVyIG1peGluXHJcbiAgIEFkZHMgYSBib3R0b20gYm9yZGVyIHRvIGxpc3QgaXRlbXMgd2l0aCByZW1vdmFsIG9uIHRoZSBsYXN0IGNoaWxkXHJcbiAgIFVzYWdlOiBAaW5jbHVkZSBsaXN0LWl0ZW0tYm9yZGVyKCk7ICovXHJcbkBtaXhpbiBsaXN0LWl0ZW0tYm9yZGVyKCkge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYnMtYm9yZGVyLXdpZHRoKSB2YXIoLS1icy1ib3JkZXItc3R5bGUpIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XHJcblxyXG4gICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBIaWRlIHNjcm9sbGJhcnMgb24gbW9iaWxlIHdoaWxlIGtlZXBpbmcgc2Nyb2xsIGZ1bmN0aW9uYWxpdHkgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAqIHtcclxuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7ICAgICAgICAgICAgICAvKiBGaXJlZm94ICovXHJcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lOyAgICAgICAgICAgLyogSUUvRWRnZSAqL1xyXG5cclxuICAgICAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7ICAgICAgICAgICAgICAgICAgLyogQ2hyb21lLCBTYWZhcmksIE9wZXJhICovXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBHcmFkaWVudCB0ZXh0IG1peGluXHJcbiAgIEFwcGxpZXMgdGhlIGJyYW5kIGdyYWRpZW50IGFzIHRleHQgY29sb3IgdXNpbmcgYmFja2dyb3VuZC1jbGlwXHJcbiAgIFVzYWdlOiBAaW5jbHVkZSBncmFkaWVudC10ZXh0KCk7ICovXHJcbkBtaXhpbiBncmFkaWVudC10ZXh0KCkge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG59XHJcblxyXG4vKiBNb2RhbCBvdmVybGF5IG1peGluXHJcbiAgIEZ1bGwtdmlld3BvcnQgZGltbWVkIGJhY2tkcm9wIGZvciBtb2RhbCBkaWFsb2dzXHJcbiAgIFVzYWdlOiBAaW5jbHVkZSBtb2RhbC1vdmVybGF5KCk7ICovXHJcbkBtaXhpbiBtb2RhbC1vdmVybGF5KCRiZzogdmFyKC0tb3ZlcmxheS1kYXJrKSwgJHotaW5kZXg6IDEwNDApIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICByaWdodDogMDtcclxuICAgIGJvdHRvbTogMDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICRiZztcclxuICAgIHotaW5kZXg6ICR6LWluZGV4O1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4vKiBDZW50ZXJlZCBtb2RhbCBjb250YWluZXIgbWl4aW5cclxuICAgRml4ZWQtcG9zaXRpb24gY2VudGVyZWQgY29udGFpbmVyIGZvciBtb2RhbCBjb250ZW50XHJcbiAgIFVzYWdlOiBAaW5jbHVkZSBtb2RhbC1jb250YWluZXIoOTAwcHgpOyAqL1xyXG5AbWl4aW4gbW9kYWwtY29udGFpbmVyKCRtYXgtd2lkdGg6IDkwMHB4LCAkei1pbmRleDogMTA1MCwgJGJvcmRlci1yYWRpdXM6IDAuNXJlbSkge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxuICAgIHotaW5kZXg6ICR6LWluZGV4O1xyXG4gICAgd2lkdGg6IDkwJTtcclxuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcclxuICAgIG1heC1oZWlnaHQ6IDkwdmg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcclxuICAgIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHZhcigtLXNoYWRvdy0zeGwpO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIHdpZHRoOiA5NSU7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEdyYWRpZW50IGJhY2tncm91bmQgbWl4aW5cclxuICAgQXBwbGllcyB0aGUgYnJhbmQgZ3JhZGllbnQgYXMgYSBiYWNrZ3JvdW5kXHJcbiAgIFVzYWdlOiBAaW5jbHVkZSBncmFkaWVudC1iZygpOyBvciBAaW5jbHVkZSBncmFkaWVudC1iZygxMzVkZWcpOyAqL1xyXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGRpcmVjdGlvbjogdG8gcmlnaHQpIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgkZGlyZWN0aW9uLCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG59XHJcblxyXG4vKiBGb2N1cyByaW5nIG1peGluXHJcbiAgIENvbnNpc3RlbnQgYWNjZXNzaWJsZSBmb2N1cyBpbmRpY2F0b3JcclxuICAgVXNhZ2U6IEBpbmNsdWRlIGZvY3VzLXJpbmcoKTsgKi9cclxuQG1peGluIGZvY3VzLXJpbmcoJHdpZHRoOiAycHgsICRjb2xvcjogdmFyKC0tZm9jdXMtcmluZy1icmFuZCksICRvZmZzZXQ6IDJweCkge1xyXG4gICAgJjpmb2N1cyxcclxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICAgICAgb3V0bGluZTogJHdpZHRoIHNvbGlkICRjb2xvcjtcclxuICAgICAgICBvdXRsaW5lLW9mZnNldDogJG9mZnNldDtcclxuICAgIH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgR1JBRElFTlQgVVRJTElUWSBDTEFTU0VTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCcmFuZCBncmFkaWVudCBiYWNrZ3JvdW5kIC0gZm9yIGRlY29yYXRpdmUgZWxlbWVudHMgKi9cclxuLmJnLWJyYW5kLWdyYWRpZW50IHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBHcmFkaWVudCBib3JkZXIgdXRpbGl0eSBjbGFzc2VzICovXHJcbi5ncmFkaWVudC1ib3JkZXIge1xyXG4gICAgQGluY2x1ZGUgcmF0aG8tZ3JhZGllbnQtYm9yZGVyKDNweCwgOHB4KTtcclxufVxyXG5cclxuLmdyYWRpZW50LWJvcmRlci1zbSB7XHJcbiAgICBAaW5jbHVkZSByYXRoby1ncmFkaWVudC1ib3JkZXIoMnB4LCA0cHgpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBHUkFESUVOVCBURVhUIFVUSUxJVFkgQ0xBU1NFU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogT3JhbmdlIGdyYWRpZW50IHRleHQgLSBmb3IgaWNvbnMgYW5kIHRleHQgZWxlbWVudHNcclxuICAgVXNlcyBDU1MgYmFja2dyb3VuZC1jbGlwIHRvIGFwcGx5IGdyYWRpZW50IHRvIHRleHQvaWNvbnMgKi9cclxuLnRleHQtYnJhbmQtZ3JhZGllbnQsXHJcbi5yYXRoby10aXRsZS1iYXItaWNvbixcclxuLmJhY2stYnV0dG9uLWFycm93IHtcclxuICAgIEBpbmNsdWRlIGdyYWRpZW50LXRleHQoKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUE9TSVRJT05JTkcgVVRJTElUWSBDTEFTU0VTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBCYWNrIGJ1dHRvbiBwb3NpdGlvbiAtIHVzZWQgd2l0aCBwb3NpdGlvbi1hYnNvbHV0ZSAqL1xyXG4uYmFjay1idXR0b24tcG9zaXRpb24ge1xyXG4gICAgbGVmdDogMC43NXJlbTtcclxufVxyXG5cclxuLyogRmxleC1zaHJpbmsgaGVscGVyOiBsZXRzIGEgZmxleCBjaGlsZCBzaHJpbmsgYmVsb3cgaXRzIGludHJpbnNpYyBjb250ZW50XHJcbiAgIHdpZHRoIHNvIHNpYmxpbmdzIGxpa2UgdGV4dC10cnVuY2F0ZSAvIG92ZXJmbG93LWhpZGRlbiBhY3R1YWxseSBlbmdhZ2UuXHJcbiAgIEJvb3RzdHJhcCA1LjMgc2hpcHMgb3ZlcmZsb3cgLyBtaW4tdncgdXRpbGl0aWVzIGJ1dCBubyBgbWluLXctMGAsIGV2ZW5cclxuICAgdGhvdWdoIGl0J3MgdGhlIGNhbm9uaWNhbCBmaXggZm9yIHRoZSBcInRleHQtdHJ1bmNhdGUgaW4gZmxleCBkb2Vzbid0XHJcbiAgIHRydW5jYXRlXCIgdHJhcCDigJQgc28gd2UgYWRkIGl0IGhlcmUuICovXHJcbi5taW4tdy0wIHtcclxuICAgIG1pbi13aWR0aDogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSRVNQT05TSVZFIFVUSUxJVFkgQ0xBU1NFU1xyXG4gICBFeHRlbmQgQm9vdHN0cmFwJ3MgcmVzcG9uc2l2ZSB1dGlsaXRpZXMgZm9yIG1pc3NpbmcgYnJlYWtwb2ludCB2YXJpYW50c1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogV2lkdGggYXV0byBhdCBtZWRpdW0gYnJlYWtwb2ludCBhbmQgYWJvdmUgKi9cclxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAudy1tZC1hdXRvIHtcclxuICAgICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBGaXhlZC1zaXplIHNxdWFyZSBidXR0b24gdXRpbGl0eSAqL1xyXG4uYnRuLWljb24tc3F1YXJlIHtcclxuICAgIHdpZHRoOiAyLjVyZW07XHJcbiAgICBoZWlnaHQ6IDIuNXJlbTtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTSEFSRUQgQlVUVE9OIFNUWUxFU1xyXG4gICBSZXVzYWJsZSBidXR0b24gY2xhc3NlcyB1c2VkIGFjcm9zcyBtdWx0aXBsZSBwYWdlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogR3JhZGllbnQgYWRkIGJ1dHRvbiAtIHVzZWQgYnkgU3RhcnQgcGFnZSdzIFwiTGVzcGFnaW5hXCIgYnV0dG9uICovXHJcbi5saWJyYXJ5LWFkZC1idG4ge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBib3gtc2hhZG93OiAwIDNweCA4cHggdmFyKC0tZ2xvdy1icmFuZC1tZCk7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cclxuICAgIGkge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgfVxyXG5cclxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggdmFyKC0tZ2xvdy1icmFuZC1sZyk7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAycHggNnB4IHZhcigtLWdsb3ctYnJhbmQtbWQpO1xyXG4gICAgfVxyXG5cclxuICAgIEBpbmNsdWRlIGZvY3VzLXJpbmcoMnB4LCB2YXIoLS1mb2N1cy1yaW5nKSwgMnB4KTtcclxuXHJcbiAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjY7XHJcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVEVUNFRCBNT1RJT04gLSBBY2Nlc3NpYmlsaXR5IChXQ0FHIDIuMSBTQyAyLjMuMylcclxuICAgUmVzcGVjdHMgdGhlIE9TLWxldmVsIHByZWZlcnMtcmVkdWNlZC1tb3Rpb24gcHJlZmVyZW5jZS5cclxuICAgQ292ZXJzIGFsbCB0cmFuc2l0aW9ucyBhbmQgYW5pbWF0aW9ucyBwcm9qZWN0LXdpZGUsIGluY2x1ZGluZyBmdXR1cmUgYWRkaXRpb25zLlxyXG5cclxuICAgLSB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIChpbnN0YW50LCBidXQgc3RpbGwgZmlyZXMgdHJhbnNpdGlvbmVuZCBldmVudHMpXHJcbiAgIC0gYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgICAoanVtcHMgdG8gZmluYWwga2V5ZnJhbWUsIHByZXNlcnZlcyBlbmQtc3RhdGUpXHJcbiAgIC0gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAoc3RvcHMgaW5maW5pdGUgbG9vcHM6IHNoaW1tZXIsIHB1bHNlLCBib3VuY2UpXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xyXG4gICAgKixcclxuICAgICo6OmJlZm9yZSxcclxuICAgICo6OmFmdGVyIHtcclxuICAgICAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xyXG4gICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcclxuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcclxuICAgICAgICBzY3JvbGwtYmVoYXZpb3I6IGF1dG8gIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTUFJTiBMQVlPVVQgLSBQYWdlIHN0cnVjdHVyZSBhbmQgQmxhem9yIGVycm9yIFVJXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucGFnZSB7XHJcblx0bWluLWhlaWdodDogMTAwZHZoO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNyZWFtKTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogQWJvdmUgb3dsIGJhY2tncm91bmQgKHotaW5kZXg6IDApICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjsgICAgICAgICAgICAgICAgICAgIC8qIFZlcnRpY2FsIHNjcm9sbCBoYW5kbGVkIGJ5IGJvZHkg4oCUIHNpbmdsZSBzY3JvbGxiYXIgKi9cclxufVxyXG5cclxuLyogTWFrZSBwYWdlIGJhY2tncm91bmQgdHJhbnNwYXJlbnQgd2hlbiBvd2wgYmFja2dyb3VuZCBpcyBwcmVzZW50IChzdHVkZW50cykgKi9cclxuLmdyb3VwLXNlbGVjdC1wYWdlLXdyYXBwZXIgfiAucGFnZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8qIFN0YW5kYXJkIGxheW91dCBiYWNrZ3JvdW5kIC0gdXNlZCBmb3IgQWNjb3VudCBwYWdlcyAqL1xyXG4uc3RhbmRhcmQtbGF5b3V0LWJnIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jcmVhbSk7XHJcbn1cclxuXHJcbi8qIE1ha2Ugc3RhbmRhcmQgbGF5b3V0IGJhY2tncm91bmQgdHJhbnNwYXJlbnQgd2hlbiBvd2wgYmFja2dyb3VuZCBpcyBwcmVzZW50ICovXHJcbi5ncm91cC1zZWxlY3QtcGFnZS13cmFwcGVyIH4gLnN0YW5kYXJkLWxheW91dC1iZyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8qIEdhcCBiZXR3ZWVuIHNpZGViYXIgYW5kIG1haW4gY29udGVudCAtIHVzZXMgQ1NTIHZhcmlhYmxlIGZyb20gR2VuZXJhbC5zY3NzICovXHJcbi5sYXlvdXQtZ2FwIHtcclxuXHRnYXA6IHZhcigtLXNpZGViYXItY29udGVudC1nYXApO1xyXG59XHJcblxyXG4vKiBQYWdlIGNvbnRhaW5lciBncm93cyB3aXRoIGNvbnRlbnQ7IHRoZSB3aGl0ZSBjb250ZW50IHN1cmZhY2UgaXMgYW5jaG9yZWRcclxuICAgdG8gdmlld3BvcnQtYm90dG9tIHZpYSBtaW4taGVpZ2h0IG9uIC5yYXRoby1jYXJkIC8gLnJhdGhvLXRhYi1jb250ZW50LiAqL1xyXG4ucGFnZSA+IC5wYWdlLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMCAwIGF1dG87XHJcbn1cclxuXHJcbi8qIERlc2t0b3AgKHhsKywg4omlMTIwMHB4KTogc2lkZWJhciBzdGlja3MgaW4gcGxhY2Ugd2hpbGUgY29udGVudCBzY3JvbGxzXHJcbiAgIHdpdGhpbiAucGFnZS4gQmVsb3cgeGwgdGhlIHNpZGViYXIgaXMgb2ZmY2FudmFzLCBub3QgaW4gZmxvdy4gKi9cclxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG5cdC5sYXlvdXQtZ2FwID4gLnNpZGUtd2lkdGgge1xyXG5cdFx0cG9zaXRpb246IHN0aWNreTtcclxuXHRcdHRvcDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIDFyZW0pO1xyXG5cdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDsgICAgICAgICAgICAvKiBEb24ndCBzdHJldGNoIHRvIGNvbnRlbnQgaGVpZ2h0ICovXHJcblx0fVxyXG59XHJcblxyXG4udGFiLW1haW4ge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxuXHRtaW4td2lkdGg6IDA7ICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBQcmV2ZW50IGZsZXggaXRlbSBvdmVyZmxvdyAqL1xyXG5cdHBhZGRpbmctYm90dG9tOiAwLjc1cmVtOyAgICAgICAgICAgICAgIC8qIE1hdGNoIHNpZGViYXIgbmF2LWJ0biBtYXJnaW4tYm90dG9tIGZvciBib3R0b20gYWxpZ25tZW50ICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuXHQ+IC5yYXRoby1jYXJkIHtcclxuXHRcdG1pbi1oZWlnaHQ6IHZhcigtLWNvbnRlbnQtc3VyZmFjZS1oZWlnaHQpO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRcdG1hcmdpbi10b3A6IDMuNXJlbTtcclxuXHR9XHJcblxyXG5cdC5yYXRoby10YWItdmlldyB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcblx0XHQubmF2LWxpbmsuYWN0aXZlIHtcclxuXHRcdFx0Ym94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHZhcigtLXNoYWRvdy14cyk7XHJcblx0XHR9XHJcblxyXG5cdFx0LyogRmxvb3IgYmVsb3cgeGwg4oCUIGRlc2t0b3AgdXNlcyBmbGV4LWdyb3cgdG8gbWF0Y2ggc2lkZWJhciBib3R0b20uICovXHJcblx0XHQucmF0aG8tdGFiLWNvbnRlbnQge1xyXG5cdFx0XHRtaW4taGVpZ2h0OiA5LjM3NXJlbTtcclxuXHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7XHJcblx0XHRcdGJveC1zaGFkb3c6IDAgMC4xMjVyZW0gMC4yNXJlbSB2YXIoLS1zaGFkb3cteHMpO1xyXG5cclxuXHRcdFx0Jjo6YmVmb3JlIHtcclxuXHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcblx0LnRhYi1tYWluIHtcclxuXHRcdD4gLnJhdGhvLWNhcmQge1xyXG5cdFx0XHRtaW4taGVpZ2h0OiAwO1xyXG5cdFx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHR9XHJcblxyXG5cdFx0LnJhdGhvLXRhYi12aWV3IHtcclxuXHRcdFx0ZmxleC1ncm93OiAxO1xyXG5cclxuXHRcdFx0LnJhdGhvLXRhYi1jb250ZW50IHtcclxuXHRcdFx0XHRtaW4taGVpZ2h0OiAwO1xyXG5cdFx0XHRcdGZsZXgtZ3JvdzogMTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTU9CSUxFIFNJREVCQVIgT0ZGQ0FOVkFTIC0gTmF2aWdhdGlvbiBkcmF3ZXIgZm9yIG1vYmlsZSBkZXZpY2VzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ubW9iaWxlLXNpZGViYXItb2ZmY2FudmFzIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jcmVhbSk7XHJcblx0d2lkdGg6IHZhcigtLXNpZGViYXItd2lkdGgpO1xyXG5cdG1heC13aWR0aDogODV2dzsgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIERvbid0IGV4Y2VlZCA4NSUgb2Ygdmlld3BvcnQgb24gc21hbGwgc2NyZWVucyAqL1xyXG5cdHotaW5kZXg6IHZhcigtLXotb2ZmY2FudmFzKTtcclxuXHJcblx0Lm9mZmNhbnZhcy1oZWFkZXIge1xyXG5cdFx0cGFkZGluZzogMXJlbTtcclxuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7ICAgICAgICAgICAgLyogQ2xvc2UgYnV0dG9uIG9uIHRoZSByaWdodCAqL1xyXG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zb2Z0KTtcclxuXHR9XHJcblxyXG5cdC5vZmZjYW52YXMtYm9keSB7XHJcblx0XHQvKiBBbGxvdyBzaWRlYmFyIGNvbnRlbnQgdG8gc2Nyb2xsIGlmIG5lZWRlZCAqL1xyXG5cdFx0b3ZlcmZsb3cteTogYXV0bztcclxuXHR9XHJcblxyXG5cdC8qIEVuc3VyZSBzaWRlYmFyIG5hdiBidXR0b25zIGZpbGwgdGhlIGRyYXdlciAqL1xyXG5cdC5wb3J0YWwtc2lkZWJhciB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcblxyXG5cdC8qIEF2YXRhciBzaXplIGRlZmVycyB0byBQcm9maWxlQ2FyZC5zY3NzIHJlc3BvbnNpdmUgcnVsZXMgKi9cclxufVxyXG5cclxuLyogQmxhem9yIGVycm9yIG5vdGlmaWNhdGlvbiAqL1xyXG4jYmxhem9yLWVycm9yLXVpIHtcclxuXHRjb2xvci1zY2hlbWU6IGxpZ2h0IG9ubHk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmctZXJyb3ItbGlnaHQpO1xyXG5cdGJvdHRvbTogMDtcclxuXHRib3gtc2hhZG93OiAwIC0xcHggMnB4IHZhcigtLXNoYWRvdy0yeGwpO1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0bGVmdDogMDtcclxuXHRwYWRkaW5nOiAwLjZyZW0gMS4yNXJlbSAwLjdyZW0gMS4yNXJlbTtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ei1pbmRleDogMTAwMDtcclxuXHRcclxuXHQuZGlzbWlzcyB7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRyaWdodDogMC43NXJlbTtcclxuXHRcdHRvcDogMC41cmVtO1xyXG5cdH1cclxuXHRcclxuXHQucmVsb2FkIHtcclxuXHRcdGNvbG9yOiBpbmhlcml0O1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0fVxyXG59XHJcbiIsIkB1c2UgXCJ0eXBvZ3JhcGh5LXRva2Vuc1wiIGFzICo7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBQT1JUQUwgSEVBREVSIC0gVG9wIG5hdmlnYXRpb24gYmFyIHdpdGggU1ZHIGdyYWRpZW50IGJhY2tncm91bmRcclxuXHJcbiAgIE5PVEU6IExvZ28gc3R5bGluZyBpcyBub3cgaW4gUmF0aG8uVUkuRW1iZXIgKHJhdGhvbG9nby5zY3NzKS5cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIEhlYWRlciBjb250YWluZXIgd2l0aCBTVkcgYmFja2dyb3VuZCAqL1xyXG4ucG9ydGFsLWhlYWRlciB7XHJcblx0aGVpZ2h0OiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcclxuXHRvdmVyZmxvdzogdmlzaWJsZTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogdmFyKC0tei1oZWFkZXIpO1xyXG59XHJcblxyXG4vKiBNb2JpbGUgc2lkZWJhciB0b2dnbGUgYnV0dG9uICovXHJcbi5tb2JpbGUtc2lkZWJhci10b2dnbGUge1xyXG5cdHdpZHRoOiAyLjVyZW07XHJcblx0aGVpZ2h0OiAyLjVyZW07XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiAxcmVtO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDZweCB2YXIoLS1zaGFkb3ctbGcpO1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRib3gtc2hhZG93OiAwIDRweCAxMHB4IHZhcigtLXNoYWRvdy14bCk7XHJcblx0fVxyXG5cclxuXHRpIHtcclxuXHRcdGZvbnQtc2l6ZTogJGZzLWxnO1xyXG5cdFx0Y29sb3I6IHZhcigtLWdyYWRpZW50LWVuZCk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTVkcgaGVhZGVyIGJhY2tncm91bmQgLSBzcGFucyBmdWxsIHdpZHRoIHdpdGggY3VydmVkIGJvdHRvbSBlZGdlICovXHJcbi5wb3J0YWwtaGVhZGVyLXN2ZyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBDb250ZW50IG92ZXJsYXkgLSBwb3NpdGlvbmVkIGFib3ZlIHRoZSBTVkcgYmFja2dyb3VuZCAqL1xyXG4ucG9ydGFsLWhlYWRlci1jb250ZW50IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ei1pbmRleDogMjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cGFkZGluZy1ib3R0b206IDFyZW07ICAgICAgICAgICAgICAgLyogUHVzaCBjb250ZW50IHVwIGZyb20gY3VydmVkIGJvdHRvbSBlZGdlICovXHJcblxyXG5cdC8qIExlZnQgc2lkZSBlbGVtZW50cyAtIHRpbHQgdG8gZm9sbG93IGN1cnZlICovXHJcblx0PiBkaXY6Zmlyc3QtY2hpbGQge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoLjNkZWcpO1xyXG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcclxuXHR9XHJcblxyXG5cdC8qIFJpZ2h0IHNpZGUgZWxlbWVudHMgLSB0aWx0IG9wcG9zaXRlIGRpcmVjdGlvbiB0byBmb2xsb3cgY3VydmUgKi9cclxuXHQ+IGRpdjpsYXN0LWNoaWxkIHtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKC0uM2RlZyk7XHJcblx0XHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG5cdH1cclxufVxyXG5cclxuLyogTW9iaWxlIGNlbnRlcmVkIGxvZ28gLSBhYnNvbHV0ZWx5IGNlbnRlcmVkIGJldHdlZW4gbGVmdC9yaWdodCBidXR0b24gZ3JvdXBzICovXHJcbi5wb3J0YWwtaGVhZGVyLWxvZ28tY2VudGVyIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogNTAlO1xyXG5cdHRvcDogNTAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG5cdHBhZGRpbmctYm90dG9tOiAxcmVtOyAvKiBNYXRjaCBoZWFkZXIgY29udGVudCBwYWRkaW5nLWJvdHRvbSAqL1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSRVNQT05TSVZFIEFESlVTVE1FTlRTXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBFeHRyYSBzbWFsbCBkZXZpY2VzIChwb3J0cmFpdCBwaG9uZXMsIDwgNTc2cHgpICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG5cdC5tb2JpbGUtc2lkZWJhci10b2dnbGUge1xyXG5cdFx0d2lkdGg6IDIuMjVyZW07XHJcblx0XHRoZWlnaHQ6IDIuMjVyZW07XHJcblx0XHRib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG5cclxuXHRcdGkge1xyXG5cdFx0XHRmb250LXNpemU6ICRmcy1tZDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8qIEdhcCByZWR1Y3Rpb24gaGFuZGxlZCB2aWEgcmVzcG9uc2l2ZSBCb290c3RyYXAgY2xhc3NlcyAoZ2FwLTIgZ2FwLXNtLTMpIGluIHJhem9yICovXHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUE9SVEFMIFNJREVCQVIgLSBTaWRlIG5hdmlnYXRpb24gd2l0aCByZXNwb25zaXZlIGJlaGF2aW9yXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucG9ydGFsLXNpZGViYXIge1xyXG4gICAgd2lkdGg6IHZhcigtLXNpZGViYXItd2lkdGgpO1xyXG5cclxuICAgIC8qIEZ1bGwgd2lkdGggd2hlbiByZW5kZXJlZCBpbnNpZGUgdGhlIG9mZmNhbnZhcyAobW9iaWxlL3RhYmxldC9zbWFsbC1kZXNrdG9wIDwgeGwpICovXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBOYXZpZ2F0aW9uIHNlY3Rpb24gc3BhY2luZyAqL1xyXG4gICAgLnJhdGhvLXNpZGViYXItbmF2LWJ0bjpmaXJzdC1vZi10eXBlIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwLjVyZW07ICAgICAgICAgICAgICAgLyogU3BhY2UgYWZ0ZXIgcHJvZmlsZSBjYXJkICovXHJcbiAgICB9XHJcblxyXG4gICAgLyogRW5zdXJlIGNvbnNpc3RlbnQgc3BhY2luZyBmb3IgZ3JvdXAgbGlicmFyaWVzICovXHJcbiAgICAuZ3JvdXAtbGlicmFyaWVzIHtcclxuICAgICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtOyAgICAgICAgICAgICAgLyogUmVkdWNlZCBzcGFjaW5nICovXHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgSEVBREVSIERST1BET1dOIC0gQmFzZSBkcm9wZG93biBtZW51IHN0eWxpbmcgZm9yIGhlYWRlciBjb21wb25lbnRzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uaGVhZGVyLWRyb3Bkb3duLFxyXG4uaGVhZGVyLWRyb3Bkb3duLWJ0biB7XHJcbiAgICAtLWRyb3Bkb3duLWJ0bi1zaXplOiAyLjVyZW07XHJcbiAgICAtLWRyb3Bkb3duLXJhZGl1czogMXJlbTtcclxuICAgIC0tZHJvcGRvd24tdHJhbnNpdGlvbjogMC4xOHMgZWFzZTtcclxufVxyXG5cclxuLmhlYWRlci1kcm9wZG93biB7XHJcbiAgICAtLWRyb3Bkb3duLW1pbi13aWR0aDogMjgwcHg7XHJcblxyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgei1pbmRleDogdmFyKC0tei1kcm9wZG93bi1tZW51KTtcclxufVxyXG5cclxuLmhlYWRlci1kcm9wZG93bi1idG4ge1xyXG4gICAgd2lkdGg6IHZhcigtLWRyb3Bkb3duLWJ0bi1zaXplKTtcclxuICAgIGhlaWdodDogdmFyKC0tZHJvcGRvd24tYnRuLXNpemUpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpO1xyXG4gICAgYm9yZGVyOiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZHJvcGRvd24tcmFkaXVzKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCB2YXIoLS1zaGFkb3ctbGcpO1xyXG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMTVzIGVhc2U7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IHZhcigtLXNoYWRvdy14bCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgb3V0bGluZTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1mb2N1cy1yaW5nLWJyYW5kKTtcclxuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmFkaWVudC1lbmQpO1xyXG4gICAgfVxyXG59XHJcblxyXG4uaGVhZGVyLWRyb3Bkb3duLW1lbnUge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgdG9wOiBjYWxjKDEwMCUgKyAwLjI1cmVtKTtcclxuICAgIG1pbi13aWR0aDogdmFyKC0tZHJvcGRvd24tbWluLXdpZHRoKTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWRyb3Bkb3duLXJhZGl1cyk7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggNDVweCB2YXIoLS1zaGFkb3cteGwpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNpZGUpO1xyXG4gICAgcGFkZGluZzogMXJlbTtcclxuICAgIHotaW5kZXg6IHZhcigtLXotZHJvcGRvd24tbWVudSk7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkyKTtcclxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgdmFyKC0tZHJvcGRvd24tdHJhbnNpdGlvbiksIHRyYW5zZm9ybSB2YXIoLS1kcm9wZG93bi10cmFuc2l0aW9uKTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEdyb3VwIHNlcGFyYXRvciBiZXR3ZWVuIGxvZ2ljYWwgaXRlbSBncm91cHMgKGUuZy4gbmV3cyAvIGFwcCAvIHByZWZzIC8gc2Vzc2lvbikgKi9cclxuICAgIGhyLFxyXG4gICAgLmRyb3Bkb3duLWRpdmlkZXIge1xyXG4gICAgICAgIGhlaWdodDogMDtcclxuICAgICAgICBtYXJnaW46IDAuNXJlbSAwO1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNpZGUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSRVNQT05TSVZFIEFESlVTVE1FTlRTIC0gQm9vdHN0cmFwIGJyZWFrcG9pbnRzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBTbWFsbCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA8IDc2OHB4KSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgIC5oZWFkZXItZHJvcGRvd24ge1xyXG4gICAgICAgIC0tZHJvcGRvd24tbWluLXdpZHRoOiAyNjBweDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEV4dHJhIHNtYWxsIGRldmljZXMgKHBvcnRyYWl0IHBob25lcywgPCA1NzZweCkgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAuaGVhZGVyLWRyb3Bkb3duLFxyXG4gICAgLmhlYWRlci1kcm9wZG93bi1idG4ge1xyXG4gICAgICAgIC0tZHJvcGRvd24tYnRuLXNpemU6IDIuMjVyZW07XHJcbiAgICAgICAgLS1kcm9wZG93bi1yYWRpdXM6IDAuNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlci1kcm9wZG93biB7XHJcbiAgICAgICAgLS1kcm9wZG93bi1taW4td2lkdGg6IG1pbigyNDBweCwgY2FsYygxMDB2dyAtIDJyZW0pKTtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWRyb3Bkb3duLWJ0biBpIHtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1tZDtcclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNjI1cmVtO1xyXG4gICAgfVxyXG59XHJcbiIsIkB1c2UgXCJ0eXBvZ3JhcGh5LXRva2Vuc1wiIGFzICo7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBEUk9QRE9XTiBNRU5VIElURU0gLSBTdHlsZWQgbWVudSBpdGVtIGZvciBoZWFkZXIgZHJvcGRvd25zXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZHJvcGRvd24tbWVudS1pdGVtIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAwLjc1cmVtO1xyXG4gICAgcGFkZGluZzogMC42NXJlbSAwLjZyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XHJcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1wYW5lbC1jcmVhbSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XHJcbiAgICB9XHJcblxyXG4gICAgaSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICAgICAgd2lkdGg6IDEuMjVyZW07XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uZHJvcGRvd24tbWVudS1pdGVtLWRpc2FibGVkIHtcclxuICAgIG9wYWNpdHk6IDAuNTtcclxuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgaTpsYXN0LWNoaWxkIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFJFU1BPTlNJVkUgQURKVVNUTUVOVFMgLSBJbXByb3ZlIHRvdWNoIHRhcmdldHMgb24gbW9iaWxlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMC42MjVyZW07XHJcbiAgICAgICAgbWluLWhlaWdodDogNDRweDsgLyogV0NBRyBtaW5pbXVtIHRvdWNoIHRhcmdldCAqL1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICB9XHJcbn1cclxuXHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEhFQURFUiBTRVRUSU5HUyBEUk9QRE9XTiAtIFNldHRpbmdzIG1lbnUgcG9zaXRpb25pbmdcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5oZWFkZXItc2V0dGluZ3MtZHJvcGRvd24gLmhlYWRlci1kcm9wZG93bi1tZW51IHtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIHJpZ2h0O1xyXG59XHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgSEVBREVSIEFQUCBEUkFXRVIgLSBBcHAgc2hvcnRjdXRzIGdyaWQgZHJvcGRvd25cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5oZWFkZXItYXBwLWRyYXdlciB7XHJcbiAgICAtLWRyb3Bkb3duLW1pbi13aWR0aDogMzIwcHg7XHJcblxyXG4gICAgLmhlYWRlci1kcm9wZG93bi1tZW51IHtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEN1c3RvbSA5LWRvdCBncmlkIGljb24gKGlubGluZSBTVkcpICovXHJcbi5oZWFkZXItYXBwLWRyYXdlci1idG4ge1xyXG4gICAgLmN1c3RvbS1ncmlkLWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgIGhlaWdodDogMThweDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tZ3JhZGllbnQtZW5kKTtcclxuICAgIH1cclxufVxyXG5cclxuLmhlYWRlci1hcHAtZHJhd2VyLWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XHJcbiAgICBnYXA6IDAuMTI1cmVtO1xyXG59XHJcblxyXG4uaGVhZGVyLWFwcC1kcmF3ZXItaXRlbSB7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC4yNXJlbSAwLjRyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1wYW5lbC1jcmVhbSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtcHJpbWFyeSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEJ1bXBlZCB0byA1NnB4IHRvIGNvbXBlbnNhdGUgZm9yIH4yNSUgdHJhbnNwYXJlbnQgcGFkZGluZyBpbnNpZGUgTWljcm9zb2Z0J3MgNjR4NjQgYXBwIGljb25zICovXHJcbi5oZWFkZXItYXBwLWRyYXdlci1pY29uIHtcclxuICAgIHdpZHRoOiA1NnB4O1xyXG4gICAgaGVpZ2h0OiA1NnB4O1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICB9XHJcblxyXG4gICAgaSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtMnhsO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIH1cclxufVxyXG5cclxuLmhlYWRlci1hcHAtZHJhd2VyLW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVTUE9OU0lWRSBBREpVU1RNRU5UU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogTW9iaWxlOiBlbnN1cmUgZHJvcGRvd24gZG9lc24ndCBvdmVyZmxvdyB2aWV3cG9ydCAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgIC5oZWFkZXItYXBwLWRyYXdlciB7XHJcbiAgICAgICAgLS1kcm9wZG93bi1taW4td2lkdGg6IG1pbigyODBweCwgY2FsYygxMDB2dyAtIDJyZW0pKTtcclxuXHJcbiAgICAgICAgLmhlYWRlci1kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgbGVmdDogLTAuNXJlbTtcclxuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuaGVhZGVyLWFwcC1kcmF3ZXItaXRlbSB7XHJcbiAgICAgICAgcGFkZGluZzogMC4zNzVyZW0gMC4xMjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmhlYWRlci1hcHAtZHJhd2VyLWljb24ge1xyXG4gICAgICAgIHdpZHRoOiA0NHB4O1xyXG4gICAgICAgIGhlaWdodDogNDRweDtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLXhsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuIiwiQHVzZSBcInR5cG9ncmFwaHktdG9rZW5zXCIgYXMgKjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFBST0ZJTEUgQ0FSRCAtIFNpZGViYXIgdXNlciBwcm9maWxlXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICBTdHVkZW50IFByb2ZpbGUgLSBDZW50ZXJlZCBhdmF0YXIgd2l0aCBzdGFja2VkIG5hbWVcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zdHVkZW50LXByb2ZpbGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxcmVtIDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnN0dWRlbnQtcHJvZmlsZS1hdmF0YXIge1xyXG5cdC8qIFJlc3BvbnNpdmUgYXZhdGFyIC0gdGFrZXMgbW9zdCBvZiBzaWRlYmFyIHdpZHRoICovXHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHdpZHRoOiBtaW4oODUlLCAyMjBweCk7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdGFzcGVjdC1yYXRpbzogMTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDEycHggdmFyKC0tc2hhZG93LXNtKTtcclxuXHJcblx0aW1nIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XHJcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR9XHJcblxyXG5cdC5zdHVkZW50LXByb2ZpbGUtYXZhdGFyLW92ZXJsYXkge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0aW5zZXQ6IDZweDtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLW92ZXJsYXktZGFyayk7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblxyXG5cdFx0aSB7XHJcblx0XHRcdGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuXHRcdFx0Zm9udC1zaXplOiAkZnMtbGc7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQvKiBJbnRlcmFjdGl2ZSBhZmZvcmRhbmNlcyBvbmx5IHdoZW4gdGhlIHVzZXIgbWF5IGNoYW5nZSB0aGUgcGljdHVyZSAqL1xyXG5cdCYuaXMtZWRpdGFibGUge1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIgLnN0dWRlbnQtcHJvZmlsZS1hdmF0YXItb3ZlcmxheSxcclxuXHRcdCY6Zm9jdXMgLnN0dWRlbnQtcHJvZmlsZS1hdmF0YXItb3ZlcmxheSB7XHJcblx0XHRcdG9wYWNpdHk6IDE7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4uc3R1ZGVudC1wcm9maWxlLW5hbWUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC4xMjVyZW07XHJcblxyXG5cdC5zdHVkZW50LWZpcnN0bmFtZSB7XHJcblx0XHRmb250LXNpemU6ICRmcy1sZztcclxuXHRcdGZvbnQtd2VpZ2h0OiAkZnctYm9sZDtcclxuXHRcdGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgICAgICAgICAgIC8qIERhcmtlciBvcmFuZ2UtcmVkIG1hdGNoaW5nIGhlYWRlciBncmFkaWVudCAqL1xyXG5cdFx0bGluZS1oZWlnaHQ6ICRsaC10aWdodDtcclxuXHR9XHJcblxyXG5cdC5zdHVkZW50LWxhc3RuYW1lIHtcclxuXHRcdGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcblx0XHRmb250LXdlaWdodDogJGZ3LW1lZGl1bTtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG5cdFx0bGluZS1oZWlnaHQ6ICRsaC10aWdodDtcclxuXHR9XHJcblxyXG5cdC5zdHVkZW50LWVudi1uYW1lIHtcclxuXHRcdGZvbnQtc2l6ZTogJGZzLXNtO1xyXG5cdFx0Zm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xyXG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdFx0bGluZS1oZWlnaHQ6ICRsaC10aWdodDtcclxuXHRcdG1hcmdpbi10b3A6IDAuMjVyZW07XHJcblx0fVxyXG5cclxuXHQuc3R1ZGVudC1ncm91cG5hbWUge1xyXG5cdFx0Zm9udC1zaXplOiAkZnMtYmFzZTtcclxuXHRcdGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRcdGxpbmUtaGVpZ2h0OiAkbGgtdGlnaHQ7XHJcblx0XHRtYXJnaW4tdG9wOiAwLjI1cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgVGVhY2hlci9BZG1pbiBQcm9maWxlIENhcmRcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5wcm9maWxlLWNhcmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcclxuXHRib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG5cdGJveC1zaGFkb3c6IDAgMXB4IDJweCB2YXIoLS1zaGFkb3ctc20pO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTsgICAgICAgICAgICAgICAgICAvKiBSZWR1Y2VkIHNwYWNpbmcgKi9cclxufVxyXG5cclxuLnByb2ZpbGUtY2FyZC1oZWFkZXIge1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG59XHJcblxyXG4ucHJvZmlsZS1hdmF0YXIge1xyXG5cdHdpZHRoOiAzLjI1cmVtO1xyXG5cdGhlaWdodDogMy4yNXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcblx0aW1nIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0aGVpZ2h0OiAxMDAlO1xyXG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XHJcblx0fVxyXG5cclxuXHQucHJvZmlsZS1hdmF0YXItb3ZlcmxheSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0cmlnaHQ6IDA7XHJcblx0XHRib3R0b206IDA7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1vdmVybGF5LWRhcmspO1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxuXHJcblx0XHRpIHtcclxuXHRcdFx0Y29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG5cdFx0XHRmb250LXNpemU6ICRmcy1zbTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC8qIEludGVyYWN0aXZlIGFmZm9yZGFuY2VzIG9ubHkgd2hlbiB0aGUgdXNlciBtYXkgY2hhbmdlIHRoZSBwaWN0dXJlICovXHJcblx0Ji5pcy1lZGl0YWJsZSB7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblxyXG5cdFx0Jjpob3ZlciAucHJvZmlsZS1hdmF0YXItb3ZlcmxheSxcclxuXHRcdCY6Zm9jdXMgLnByb2ZpbGUtYXZhdGFyLW92ZXJsYXkge1xyXG5cdFx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnByb2ZpbGUtaW5mbyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4ucHJvZmlsZS1uYW1lIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcblx0Zm9udC1zaXplOiAkZnMtYmFzZTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5wcm9maWxlLWVudi1sb2dvIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHR3aWR0aDogYXV0bztcclxuXHRoZWlnaHQ6IDQuNXJlbTtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luOiAwIGF1dG8gMC41cmVtO1xyXG5cdG9iamVjdC1maXQ6IGNvbnRhaW47XHJcblx0b2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5wcm9maWxlLWVudi1yb3cge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRwYWRkaW5nLXRvcDogMC42MjVyZW07XHJcblx0bWFyZ2luLXRvcDogMC4yNXJlbTtcclxuXHJcblx0Jjo6YmVmb3JlIHtcclxuXHRcdGNvbnRlbnQ6IFwiXCI7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDA7XHJcblx0XHRsZWZ0OiA1MCU7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0XHR3aWR0aDogMi41cmVtO1xyXG5cdFx0aGVpZ2h0OiAxcHg7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ncmF5LW1lZGl1bSk7XHJcblx0fVxyXG59XHJcblxyXG4ucHJvZmlsZS1lbnYtbmFtZSB7XHJcblx0ZmxleDogMCAxIGF1dG87XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdGZvbnQtc2l6ZTogJGZzLXNtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnByb2ZpbGUtc3dpdGNoLWJ0biB7XHJcblx0ZmxleDogMCAwIDEuNzVyZW07XHJcblx0d2lkdGg6IDEuNzVyZW07XHJcblx0aGVpZ2h0OiAxLjc1cmVtO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWdyYXktbGlnaHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XHJcblxyXG5cdCY6aG92ZXIge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZ3JheS1tZWRpdW0pO1xyXG5cdH1cclxuXHJcblx0aSB7XHJcblx0XHRmb250LXNpemU6ICRmcy1zbTtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFN1YnN0aXR1dGUtc2hpZnRzIGluZGljYXRvcjogY2xpcGJvYXJkIGljb24gc2hvd24gYmVmb3JlIHRoZSBlbnZpcm9ubWVudFxyXG4gICBuYW1lIHdoZW4gdGhlIHRlYWNoZXIgaGFzIGFzc2lnbmVkIHN1YnN0aXR1dGUgZ3JvdXBzLiBUaGUgQm9vdHN0cmFwIHRvb2x0aXBcclxuICAgcmV2ZWFscyB0aGUgZ3JvdXAgbmFtZXMgb24gaG92ZXIvZm9jdXMuIEJyYW5kLXByaW1hcnkgY29sb3JlZCB0byBtaXJyb3IgdGhlXHJcbiAgIHByZXZpb3VzIHN1YnN0aXR1dGUtc2hpZnQgY2hpcCBzdHlsaW5nLiAqL1xyXG4ucHJvZmlsZS1zdWJzdGl0dXRlLWluZGljYXRvciB7XHJcblx0Y29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSRVNQT05TSVZFIEFESlVTVE1FTlRTIC0gTW9iaWxlIG9mZmNhbnZhcyBzaWRlYmFyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBTbWFsbGVyIHN0dWRlbnQgYXZhdGFyIGluIG1vYmlsZSBvZmZjYW52YXMgdG8gc2F2ZSBzcGFjZSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuXHQuc3R1ZGVudC1wcm9maWxlIHtcclxuXHRcdHBhZGRpbmc6IDAuNzVyZW0gMDtcclxuXHRcdG1hcmdpbi1ib3R0b206IDAuNzVyZW07XHJcblx0fVxyXG5cclxuXHQuc3R1ZGVudC1wcm9maWxlLWF2YXRhciB7XHJcblx0XHR3aWR0aDogbWluKDYwJSwgMTYwcHgpO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdH1cclxuXHJcblx0LnN0dWRlbnQtcHJvZmlsZS1uYW1lIHtcclxuXHRcdC5zdHVkZW50LWZpcnN0bmFtZSB7XHJcblx0XHRcdGZvbnQtc2l6ZTogJGZzLW1kO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5zdHVkZW50LWxhc3RuYW1lLFxyXG5cdFx0LnN0dWRlbnQtZ3JvdXBuYW1lIHtcclxuXHRcdFx0Zm9udC1zaXplOiAkZnMtYmFzZTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdC5wcm9maWxlLWVudi1sb2dvIHtcclxuXHRcdGhlaWdodDogMy41cmVtO1xyXG5cdH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcblx0LnN0dWRlbnQtcHJvZmlsZS1hdmF0YXIge1xyXG5cdFx0d2lkdGg6IG1pbig1MCUsIDE0MHB4KTtcclxuXHR9XHJcblxyXG5cdC5zdHVkZW50LXByb2ZpbGUtbmFtZSB7XHJcblx0XHQuc3R1ZGVudC1maXJzdG5hbWUge1xyXG5cdFx0XHRmb250LXNpemU6ICRmcy1iYXNlO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5zdHVkZW50LWxhc3RuYW1lLFxyXG5cdFx0LnN0dWRlbnQtZ3JvdXBuYW1lIHtcclxuXHRcdFx0Zm9udC1zaXplOiAkZnMtc207XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgR1JPVVAgTElCUkFSSUVTIC0gQ29sbGFwc2libGUgZ3JvdXAgbGlzdFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmdyb3VwLWxpYnJhcmllcyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IHZhcigtLXotZHJvcGRvd24tbWVudSk7XHJcblx0bWFyZ2luLXRvcDogMC4yNXJlbTsgICAgICAgICAgICAgICAgICAgICAgLyogUmVkdWNlZCB0byBncm91cCB2aXN1YWxseSB3aXRoIExpYnJhcnkgYnV0dG9uIGFib3ZlICovXHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuXHJcblx0LyogTWFpbiB0b2dnbGUgaWNvbiAtIGxhcmdlciB0byBtYXRjaCBuYXYgYnV0dG9ucyAqL1xyXG5cdD4gLmdyb3VwLWxpYnJhcmllcy10b2dnbGUgLmdyb3VwLWljb24ge1xyXG5cdFx0Zm9udC1zaXplOiAkZnMteGw7ICAgICAgICAgICAgICAgICAgICAvKiBMYXJnZXIgaWNvbiBpbiB0aGUgZHJvcGRvd24gaGVhZGVyICovXHJcblx0XHR3aWR0aDogMS44NzVyZW07ICAgICAgICAgICAgICAgICAgICAgIC8qIE1hdGNoIG5hdiBidXR0b24gaWNvbiB3aWR0aCAqL1xyXG5cdH1cclxuXHJcblx0Lmdyb3VwLWljb24ge1xyXG5cdFx0Y29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcblx0fVxyXG5cclxufVxyXG5cclxuLmdyb3VwLWxpYnJhcmllcy10b2dnbGUge1xyXG5cdC8qIExheW91dCAod2lkdGgvZGlzcGxheS9hbGlnbi9qdXN0aWZ5KSwgYmFja2dyb3VuZC10cmFuc3BhcmVudCwgYm9yZGVyLTAgYW5kXHJcblx0ICogdGV4dC1zdGFydCBjb21lIGZyb20gQm9vdHN0cmFwIHV0aWxpdGllcyBhcHBsaWVkIGluIHRoZSBtYXJrdXAuIE9ubHkgdGhlXHJcblx0ICogdHJ1bHkgY29tcG9uZW50LXNwZWNpZmljIHN0eWxpbmcgcmVtYWlucyBoZXJlLiAqL1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCwgI2RlZTJlNik7XHJcblx0cGFkZGluZzogMXJlbSAwLjVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdH1cclxuXHJcblx0Jjpmb2N1cyB7XHJcblx0XHRvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZm9jdXMtcmluZy1icmFuZC1hbHQpO1xyXG5cdFx0b3V0bGluZS1vZmZzZXQ6IDJweDtcclxuXHR9XHJcblxyXG5cdD4gc3BhbiB7XHJcblx0XHRnYXA6IDFyZW07ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIEluY3JlYXNlZCBnYXAgdG8gYmV0dGVyIG1hdGNoIG5hdiBidXR0b25zICovXHJcblxyXG5cdFx0JjpmaXJzdC1jaGlsZCBzcGFuIHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XHJcblx0XHRcdGZvbnQtc2l6ZTogJGZzLXNtOyAgICAgICAgICAgICAgICAvKiBmcy1iYXNlIGlzIHRvbyB3aWRlIOKAlCB0aXRsZSBwdXNoZXMgYWdhaW5zdCB0aGUgY291bnRlciAqL1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Lmdyb3VwLWxpYnJhcmllcy1jb3VudCB7XHJcblx0XHRmb250LXNpemU6ICRmcy1zbTtcclxuXHRcdGZvbnQtd2VpZ2h0OiAkZnctbWVkaXVtO1xyXG5cdFx0Y29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuXHR9XHJcblxyXG5cdC8qIENoZXZyb24gaWNvbiB3aXRoIHdoaXRlIGNpcmNsZSBiYWNrZ3JvdW5kICovXHJcblx0Lmdyb3VwLWxpYnJhcmllcy10b2dnbGUtaWNvbiB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdFx0d2lkdGg6IDEuNXJlbTtcclxuXHRcdGhlaWdodDogMS41cmVtO1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUpO1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdFx0Zm9udC1zaXplOiAkZnMtM3hzO1xyXG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcclxuXHR9XHJcblxyXG5cdCZbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIC5ncm91cC1saWJyYXJpZXMtdG9nZ2xlLWljb24ge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxuXHR9XHJcbn1cclxuXHJcbi5ncm91cC1saWJyYXJpZXMtbGlzdCB7XHJcblx0bWFyZ2luLXRvcDogMC43NXJlbTtcclxuXHRwYWRkaW5nOiAwIDAuMjVyZW07XHJcbn1cclxuXHJcbi5ncm91cC1saWJyYXJpZXMtaXRlbSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTQwMCwgI2FkYjViZCk7XHJcblx0Ym9yZGVyLXJhZGl1czogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuNjI1cmVtIDAuODc1cmVtO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuXHRtYXJnaW4tbGVmdDogMC4yNXJlbTtcclxuXHRtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBib3JkZXItY29sb3IgMC4xNXMgZWFzZTtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ob3Zlci1jcmVhbSk7XHJcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWJzLWdyYXktNTAwLCAjNmM3NTdkKTtcclxuXHR9XHJcblxyXG5cdC5ncm91cC1saWJyYXJpZXMtbGluayB7XHJcblx0XHRkaXNwbGF5OiBmbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcblx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHRmb250LXNpemU6ICRmcy1iYXNlO1xyXG5cclxuXHRcdC5ncm91cC1pY29uIHtcclxuXHRcdFx0Y29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcblx0XHRcdGZvbnQtc2l6ZTogJGZzLXNtO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG5cdFx0fVxyXG5cclxuXHRcdCYuYWN0aXZlIHtcclxuXHRcdFx0Y29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG5cdFx0XHRmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0JjpoYXMoLmdyb3VwLWxpYnJhcmllcy1saW5rLmFjdGl2ZSkge1xyXG5cdFx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1ncmFkaWVudC1uYXYtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1uYXYtZW5kKSk7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuXHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0XHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHZhcigtLWdsb3ctYnJhbmQtbGcpO1xyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWdyYWRpZW50LW5hdi1zdGFydCksIHZhcigtLWdyYWRpZW50LW5hdi1lbmQpKTtcclxuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcblx0XHR9XHJcblxyXG5cdFx0Lmdyb3VwLWxpYnJhcmllcy1saW5rLFxyXG5cdFx0Lmdyb3VwLWxpYnJhcmllcy1saW5rOmhvdmVyIHtcclxuXHRcdFx0Y29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5ncm91cC1pY29uIHtcclxuXHRcdFx0Y29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG5cdFx0fVxyXG5cclxuXHRcdGkuZmEtY2hldnJvbi1yaWdodCB7XHJcblx0XHRcdGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdGkuZmEtY2hldnJvbi1yaWdodCB7XHJcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0XHRmb250LXNpemU6ICRmcy14cztcclxuXHR9XHJcbn1cclxuXHJcbi5ncm91cC1saWJyYXJpZXMtdmlldy1hbGwge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtIDAuNXJlbSAwLjc1cmVtO1xyXG5cdGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtZGFyayk7XHJcblx0Zm9udC1zaXplOiAkZnMtc207XHJcblx0Zm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCwgI2RlZTJlNik7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWhvdmVyLWNyZWFtKTtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG5cdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdH1cclxuXHJcblx0Jjpmb2N1cyB7XHJcblx0XHRvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZm9jdXMtcmluZy1icmFuZC1hbHQpO1xyXG5cdFx0b3V0bGluZS1vZmZzZXQ6IDJweDtcclxuXHR9XHJcbn1cclxuIiwiQHVzZSBcInR5cG9ncmFwaHktdG9rZW5zXCIgYXMgKjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFRBQiBTQ1JPTEwgLSBIb3Jpem9udGFsIHNjcm9sbCBhcnJvd3MgZm9yIG92ZXJmbG93aW5nIHRhYiBiYXJzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucmF0aG8tdGFiLXNjcm9sbC1jb250YWluZXIge1xyXG5cdG92ZXJmbG93LXg6IGF1dG87XHJcblx0b3ZlcmZsb3cteTogaGlkZGVuO1xyXG5cdG1pbi13aWR0aDogMDtcclxuXHJcblx0LyogSGlkZSBzY3JvbGxiYXIgYWNyb3NzIGJyb3dzZXJzICovXHJcblx0c2Nyb2xsYmFyLXdpZHRoOiBub25lO1xyXG5cdC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTtcclxuXHQmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxuXHJcblx0PiAubmF2LXRhYnMge1xyXG5cdFx0ZmxleC13cmFwOiBub3dyYXA7XHJcblx0XHR3aWR0aDogbWF4LWNvbnRlbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vKiBEcmFnLXRvLXJlb3JkZXIgdmlzdWFscyDigJQgc2hhcmVkIGJ5IHRhYnMgYW5kIHNpZGViYXIgKGdyb3VwLXJlb3JkZXIuanMpICovXHJcbi5yYXRoby1yZW9yZGVyLWdob3N0IHtcclxuXHRvcGFjaXR5OiAwLjQ7XHJcbn1cclxuXHJcbi5yYXRoby1yZW9yZGVyLWNob3NlbixcclxuLnJhdGhvLXJlb3JkZXItY2hvc2VuIC5uYXYtbGluayxcclxuLnJhdGhvLXJlb3JkZXItY2hvc2VuIC5ncm91cC1saWJyYXJpZXMtbGluayB7XHJcblx0Y3Vyc29yOiBncmFiYmluZztcclxufVxyXG5cclxuLyogU2Nyb2xsIGFycm93IGJ1dHRvbnMgKi9cclxuLnJhdGhvLXRhYi1zY3JvbGwtYnRuIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDEuNzVyZW07XHJcblx0aGVpZ2h0OiAxLjc1cmVtO1xyXG5cdGNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktY29sb3IpO1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdGNvbG9yOiB2YXIoLS1icy1ib2R5LWNvbG9yKTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWhvdmVyLWxpZ2h0KTtcclxuXHR9XHJcblxyXG5cdCY6Zm9jdXMsXHJcblx0Jjpmb2N1cy12aXNpYmxlIHtcclxuXHRcdG91dGxpbmU6IG5vbmU7XHJcblx0XHRib3gtc2hhZG93OiBub25lO1xyXG5cdH1cclxuXHJcblx0aSB7XHJcblx0XHRmb250LXNpemU6ICRmcy14cztcclxuXHR9XHJcbn1cclxuIiwiQHVzZSBcInR5cG9ncmFwaHktdG9rZW5zXCIgYXMgKjtcclxuQHVzZSBcImNvbXBvbmVudHMvX2Jhc2UvdXRpbGl0aWVzXCIgYXMgKjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFVTRVIgVElMRSBDQVJEIC0gVXNlciBjYXJkIGZvciBwaG90byBzZWxlY3Rpb24gbG9naW5cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi51c2VyLXRpbGUtY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcclxuXHJcbiAgICAgICAgLnVzZXItdGlsZS1hdmF0YXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4IHZhcigtLXNoYWRvdy1sZyk7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnVzZXItdGlsZS1uYW1lIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG4gICAgfVxyXG59XHJcblxyXG4udXNlci10aWxlLWF2YXRhciB7XHJcbiAgICBAaW5jbHVkZSByYXRoby1hdmF0YXItZ3JhZGllbnQoMTAwcHgsIDNweCk7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zcyBlYXNlO1xyXG4gICAgYm94LXNoYWRvdzogMCA0cHggMTJweCB2YXIoLS1zaGFkb3ctc20pO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxuICAgIH1cclxufVxyXG5cclxuLnVzZXItdGlsZS1uYW1lIHtcclxuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcbiAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaC10aWdodDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlO1xyXG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVTUE9OU0lWRSBBREpVU1RNRU5UU1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAudXNlci10aWxlLWF2YXRhciB7XHJcbiAgICAgICAgd2lkdGg6IDcwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA3MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC51c2VyLXRpbGUtbmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMC4zNzVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAudXNlci10aWxlLWF2YXRhciB7XHJcbiAgICAgICAgd2lkdGg6IDg1cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA4NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIC51c2VyLXRpbGUtbmFtZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENPTVBBQ1QgVkFSSUFOVCAtIFJlYWQtb25seSB0aWxlIGdyaWRzIGluc2lkZSBmbHlvdXRzIChzZWxlY3Rpb24gc3VtbWFyaWVzKVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnVzZXItdGlsZS1jYXJkLmNvbXBhY3Qge1xyXG4gICAgd2lkdGg6IDRyZW07XHJcblxyXG4gICAgLnVzZXItdGlsZS1hdmF0YXIge1xyXG4gICAgICAgIHdpZHRoOiAzcmVtO1xyXG4gICAgICAgIGhlaWdodDogM3JlbTtcclxuICAgIH1cclxuXHJcbiAgICAudXNlci10aWxlLW5hbWUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLXhzO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIERJU01JU1MgQlVUVE9OIC0gU21hbGwgXCJ4XCIgaW4gdGhlIHRvcC1yaWdodCBjb3JuZXIgb2YgdGhlIGF2YXRhciB0aGF0XHJcbiAgIHJlbW92ZXMgdGhlIHRpbGUgZnJvbSBhIHNlbGVjdGlvbiBzdW1tYXJ5LiBSZW5kZXJlZCBvbmx5IHdoZW4gdGhlIGNhbGxlclxyXG4gICB3aXJlcyBVc2VyVGlsZUNhcmQuT25EaXNtaXNzLlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogTGF5b3V0IChwb3NpdGlvbi1hYnNvbHV0ZSAvIGQtaW5saW5lLWZsZXggLyBhbGlnbi1pdGVtcy1jZW50ZXIgL1xyXG4gKiBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIC8gcm91bmRlZC1jaXJjbGUgLyBib3JkZXIgLyBwLTAgLyBsaC0xKSBjb21lcyBmcm9tXHJcbiAqIEJvb3RzdHJhcCB1dGlsaXR5IGNsYXNzZXMgYXBwbGllZCBpbiB0aGUgbWFya3VwLiBCYWNrZ3JvdW5kLWNvbG9yIGlzIHNldFxyXG4gKiBoZXJlIChub3QgdmlhIEJvb3RzdHJhcCdzIGJnLXdoaXRlKSBzbyB0aGUgOmhvdmVyIHJ1bGUgYmVsb3cgY2FuIG92ZXJyaWRlXHJcbiAqIGl0IOKAlCBiZy13aGl0ZSBjYXJyaWVzICFpbXBvcnRhbnQgYW5kIHdvdWxkIG90aGVyd2lzZSB3aW4sIGxlYXZpbmcgYSB3aGl0ZVxyXG4gKiDDlyBvbiBhIHdoaXRlIGJhY2tncm91bmQuICovXHJcbi51c2VyLXRpbGUtZGlzbWlzcyB7XHJcbiAgICB0b3A6IC0wLjI1cmVtO1xyXG4gICAgcmlnaHQ6IC0wLjI1cmVtO1xyXG4gICAgd2lkdGg6IDEuMjVyZW07XHJcbiAgICBoZWlnaHQ6IDEuMjVyZW07XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBjb2xvcjogdmFyKC0tYnJhbmQtcHJpbWFyeSk7XHJcbiAgICBmb250LXNpemU6IDAuNjI1cmVtO1xyXG4gICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHZhcigtLXNoYWRvdy1zbSk7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIHRyYW5zZm9ybSAwLjE1cyBlYXNlO1xyXG4gICAgei1pbmRleDogMTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYmctd2hpdGUpO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1mb2N1cy1yaW5nLWJyYW5kLWFsdCk7XHJcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcclxuICAgIH1cclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTS0VMRVRPTiBQTEFDRUhPTERFUlNcclxuICAgVW5pZm9ybSBzaGltbWVyIGFuaW1hdGlvbiBhY3Jvc3MgYWxsIHNrZWxldG9uIHR5cGVzLlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQHVzZSBcImNvbXBvbmVudHMvX2Jhc2Uvc2tlbGV0b24tdmFyc1wiIGFzICo7XHJcblxyXG4vKiBTaGFyZWQgc2hpbW1lciBtaXhpbiAqL1xyXG5AbWl4aW4gc2tlbGV0b24tc2hpbW1lciB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRza2VsZXRvbi1iYXNlIDI1JSwgJHNrZWxldG9uLWhpZ2hsaWdodCA1MCUsICRza2VsZXRvbi1iYXNlIDc1JSk7XHJcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcclxuICAgIGFuaW1hdGlvbjogc2tlbGV0b24tc2hpbW1lciAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xyXG59XHJcblxyXG4vKiBSZXVzYWJsZSBzaGltbWVyIGtleWZyYW1lcyAoYWxzbyB1c2VkIGJ5IHJhdGhvZ3JpZHN0YWNrLnNjc3MpICovXHJcbkBrZXlmcmFtZXMgc2tlbGV0b24tc2hpbW1lciB7XHJcbiAgICAwJSAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSAwOyB9XHJcbiAgICAxMDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMCUgMDsgfVxyXG59XHJcblxyXG4uc2tlbGV0b24tYXZhdGFyIHtcclxuICAgIEBpbmNsdWRlIHNrZWxldG9uLXNoaW1tZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB3aWR0aDogdmFyKC0tYXZhdGFyLXNpemUsIDEyMHB4KTtcclxuICAgIGhlaWdodDogdmFyKC0tYXZhdGFyLXNpemUsIDEyMHB4KTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICB3aWR0aDogODBweDtcclxuICAgICAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSBhbmQgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgICAgICB3aWR0aDogMTAwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIH1cclxufVxyXG5cclxuLnNrZWxldG9uLWltYWdlIHtcclxuICAgIEBpbmNsdWRlIHNrZWxldG9uLXNoaW1tZXI7XHJcbiAgICBhc3BlY3QtcmF0aW86IDQgLyAzO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyogU3RhbmRhbG9uZSBzaGltbWVyIGxpbmUg4oCUIHVzYWJsZSBhbnl3aGVyZSAoc2lkZWJhciwgdGFiIHZpZXcsIGV0Yy4pICovXHJcbi5za2VsZXRvbi1saW5lIHtcclxuICAgIEBpbmNsdWRlIHNrZWxldG9uLXNoaW1tZXI7XHJcbiAgICBoZWlnaHQ6IDAuNzVyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xyXG59XHJcblxyXG4uc2tlbGV0b24tdGV4dC1saW5lcyB7XHJcbiAgICBnYXA6IDAuMzVyZW07XHJcbn1cclxuXHJcbi5za2VsZXRvbi10YWcge1xyXG4gICAgQGluY2x1ZGUgc2tlbGV0b24tc2hpbW1lcjtcclxuICAgIGhlaWdodDogMS4yNXJlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XHJcblxyXG4gICAgJi0tbGcgeyB3aWR0aDogM3JlbTsgfVxyXG4gICAgJi0tbWQgeyB3aWR0aDogMi41cmVtOyB9XHJcbiAgICAmLS1zbSB7IHdpZHRoOiAycmVtOyB9XHJcbn1cclxuXHJcbi8qIFdpZGdldCBncmlkIHNrZWxldG9uIOKAlCBtaXJyb3JzIHRoZSBkZW5zaXR5LWRyaXZlbiBjb2x1bW4gY291bnQgb2YgdGhlIHJlYWxcclxuICAgZ3JpZHN0YWNrIHNvIHRoZSBza2VsZXRvbiBoYXMgdGhlIHNhbWUgbnVtYmVyIG9mIHRpbGVzIHBlciByb3cgYXMgdGhlIGxvYWRlZFxyXG4gICBncmlkLiBUaGUgMTMwcHggZmxvb3IgbWF0Y2hlcyBSZXNwb25zaXZlQ29sdW1uc09wdGlvbnMuVGFyZ2V0VGlsZVB4IGluXHJcbiAgIFNob3J0Y3V0SGVscGVyLCBzbyBmbG9vcihjb250YWluZXJXaWR0aCAvIDEzMCkgdGlsZXMgZml0IHBlciByb3cgaW4gYm90aC4gKi9cclxuLnNrZWxldG9uLXdpZGdldC1ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxMzBweCwgMWZyKSk7XHJcbiAgICBnYXA6IDZweDtcclxuICAgIHBhZGRpbmc6IDFyZW0gMDtcclxufVxyXG5cclxuLnNrZWxldG9uLXdpZGdldCB7XHJcbiAgICBAaW5jbHVkZSBza2VsZXRvbi1zaGltbWVyO1xyXG4gICAgYXNwZWN0LXJhdGlvOiAxO1xyXG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYnMtYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi8qIExvZ2luIHRpbGUgc2tlbGV0b24g4oCUIG1hdGNoZXMgLmxvZ2luLXRpbGUgc2hhcGUgb24gU3R1ZGVudCBwYWdlICovXHJcbi5za2VsZXRvbi1sb2dpbi10aWxlIHtcclxuICAgIEBpbmNsdWRlIHNrZWxldG9uLXNoaW1tZXI7XHJcbiAgICBhc3BlY3QtcmF0aW86IDE7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEdyb3VwIHRpbGUgc2tlbGV0b24g4oCUIG1hdGNoZXMgLmdyb3VwLXRpbGUgc2hhcGUgKi9cclxuLnNrZWxldG9uLWdyb3VwLXRpbGUge1xyXG4gICAgQGluY2x1ZGUgc2tlbGV0b24tc2hpbW1lcjtcclxuICAgIGFzcGVjdC1yYXRpbzogMSAvIDE7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIExvYWRpbmcgcGxhY2Vob2xkZXIg4oCUIGFuaW1hdGVkIG93bCBtYXNjb3QgKi9cclxuLnBvcnRhbC1sb2FkaW5nLW93bCB7XHJcbiAgICBhbmltYXRpb246IG93bC1ib3VuY2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSkpO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIG93bC1ib3VuY2Uge1xyXG4gICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCkgcm90YXRlKC0zZGVnKTsgfVxyXG4gICAgNTAlICAgICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEycHgpIHJvdGF0ZSgzZGVnKTsgfVxyXG59XHJcblxyXG4vKiBTaWRlYmFyIHNrZWxldG9uIOKAlCBtYXRjaGVzIFBvcnRhbFNpZGViYXIgbmF2IGJ1dHRvbiBkaW1lbnNpb25zICovXHJcbi5za2VsZXRvbi1zaWRlYmFyLW5hdi1idG4ge1xyXG4gICAgQGluY2x1ZGUgc2tlbGV0b24tc2hpbW1lcjtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuICAgIHBhZGRpbmc6IDIuOHJlbSAxLjVyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjg3NXJlbTtcclxuXHJcbiAgICAmOmZpcnN0LW9mLXR5cGUge1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAycmVtIDEuMjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMS41cmVtIDFyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMS4yNXJlbSAwLjg3NXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLyogVGFiIHZpZXcgc2tlbGV0b24g4oCUIG1hdGNoZXMgUmF0aG9SdXBUYWJWaWV3IHRhYiBiYXIgKyBjb250ZW50ICovXHJcbi5za2VsZXRvbi10YWItYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMC4zNzVyZW07XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHJcbiAgICAuc2tlbGV0b24tdGFiLWljb24ge1xyXG4gICAgICAgIEBpbmNsdWRlIHNrZWxldG9uLXNoaW1tZXI7XHJcbiAgICAgICAgd2lkdGg6IDFyZW07XHJcbiAgICAgICAgaGVpZ2h0OiAxcmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgLnNrZWxldG9uLXRhYi1sYWJlbCB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2tlbGV0b24tc2hpbW1lcjtcclxuICAgICAgICB3aWR0aDogNHJlbTtcclxuICAgICAgICBoZWlnaHQ6IDAuNzVyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAmLmFjdGl2ZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctd2hpdGUsICNmZmYpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBMaXN0IHNrZWxldG9uIChpY29uICsgdGV4dCByb3dzKSAqL1xyXG5cclxuLnNrZWxldG9uLWxpc3QtaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMC43NXJlbTtcclxuICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zdWJ0bGUpO1xyXG5cclxuICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAuc2tlbGV0b24taWNvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgc2tlbGV0b24tc2hpbW1lcjtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcblxyXG4gICAgICAgICYuc2tlbGV0b24tbGlzdC1pY29uIHtcclxuICAgICAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMzJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnNrZWxldG9uLWxpbmUtLXNlY29uZGFyeSB7XHJcbiAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgfVxyXG59XHJcbiIsIi8vIExheW91dCBmb3IgYWxlcnRzIHRoYXQgdXNlIHRoZSBSYXRob0FsZXJ0IHN0cnVjdHVyZSAoLmFsZXJ0LWljb24gKyAuYWxlcnQtbWVzc2FnZSBibG9ja3MpLlxyXG4vLyBTY29wZWQgdmlhIDpoYXMoKSBzbyBwbGFpbiBCb290c3RyYXAgaW5saW5lIGFsZXJ0cyAod2l0aG91dCAuYWxlcnQtaWNvbikga2VlcCB0aGVpciBkZWZhdWx0IGxvb2suXHJcbi8vIFRoZSBTcGFyayBDU1MgdGhhdCBzaGlwcyB0aGVzZSBzdHlsZXMgaW4gTWFuYWdlciBpcyBub3QgbG9hZGVkIGluIFBvcnRhbCwgc28gdGhpcyBmaWxlXHJcbi8vIHByb3ZpZGVzIHRoZSBlcXVpdmFsZW50IGxheW91dCBsb2NhbGx5LlxyXG4uYWxlcnQ6aGFzKD4gLmFsZXJ0LWljb24pIHtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG5cclxuICAgID4gLmFsZXJ0LWljb24ge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcblxyXG4gICAgICAgIC8vIFJlc2V0IEJvb3RzdHJhcCBncmlkIHJvdyBndXR0ZXJzL21hcmdpbnMgaW5oZXJpdGVkIGZyb20gdGhlIC5yb3cgdXRpbGl0eSBjbGFzc1xyXG4gICAgICAgIC8vIHRoYXQgUmF0aG9BbGVydCBhcHBsaWVzIHRvIGl0cyBpY29uIGNvbnRhaW5lci5cclxuICAgICAgICAtLWJzLWd1dHRlci14OiAwO1xyXG4gICAgICAgIC0tYnMtZ3V0dGVyLXk6IDA7XHJcbiAgICB9XHJcblxyXG4gICAgPiAuYWxlcnQtbWVzc2FnZSB7XHJcbiAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmF0aG9BbGVydCByZW5kZXJzIHRoZSBjbG9zZSBpY29uIGFzIGJ0bi1jbG9zZS13aGl0ZSBmb3IgTWFuYWdlciAoc29saWQgdGhlbWUgYmcpO1xyXG4gICAgLy8gUG9ydGFsIHVzZXMgQm9vdHN0cmFwJ3MgZGVmYXVsdCBsaWdodCBhbGVydCBiYWNrZ3JvdW5kcywgc28gcmV2ZXJ0IHRoZSB3aGl0ZSBmaWx0ZXJcclxuICAgIC8vIGFuZCBnaXZlIHRoZSBidXR0b24gaXRzIG93biBzcGFjaW5nIHNpbmNlIHRoZSBhbGVydCdzIG93biBwYWRkaW5nIGlzIHplcm9lZCBhYm92ZS5cclxuICAgID4gLmJ0bi1jbG9zZSB7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMC43NXJlbTtcclxuICAgICAgICBmaWx0ZXI6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gU3VidGxlIGVudHJhbmNlIGFuaW1hdGlvbiB0aGF0IGJyaWVmbHkgZHJhd3MgYXR0ZW50aW9uIHRvIHRoZSBiZXRhIGJhbm5lclxyXG4vLyB3aGVuIHRoZSB1c2VyIG9wZW5zIHRoZSBQb3J0YWwuIFRoZSBhbmltYXRpb24gcnVucyBvbmNlIHBlciBjaXJjdWl0XHJcbi8vIChCZXRhQmFubmVyIHRyYWNrcyB0aGlzIHZpYSBJQmV0YUJhbm5lclN0YXRlLkhhc0FuaW1hdGVkKSBzbyBpdCBkb2Vzbid0XHJcbi8vIHJlcGxheSBvbiBldmVyeSBuYXZpZ2F0aW9uIGJhY2sgdG8gU3RhcnQuXHJcblxyXG4uYmV0YS1iYW5uZXItYXR0ZW50aW9uIHtcclxuICAgIGFuaW1hdGlvbjogYmV0YS1iYW5uZXItYXR0ZW50aW9uIDEuNnMgZWFzZS1vdXQgMC4ycyAxO1xyXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgYm94LXNoYWRvdztcclxufVxyXG5cclxuLy8gUmVzcGVjdCB1c2VycyB3aG8gcmVxdWVzdCByZWR1Y2VkIG1vdGlvbiAoV0NBRyAyLjMuMyk6IHNob3cgdGhlIGJhbm5lciBzdGF0aWNhbGx5LlxyXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xyXG4gICAgLmJldGEtYmFubmVyLWF0dGVudGlvbiB7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGJldGEtYmFubmVyLWF0dGVudGlvbiB7XHJcbiAgICAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4NSk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IsIDI1LCAxMzUsIDg0KSwgMCk7XHJcbiAgICB9XHJcbiAgICAzNSUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCA2cHggcmdiYSh2YXIoLS1icy1zdWNjZXNzLXJnYiwgMjUsIDEzNSwgODQpLCAwLjE4KTtcclxuICAgIH1cclxuICAgIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEodmFyKC0tYnMtc3VjY2Vzcy1yZ2IsIDI1LCAxMzUsIDg0KSwgMCk7XHJcbiAgICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkFUSE8gQkxBWk9SIFNFTEVDVCAtIFBvcnRhbC1zcGVjaWZpYyBicmFuZCBza2luXHJcbiAgIFRoZSBiYXNlIHN0eWxpbmcgbGl2ZXMgaW4gUmF0aG8uSW5mcmFzdHJ1Y3R1cmUuUmF6b3IgYW5kIHVzZXMgQm9vdHN0cmFwIENTU1xyXG4gICB2YXJpYWJsZXMuIFBvcnRhbCBvdmVycmlkZXMgdGhvc2UgY29sb3Vycy9yYWRpaSBoZXJlIHRvIG1hdGNoIHRoZSBicmFuZFxyXG4gICB3aXRob3V0IGZvcmtpbmcgdGhlIGNvbXBvbmVudCBpdHNlbGYuXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ucmF0aG8tYmxhem9yLXNlbGVjdCB7XHJcbiAgICAvLyBTdGFibGUgc2l6aW5nOiBhIG1pbmltdW0gd2lkdGggcHJldmVudHMgY29sbGFwc2UsIGFuZCB3aWR0aDogMTAwJSAoc2V0XHJcbiAgICAvLyBpbiB0aGUgYmFzZSBTQ1NTKSBwbHVzIHRoZSAuc2VsZWN0LXZhbHVlJ3MgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXMgc3RvcHNcclxuICAgIC8vIHRoZSBjb250cm9sIGZyb20gZ3Jvd2luZy9zaHJpbmtpbmcgd2l0aCB3aGljaGV2ZXIgb3B0aW9uIGlzIHNlbGVjdGVkLlxyXG4gICAgbWluLXdpZHRoOiB2YXIoLS1yYXRoby1pbnB1dC1taW4td2lkdGgpO1xyXG5cclxuICAgIC8vIE11bHRpLXNlbGVjdCBydWxlOiBubyBzZWFyY2ggZmllbGQgaW5zaWRlIHRoZSBkcm9wZG93bi4gVGhlIFBvcnRhbCBoYXNcclxuICAgIC8vIGNob3NlbiB0aGlzIGFzIGEgZ2xvYmFsIHJ1bGU7IFNob3dTZWFyY2g9XCJmYWxzZVwiIG9uIHRoZSBjYWxsIHNpdGVzIGlzXHJcbiAgICAvLyB0aGUgcHJpbWFyeSBmaXgsIHRoaXMgaXMgYSBzYWZldHktbmV0IHNvIGZ1dHVyZSBjYWxsZXJzIGNhbid0IHJlaW50cm9kdWNlIGl0LlxyXG4gICAgJi5tdWx0aS1zZWxlY3QgLnNlbGVjdC1kcm9wZG93biAuc2VhcmNoLWNvbnRhaW5lciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNdWx0aS1zZWxlY3Qgc2VsZWN0aW9uIGluZGljYXRvcjogaGlkZSB0aGUgbmF0aXZlIGNoZWNrYm94IGFuZCB1c2UgdGhlXHJcbiAgICAvLyBzYW1lIHRyYWlsaW5nIGNoZWNrLWljb24gYXMgc2luZ2xlLXNlbGVjdC4gVGhlIGRyb3Bkb3duIGRlbGliZXJhdGVseVxyXG4gICAgLy8gc3RheXMgb3BlbiBpbiBtdWx0aS1zZWxlY3QgKGhhbmRsZWQgaW4gdGhlIGNvbXBvbmVudCdzIFNlbGVjdE9wdGlvblxyXG4gICAgLy8gbG9naWMpIHNvIHVzZXJzIGNhbiBwaWNrIG1vcmUgdGhhbiBvbmUuIFBvcnRhbC1vbmx5IHJlc3R5bGUg4oCUIE1hbmFnZXJcclxuICAgIC8vIGtlZXBzIHRoZSBjaGVja2JveCBhZmZvcmRhbmNlIHZpYSB0aGUgYmFzZSBTQ1NTLlxyXG4gICAgJi5tdWx0aS1zZWxlY3QgLm9wdGlvbnMtY29udGFpbmVyIC5vcHRpb24ge1xyXG4gICAgICAgIC5vcHRpb24tbGFiZWwge1xyXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zZWxlY3RlZCAub3B0aW9uLWxhYmVsOjphZnRlciB7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XHJcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA3IEZyZWVcIiwgXCJGb250IEF3ZXNvbWUgNiBGcmVlXCIsIFwiRm9udEF3ZXNvbWVcIjtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCwgI2ZmOGY2MSk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zZWxlY3QtYnV0dG9uIHtcclxuICAgICAgICAvLyBTaXppbmcgdG9rZW5zIChHZW5lcmFsLnNjc3MgOnJvb3QpIGtlZXAgdGhpcyBhbGlnbmVkIHdpdGhcclxuICAgICAgICAvLyBSYXRob1RleHRJbnB1dCBhbmQgU2VhcmNoQmFyIGluIGFueSBmaWx0ZXIgcm93LlxyXG4gICAgICAgIGhlaWdodDogdmFyKC0tcmF0aG8taW5wdXQtaGVpZ2h0KTtcclxuICAgICAgICBtaW4taGVpZ2h0OiB2YXIoLS1yYXRoby1pbnB1dC1oZWlnaHQpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmF0aG8taW5wdXQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYXRoby1pbnB1dC1yYWRpdXMpO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1yYXRoby1pbnB1dC1oZWlnaHQtbW9iaWxlKTtcclxuICAgICAgICAgICAgbWluLWhlaWdodDogdmFyKC0tcmF0aG8taW5wdXQtaGVpZ2h0LW1vYmlsZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1yYXRoby1pbnB1dC1ib3JkZXItY29sb3ItaG92ZXIpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ob3Zlci1jcmVhbSwgI2ZmZjlmNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmF0aG8taW5wdXQtYm9yZGVyLWNvbG9yKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tcmF0aG8taW5wdXQtZm9jdXMtc2hhZG93KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIE1hdGNoIHRoZSBiYXNlJ3MgYC5zZWxlY3QtYnV0dG9uIC5zZWxlY3QtdmFsdWUgLnNlbGVjdGVkLWNvdW50YFxyXG4gICAgICAgIC8vIHNlbGVjdG9yIGNoYWluIHNvIHRoaXMgb3ZlcnJpZGUgYWN0dWFsbHkgd2lucyAodGhlIGJhc2UgaGFzIGhpZ2hlclxyXG4gICAgICAgIC8vIHNwZWNpZmljaXR5IHRoYW4gYSBmbGF0IC5zZWxlY3RlZC1jb3VudCBydWxlKS5cclxuICAgICAgICAuc2VsZWN0LXZhbHVlIC5zZWxlY3RlZC1jb3VudCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmssICMxMTE4MjcpO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gQmFzZSBTQ1NTIGl0YWxpY2lzZXMgdGhlIHBsYWNlaG9sZGVyOyBQb3J0YWwgcHJlZmVycyBhIGNhbG1cclxuICAgICAgICAvLyBub24taXRhbGljIHN0eWxlIHNvIGl0IHJlYWRzIGFzIG9yZGluYXJ5IGhlbHBlciB0ZXh0LlxyXG4gICAgICAgIC5zZWxlY3QtdmFsdWUgLnNlbGVjdC1wbGFjZWhvbGRlci10ZXh0IHtcclxuICAgICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBTZWxlY3RlZCBwaWxscyDigJQgb3JhbmdlIGdyYWRpZW50IGluc3RlYWQgb2YgQm9vdHN0cmFwIHByaW1hcnkgYmx1ZSAqL1xyXG4gICAgLnNlbGVjdGVkLXBpbGxzIC5waWxsIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcbiAgICAgICAgICAgIHRvIHJpZ2h0LFxyXG4gICAgICAgICAgICB2YXIoLS1ncmFkaWVudC1zdGFydCwgI2ZmOGY2MSksXHJcbiAgICAgICAgICAgIHZhcigtLWdyYWRpZW50LWVuZCwgI2Y2NzE2MClcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlLCAjZmZmKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMzUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc2VsZWN0LWRyb3Bkb3duIHtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCwgI2ZmOGY2MSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmF0aG8taW5wdXQtcmFkaXVzKTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMTIpO1xyXG4gICAgICAgIC8vIENsaXAgc3F1YXJlIGNoaWxkcmVuIChzZWFyY2gtY29udGFpbmVyLCBvcHRpb25zLCBmb290ZXIpIHRvIHRoZVxyXG4gICAgICAgIC8vIHJvdW5kZWQgb3V0ZXIgc2hhcGUgc28gb3B0aW9uLWhvdmVyIGJhY2tncm91bmRzIGRvbid0IGJsZWVkIHBhc3RcclxuICAgICAgICAvLyB0aGUgY29ybmVycy5cclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIC8vIFRoZSBwYW5lbCBpdHNlbGYgZ3Jvd3MgdG8gZml0OyB0aGUgdmlld3BvcnQgY2FwIGxpdmVzIG9uIHRoZSBvcHRpb25zXHJcbiAgICAgICAgLy8gbGlzdCAoc2VlIC5vcHRpb25zLWNvbnRhaW5lcikgc28gdGhlIGNocm9tZSAocHJlc2V0cy9mb290ZXIpIHN0YXlzXHJcbiAgICAgICAgLy8gdmlzaWJsZSB3aGlsZSB0aGUgbGlzdCBzY3JvbGxzLiBUaGUgc2hhcmVkIEpTIHBvc2l0aW9uZXIgYW5jaG9ycyB0aGVcclxuICAgICAgICAvLyBwYW5lbCBhbmQgZmxpcHMgaXQgYWJvdmUgdGhlIHRyaWdnZXIgd2hlbiB0aGVyZSdzIG1vcmUgcm9vbSB0aGVyZS5cclxuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG5cclxuICAgICAgICAvLyBDYWxsZXItc3VwcGxpZWQgaGVhZGVyIGFjdGlvbnMgKGUuZy4gXCJTaG93IGFsbCAvIHJlc2V0IGZpbHRlclwiKS5cclxuICAgICAgICAvLyBNaXJyb3JzIHRoZSB2aXN1YWwgdHJlYXRtZW50IG9mIC5xdWljay1zZWxlY3QtcHJlc2V0cyBzbyB0aGUgc2xvdFxyXG4gICAgICAgIC8vIHJlYWRzIGFzIGEgZGlzdGluY3QgdG9wIHNlY3Rpb24gYWJvdmUgdGhlIG9wdGlvbnMgbGlzdC5cclxuICAgICAgICAuZHJvcGRvd24taGVhZGVyLWFjdGlvbnMge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJzLXNlY29uZGFyeS1iZyk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXRlcnRpYXJ5LWJnKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIFNpemUgYm90aCB0aGUgc2luZ2xlLXNlbGVjdCBcIkFsbFwiIHByZXNldCBhbmQgdGhlIG11bHRpLXNlbGVjdFxyXG4gICAgICAgIC8vIGhlYWRlci1hY3Rpb24gYnV0dG9uIGF0IGFwcHJveGltYXRlbHkgb25lIG9wdGlvbi1yb3cgdGFsbCwgc28gdGhleVxyXG4gICAgICAgIC8vIHZpc3VhbGx5IHNjYW4gYXMgcGFydCBvZiB0aGUgb3B0aW9uIGxpc3QgKEJvb3RzdHJhcCdzIGJ0bi1zbVxyXG4gICAgICAgIC8vIGRlZmF1bHQgaXMgbm90aWNlYWJseSBzaG9ydGVyIHRoYW4gLm9wdGlvbidzIDAuNXJlbSBwYWRkaW5nKS5cclxuICAgICAgICAvLyBCb3JkZXItcmFkaXVzIG1hdGNoZXMgLm9wdGlvbiBiZWxvdyBzbyB0aGUgcHJlc2V0cyBhbmQgcm93cyBzaGFyZVxyXG4gICAgICAgIC8vIHRoZSBzYW1lIHBpbGwgc2hhcGUuXHJcbiAgICAgICAgLnF1aWNrLXNlbGVjdC1wcmVzZXRzIC5idG4sXHJcbiAgICAgICAgLmRyb3Bkb3duLWhlYWRlci1hY3Rpb25zIC5idG4ge1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gUXVpY2stc2VsZWN0IHByZXNldHMgKFwiQWxsXCIgLyBcIk5vbmVcIikg4oCUIGJhc2UgbWFya3VwIHVzZXNcclxuICAgICAgICAvLyBidG4tb3V0bGluZS1wcmltYXJ5IC8gYnRuLXByaW1hcnkgd2hpY2ggcmVzb2x2ZSB0byBCb290c3RyYXAgYmx1ZS5cclxuICAgICAgICAvLyBSZS1za2luIHRoZW0gdG8gdGhlIGJyYW5kIG9yYW5nZSwgc2NvcGVkIHRvIHRoaXMgZHJvcGRvd24gc28gb3RoZXJcclxuICAgICAgICAvLyBidG4tcHJpbWFyeSB1c2FnZXMgZWxzZXdoZXJlIGluIFBvcnRhbCBhcmUgdW5hZmZlY3RlZC5cclxuICAgICAgICAuYnRuLW91dGxpbmUtcHJpbWFyeSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtZGFyaywgI2U2N2E0YSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0LCAjZmY4ZjYxKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSxcclxuICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUsICNmZmYpO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0LCAjZmY4ZjYxKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0LCAjZmY4ZjYxKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJyYW5kLWFjY2VudC1yZ2IpLCAwLjI1KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmJ0bi1wcmltYXJ5IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUsICNmZmYpO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQsICNmZjhmNjEpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCwgI2ZmOGY2MSk7XHJcblxyXG4gICAgICAgICAgICAmOmhvdmVyLFxyXG4gICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtZGFyaywgI2U2N2E0YSk7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1kYXJrLCAjZTY3YTRhKTtcclxuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKHZhcigtLWJyYW5kLWFjY2VudC1yZ2IpLCAwLjI1KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnNlYXJjaC1jb250YWluZXIgLnNlYXJjaC1pbnB1dDpmb2N1cyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0LCAjZmY4ZjYxKTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMTUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSW5zZXQgdGhlIG9wdGlvbnMgc28gYSBzcXVhcmUgaG92ZXIvc2VsZWN0ZWQgYmFja2dyb3VuZCBuZXZlclxyXG4gICAgICAgIC8vIHRvdWNoZXMgdGhlIGRyb3Bkb3duJ3Mgcm91bmRlZCBlZGdlLiBFYWNoIG9wdGlvbiB0aGVuIGNhcnJpZXMgaXRzXHJcbiAgICAgICAgLy8gb3duIHJhZGl1cywgZ2l2aW5nIHRoZSBob3ZlciBzdGF0ZSBhIG1vZGVybiBwaWxsIGxvb2sgdGhhdCBmaXRzXHJcbiAgICAgICAgLy8gaW5zaWRlIHRoZSByb3VuZGVkIHNoZWxsIGluc3RlYWQgb2YgZmlnaHRpbmcgaXQuXHJcbiAgICAgICAgLm9wdGlvbnMtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMC4zNzVyZW07XHJcbiAgICAgICAgICAgIC8vIFJldXNlIHRoZSBiYXNlIGNvbXBvbmVudCdzIHNjcm9sbCBtZWNoYW5pc20gKG1heC1oZWlnaHQgK1xyXG4gICAgICAgICAgICAvLyBvdmVyZmxvdy15OiBhdXRvKSwganVzdCB3aXRoIGEgdmlld3BvcnQtcmVsYXRpdmUgY2FwIGluc3RlYWQgb2ZcclxuICAgICAgICAgICAgLy8gdGhlIGJhc2UncyBmaXhlZCAyMDBweCBzbyB0aGUgUG9ydGFsIGxpc3QgZ3Jvd3MgdG8gZml0IHdoZW4gc2hvcnQuXHJcbiAgICAgICAgICAgIC8vIFNob3J0IGxpc3RzIGZpdCB3aXRoIG5vIHNjcm9sbGJhcjsgbG9uZyBvbmVzIGNhcCBhdCB+NjAlIG9mIHRoZVxyXG4gICAgICAgICAgICAvLyB2aWV3cG9ydCBhbmQgc2Nyb2xsIGludGVybmFsbHksIGtlZXBpbmcgdGhlIHBhbmVsIG9uLXNjcmVlbi5cclxuICAgICAgICAgICAgbWF4LWhlaWdodDogNjB2aDtcclxuICAgICAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcclxuXHJcbiAgICAgICAgICAgIC5vcHRpb24ge1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgICAgICAgICAgICAgLy8gQmFzZSBTQ1NTIGRyYXdzIGEgZGl2aWRlciBsaW5lIHVuZGVyIGV2ZXJ5IG9wdGlvbjsgd2l0aFxyXG4gICAgICAgICAgICAgICAgLy8gcm91bmRlZCBob3ZlciBiYWNrZ3JvdW5kcyB0aGUgZGl2aWRlcnMgcmVhZCBhcyB2aXN1YWxcclxuICAgICAgICAgICAgICAgIC8vIGNsdXR0ZXIsIHNvIGRyb3AgdGhlbSBpbiB0aGUgUG9ydGFsIHNraW4uXHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICAgICAgLy8gU21hbGwgYnJlYXRoaW5nIHJvb20gYmV0d2VlbiByb3VuZGVkIGl0ZW0gcGlsbHMuXHJcbiAgICAgICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIC8vIEJhc2UgU0NTUyBzaGlmdHMgaG92ZXJlZCBvcHRpb25zIDRweCB0byB0aGUgcmlnaHQ7IHdpdGhcclxuICAgICAgICAgICAgICAgIC8vIGFuIGluc2V0IHJvdW5kZWQgcGlsbCB0aGF0IHNpZGV3YXlzIGp1bXAgZmVlbHMgaml0dGVyeS5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ob3Zlci1jcmVhbSwgI2ZmZjlmNSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJi5zZWxlY3RlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1icmFuZC1hY2NlbnQtcmdiKSwgMC4xMik7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1kYXJrLCAjZTY3YTRhKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMTgpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvLyBTaW5nbGUtc2VsZWN0IGNoZWNrIGljb24g4oCUIGJhc2Ugc2V0cyBpdCB0byAtLWJzLXByaW1hcnkgKGJsdWUpXHJcbiAgICAgICAgICAgICAgICAub3B0aW9uLWNvbnRlbnQgaS5mYS1jaGVjayB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCwgI2ZmOGY2MSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIENhbGxlci1zdXBwbGllZCBmb290ZXIgYWN0aW9ucyAoZS5nLiB0aGUgXCJNYW5hZ2UgdGFnc1wiIGdlYXIgYnV0dG9uKVxyXG4gICAgICAgIC8vIHNpdCBhYm92ZSB0aGUgYnVpbHQtaW4gQ2xlYXIgQWxsIGJ1dHRvbiDigJQgZ2l2ZSB0aGVtIGEgc21hbGwgZ2FwIHNvXHJcbiAgICAgICAgLy8gdGhlIHR3byByb3dzIHJlYWQgYXMgc2VwYXJhdGUgYWN0aW9ucy5cclxuICAgICAgICAuZHJvcGRvd24tZm9vdGVyIC5kcm9wZG93bi1mb290ZXItYWN0aW9uczpub3QoOmxhc3QtY2hpbGQpIHtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5AdXNlIFwiY29tcG9uZW50cy9fYmFzZS91dGlsaXRpZXNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUE9SVEFMIEZMWU9VVCBQQU5FTCAtIEZsb2F0aW5nIGNhcmQgZGVzaWduIGV4dGVuc2lvbnNcclxuICAgQmFzZSBzdHJ1Y3R1cmFsIHN0eWxlcyBhcmUgaW4gSW5mcmFzdHJ1Y3R1cmUuUmF6b3IgX2ZseW91dC5zY3NzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBQb3J0YWwtc3BlY2lmaWM6IGZseW91dC1mb290ZXIgcm91bmRlZCBjb3JuZXIgZm9yIGZsb2F0aW5nIGNhcmQgKi9cclxuLmZseW91dC1mb290ZXIge1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYyh2YXIoLS1mbHlvdXQtcmFkaXVzLCAxNHB4KSAtIDJweCk7XHJcbn1cclxuXHJcbiNmbHlvdXQtbWFpbiB7XHJcbiAgICB3aWR0aDogdmFyKC0tZmx5b3V0LXdpZHRoKTtcclxuXHJcbiAgICAvKiBGbG9hdGluZyBjYXJkIHN0eWxpbmcgLSBhdHRhY2hlcyB0byByaWdodCBlZGdlIG9mIHZpZXdwb3J0ICovXHJcbiAgICBtYXJnaW46IHZhcigtLWZseW91dC1tYXJnaW4pIDA7XHJcbiAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tZmx5b3V0LW1hcmdpbikgKiAyKTtcclxuXHJcbiAgICAvKiBPbmx5IHJvdW5kIExFRlQgY29ybmVycyAtIHJpZ2h0IHNpZGUgaXMgZmx1c2ggd2l0aCB2aWV3cG9ydCBlZGdlICovXHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1mbHlvdXQtcmFkaXVzKTtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWZseW91dC1yYWRpdXMpO1xyXG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcclxuXHJcbiAgICAvKiBPdmVycmlkZSBCb290c3RyYXAgb2ZmY2FudmFzIHRvIGtlZXAgaGFuZGxlIHZpc2libGUgd2hlbiBjbG9zZWQuXHJcbiAgICAgICAjaWQgc3BlY2lmaWNpdHkgKDEsMCwwKSBiZWF0cyAub2ZmY2FudmFzOm5vdCguc2hvdykgKDAsMiwwKSDigJQgbm8gIWltcG9ydGFudCBuZWVkZWQuICovXHJcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG5cclxuICAgIC8qIFZpc3VhbCBzdHlsaW5nIGFsd2F5cyBwcmVzZW50IOKAlCBwYW5lbCBpcyBvZmYtc2NyZWVuIHdoZW4gY2xvc2VkIHNvIGludmlzaWJsZS5cclxuICAgICAgIEtlZXBzIGJvcmRlcnMvYmcvc2hhZG93IGR1cmluZyBjbG9zZSBhbmltYXRpb24gKHByZXZlbnRzIFwiZmxhc2hcIiB3aGVuIC5zaG93IGlzIHJlbW92ZWQpLiAqL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZmx5b3V0LWJnKTtcclxuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCB2YXIoLS1yYXRoby1oZWFkZXItZ3JhZGllbnQtb3JhbmdlKTtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1yYXRoby1oZWFkZXItZ3JhZGllbnQtb3JhbmdlKTtcclxuICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tcmF0aG8taGVhZGVyLWdyYWRpZW50LW9yYW5nZSk7XHJcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAyNHB4IHZhcigtLWdsb3ctYnJhbmQtc20pO1xyXG5cclxuICAgIC8qIFdoZW4gY2xvc2VkLCB0cmFuc2xhdGUgZnVsbHkgb2ZmLXNjcmVlbiAtIGhhbmRsZSBhdCBsZWZ0Oi1oYW5kbGUtd2lkdGggcGVla3Mgb3V0LlxyXG4gICAgICAgTk9URTogdHJhbnNpdGlvbiBpcyBpbmhlcml0ZWQgZnJvbSBzaGFyZWQgX2ZseW91dC5zY3NzIChlYXNlLWluLW91dCkuICovXHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblxyXG4gICAgJi5zaG93LCAmLnNob3dpbmcge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxuICAgIH1cclxufVxyXG5cclxuI2ZseW91dC1tYWluLm9mZmNhbnZhcyB7XHJcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLyogQWxsb3cgaGFuZGxlIHRvIHN0aWNrIG91dCB0byB0aGUgbGVmdCAqL1xyXG59XHJcblxyXG4vKiBQaW4gdGhlIGZhc3QtYWN0aW9ucyBmb290ZXIgKFNhdmUgLyBwcmltYXJ5IGFjdGlvbikgdG8gdGhlIGJvdHRvbSBvZiB0aGVcclxuICAgZmx5b3V0IGJvZHkgcmVnYXJkbGVzcyBvZiBob3cgc2hvcnQgdGhlIEJvZHlDb250ZW50IGlzLiBUaGUgc2hhcmVkXHJcbiAgIF9mbHlvdXQuc2NzcyBtYWtlcyAub2ZmY2FudmFzLWJvZHkgYSBmbGV4IGNvbHVtbiwgc28gbWFyZ2luLXRvcDphdXRvIG9uIHRoZVxyXG4gICB0cmFpbGluZyAuZmFzdC1hY3Rpb25zIHB1c2hlcyBpdCBwYXN0IGFueSBzaG9ydCBjb250ZW50LiAqL1xyXG4jZmx5b3V0LW1haW4gLm9mZmNhbnZhcy1ib2R5ID4gLmZhc3QtYWN0aW9ucyB7XHJcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xyXG59XHJcblxyXG4vKiBGbHlvdXQgaGVhZGVyIC0gb25seSByb3VuZCB0b3AtbGVmdCBjb3JuZXIgKHJpZ2h0IHNpZGUgaXMgc3F1YXJlKSAqL1xyXG4jZmx5b3V0LW1haW4gLm9mZmNhbnZhcy1oZWFkZXIge1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTJweDtcclxuXHJcbiAgICAvKiBIZWFkZXIgaWNvbiB3aXRoIG9yYW5nZSBicmFuZCBncmFkaWVudC4gZm9udC1zaXplIGF0ICRmcy1sZyBsZWF2ZXMgYVxyXG4gICAgICAgaGFpciBvZiB2ZXJ0aWNhbCByb29tIHNvIHRhbGwtc2hhY2tsZSBnbHlwaHMgKGZhLWxvY2ssIGZhLXVubG9jaykgZG9uJ3RcclxuICAgICAgIHNpdCBmbHVzaCB3aXRoIHRoZSBsaW5lLWJveCB0b3Ag4oCUIHRoZSBwcmV2aW91cyAkZnMteGwgbWFkZSB0aGUgc2hhY2tsZVxyXG4gICAgICAgbG9vayBjbGlwcGVkIHVuZGVyIGJhY2tncm91bmQtY2xpcDp0ZXh0IHJlbmRlcmluZy4gKi9cclxuICAgID4gLmQtZmxleCA+IGksXHJcbiAgICA+IC5kLWZsZXggPiBzdmcge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XHJcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tcmF0aG8taGVhZGVyLWdyYWRpZW50LXllbGxvdyksIHZhcigtLXJhdGhvLWhlYWRlci1ncmFkaWVudC1vcmFuZ2UpKTtcclxuICAgICAgICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDtcclxuICAgICAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBCYWNrZHJvcCBvdmVybGF5IC0gUG9ydGFsLXNwZWNpZmljIGRhcmsgb3ZlcmxheSBjb2xvciAqL1xyXG4ub2ZmY2FudmFzLWJhY2tkcm9wIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW92ZXJsYXktYmFja2Ryb3ApO1xyXG5cclxuICAgICYuc2hvdyB7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyBmb3IgdGFibGV0IGFuZCBzbWFsbGVyIHNjcmVlbnMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICA6cm9vdCB7XHJcbiAgICAgICAgLS1mbHlvdXQtd2lkdGg6IDk1JTtcclxuICAgICAgICAtLWZseW91dC1tYXJnaW46IDIwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgZm9yIHZlcnkgc21hbGwgc2NyZWVucyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgIDpyb290IHtcclxuICAgICAgICAtLWZseW91dC13aWR0aDogMTAwJTtcclxuICAgICAgICAtLWZseW91dC1tYXJnaW46IDEwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLyogRnVsbC13aWR0aDogbm8gZmxvYXRpbmcgY2FyZCBlZmZlY3Qg4oCUIGZsdXNoIGFnYWluc3Qgdmlld3BvcnQgZWRnZXMgKi9cclxuICAgICNmbHlvdXQtbWFpbiB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBtYXJnaW46IDA7XHJcbiAgICAgICAgbWF4LWhlaWdodDogMTAwdmg7XHJcblxyXG4gICAgICAgICYuc2hvdywgJi5zaG93aW5nIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNmbHlvdXQtbWFpbiAub2ZmY2FudmFzLWhlYWRlciB7XHJcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZmx5b3V0LWZvb3RlciB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcclxuICAgIH1cclxuXHJcbiAgICAvKiBPdmVycmlkZSB3LTc1IGZvciBsYXJnZSBmbHlvdXRzIOKAlCBhbHdheXMgZnVsbC13aWR0aCBvbiBtb2JpbGUgKi9cclxuICAgICNmbHlvdXQtbWFpbi53LTc1IHtcclxuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFNtYWxsZXIgaGFuZGxlIG9uIHNtYWxsIHNjcmVlbnMgKi9cclxuICAgIC5mbHlvdXQtaGFuZGxlIHtcclxuICAgICAgICAtLWZseW91dC1oYW5kbGUtd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgLS1mbHlvdXQtaGFuZGxlLWhlaWdodDogNDhweDtcclxuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDE0cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICB9XHJcblxyXG4gICAgLyogV2hlbiBmbHlvdXQgaXMgb3BlbiBvbiBtb2JpbGUsIGhpZGUgdGhlIGhhbmRsZSDigJQgY2xvc2UgYnV0dG9uIGluIGhlYWRlciBzdWZmaWNlcyAqL1xyXG4gICAgLmZseW91dC1oYW5kbGUuZmx5b3V0LWhhbmRsZS1vcGVuIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC5mbHlvdXQtdXNlci1zZWxlY3RvciB7XHJcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC51c2VyLXNlbGVjdG9yLWF2YXRhciB7XHJcbiAgICAgICAgd2lkdGg6IDI0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyNHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4ubWFudWFscy1hbmQtdmlkZW9zLWZseW91dC1jb250ZW50IGEge1xyXG4gICAgY29sb3I6IHZhcigtLWJzLWJvZHktY29sb3IpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGTFlPVVQgSEFORExFIC0gUG9zaXRpb25lZCBJTlNJREUgb2ZmY2FudmFzLCBzdGlja3Mgb3V0IHRvIHRoZSBsZWZ0XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZmx5b3V0LWhhbmRsZSB7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBsZWZ0OiBjYWxjKC0xICogdmFyKC0tZmx5b3V0LWhhbmRsZS13aWR0aCkpO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7XHJcbiAgICB3aWR0aDogdmFyKC0tZmx5b3V0LWhhbmRsZS13aWR0aCk7XHJcbiAgICBoZWlnaHQ6IHZhcigtLWZseW91dC1oYW5kbGUtaGVpZ2h0KTtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xyXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmc7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBvdXRsaW5lOiAwO1xyXG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMjBweDtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDIwcHg7XHJcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgYm94LXNoYWRvdzogLTJweCAwIDhweCB2YXIoLS1nbG93LWJyYW5kLW1kKTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbmJvZHk6aGFzKC5zY3JlZW5zaG90LXZpZXdlci1vdmVybGF5KSAuZmx5b3V0LWhhbmRsZSB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4uZmx5b3V0LWhhbmRsZTpob3ZlciB7XHJcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC45NSk7XHJcbn1cclxuXHJcbi5mbHlvdXQtaGFuZGxlOmZvY3VzIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBib3gtc2hhZG93OiAtMnB4IDAgOHB4IHZhcigtLWdsb3ctYnJhbmQtbWQpO1xyXG59XHJcblxyXG4uZmx5b3V0LWhhbmRsZTpmb2N1cy12aXNpYmxlIHtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBib3gtc2hhZG93OiAtMnB4IDAgOHB4IHZhcigtLWdsb3ctYnJhbmQtbWQpLCAwIDAgMCAwLjI1cmVtIHZhcigtLWZvY3VzLXJpbmctYnJhbmQpO1xyXG59XHJcblxyXG4uZmx5b3V0LWNoZXZyb24ge1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLmZseW91dC1oYW5kbGUtb3BlbiAuZmx5b3V0LWNoZXZyb24ge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQUNUSU9OIExJU1RcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5hY3Rpb24tbGlzdCB7XHJcbiAgICAuYWN0aW9uLXJvdyB7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNoYWRvdy14cyk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5hY3Rpb24tcm93LWRpc2FibGVkIHtcclxuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG4gICAgICAgIG9wYWNpdHk6IDAuNTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFjdGlvbi1pY29uIHtcclxuICAgICAgICB3aWR0aDogMjhweDtcclxuICAgICAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmFjdGlvbi1pY29uLWRpc2FibGVkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIH1cclxuXHJcbiAgICAuYWN0aW9uLWdvIHtcclxuICAgICAgICB3aWR0aDogMjZweDtcclxuICAgICAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5hY3Rpb24tZ28tZGlzYWJsZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgICAgIGN1cnNvcjogaGVscDtcclxuICAgIH1cclxuXHJcbiAgICAuYWN0aW9uLXJvdyB7XHJcbiAgICAgICAgQGluY2x1ZGUgbGlzdC1pdGVtLWJvcmRlcigpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBVU0VSIFNFTEVDVE9SXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZmx5b3V0LXVzZXItc2VsZWN0b3Ige1xyXG4gICAgcGFkZGluZzogMCAxLjI1cmVtO1xyXG59XHJcblxyXG4udXNlci1zZWxlY3Rvci1zZWFyY2gge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XHJcblxyXG4gICAgJjpmb2N1cyB7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSB2YXIoLS1mb2N1cy1yaW5nLWJyYW5kKTtcclxuICAgIH1cclxufVxyXG5cclxuLnVzZXItc2VsZWN0b3Itc2VhcmNoLWljb24ge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgbGVmdDogMC42MjVyZW07XHJcbiAgICB0b3A6IDUwJTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG4gICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnVzZXItc2VsZWN0b3ItbGlzdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbn1cclxuXHJcbi51c2VyLXNlbGVjdG9yLWl0ZW0ge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xyXG4gICAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ob3Zlci1jcmVhbSk7XHJcbiAgICB9XHJcblxyXG4gICAgQGluY2x1ZGUgbGlzdC1pdGVtLWJvcmRlcigpO1xyXG59XHJcblxyXG4udXNlci1zZWxlY3Rvci1hdmF0YXIge1xyXG4gICAgd2lkdGg6IDI4cHg7XHJcbiAgICBoZWlnaHQ6IDI4cHg7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBGTFlPVVQgVEFCUyAtIEJyYW5kLXN0eWxlZCBzZWdtZW50ZWQgdGFiIGNvbnRyb2xcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mbHlvdXQtdGFicyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtYmctZmFpbnQpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYnJhbmQtYWNjZW50LWJvcmRlcik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjYyNXJlbTtcclxuICAgIHBhZGRpbmc6IDAuMjVyZW07XHJcbiAgICBnYXA6IDAuMjVyZW07XHJcblxyXG4gICAgLm5hdi1pdGVtIHtcclxuICAgICAgICBmbGV4OiAxIDEgMDtcclxuICAgIH1cclxuXHJcbiAgICAubmF2LWxpbmsge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNHJlbSAwLjc1cmVtO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMTUwbXMgZWFzZSwgY29sb3IgMTUwbXMgZWFzZSwgYm94LXNoYWRvdyAxNTBtcyBlYXNlO1xyXG5cclxuICAgICAgICAmOmhvdmVyOm5vdCguYWN0aXZlKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1iZy1zdWJ0bGUpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWRhcmspO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZztcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA2cHggdmFyKC0tZ2xvdy1icmFuZC1zbSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XHJcbiAgICAgICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSB2YXIoLS1mb2N1cy1yaW5nLWJyYW5kKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIElNUE9SVCBMSVNUIChBcHBsaWNhdGlvbiBDYXRhbG9nIGltcG9ydCBpbiBBZGRXaWRnZXQgZmx5b3V0KVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmltcG9ydC1saXN0IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAwLjM3NXJlbTtcclxuXHJcbiAgICAuaW1wb3J0LWxpc3QtaXRlbSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNvZnQpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrKTtcclxuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDE1MG1zIGVhc2UsIGJvcmRlci1jb2xvciAxNTBtcyBlYXNlLCBib3gtc2hhZG93IDE1MG1zIGVhc2U7XHJcblxyXG4gICAgICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KC5zZWxlY3RlZCkge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1ob3Zlci1jcmVhbSk7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWJvcmRlcik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gdmFyKC0tZm9jdXMtcmluZy1icmFuZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC43O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gV2hvbGUtcm93IFwic2VsZWN0ZWRcIiBzdGF0ZSDigJQgbWF0Y2hlcyB0aGUgUG9ydGFsIGNvbnZlbnRpb24gZm9yIHNlbGVjdGFibGVcclxuICAgICAgICAvLyBjYXJkcy9yb3dzIChzZWUgQ2hhbmdlRW52aXJvbm1lbnRfRmx5b3V0J3MgLmVudmlyb25tZW50LWNhcmQuc2VsZWN0ZWQpOlxyXG4gICAgICAgIC8vIGJyYW5kIGdyYWRpZW50IHdpdGggd2hpdGUgdGV4dCwgc28gdGhlIHVzZXIgc2VlcyBhdCBhIGdsYW5jZSB3aGljaCBjYXRhbG9nXHJcbiAgICAgICAgLy8gaXRlbXMgd2lsbCBiZSBpbXBvcnRlZCBvbiBTYXZlLlxyXG4gICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICBAaW5jbHVkZSBncmFkaWVudC1iZztcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA2cHggdmFyKC0tZ2xvdy1icmFuZC1zbSk7XHJcblxyXG4gICAgICAgICAgICAudGV4dC1tdXRlZCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZS1tdXRlZCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmltcG9ydC1saXN0LWl0ZW0taW5kaWNhdG9yIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmltcG9ydC1saXN0LWl0ZW0taW5kaWNhdG9yIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBGbGV4Ym94IGNoaWxkcmVuIGRlZmF1bHQgdG8gbWluLXdpZHRoOiBhdXRvLCB3aGljaCBwcmV2ZW50cyAudGV4dC10cnVuY2F0ZVxyXG4gICAgLy8gZnJvbSBjbGlwcGluZy4gQWxsb3cgdGhlIHRpdGxlL3VybCBibG9jayB0byBzaHJpbmsgcGFzdCBpbnRyaW5zaWMgY29udGVudCBzaXplLlxyXG4gICAgLmltcG9ydC1saXN0LWl0ZW0tYm9keSB7XHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgbWluLXdpZHRoOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIC5pbXBvcnQtbGlzdC1lbXB0eSB7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgICAgICBwYWRkaW5nOiAycmVtIDFyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEZMWU9VVCBTRUFSQ0ggLSBTZWFyY2ggaW5wdXQgd2l0aCBsZWFkaW5nIGljb24gKHVzZWQgaW4gaW1wb3J0IHRhYilcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mbHlvdXQtc2VhcmNoIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAuZmx5b3V0LXNlYXJjaC1pY29uIHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgbGVmdDogMC43NXJlbTtcclxuICAgICAgICB0b3A6IDUwJTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgIH1cclxuXHJcbiAgICAuZm9ybS1jb250cm9sIHtcclxuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIElDT04gU0VMRUNUT1IgKEZseW91dC1zY29wZWQpXHJcbiAgIE1hdGNoIHRoZSBjb2xvciBzZWxlY3RvcidzIGdyaWQgbGF5b3V0IHNvIGJvdGggcGlja2VycyBzaGFyZSB0aGUgc2FtZSBjZWxsXHJcbiAgIHNpemUsIGdhcCwgYW5kIGVkZ2UtdG8tZWRnZSBhbGlnbm1lbnQgd2l0aGluIHRoZSBmbHlvdXQgYm9keS5cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5mbHlvdXQtY29udGVudCAucmF0aG8taWNvbi1zZWxlY3RvciB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMi4ycmVtLCAxZnIpKTtcclxuICAgIGdhcDogMC41cmVtO1xyXG5cclxuICAgIC5yYXRoby1pY29uLXNlbGVjdG9yLWJ0biB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTtcclxuICAgICAgICBtaW4td2lkdGg6IDA7XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTSE9SVENVVCBGT1JNXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uc2hvcnRjdXQtZm9ybS1oZWFkZXIge1xyXG4gICAgZ2FwOiAwLjc1cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxufVxyXG5cclxuLnNob3J0Y3V0LWZvcm0tZmllbGRzIHtcclxuICAgIC8vIEdyb3cgdG8gZmlsbCB0aGUgcm93IHNvIHRoZSBwcmV2aWV3IGFuY2hvcnMgdG8gdGhlIHJpZ2h0IGVkZ2Ugb2YgdGhlXHJcbiAgICAvLyBmbHlvdXQgYm9keSwgYWxpZ25pbmcgd2l0aCBUYWdQaWNrZXIgLyBJY29uU2VsZWN0b3IgLyBDb2xvclNlbGVjdG9yIGJlbG93LlxyXG4gICAgZmxleDogMSAxIDIwMHB4O1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG5cclxuICAgIC8vIFN0cmV0Y2ggdGhlIHRpdGxlK1VSTCBzdGFjayB2ZXJ0aWNhbGx5IGFuZCBwdXNoIHRoZW0gdG8gdGhlIGV4dHJlbWVzIHNvIHRoZVxyXG4gICAgLy8gVVJMIHJvdydzIGJvdHRvbSBhbGlnbnMgd2l0aCB0aGUgcHJldmlldyB0aWxlJ3MgYm90dG9tICh0aGUgcHJldmlldyBpcyBmaXhlZFxyXG4gICAgLy8gYXQgMTQwcHgpLiBXaGVuIHRoZSBVUkwtZXJyb3IgbWVzc2FnZSBhcHBlYXJzIHRoZSBzdGFjayBncm93cyBiZXlvbmQgdGhlXHJcbiAgICAvLyBwcmV2aWV3IGhlaWdodDsgc3BhY2UtYmV0d2VlbiBzdGlsbCBwbGFjZXMgdGhlIFVSTCBibG9jayBhdCB0aGUgYm90dG9tIG9mXHJcbiAgICAvLyBpdHMgKG5vdy10YWxsZXIpIGNvbnRhaW5lciwgc28gdGhlIGxheW91dCBhZGFwdHMgZ3JhY2VmdWxseSB3aXRob3V0IG1hZ2ljXHJcbiAgICAvLyBtYXJnaW4gbnVtYmVycy5cclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTSE9SVENVVCBQUkVWSUVXIC0gd3JhcHMgYSBub24taW50ZXJhY3RpdmUgQXBwbGljYXRpb25TaG9ydGN1dCBmb3IgdXNlIGluXHJcbiAgIGZseW91dHMgKGxvY2svdW5sb2NrL2RlbGV0ZSBjb25maXJtYXRpb25zLCBhZGQvZWRpdC1mb3JtIHByZXZpZXdzKS5cclxuICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplIG1ha2VzIHRoZSBmbHVpZCBgY3FpYCBzaXppbmcgaW5zaWRlXHJcbiAgIC5hcHBsaWNhdGlvbi1zaG9ydGN1dCByZXNvbHZlIGNvcnJlY3RseSBvdXRzaWRlIHRoZSBHcmlkc3RhY2sgdGlsZS5cclxuICAgcG9pbnRlci1ldmVudHM6IG5vbmUgZGlzYWJsZXMgdGhlIGVtYmVkZGVkIDxhPiBzbyB0aGUgcHJldmlldyBpcyBwdXJlbHlcclxuICAgdmlzdWFsIOKAlCBubyB3aWRnZXQtc2lkZSBjaGFuZ2VzIHJlcXVpcmVkLlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnNob3J0Y3V0LXByZXZpZXcsXHJcbi5zaG9ydGN1dC1wcmV2aWV3LXNtLFxyXG4uc2hvcnRjdXQtcHJldmlldy14cyB7XHJcbiAgICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA4cHggdmFyKC0tc2hhZG93LWxnKTtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4uc2hvcnRjdXQtcHJldmlldyB7XHJcbiAgICB3aWR0aDogMTgwcHg7XHJcbiAgICBoZWlnaHQ6IDE4MHB4O1xyXG59XHJcblxyXG4uc2hvcnRjdXQtcHJldmlldy1zbSB7XHJcbiAgICB3aWR0aDogMTQwcHg7XHJcbiAgICBoZWlnaHQ6IDE0MHB4O1xyXG59XHJcblxyXG4uc2hvcnRjdXQtcHJldmlldy14cyB7XHJcbiAgICB3aWR0aDogNTZweDtcclxuICAgIGhlaWdodDogNTZweDtcclxuXHJcbiAgICAvLyBDb21wYWN0IFwiaWNvbiB0aHVtYm5haWxcIiB1c2UgKGUuZy4gaW1wb3J0LWxpc3Qgcm93cyk6IHRoZSB0aXRsZSBhbmQgdGFnc1xyXG4gICAgLy8gYWxyZWFkeSBhcHBlYXIgbmV4dCB0byB0aGUgdGlsZSwgc28gdGhlIGVtYmVkZGVkIHRleHQgd291bGQgYmUgZHVwbGljYXRlLlxyXG4gICAgLmFwcHNob3J0Y3V0LXRpdGxlLFxyXG4gICAgLmFwcHNob3J0Y3V0LWNhdGVnb3J5LFxyXG4gICAgLmFwcHNob3J0Y3V0LXRhZ3Mge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFNFTEVDVE9SUyAoSWNvbiwgQ29sb3IpXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBDb2xvciBTZWxlY3RvciAtIFVzZXMgYXBwc2hvcnRjdXQtY29sb3ItKiBjbGFzc2VzIGZyb20gYXBwbGljYXRpb25zaG9ydGN1dC5zY3NzICovXHJcbi5jb2xvci1zZWxlY3RvciB7XHJcbiAgICAuY29sb3Itc2VsZWN0b3ItYnRuIHtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMTUwbXMgZWFzZTtcclxuICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCA4cHggdmFyKC0tc2hhZG93LW1kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJzLWRhcmssICMzMzMpO1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJi5zZWxlY3RlZC1uZXcge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYWRpZW50LXN0YXJ0KTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5yYXRoby1jb2xvci1jaGVjay1vdmVybGF5IHtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IC00cHg7XHJcbiAgICAgICAgICAgIHJpZ2h0OiAtNHB4O1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuNXJlbTtcclxuICAgICAgICAgICAgd2lkdGg6IDE0cHg7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTRweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icy1kYXJrLCAjMzMzKTtcclxuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiQHVzZSBcInR5cG9ncmFwaHktdG9rZW5zXCIgYXMgKjtcclxuQHVzZSBcImNvbXBvbmVudHMvX2Jhc2UvdXRpbGl0aWVzXCIgYXMgKjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENIQU5HRSBFTlZJUk9OTUVOVCBGTFlPVVQgLSBUd28tY29sdW1uIGNhcmQgZ3JpZFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogVHdvLWNvbHVtbiBncmlkIGNvbnRhaW5lciAqL1xyXG4uZW52aXJvbm1lbnQtZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcclxuICAgIGdhcDogMC43NXJlbTtcclxufVxyXG5cclxuLyogRW52aXJvbm1lbnQgY2FyZCAqL1xyXG4uZW52aXJvbm1lbnQtY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMC43NXJlbTtcclxuICAgIHBhZGRpbmc6IDAuNzVyZW07XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWhvdmVyLWNyZWFtKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYWRpZW50LXN0YXJ0KTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTJweCB2YXIoLS1nbG93LWJyYW5kLXNtKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1mb2N1cy1yaW5nLWJyYW5kKTtcclxuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xyXG4gICAgfVxyXG5cclxuICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggdmFyKC0tZ2xvdy1icmFuZC1tZCk7XHJcblxyXG4gICAgICAgIC5lbnZpcm9ubWVudC1jYXJkLWljb24ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1vdmVybGF5LWxpZ2h0LXN0cm9uZyk7XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmVudmlyb25tZW50LWNhcmQtbmFtZSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5lbnZpcm9ubWVudC1jYXJkLXN1YnRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUtbXV0ZWQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLyogSWNvbiBiYWRnZSAqL1xyXG4uZW52aXJvbm1lbnQtY2FyZC1pY29uIHtcclxuICAgIHdpZHRoOiAyLjI1cmVtO1xyXG4gICAgaGVpZ2h0OiAyLjI1cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoMTM1ZGVnKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuXHJcbiAgICBpIHtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgIH1cclxufVxyXG5cclxuLyogVGV4dCB3cmFwcGVyIGZvciBjYXJkcyB3aXRoIHN1YnRpdGxlICovXHJcbi5lbnZpcm9ubWVudC1jYXJkLXRleHQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi8qIEVudmlyb25tZW50IG5hbWUgKi9cclxuLmVudmlyb25tZW50LWNhcmQtbmFtZSB7XHJcbiAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcclxuICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi8qIFN1YnRpdGxlIGZvciBzdWJzdGl0dXRlIHNoaWZ0cyAqL1xyXG4uZW52aXJvbm1lbnQtY2FyZC1zdWJ0aXRsZSB7XHJcbiAgICBmb250LXNpemU6ICRmcy14cztcclxuICAgIGZvbnQtd2VpZ2h0OiAkZnctcmVndWxhcjtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBSRVNQT05TSVZFIC0gU2luZ2xlIGNvbHVtbiBvbiBtb2JpbGVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgLmVudmlyb25tZW50LWdyaWQge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIGdhcDogMC41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5lbnZpcm9ubWVudC1jYXJkIHtcclxuICAgICAgICBwYWRkaW5nOiAwLjYyNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuZW52aXJvbm1lbnQtY2FyZC1pY29uIHtcclxuICAgICAgICB3aWR0aDogMnJlbTtcclxuICAgICAgICBoZWlnaHQ6IDJyZW07XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQ0hBTkdFIFBST0ZJTEUgUElDVFVSRSBGTFlPVVQgLSBDcm9wcGllIHN0eWxpbmdcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jcm9wcGllLWNvbnRhaW5lciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctZ3JheS1saWdodCk7XHJcblx0Ym9yZGVyLXJhZGl1czogMC41cmVtO1xyXG5cdHBhZGRpbmc6IDAuNzVyZW07XHJcblx0bWluLWhlaWdodDogMjYwcHg7XHJcblxyXG5cdC8vIE92ZXJyaWRlIENyb3BwaWUgZGVmYXVsdCBzdHlsZXMgZm9yIGJldHRlciBpbnRlZ3JhdGlvblxyXG5cdC5jcm9wcGllLWNvbnRhaW5lciB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcblx0LmNyLWJvdW5kYXJ5IHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcclxuXHR9XHJcblxyXG5cdC5jci12aWV3cG9ydCB7XHJcblx0XHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1ncmFkaWVudC1zdGFydCk7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCA5OTk5cHggdmFyKC0tb3ZlcmxheS1kYXJrKTtcclxuXHR9XHJcblxyXG5cdC5jci1zbGlkZXItd3JhcCB7XHJcblx0XHRtYXJnaW4tdG9wOiAxcmVtO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblxyXG5cdFx0LmNyLXNsaWRlciB7XHJcblx0XHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLy8gT3ZlcnJpZGUgQ3JvcHBpZSdzIGRlZmF1bHQgY2lyY2xlIHZpZXdwb3J0IHN0eWxpbmdcclxuLmNyLXZpZXdwb3J0LmNyLXZwLWNpcmNsZSB7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFFVSUNLU1RBUlQgRkxZT1VUIC0gV2VsY29tZSB2aWRlbyBpZnJhbWVcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIFRoZSB3ZWxjb21lIHZpZGVvIGlzIGV4cG9ydGVkIHdpdGggfjYlIGxldHRlcmJveCBiYXJzIGJha2VkIGludG8gdGhlIGZpbGUgYXRcclxuICAgdG9wIGFuZCBib3R0b20uIFNjYWxpbmcgdGhlIGlmcmFtZSBzbGlnaHRseSBjcm9wcyB0aG9zZSBiYXJzIHZpYSB0aGUgcGFyZW50J3NcclxuICAgb3ZlcmZsb3c6aGlkZGVuIGR1cmluZyBwbGF5YmFjay4gTm90ZTogdGhpcyBkb2VzIG5vdCBhZmZlY3QgWW91VHViZSdzXHJcbiAgIHByZS1wbGF5IGNocm9tZSAodGl0bGUgYmFyICsgXCJXYXRjaCBvbiBZb3VUdWJlXCIgYnJhbmRpbmcpIHdoaWNoIGlzIHJlbmRlcmVkXHJcbiAgIGJ5IFlvdVR1YmUgaW5zaWRlIHRoZSBpZnJhbWUgYW5kIG5vdCBsZXR0ZXJib3ggb2YgdGhlIHNvdXJjZSB2aWRlby5cclxuICAgTG9uZy10ZXJtIGZpeCBpcyB0byByZS1leHBvcnQgdGhlIHZpZGVvIHdpdGhvdXQgdGhlIGxldHRlcmJveCwgb3IgdG9cclxuICAgbGF6eS1sb2FkIHdpdGggYSBjdXN0b20gcG9zdGVyIGltYWdlIGFuZCBwbGF5IG92ZXJsYXkuICovXHJcbi5xdWlja3N0YXJ0LXdlbGNvbWUtdmlkZW8gaWZyYW1lIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNCk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG59XHJcblxyXG4vKiBCcmFuZGVkIGZyYW1lIGFyb3VuZCB0aGUgcGxheWVyLCBzaGFyZWQgYnkgdGhlIHdlbGNvbWUgZmx5b3V0IGFuZCB0aGVcclxuICAgaGVscC1wYWdlIHZpZGVvIHRhYi4gKi9cclxuLnF1aWNrc3RhcnQtdmlkZW8tZnJhbWUge1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxufVxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVTRVQgUEFTU1dPUkQgRkxZT1VUIC0gQnVsayBwYXNzd29yZCBtYW5hZ2VtZW50XHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBNYWluIGZseW91dCBjb250YWluZXIgKi9cclxuLnJlc2V0LXBhc3N3b3JkLWZseW91dCB7XHJcbiAgICAuYnVsay1hY3Rpb25zIC5idG4tZ3JvdXAgLmJ0bixcclxuICAgIC5wYXNzd29yZC10eXBlLXRvZ2dsZSAuYnRuLWdyb3VwIC5idG4ge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0dWRlbnQtcGFzc3dvcmQtbGlzdCB7XHJcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdHVkZW50LXBhc3N3b3JkLWl0ZW0ge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJzLWdyYXktMTAwKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblxyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBTdHVkZW50IGhlYWRlclxyXG4uc3R1ZGVudC1oZWFkZXIgLnN0dWRlbnQtYXZhdGFyIHtcclxuICAgIHdpZHRoOiA0MHB4O1xyXG4gICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icy1ncmF5LTMwMCk7XHJcbn1cclxuXHJcblxyXG4vKiBIaWRlIG5hdGl2ZSBicm93c2VyIHBhc3N3b3JkIHJldmVhbCBidXR0b24gdG8gcHJldmVudCBkb3VibGUgdG9nZ2xlICovXHJcbi5ydXAtcGFzc3dvcmQtaW5wdXQgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOjotbXMtcmV2ZWFsLFxyXG4ucnVwLXBhc3N3b3JkLWlucHV0IGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXTo6LXdlYmtpdC1jcmVkZW50aWFscy1hdXRvLWZpbGwtYnV0dG9uIHtcclxuICAgIGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8vIFBob3RvIHNlbGVjdGlvbiBncmlkIChzaGFyZWQgUnVwUGFzc3dvcmRJbnB1dCBjb21wb25lbnQpXHJcbi5wb3J0YWwtcGFzc3dvcmQgLnJ1cC1wYXNzd29yZC1waG90b3Mge1xyXG4gICAgcGFkZGluZzogMC41cmVtO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnMtZ3JheS0yMDApO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgZ2FwOiAwLjI1cmVtO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcclxuXHJcbiAgICAucnVwLXBhc3N3b3JkLXBob3RvIHtcclxuICAgICAgICAtLXRpbGUtc2l6ZTogY2xhbXAoMzZweCwgOHZ3LCA0OHB4KTtcclxuXHJcbiAgICAgICAgd2lkdGg6IHZhcigtLXRpbGUtc2l6ZSk7XHJcbiAgICAgICAgaGVpZ2h0OiB2YXIoLS10aWxlLXNpemUpO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgIGZsZXgtZ3JvdzogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBlYXNlLCBib3gtc2hhZG93IDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xyXG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBhc3BlY3QtcmF0aW86IDE7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuXHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjk1KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAzcHggdmFyKC0tc2hhZG93LW1kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLXRleHQtZGFyayk7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS1mb2N1cy1yaW5nLWRhcmspO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBQb3J0YWwgdG9nZ2xlIGJ1dHRvbiBzdHlsaW5nICh1c2VzIEVtYmVyIGdyYWRpZW50KVxyXG4ucG9ydGFsLXBhc3N3b3JkIC5ydXAtdG9nZ2xlLWJ0biB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ncmFkaWVudC1lbmQpO1xyXG4gICAgY29sb3I6IHZhcigtLWdyYWRpZW50LWVuZCk7XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxufVxyXG5cclxuLy8gUGFzc3dvcmQgdHlwZSB0b2dnbGUgYnV0dG9ucyAtIGJvdGggc2FtZSBzdHlsZSB3aXRoIGhvdmVyIGVmZmVjdFxyXG4ucGFzc3dvcmQtdHlwZS10b2dnbGUgLmJ0bi1ncm91cCAuYnRuIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcblxyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLW92ZXJsYXktbGlnaHQpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgJjpob3Zlcjo6YmVmb3JlIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlOjpiZWZvcmUge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXNoYWRvdy1tZCk7XHJcbiAgICAgICAgb3BhY2l0eTogMTtcclxuICAgIH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUkVTUE9OU0lWRSBBREpVU1RNRU5UUyAtIEJvb3RzdHJhcCBicmVha3BvaW50c1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogU21hbGwgZGV2aWNlcyAobGFuZHNjYXBlIHBob25lcywgPCA3NjhweCkgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAucmVzZXQtcGFzc3dvcmQtZmx5b3V0IHtcclxuICAgICAgICAuc3R1ZGVudC1wYXNzd29yZC1pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0dWRlbnQtaGVhZGVyIC5zdHVkZW50LWF2YXRhciB7XHJcbiAgICAgICAgd2lkdGg6IDM2cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBFeHRyYSBzbWFsbCBkZXZpY2VzIChwb3J0cmFpdCBwaG9uZXMsIDwgNTc2cHgpICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgLnJlc2V0LXBhc3N3b3JkLWZseW91dCB7XHJcbiAgICAgICAgLnN0dWRlbnQtcGFzc3dvcmQtbGlzdCB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3R1ZGVudC1wYXNzd29yZC1pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMC42MjVyZW07XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnN0dWRlbnQtaGVhZGVyIC5zdHVkZW50LWF2YXRhciB7XHJcbiAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5wYXNzd29yZC1yZXF1aXJlbWVudHMge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLXhzO1xyXG4gICAgfVxyXG59XHJcbiIsIkB1c2UgXCJ0eXBvZ3JhcGh5LXRva2Vuc1wiIGFzICo7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBNQU5BR0UgUElOTkVEIEdST1VQUyBGTFlPVVQgLSBEcmFnLXRvLXJlb3JkZXIgKyBwaW4gdG9nZ2xlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm1hbmFnZS1waW5uZWQtZ3JvdXBzLWxpc3Qge1xyXG4gICAgLm1hbmFnZS1waW5uZWQtZ3JvdXBzLWl0ZW0ge1xyXG4gICAgICAgIGN1cnNvcjogZ3JhYjtcclxuXHJcbiAgICAgICAgJjphY3RpdmUge1xyXG4gICAgICAgICAgICBjdXJzb3I6IGdyYWJiaW5nO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubWFuYWdlLXBpbm5lZC1ncm91cHMtZHJhZy1oYW5kbGUge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgfVxyXG59XHJcbiIsIkB1c2UgXCJ0eXBvZ3JhcGh5LXRva2Vuc1wiIGFzICo7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBUQUIgRVhQQU5EIEhBTkRMRSAtIFNpZGViYXIgdG9nZ2xlIGJ1dHRvblxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLnRhYi1leHBhbmQtaGFuZGxlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIC8qIENlbnRlcmVkIHJlbGF0aXZlIHRvIHRoZSB0YWIgcGFuZWwgKC5yYXRoby10YWItdmlldyBpcyB0aGUgcG9zaXRpb24tcmVsYXRpdmUgb2Zmc2V0IHBhcmVudCkuXHJcbiAgICAgICBUaGUgbWF4KCkgZmxvb3IgKH50YWItYmFyICsgY29udGVudC1wYWRkaW5nICsgdGl0bGUtYmFyICsgaGFsZiBvZiBvbmUgd2lkZ2V0IHJvdykga2VlcHMgdGhlXHJcbiAgICAgICBoYW5kbGUgZnJvbSByaXNpbmcgYWJvdmUgdGhlIG1pZGRsZSBvZiB0aGUgdG9wbW9zdCB3aWRnZXQgcm93IHdoZW4gYSBzaG9ydCBncmlkIChlLmcuIE1pblJvdz0xKVxyXG4gICAgICAgbGVhdmVzIHRoZSB0YWIgdmlldyB0b28gY29tcGFjdCBmb3IgdGhlIDUwJSBtaWRwb2ludCB0byBjbGVhciB0aGUgdGFiIGJhci4gKi9cclxuICAgIHRvcDogbWF4KDUwJSwgMTNyZW0pO1xyXG4gICAgLyogUG9zaXRpb24gYXQgdGhlIGxlZnQgZWRnZSBvZiB0aGUgdGFiIGNvbnRlbnQgKi9cclxuICAgIGxlZnQ6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtMTAwJSwgLTUwJSk7XHJcbiAgICB6LWluZGV4OiAxMDMwO1xyXG4gICAgd2lkdGg6IHZhcigtLWZseW91dC1oYW5kbGUtd2lkdGgpO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1mbHlvdXQtaGFuZGxlLWhlaWdodCk7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG91dGxpbmU6IDA7XHJcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAyMHB4O1xyXG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMjBweDtcclxuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xyXG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XHJcbiAgICAvKiBPbmx5IGNhc3Qgc2hhZG93IHRvIHRoZSBsZWZ0L2JvdHRvbSDigJQgbm8gc2hhZG93IG9uIHRoZSByaWdodCBlZGdlIHdoZXJlIGl0IG1lZXRzIHRoZSBwYWdlICovXHJcbiAgICBib3gtc2hhZG93OiAtMC4xMjVyZW0gMC4xMjVyZW0gMC4yNXJlbSB2YXIoLS1zaGFkb3cteHMpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjk1KTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLFxyXG4gICAgJjphY3RpdmUge1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogLTAuMTI1cmVtIDAuMTI1cmVtIDAuMjVyZW0gdmFyKC0tc2hhZG93LXhzKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIG91dGxpbmU6IDA7XHJcbiAgICAgICAgYm94LXNoYWRvdzogLTAuMTI1cmVtIDAuMTI1cmVtIDAuMjVyZW0gdmFyKC0tc2hhZG93LXhzKSwgMCAwIDAgMC4yNXJlbSB2YXIoLS1mb2N1cy1yaW5nLWJyYW5kKTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qIFNpZGViYXIgYW5pbWF0aW9ucyAqL1xyXG4uc2lkZS13aWR0aCB7XHJcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjI1cyBlYXNlLCBtYXJnaW4gMC4yNXMgZWFzZSwgdHJhbnNmb3JtIDAuMjVzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBDaGV2cm9uIGljb24gaW5zaWRlIHRoZSBoYW5kbGUgKi9cclxuLnRhYi1leHBhbmQtaWNvbiB7XHJcbiAgICBjb2xvcjogaW5oZXJpdDtcclxuICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgZWFzZTtcclxufVxyXG5cclxuLyogRmxpcCBjaGV2cm9uIHdoZW4gc2lkZWJhciBpcyBjb2xsYXBzZWQgKHBvaW50cyByaWdodCA9IFwiZXhwYW5kXCIpICovXHJcbmJvZHkuc2lkZWJhci1jb2xsYXBzZWQgLnRhYi1leHBhbmQtaWNvbiB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG59XHJcblxyXG4vKiBDb2xsYXBzZWQgc2lkZWJhciBzdGF0ZSAqL1xyXG5ib2R5LnNpZGViYXItY29sbGFwc2VkIHtcclxuICAgIC8qIE9ubHkgY29sbGFwc2UgdGhlIHNpZGViYXI7IGxlYXZlIC0tcGFnZS1tYXggdW50b3VjaGVkIHNvIHRoZSBoZWFkZXInc1xyXG4gICAgICAgLnBhZ2UtY29udGFpbmVyIChsb2dvICsgc2V0dGluZ3MpIHN0YXlzIGF0IGl0cyBvcmlnaW5hbCB3aWR0aC4gTWFpblxyXG4gICAgICAgY29udGVudCBuYXR1cmFsbHkgcmVjbGFpbXMgdGhlIHNpZGViYXIgKyBnYXAgc3BhY2UuICovXHJcblxyXG4gICAgLnNpZGUtd2lkdGgge1xyXG4gICAgICAgIHdpZHRoOiAwO1xyXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFyZW0pO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBSZW1vdmUgdGhlIGdhcCB3aGVuIHNpZGViYXIgaXMgY29sbGFwc2VkICovXHJcbiAgICAubGF5b3V0LWdhcCB7XHJcbiAgICAgICAgZ2FwOiAwO1xyXG4gICAgfVxyXG5cclxuICAgIG1haW4uZmxleC1ncm93LTEge1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcclxuICAgIH1cclxuXHJcbiAgICAvKiBIYW5kbGUgcG9zaXRpb24gc3RheXMgdGhlIHNhbWUgKGF0IGxlZnQgZWRnZSBvZiB0YWIgY29udGVudCkgd2hlbiBzaWRlYmFyIGlzIGNvbGxhcHNlZCAqL1xyXG59XHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5AdXNlIFwiY29tcG9uZW50cy9fYmFzZS91dGlsaXRpZXNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgU1RVREVOVCBMT0dJTiAtIFByb2ZpbGUgYW5kIGxvZ2luIHRpbGUgZ2FsbGVyeVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogU3R1ZGVudCBsb2dpbiBjYXJkIOKAlCBubyBtYXgtaGVpZ2h0IGNhcCBzbyB0aGUgdGlsZSBncmlkIGlzIGZ1bGx5IHZpc2libGUgKi9cclxuLnN0dWRlbnQtbG9naW4tY2FyZCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLyogSG92ZXIgcHJldmlldyBiZWxvdyBncmlkICovXHJcbi5zdHVkZW50LWhvdmVyLXByZXZpZXctYm90dG9tIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgZ2FwOiAwLjc1cmVtO1xyXG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xyXG4gICAgcGFkZGluZzogMC4yNXJlbSAwLjc1cmVtO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XHJcbiAgICAgICAgcGFkZGluZzogMC43NXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLnN0dWRlbnQtaG92ZXItYXZhdGFyIHtcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMjRweCB2YXIoLS1zaGFkb3ctbWQpO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuMzQsIDEuNTYsIDAuNjQsIDEpO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgIHBpY3R1cmUge1xyXG4gICAgICAgIHdpZHRoOiA4MCU7XHJcbiAgICAgICAgaGVpZ2h0OiA4MCU7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICAgICAgYW5pbWF0aW9uOiBwb3BJbiAwLjNzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogNzBweDtcclxuICAgICAgICBoZWlnaHQ6IDcwcHg7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdHVkZW50LWhvdmVyLXBsYWNlaG9sZGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctY3JlYW0pO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHJcbiAgICAmOjpiZWZvcmUge1xyXG4gICAgICAgIGNvbnRlbnQ6ICc/JztcclxuICAgICAgICBmb250LXNpemU6ICRmcy0zeGw7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmdy1ib2xkO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5LWZhZGVkKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTN4bDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdHVkZW50LWhvdmVyLW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAkZnMtbWQ7XHJcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtZGFyayk7XHJcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xyXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xyXG4gICAgbWluLWhlaWdodDogMS41cmVtO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgICAgIG1heC13aWR0aDogMTUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFByZXZpZXcgY2FyZCB3aXRoIGVuaGFuY2VkIHN0eWxpbmcgKi9cclxuLnN0dWRlbnQtcHJldmlldy1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWNyZWFtKTtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCBib3gtc2hhZG93IDAuM3MgZWFzZTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICAgIC5jYXJkLWJvZHkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAxLjI1cmVtO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgfVxyXG5cclxuICAgIGg1IHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrKTtcclxuICAgICAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDJyZW07XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIE92ZXJyaWRlIEJvb3RzdHJhcCdzIC0tYnMtc2Vjb25kYXJ5LWNvbG9yIHNvIC50ZXh0LW11dGVkIHBpY2tzIHVwIHRoZSByaWdodCB2YWx1ZS5cclxuICAgICAgIERpcmVjdCAudGV4dC1tdXRlZCB7IGNvbG9yIH0gd29uJ3Qgd29yayDigJQgQm9vdHN0cmFwIHVzZXMgIWltcG9ydGFudCBvbiB0aGF0IHByb3BlcnR5LlxyXG4gICAgICAgU2FmZSBoZXJlOiBvbmx5IGNoaWxkIHVzaW5nIHRoaXMgdmFyaWFibGUgaXMgdGhlIGdyb3VwLW5hbWUgLnRleHQtbXV0ZWQgZWxlbWVudC4gKi9cclxuICAgIC0tYnMtc2Vjb25kYXJ5LWNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcbiAgICAudGV4dC1tdXRlZCB7XHJcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBGdWxsLXBhZ2UgbG9naW4gb3ZlcmxheSAqL1xyXG4uc3R1ZGVudC1sb2dpbi1vdmVybGF5IHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHRvcDogMDtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNyZWFtKTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgei1pbmRleDogOTk5OTtcclxuICAgIGdhcDogMS41cmVtO1xyXG4gICAgYW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlO1xyXG5cclxuICAgIC5sb2dpbi1vdmVybGF5LXRleHQge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIG1heC13aWR0aDogNDAwcHg7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLW1kO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwIDFyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgdG8ge1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFByb2ZpbGUgYXZhdGFyIHdpdGggZ3JhZGllbnQgYm9yZGVyIGFuZCBhbmltYXRlZCB0cmFuc2l0aW9uc1xyXG4gICBTY29wZWQgdG8gc3R1ZGVudCBsb2dpbiBwYWdlIHRvIGF2b2lkIG92ZXJyaWRpbmcgc2lkZWJhciBwcm9maWxlIGNhcmQgKi9cclxuLnN0dWRlbnQtaW1hZ2VzLXNlY3Rpb24gLnN0dWRlbnQtcHJvZmlsZS1hdmF0YXIsXHJcbi5zdHVkZW50LWhvdmVyLXByZXZpZXctYm90dG9tIC5zdHVkZW50LXByb2ZpbGUtYXZhdGFyIHtcclxuICAgIEBpbmNsdWRlIHJhdGhvLWF2YXRhci1ncmFkaWVudCgxMDBweCwgM3B4KTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLjM0LCAxLjU2LCAwLjY0LCAxKTtcclxuXHJcbiAgICAvKiBDb21wb25lbnQtc3BlY2lmaWMgaW1hZ2UgcG9zaXRpb25pbmcgKi9cclxuICAgIGltZyB7XHJcbiAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xyXG5cclxuICAgICAgICAmLmF2YXRhci1wcmV2aWV3LWFjdGl2ZSB7XHJcbiAgICAgICAgICAgIGFuaW1hdGlvbjogcG9wSW4gMC4zcyBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmF2YXRhci1wcmV2aWV3LXNlbGVjdGVkIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFBvcCBpbiBhbmltYXRpb24gZm9yIGhvdmVyZWQgYXZhdGFyICovXHJcbkBrZXlmcmFtZXMgcG9wSW4ge1xyXG4gICAgMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgfVxyXG4gICAgNTAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcbiAgICB9XHJcbiAgICAxMDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEltYWdlIGdhbGxlcnkgc2VjdGlvbiAqL1xyXG4uc3R1ZGVudC1pbWFnZXMtc2VjdGlvbiB7XHJcbiAgICAvKiBMb2dpbiB0aWxlIGdyaWQgLSA0IHJvd3MgeCA4IGNvbHVtbnMgKi9cclxuICAgIC5sb2dpbi10aWxlLWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOCwgMWZyKTtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg0LCAxZnIpO1xyXG4gICAgICAgIGdhcDogMC43NXJlbTtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcblxyXG4gICAgICAgIC8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xyXG4gICAgICAgICAgICBnYXA6IDAuNzVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcclxuICAgICAgICAgICAgZ2FwOiAwLjc1cmVtO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcbiAgICAgICAgICAgIGdhcDogMC43NXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIFNodWZmbGUgcGhhc2UgMSDigJQgdGlsZXMgZ2F0aGVyIHRvIGNlbnRlciAqL1xyXG4gICAgICAgICYuc2h1ZmZsaW5nIC5sb2dpbi10aWxlIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKSByb3RhdGUoMTgwZGVnKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5IDAuMjVzIGVhc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBTaHVmZmxlIHBoYXNlIDIg4oCUIHRpbGVzIHNwcmVhZCBmcm9tIGNlbnRlciB0byBuZXcgcG9zaXRpb25zICovXHJcbiAgICAgICAgJi5zcHJlYWRpbmcgLmxvZ2luLXRpbGUge1xyXG4gICAgICAgICAgICBhbmltYXRpb246IHRpbGUtc3ByZWFkLWluIDAuNHMgY3ViaWMtYmV6aWVyKDAuMzQsIDEuNTYsIDAuNjQsIDEpIGJvdGg7XHJcblxyXG4gICAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMyIHtcclxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKCN7JGl9KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAjeyRpICogMTV9bXM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogTG9naW4gdGlsZXMgLSBlbmhhbmNlZCB3aXRoIDNEIHRpbHQgYW5kIHBsYXlmdWwgZWZmZWN0cyAqL1xyXG4gICAgLmxvZ2luLXRpbGUge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGFzcGVjdC1yYXRpbzogMTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjM1cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggdmFyKC0tc2hhZG93LW1kKTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcclxuICAgICAgICBwZXJzcGVjdGl2ZTogMTAwMHB4O1xyXG5cclxuICAgICAgICAvKiBTdWJ0bGUgc2hpbmUgZWZmZWN0ICovXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICByaWdodDogMDtcclxuICAgICAgICAgICAgYm90dG9tOiAwO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1vdmVybGF5LWxpZ2h0KSAwJSwgdHJhbnNwYXJlbnQgNjAlKTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjM1cyBlYXNlO1xyXG4gICAgICAgICAgICB6LWluZGV4OiAxO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8qIEdsb3cgZWZmZWN0IG9uIGhvdmVyICovXHJcbiAgICAgICAgJjo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBpbnNldDogLTVweDtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBjZW50ZXIsIHZhcigtLWdsb3ctYnJhbmQtbGcpLCB0cmFuc3BhcmVudCA3MCUpO1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGVhc2U7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogM0QgdGlsdCBob3ZlciBlZmZlY3QgKi9cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHJvdGF0ZVgoNWRlZykgcm90YXRlWSg1ZGVnKSBzY2FsZSgxLjA4KTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxNnB4IDQwcHggdmFyKC0tc2hhZG93LTN4bCk7XHJcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC00cHgpIHJvdGF0ZVgoMmRlZykgcm90YXRlWSgyZGVnKSBzY2FsZSgxLjA0KTtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMjRweCB2YXIoLS1zaGFkb3ctbGcpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgb3V0bGluZTogM3B4IHNvbGlkIHZhcigtLWZvY3VzLXJpbmctYnJhbmQpO1xyXG4gICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogM3B4O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogV3JvbmcgdGlsZSDigJQgc2hha2UgKyByZWQgYm9yZGVyLCBhdXRvLWNsZWFycyBhZnRlciA2MDBtcyAqL1xyXG4gICAgICAgICYud3Jvbmcge1xyXG4gICAgICAgICAgICBhbmltYXRpb246IHRpbGUtc2hha2UgMC40cyBlYXNlO1xyXG4gICAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1icy1kYW5nZXIpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTZweCByZ2JhKDIyMCwgNTMsIDY5LCAwLjQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAubG9naW4tdGlsZS1pbWcsXHJcbiAgICAubG9naW4tdGlsZSBwaWN0dXJlIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMzVzIGVhc2U7XHJcblxyXG4gICAgICAgIC5sb2dpbi10aWxlOmhvdmVyICYge1xyXG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuXHJcbi8qIENvb2xkb3duIHpvbmUg4oCUIHNob3duIGFmdGVyIG1heCBmYWlsZWQgYXR0ZW1wdHMgKi9cclxuLnN0dWRlbnQtY29vbGRvd24tem9uZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIG1pbi1oZWlnaHQ6IDQwMHB4O1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDI4MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3R1ZGVudC1jb29sZG93bi1vd2wge1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3R1ZGVudC1jb29sZG93bi1kb3Qge1xyXG4gICAgd2lkdGg6IDE0cHg7XHJcbiAgICBoZWlnaHQ6IDE0cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MgZWFzZTtcclxuXHJcbiAgICAmLnVzZWQge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLWRhbmdlcik7XHJcbiAgICB9XHJcblxyXG4gICAgJi5hdmFpbGFibGUge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXN0YXR1cy13YXJuaW5nLW9yYW5nZSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdHVkZW50LWNvb2xkb3duLXByb2dyZXNzIHtcclxuICAgIG1heC13aWR0aDogMzAwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHJcbiAgICAucHJvZ3Jlc3MtYmFyIHtcclxuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAxcyBsaW5lYXIsIGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBXYXJuaW5nIHBpbGwg4oCUIHNob3duIGFib3ZlIGdyaWQgb24gMm5kIGZhaWxlZCBhdHRlbXB0ICovXHJcbi5zdHVkZW50LXdhcm5pbmctcGlsbCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NSwgMTY2LCAzNSwgMC4xNSk7XHJcbiAgICBjb2xvcjogI2I0N2EwMDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ1LCAxNjYsIDM1LCAwLjQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMnJlbTtcclxuICAgIHBhZGRpbmc6IDAuMzVyZW0gMXJlbTtcclxuICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcclxuICAgIGFuaW1hdGlvbjogcGlsbC1mYWRlLWluIDAuM3MgZWFzZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBwaWxsLWZhZGUtaW4ge1xyXG4gICAgZnJvbSB7IG9wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsgfVxyXG4gICAgdG8gICB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxyXG59XHJcblxyXG4vKiBTaGFrZSBhbmltYXRpb24gZm9yIHdyb25nIHRpbGUgKi9cclxuQGtleWZyYW1lcyB0aWxlLXNoYWtlIHtcclxuICAgIDAlLCAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XHJcbiAgICAxNSUgICAgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGUoLTJkZWcpOyB9XHJcbiAgICAzMCUgICAgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZSgxLjVkZWcpOyB9XHJcbiAgICA0NSUgICAgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNHB4KSByb3RhdGUoLTFkZWcpOyB9XHJcbiAgICA2MCUgICAgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpIHJvdGF0ZSgwLjVkZWcpOyB9XHJcbiAgICA3NSUgICAgICB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMnB4KTsgfVxyXG59XHJcblxyXG4vKiBTcHJlYWQtaW4gYW5pbWF0aW9uIOKAlCB0aWxlcyBwb3AgaW4gZnJvbSBjZW50ZXIgYWZ0ZXIgc2h1ZmZsZSAqL1xyXG5Aa2V5ZnJhbWVzIHRpbGUtc3ByZWFkLWluIHtcclxuICAgIDAlICAgeyB0cmFuc2Zvcm06IHNjYWxlKDApIHJvdGF0ZSgtOTBkZWcpOyBvcGFjaXR5OiAwOyB9XHJcbiAgICA2MCUgIHsgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KSByb3RhdGUoMmRlZyk7IG9wYWNpdHk6IDE7IH1cclxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTsgb3BhY2l0eTogMTsgfVxyXG59XHJcblxyXG4vKiBFYXN0ZXIgZWdnIOKAlCAzRCBmbGlwIG9uIHByb2ZpbGUgYXZhdGFyIHZpYSBodG1sLmF2YXRhci1mbGlwcGVkICovXHJcbmh0bWwuYXZhdGFyLWZsaXBwZWQgLnN0dWRlbnQtcHJvZmlsZS1hdmF0YXIge1xyXG4gICAgdHJhbnNmb3JtOiByb3RhdGVZKDE4MGRlZyk7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSk7XHJcbn1cclxuXHJcbi5zdHVkZW50LXByZXZpZXctY2FyZCAuc3R1ZGVudC1wcm9maWxlLWF2YXRhciB7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBjdWJpYy1iZXppZXIoMC4zNCwgMS41NiwgMC42NCwgMSk7XHJcbn1cclxuIiwiQHVzZSBcInR5cG9ncmFwaHktdG9rZW5zXCIgYXMgKjtcclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEdST1VQIFNFTEVDVCBQQUdFIC0gVGlsZSBncmlkIHN0eWxlcyB1c2luZyBDU1MgdmFyaWFibGVzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBQYWdlIHdyYXBwZXIgdG8gb3ZlcnJpZGUgbGF5b3V0IGJhY2tncm91bmQgKi9cclxuLmdyb3VwLXNlbGVjdC1wYWdlLXdyYXBwZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgbGVmdDogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctY3JlYW0pO1xyXG4gICAgei1pbmRleDogMDtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMlKTsgICAgICAgICAgICAgLyogQ2VudGVyIG93bCBncmlkIHZpc3VhbGx5IG9uIHZpZXdwb3J0ICovXHJcbn1cclxuXHJcbi8qIENvbnRlbnQgd3JhcHBlciB0byByZWR1Y2UgbWFyZ2lucyAqL1xyXG4uZ3JvdXAtc2VsZWN0LWNvbnRlbnQtd3JhcHBlciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgbWF4LXdpZHRoOiAxMjgwcHg7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG4gICAgcGFkZGluZzogMCAxcmVtO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMnJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLyogRW5oYW5jZWQgY2FyZCBzdHlsaW5nICovXHJcbi5ncm91cC1zZWxlY3QtY2FyZCB7XHJcbiAgICAtLWNhcmQtaGVpZ2h0OiA1ODBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk4KTtcclxuICAgIHBhZGRpbmc6IDEuNXJlbSAycmVtO1xyXG4gICAgbWluLWhlaWdodDogdmFyKC0tY2FyZC1oZWlnaHQpO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIC0tY2FyZC1oZWlnaHQ6IDQ1MHB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgIC0tY2FyZC1oZWlnaHQ6IDYwMHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICAtLWNhcmQtaGVpZ2h0OiA2MjBweDtcclxuICAgIH1cclxufVxyXG5cclxuLyogQW5pbWF0ZWQgb3dsIGJhY2tncm91bmQgcGF0dGVybiAqL1xyXG5Aa2V5ZnJhbWVzIGZsb2F0LW93bHMge1xyXG4gICAgMCUsIDEwMCUge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKSByb3RhdGUodmFyKC0tcm90YXRpb24sIDBkZWcpKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC04cHgpIHJvdGF0ZSh2YXIoLS1yb3RhdGlvbiwgMGRlZykpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBUaWxlZCBvd2wgcGF0dGVybiBncmlkICovXHJcbi5ncm91cC1zZWxlY3QtYmFja2dyb3VuZC1vd2wge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgaGVpZ2h0OiAxMDBweDtcclxuICAgIGJhY2tncm91bmQtc2l6ZTogNzAlO1xyXG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgIG9wYWNpdHk6IDAuMDU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIHotaW5kZXg6IDA7XHJcbiAgICBhbmltYXRpb246IGZsb2F0LW93bHMgNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcblxyXG4gICAgLyogQ3JlYXRlIGdyaWQgcG9zaXRpb25zIC0gOCBjb2x1bW5zIHggNiByb3dzICovXHJcbiAgICAmLm93bC0xIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1ib29rLndlYnAnKTsgdG9wOiAwOyBsZWZ0OiAwOyAtLXJvdGF0aW9uOiAtOGRlZzsgYW5pbWF0aW9uLWRlbGF5OiAwczsgfVxyXG4gICAgJi5vd2wtMiB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtbXVzaWMud2VicCcpOyB0b3A6IDA7IGxlZnQ6IDEyLjUlOyAtLXJvdGF0aW9uOiA1ZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuM3M7IH1cclxuICAgICYub3dsLTMgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXBlbmNpbC53ZWJwJyk7IHRvcDogMDsgbGVmdDogMjUlOyAtLXJvdGF0aW9uOiAtMTJkZWc7IGFuaW1hdGlvbi1kZWxheTogMC42czsgfVxyXG4gICAgJi5vd2wtNCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtc29jY2VyLndlYnAnKTsgdG9wOiAwOyBsZWZ0OiAzNy41JTsgLS1yb3RhdGlvbjogMTBkZWc7IGFuaW1hdGlvbi1kZWxheTogMC45czsgfVxyXG4gICAgJi5vd2wtNSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtYmljeWNsZS53ZWJwJyk7IHRvcDogMDsgbGVmdDogNTAlOyAtLXJvdGF0aW9uOiAtNWRlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjJzOyB9XHJcbiAgICAmLm93bC02IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1wbGF5LndlYnAnKTsgdG9wOiAwOyBsZWZ0OiA2Mi41JTsgLS1yb3RhdGlvbjogOGRlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjVzOyB9XHJcbiAgICAmLm93bC03IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1sdW5jaC53ZWJwJyk7IHRvcDogMDsgbGVmdDogNzUlOyAtLXJvdGF0aW9uOiAtMTBkZWc7IGFuaW1hdGlvbi1kZWxheTogMS44czsgfVxyXG4gICAgJi5vd2wtOCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtbGFwdG9wLndlYnAnKTsgdG9wOiAwOyBsZWZ0OiA4Ny41JTsgLS1yb3RhdGlvbjogNmRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjFzOyB9XHJcblxyXG4gICAgJi5vd2wtOSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtY2FtcC53ZWJwJyk7IHRvcDogMTYuNjYlOyBsZWZ0OiAwOyAtLXJvdGF0aW9uOiA3ZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuNHM7IH1cclxuICAgICYub3dsLTEwIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1nYXJkZW4ud2VicCcpOyB0b3A6IDE2LjY2JTsgbGVmdDogMTIuNSU7IC0tcm90YXRpb246IC05ZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuN3M7IH1cclxuICAgICYub3dsLTExIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1yb3BlLndlYnAnKTsgdG9wOiAxNi42NiU7IGxlZnQ6IDI1JTsgLS1yb3RhdGlvbjogMTFkZWc7IGFuaW1hdGlvbi1kZWxheTogMXM7IH1cclxuICAgICYub3dsLTEyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1zYWlsLndlYnAnKTsgdG9wOiAxNi42NiU7IGxlZnQ6IDM3LjUlOyAtLXJvdGF0aW9uOiAtNmRlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjNzOyB9XHJcbiAgICAmLm93bC0xMyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtc2thdGUud2VicCcpOyB0b3A6IDE2LjY2JTsgbGVmdDogNTAlOyAtLXJvdGF0aW9uOiA5ZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuNnM7IH1cclxuICAgICYub3dsLTE0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1zbm93bWFuLndlYnAnKTsgdG9wOiAxNi42NiU7IGxlZnQ6IDYyLjUlOyAtLXJvdGF0aW9uOiAtN2RlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjlzOyB9XHJcbiAgICAmLm93bC0xNSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtd2Fsay53ZWJwJyk7IHRvcDogMTYuNjYlOyBsZWZ0OiA3NSU7IC0tcm90YXRpb246IDhkZWc7IGFuaW1hdGlvbi1kZWxheTogMi4yczsgfVxyXG4gICAgJi5vd2wtMTYgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLWJvb2sud2VicCcpOyB0b3A6IDE2LjY2JTsgbGVmdDogODcuNSU7IC0tcm90YXRpb246IC0xMWRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjVzOyB9XHJcblxyXG4gICAgJi5vd2wtMTcgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLW11c2ljLndlYnAnKTsgdG9wOiAzMy4zMyU7IGxlZnQ6IDA7IC0tcm90YXRpb246IDEwZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuNXM7IH1cclxuICAgICYub3dsLTE4IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1wZW5jaWwud2VicCcpOyB0b3A6IDMzLjMzJTsgbGVmdDogMTIuNSU7IC0tcm90YXRpb246IC04ZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuOHM7IH1cclxuICAgICYub3dsLTE5IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1zb2NjZXIud2VicCcpOyB0b3A6IDMzLjMzJTsgbGVmdDogMjUlOyAtLXJvdGF0aW9uOiA2ZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuMXM7IH1cclxuICAgICYub3dsLTIwIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1iaWN5Y2xlLndlYnAnKTsgdG9wOiAzMy4zMyU7IGxlZnQ6IDM3LjUlOyAtLXJvdGF0aW9uOiAtMTJkZWc7IGFuaW1hdGlvbi1kZWxheTogMS40czsgfVxyXG4gICAgJi5vd2wtMjEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXBsYXkud2VicCcpOyB0b3A6IDMzLjMzJTsgbGVmdDogNTAlOyAtLXJvdGF0aW9uOiA5ZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuN3M7IH1cclxuICAgICYub3dsLTIyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1sdW5jaC53ZWJwJyk7IHRvcDogMzMuMzMlOyBsZWZ0OiA2Mi41JTsgLS1yb3RhdGlvbjogLTdkZWc7IGFuaW1hdGlvbi1kZWxheTogMnM7IH1cclxuICAgICYub3dsLTIzIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1sYXB0b3Aud2VicCcpOyB0b3A6IDMzLjMzJTsgbGVmdDogNzUlOyAtLXJvdGF0aW9uOiAxMWRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjNzOyB9XHJcbiAgICAmLm93bC0yNCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtY2FtcC53ZWJwJyk7IHRvcDogMzMuMzMlOyBsZWZ0OiA4Ny41JTsgLS1yb3RhdGlvbjogLTlkZWc7IGFuaW1hdGlvbi1kZWxheTogMi42czsgfVxyXG5cclxuICAgICYub3dsLTI1IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1nYXJkZW4ud2VicCcpOyB0b3A6IDUwJTsgbGVmdDogMDsgLS1yb3RhdGlvbjogLTEwZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuNnM7IH1cclxuICAgICYub3dsLTI2IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1yb3BlLndlYnAnKTsgdG9wOiA1MCU7IGxlZnQ6IDEyLjUlOyAtLXJvdGF0aW9uOiA4ZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuOXM7IH1cclxuICAgICYub3dsLTI3IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1zYWlsLndlYnAnKTsgdG9wOiA1MCU7IGxlZnQ6IDI1JTsgLS1yb3RhdGlvbjogLTZkZWc7IGFuaW1hdGlvbi1kZWxheTogMS4yczsgfVxyXG4gICAgJi5vd2wtMjggeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXNrYXRlLndlYnAnKTsgdG9wOiA1MCU7IGxlZnQ6IDM3LjUlOyAtLXJvdGF0aW9uOiAxMmRlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjVzOyB9XHJcbiAgICAmLm93bC0yOSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtc25vd21hbi53ZWJwJyk7IHRvcDogNTAlOyBsZWZ0OiA1MCU7IC0tcm90YXRpb246IC04ZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuOHM7IH1cclxuICAgICYub3dsLTMwIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC13YWxrLndlYnAnKTsgdG9wOiA1MCU7IGxlZnQ6IDYyLjUlOyAtLXJvdGF0aW9uOiA3ZGVnOyBhbmltYXRpb24tZGVsYXk6IDIuMXM7IH1cclxuICAgICYub3dsLTMxIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1ib29rLndlYnAnKTsgdG9wOiA1MCU7IGxlZnQ6IDc1JTsgLS1yb3RhdGlvbjogLTExZGVnOyBhbmltYXRpb24tZGVsYXk6IDIuNHM7IH1cclxuICAgICYub3dsLTMyIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1tdXNpYy53ZWJwJyk7IHRvcDogNTAlOyBsZWZ0OiA4Ny41JTsgLS1yb3RhdGlvbjogOWRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjdzOyB9XHJcblxyXG4gICAgJi5vd2wtMzMgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXBlbmNpbC53ZWJwJyk7IHRvcDogNjYuNjYlOyBsZWZ0OiAwOyAtLXJvdGF0aW9uOiA2ZGVnOyBhbmltYXRpb24tZGVsYXk6IDAuN3M7IH1cclxuICAgICYub3dsLTM0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1zb2NjZXIud2VicCcpOyB0b3A6IDY2LjY2JTsgbGVmdDogMTIuNSU7IC0tcm90YXRpb246IC05ZGVnOyBhbmltYXRpb24tZGVsYXk6IDFzOyB9XHJcbiAgICAmLm93bC0zNSB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtYmljeWNsZS53ZWJwJyk7IHRvcDogNjYuNjYlOyBsZWZ0OiAyNSU7IC0tcm90YXRpb246IDExZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuM3M7IH1cclxuICAgICYub3dsLTM2IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1wbGF5LndlYnAnKTsgdG9wOiA2Ni42NiU7IGxlZnQ6IDM3LjUlOyAtLXJvdGF0aW9uOiAtN2RlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjZzOyB9XHJcbiAgICAmLm93bC0zNyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtbHVuY2gud2VicCcpOyB0b3A6IDY2LjY2JTsgbGVmdDogNTAlOyAtLXJvdGF0aW9uOiAxMGRlZzsgYW5pbWF0aW9uLWRlbGF5OiAxLjlzOyB9XHJcbiAgICAmLm93bC0zOCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtbGFwdG9wLndlYnAnKTsgdG9wOiA2Ni42NiU7IGxlZnQ6IDYyLjUlOyAtLXJvdGF0aW9uOiAtMTJkZWc7IGFuaW1hdGlvbi1kZWxheTogMi4yczsgfVxyXG4gICAgJi5vd2wtMzkgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLWNhbXAud2VicCcpOyB0b3A6IDY2LjY2JTsgbGVmdDogNzUlOyAtLXJvdGF0aW9uOiA4ZGVnOyBhbmltYXRpb24tZGVsYXk6IDIuNXM7IH1cclxuICAgICYub3dsLTQwIHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1nYXJkZW4ud2VicCcpOyB0b3A6IDY2LjY2JTsgbGVmdDogODcuNSU7IC0tcm90YXRpb246IC0xMGRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjhzOyB9XHJcblxyXG4gICAgJi5vd2wtNDEgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXJvcGUud2VicCcpOyB0b3A6IDgzLjMzJTsgbGVmdDogMDsgLS1yb3RhdGlvbjogLThkZWc7IGFuaW1hdGlvbi1kZWxheTogMC44czsgfVxyXG4gICAgJi5vd2wtNDIgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXNhaWwud2VicCcpOyB0b3A6IDgzLjMzJTsgbGVmdDogMTIuNSU7IC0tcm90YXRpb246IDlkZWc7IGFuaW1hdGlvbi1kZWxheTogMS4xczsgfVxyXG4gICAgJi5vd2wtNDMgeyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvbG9naW4vb3dsLXNrYXRlLndlYnAnKTsgdG9wOiA4My4zMyU7IGxlZnQ6IDI1JTsgLS1yb3RhdGlvbjogLTExZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuNHM7IH1cclxuICAgICYub3dsLTQ0IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1zbm93bWFuLndlYnAnKTsgdG9wOiA4My4zMyU7IGxlZnQ6IDM3LjUlOyAtLXJvdGF0aW9uOiA3ZGVnOyBhbmltYXRpb24tZGVsYXk6IDEuN3M7IH1cclxuICAgICYub3dsLTQ1IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC13YWxrLndlYnAnKTsgdG9wOiA4My4zMyU7IGxlZnQ6IDUwJTsgLS1yb3RhdGlvbjogLTlkZWc7IGFuaW1hdGlvbi1kZWxheTogMnM7IH1cclxuICAgICYub3dsLTQ2IHsgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2xvZ2luL293bC1ib29rLndlYnAnKTsgdG9wOiA4My4zMyU7IGxlZnQ6IDYyLjUlOyAtLXJvdGF0aW9uOiAxMmRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjNzOyB9XHJcbiAgICAmLm93bC00NyB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtbXVzaWMud2VicCcpOyB0b3A6IDgzLjMzJTsgbGVmdDogNzUlOyAtLXJvdGF0aW9uOiAtNmRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjZzOyB9XHJcbiAgICAmLm93bC00OCB7IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9sb2dpbi9vd2wtcGVuY2lsLndlYnAnKTsgdG9wOiA4My4zMyU7IGxlZnQ6IDg3LjUlOyAtLXJvdGF0aW9uOiAxMGRlZzsgYW5pbWF0aW9uLWRlbGF5OiAyLjlzOyB9XHJcblxyXG4gICAgLyogUmVzcG9uc2l2ZSBzaXppbmcgKi9cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIHdpZHRoOiA4MHB4O1xyXG4gICAgICAgIGhlaWdodDogODBweDtcclxuICAgICAgICBvcGFjaXR5OiAwLjA0O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcclxuICAgICAgICB3aWR0aDogMTIwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiAxMjBweDtcclxuICAgICAgICBvcGFjaXR5OiAwLjA2O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBHcmlkIGNvbnRhaW5lciB3aXRoIGltcHJvdmVkIHN0eWxpbmcgKi9cclxuLmdyb3VwLXNlbGVjdC1ncmlkLWNvbnRhaW5lciB7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICBwYWRkaW5nOiAwIDFyZW07XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyODBweCkge1xyXG4gICAgICAgIG1heC13aWR0aDogMTI4MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIENTUyBHcmlkIGZvciB0aWxlcyAqL1xyXG4uZ3JvdXAtdGlsZXMtZ3JpZCB7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcclxuICAgIGdhcDogMC43NXJlbTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC8qIDQgY29sdW1ucyBvbiBzbWFsbCBzY3JlZW5zICovXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg0LCAxZnIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIDYgY29sdW1ucyBvbiBtZWRpdW0gc2NyZWVucyAqL1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcclxuICAgICAgICBnYXA6IDFyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLyogOCBjb2x1bW5zIG9uIGxhcmdlIHNjcmVlbnMgKi9cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDgsIDFmcik7XHJcbiAgICB9XHJcblxyXG4gICAgLyogOCBjb2x1bW5zIG9uIGV4dHJhIGxhcmdlIHNjcmVlbnMgKi9cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg4LCAxZnIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBHcm91cCB0aWxlIGJhc2Ugc3R5bGVzIHdpdGggZW5oYW5jZWQgZWZmZWN0cyAqL1xyXG4uZ3JvdXAtdGlsZSB7XHJcbiAgICBhc3BlY3QtcmF0aW86IDEgLyAxO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggdmFyKC0tc2hhZG93LW1kKTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cclxuICAgIC8qIFN1YnRsZSBzaGluZSBlZmZlY3QgKi9cclxuICAgICY6OmJlZm9yZSB7XHJcbiAgICAgICAgY29udGVudDogJyc7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIHRvcDogMDtcclxuICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIHJpZ2h0OiAwO1xyXG4gICAgICAgIGJvdHRvbTogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDYwJSk7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGVhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLyogR2xvdyBlZmZlY3Qgb24gaG92ZXIgKi9cclxuICAgICY6OmFmdGVyIHtcclxuICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiAtNTAlO1xyXG4gICAgICAgIGxlZnQ6IC01MCU7XHJcbiAgICAgICAgd2lkdGg6IDIwMCU7XHJcbiAgICAgICAgaGVpZ2h0OiAyMDAlO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKSAwJSwgdHJhbnNwYXJlbnQgNzAlKTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zNXMgZWFzZTtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCkgc2NhbGUoMS4wMik7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxMnB4IDMycHggdmFyKC0tc2hhZG93LTN4bCk7XHJcblxyXG4gICAgICAgICY6OmJlZm9yZSxcclxuICAgICAgICAmOjphZnRlciB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICY6YWN0aXZlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTNweCkgc2NhbGUoMS4wMSk7XHJcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcclxuICAgIH1cclxuXHJcbiAgICAvKiBGb2N1cyBzdGF0ZSBmb3IgYWNjZXNzaWJpbGl0eSAqL1xyXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICBvdXRsaW5lOiAzcHggc29saWQgdmFyKC0tZm9jdXMtcmluZy1icmFuZCk7XHJcbiAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuLyogR3JvdXAgdGlsZSBpY29uIGNvbnRhaW5lciAoZmFsbGJhY2sgd2hlbiBubyBpbWFnZSkgKi9cclxuLmdyb3VwLXRpbGUtaWNvbiB7XHJcbiAgICB3aWR0aDogMzZweDtcclxuICAgIGhlaWdodDogMzZweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMnB4IDZweCB2YXIoLS1zaGFkb3ctc20pO1xyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcclxuXHJcbiAgICAuZ3JvdXAtdGlsZTpob3ZlciAmIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFJlc3BvbnNpdmUgc2l6aW5nICovXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDQ0cHg7XHJcbiAgICAgICAgaGVpZ2h0OiA0NHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBGYWxsYmFjayBpY29uIGluc2lkZSBjaXJjbGUgKi9cclxuLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtbWQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIERpcmVjdCBpbWFnZSBkaXNwbGF5IG9uIHRpbGUgKi9cclxuLmdyb3VwLXRpbGUtaW1hZ2Uge1xyXG4gICAgbWF4LXdpZHRoOiAzNnB4O1xyXG4gICAgbWF4LWhlaWdodDogMzZweDtcclxuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMnB4IDRweCB2YXIoLS1zaGFkb3ctbWQpKTtcclxuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XHJcblxyXG4gICAgLmdyb3VwLXRpbGU6aG92ZXIgJiB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBSZXNwb25zaXZlIHNpemluZyAqL1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0MHB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiA0NHB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDQ0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEdyb3VwIHRpbGUgbmFtZSB3aXRoIGJldHRlciB0eXBvZ3JhcGh5ICovXHJcbi5ncm91cC10aWxlLW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAkZnMtM3hzO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMXB4IDNweCB2YXIoLS1zaGFkb3ctbGcpO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaC10aWdodDtcclxuXHJcbiAgICAvKiBSZXNwb25zaXZlIHNpemluZyAqL1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtMnhzO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjM1cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtMnhzO1xyXG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjRweDtcclxuICAgIH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgQmFja2dyb3VuZCBjb2xvciBjbGFzc2VzIGFuZCBmYWxsYmFjayBpY29uIGNvbG9ycyB1c2luZyBDU1MgdmFyaWFibGVzXHJcbiAgIE5vdGU6IFwib3JhbmdlXCIgaW50ZW50aW9uYWxseSB1c2VzIHNhbWUgY29sb3IgYXMgXCJjb3JhbFwiICgjRTg5MjdDKVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogQ29yYWwgKi9cclxuLmJnLWNvcmFsLCAuQmdfY29yYWwgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncm91cC1jb3JhbCk7IH1cclxuLmdyb3VwLXRpbGUuYmctY29yYWwgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayxcclxuLmdyb3VwLXRpbGUuQmdfY29yYWwgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JvdXAtY29yYWwpO1xyXG59XHJcblxyXG4vKiBHcmF5ICovXHJcbi5iZy1ncmF5LCAuQmdfZ3JheSB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyb3VwLWdyYXkpOyB9XHJcbi5ncm91cC10aWxlLmJnLWdyYXkgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayxcclxuLmdyb3VwLXRpbGUuQmdfZ3JheSAuZ3JvdXAtdGlsZS1pY29uLWZhbGxiYWNrIHtcclxuICAgIGNvbG9yOiB2YXIoLS1ncm91cC1ncmF5KTtcclxufVxyXG5cclxuLyogVGVhbCAqL1xyXG4uYmctdGVhbCwgLkJnX3RlYWwgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncm91cC10ZWFsKTsgfVxyXG4uZ3JvdXAtdGlsZS5iZy10ZWFsIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2ssXHJcbi5ncm91cC10aWxlLkJnX3RlYWwgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JvdXAtdGVhbCk7XHJcbn1cclxuXHJcbi8qIEdyZWVuICovXHJcbi5iZy1ncmVlbiwgLkJnX2dyZWVuIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JvdXAtZ3JlZW4pOyB9XHJcbi5ncm91cC10aWxlLmJnLWdyZWVuIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2ssXHJcbi5ncm91cC10aWxlLkJnX2dyZWVuIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2sge1xyXG4gICAgY29sb3I6IHZhcigtLWdyb3VwLWdyZWVuKTtcclxufVxyXG5cclxuLyogQnJvd24gKi9cclxuLmJnLWJyb3duLCAuQmdfYnJvd24geyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncm91cC1icm93bik7IH1cclxuLmdyb3VwLXRpbGUuYmctYnJvd24gLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayxcclxuLmdyb3VwLXRpbGUuQmdfYnJvd24gLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JvdXAtYnJvd24pO1xyXG59XHJcblxyXG4vKiBPcmFuZ2UgKHVzZXMgc2FtZSBjb2xvciBhcyBjb3JhbCkgKi9cclxuLmJnLW9yYW5nZSwgLkJnX29yYW5nZSB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyb3VwLWNvcmFsKTsgfVxyXG4uZ3JvdXAtdGlsZS5iZy1vcmFuZ2UgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayxcclxuLmdyb3VwLXRpbGUuQmdfb3JhbmdlIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2sge1xyXG4gICAgY29sb3I6IHZhcigtLWdyb3VwLWNvcmFsKTtcclxufVxyXG5cclxuLyogUGluayAqL1xyXG4uYmctcGluaywgLkJnX3BpbmsgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncm91cC1waW5rKTsgfVxyXG4uZ3JvdXAtdGlsZS5iZy1waW5rIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2ssXHJcbi5ncm91cC10aWxlLkJnX3BpbmsgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JvdXAtcGluayk7XHJcbn1cclxuXHJcbi8qIFB1cnBsZSAqL1xyXG4uYmctcHVycGxlLCAuQmdfcHVycGxlIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JvdXAtcHVycGxlKTsgfVxyXG4uZ3JvdXAtdGlsZS5iZy1wdXJwbGUgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayxcclxuLmdyb3VwLXRpbGUuQmdfcHVycGxlIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2sge1xyXG4gICAgY29sb3I6IHZhcigtLWdyb3VwLXB1cnBsZSk7XHJcbn1cclxuXHJcbi8qIEJsdWUgKi9cclxuLmJnLWJsdWUsIC5CZ19ibHVlIHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JvdXAtYmx1ZSk7IH1cclxuLmdyb3VwLXRpbGUuYmctYmx1ZSAuZ3JvdXAtdGlsZS1pY29uLWZhbGxiYWNrLFxyXG4uZ3JvdXAtdGlsZS5CZ19ibHVlIC5ncm91cC10aWxlLWljb24tZmFsbGJhY2sge1xyXG4gICAgY29sb3I6IHZhcigtLWdyb3VwLWJsdWUpO1xyXG59XHJcblxyXG4vKiBOYXZ5ICovXHJcbi5iZy1uYXZ5LCAuQmdfbmF2eSB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyb3VwLW5hdnkpOyB9XHJcbi5ncm91cC10aWxlLmJnLW5hdnkgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayxcclxuLmdyb3VwLXRpbGUuQmdfbmF2eSAuZ3JvdXAtdGlsZS1pY29uLWZhbGxiYWNrIHtcclxuICAgIGNvbG9yOiB2YXIoLS1ncm91cC1uYXZ5KTtcclxufVxyXG5cclxuLyogWWVsbG93ICovXHJcbi5iZy15ZWxsb3csIC5CZ195ZWxsb3cgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncm91cC15ZWxsb3cpOyB9XHJcbi5ncm91cC10aWxlLmJnLXllbGxvdyAuZ3JvdXAtdGlsZS1pY29uLWZhbGxiYWNrLFxyXG4uZ3JvdXAtdGlsZS5CZ195ZWxsb3cgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JvdXAteWVsbG93KTtcclxufVxyXG5cclxuLyogUmVkICovXHJcbi5iZy1yZWQsIC5CZ19yZWQgeyBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncm91cC1yZWQpOyB9XHJcbi5ncm91cC10aWxlLmJnLXJlZCAuZ3JvdXAtdGlsZS1pY29uLWZhbGxiYWNrLFxyXG4uZ3JvdXAtdGlsZS5CZ19yZWQgLmdyb3VwLXRpbGUtaWNvbi1mYWxsYmFjayB7XHJcbiAgICBjb2xvcjogdmFyKC0tZ3JvdXAtcmVkKTtcclxufVxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5AdXNlIFwiY29tcG9uZW50cy9fYmFzZS91dGlsaXRpZXNcIiBhcyAqO1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgU2NyZWVuc2hvdCBWaWV3ZXIgLSBGdWxsLWZlYXR1cmVkIG92ZXJsYXkgd2l0aCB6b29tLCBwYW4sIGFuZCBoaXN0b3J5XHJcbiAgIEJvb3RzdHJhcC1maXJzdDogbGF5b3V0IHV0aWxpdGllcyBpbiByYXpvciBtYXJrdXAsIGN1c3RvbS1vbmx5IFNDU1MgaGVyZS5cclxuICAgUmVzcG9uc2l2ZSB0aWVyczogbW9iaWxlIHBvcnRyYWl0IC8gbGFuZHNjYXBlIHBob25lIC8gZGVza3RvcCAvIGxhcmdlIGRlc2t0b3BcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIOKUgOKUgCBNZWRpYSBxdWVyeSB2YXJpYWJsZXMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXHJcblxyXG4kdmlld2VyLWRlc2t0b3A6IFwiKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWluLWhlaWdodDogNTAwcHgpXCI7XHJcbiR2aWV3ZXItbGFyZ2U6IFwiKG1pbi13aWR0aDogMTIwMHB4KVwiO1xyXG4kdmlld2VyLWxhbmRzY2FwZS1waG9uZTogXCIobWF4LXdpZHRoOiA3NjdweCkgYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKVwiO1xyXG5cclxuLyog4pSA4pSAIEFuaW1hdGlvbnMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXHJcblxyXG5Aa2V5ZnJhbWVzIHZpZXdlci1mYWRlLWluIHtcclxuICAgIGZyb20geyBvcGFjaXR5OiAwOyB9XHJcbiAgICB0byAgIHsgb3BhY2l0eTogMTsgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHZpZXdlci1zbGlkZS11cCB7XHJcbiAgICBmcm9tIHsgb3BhY2l0eTogMDsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEycHgpOyB9XHJcbiAgICB0byAgIHsgb3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XHJcbn1cclxuXHJcbi8qIOKUgOKUgCBPdmVybGF5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLW92ZXJsYXkge1xyXG4gICAgaW5zZXQ6IDA7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjg1KTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbiAgICBhbmltYXRpb246IHZpZXdlci1mYWRlLWluIDAuMnMgZWFzZTtcclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBwYWRkaW5nOiAxcmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDilIDilIAgTW9kYWwgY29udGFpbmVyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLW1vZGFsIHtcclxuICAgIHdpZHRoOiAxMDB2dztcclxuICAgIGhlaWdodDogMTAwdmg7XHJcbiAgICBoZWlnaHQ6IDEwMHN2aDsgLyogc3RhYmxlIGZvciBmaXhlZCBvdmVybGF5cyDigJQgbm8gbGF5b3V0IHNoaWZ0IHdoZW4gYnJvd3NlciBjaHJvbWUgdG9nZ2xlcyAqL1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctd2hpdGUpO1xyXG4gICAgYm94LXNoYWRvdzogMCA4cHggMzJweCB2YXIoLS1zaGFkb3ctZGFyayk7XHJcbiAgICBhbmltYXRpb246IHZpZXdlci1zbGlkZS11cCAwLjI1cyBlYXNlO1xyXG5cclxuICAgIEBtZWRpYSAjeyR2aWV3ZXItZGVza3RvcH0ge1xyXG4gICAgICAgIHdpZHRoOiA5MnZ3O1xyXG4gICAgICAgIGhlaWdodDogOTB2aDtcclxuICAgICAgICBtYXgtd2lkdGg6IDE4MDBweDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICN7JHZpZXdlci1sYXJnZX0ge1xyXG4gICAgICAgIGhlaWdodDogOTJ2aDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDilIDilIAgSGVhZGVyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLWhlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG4gICAgcGFkZGluZy10b3A6IDAuMjVyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLyogQnV0dG9uIGdyb3VwcyDigJQgY2x1c3RlcmVkIGFjdGlvbnMgd2l0aCBhIHRoaW4gdmVydGljYWwgc2VwYXJhdG9yIGJldHdlZW5cclxuICAgICAgIGVhY2ggZ3JvdXAuIEdsYXNzLW9uLWNvcmFsIHN0eWxlOiB0cmFuc3BhcmVudCBidXR0b25zIHRoYXQgcGljayB1cCBhXHJcbiAgICAgICBzdWJ0bGUgd2hpdGUgd2FzaCBvbiBob3Zlciwgc29saWQgd2hpdGUgcGlsbCB3aXRoIGNvcmFsIGljb24gd2hlbiBhY3RpdmUuICovXHJcbiAgICAudmlld2VyLWgtZ3JvdXAge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAwLjI1cmVtO1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIH1cclxuXHJcbiAgICAudmlld2VyLWgtZ3JvdXAgKyAudmlld2VyLWgtZ3JvdXAsXHJcbiAgICAudmlld2VyLWgtZ3JvdXAgKyAudmlld2VyLWgtYnRuOm5vdCgudmlld2VyLWgtYnRuLS1jbG9zZSksXHJcbiAgICAudmlld2VyLWgtYnRuICsgLnZpZXdlci1oLWdyb3VwIHtcclxuICAgICAgICBtYXJnaW4tbGVmdDogMC44NzVyZW07XHJcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjg3NXJlbTtcclxuXHJcbiAgICAgICAgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICB0b3A6IDZweDtcclxuICAgICAgICAgICAgYm90dG9tOiA2cHg7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yOCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qIFBpbGwtc2hhcGVkIGhlYWRlciBidXR0b24uIFNpemVkIHNvIGEgcm93IG9mIGljb24tb25seSBwaWxscyBkb2Vzbid0XHJcbiAgICAgICBjcm93ZCB0aGUgZ3JhZGllbnQgaGVhZGVyOyBwYWRkaW5nIGlzIGdlbmVyb3VzIGVub3VnaCBmb3IgYW4gb3B0aW9uYWxcclxuICAgICAgIGxhYmVsIGxhdGVyIChpbXByZXNzaW9uJ3MgXCJjb21mb3J0YWJsZVwiIGRlbnNpdHkpLiAqL1xyXG4gICAgLnZpZXdlci1oLWJ0biB7XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDAuMzVyZW07XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1pbi13aWR0aDogMi4yNXJlbTtcclxuICAgICAgICBoZWlnaHQ6IDIuMjVyZW07XHJcbiAgICAgICAgcGFkZGluZzogMCAwLjYyNXJlbTtcclxuICAgICAgICBib3JkZXI6IDA7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xOHMgZWFzZSwgY29sb3IgMC4xOHMgZWFzZSwgYm94LXNoYWRvdyAwLjE4cyBlYXNlO1xyXG5cclxuICAgICAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE4KTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICZbZGF0YS1hY3RpdmU9XCJ0cnVlXCJdIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctd2hpdGUpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JhZGllbnQtc3RhcnQpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDJweCAwIHJnYmEoMCwgMCwgMCwgMC4wNiksIDAgNHB4IDE0cHggLTRweCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICY6ZGlzYWJsZWQge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBWYXJpYW50OiBMSVZFIGFjdGl2ZSB0dXJucyB0aGUgaWNvbiByZWNvcmRpbmctcmVkIGluc3RlYWQgb2YgY29yYWwgKi9cclxuICAgICAgICAmW2RhdGEtdmFyaWFudD1cImxpdmVcIl1bZGF0YS1hY3RpdmU9XCJ0cnVlXCJdIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy13YXJuaW5nLXJlZCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBWYXJpYW50OiBjbG9zZSBnZXRzIGEgcmVkIHdhc2ggb24gaG92ZXIgdG8gdGVsZWdyYXBoIFwiZXhpdFwiICovXHJcbiAgICAgICAgJltkYXRhLXZhcmlhbnQ9XCJjbG9zZVwiXTpob3Zlcjpub3QoOmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjEyLCA2MywgNjMsIDAuMTIpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLXdhcm5pbmctcmVkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi52aWV3ZXItcHJvZmlsZS1hdmF0YXIge1xyXG4gICAgd2lkdGg6IDI4cHg7XHJcbiAgICBoZWlnaHQ6IDI4cHg7XHJcblxyXG4gICAgQG1lZGlhICN7JHZpZXdlci1kZXNrdG9wfSB7XHJcbiAgICAgICAgd2lkdGg6IDMycHg7XHJcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBDb2xvci1jb2RlZCBsYXRlbmN5IGJhZGdlIGluIG1ldGFkYXRhIGJhci4gU3RhdGUgdGhyZXNob2xkcyBzZXQgaW4gdGhlXHJcbiAgIHJhem9yIGNvZGUtYmVoaW5kIChHZXRMYXRlbmN5U3RhdGUpLiBTb2Z0IHRpbnRlZCBiYWNrZ3JvdW5kICsgbWF0Y2hpbmcgaW5rXHJcbiAgIHNvIHRoZSB2YWx1ZSBwb3BzIHdpdGhvdXQgc2NyZWFtaW5nLiAqL1xyXG4udmlld2VyLWxhdGVuY3ktYmFkZ2Uge1xyXG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcclxuICAgIGZvbnQtc2l6ZTogMC43OGVtO1xyXG4gICAgcGFkZGluZzogMC4xNWVtIDAuNmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuXHJcbiAgICAmW2RhdGEtc3RhdGU9XCJnb29kXCJdIHtcclxuICAgICAgICBjb2xvcjogIzFCNUUyQztcclxuICAgICAgICBiYWNrZ3JvdW5kOiAjREZGM0U0O1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgJltkYXRhLXN0YXRlPVwid2FyblwiXSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy13YXJuaW5nLW9yYW5nZSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI0ZCRURENDtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG5cclxuICAgICZbZGF0YS1zdGF0ZT1cImJhZFwiXSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy13YXJuaW5nLXJlZCk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogI0ZDRTNFNjtcclxuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBGbG9hdGluZyBMSVZFIGluZGljYXRvciBvbiB0aGUgYm9keSBkdXJpbmcgbGl2ZS12aWV3LiBIaWdoLWNvbnRyYXN0IHJlZCBwaWxsXHJcbiAgIGNlbnRlcmVkIGF0IHRoZSB0b3Ag4oCUIHNhbWUgdmlzdWFsIGxhbmd1YWdlIGFzIGJyb2FkY2FzdCB0b29scywgc28gdGhlIHRlYWNoZXJcclxuICAgaW5zdGFudGx5IGtub3dzIHRoZXkncmUgaW4gYSBzZXNzaW9uIGV2ZW4gd2hlbiBzY2FubmluZyBhIHRpbGVkIHZpZXcuICovXHJcbi52aWV3ZXItbGl2ZS1iYWRnZSB7XHJcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xyXG4gICAgei1pbmRleDogMjtcclxuICAgIHBhZGRpbmc6IDVweCAxMnB4IDVweCAxMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0dXMtd2FybmluZy1yZWQpO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgZm9udC1zaXplOiAwLjcycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgYm94LXNoYWRvdzogMCA0cHggMTRweCByZ2JhKDIzOSwgNjgsIDY4LCAwLjQ1KTtcclxufVxyXG5cclxuLyogQ29tcGFjdCBpbmxpbmUgdmFyaWFudCB1c2VkIGluIHRoZSBsaXZlLW1vZGUgZm9vdGVyIG5leHQgdG8gdGhlIHN0cmVhbWluZ1xyXG4gICB0ZXh0LiBTbWFsbGVyIHBhZGRpbmcsIG5vIHNoYWRvdywgbm8gZmxvYXQgcG9zaXRpb25pbmcuICovXHJcbi52aWV3ZXItbGl2ZS1iYWRnZS0taW5saW5lIHtcclxuICAgIG1hcmdpbi10b3A6IDA7XHJcbiAgICBwYWRkaW5nOiAycHggOHB4IDJweCA2cHg7XHJcbiAgICBmb250LXNpemU6IDAuNjZyZW07XHJcbiAgICBib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4udmlld2VyLWxpdmUtcHVsc2Uge1xyXG4gICAgd2lkdGg6IDdweDtcclxuICAgIGhlaWdodDogN3B4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICBhbmltYXRpb246IHZpZXdlci1saXZlLXB1bHNlIDEuMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgdmlld2VyLWxpdmUtcHVsc2Uge1xyXG4gICAgMCUsIDEwMCUgeyBvcGFjaXR5OiAxOyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XHJcbiAgICA1MCUgeyBvcGFjaXR5OiAwLjQ7IHRyYW5zZm9ybTogc2NhbGUoMC43KTsgfVxyXG59XHJcblxyXG4vKiBJbmxpbmUgY291bnRkb3duIG5leHQgdG8gdGhlIGNhbWVyYSBpY29uLiB0YWJ1bGFyLW51bXMgKyBtaW4td2lkdGgga2VlcCB0aGVcclxuICAgYnV0dG9uIHdpZHRoIHZpc3VhbGx5IHN0YWJsZSBhcyB0aGUgdmFsdWUgc3RlcHMgc2luZ2xl4oaUZG91YmxlIGRpZ2l0LiBJbmhlcml0c1xyXG4gICBjb2xvciBmcm9tIHRoZSBwYXJlbnQgYnV0dG9uIHNvIGl0IHJlYWRzIHdoaXRlIG9uIHRoZSBjb3JhbCBpZGxlIHN0YXRlIGFuZFxyXG4gICBjb3JhbCBvbiB0aGUgd2hpdGUgYWN0aXZlIHN0YXRlLiAqL1xyXG4udmlld2VyLWNhbWVyYS1jb3VudCB7XHJcbiAgICBmb250LXNpemU6IDAuNzhlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcbiAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xyXG4gICAgbWluLXdpZHRoOiAxLjI1ZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuLyog4pSA4pSAIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBoZWxwZXJzICh3aWR0aCArIGhlaWdodCBhd2FyZSkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXHJcbi8qIEJvb3RzdHJhcCBkLW1kLSogaXMgd2lkdGgtb25seTsgdGhlc2UgcmVxdWlyZSBtaW4taGVpZ2h0OiA1MDBweCB0b28gICAgICAgICAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLS1kZXNrdG9wLW9ubHkge1xyXG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAgIEBtZWRpYSAjeyR2aWV3ZXItZGVza3RvcH0ge1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zY3JlZW5zaG90LXZpZXdlci0tZGVza3RvcC1vbmx5LWJsb2NrIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4uc2NyZWVuc2hvdC12aWV3ZXItLW1vYmlsZS1vbmx5IHtcclxuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIOKUgOKUgCBNb2JpbGUgYm90dG9tIGFjdGlvbiBiYXIg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXHJcblxyXG4uc2NyZWVuc2hvdC12aWV3ZXItYm90dG9tLWJhciB7XHJcbiAgICAuYnRuIHtcclxuICAgICAgICBtaW4td2lkdGg6IDIuNXJlbTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyLjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIOKUgOKUgCBJbmxpbmUgYWN0aW9uIGlucHV0cyAobG9jayAvIG1lc3NhZ2UpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLWFjdGlvbi1pbnB1dCB7XHJcbiAgICAuZm9ybS1jb250cm9sLXNtIHtcclxuICAgICAgICBtaW4td2lkdGg6IDA7IC8qIGFsbG93IHNocmlua2luZyBvbiBtb2JpbGUgKi9cclxuICAgIH1cclxufVxyXG5cclxuLyog4pSA4pSAIFRpbWVyIGJhZGdlIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3QtdGltZXItYmFkZ2Uge1xyXG4gICAgbWluLXdpZHRoOiAxLjVlbTtcclxuICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XHJcbn1cclxuXHJcbi8qIOKUgOKUgCBab29tIGNvbnRhaW5lciDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cclxuXHJcbi5zY3JlZW5zaG90LXpvb20tY29udGFpbmVyIHtcclxuICAgIHRyYW5zZm9ybTogc2NhbGUodmFyKC0tem9vbS1zY2FsZSwgMSkpIHRyYW5zbGF0ZSh2YXIoLS1wYW4teCwgMCksIHZhcigtLXBhbi15LCAwKSk7XHJcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcclxufVxyXG5cclxuLyog4pSA4pSAIEZ1bGxzY3JlZW4gbW9kYWwgKHNlcGFyYXRlIGZlYXR1cmUsIGtlcHQgZm9yIGJhY2t3YXJkIGNvbXBhdCkg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXHJcblxyXG4uZnVsbHNjcmVlbi1tb2RhbC1jb250YWluZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIEBpbmNsdWRlIG1vZGFsLWNvbnRhaW5lcig5MDBweCk7XHJcblxyXG4gICAgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLyog4pSA4pSAIENvbnRlbnQgcm93OiBzY3JlZW5zaG90ICsgb3B0aW9uYWwgc2lkZSBwYW5lbCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cclxuXHJcbi5zY3JlZW5zaG90LXZpZXdlci1jb250ZW50IHtcclxuICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogbW9iaWxlIGRlZmF1bHQ7IG92ZXJyaWRkZW4gdG8gcm93IGJ5IGRlc2t0b3AvbGFuZHNjYXBlIHF1ZXJpZXMgKi9cclxuICAgIG1pbi1oZWlnaHQ6IDA7XHJcblxyXG4gICAgLyogTW9iaWxlIHBvcnRyYWl0OiBwYW5lbCBiZWxvdyBzY3JlZW5zaG90LCBmbGV4IHJhdGlvcyBpbnN0ZWFkIG9mIHZoICovXHJcbiAgICAmLmhhcy1wYW5lbCAuc2NyZWVuc2hvdC12aWV3ZXItYm9keSB7XHJcbiAgICAgICAgZmxleDogMSAxIDU1JTtcclxuICAgICAgICBtaW4taGVpZ2h0OiAxMjBweDtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAgICAgICAmLmhhcy1wYW5lbCAuc2NyZWVuc2hvdC12aWV3ZXItYm9keSB7XHJcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBMYW5kc2NhcGUgcGhvbmVzOiByb3cgbGF5b3V0IGxpa2UgZGVza3RvcCAqL1xyXG4gICAgQG1lZGlhICN7JHZpZXdlci1sYW5kc2NhcGUtcGhvbmV9IHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cclxuICAgICAgICAmLmhhcy1wYW5lbCAuc2NyZWVuc2hvdC12aWV3ZXItYm9keSB7XHJcbiAgICAgICAgICAgIGZsZXg6IDAgMCA2MCU7XHJcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiDilIDilIAgU2NyZWVuc2hvdCBib2R5IOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLWJvZHkge1xyXG4gICAgZmxleDogMSAxIGF1dG87XHJcbiAgICBtaW4taGVpZ2h0OiAxNTBweDtcclxuICAgIGJhY2tncm91bmQ6ICMxYTFhMmU7XHJcbiAgICB0b3VjaC1hY3Rpb246IG5vbmU7IC8qIFByZXZlbnQgYnJvd3NlciBmcm9tIHN0ZWFsaW5nIHRvdWNoIGV2ZW50cyAoc3dpcGUsIHBpbmNoKSAqL1xyXG5cclxuICAgIC8qIE1vYmlsZTogbmF2IGFycm93cyBhbHdheXMgdmlzaWJsZSAqL1xyXG4gICAgLnNjcmVlbnNob3QtbmF2LWJ0biB7XHJcbiAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAjeyR2aWV3ZXItZGVza3RvcH0ge1xyXG4gICAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xyXG5cclxuICAgICAgICAvKiBEZXNrdG9wOiBzdWJ0bGUgYnkgZGVmYXVsdCwgdmlzaWJsZSBvbiBob3ZlciAqL1xyXG4gICAgICAgIC5zY3JlZW5zaG90LW5hdi1idG4ge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIC5zY3JlZW5zaG90LW5hdi1idG4ge1xyXG4gICAgICAgICAgICBvcGFjaXR5OiAwLjc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc2NyZWVuc2hvdC12aWV3ZXItaW1hZ2Uge1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEN1cnNvciBjbGFzc2VzIGZvciB6b29tIGludGVyYWN0aW9uICovXHJcbi5jdXJzb3Item9vbS1pbiAgeyBjdXJzb3I6IHpvb20taW47IH1cclxuLmN1cnNvci16b29tLW91dCB7IGN1cnNvcjogem9vbS1vdXQ7IH1cclxuXHJcbi8qIOKUgOKUgCBab29tIGRvY2sg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAXHJcbiAgIERpc2NvdmVyYWJsZSB6b29tIGNvbnRyb2xzIGJvdHRvbS1yaWdodCBvZiB0aGUgYm9keS4gRnJvc3RlZC1nbGFzcyBzdXJmYWNlXHJcbiAgIHNpdHMgb24gdG9wIG9mIHRoZSBzY3JlZW5zaG90IGNhbnZhczsgdGhlICUgcmVhZG91dCB1c2VzIHRhYnVsYXItbnVtcyBzb1xyXG4gICB3aWR0aCBpcyBzdGFibGUgd2hlbiBzdGVwcGluZyB0aHJvdWdoIHpvb20gbGV2ZWxzLlxyXG4gICDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cclxuXHJcbi52aWV3ZXItem9vbS1kb2NrIHtcclxuICAgIHJpZ2h0OiAwLjc1cmVtO1xyXG4gICAgYm90dG9tOiAwLjc1cmVtO1xyXG4gICAgei1pbmRleDogMTA7XHJcbiAgICBnYXA6IDJweDtcclxuICAgIHBhZGRpbmc6IDRweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDIwLCAyMiwgMjcsIDAuNjUpO1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEycHgpO1xyXG4gICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTJweCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xyXG5cclxuICAgICZfX2J0biB7XHJcbiAgICAgICAgd2lkdGg6IDI4cHg7XHJcbiAgICAgICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43KTtcclxuICAgICAgICBmb250LXNpemU6ICRmcy14cztcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xyXG5cclxuICAgICAgICAmOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuMzU7XHJcbiAgICAgICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3ZhbHVlIHtcclxuICAgICAgICBmb250LXNpemU6ICRmcy0yeHM7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmdy1tZWRpdW07XHJcbiAgICAgICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSk7XHJcbiAgICAgICAgbWluLXdpZHRoOiAzcmVtO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICBmb250LXZhcmlhbnQtbnVtZXJpYzogdGFidWxhci1udW1zO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3NlcGFyYXRvciB7XHJcbiAgICAgICAgd2lkdGg6IDFweDtcclxuICAgICAgICBoZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gICAgICAgIG1hcmdpbjogMCA0cHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIOKUgOKUgCBOYXZpZ2F0aW9uIGFycm93cyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cclxuXHJcbi5zY3JlZW5zaG90LW5hdi1idG4ge1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcbiAgICB6LWluZGV4OiAxMDtcclxuICAgIHdpZHRoOiAzNnB4O1xyXG4gICAgaGVpZ2h0OiAzNnB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tb3ZlcmxheS1kYXJrKTtcclxuICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZSwgb3BhY2l0eSAwLjJzIGVhc2U7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgxLjA1KTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgIH1cclxufVxyXG5cclxuLnNjcmVlbnNob3QtbmF2LWxlZnQge1xyXG4gICAgbGVmdDogMC41cmVtO1xyXG5cclxuICAgIEBtZWRpYSAjeyR2aWV3ZXItZGVza3RvcH0ge1xyXG4gICAgICAgIGxlZnQ6IDAuNzVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zY3JlZW5zaG90LW5hdi1yaWdodCB7XHJcbiAgICByaWdodDogMC41cmVtO1xyXG5cclxuICAgIEBtZWRpYSAjeyR2aWV3ZXItZGVza3RvcH0ge1xyXG4gICAgICAgIHJpZ2h0OiAwLjc1cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDilIDilIAgTWV0YWRhdGEgYmFyIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgCAqL1xyXG5cclxuLnNjcmVlbnNob3Qtdmlld2VyLW1ldGFkYXRhIHtcclxuICAgIHBhZGRpbmctdG9wOiAwLjEyNXJlbTtcclxuICAgIHBhZGRpbmctYm90dG9tOiAwLjEyNXJlbTtcclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XHJcbiAgICB9XHJcbn1cclxuXHJcbi52aWV3ZXItZmF2aWNvbiB7XHJcbiAgICB3aWR0aDogMTZweDtcclxuICAgIGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLyog4pSA4pSAIFRodW1ibmFpbCBzdHJpcCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cclxuXHJcbi5zY3JlZW5zaG90LXZpZXdlci10aHVtYm5haWxzIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJzLWdyYXktNTAsICNmYWZhZmEpO1xyXG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcbiAgICBwYWRkaW5nLXRvcDogMC4xMjVyZW07XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4xMjVyZW07XHJcblxyXG4gICAgQG1lZGlhICN7JHZpZXdlci1kZXNrdG9wfSB7XHJcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNXJlbTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEhpZGUgb24gbGFuZHNjYXBlIHBob25lcyB0byByZWNsYWltIHZlcnRpY2FsIHNwYWNlICovXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWxhbmRzY2FwZS1waG9uZX0ge1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgaGVpZ2h0OiA0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJzLWdyYXktNDAwKTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi52aWV3ZXItdGh1bWJuYWlsIHtcclxuICAgIHdpZHRoOiA1NnB4O1xyXG4gICAgaGVpZ2h0OiA0MnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBzY3JvbGwtc25hcC1hbGlnbjogY2VudGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgdHJhbnNmb3JtIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYnMtZ3JheS00MDApO1xyXG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wMyk7XHJcbiAgICB9XHJcblxyXG4gICAgJi5hY3RpdmUge1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JhZGllbnQtc3RhcnQpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1ncmFkaWVudC1zdGFydCk7XHJcbiAgICB9XHJcblxyXG4gICAgaW1nIHtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcclxuICAgICAgICB3aWR0aDogNjRweDtcclxuICAgICAgICBoZWlnaHQ6IDQ4cHg7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhICN7JHZpZXdlci1kZXNrdG9wfSB7XHJcbiAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiDilIDilIAgU2lkZSBwYW5lbCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIAgKi9cclxuXHJcbi8qIFBpY286IHNtYWxsIGJvcmRlcmVkIGljb24gc3F1YXJlIG5leHQgdG8gdGhlIHBhbmVsIHRpdGxlLiBBY3RzIGFzIGEgdmlzdWFsXHJcbiAgIGFuY2hvciDigJQgbWlycm9ycyB0aGUgaW1wcmVzc2lvbidzIGAucGFuZWwtaGVhZCBoMyAucGljb2AuICovXHJcbi52aWV3ZXItcGFuZWwtcGljbyB7XHJcbiAgICB3aWR0aDogMjJweDtcclxuICAgIGhlaWdodDogMjJweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xyXG4gICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4vKiBQYW5lbCBoZWFkZXIgcmVmcmVzaCBidXR0b24g4oCUIHZpc2libGUgYnkgZGVmYXVsdCwgaWNvbiArIGxhYmVsLCBzdWJ0bGVcclxuICAgYm9yZGVyICsgbGlnaHQtY3JlYW0gaG92ZXIgd2FzaCBzbyBpdCByZWFkcyBjbGVhcmx5IGFzIGFuIGFjdGlvbmFibGUgYnV0dG9uLiAqL1xyXG4udmlld2VyLXBhbmVsLXJlZnJlc2gge1xyXG4gICAgcGFkZGluZzogNHB4IDEwcHg7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWhvdmVyLWNyZWFtKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrKTtcclxuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpkaXNhYmxlZCB7XHJcbiAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zY3JlZW5zaG90LXZpZXdlci1wYW5lbCB7XHJcbiAgICBmbGV4OiAxIDEgNDUlO1xyXG4gICAgbWluLWhlaWdodDogMTAwcHg7XHJcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yLCAjZGVlMmU2KTtcclxuXHJcbiAgICBAbWVkaWEgI3skdmlld2VyLWRlc2t0b3B9IHtcclxuICAgICAgICBmbGV4OiAwIDAgY2xhbXAoMjgwcHgsIDI4JSwgNDAwcHgpO1xyXG4gICAgICAgIGJvcmRlci10b3A6IG5vbmU7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IsICNkZWUyZTYpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIExhbmRzY2FwZSBwaG9uZXM6IHNpZGUgcGFuZWwgKi9cclxuICAgIEBtZWRpYSAjeyR2aWV3ZXItbGFuZHNjYXBlLXBob25lfSB7XHJcbiAgICAgICAgZmxleDogMCAwIDQwJTtcclxuICAgICAgICBib3JkZXItdG9wOiBub25lO1xyXG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yLCAjZGVlMmU2KTtcclxuICAgIH1cclxufVxyXG5cclxuLyogQ291bnQgYmFkZ2UgbmV4dCB0byBhIHBhbmVsIHRpdGxlIChlLmcuIFwiT3BlbiB0YWJzIMK3IDVcIikuIFNvZnQgcGlsbCB3aXRoIHRoZVxyXG4gICBudW1iZXIgcmVuZGVyZWQgaW4gdGFidWxhci1udW1zIHNvIGl0IG5ldmVyIHNoaWZ0cyB3aWR0aHMuICovXHJcbi52aWV3ZXItcGFuZWwtY291bnQge1xyXG4gICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XHJcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xyXG4gICAgbWluLXdpZHRoOiAxLjRlbTtcclxuICAgIGhlaWdodDogMS40ZW07XHJcbiAgICBwYWRkaW5nOiAwIDAuNGVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG59XHJcblxyXG4vKiBUYWIgcm93OiBzb2Z0IGNyZWFtIGhvdmVyIGJhY2tncm91bmQsIGFjdGlvbnMgaGlkZGVuIGJ5IGRlZmF1bHQgYW5kIHJldmVhbGVkXHJcbiAgIG9uIGhvdmVyL2ZvY3VzLXdpdGhpbiBzbyB0aGUgdGl0bGUgZ2V0cyBmdWxsIHdpZHRoIHdoZW4gYWN0aW9ucyBhcmUgYXdheS5cclxuICAgTm8gbmVnYXRpdmUgbWFyZ2luIOKAlCBrZWVwcyB0aGUgcm93IChhbmQgaXRzIGFjdGlvbiBidXR0b25zKSBjbGVhbmx5IGluc2lkZVxyXG4gICB0aGUgcGFuZWwncyBwYWRkaW5nIHNvIG5vdGhpbmcgdmlzdWFsbHkgcG9rZXMgb3V0c2lkZSB0aGUgZmx5b3V0LiAqL1xyXG4udGFiLXJvdyB7XHJcbiAgICBwYWRkaW5nOiAwLjVyZW0gMC40cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4udGFiLXJvdzpob3ZlcixcclxuLnRhYi1yb3c6Zm9jdXMtd2l0aGluIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWhvdmVyLWNyZWFtKTtcclxufVxyXG5cclxuLnRhYi1yb3dfX2Zhdmljb24ge1xyXG4gICAgd2lkdGg6IDE4cHg7XHJcbiAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICBtYXJnaW4tdG9wOiAxcHg7XHJcbiAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcclxuICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxNnB4O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IDE2cHg7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xyXG4gICAgfVxyXG59XHJcblxyXG4udGFiLXJvd19fYWN0aW9ucyB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogMnB4O1xyXG59XHJcblxyXG4udGFiLXJvdzpob3ZlciAudGFiLXJvd19fYWN0aW9ucyxcclxuLnRhYi1yb3c6Zm9jdXMtd2l0aGluIC50YWItcm93X19hY3Rpb25zIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbn1cclxuXHJcbi8qIENvbXBhY3QgaWNvbi1vbmx5IGFjdGlvbiBidXR0b24gdXNlZCBpbnNpZGUgYSB0YWIgcm93LiBTdWJ0bGUgYnkgZGVmYXVsdCxcclxuICAgc2xpZ2h0bHkgZGFya2VyIG9uIGhvdmVyLiBEYW5nZXIgdmFyaWFudCB1c2VzIHJlZCBvbiBob3ZlciBmb3IgZGVzdHJ1Y3RpdmVcclxuICAgaW50ZW50IChjbG9zZSB0YWIpLiAqL1xyXG4udGFiLWFjdGlvbi1idG4ge1xyXG4gICAgd2lkdGg6IDI2cHg7XHJcbiAgICBoZWlnaHQ6IDI2cHg7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrKTtcclxuICAgIH1cclxuXHJcbiAgICAmOmRpc2FibGVkIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjQ7XHJcbiAgICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcclxuICAgIH1cclxuXHJcbiAgICAmLS1kYW5nZXI6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICNGQ0UzRTY7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXN0YXR1cy13YXJuaW5nLXJlZCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFJldXNhYmxlIHBhbmVsIGJ1aWxkaW5nIGJsb2NrcyDigJQgc2VjdGlvbiBoZWFkZXIgKHNtYWxsIHVwcGVyY2FzZSBsYWJlbCB3aXRoXHJcbiAgIGljb24pLCBtb25vc3BhY2UgbWV0YWRhdGEgdGV4dCwgYW5kIFVSTCB0cnVuY2F0aW9uIHN0eWxpbmcuIFVzZWQgYWNyb3NzIHRoZVxyXG4gICB0YWJzIC8gaGlzdG9yeSAvIGRpYWdub3N0aWNzIGNvbnRlbnQgY29tcG9uZW50cyBmb3IgdmlzdWFsIGNvbnNpc3RlbmN5LiAqL1xyXG4ucGFuZWwtc2VjdGlvbi1oZWFkZXIge1xyXG4gICAgZm9udC1zaXplOiAkZnMtM3hzO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcclxuICAgIHBhZGRpbmc6IDAuMjVyZW0gMDtcclxufVxyXG5cclxuLnBhbmVsLW1vbm8ge1xyXG4gICAgZm9udC1mYW1pbHk6ICdKZXRCcmFpbnMgTW9ubycsIHVpLW1vbm9zcGFjZSwgbW9ub3NwYWNlO1xyXG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcclxufVxyXG5cclxuLnBhbmVsLXVybCB7XHJcbiAgICBmb250LWZhbWlseTogJ0pldEJyYWlucyBNb25vJywgdWktbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgICBmb250LXNpemU6ICRmcy0yeHM7XHJcbn1cclxuXHJcbi8qIERpYWdub3N0aWNzIHNjb3JlIGNhcmQ6IGNpcmN1bGFyIFNWRyBwcm9ncmVzcyArIHN1bW1hcnkgbGluZS5cclxuICAgQ29sb3VyLWNvZGVkIHJpbmcgc3Ryb2tlIG1hdGNoZXMgdGhlIGxhdGVuY3ktYmFkZ2UgdGhyZXNob2xkcyBlbHNld2hlcmUuICovXHJcbi5kaWFnLXNjb3JlLWNhcmQge1xyXG4gICAgcGFkZGluZzogMC44NzVyZW07XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1wYW5lbC1jcmVhbS1hbHQpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNpZGUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxufVxyXG5cclxuLmRpYWctc2NvcmUtcmluZyB7XHJcbiAgICB3aWR0aDogNjBweDtcclxuICAgIGhlaWdodDogNjBweDtcclxufVxyXG5cclxuLmRpYWctc2NvcmUtcmluZy1iZyB7XHJcbiAgICBzdHJva2U6IHZhcigtLWJvcmRlci1zaWRlKTtcclxufVxyXG5cclxuLmRpYWctc2NvcmUtcmluZy1mZyB7XHJcbiAgICB0cmFuc2l0aW9uOiBzdHJva2UtZGFzaGFycmF5IDAuNHMgZWFzZTtcclxuXHJcbiAgICAmW2RhdGEtc3RhdGU9XCJnb29kXCJdIHsgc3Ryb2tlOiB2YXIoLS1icmFuZC1wcmltYXJ5KTsgfVxyXG4gICAgJltkYXRhLXN0YXRlPVwid2FyblwiXSB7IHN0cm9rZTogdmFyKC0tc3RhdHVzLXdhcm5pbmctb3JhbmdlKTsgfVxyXG4gICAgJltkYXRhLXN0YXRlPVwiYmFkXCJdICB7IHN0cm9rZTogdmFyKC0tc3RhdHVzLXdhcm5pbmctcmVkKTsgfVxyXG59XHJcblxyXG4uZGlhZy1zY29yZS12YWx1ZSB7XHJcbiAgICBmb250LWZhbWlseTogJ0pldEJyYWlucyBNb25vJywgdWktbW9ub3NwYWNlLCBtb25vc3BhY2U7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG59XHJcblxyXG4vKiBQYW5lbCBzY3JvbGxhYmxlIGJvZHkg4oCUIHRoaW4gc2Nyb2xsYmFyIHN0eWxpbmcgKi9cclxuLnZpZXdlci1wYW5lbC1ib2R5IHtcclxuICAgIHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuXHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgICAgICAgd2lkdGg6IDRweDtcclxuICAgIH1cclxuXHJcbiAgICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnMtZ3JheS00MDApO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDJweDtcclxuICAgIH1cclxufVxyXG5cclxuLyogTGFuZHNjYXBlIHBob25lOiBjb21wYWN0IG1ldGFkYXRhICovXHJcbkBtZWRpYSAjeyR2aWV3ZXItbGFuZHNjYXBlLXBob25lfSB7XHJcbiAgICAuc2NyZWVuc2hvdC12aWV3ZXItbWV0YWRhdGEge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjEyNXJlbTtcclxuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC4xMjVyZW07XHJcbiAgICB9XHJcbn1cclxuIiwiLy8gVHJvdWJsZXNob290aW5nIFdpemFyZCDigJQgbXVsdGktc3R1ZGVudCBkaWFnbm9zdGljcyBmbHlvdXQsIHN0eWxlZCB0byBtYXRjaFxyXG4vLyB0aGUgUG9ydGFsIGRlc2lnbiB0b2tlbnMgKGJyYW5kIGNvcmFsL29yYW5nZSwgY3JlYW0gcGFuZWxzLCBzb2Z0IGJvcmRlcnMpLlxyXG4vLyBFdmVyeXRoaW5nIGlzIHNjb3BlZCB1bmRlciAudHJvdWJsZXNob290aW5nLXdpemFyZCBzbyB0aGUgZGlhZ25vc3RpYy1jYXJkXHJcbi8vIHJ1bGVzIGNhbid0IGJsZWVkIGludG8gdGhlIHNpbXBsZXIgRGlhZ25vc3RpY3NDb250ZW50IHZpZXcuXHJcblxyXG4udHJvdWJsZXNob290aW5nLXdpemFyZCB7XHJcbiAgICAud2l6YXJkLXN0ZXAge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuMjVyZW07XHJcbiAgICAgICAgLy8gRmlsbCB0aGUgZmx5b3V0IGJvZHkgc28gdGhlIHN0dWRlbnQgZ3JpZCBjYW4gZmxleCBpbnRvIGFsbCBhdmFpbGFibGVcclxuICAgICAgICAvLyB2ZXJ0aWNhbCBzcGFjZSBpbnN0ZWFkIG9mIGJlaW5nIHRyYXBwZWQgaW4gYSA0MDBweCBib3guXHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgLy8gU3RlcCAzICguc3R1ZGVudC1kaWFnbm9zdGljcy1ncmlkKSBoYXMgbm8gaW50ZXJuYWwgc2Nyb2xsZXIsIHNvIHRoZVxyXG4gICAgICAgIC8vIHN0ZXAgaXRzZWxmIG11c3Qgc2Nyb2xsIHdoZW4gbWFueSBkaWFnbm9zdGljcyBjYXJkcyByZW5kZXIuIFN0ZXAgMSdzXHJcbiAgICAgICAgLy8gLnN0dWRlbnQtc2VsZWN0LWdyaWQgaXMgaXRzIG93biBzY3JvbGwgY29udGFpbmVyLCBzbyBpdHMgb3ZlcmZsb3dcclxuICAgICAgICAvLyBpcyBoYW5kbGVkIGluc2lkZTsgd2l6YXJkLXN0ZXAgbmV2ZXIgb3ZlcmZsb3dzIGluIHRoYXQgY2FzZS5cclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgfVxyXG5cclxuICAgIC53aXphcmQtbG9hZGluZyB7XHJcbiAgICAgICAgcGFkZGluZzogM3JlbSAxcmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIC0tLS0tLS0tLS0gU3RlcCAxIOKAlCBzdHVkZW50IHNlbGVjdGlvbiBncmlkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4gICAgLnN0dWRlbnQtc2VsZWN0LWdyaWQge1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTQwcHgsIDFmcikpO1xyXG4gICAgICAgIGdhcDogMC43NXJlbTtcclxuICAgICAgICAvLyBGaWxsIHRoZSByZW1haW5pbmcgaGVpZ2h0IGluc2lkZSAud2l6YXJkLXN0ZXAgYW5kIG9ubHkgc2Nyb2xsIHdoZW4gdGhlXHJcbiAgICAgICAgLy8gc3R1ZGVudCBjb3VudCBhY3R1YWxseSBleGNlZWRzIHRoYXQgc3BhY2Ug4oCUIG5vIGhhcmRjb2RlZCBjYXAuXHJcbiAgICAgICAgZmxleDogMSAxIGF1dG87XHJcbiAgICAgICAgbWluLWhlaWdodDogMDtcclxuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgICAgIHBhZGRpbmc6IDJweDtcclxuICAgIH1cclxuXHJcbiAgICAuc3R1ZGVudC1zZWxlY3QtY2FyZCB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNpZGUpO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCAxcHggMnB4IHZhcigtLXNoYWRvdy14cyk7XHJcblxyXG4gICAgICAgIC53aGl0ZV9jaGVja2JveCB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwLjVyZW07XHJcbiAgICAgICAgICAgIHJpZ2h0OiAwLjVyZW07XHJcbiAgICAgICAgICAgIHdpZHRoOiAxOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDE4cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ncmFkaWVudC1zdGFydCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJyYW5kLWFjY2VudC1iZy1zdWJ0bGUpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JhZGllbnQtZW5kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc2VsZWN0ZWQge1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYWRpZW50LXN0YXJ0KTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMHB4IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMjUpO1xyXG5cclxuICAgICAgICAgICAgLnN0dWRlbnQtbmFtZSB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBJc3N1ZSBkb3Qg4oCUIHRvcC1sZWZ0IGNvcm5lciBwaXAsIGRyYXduIG92ZXIgdGhlIGNhcmQgKi9cclxuICAgICAgICAmLmhhcy1pc3N1ZTo6YWZ0ZXIge1xyXG4gICAgICAgICAgICBjb250ZW50OiAnJztcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6IDAuNHJlbTtcclxuICAgICAgICAgICAgbGVmdDogMC40cmVtO1xyXG4gICAgICAgICAgICB3aWR0aDogOHB4O1xyXG4gICAgICAgICAgICBoZWlnaHQ6IDhweDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmhhcy1pc3N1ZS5zZWxlY3RlZCAuaXNzdWUtYmFkZ2Uge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuc3R1ZGVudC1hdmF0YXIge1xyXG4gICAgICAgICAgICB3aWR0aDogNDhweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0OHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuc2VsZWN0ZWQgLnN0dWRlbnQtYXZhdGFyIHtcclxuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5zdHVkZW50LWluZm8tdGV4dCB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnN0dWRlbnQtbmFtZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgIG1heC13aWR0aDogMTIwcHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuaXNzdWUtYmFkZ2Uge1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogLS0tLS0tLS0tLSBTdGVwIDMg4oCUIG11bHRpLXN0dWRlbnQgZGlhZ25vc3RpY3MgZ3JpZCAtLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbiAgICAuc3R1ZGVudC1kaWFnbm9zdGljcy1ncmlkIHtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDMyMHB4LCAxZnIpKTtcclxuICAgICAgICBnYXA6IDFyZW07XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLnN0dWRlbnQtZGlhZy1jYXJkIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNpZGUpO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjE1cyBlYXNlO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgbWluLWhlaWdodDogMjgwcHg7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDFweCAycHggdmFyKC0tc2hhZG93LXhzKTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ3JhZGllbnQtc3RhcnQpO1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMTIpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuc3R1ZGVudC1kaWFnLWhlYWRlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMC43NXJlbTtcclxuICAgICAgICBwYWRkaW5nOiAwLjg3NXJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiA1OHB4O1xyXG5cclxuICAgICAgICAuc3R1ZGVudC1hdmF0YXItc20ge1xyXG4gICAgICAgICAgICB3aWR0aDogNDBweDtcclxuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZmxleC1ncm93LTEge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAgICAgICAgIGZsZXg6IDE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuZnctc2VtaWJvbGQge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjEyNXJlbTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHNtYWxsIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjY4NzVyZW07XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlLW11dGVkKTtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcblxyXG4gICAgICAgICAgICAmLnRleHQtZGFuZ2VyLFxyXG4gICAgICAgICAgICAmLnRleHQtd2FybmluZyxcclxuICAgICAgICAgICAgJi50ZXh0LXN1Y2Nlc3Mge1xyXG4gICAgICAgICAgICAgICAgLyogT24gdGhlIG9yYW5nZSBncmFkaWVudCBoZWFkZXIsIHNlbWFudGljIHN0YXR1c2VzIHJlYWQgYXMgYVxyXG4gICAgICAgICAgICAgICAgICAgd2FzaGVkLW91dCB0aW50IG9mIHdoaXRlIHJhdGhlciB0aGFuIHRoZWlyIGRlZmF1bHQgaHVlLiAqL1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjk1O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYnRuLWNvcHktc3R1ZGVudCB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS10ZXh0LXdoaXRlLW11dGVkKTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcclxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zNzVyZW07XHJcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1vdmVybGF5LWxpZ2h0LW1kLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTgpKTtcclxuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRpYWctc3RhdHMge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMC41cmVtO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1wYW5lbC1jcmVhbS1hbHQpO1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcblxyXG4gICAgICAgIC5kaWFnLXN0YXQge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZ2FwOiAycHg7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogNzBweDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDBweDtcclxuICAgICAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmLnRyYW5zcG9ydC1wMnAgeyBjb2xvcjogIzE2YTM0YTsgfVxyXG4gICAgICAgICAgICAgICAgJi50cmFuc3BvcnQtc2VydmVyIHsgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1kYXJrKTsgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1wcmltYXJ5KTtcclxuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc21hbGwge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjVyZW07XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuM3B4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kaWFnLWNoZWNrcy1jb21wYWN0IHtcclxuICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcclxuICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICAgICAgLmNoZWNrLWl0ZW0tY29tcGFjdCB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGdhcDogMC41cmVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcclxuICAgICAgICAgICAgbWFyZ2luOiAycHggMDtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctZ3JheS1saWdodCk7XHJcblxyXG4gICAgICAgICAgICAmLnN1Y2Nlc3Mge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMiwgMTYzLCA3NCwgMC4wOCk7XHJcbiAgICAgICAgICAgICAgICBpIHsgY29sb3I6ICMxNmEzNGE7IH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5pbmZvIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoNTksIDEzMCwgMjQ2LCAwLjA4KTtcclxuICAgICAgICAgICAgICAgIGkgeyBjb2xvcjogIzI1NjNlYjsgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAmLndhcm5pbmcge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSh2YXIoLS1icmFuZC1hY2NlbnQtcmdiKSwgMC4xKTtcclxuICAgICAgICAgICAgICAgIGkgeyBjb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWRhcmspOyB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYuZXJyb3Ige1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgyMjAsIDM4LCAzOCwgMC4wOCk7XHJcbiAgICAgICAgICAgICAgICBpIHsgY29sb3I6ICNkYzI2MjY7IH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgaSB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xyXG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogMTZweDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgc3BhbiB7XHJcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmNoZWNrLWRldGFpbCB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5kaWFnLWNhdXNlIHtcclxuICAgICAgICBwYWRkaW5nOiAwLjYyNXJlbSAwLjc1cmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tYnJhbmQtYWNjZW50LXJnYiksIDAuMDgpO1xyXG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XHJcbiAgICAgICAgZ2FwOiAwLjVyZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAwLjY4NzVyZW07XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICBtaW4taGVpZ2h0OiA0MHB4O1xyXG5cclxuICAgICAgICBpIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1kYXJrKTtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnB4O1xyXG4gICAgICAgICAgICBmbGV4LXNocmluazogMDtcclxuICAgICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgZmxleDogMTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmRpYWctYWN0aW9ucyB7XHJcbiAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMC43NXJlbTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1wYW5lbC1jcmVhbSk7XHJcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IGF1dG87XHJcblxyXG4gICAgICAgIC5mdy1zZW1pYm9sZCB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXByaW1hcnkpO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuNjg3NXJlbTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4zNzVyZW07XHJcblxyXG4gICAgICAgICAgICBpIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2cHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHVsIHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XHJcblxyXG4gICAgICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5AdXNlIFwiY29tcG9uZW50cy9fYmFzZS91dGlsaXRpZXNcIiBhcyAqO1xyXG5AdXNlIFwiU2NyZWVuc2hvdFZpZXdlclwiO1xyXG5AdXNlIFwiVHJvdWJsZXNob290aW5nV2l6YXJkXCI7XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDTEFTUyBNQU5BR0VNRU5UIC0gU3R1ZGVudCBjYXJkIGFuZCBncmlkIHN0eWxpbmdcclxuICAgUmVzcG9uc2l2ZSBkZXNpZ24gdXNpbmcgQm9vdHN0cmFwIGJyZWFrcG9pbnRzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4kc3RhdGUtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICBTdHVkZW50IENhcmRcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zdHVkZW50LWNhcmQge1xyXG4gICAgbWluLXdpZHRoOiAwOyAvKiBQcmV2ZW50IG92ZXJmbG93IGluIGdyaWQgKi9cclxuICAgIHBhZGRpbmc6IDAuNXJlbSAwLjI1cmVtO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLyogU2VsZWN0ZWQgY2FyZCDigJQgc3VidGxlIGJyYW5kLW9yYW5nZSB0aW50IG1hdGNoaW5nIHRoZSBicmFuZC1hY2NlbnQtYmdcclxuICAgY29udmVudGlvbiAoc2VlIEdlbmVyYWwuc2NzcykuIFRhcmdldGVkIHZpYSA6aGFzKCkgc28gd2UgZG9uJ3QgbmVlZCBhXHJcbiAgIHBhcmVudC1sZXZlbCBcInNlbGVjdGVkXCIgY2xhc3Mgb24gdGhlIG1hcmt1cC4gKi9cclxuLnN0dWRlbnQtY2FyZDpoYXMoLnN0dWRlbnQtYXZhdGFyLXNlbGVjdGFibGUuc2VsZWN0ZWQpIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1iZy1zdWJ0bGUpO1xyXG59XHJcblxyXG4uc3R1ZGVudC1hdmF0YXIge1xyXG4gICAgQGluY2x1ZGUgcmF0aG8tYXZhdGFyLWdyYWRpZW50KDEyMHB4LCAzcHgpO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFNtYWxsZXIgYXZhdGFyIG9uIG1vYmlsZSAqL1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDgwcHg7XHJcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgIGhlaWdodDogMTAwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdHVkZW50LW5hbWUge1xyXG4gICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgIGxpbmUtaGVpZ2h0OiAkbGgtdGlnaHQ7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1kYXJrKTtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcblxyXG4gICAgLyogU21hbGxlciB0ZXh0IG9uIG1vYmlsZSAqL1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIFNlbGVjdGlvbiBCYWRnZXNcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zdHVkZW50LWJhZGdlIHtcclxuICAgIHdpZHRoOiAyOHB4O1xyXG4gICAgaGVpZ2h0OiAyOHB4O1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWdyYWRpZW50LXN0YXJ0KSwgdmFyKC0tZ3JhZGllbnQtZW5kKSk7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1iZy13aGl0ZSk7XHJcblxyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjUlLCAyNSUpO1xyXG4gICAgZm9udC1zaXplOiAkZnMtc207XHJcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIHdpZHRoOiAyMnB4O1xyXG4gICAgICAgIGhlaWdodDogMjJweDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy0yeHM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5zdHVkZW50LWJhZGdlLWZ1bGxzY3JlZW4ge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tc3RhdHVzLXN1Y2Nlc3MpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjUlLCAtMjUlKTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0dXMtc3VjY2Vzcy1kYXJrKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNSUsIC0yNSUpIHNjYWxlKDEuMSk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNob3cgZnVsbHNjcmVlbiBidXR0b24gb24gY2FyZCBob3ZlciAqL1xyXG4uc3R1ZGVudC1hdmF0YXItc2VsZWN0YWJsZTpob3ZlciAuc3R1ZGVudC1iYWRnZS1mdWxsc2NyZWVuIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi8qIEFsd2F5cyBzaG93IGZ1bGxzY3JlZW4gYnV0dG9uIHdoZW4gbW9uaXRvcmluZyBpcyBhY3RpdmUgKi9cclxuLnN0dWRlbnQtYXZhdGFyLXNlbGVjdGFibGUubW9uaXRvcmluZy1hY3RpdmUgLnN0dWRlbnQtYmFkZ2UtZnVsbHNjcmVlbiB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uc3R1ZGVudC1iYWRnZS1kZXNlbGVjdCB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0dXMtZXJyb3IpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXN0YXR1cy1lcnJvci1kYXJrKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNSUsIDI1JSkgc2NhbGUoMS4xKTtcclxuICAgIH1cclxufVxyXG5cclxuLnN0dWRlbnQtYmFkZ2Utc2VsZWN0ZWQge1xyXG4gICAgYm90dG9tOiAwO1xyXG4gICAgcmlnaHQ6IDA7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgxNSUsIDE1JSk7XHJcbn1cclxuXHJcbi8qIFByb2ZpbGUgYmFkZ2UgLSBjaXJjdWxhciBwcm9maWxlIHBob3RvIG9uIHRvcC1sZWZ0IGNvcm5lciBvZiBzY3JlZW5zaG90LlxyXG4gICBTaXplICsgb2Zmc2V0IGFyZSBtaXJyb3JlZCBvbiAuc3R1ZGVudC1iYWRnZS1mdWxsc2NyZWVuIHNvIGJvdGggY29ybmVyXHJcbiAgIGJhZGdlcyBsaW5lIHVwIHN5bW1ldHJpY2FsbHkuICovXHJcbi5zdHVkZW50LWJhZGdlLXByb2ZpbGUge1xyXG4gICAgd2lkdGg6IDM2cHg7XHJcbiAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTI1JSwgLTI1JSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBwYWRkaW5nOiAwO1xyXG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcclxuXHJcbiAgICBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgIH1cclxufVxyXG5cclxuLyogT2ZmbGluZSBzdGF0ZSAtIGRpbW1lZCBhcHBlYXJhbmNlIHdpdGggc21vb3RoIHRyYW5zaXRpb24gKi9cclxuLnN0dWRlbnQtb2ZmbGluZSB7XHJcbiAgICBvcGFjaXR5OiAwLjM7XHJcbiAgICB0cmFuc2l0aW9uOiAkc3RhdGUtdHJhbnNpdGlvbjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIENvbm5lY3Rpbmcgc3RhdGUgLSBsZXNzIGRpbW1lZCwgYWN0aXZpdHkgaW4gcHJvZ3Jlc3MgKi9cclxuLnN0dWRlbnQtY29ubmVjdGluZyB7XHJcbiAgICBvcGFjaXR5OiAwLjU1O1xyXG4gICAgdHJhbnNpdGlvbjogJHN0YXRlLXRyYW5zaXRpb247XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgb3BhY2l0eTogMC42NTtcclxuICAgIH1cclxufVxyXG5cclxuLyogQ29ubmVjdGlvbiBsb3N0IC8gZXJyb3IgLSBtb2RlcmF0ZSBkaW1taW5nICovXHJcbi5zdHVkZW50LWNvbm5lY3Rpb24tbG9zdCB7XHJcbiAgICBvcGFjaXR5OiAwLjQ7XHJcbiAgICB0cmFuc2l0aW9uOiAkc3RhdGUtdHJhbnNpdGlvbjtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIE9mZmxpbmUgc3luYy1zY3JlZW4gYm9yZGVyIG92ZXJyaWRlIChubyBncmFkaWVudCwgZ3JleSBib3JkZXIpICovXHJcbi5zdHVkZW50LXN5bmMtc2NyZWVuLW9mZmxpbmUge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYnMtZ3JheS00MDApO1xyXG59XHJcblxyXG4vKiBQbGFjZWhvbGRlciB3aXRoIGNvbm5lY3Rpb24tc3RhdGUgaWNvbiAqL1xyXG4uc3R1ZGVudC1vZmZsaW5lLXBsYWNlaG9sZGVyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWhvdmVyLWZhaW50KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICAgIGkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLTJ4bDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnMtZ3JheS01MDApO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIENvbm5lY3Rpbmcg4oCUIGFjY2VudCBjb2xvciB3aXRoIHNwaW4gKi9cclxuICAgICYtLWNvbm5lY3RpbmcgaSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWdyYWRpZW50LXN0YXJ0KTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBXYWl0aW5nIGZvciBleHRlbnNpb24g4oCUIGluZm8gYmx1ZSAqL1xyXG4gICAgJi0td2FpdGluZyBpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnMtaW5mbywgIzBkY2FmMCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyogQ29ubmVjdGlvbiBsb3N0IOKAlCB3YXJuaW5nIHllbGxvdyAqL1xyXG4gICAgJi0tbG9zdCBpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLXdhcm5pbmcsICNmZmMxMDcpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEVycm9yIOKAlCBkYW5nZXIgcmVkICovXHJcbiAgICAmLS1lcnJvciBpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tc3RhdHVzLWVycm9yKTtcclxuICAgIH1cclxufVxyXG5cclxuLyogU3BsaXQgbmFtZTogbGFzdCBuYW1lIHN0eWxpbmcgKi9cclxuLnN0dWRlbnQtbmFtZS1sYXN0IHtcclxuICAgIGZvbnQtc2l6ZTogJGZzLXhzO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICBTZWxlY3RhYmxlIEF2YXRhclxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnN0dWRlbnQtYXZhdGFyLXNlbGVjdGFibGUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4ycyBlYXNlO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIG9wYWNpdHk6IDAuODU7XHJcbiAgICB9XHJcblxyXG4gICAgJi5zZWxlY3RlZCBpbWcge1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS1ncmFkaWVudC1zdGFydCk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIFN5bmMgU2NyZWVuIE1vZGVcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5zdHVkZW50LXN5bmMtc2NyZWVuIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgIHBhZGRpbmc6IDNweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYXNwZWN0LXJhdGlvOiA0IC8gMztcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjJzIGVhc2U7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYm94LXNoYWRvdzogMCA0cHggMTZweCB2YXIoLS1zaGFkb3ctbGcpO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIE92ZXJyaWRlIGNpcmN1bGFyIGJvcmRlci1yYWRpdXMgZm9yIHJlY3Rhbmd1bGFyIHN5bmMtc2NyZWVuIGNhcmRzICovXHJcbiAgICAuc3R1ZGVudC1hdmF0YXItc2VsZWN0YWJsZSB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xyXG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAgICAgICAvKiBTY3JlZW5zaG90L3BsYWNlaG9sZGVyIGltYWdlczogYWJzb2x1dGUtcG9zaXRpb24gc28gdGhleSBkb24ndFxyXG4gICAgICAgICAgIHN0cmV0Y2ggdGhlIGNvbnRhaW5lciBiZXlvbmQgdGhlIDQ6MyBhc3BlY3QgcmF0aW8gKi9cclxuICAgICAgICA+IGltZyB7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBGdWxsc2NyZWVuIGJ1dHRvbiBpbiBzeW5jLXNjcmVlbiBtb2RlIOKAlCBtaXJyb3JzIC5zdHVkZW50LWJhZGdlLXByb2ZpbGVcclxuICAgICAgIChzaXplICsgY29ybmVyIG9mZnNldCkgc28gYm90aCB0b3AgY29ybmVycyBsaW5lIHVwIHN5bW1ldHJpY2FsbHkuICovXHJcbiAgICAuc3R1ZGVudC1iYWRnZS1mdWxsc2NyZWVuIHtcclxuICAgICAgICB3aWR0aDogMzZweDtcclxuICAgICAgICBoZWlnaHQ6IDM2cHg7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtYmFzZTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNSUsIC0yNSUpO1xyXG4gICAgICAgIHotaW5kZXg6IDI7XHJcbiAgICAgICAgb3BhY2l0eTogMDtcclxuICAgIH1cclxuXHJcbiAgICAmOmhvdmVyIC5zdHVkZW50LWJhZGdlLWZ1bGxzY3JlZW4sXHJcbiAgICAuc3R1ZGVudC1hdmF0YXItc2VsZWN0YWJsZTpob3ZlciAuc3R1ZGVudC1iYWRnZS1mdWxsc2NyZWVuIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgfVxyXG59XHJcblxyXG4uc3R1ZGVudC1mdWxsc2NyZWVuLWltYWdlIHtcclxuICAgIG1heC1oZWlnaHQ6IDcwdmg7XHJcbiAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICBHcmlkIExheW91dCAtIFJlc3BvbnNpdmUgdXNpbmcgQm9vdHN0cmFwIGJyZWFrcG9pbnRzXHJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uY2xhc3NtYW5hZ2VtZW50LWdyaWQge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG5cclxuICAgIC8qIE1vYmlsZTogMiBjb2x1bW5zICg8IDU3NnB4KSAqL1xyXG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcclxuICAgIGdhcDogMXJlbTtcclxuXHJcbiAgICAvKiBTbWFsbDogMyBjb2x1bW5zICg+PSA1NzZweCkgKi9cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcbiAgICAgICAgZ2FwOiAxLjI1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIE1lZGl1bTogNCBjb2x1bW5zICg+PSA3NjhweCkgKi9cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDQsIDFmcik7XHJcbiAgICAgICAgZ2FwOiAxLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLyogTGFyZ2U6IDUgY29sdW1ucyAoPj0gOTkycHgpICovXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEV4dHJhIExhcmdlOiA2IGNvbHVtbnMgKD49IDEyMDBweCkgKi9cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcclxuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg2LCAxZnIpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFhYTDogNyBjb2x1bW5zICg+PSAxNDAwcHgpICovXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuICAgIH1cclxuXHJcbiAgICAvKiBVbHRyYXdpZGU6IDggY29sdW1ucyAoPj0gMTcwMHB4KSAqL1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE3MDBweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDgsIDFmcik7XHJcbiAgICAgICAgZ2FwOiAxLjI1cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBTY3JlZW4gbW9kZSAtIHRpZ2h0ZXIgZ2FwcyBmb3Igd2lkZXIgY2FyZHMgKi9cclxuLmNsYXNzbWFuYWdlbWVudC1ncmlkLXNjcmVlbnMge1xyXG4gICAgZ2FwOiAwLjVyZW07XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XHJcbiAgICAgICAgZ2FwOiAwLjYyNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAgICAgICBnYXA6IDAuNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgICAgIGdhcDogMC41cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBFeHRyYSBjb2x1bW5zIHdoZW4gc2lkZWJhciBpcyBjb2xsYXBzZWQgdG8gdXRpbGl6ZSBmcmVlZCBob3Jpem9udGFsIHNwYWNlICovXHJcbi5zaWRlYmFyLWNvbGxhcHNlZCAuY2xhc3NtYW5hZ2VtZW50LWdyaWQge1xyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XHJcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoOCwgMWZyKTtcclxuICAgICAgICAvKiBUaWdodGVyIGdhcCBhdCA4IGNvbHVtbnMgc28gMiBmdWxsIHJvd3Mgb2YgOCBzdHVkZW50cyAoaW5jbC4gNDozXHJcbiAgICAgICAgICAgc2NyZWVuc2hvdCArIG5hbWUpIGZpdCBvbiBhIDEwODBwIGJyb3dzZXIgdmlld3BvcnQgKH45MDBweCkgdW5kZXJcclxuICAgICAgICAgICB0aGUgZGFzaGJvYXJkICsgZmlsdGVyIHJvdyB3aXRob3V0IHZlcnRpY2FsIHNjcm9sbGluZy4gKi9cclxuICAgICAgICBnYXA6IDAuNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDksIDFmcik7XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE3MDBweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDEwLCAxZnIpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBOYW1lIG92ZXJmbG93IHByb3RlY3Rpb24g4oCUIHdoZW4gdGlsZXMgZ2V0IG5hcnJvdyAo4omlNyBjb2x1bW5zIHJlZ2FyZGxlc3Mgb2ZcclxuICAgc2lkZWJhciBzdGF0ZSksIGxvbmcgZmlyc3QvbGFzdCBuYW1lIGNvbWJvcyBjYW4gd3JhcCBwYXN0IHR3byBsaW5lcyBhbmQgYnJlYWtcclxuICAgcm93IHJoeXRobS4gQ2xhbXAgdG8gdHdvIGxpbmVzIHdpdGggZWxsaXBzaXMgc28gcm93IGhlaWdodCBzdGF5cyBwcmVkaWN0YWJsZS4gKi9cclxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICAgLnNpZGViYXItY29sbGFwc2VkIC5jbGFzc21hbmFnZW1lbnQtZ3JpZCAuc3R1ZGVudC1uYW1lIHtcclxuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XHJcbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XHJcbiAgICAuY2xhc3NtYW5hZ2VtZW50LWdyaWQgLnN0dWRlbnQtbmFtZSB7XHJcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xyXG4gICAgICAgIC13ZWJraXQtYm94LW9yaWVudDogdmVydGljYWw7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgVGFiIENvbnRlbnQgJiBDb250YWluZXIgQWRqdXN0bWVudHNcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIFByZXZlbnQgaG9yaXpvbnRhbCBzY3JvbGxiYXIgYnV0IGFsbG93IGRyb3Bkb3ducyB0byByZW5kZXIgb3V0c2lkZSBib3VuZHMgKi9cclxuLnJhdGhvLXRhYi1jb250ZW50IHtcclxuICAgIG92ZXJmbG93LXg6IGNsaXA7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5yYXRoby10YWItcGFuZSB7XHJcbiAgICBvdmVyZmxvdy14OiBjbGlwO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBPbiB0aGUgQ2xhc3MgTWFuYWdlbWVudCBwYWdlIHdlIHdhbnQgdGhlIGRvY3VtZW50IGl0c2VsZiB0byBzY3JvbGwgaW5zdGVhZCBvZlxyXG4gICBhbnkgbmVzdGVkIGNvbnRhaW5lci4gTWFpbkxheW91dCBub3JtYWxseSBjbGFtcHMgLnJhdGhvLXRhYi1jb250ZW50IHRvXHJcbiAgIHZpZXdwb3J0LWhlaWdodCB3aXRoIGludGVybmFsIG92ZXJmbG93LXk7IGhlcmUgd2UgbGV0IGl0IGdyb3cgd2l0aCBpdHNcclxuICAgY29udGVudCBzbyB0aGUgc3R1ZGVudHMgZ3JpZCBzaW1wbHkgZXhwYW5kcyBkb3dud2FyZHMgYW5kIHRoZSBwYWdlLWxldmVsXHJcbiAgIHNjcm9sbGJhciB0YWtlcyBvdmVyLiAhaW1wb3J0YW50IGlzIG5lZWRlZCBiZWNhdXNlIE1haW5MYXlvdXQncyBydWxlXHJcbiAgICgudGFiLW1haW4gLnJhdGhvLXRhYi12aWV3IC5yYXRoby10YWItY29udGVudCkgaGFzIGVxdWFsIHNwZWNpZmljaXR5LCBhbmRcclxuICAgbG9hZCBvcmRlciB3aXRoaW4gdGhlIGd1bHAgYnVuZGxlIGlzIG5vdCBndWFyYW50ZWVkLiAqL1xyXG4uY2xhc3MtbWFuYWdlbWVudC1wYWdlIHtcclxuICAgIC8qIFRpZ2h0ZXIgdGFiLXBhbmUgcGFkZGluZyBvbmx5IG9uIHRoaXMgcGFnZSDigJQgdGlnaHRlciBsYXlvdXQgZm9yIHRoZVxyXG4gICAgICAgbW9kdWxlIGJhciArIGZpbHRlciBiYXIgKyBzdHVkZW50IGdyaWQgY29tYmluYXRpb24uIFNldCBvblxyXG4gICAgICAgLnJhdGhvLXRhYi12aWV3IHNvIGl0IHdpbnMgb3ZlciB0aGUgcmVzcG9uc2l2ZSBtZWRpYSBxdWVyaWVzIGluXHJcbiAgICAgICByYXRob3RhYnZpZXcuc2NzcyB0aGF0IGFsc28gdGFyZ2V0IC5yYXRoby10YWItdmlldy4gKi9cclxuICAgIC5yYXRoby10YWItdmlldyB7XHJcbiAgICAgICAgLS1jb250ZW50LXBhZGRpbmc6IDJyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLnJhdGhvLXRhYi12aWV3LFxyXG4gICAgLnJhdGhvLXRhYi12aWV3IC5yYXRoby10YWItY29udGVudCxcclxuICAgIC5yYXRoby10YWItdmlldyAucmF0aG8tdGFiLXBhbmUge1xyXG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICBvdmVyZmxvdy15OiB2aXNpYmxlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgcGFkZGluZyAtIGhpZ2hlciBzcGVjaWZpY2l0eSB0byBvdmVycmlkZSBFbWJlcidzIGJhc2UgcGFkZGluZyAqL1xyXG4ucmF0aG8tdGFiLWNvbnRlbnQgPiAucmF0aG8tdGFiLXBhbmUge1xyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgcGFkZGluZzogMXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIGFuZCAobWF4LXdpZHRoOiA5OTEuOThweCkge1xyXG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcclxuICAgIH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgQ2xhc3MgTWFuYWdlbWVudCBwYWdlIHRpdGxlIOKAlCBjb21wYWN0IFwie1BhZ2VUaXRsZX0ge0dyb3VwTmFtZX1cIiByb3cgYWJvdmVcclxuICAgdGhlIG1vZHVsZSBiYXIuIENyZWFtIGJhY2tncm91bmQgbWF0Y2hlcyB0aGUgc3RhbmRhcmQgUmF0aG9UaXRsZUJhciBsb29rIG9uXHJcbiAgIG90aGVyIFBvcnRhbCBwYWdlczsgdGhlIG9ubGluZS1jb3VudCBiYWRnZSBzaXRzIGlubGluZSBkaXJlY3RseSBhZnRlciB0aGVcclxuICAgZ3JvdXAgbmFtZSBzbyB0aGUgd2hvbGUgXCJbaWNvbl0gdGl0bGUgW2JhZGdlXVwiIGdyb3VwIGlzIGNlbnRlcmVkIHRvZ2V0aGVyLlxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmNsYXNzbWFuYWdlbWVudC1wYWdlLXRpdGxlLWJhciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1wYW5lbC1jcmVhbS1hbHQpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS1icy1kYXJrLCAjMjEyNTI5KTtcclxuICAgIC8qIE1hdGNoIHRoZSBtb2R1bGUgYmFyJ3MgbmF0dXJhbCBoZWlnaHQgKGJ0bi1zbSDiiYggMS44NzVyZW0gY29udGVudCArXHJcbiAgICAgICBweS0yIHBhZGRpbmcgPSB+Mi44NzVyZW0pIHNvIHRoZSB0d28gc3RhY2tlZCBiYXJzIHJlYWQgYXMgYSBiYWxhbmNlZFxyXG4gICAgICAgcGFpci4gYWxpZ24taXRlbXMtY2VudGVyIG9uIHRoZSBmbGV4IHBhcmVudCBrZWVwcyB0aGUgdGl0bGUgY2VudGVyZWRcclxuICAgICAgIHdpdGhpbiB0aGUgZXh0cmEgdmVydGljYWwgc2xhY2suICovXHJcbiAgICBtaW4taGVpZ2h0OiAyLjg3NXJlbTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2xhc3NtYW5hZ2VtZW50LXBhZ2UtdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xyXG4gICAgbGluZS1oZWlnaHQ6ICRsaC10aWdodDtcclxuXHJcbiAgICBpIHtcclxuICAgICAgICBjb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDEuMTVyZW07XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuMzVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMS4wNXJlbTtcclxuXHJcbiAgICAgICAgaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICBmb250LXNpemU6IDAuOTVyZW07XHJcblxyXG4gICAgICAgIGkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIE9ubGluZS1zdGF0dXMgYmFkZ2Ug4oCUIGN1c3RvbSBncmVlbiB0dW5lZCBmb3IgdGhlIHRpdGxlIGJhcidzIGNyZWFtXHJcbiAgIGJhY2tncm91bmQgKEJvb3RzdHJhcCdzIGJnLXN1Y2Nlc3MgcmVhZHMgdG9vIHNhdHVyYXRlZCBhZ2FpbnN0IHRoZSBjcmVhbSkuICovXHJcbi5jbGFzc21hbmFnZW1lbnQtb25saW5lLWJhZGdlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYig3MSwgMTU4LCAxMTgpO1xyXG4gICAgY29sb3I6ICNmZmY7XHJcbn1cclxuXHJcbi8qIE9ubGluZS1zdGF0dXMgZG90IOKAlCBzbWFsbCBjaXJjbGUgbmV4dCB0byB0aGUgXCJ7Tn0gb25saW5lXCIgY291bnQgaW5cclxuICAgdGhlIHBhZ2UgdGl0bGUncyBiYWRnZS4gU2l6ZWQgYXMgYSB0cnVlIGRvdCAobm90IGZ1bGwgZm9udC1zaXplKS4gKi9cclxuLmNsYXNzbWFuYWdlbWVudC1vbmxpbmUtZG90IHtcclxuICAgIGZvbnQtc2l6ZTogMC41cmVtO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICBDbGFzcyBNYW5hZ2VtZW50IERhc2hib2FyZCDigJQgc2luZ2xlLXJvdyBhY3Rpb24gYmFyIHNob3duIGF0IHRoZSB0b3Agb2YgZWFjaFxyXG4gICBncm91cCB0YWIuIFRoZSBncm91cCB0aXRsZSBpcyBhbHJlYWR5IHJlbmRlcmVkIGluIHRoZSBwYXJlbnQgUmF0aG9SdXBUYWJcclxuICAgaGVhZGVyLCBzbyB0aGlzIGNvbXBvbmVudCBjb250cmlidXRlcyBvbmx5IHRoZSBhY3Rpb24gYmFyLlxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmNsYXNzbWFuYWdlbWVudC1kYXNoYm9hcmQge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcclxuICAgIC8qIG92ZXJmbG93OnZpc2libGUgc28gdGhlIGNvbXBhY3QgaW50ZXJ2YWwgZHJvcGRvd24gbWVudSAocmVuZGVyZWQgb25seVxyXG4gICAgICAgYmVsb3cgbWQsIHNlZSBDbGFzc01hbmFnZW1lbnRNb2R1bGVCYXIucmF6b3IpIGNhbiBleHRlbmQgYmVsb3cgdGhlXHJcbiAgICAgICBjb250YWluZXIgd2l0aG91dCBiZWluZyBjbGlwcGVkLiBUaGUgYWNjb3JkaW9uJ3MgaGFpcmxpbmUgc2VwYXJhdG9yXHJcbiAgICAgICBpcyBkcmF3biB2aWEgYSA6OmJlZm9yZSBwc2V1ZG8gd2l0aCBpbnNldCBlZGdlcyBzbyBpdCBzdGlsbCB0dWNrc1xyXG4gICAgICAgY2xlYW5seSBpbnNpZGUgdGhlIHJvdW5kZWQgY29ybmVycy4gKi9cclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctcGFuZWwtY3JlYW0tYWx0KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCB2YXIoLS1zaGFkb3cteHMpO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLyogQWN0aW9uIGJhciBhbmQgY29sbGFwc2libGUgYWN0aW9ucyBiYXIg4oCUIHRyYW5zcGFyZW50IHNvIHRoZSBwYXJlbnRcclxuICAgICAgIC5jbGFzc21hbmFnZW1lbnQtZGFzaGJvYXJkIGNyZWFtIGJhY2tncm91bmQgc2hvd3MgdGhyb3VnaCwgbWF0Y2hpbmdcclxuICAgICAgIHRoZSBwYWdlIHRpdGxlIGJhciBhYm92ZS4gKi9cclxuICAgIC5kYXNoYm9hcmQtYWN0aW9uLWJhciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctcGFuZWwtY3JlYW0tYWx0KTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiBpbmhlcml0O1xyXG4gICAgfVxyXG5cclxuICAgICZfX2xhdGVuY3kge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1ncmFkaWVudC1lbmQpO1xyXG4gICAgfVxyXG5cclxuICAgICZfX29ubGluZS1kb3Qge1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMC41cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIFBsYXkvcGF1c2UgdG9nZ2xlIOKAlCBmaXhlZCB3aWR0aCBvbiBtZCsgc28gaXQgZG9lc24ndCBzaGlmdCB3aGVuIHRoZVxyXG4gICAgICAgbGFiZWwgZmxpcHMgYmV0d2VlbiBTdGFydC9TdG9wIG1vbml0b3JpbmcuIFRyYW5zcGFyZW50IDFweCBib3JkZXJcclxuICAgICAgIGNvbXBlbnNhdGVzIGZvciAuYnRuLWdyYWRpZW50J3MgYGJvcmRlcjogbm9uZWAgc28gaXRzIGhlaWdodCBtYXRjaGVzXHJcbiAgICAgICB0aGUgYm9yZGVyZWQgaW50ZXJ2YWwgYnV0dG9ucyBuZXh0IHRvIGl0LiAqL1xyXG4gICAgJl9fdG9nZ2xlIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTFyZW07XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBJbnRlcnZhbC1zZWdtZW50IHdpZHRoIOKAlCBrZWVwcyBzZWdtZW50ZWQgYnRuLWdyb3VwIHRpZ2h0LiBBbGwgb3RoZXJcclxuICAgICAgIHN0eWxpbmcgKGJvcmRlciwgY29sb3JzLCBob3ZlciwgYWN0aXZlLCBmb2N1cywgYmFkZ2UpIGlzIHNoYXJlZCB3aXRoXHJcbiAgICAgICAmX190cm91Ymxlc2hvb3QgYmVsb3cuICovXHJcbiAgICAmX19pbnRlcnZhbHMgLmJ0biB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAyLjc1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgICZfX3Ryb3VibGVzaG9vdCxcclxuICAgICZfX2ludGVydmFscyAuYnRuIHtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctd2hpdGUpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXNlY29uZGFyeSk7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1ob3Zlci1mYWludCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmFkaWVudC1lbmQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogTG9jayBzaXplICsgYm9yZGVyIG9uIGZvY3VzIOKAlCBCb290c3RyYXAncyBkZWZhdWx0IC5idG46Zm9jdXNcclxuICAgICAgICAgICByaW5nIChib3gtc2hhZG93KSBpcyBlbm91Z2g7IHdlIGV4cGxpY2l0bHkgZm9yYmlkIHRyYW5zZm9ybXMgYW5kXHJcbiAgICAgICAgICAgYm9yZGVyLWNvbG9yIHN3YXBzIHNvIG5laWdoYm91cmluZyBidG4tZ3JvdXAgYnV0dG9ucyBkb24ndFxyXG4gICAgICAgICAgIFwic3ByaW5nXCIgd2hlbiB0YWJiaW5nIHRocm91Z2ggY2FtZXJhICsgdGltZXJzLiAqL1xyXG4gICAgICAgICY6Zm9jdXMsXHJcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdyYWRpZW50LXN0YXJ0KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogUmVzZXJ2ZSB3aWR0aCBmb3IgdHdvIGRpZ2l0cyAobWF4IGludGVydmFsID0gMzBzKSBzbyB0aGUgYWN0aXZlXHJcbiAgICAgICAgICAgYnV0dG9uIGRvZXNuJ3Qgc2hyaW5rIHdoZW4gdGhlIGNvdW50ZG93biBmbGlwcyBmcm9tIFwiMTBcIiB0byBcIjlcIlxyXG4gICAgICAgICAgIG9yIGZyb20gXCIzMFwiIHRvIFwiOVwiLiB0YWJ1bGFyLW51bXMga2VlcHMgZGlnaXQgYWR2YW5jZSBjb25zdGFudC4gKi9cclxuICAgICAgICAmLmFjdGl2ZSAuYmFkZ2Uge1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgIG1pbi13aWR0aDogMi40ZW07XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMTVlbSAwLjRlbTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVlbTtcclxuICAgICAgICAgICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tb3ZlcmxheS1saWdodC1tZCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcblxyXG4uY2xhc3NtYW5hZ2VtZW50LXNlbGVjdGFsbCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFRhZy1tYW5hZ2VtZW50IGZseW91dCDigJQga2VlcCB0aGUgaWNvbi1vbmx5IGFjdGlvbiBidXR0b25zIGluIGJyYW5kIG9yYW5nZVxyXG4gICBpbnN0ZWFkIG9mIEJvb3RzdHJhcCdzIGRlZmF1bHQgbGluay1ibHVlLiAqL1xyXG4udGFnLWxpc3QgLmJ0bi1saW5rIHtcclxuICAgIGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG5cclxuICAgICY6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtZGFyayk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENNMiBNb25pdG9yIENhcmQg4oCUIHJlZGVzaWduZWQgbW9uaXRvcmluZyB3aWRnZXQgdGhhdCByZXBsYWNlcyB0aGUgaG9yaXpvbnRhbFxyXG4gICBkYXNoYm9hcmQgYmFyLiBTdGF0ZS1hd2FyZTogYXQgZGF0YS1zdGF0ZT1cIm9mZlwiIG9ubHkgdGhlIHRpdGxlLCBzdWJ0aXRsZSBhbmRcclxuICAgcHJpbWFyeSBDVEEgc2hvdzsgYXQgXCJvblwiIHRoZSBsaXZlIGNvbnRyb2xzIChpbnRlcnZhbCBwaWNrZXIsIGNhbWVyYSxcclxuICAgdHJvdWJsZXNob290KSBhcHBlYXIgYW5kIHRoZSB2aXN1YWxpemF0aW9uIGlzIGhpZ2hsaWdodGVkLlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmNtMi1tb25pdG9yIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiAxcmVtIDEuNXJlbTtcclxuICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctcGFuZWwtY3JlYW0tYWx0KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XHJcbiAgICBib3gtc2hhZG93OiAwIDFweCAycHggdmFyKC0tc2hhZG93LXhzKTtcclxuXHJcbiAgICAvKiBTaGFyZWQgY29udHJvbCBoZWlnaHQgZm9yIGludGVydmFsIGdyb3VwICsgaWNvbi1idG4gKyBDVEEuIEJ1bXBlZCBvblxyXG4gICAgICAgcGhvbmVzIGZvciBlYXNpZXIgdGFwIHRhcmdldHMuIERlY2xhcmVkIGJlZm9yZSBAbWVkaWEgdG8gc2F0aXNmeSBTYXNzXHJcbiAgICAgICBtaXhlZC1kZWNscy4gKi9cclxuICAgIC0tY20yLWNvbnRyb2wtaDogMi41cmVtO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XHJcbiAgICAgICAgZ2FwOiAwLjc1cmVtIDFyZW07XHJcbiAgICAgICAgcGFkZGluZzogMC44NzVyZW0gMXJlbTtcclxuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgICAgIGdhcDogMC42MjVyZW07XHJcbiAgICAgICAgcGFkZGluZzogMC43NXJlbTtcclxuICAgICAgICAtLWNtMi1jb250cm9sLWg6IDIuNzVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJl9fdml6IHtcclxuICAgICAgICB3aWR0aDogM3JlbTtcclxuICAgICAgICBoZWlnaHQ6IDNyZW07XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgcGxhY2UtaXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJzLWdyYXktNTAwKTtcclxuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07XHJcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLCBjb2xvciAwLjI1cyBlYXNlO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fYm9keSB7XHJcbiAgICAgICAgbWluLXdpZHRoOiAwO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX2hlYWRpbmcge1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDAuNzVyZW07XHJcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX3RpdGxlIHtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1sZztcclxuICAgICAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGgtdGlnaHQ7XHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtbWQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICZfX29ubGluZSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAkZnMtMnhzO1xyXG4gICAgICAgIHBhZGRpbmc6IDAuMjVlbSAwLjZlbTtcclxuICAgIH1cclxuXHJcbiAgICAmX19jb250cm9scyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGdhcDogMC43NXJlbTtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuICAgICAgICAgICAgZ2FwOiAwLjVyZW07XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogYGRpc3BsYXk6IGNvbnRlbnRzYCBzbyB0aGUgaW5uZXIgYnV0dG9ucyBwYXJ0aWNpcGF0ZSBpbiBfX2NvbnRyb2xzXHJcbiAgICAgICBsYXlvdXQgd2l0aG91dCBhbiBleHRyYSBmbGV4IHdyYXBwZXIuICovXHJcbiAgICAmX19saXZlIHtcclxuICAgICAgICBkaXNwbGF5OiBjb250ZW50cztcclxuICAgIH1cclxuXHJcbiAgICAmX19pY29uLWJ0biB7XHJcbiAgICAgICAgd2lkdGg6IHZhcigtLWNtMi1jb250cm9sLWgpO1xyXG4gICAgICAgIGhlaWdodDogdmFyKC0tY20yLWNvbnRyb2wtaCk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuICAgICAgICBkaXNwbGF5OiBncmlkO1xyXG4gICAgICAgIHBsYWNlLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xyXG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctaG92ZXItZmFpbnQpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JhZGllbnQtZW5kKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY3RhIHtcclxuICAgICAgICBoZWlnaHQ6IHZhcigtLWNtMi1jb250cm9sLWgpO1xyXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICAgICAgZ2FwOiAwLjVyZW07XHJcbiAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xyXG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ3JhZGllbnQtc3RhcnQpLCB2YXIoLS1ncmFkaWVudC1lbmQpKTtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmdy1zZW1pYm9sZDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy1zbTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBmaWx0ZXIgMC4xNXMgZWFzZSwgdHJhbnNmb3JtIDAuMTVzIGVhc2U7XHJcblxyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogRnVsbC13aWR0aCB0YXAgdGFyZ2V0IG9uIHBob25lcyDigJQgQ1RBIHNpdHMgb24gaXRzIG93biByb3cgYmVsb3cgdGhlXHJcbiAgICAgICAgICAgaW50ZXJ2YWwgKyB0cm91Ymxlc2hvb3QgY2x1c3RlciwgZWFzaWVyIHRvIGhpdCBvbmUtaGFuZGVkLiAqL1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgICAgICBmbGV4OiAxIDEgMTAwJTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyogLS0tLS0gU3RhdGUgdmFyaWFudHMgLS0tLS0gKi9cclxuICAgICZbZGF0YS1zdGF0ZT1cIm9uXCJdIHtcclxuICAgICAgICAuY20yLW1vbml0b3JfX3ZpeiB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYWRpZW50LXN0YXJ0KTtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtd2hpdGUpO1xyXG4gICAgICAgICAgICBhbmltYXRpb246IGNtMi1tb25pdG9yLWV5ZS1wdWxzZSAyLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmW2RhdGEtc3RhdGU9XCJvZmZcIl0ge1xyXG4gICAgICAgIC5jbTItbW9uaXRvcl9fbGl2ZSB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGNtMi1tb25pdG9yLWV5ZS1wdWxzZSB7XHJcbiAgICAwJSwgMTAwJSB7IGJveC1zaGFkb3c6IDAgMCAwIDAgcmdiYSgyNDEsIDEwNywgOTAsIDAuMzUpOyB9XHJcbiAgICA1MCUgICAgICB7IGJveC1zaGFkb3c6IDAgMCAwIDZweCByZ2JhKDI0MSwgMTA3LCA5MCwgMCk7IH1cclxufVxyXG5cclxuLyogSW50ZXJ2YWwgcGlja2VyIGluc2lkZSBjbTItbW9uaXRvcl9fbGl2ZS4gSGVpZ2h0IGluaGVyaXRzIHRoZVxyXG4gICAtLWNtMi1jb250cm9sLWggY3VzdG9tLXByb3AgZGVjbGFyZWQgb24gLmNtMi1tb25pdG9yIHNvIGFsbCB0aHJlZSBjb250cm9sXHJcbiAgIGl0ZW1zIChpbnRlcnZhbCBncm91cCArIGljb24tYnRuICsgQ1RBKSBsaW5lIHVwIGF0IHRoZSBzYW1lIGhlaWdodC4gKi9cclxuLmNtMi1pbnRlcnZhbCB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG4gICAgaGVpZ2h0OiB2YXIoLS1jbTItY29udHJvbC1oKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy13aGl0ZSk7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxuXHJcbiAgICAmX19idG4ge1xyXG4gICAgICAgIGJvcmRlcjogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogJGZzLXNtO1xyXG4gICAgICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XHJcblxyXG4gICAgICAgICYgKyAmIHtcclxuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctaG92ZXItZmFpbnQpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZ3JhZGllbnQtZW5kKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1ncmFkaWVudC1zdGFydCksIHZhcigtLWdyYWRpZW50LWVuZCkpO1xyXG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLmFjdGl2ZSAuYmFkZ2Uge1xyXG4gICAgICAgICAgICAvKiBSZXNlcnZlIHdpZHRoIGZvciB0d28gZGlnaXRzIChtYXggaW50ZXJ2YWwgPSAzMHMpIHNvIHRoZSBhY3RpdmVcclxuICAgICAgICAgICAgICAgYnV0dG9uIGRvZXNuJ3Qgc2hyaW5rIHdoZW4gdGhlIGNvdW50ZG93biBmbGlwcyBmcm9tIFwiMTBcIiB0byBcIjlcIlxyXG4gICAgICAgICAgICAgICBvciBmcm9tIFwiMzBcIiB0byBcIjlcIi4gdGFidWxhci1udW1zIGtlZXBzIGRpZ2l0IGFkdmFuY2UgY29uc3RhbnQuICovXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgbWluLXdpZHRoOiAyLjRlbTtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tb3ZlcmxheS1saWdodC1tZCk7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDAuNGVtO1xyXG4gICAgICAgICAgICBwYWRkaW5nOiAwLjE1ZW0gMC40ZW07XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NWVtO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XHJcbiAgICAgICAgICAgIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmLS1jYW1lcmEgaSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1ncmFkaWVudC1lbmQpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBNb2JpbGUgaW50ZXJ2YWwgcGlja2VyIHVzZXMgQm9vdHN0cmFwJ3MgPHVsIGNsYXNzPVwiZHJvcGRvd24tbWVudVwiPi4gSXRzXHJcbiAgICAgICBgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlYCBkZWZhdWx0cyB0byBCb290c3RyYXAtYmx1ZSDigJQgb3ZlcnJpZGUgdG8gYnJhbmRcclxuICAgICAgIG9yYW5nZSBzbyBpdCB2aXN1YWxseSBtYXRjaGVzIHRoZSBhY3RpdmUgc3RhdGUgb2YgdGhlIHNlZ21lbnRlZCB2ZXJzaW9uLiAqL1xyXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW0uYWN0aXZlLFxyXG4gICAgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06YWN0aXZlIHtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtYmctaG92ZXIpO1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgIH1cclxufVxyXG5cclxuXHJcbi8qIENhbWVyYSBwdWxzZSBhbmltYXRpb24g4oCUIHJlcGxheXMgZWFjaCB0aW1lIFNjcmVlbnNob3RSZWZyZXNoQ291bnQgY2hhbmdlcy5cclxuICAgT3BhY2l0eS1vbmx5IGZsYXNoOyBubyB0cmFuc2Zvcm0gc28gdGhlIGljb24gc3RheXMgYWxpZ25lZCBhbmQgbmVpZ2hib3Vyc1xyXG4gICBkb24ndCByZWZsb3cgZHVyaW5nIHRoZSBhbmltYXRpb24uICovXHJcbkBrZXlmcmFtZXMgc2NyZWVuc2hvdC1wdWxzZSB7XHJcbiAgICAwJSAgIHsgb3BhY2l0eTogMTsgfVxyXG4gICAgNDAlICB7IG9wYWNpdHk6IDAuMzU7IH1cclxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XHJcbn1cclxuXHJcbi5zY3JlZW5zaG90LXB1bHNlIHtcclxuICAgIGFuaW1hdGlvbjogc2NyZWVuc2hvdC1wdWxzZSAwLjRzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4vKiBQcm9ibGVtIHN0dWRlbnQgaWNvbnMgaW4gZmx5b3V0ICovXHJcbi5wcm9ibGVtLWljb24ge1xyXG4gICAgd2lkdGg6IDMycHg7XHJcbiAgICBoZWlnaHQ6IDMycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcblxyXG4gICAgJi0taGVhcnRiZWF0IHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc3RhdHVzLWVycm9yKTsgfVxyXG4gICAgJi0tY29ubmVjdGlvbiB7IGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJzLXdhcm5pbmcpOyB9XHJcbiAgICAmLS1zY3JlZW5zaG90IHsgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnMtaW5mbyk7IH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgQ29ubmVjdGlvbiBTdGF0dXMgQmFkZ2UgLSBTaWduYWwgaW5kaWNhdG9yIG9uIGF2YXRhciB0b3AtbGVmdFxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLnN0dWRlbnQtYmFkZ2UtY29ubmVjdGlvbiB7XHJcbiAgICB3aWR0aDogMjRweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIGZvbnQtc2l6ZTogJGZzLTJ4cztcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0yNSUsIC0yNSUpO1xyXG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIG9wYWNpdHkgMC4ycyBlYXNlO1xyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG4gICAgICAgIHdpZHRoOiAyMHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICBmb250LXNpemU6ICRmcy0zeHM7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIENvbm5lY3Rpb24gYmFkZ2UgcmVwb3NpdGlvbmVkIHdoZW4gaW5zaWRlIHN5bmMtc2NyZWVuIGNhcmQgKG92ZXJsYXBzIHByb2ZpbGUgYmFkZ2UpXHJcbiAgIE5vIGxvbmdlciB1c2VkIOKAlCBzeW5jLXNjcmVlbiBjYXJkcyBzaG93IHN0YXR1cyB2aWEgcGxhY2Vob2xkZXIgaWNvbiBpbnN0ZWFkLlxyXG4gICBLZXB0IGZvciBub24tc3luYyBtb2RlIGZhbGxiYWNrLiAqL1xyXG5cclxuLnN0dWRlbnQtYmFkZ2UtY29ubmVjdGlvbi0tb2ZmbGluZSB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1icy1ncmF5LTQwMCk7XHJcbiAgICBvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5zdHVkZW50LWJhZGdlLWNvbm5lY3Rpb24tLWNvbm5lY3Rpbmcge1xyXG4gICAgb3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4uc3R1ZGVudC1iYWRnZS1jb25uZWN0aW9uLS1lcnJvciB7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1zdGF0dXMtZXJyb3IpO1xyXG59XHJcblxyXG4uc3R1ZGVudC1iYWRnZS1jb25uZWN0aW9uLS1sb3N0IHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXN0YXR1cy13YXJuaW5nLCAjZmZjMTA3KTtcclxufVxyXG5cclxuLyogUE5HLWJhc2VkIHZhcmlhbnQgKE9ubGluZSAvIE9mZmxpbmUpOiB0aGUgYXNzZXQgYWxyZWFkeSBjYXJyaWVzIGl0cyBvd25cclxuICAgY2lyY2xlLCByaW5nIGFuZCBjb2xvciB0cmVhdG1lbnQsIHNvIHRoZSBiYWRnZSBib3ggYmVjb21lcyBhIHNpemluZ1xyXG4gICBjb250YWluZXIuIE92ZXJyaWRlcyBib3RoIC0tb2ZmbGluZSdzIGdyYXktYmFja2dyb3VuZCArIG9wYWNpdHkgYW5kIHRoZVxyXG4gICBkZWZhdWx0IG9yYW5nZSBncmFkaWVudCBpbmhlcml0ZWQgZnJvbSAuc3R1ZGVudC1iYWRnZS4gKi9cclxuLnN0dWRlbnQtYmFkZ2UtY29ubmVjdGlvbi0taW1hZ2Uge1xyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIG9wYWNpdHk6IDE7XHJcblxyXG4gICAgPiBpbWcge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtdXNlci1kcmFnOiBub25lO1xyXG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIFRhZyBTeXN0ZW0gLSBQaWxsIGJhZGdlcyBiZWxvdyBzdHVkZW50IG5hbWVzXHJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4uc3R1ZGVudC10YWdzIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgIGdhcDogMC4ycmVtO1xyXG4gICAgbWFyZ2luLXRvcDogMC4yNXJlbTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuXHJcbiAgICAvKiBDb21wYWN0IHRhZyBwaWxscyDigJQgc21hbGxlciBmb250ICsgcGFkZGluZyB0aGFuIHRoZSBkZWZhdWx0XHJcbiAgICAgICAucmF0aG8tc3RhdHVzLWJhZGdlIHNvIGEgc3R1ZGVudCBjYXJkIGNhbiBmaXQgdHdvIHRhZ3MgKyBvdmVyZmxvd1xyXG4gICAgICAgaW5kaWNhdG9yIHdpdGhvdXQgYmxvYXRpbmcgdmVydGljYWwgc3BhY2UuICovXHJcbiAgICAucmF0aG8tc3RhdHVzLWJhZGdlIHtcclxuICAgICAgICBmb250LXNpemU6ICRmcy0yeHM7XHJcbiAgICAgICAgcGFkZGluZzogMC4xcmVtIDAuNHJlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xyXG4gICAgfVxyXG5cclxuICAgIC5zdHVkZW50LXRhZy1jbGlja2FibGUge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlLCBvcGFjaXR5IDAuMXMgZWFzZTtcclxuXHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxuICAgICAgICAgICAgb3BhY2l0eTogMC44NTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAgICAgLnJhdGhvLXN0YXR1cy1iYWRnZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZzLTN4cztcclxuICAgICAgICAgICAgcGFkZGluZzogMC4wNXJlbSAwLjNyZW07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBPdmVyZmxvdyBpbmRpY2F0b3Igc2hvd24gd2hlbiBhIHN0dWRlbnQgaGFzIG1vcmUgdGFncyB0aGFuIGZpdCBvbiB0aGVcclxuICAgY2FyZC4gSG92ZXIgc2hvd3MgdGhlIGZ1bGwgbGlzdCB2aWEgdGl0bGUgYXR0cmlidXRlLiAqL1xyXG4uc3R1ZGVudC10YWctb3ZlcmZsb3cge1xyXG4gICAgZm9udC1zaXplOiAkZnMtMnhzO1xyXG4gICAgY29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG4gICAgcGFkZGluZzogMC4xcmVtIDAuM3JlbTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLWhvdmVyLWZhaW50KTtcclxuICAgIGN1cnNvcjogZGVmYXVsdDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIFN0dWRlbnRXYXRjaCBGbHlvdXQgU3R5bGVzXHJcbiAgIFNoYXJlZCBzdHlsZXMgZm9yIFRhYk1hbmFnZW1lbnQsIEhpc3RvcnlNYW5hZ2VtZW50IGFuZCBMb2NrU2NyZWVuIGZseW91dHNcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi8qIFNoYXJlZCBsaXN0IGl0ZW0gc3R5bGUgKHVzZWQgYnkgdGFiLWxpc3QgYW5kIGhpc3RvcnktbGlzdCkgKi9cclxuLnRhYi1saXN0LWl0ZW0sXHJcbi5oaXN0b3J5LWxpc3QtaXRlbSB7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XHJcbiAgICBAaW5jbHVkZSBsaXN0LWl0ZW0tYm9yZGVyKCk7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmctaG92ZXItZmFpbnQpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qIEVuc3VyZSB0ZXh0IHRydW5jYXRpb24gd29ya3MgdGhyb3VnaCBuZXN0ZWQgZmxleCBjb250YWluZXJzICovXHJcbiAgICAuZmxleC1ncm93LTEge1xyXG4gICAgICAgIG1pbi13aWR0aDogMDtcclxuXHJcbiAgICAgICAgPiBkaXYge1xyXG4gICAgICAgICAgICBtaW4td2lkdGg6IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiBUYWIgZmF2aWNvbiBpY29uICovXHJcbi50YWItZmF2aWNvbiB7XHJcbiAgICB3aWR0aDogMTZweDtcclxuICAgIGhlaWdodDogMTZweDtcclxuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbn1cclxuXHJcbi8qIFRhYiBsaXN0IGljb24gKEZvbnRBd2Vzb21lIGljb25zIGluIHRhYiBtYW5hZ2VtZW50IGZseW91dCkgKi9cclxuLnRhYi1saXN0LWljb24ge1xyXG4gICAgd2lkdGg6IDEuMjVyZW07XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFNtYWxsIGF2YXRhciBmb3Igc3R1ZGVudCBsaXN0IGluIGZseW91dHMgKGUuZy4gTG9ja1NjcmVlbikgKi9cclxuLmZseW91dC1zdHVkZW50LWF2YXRhciB7XHJcbiAgICB3aWR0aDogMjRweDtcclxuICAgIGhlaWdodDogMjRweDtcclxuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xyXG59XHJcblxyXG4vKiBMb2NrIHNjcmVlbiBtZXNzYWdlIHRleHRhcmVhICovXHJcbi5sb2NrLXNjcmVlbi1tZXNzYWdlIHtcclxuICAgIHJlc2l6ZTogdmVydGljYWw7XHJcbiAgICBtaW4taGVpZ2h0OiA2MHB4O1xyXG59XHJcblxyXG4vKiBDb21wYWN0IGJhZGdlIHZhcmlhbnQgKi9cclxuLmJhZGdlLXNtIHtcclxuICAgIGZvbnQtc2l6ZTogJGZzLTJ4cztcclxuICAgIHBhZGRpbmc6IDAuMTVlbSAwLjRlbTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgRGlhZ25vc3RpY3MgRmx5b3V0IC0gU2VjdGlvbnMgYW5kIGxheW91dFxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmRpYWdub3N0aWNzLXNlY3Rpb24tdGl0bGUge1xyXG4gICAgZm9udC1zaXplOiAkZnMteHM7XHJcbiAgICBmb250LXdlaWdodDogJGZ3LXNlbWlib2xkO1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJzLWJvcmRlci1jb2xvciwgI2RlZTJlNik7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XHJcbn1cclxuXHJcbi5kaWFnbm9zdGljcy1ncmlkIHtcclxuICAgIHBhZGRpbmctbGVmdDogMC4yNXJlbTtcclxufVxyXG5cclxuLmRpYWdub3N0aWNzLWVycm9yLWl0ZW0ge1xyXG4gICAgQGluY2x1ZGUgbGlzdC1pdGVtLWJvcmRlcigpO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4gICBMb2NrIFNjcmVlbiBQYWdlIOKAlCBSYXRobyBQb3J0YWwgRGVzaWduXHJcbiAgIEZ1bGxzY3JlZW4gb3ZlcmxheSBzaG93biBvbiBzdHVkZW50IGJyb3dzZXIgd2hlbiBsb2NrZWQgYnkgdGVhY2hlclxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmxvY2tzY3JlZW4tcGFnZSB7XHJcbiAgICBtaW4taGVpZ2h0OiAxMDB2aDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1jcmVhbSk7XHJcbiAgICBjb2xvcjogdmFyKC0tYnMtZ3JheS04MDApO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgcGFkZGluZzogMXJlbTtcclxufVxyXG5cclxuLmxvY2tzY3JlZW4tY29udGFpbmVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogMTAwJTtcclxufVxyXG5cclxuLmxvY2tzY3JlZW4tY2FyZCB7XHJcbiAgICBwYWRkaW5nOiAzcmVtIDIuNXJlbTtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBib3gtc2hhZG93OiAwIDRweCAyNHB4IHZhcigtLXNoYWRvdy1zbSk7XHJcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5sb2Nrc2NyZWVuLWljb24ge1xyXG4gICAgZm9udC1zaXplOiAkZnMtM3hsO1xyXG4gICAgd2lkdGg6IDgwcHg7XHJcbiAgICBoZWlnaHQ6IDgwcHg7XHJcbiAgICBsaW5lLWhlaWdodDogODBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWdyYWRpZW50LXN0YXJ0KSwgdmFyKC0tZ3JhZGllbnQtZW5kKSk7XHJcbiAgICBjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcbn1cclxuXHJcbi5sb2Nrc2NyZWVuLXRpdGxlIHtcclxuICAgIGZvbnQtc2l6ZTogJGZzLWxnO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmdy1ib2xkO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS1icy1ncmF5LTgwMCk7XHJcbn1cclxuXHJcbi5sb2Nrc2NyZWVuLXRlYWNoZXItbWVzc2FnZSB7XHJcbiAgICBmb250LXNpemU6ICRmcy1iYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xyXG4gICAgY29sb3I6IHZhcigtLWJzLWdyYXktNjAwLCAjNmM3NTdkKTtcclxuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICBtaW4taGVpZ2h0OiAxLjVlbTtcclxufVxyXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBFWFBPUlQgUElDVFVSRSBQQVNTV09SRFMgLSBQcmludC1mcmllbmRseSBncm91cCBwYXNzd29yZCBvdmVydmlld1xyXG4gICBSZW5kZXJlZCB1bmRlciBQcmludExheW91dCAobm8gcG9ydGFsIGNocm9tZSkuIEJvb3RzdHJhcCB1dGlsaXR5IGNsYXNzZXNcclxuICAgaGFuZGxlIG1vc3QgbGF5b3V0IOKAlCB0aGlzIGZpbGUgY292ZXJzIHdoYXQgdXRpbGl0aWVzIGNhbm5vdC5cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5leHBvcnQtcGljdHVyZS1wYXNzd29yZHMge1xyXG4gICAgbWF4LXdpZHRoOiA4MDBweDtcclxuXHJcbiAgICAmX19sb2dvIHtcclxuICAgICAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgJl9fY2FyZCB7XHJcbiAgICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcclxuICAgIH1cclxuXHJcbiAgICAmX19pY29uIHtcclxuICAgICAgICBoZWlnaHQ6IDUwcHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIEhpZGUgcG9ydGFsIGNocm9tZSAoZmx5b3V0IG9mZmNhbnZhcyArIGNoZXZyb24gaGFuZGxlKSB3aGVuIHRoZSBwcmludCBsYXlvdXQgaXMgYWN0aXZlLlxyXG4gICBUaGUgY2hyb21lIGlzIHJlbmRlcmVkIGhpZ2hlciBpbiB0aGUgY2FzY2FkZSBieSBGbHlPdXRTdGF0ZVByb3ZpZGVyIGFuZCB3b3VsZCBvdGhlcndpc2VcclxuICAgbGVhayBpbnRvIHRoZSBwcmludCB2aWV3IHZpYSB0aGUgcHJlZml4LW1hdGNoZWQgZGVmYXVsdCBmbHlvdXQgZm9yIC9jbGFzcy1tYW5hZ2VtZW50LiAqL1xyXG5ib2R5OmhhcygucHJpbnQtbGF5b3V0KSB7XHJcbiAgICAjZmx5b3V0LW1haW4sXHJcbiAgICAjZmx5b3V0LWhhbmRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4ucGFzc3dvcmQtY2hhciB7XHJcbiAgICBmb250LXNpemU6IDEuMXJlbTtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XHJcblxyXG4gICAgJi0tdXBwZXIge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIH1cclxuXHJcbiAgICAmLS1sb3dlciB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIH1cclxuXHJcbiAgICAmLS1kaWdpdCB7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIH1cclxuXHJcbiAgICAmLS1zcGVjaWFsIHtcclxuICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgcHJpbnQge1xyXG4gICAgYm9keSB7XHJcbiAgICAgICAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcclxuICAgIH1cclxufVxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5AdXNlIFwiY29tcG9uZW50cy9fYmFzZS91dGlsaXRpZXNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgSEVMUCBVUERBVEVTIC0gUGFnZS1zcGVjaWZpYyBzdHlsZXNcclxuICAgT25seSBzdHlsZXMgdGhhdCBjYW5ub3QgYmUgYWNoaWV2ZWQgd2l0aCBCb290c3RyYXAgY2xhc3Nlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgSW5mb3JtYXRpb24gUGFuZWwgLSBTaGFyZWQgcGFuZWwgc3R5bGluZyBmb3IgSVQgYWRtaW5zIGFuZCBleGFtcGxlIHVzZXJcclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5pbmZvLXBhbmVsIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iZy1jcmVhbSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLXNpZGUpO1xyXG59XHJcblxyXG4uaW5mby1pdGVtIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1saWdodC1waW5rKTtcclxuXHRib3JkZXItcmFkaXVzOiAwO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxuXHJcblx0JjpsYXN0LWNoaWxkIHtcclxuXHRcdGJvcmRlci1ib3R0b206IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4uaW5mby1pY29uIHtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWxpZ2h0KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC13aGl0ZSk7XHJcblx0Zm9udC1zaXplOiAkZnMtc207XHJcbn1cclxuXHJcbi5hZG1pbi1hdmF0YXIge1xyXG5cdHdpZHRoOiA0MHB4O1xyXG5cdGhlaWdodDogNDBweDtcclxuXHRvYmplY3QtZml0OiBjb3ZlcjtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG59XHJcblxyXG4uZXhhbXBsZS1sYWJlbCB7XHJcblx0Y29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcblx0Zm9udC13ZWlnaHQ6ICRmdy1yZWd1bGFyO1xyXG59XHJcblxyXG4uZXhhbXBsZS1lbWFpbCB7XHJcblx0Y29sb3I6IHZhcigtLWJyYW5kLWFjY2VudC1saWdodCk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdGZvbnQtc2l6ZTogJGZzLXNtO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG5cdH1cclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBpbmZvIHBhbmVsIGVsZW1lbnRzICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xyXG5cdC5pbmZvLWljb24ge1xyXG5cdFx0d2lkdGg6IDM0cHg7XHJcblx0XHRoZWlnaHQ6IDM0cHg7XHJcblx0XHRmb250LXNpemU6ICRmcy14cztcclxuXHR9XHJcblxyXG5cdC5hZG1pbi1hdmF0YXIge1xyXG5cdFx0d2lkdGg6IDM0cHg7XHJcblx0XHRoZWlnaHQ6IDM0cHg7XHJcblx0fVxyXG5cclxuXHQucGF0Y2gtbm90ZS1jYXJkIHtcclxuXHRcdHBhZGRpbmc6IDAuNjI1cmVtIDAuNzVyZW07XHJcblx0fVxyXG5cclxuXHQucGF0Y2gtbm90ZS1yZWFkLW1vcmUge1xyXG5cdFx0bWluLWhlaWdodDogNDRweDsgLyogV0NBRyB0b3VjaCB0YXJnZXQgKi9cclxuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFNjcm9sbGFibGUgY29udGFpbmVyIHdpdGggY3VzdG9tIHNjcm9sbGJhciAqL1xyXG4uYWRtaW4tc2Nyb2xsIHtcclxuXHRtYXgtaGVpZ2h0OiAxODBweDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XHJcblx0c2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xyXG5cdHNjcm9sbGJhci1jb2xvcjogdmFyKC0tYm9yZGVyLXNpZGUpIHRyYW5zcGFyZW50O1xyXG5cdEBpbmNsdWRlIGN1c3RvbS1zY3JvbGxiYXIodmFyKC0tYm9yZGVyLXNpZGUpLCB0cmFuc3BhcmVudCk7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiAgIFBhdGNoIE5vdGVzIFNlY3Rpb25cclxuICAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuXHJcbi5wYXRjaC1ub3RlLWNhcmQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWNyZWFtKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcblx0Ym9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuXHRwYWRkaW5nOiAwLjc1cmVtIDAuOXJlbTtcclxufVxyXG5cclxuLnBhdGNoLW5vdGUtdGl0bGUge1xyXG5cdGNvbG9yOiB2YXIoLS1zdGF0dXMtd2FybmluZy1yZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcblx0Zm9udC1zaXplOiAkZnMtYmFzZTtcclxufVxyXG5cclxuLnBhdGNoLW5vdGUtZGVzYyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc2Vjb25kYXJ5KTtcclxuXHRmb250LXNpemU6ICRmcy1iYXNlO1xyXG59XHJcblxyXG4ucGF0Y2gtbm90ZS1saXN0IHtcclxuXHRmb250LXNpemU6ICRmcy1zbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZy1sZWZ0OiAxcmVtO1xyXG5cdG1hcmdpbi10b3A6IDAuMzVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHJcblx0bGkge1xyXG5cdFx0bWFyZ2luOiAwLjE1cmVtIDA7XHJcblx0fVxyXG59XHJcblxyXG4ucGF0Y2gtbm90ZS1wcmV2aWV3IHtcclxuXHRkaXNwbGF5OiAtd2Via2l0LWJveDtcclxuXHQtd2Via2l0LWxpbmUtY2xhbXA6IDI7XHJcblx0LXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4ucGF0Y2gtbm90ZS1yZWFkLW1vcmUge1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGNvbG9yOiB2YXIoLS1icmFuZC1hY2NlbnQtbGlnaHQpO1xyXG5cdGZvbnQtc2l6ZTogJGZzLXNtO1xyXG5cdGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcblx0cGFkZGluZzogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZTtcclxuXHJcblx0Jjpob3ZlciB7XHJcblx0XHRjb2xvcjogdmFyKC0tYnJhbmQtYWNjZW50LWRhcmspO1xyXG5cdH1cclxuXHJcblx0aSB7XHJcblx0XHRmb250LXNpemU6ICRmcy0zeHM7XHJcblx0fVxyXG59XHJcblxyXG4ucGF0Y2gtbm90ZS1mdWxsLWNvbnRlbnQge1xyXG5cdGZvbnQtc2l6ZTogJGZzLWJhc2U7XHJcblx0bGluZS1oZWlnaHQ6IDEuNjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1zZWNvbmRhcnkpO1xyXG5cclxuXHR1bCxcclxuXHRvbCB7XHJcblx0XHRwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XHJcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG5cdH1cclxuXHJcblx0bGkge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuXHR9XHJcblxyXG5cdGIsXHJcblx0c3Ryb25nIHtcclxuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG5cdH1cclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgR2V0dGluZy1zdGFydGVkIFZpZGVvIFRhYlxyXG4gICBDZW50ZXJzIHRoZSBwbGF5ZXIgYW5kIGNhcHMgaXRzIHdpZHRoIGZyb20gdGhlIGF2YWlsYWJsZSB2aWV3cG9ydCBoZWlnaHQgc28gYVxyXG4gICAxNjo5IHZpZGVvIGZpbGxzIGFzIG11Y2ggc3BhY2UgYXMgcG9zc2libGUgd2hpbGUgc3RpbGwgZml0dGluZyBvbiBzY3JlZW5cclxuICAgd2l0aG91dCBzY3JvbGxpbmcuIH4xNXJlbSBpcyByZXNlcnZlZCBmb3IgdGhlIGFwcCBoZWFkZXIsIHRhYiBiYXIsIHRpdGxlIGFuZFxyXG4gICBkZXNjcmlwdGlvbiByZW5kZXJlZCBhYm92ZSB0aGUgcGxheWVyLlxyXG4gICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5cclxuLmhlbHAtdmlkZW8tcGxheWVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IGNhbGMoKDEwMHZoIC0gMTVyZW0pICogMS43Nzc4KTtcclxufVxyXG5cclxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuICAgVXBkYXRlIE1vZGFsIC0gRnVsbCB2aWV3cG9ydCBvdmVybGF5XHJcbiAgIFVzZXMgc2VwYXJhdGUgb3ZlcmxheSBhbmQgY29udGFpbmVyIGZvciBiZXR0ZXIgc3RhY2tpbmcgY29udGV4dCBjb250cm9sXHJcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXHJcblxyXG4udXBkYXRlLW1vZGFsLW92ZXJsYXkge1xyXG5cdEBpbmNsdWRlIG1vZGFsLW92ZXJsYXkoKTtcclxufVxyXG5cclxuLnVwZGF0ZS1tb2RhbC1jb250YWluZXIge1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0QGluY2x1ZGUgbW9kYWwtY29udGFpbmVyKCRtYXgtd2lkdGg6IDgwMHB4LCAkYm9yZGVyLXJhZGl1czogMC43NXJlbSk7XHJcblxyXG5cdC5tb2RhbC1jb250ZW50IHtcclxuXHRcdGJvcmRlcjogbm9uZTtcclxuXHRcdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0fVxyXG5cclxuXHQubW9kYWwtaGVhZGVyIHtcclxuXHRcdHBhZGRpbmc6IDFyZW0gMS41cmVtIDAuNXJlbTtcclxuXHR9XHJcblxyXG5cdC5tb2RhbC1ib2R5IHtcclxuXHRcdHBhZGRpbmc6IDAuNXJlbSAxLjVyZW0gMS41cmVtO1xyXG5cdH1cclxuXHJcblx0QG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcblx0XHQubW9kYWwtaGVhZGVyIHtcclxuXHRcdFx0cGFkZGluZzogMC43NXJlbSAxcmVtIDAuNXJlbTtcclxuXHRcdH1cclxuXHJcblx0XHQubW9kYWwtYm9keSB7XHJcblx0XHRcdHBhZGRpbmc6IDAuNXJlbSAxcmVtIDFyZW07XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgTUlDUk9TT0ZUIExPR0lOIEJVVFRPTiAtIExvZ2luIGJ1dHRvbiBzdHlsaW5nXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZ3JvdXAtc2VsZWN0LWxvZ2luLXNlY3Rpb24ge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG5cdHBhZGRpbmc6IDEuNXJlbSAwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc29mdCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxufVxyXG5cclxuLmdyb3VwLXNlbGVjdC1sb2dpbi1idG4ge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMnJlbTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdGJveC1zaGFkb3c6IDAgM3B4IDhweCB2YXIoLS1zaGFkb3ctc20pO1xyXG5cdGZvbnQtd2VpZ2h0OiAkZnctc2VtaWJvbGQ7XHJcblx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tYm9yZGVyLXNvZnQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xyXG5cclxuXHQmOmhvdmVyIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtM3B4KTtcclxuXHRcdGJveC1zaGFkb3c6IDAgNnB4IDE2cHggdmFyKC0tc2hhZG93LW1kKTtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJnLWdyYXktbGlnaHQpO1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItbGlnaHQtcGluayk7XHJcblx0fVxyXG5cclxuXHQmOmFjdGl2ZSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0XHRib3gtc2hhZG93OiAwIDJweCA2cHggdmFyKC0tc2hhZG93LXNtKTtcclxuXHRcdHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XHJcblx0fVxyXG5cclxuXHQmOmZvY3VzLXZpc2libGUge1xyXG5cdFx0b3V0bGluZTogM3B4IHNvbGlkIHZhcigtLWZvY3VzLXJpbmctYnJhbmQpO1xyXG5cdFx0b3V0bGluZS1vZmZzZXQ6IDJweDtcclxuXHR9XHJcbn1cclxuXHJcbi5ncm91cC1zZWxlY3QtbG9naW4taWNvbiB7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgU1RBUlQgUEFHRSAtIFRhYiBwYW5lIHBhZGRpbmcgb3ZlcnJpZGVcclxuICAgTWF0Y2ggdGhlIHRpZ2h0ZXIgMnJlbSBwYWRkaW5nIHVzZWQgb24gQ2xhc3MgTWFuYWdlbWVudC4gU2V0IG9uXHJcbiAgIC5zdGFydC1wYWdlIC5yYXRoby10YWItdmlldyBzbyB0aGUgaGlnaGVyIHNwZWNpZmljaXR5ICgwLDIsMCkgYmVhdHMgdGhlXHJcbiAgIHJlc3BvbnNpdmUgbWVkaWEgcXVlcmllcyBpbiByYXRob3RhYnZpZXcuc2NzcyB0aGF0IHRhcmdldCBwbGFpblxyXG4gICAucmF0aG8tdGFiLXZpZXcgKDAsMSwwKS5cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5zdGFydC1wYWdlIHtcclxuICAgIC8qIEZsZXgtY29sdW1uIHdyYXBwZXIgc28gdGhlIGlubmVyIC5yYXRoby10YWItdmlldydzIGZsZXgtZ3JvdzoxICh4bCssXHJcbiAgICAgICBNYWluTGF5b3V0LnNjc3MpIGFjdHVhbGx5IGZpbGxzIC50YWItbWFpbiB2ZXJ0aWNhbGx5IOKAlCB3aXRob3V0IHRoaXNcclxuICAgICAgIGxpbmsgaW4gdGhlIGNoYWluIHRoZSB0YWIgY2FyZCBzdG9wcyBhdCBpdHMgY29udGVudCBoZWlnaHQgYW5kIHRoZVxyXG4gICAgICAgYm90dG9tIG1pc2FsaWducyBmcm9tIHRoZSBzaWRlYmFyIChtb3N0IHZpc2libGUgZm9yIHN0dWRlbnRzIHdob3NlXHJcbiAgICAgICBzaWRlYmFyIGlzIHRhbGxlciB0aGFuIHRoZSB0YWIgY29udGVudCkuIG1pbi1oZWlnaHQ6MCBsZXRzIHRoZSBjb2x1bW5cclxuICAgICAgIHNocmluayBiZWxvdyBpdHMgY29udGVudCBpZiB0aGUgdmlld3BvcnQgaXMgbmFycm93LiAqL1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICBmbGV4LWdyb3c6IDE7XHJcbiAgICBtaW4taGVpZ2h0OiAwO1xyXG59XHJcblxyXG4uc3RhcnQtcGFnZSAucmF0aG8tdGFiLXZpZXcge1xyXG4gICAgLS1jb250ZW50LXBhZGRpbmc6IDJyZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFNUQVJUIFBBR0UgLSBUYWIgdGl0bGViYXIgc3R5bGluZ1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogVGFiIGltYWdlIGljb25zIHNob3VsZCBhcHBlYXIgZ3JleSB0byBtYXRjaCBGb250QXdlc29tZSB0YWIgaWNvbnMgKi9cclxuLnJhdGhvLXRhYi12aWV3IC5uYXYtbGluayBpbWcge1xyXG5cdGZpbHRlcjogZ3JheXNjYWxlKDEpIGJyaWdodG5lc3MoMC41NSk7XHJcblx0dHJhbnNpdGlvbjogZmlsdGVyIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi5yYXRoby10YWItdmlldyAubmF2LWxpbmsuYWN0aXZlIGltZyB7XHJcblx0ZmlsdGVyOiBncmF5c2NhbGUoMSkgYnJpZ2h0bmVzcygwLjM1KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgU1RBUlQgUEFHRSAtIFJlc3BvbnNpdmUgdGFiIHRleHQgKGljb24tb25seSBvbiBzbWFsbCBzY3JlZW5zKVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogRGlzYWJsZWQgKGluYWN0aXZlKSB0YWJzOiBncmV5ZWQgb3V0IGFwcGVhcmFuY2Ugd2l0aCBub3QtYWxsb3dlZCBjdXJzb3IuXHJcbiAgIGN1cnNvciBtdXN0IGxpdmUgb24gdGhlIDxsaT4gYmVjYXVzZSA8YnV0dG9uIGRpc2FibGVkPiBibG9ja3MgcG9pbnRlciBldmVudHMuICovXHJcbi5yYXRoby10YWItdmlldyAubmF2LWl0ZW06aGFzKC5uYXYtbGluay5kaXNhYmxlZCkge1xyXG5cdGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcbn1cclxuXHJcbi5yYXRoby10YWItdmlldyAubmF2LWxpbmsuZGlzYWJsZWQge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdGNvbG9yOiB2YXIoLS1icy1zZWNvbmRhcnktY29sb3IpO1xyXG5cdG9wYWNpdHk6IDAuNTU7XHJcbn1cclxuXHJcbi8qIE9uIGV4dHJhLXNtYWxsIHNjcmVlbnMsIGhpZGUgdGFiIHRleHQgYW5kIHNob3cgb25seSBpY29ucyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNTc1Ljk4cHgpIHtcclxuXHQucmF0aG8tdGFiLXZpZXcgLm5hdi1saW5rIHtcclxuXHRcdC8qIFJlbW92ZSByaWdodCBtYXJnaW4gb24gaWNvbiB3aGVuIHRleHQgaXMgaGlkZGVuICovXHJcblx0XHRpIHtcclxuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xyXG5cdFx0XHRmb250LXNpemU6ICRmcy1tZDtcclxuXHRcdH1cclxuXHR9XHJcblxyXG59XHJcblxyXG4iLCJAdXNlIFwidHlwb2dyYXBoeS10b2tlbnNcIiBhcyAqO1xyXG5cclxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuLy8gVW5pZmllZCBFcnJvciBQYWdlIExheW91dCAtIFBvcnRhbCBCcmFuZFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmVycm9yLXBhZ2Uge1xyXG4gICAgbWluLWhlaWdodDogODB2aDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgcGFkZGluZzogM3JlbSAxNXB4O1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctY3JlYW0pO1xyXG59XHJcblxyXG4uZXJyb3ItcGFnZS1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zaWRlKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEuMjVyZW07XHJcbiAgICBwYWRkaW5nOiAzcmVtIDIuNXJlbTtcclxuICAgIGJveC1zaGFkb3c6IDAgNHB4IDI0cHggdmFyKC0tc2hhZG93LXNtKTtcclxuICAgIG1heC13aWR0aDogODAwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0bztcclxuICAgIGFuaW1hdGlvbjogZXJyb3JTbGlkZUluIDAuNnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbi8vIFN1YnRpdGxlXHJcbi5lcnJvci1wYWdlLXN1YnRpdGxlIHtcclxuICAgIG1heC13aWR0aDogNTAwcHg7XHJcbn1cclxuXHJcbi8vIEhlcm8gaWNvblxyXG4uZXJyb3ItcGFnZS1pY29uIHtcclxuICAgIGZvbnQtc2l6ZTogJGZzLTR4bDtcclxuICAgIHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi5lcnJvci1wYWdlLXB1bHNlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHdpZHRoOiAxMjBweDtcclxuICAgIGhlaWdodDogMTIwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1icmFuZC1wcmltYXJ5KTtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgICBhbmltYXRpb246IGVycm9yUHVsc2UgMnMgZWFzZS1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbi8vIEFjdGlvbiBjYXJkcyDigJQgUG9ydGFsLXNwZWNpZmljIHRoZW1lIG92ZXJyaWRlcyBmb3IgUmF0aG9BY3Rpb25DYXJkIHdpdGhpbiBlcnJvciBwYWdlc1xyXG4vLyAoYmFzZSBzdHlsZXMgbGl2ZSBpbiBSYXRoby5VSS5FbWJlci93d3dyb290L3Njc3MvY29tcG9uZW50cy9jb250ZW50L3JhdGhvYWN0aW9uY2FyZC5zY3NzKVxyXG4uZXJyb3ItcGFnZSAucmF0aG8tYWN0aW9uLWNhcmQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tYmctcGFuZWwtY3JlYW0pO1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItc29mdCk7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tYmctd2hpdGUpO1xyXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggdmFyKC0tc2hhZG93LXNtKTtcclxuICAgIH1cclxuXHJcbiAgICAucmF0aG8tYWN0aW9uLWNhcmQtaWNvbiB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLWJyYW5kLXByaW1hcnkpO1xyXG4gICAgfVxyXG5cclxuICAgIC5yYXRoby1hY3Rpb24tY2FyZC10aXRsZSB7XHJcbiAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFyayk7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIEZvb3RlclxyXG4uZXJyb3ItcGFnZS1mb290ZXIge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItc29mdCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLy8gVGVjaG5pY2FsIGRldGFpbHMgcGFuZWxcclxuLmVycm9yLXBhZ2UtdGVjaG5pY2FsLWRldGFpbHMge1xyXG4gICAgbWF4LXdpZHRoOiA1NTBweDtcclxufVxyXG5cclxuLy8gQW5pbWF0aW9uc1xyXG5Aa2V5ZnJhbWVzIGVycm9yU2xpZGVJbiB7XHJcbiAgICBmcm9tIHtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcclxuICAgIH1cclxuICAgIHRvIHtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuICAgIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBlcnJvclB1bHNlIHtcclxuICAgIDAlIHtcclxuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XHJcbiAgICAgICAgb3BhY2l0eTogMC42O1xyXG4gICAgfVxyXG4gICAgMTAwJSB7XHJcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xyXG4gICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vIE93bCBpbGx1c3RyYXRpb24gKHJlcGxhY2VzIGljb24gZm9yIGNoaWxkIHBhZ2VzKVxyXG4uZXJyb3ItcGFnZS1vd2wge1xyXG4gICAgd2lkdGg6IDEyMHB4O1xyXG4gICAgaGVpZ2h0OiBhdXRvO1xyXG4gICAgYW5pbWF0aW9uOiBlcnJvck93bEZsb2F0IDNzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGVycm9yT3dsRmxvYXQge1xyXG4gICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cclxuICAgIDUwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTsgfVxyXG59XHJcblxyXG4vLyBSZXNwb25zaXZlXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLmVycm9yLXBhZ2Uge1xyXG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMTVweDtcclxuICAgIH1cclxuXHJcbiAgICAuZXJyb3ItcGFnZS1jYXJkIHtcclxuICAgICAgICBwYWRkaW5nOiAycmVtIDEuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAuZXJyb3ItcGFnZS1hY3Rpb25zIHtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgfVxyXG59XHJcbiIsIkB1c2UgXCJ0eXBvZ3JhcGh5LXRva2Vuc1wiIGFzICo7XHJcblxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4vLyBOb1J1cCAoT25ib2FyZGluZykgUGFnZSAtIFBvcnRhbCBCcmFuZFxyXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG5cclxuLmN1c3RvbWVyLW9uYm9hcmRpbmctcGFnZSB7XHJcbiAgICBwYWRkaW5nOiAzcmVtIDA7XHJcbiAgICBtaW4taGVpZ2h0OiA4NXZoO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG5cclxuICAgIC5vbmJvYXJkaW5nLWNhcmQge1xyXG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWJnLXdoaXRlKTtcclxuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItc2lkZSk7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcclxuICAgICAgICBwYWRkaW5nOiAzcmVtIDIuNXJlbTtcclxuICAgICAgICBib3gtc2hhZG93OiAwIDRweCAyNHB4IHZhcigtLXNoYWRvdy1zbSk7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgYW5pbWF0aW9uOiBzbGlkZUluVXAgMC44cyBlYXNlLW91dDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBNYXNjb3QgaW1hZ2VcclxuICAgIC5vbmJvYXJkaW5nLW1hc2NvdCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xyXG4gICAgICAgIGhlaWdodDogYXV0bztcclxuICAgICAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgNHB4IDEycHggdmFyKC0tZ2xvdy1icmFuZC14cykpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEhlcm8gU2VjdGlvblxyXG4gICAgLm9uYm9hcmRpbmctaGVybyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgIC5oZXJvLXRpdGxlIHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFyayk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZnctYm9sZDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMtMnhsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmhlcm8tc3VidGl0bGUsXHJcbiAgICAgICAgLmhlcm8tZGVzY3JpcHRpb24ge1xyXG4gICAgICAgICAgICBmb250LXNpemU6ICRmcy1tZDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRsaC1ub3JtYWw7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gRmVhdHVyZSBHcmlkXHJcbiAgICAub25ib2FyZGluZy1iZW5lZml0cyB7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIHotaW5kZXg6IDE7XHJcblxyXG4gICAgICAgIGg0IHtcclxuICAgICAgICAgICAgY29sb3I6IHZhcigtLXRleHQtZGFyayk7XHJcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAuYmVuZWZpdC1pdGVtIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMS41cmVtO1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjc1cmVtO1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iZy1wYW5lbC1jcmVhbSk7XHJcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1zb2Z0KTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgICAgICAgaDYge1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIENhbGwgdG8gQWN0aW9uXHJcbiAgICAub25ib2FyZGluZy1jdGEge1xyXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICB6LWluZGV4OiAxO1xyXG5cclxuICAgICAgICBoNSB7XHJcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LWRhcmspO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLmN0YS1idXR0b25zIHtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgZ2FwOiAxcmVtO1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG5cclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIGdhcDogMC41cmVtO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC42MjVyZW0gMS41cmVtO1xyXG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC43NXJlbTtcclxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxNjBweDtcclxuXHJcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5hbHRlcm5hdGl2ZS1sb2dpbiB7XHJcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLXNvZnQpICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vLyBSZXNwb25zaXZlXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG4gICAgLmN1c3RvbWVyLW9uYm9hcmRpbmctcGFnZSB7XHJcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xyXG5cclxuICAgICAgICAub25ib2FyZGluZy1jYXJkIHtcclxuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAxLjVyZW07XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAub25ib2FyZGluZy1oZXJvIC5oZXJvLXRpdGxlIHtcclxuICAgICAgICAgICAgZm9udC1zaXplOiAkZnMteGw7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiIsIkB1c2UgXCJjb21wb25lbnRzL19iYXNlL3NrZWxldG9uLXZhcnNcIiBhcyAqO1xyXG5cclxuLy8gV3JhcHBlciBhcm91bmQgLmdyaWQtc3RhY2sgdXNlZCBieSBSYXRob0xpYnJhcnlDb250ZW50IC8gUmF0aG9SdXBUYWJXaWRnZXRDb250ZW50XHJcbi8vIHRvIHNpZ25hbCBhIGJhY2tncm91bmQgcmVsb2FkIChmbHlvdXQtY2xvc2UgLyBlbnYtY2hhbmdlKS4gVGhlIGdyaWQgc3RheXMgbW91bnRlZFxyXG4vLyBzbyB0aGUgdXNlciBrZWVwcyB0aGVpciB2aXN1YWwgYW5jaG9yOyB0aGlzIGp1c3QgZGltcyB0aGUgY29udGVudCB3aGlsZSBuZXcgZGF0YVxyXG4vLyBpcyBmZXRjaGVkLiBUcmFuc2l0aW9uIGlzIHNob3J0IHNvIHRoZSBkaW0gaXMgcGVyY2VpdmVkIGFzIGEgaGludCwgbm90IGEgd2FpdC5cclxuLnJhdGhvZ3JpZHN0YWNrLWhvc3Qge1xyXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlO1xyXG4gICAgb3BhY2l0eTogMTtcclxuXHJcbiAgICAmLmlzLXJlbG9hZGluZyB7XHJcbiAgICAgICAgb3BhY2l0eTogMC41NTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gYXVnbWVudHMgdGhlIG9yaWdpbmFsIGdyaWQtc3RhY2sgY2xhc3NcclxuLmdyaWQtc3RhY2sge1xyXG4gICAgLy8gQWxsb3cgaW5kaWNhdG9ycyB0byBvdmVyZmxvdyBvdXRzaWRlIGdyaWQgaXRlbXNcclxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xyXG5cclxuICAgIC8vIENhbmNlbCBncmlkc3RhY2sncyBwZXItaXRlbSBpbnNldCBvbiBvdXRlciBlZGdlcyBzbyB0aGUgbGVmdG1vc3QvcmlnaHRtb3N0XHJcbiAgICAvLyB0aWxlIGFsaWducyB3aXRoIHRoZSBzdXJyb3VuZGluZyB0aXRsZWJhci9zZWFyY2hiYXIuXHJcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1ncy1pdGVtLW1hcmdpbi1sZWZ0LCA2cHgpICogLTEpO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWdzLWl0ZW0tbWFyZ2luLXJpZ2h0LCA2cHgpICogLTEpO1xyXG5cclxuICAgIC8vIEJhc2UgY2FyZCBzdHlsaW5nIGZvciBhbGwgUmF0aG8gZ3JpZHN0YWNrIGl0ZW1zXHJcbiAgICAuZ3JpZC1zdGFjay1pdGVtIHtcclxuICAgICAgICAvLyBBbGxvdyBjaGlsZHJlbiB0byBvdmVyZmxvdyAoZm9yIGxvY2svZGVsZXRlIGluZGljYXRvcnMpXHJcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XHJcbiAgICAgICAgY29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xyXG5cclxuICAgICAgICAvLyBIaWRlIGl0ZW1zIHVudGlsIGdyaWRzdGFjay5qcyBoYXMgcG9zaXRpb25lZCB0aGVtIChwcmV2ZW50cyAwLDAgZmxhc2gpXHJcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cclxuICAgICAgICA+IC5ncmlkLXN0YWNrLWl0ZW0tY29udGVudCB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNzVyZW07IC8vIGFsaWducyB3aXRoIEJvb3RzdHJhcCByb3VuZGVkLTJcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCAxcHggM3B4IHZhcigtLXNoYWRvdy1zbSk7XHJcbiAgICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAxNTBtcyBlYXNlLCBib3gtc2hhZG93IDE1MG1zIGVhc2U7XHJcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47IC8vIE92ZXJyaWRlIGxpYnJhcnkncyBvdmVyZmxvdy15OiBhdXRvIHRvIHByZXZlbnQgc2Nyb2xsYmFyc1xyXG5cclxuICAgICAgICAgICAgLy8gU2tlbGV0b24gcGxhY2Vob2xkZXIgd2l0aCBzaGltbWVyIGFuaW1hdGlvbiB1bnRpbCB3aWRnZXQgY29udGVudCByZW5kZXJzXHJcbiAgICAgICAgICAgIC8vIFVzZXMgc2hhcmVkIHNrZWxldG9uLXNoaW1tZXIga2V5ZnJhbWVzIGZyb20gU2tlbGV0b24uc2Nzc1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICRza2VsZXRvbi1iYXNlIDI1JSwgJHNrZWxldG9uLWhpZ2hsaWdodCA1MCUsICRza2VsZXRvbi1iYXNlIDc1JSk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMjAwJSAxMDAlO1xyXG4gICAgICAgICAgICBhbmltYXRpb246IHNrZWxldG9uLXNoaW1tZXIgMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZTtcclxuXHJcbiAgICAgICAgICAgIC8vIEhpZGUgd2lkZ2V0IGNvbnRlbnQgdW50aWwgZ3JpZHN0YWNrIGhhcyBwb3NpdGlvbmVkIGl0ZW1zXHJcbiAgICAgICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEhvdmVyIGludGVyYWN0aW9uOiBzdWJ0bGUgbGlmdCBhbmQgc3Ryb25nZXIgc2hhZG93XHJcbiAgICAgICAgJjpob3ZlciA+IC5ncmlkLXN0YWNrLWl0ZW0tY29udGVudCB7XHJcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA4cHggMjBweCB2YXIoLS1zaGFkb3cteGwpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBLaWxsIGFsbCB0cmFuc2l0aW9ucyBkdXJpbmcgaW5pdGlhbCBsYXlvdXQgdG8gcHJldmVudCBpdGVtcyBmbHlpbmcgZnJvbSAoMCwwKVxyXG4gICAgJi5ncy1uby10cmFuc2l0aW9uLFxyXG4gICAgJi5ncy1uby10cmFuc2l0aW9uIC5ncmlkLXN0YWNrLWl0ZW0sXHJcbiAgICAmLmdzLW5vLXRyYW5zaXRpb24gLmdyaWQtc3RhY2staXRlbS1jb250ZW50IHtcclxuICAgICAgICB0cmFuc2l0aW9uOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUGhhc2UgMTogc2hvdyBzaGltbWVyIHBsYWNlaG9sZGVycyBhdCBjb3JyZWN0IHBvc2l0aW9uc1xyXG4gICAgJi5ncy1pbml0aWFsaXplZCAuZ3JpZC1zdGFjay1pdGVtIHtcclxuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFBoYXNlIDI6IHJldmVhbCB3aWRnZXQgY29udGVudCBhbmQgc3RvcCBzaGltbWVyXHJcbiAgICAmLmdzLWNvbnRlbnQtcmVhZHkgLmdyaWQtc3RhY2staXRlbSA+IC5ncmlkLXN0YWNrLWl0ZW0tY29udGVudCB7XHJcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xyXG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcblxyXG4gICAgICAgID4gKiB7XHJcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBXSURHRVQgQkFER0UgLSBTaGFyZWQgYmFzZSBmb3IgbG9jayAmIGRlbGV0ZSBpbmRpY2F0b3IgYmFkZ2VzXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uZ3Mtd2lkZ2V0LWJhZGdlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHotaW5kZXg6IDEwO1xyXG5cclxuICAgIC8vIEJhZGdlcyBhcmUgY2xpY2sgdGFyZ2V0cyBidXQgbmV2ZXIgdGV4dC0vZHJhZy1zZWxlY3Rpb24gdGFyZ2V0cyDigJQga2VlcHNcclxuICAgIC8vIGFjY2lkZW50YWwgaGlnaGxpZ2h0cyBvciBnaG9zdC1kcmFncyBmcm9tIGludGVyZmVyaW5nIHdpdGggdGhlIHdpZGdldC5cclxuICAgIHVzZXItc2VsZWN0OiBub25lO1xyXG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHJcbiAgICAvLyBPcmFuZ2UgY2lyY2xlIGJhZGdlIHdpdGggd2hpdGUgYm9yZGVyIC0gc2NhbGVzIHdpdGggdGlsZSBzaXplXHJcbiAgICB3aWR0aDogY2xhbXAoMS43NXJlbSwgMTdjcWksIDMuMjVyZW0pO1xyXG4gICAgaGVpZ2h0OiBjbGFtcCgxLjc1cmVtLCAxN2NxaSwgMy4yNXJlbSk7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1ncmFkaWVudC1zdGFydCk7XHJcbiAgICBib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1iZy13aGl0ZSk7XHJcblxyXG4gICAgLy8gUmVzZXQgYnV0dG9uIHVzZXItYWdlbnQgcGFkZGluZyAobm8tb3AgZm9yIHN0YXRpYyA8ZGl2PiB2YXJpYW50cykuXHJcbiAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgIC8vIE1hdGNoIHRoZSBob3Zlci1saWZ0IHRyYW5zaXRpb24gb2YgLmdyaWQtc3RhY2staXRlbS1jb250ZW50IHNvIHRoZVxyXG4gICAgLy8gYmFkZ2UgbW92ZXMgd2l0aCBpdHMgdGlsZSBpbnN0ZWFkIG9mIHN0YXlpbmcgYmVoaW5kIG9uIGhvdmVyLlxyXG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDE1MG1zIGVhc2U7XHJcblxyXG4gICAgLy8gQ2VudGVyIHRoZSBpY29uXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cclxuICAgIC8vIFdoaXRlIGljb24uIGlubGluZS1mbGV4ICsgYWxpZ24tL2p1c3RpZnktY2VudGVyIG9uIHRoZSA8aT4gaXRzZWxmXHJcbiAgICAvLyBieXBhc3NlcyBGb250QXdlc29tZSBnbHlwaC1iYXNlbGluZSBxdWlya3MgKHBlbmNpbC90cmFzaGNhbiBzaXQgbG93ZXJcclxuICAgIC8vIGluIHRoZWlyIGJvdW5kaW5nIGJveCB0aGFuIGxvY2spLCBzbyBhbGwgdGhyZWUgYmFkZ2VzIGxvb2sgdmlzdWFsbHlcclxuICAgIC8vIGNlbnRlcmVkLiBsaW5lLWhlaWdodDogMSBzdGlsbCBwaW5uZWQgdG8gbmV1dHJhbGlzZSBCb290c3RyYXAgYnV0dG9uXHJcbiAgICAvLyByZXNldC5cclxuICAgIGkge1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS10ZXh0LXdoaXRlKTtcclxuICAgICAgICBmb250LXNpemU6IGNsYW1wKDAuN3JlbSwgNy41Y3FpLCAxLjI1cmVtKTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFBORy1iYXNlZCBiYWRnZXMgKGxvY2svZGVsZXRlKSBjYXJyeSB0aGVpciBvd24gb3JhbmdlIGNpcmNsZSArIHdoaXRlXHJcbiAgICAvLyBib3JkZXIgaW4gdGhlIGFzc2V0LCBzbyB0aGUgc3Vycm91bmRpbmcgYmFkZ2UgYm94IGlzIHRyYW5zcGFyZW50IGFuZFxyXG4gICAgLy8gdGhlIGltYWdlIGZpbGxzIHRoZSBmdWxsIGNsYW1wKCktc2l6ZWQgYm94LlxyXG4gICAgLy8gcG9pbnRlci1ldmVudHM6IG5vbmUgbGV0cyBjbGlja3MgcGFzcyB0byB0aGUgcGFyZW50IDxidXR0b24+OyB0aGVcclxuICAgIC8vIC13ZWJraXQtdXNlci1kcmFnIC8gZHJhZ2dhYmxlIGhpbnQgcHJldmVudHMgYnJvd3NlciBpbWFnZS1kcmFnIGdob3N0cy5cclxuICAgID4gaW1nIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAtd2Via2l0LXVzZXItZHJhZzogbm9uZTtcclxuICAgIH1cclxufVxyXG5cclxuLy8gQGV4dGVuZCBvbiB0aGUgaW5kaWNhdG9ycyBwaWNrcyB1cCB0aGUgcGFyZW50IHNlbGVjdG9yIGhlcmUsIHNvIGEgc2luZ2xlIHJ1bGVcclxuLy8gYWdhaW5zdCAuZ3Mtd2lkZ2V0LWJhZGdlIGxpZnRzIGFsbCB0aHJlZSBpbmRpY2F0b3JzIG9uIGhvdmVyLlxyXG4uZ3JpZC1zdGFjay1pdGVtOmhvdmVyIC5ncy13aWRnZXQtYmFkZ2Uge1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBMT0NLIElORElDQVRPUiAtIFdpZGdldCBsb2NrIGJhZGdlIGF0IHRvcC1yaWdodFxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLy8gRWFjaCBpbmRpY2F0b3IgaXMgb2Zmc2V0IGJ5IC0tZ3MtYmFkZ2UtaW5zZXQgZnJvbSB0aGUgY29ycmVzcG9uZGluZyBlZGdlLlxyXG4vLyBQb3NpdGl2ZSB2YWx1ZSBzaXRzIHRoZSBiYWRnZSBmdWxseSBpbnNpZGUgdGhlIHRpbGUgc28gYWRqYWNlbnQgYmFkZ2VzXHJcbi8vIGFjcm9zcyB0aGUgZ3JpZHN0YWNrIGd1dHRlciBuZXZlciBvdmVybGFwLiBTY2FsZXMgd2l0aCB0aWxlIHdpZHRoIHZpYSBjcWkuXHJcbiRncy1iYWRnZS1pbnNldDogY2xhbXAoMC4ycmVtLCAxY3FpLCAwLjRyZW0pO1xyXG5cclxuLmdzLWxvY2staW5kaWNhdG9yIHtcclxuICAgIEBleHRlbmQgLmdzLXdpZGdldC1iYWRnZTtcclxuICAgIHRvcDogJGdzLWJhZGdlLWluc2V0O1xyXG4gICAgcmlnaHQ6ICRncy1iYWRnZS1pbnNldDtcclxuXHJcbiAgICAvLyBQTkcgYXNzZXQgc3VwcGxpZXMgaXRzIG93biBvcmFuZ2UgY2lyY2xlICsgd2hpdGUgYm9yZGVyIOKAlCBzdHJpcCB0aGVcclxuICAgIC8vIGJhZGdlJ3MgQ1NTIGJhY2tncm91bmQvYm9yZGVyIHNvIHRoZXkgZG9uJ3QgZG91YmxlIHVwLlxyXG4gICAgYmFja2dyb3VuZDogbm9uZTtcclxuICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAvLyBJbnRlcmFjdGl2ZSBsb2NrIHRvZ2dsZSAocmVuZGVyZWQgYXMgPGJ1dHRvbj4gaW4gZWRpdCBtb2RlKVxyXG4gICAgJi0taW50ZXJhY3RpdmUge1xyXG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgICAgICBvdXRsaW5lOiBub25lO1xyXG5cclxuICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDAuOSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZm9jdXMtcmluZy1ibHVlKTtcclxuICAgICAgICAgICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8gVW5sb2NrZWQgc3RhdGU6IGRlc2F0dXJhdGUgdGhlIFBORyBzbyBpdCByZWFkcyBhcyBhIHNlY29uZGFyeSwgbmV1dHJhbFxyXG4gICAgLy8gaW5kaWNhdG9yIGFnYWluc3QgdGhlIGxvY2tlZC1vcmFuZ2UuIENvbXBvc2VzIHdpdGggdGhlIGludGVyYWN0aXZlXHJcbiAgICAvLyBob3Zlci9mb2N1cyBmaWx0ZXJzIGJlbG93IHNvIGJvdGggZWZmZWN0cyBhcHBseSB0b2dldGhlci5cclxuICAgICYtLXVubG9ja2VkIHtcclxuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcclxuXHJcbiAgICAgICAgJi5ncy1sb2NrLWluZGljYXRvci0taW50ZXJhY3RpdmU6aG92ZXIge1xyXG4gICAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxKSBicmlnaHRuZXNzKDAuOSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBFRElUIElORElDQVRPUiAtIFdpZGdldCBlZGl0IGJ1dHRvbiBhdCB0b3AtbGVmdCAoZWRpdCBtb2RlKVxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLmdzLWVkaXQtaW5kaWNhdG9yIHtcclxuICAgIEBleHRlbmQgLmdzLXdpZGdldC1iYWRnZTtcclxuICAgIHRvcDogJGdzLWJhZGdlLWluc2V0O1xyXG4gICAgbGVmdDogJGdzLWJhZGdlLWluc2V0O1xyXG5cclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcblxyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDAuOSk7XHJcbiAgICB9XHJcblxyXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcclxuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZm9jdXMtcmluZy1ibHVlKTtcclxuICAgICAgICBvdXRsaW5lLW9mZnNldDogMnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBERUxFVEUgSU5ESUNBVE9SIC0gV2lkZ2V0IGRlbGV0ZSBidXR0b24gYXQgYm90dG9tLWxlZnQgKGVkaXQgbW9kZSlcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5ncy1kZWxldGUtaW5kaWNhdG9yIHtcclxuICAgIEBleHRlbmQgLmdzLXdpZGdldC1iYWRnZTtcclxuICAgIGJvdHRvbTogJGdzLWJhZGdlLWluc2V0O1xyXG4gICAgbGVmdDogJGdzLWJhZGdlLWluc2V0O1xyXG5cclxuICAgIC8vIFBORyBhc3NldCBzdXBwbGllcyBpdHMgb3duIGNpcmNsZSArIGJvcmRlciDigJQgc3RyaXAgdGhlIGJhZGdlJ3MgQ1NTXHJcbiAgICAvLyBiYWNrZ3JvdW5kL2JvcmRlciBzbyB0aGV5IGRvbid0IGRvdWJsZSB1cC5cclxuICAgIGJhY2tncm91bmQ6IG5vbmU7XHJcbiAgICBib3JkZXI6IDA7XHJcblxyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC45KTtcclxuICAgIH1cclxuXHJcbiAgICAmOmZvY3VzLXZpc2libGUge1xyXG4gICAgICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1mb2N1cy1yaW5nLWJsdWUpO1xyXG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIFJFU1BPTlNJVkUgQURKVVNUTUVOVFMgLSBNb2JpbGUgZ3V0dGVyIHRyaW1cclxuICAgVGlsZSBjb250ZW50IHBhZGRpbmcgaXMgZnVydGhlciByZWR1Y2VkIGJ5IGFwcGxpY2F0aW9uc2hvcnRjdXQuc2NzcyBhdCB0aGVcclxuICAgc2FtZSBicmVha3BvaW50LiBHcmlkc3RhY2sncyA2cHggbWFyZ2luIChzZXQgdmlhIG9wdGlvbnMpIGlzIGEgbGFyZ2UgZnJhY3Rpb25cclxuICAgb2YgYSB+MTA1cHggdGlsZTsgc2hyaW5rIHRoZSB2aXN1YWwgZ3V0dGVyIGJ5IGNsaXBwaW5nIGl0ZW0tY29udGVudCBwYWRkaW5nLlxyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAuZ3JpZC1zdGFjayA+IC5ncmlkLXN0YWNrLWl0ZW0gPiAuZ3JpZC1zdGFjay1pdGVtLWNvbnRlbnQge1xyXG4gICAgICAgIGluc2V0OiAzcHg7XHJcbiAgICB9XHJcbn1cclxuIl19 */
