@charset "UTF-8";
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
/* Light background sidebar*/
/* --------------------------------------------------*/
/*#f6f6f6;*/
/* vertical nav only*/
/* vertical nav only*/
/* $light_nav_sub2_nav_bg:               #eaeaea;*/
/* $light_nav_sub3_nav_bg:               #ddd;*/
/* Themes*/
/* --------------------------------------------------*/
/* $theme_dark_text_color:       rgba(255,255,255,.7);*/
/* or 3c3c3c*/
/* or #4c4c4c*/
/* #444;*/
/* Material Design Lite */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
html, body {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px; }

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
  padding: 0; }

/**
  * Styles for HTML elements
  */
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em;
  opacity: 0.54;
  font-size: 0.6em; }

h1 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em;
  margin-top: 24px;
  margin-bottom: 24px; }

h2 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 48px;
  margin-top: 24px;
  margin-bottom: 24px; }

h3 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 40px;
  margin-top: 24px;
  margin-bottom: 24px; }

h4 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  -moz-osx-font-smoothing: grayscale;
  margin-top: 24px;
  margin-bottom: 16px; }

h5 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  margin-top: 24px;
  margin-bottom: 16px; }

h6 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em;
  margin-top: 24px;
  margin-bottom: 16px; }

p {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  margin-bottom: 16px; }

a {
  color: #2196F3;
  font-weight: 500; }

blockquote {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  position: relative;
  font-size: 24px;
  font-weight: 300;
  font-style: italic;
  line-height: 1.35;
  letter-spacing: 0.08em; }
  blockquote:before {
    position: absolute;
    left: -0.5em;
    content: '“'; }
  blockquote:after {
    content: '”';
    margin-left: -0.05em; }

mark {
  background-color: #f4ff81; }

dt {
  font-weight: 700; }

address {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  font-style: normal; }

ul, ol {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0; }

/**
 * Class Name Styles
 */
.mdl-typography--display-4 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 112px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.04em; }

.mdl-typography--display-4-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 112px;
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.04em;
  opacity: 0.54; }

.mdl-typography--display-3 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em; }

.mdl-typography--display-3-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.35;
  letter-spacing: -0.02em;
  opacity: 0.54; }

.mdl-typography--display-2 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 48px; }

.mdl-typography--display-2-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 45px;
  font-weight: 400;
  line-height: 48px;
  opacity: 0.54; }

.mdl-typography--display-1 {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 40px; }

.mdl-typography--display-1-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 34px;
  font-weight: 400;
  line-height: 40px;
  opacity: 0.54; }

.mdl-typography--headline {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  -moz-osx-font-smoothing: grayscale; }

.mdl-typography--headline-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 24px;
  font-weight: 400;
  line-height: 32px;
  -moz-osx-font-smoothing: grayscale;
  opacity: 0.87; }

.mdl-typography--title {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em; }

.mdl-typography--title-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.02em;
  opacity: 0.87; }

.mdl-typography--subhead {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em; }

.mdl-typography--subhead-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.04em;
  opacity: 0.87; }

.mdl-typography--body-2 {
  font-size: 14px;
  font-weight: bold;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-2-color-contrast {
  font-size: 14px;
  font-weight: bold;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--body-1 {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-1-color-contrast {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--body-2-force-preferred-font {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-2-force-preferred-font-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--body-1-force-preferred-font {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0; }

.mdl-typography--body-1-force-preferred-font-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--caption {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--caption-force-preferred-font {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--caption-color-contrast {
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.54; }

.mdl-typography--caption-force-preferred-font-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.54; }

.mdl-typography--menu {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--menu-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--button {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0; }

.mdl-typography--button-color-contrast {
  font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 500;
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0;
  opacity: 0.87; }

.mdl-typography--text-left {
  text-align: left; }

.mdl-typography--text-right {
  text-align: right; }

.mdl-typography--text-center {
  text-align: center; }

.mdl-typography--text-justify {
  text-align: justify; }

.mdl-typography--text-nowrap {
  white-space: nowrap; }

.mdl-typography--text-lowercase {
  text-transform: lowercase; }

.mdl-typography--text-uppercase {
  text-transform: uppercase; }

.mdl-typography--text-capitalize {
  text-transform: capitalize; }

.mdl-typography--font-thin {
  font-weight: 200 !important; }

.mdl-typography--font-light {
  font-weight: 300 !important; }

.mdl-typography--font-regular {
  font-weight: 400 !important; }

.mdl-typography--font-medium {
  font-weight: 500 !important; }

.mdl-typography--font-bold {
  font-weight: 700 !important; }

.mdl-typography--font-black {
  font-weight: 900 !important; }

.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  word-wrap: normal;
  font-feature-settings: 'liga';
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
.mdl-badge {
  position: relative;
  white-space: nowrap;
  margin-right: 24px; }
  .mdl-badge:not([data-badge]) {
    margin-right: auto; }
  .mdl-badge[data-badge]:after {
    content: attr(data-badge);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-line-pack: center;
        align-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: absolute;
    top: -11px;
    right: -24px;
    font-family: "Roboto", -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    font-weight: 600;
    font-size: 75%;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #00BCD4;
    color: #fff; }
    .mdl-button .mdl-badge[data-badge]:after {
      top: -10px;
      right: -5px; }
  .mdl-badge.mdl-badge--no-background[data-badge]:after {
    color: #00BCD4;
    background: #999;
    -webkit-box-shadow: 0 0 1px gray;
            box-shadow: 0 0 1px gray; }
  .mdl-badge.mdl-badge--overlap {
    margin-right: 10px; }
    .mdl-badge.mdl-badge--overlap:after {
      right: -10px; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
.mdl-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  font-size: 16px;
  font-weight: 400;
  min-height: 200px;
  overflow: hidden;
  width: 330px;
  z-index: 1;
  position: relative;
  background: rgb(255,255,255);
  border-radius: 2px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.mdl-card__media {
  background-color: rgb(#66BB6A);
  background-repeat: repeat;
  background-position: 50% 50%;
  background-size: cover;
  background-origin: padding-box;
  background-attachment: scroll;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.mdl-card__title {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: rgb(0,0,0);
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: stretch;
      -ms-flex-pack: stretch;
          justify-content: stretch;
  line-height: normal;
  padding: 16px 16px;
  -webkit-perspective-origin: 165px 56px;
          perspective-origin: 165px 56px;
  -webkit-transform-origin: 165px 56px;
          transform-origin: 165px 56px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .mdl-card__title.mdl-card--border {
    border-bottom: 1px solid rgba(0, 0, 0, 0.125); }

.mdl-card__title-text {
  -ms-flex-item-align: end;
      align-self: flex-end;
  color: inherit;
  display: block;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 24px;
  font-weight: 300;
  line-height: normal;
  overflow: hidden;
  -webkit-transform-origin: 149px 48px;
          transform-origin: 149px 48px;
  margin: 0; }

.mdl-card__subtitle-text {
  font-size: 14px;
  color: rgba(0,0,0, 0.54);
  margin: 0; }

.mdl-card__supporting-text {
  color: rgba(0,0,0, 0.54);
  font-size: 14px;
  line-height: 18px;
  overflow: hidden;
  padding: 16px 16px;
  width: 90%; }
  .mdl-card__supporting-text.mdl-card--border {
    border-bottom: 1px solid rgba(0, 0, 0, 0.125); }

.mdl-card__actions {
  font-size: 16px;
  line-height: normal;
  width: 100%;
  background-color: rgba(0, 0, 0, 0);
  padding: 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .mdl-card__actions.mdl-card--border {
    border-top: 1px solid rgba(0, 0, 0, 0.125); }

.mdl-card--expand {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; }

.mdl-card__menu {
  position: absolute;
  right: 16px;
  top: 16px; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-data-table {
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-collapse: collapse;
  white-space: nowrap;
  font-size: 13px;
  background-color: rgb(255,255,255); }
  .mdl-data-table thead {
    padding-bottom: 3px; }
    .mdl-data-table thead .mdl-data-table__select {
      margin-top: 0; }
  .mdl-data-table tbody tr {
    position: relative;
    height: 48px;
    -webkit-transition-duration: 0.28s;
            transition-duration: 0.28s;
    -webkit-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
            transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-transition-property: background-color;
    transition-property: background-color; }
    .mdl-data-table tbody tr.is-selected {
      background-color: #e0e0e0; }
    .mdl-data-table tbody tr:hover {
      background-color: rgba(0, 0, 0, 0.08); }
  .mdl-data-table td, .mdl-data-table th {
    padding: 0 18px 12px 18px;
    text-align: right; }
    .mdl-data-table td:first-of-type, .mdl-data-table th:first-of-type {
      padding-left: 24px; }
    .mdl-data-table td:last-of-type, .mdl-data-table th:last-of-type {
      padding-right: 24px; }
  .mdl-data-table td {
    position: relative;
    vertical-align: middle;
    height: 48px;
    border-top: 1px solid rgba(0, 0, 0, 0.1);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-top: 12px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .mdl-data-table td .mdl-data-table__select {
      vertical-align: middle; }
  .mdl-data-table th {
    position: relative;
    vertical-align: bottom;
    text-overflow: ellipsis;
    font-size: 14px;
    font-weight: bold;
    line-height: 24px;
    letter-spacing: 0;
    height: 48px;
    font-size: 12px;
    color: rgba(0, 0, 0, 0.54);
    padding-bottom: 8px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .mdl-data-table th.mdl-data-table__header--sorted-ascending, .mdl-data-table th.mdl-data-table__header--sorted-descending {
      color: rgba(0, 0, 0, 0.87); }
      .mdl-data-table th.mdl-data-table__header--sorted-ascending:before, .mdl-data-table th.mdl-data-table__header--sorted-descending:before {
        font-family: 'Material Icons';
        font-weight: normal;
        font-style: normal;
        font-size: 24px;
        line-height: 1;
        letter-spacing: normal;
        text-transform: none;
        display: inline-block;
        word-wrap: normal;
        font-feature-settings: 'liga';
        -webkit-font-feature-settings: 'liga';
        -webkit-font-smoothing: antialiased;
        font-size: 16px;
        content: "\e5d8";
        margin-right: 5px;
        vertical-align: sub; }
      .mdl-data-table th.mdl-data-table__header--sorted-ascending:hover, .mdl-data-table th.mdl-data-table__header--sorted-descending:hover {
        cursor: pointer; }
        .mdl-data-table th.mdl-data-table__header--sorted-ascending:hover:before, .mdl-data-table th.mdl-data-table__header--sorted-descending:hover:before {
          color: rgba(0, 0, 0, 0.26); }
    .mdl-data-table th.mdl-data-table__header--sorted-descending:before {
      content: "\e5db"; }

.mdl-data-table__select {
  width: 16px; }

.mdl-data-table__cell--non-numeric.mdl-data-table__cell--non-numeric {
  text-align: left; }

/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * STYLE GUIDE VARIABLES------------------Declarations of Sass variables
 * -----Typography
 * -----Colors
 * -----Card
 * -----Badge
 * -----Shadows
 * -----Data table
 * -----Dark theme
 */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  COLORS  ========== */
/**
*
* Material design color palettes.
* @see http://www.google.com/design/spec/style/color.html
*
**/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color Palettes  ========== */
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900, A100, A200,*/
/* A400, A700.*/
/* Color order: 50, 100, 200, 300, 400, 500, 600, 700, 800, 900.*/
/* colors.scss */
/* The two possible colors for overlayed text.*/
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* ==========  Color & Themes  ========== */
/* ==========  TYPOGRAPHY  ========== */
/* ==========  Card  ========== */
/* CARD */
/* Card dimensions */
/* Cover image */
/* BADGE */
/* SHADOWS */
/* ANIMATION */
/* DATA TABLE */
/* ==========  DARK THEME  ========== */
/**
 * Copyright 2015 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/* Typography */
/* Shadows */
/* Animations */
/* Dialog */
.mdl-shadow--2dp, .card-panel, .card {
  -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); }

.mdl-shadow--3dp {
  -webkit-box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12);
          box-shadow: 0 3px 4px 0 rgba(0, 0, 0, 0.14), 0 3px 3px -2px rgba(0, 0, 0, 0.2), 0 1px 8px 0 rgba(0, 0, 0, 0.12); }

.mdl-shadow--4dp {
  -webkit-box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 4px 5px 0 rgba(0, 0, 0, 0.14), 0 1px 10px 0 rgba(0, 0, 0, 0.12), 0 2px 4px -1px rgba(0, 0, 0, 0.2); }

.mdl-shadow--6dp {
  -webkit-box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.2);
          box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.2); }

.mdl-shadow--8dp {
  -webkit-box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2); }

.mdl-shadow--16dp {
  -webkit-box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2);
          box-shadow: 0 16px 24px 2px rgba(0, 0, 0, 0.14), 0 6px 30px 5px rgba(0, 0, 0, 0.12), 0 8px 10px -5px rgba(0, 0, 0, 0.2); }

.mdl-shadow--24dp {
  -webkit-box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 9px 46px 8px rgba(0, 0, 0, 0.14), 0 11px 15px -7px rgba(0, 0, 0, 0.12), 0 24px 38px 3px rgba(0, 0, 0, 0.2); }

address {
  line-height: 1.5; }

.divider {
  display: block;
  border: 0;
  border-top: 1px solid transparent;
  margin-top: 10px;
  margin-bottom: 10px; }
  .divider.divider-solid {
    border-style: solid;
    border-color: rgba(0, 0, 0, 0.1); }
  .divider.divider-dashed {
    border-style: dashed;
    border-color: rgba(0, 0, 0, 0.1); }
  .divider.divider-dotted {
    border-style: dotted;
    border-color: rgba(0, 0, 0, 0.1); }

.divider-xs {
  margin-top: 3px;
  margin-bottom: 3px; }

.divider-sm {
  margin-top: 5px;
  margin-bottom: 5px; }

.divider-md {
  margin-top: 15px;
  margin-bottom: 15px; }

.divider-lg {
  margin-top: 20px;
  margin-bottom: 20px; }

.divider-xl {
  margin-top: 30px;
  margin-bottom: 30px; }

.divider-xxl {
  margin-top: 50px;
  margin-bottom: 50px; }

.space {
  display: inline;
  padding: 6px; }

.space-md {
  padding: 15px; }

.space-lg {
  padding: 25px; }

span.block {
  display: block; }

.no-margin {
  margin: 0 !important; }

.no-margin-h {
  margin-left: 0 !important;
  margin-right: 0 !important; }

.no-margin-top {
  margin-top: 0 !important; }

.no-margin-bottom {
  margin-bottom: 0 !important; }

.no-margin-left {
  margin-left: 0 !important; }

.no-margin-right {
  margin-right: 0 !important; }

.no-border {
  border: 0 !important; }

.no-border-radius {
  border-radius: 0; }

.no-padding {
  padding: 0 !important; }

.no-padding-h {
  padding-left: 0 !important;
  padding-right: 0 !important; }

.no-shadow {
  -webkit-box-shadow: 0;
          box-shadow: 0; }

.full-width {
  width: 100%; }

.pull-in {
  margin-left: -15px;
  margin-right: -15px; }

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

.article-title,
.article-title-style {
  font-size: 24px;
  font-weight: normal;
  line-height: 32px;
  margin: .6em 0;
  color: #2196F3; }
  .article-title.color-dark,
  .article-title-style.color-dark {
    color: rgba(0, 0, 0, 0.87); }

.chapter .article {
  padding-bottom: 30px; }
  .chapter .article:nth-of-type(1) .article-title {
    margin: 0 0 30px;
    border-top: none; }
  .chapter .article.article-dark {
    background-color: rgba(0, 0, 0, 0.015); }
  .chapter .article.article-bordered {
    border-top: 1px solid rgba(0, 0, 0, 0.117647);
    border-bottom: 1px solid rgba(0, 0, 0, 0.117647); }
    .chapter .article.article-bordered:last-child {
      border-bottom: 0; }
  .chapter .article.padding-lg-v {
    padding: 75px 0; }

.chapter .article-title {
  font-size: 24px;
  padding-top: 80px;
  font-weight: normal;
  line-height: 32px;
  margin: 48px 0 30px;
  border-top: 1px solid rgba(0, 0, 0, 0.117647);
  color: #2196F3; }

.hero {
  padding: 70px 0 75px;
  text-align: center; }

.hero-title {
  -webkit-font-smoothing: antialiased; }

.hero-title {
  color: rgba(0, 0, 0, 0.87);
  font-size: 45px;
  font-weight: 300;
  line-height: 50px;
  margin-bottom: 10px; }

.hero-tagline {
  margin: 10px auto 30px;
  max-width: 700px;
  color: rgba(0, 0, 0, 0.87);
  font-weight: 300;
  font-size: 24px;
  line-height: 32px; }

.theme-gray .hero-title,
.theme-gray .hero-tagline,
.theme-dark .hero-title,
.theme-dark .hero-tagline {
  color: #d5d6d7; }

.theme-gray .article-title.color-dark,
.theme-dark .article-title.color-dark {
  color: #d5d6d7; }

.container-fluid {
  padding-left: 30px;
  padding-right: 30px; }
  .container-fluid.padding-lg-h {
    padding-left: 30px;
    padding-right: 30px; }
  .container-fluid.with-maxwidth {
    max-width: 1400px; }
  .container-fluid.with-maxwidth-lg {
    max-width: 960px; }
  .container-fluid.with-maxwidth-md {
    max-width: 960px; }
  .container-fluid.with-maxwidth-sm {
    max-width: 720px; }
  .container-fluid.no-breadcrumbs {
    padding-top: 2em;
    padding-bottom: 1em; }

.gradient-text {
  font-size: 150px;
  font-weight: 300;
  color: #2196F3;
  background: -webkit-linear-gradient(92deg, #fb83fa, #00aced);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; }

.text-small {
  font-size: 12px; }

.text-normal {
  font-size: 1rem; }

.text-huge {
  font-size: 72px; }

.text-large {
  font-size: 50px; }

.text-thin {
  font-weight: 300; }

.text-ultralight {
  font-weight: 100; }

.bold {
  font-weight: 500; }

.color-primary,
a.color-primary {
  color: #2196F3; }
  .color-primary:hover,
  a.color-primary:hover {
    color: #2196F3; }

.color-success,
a.color-success {
  color: #66BB6A; }
  .color-success:hover,
  a.color-success:hover {
    color: #66BB6A; }

.color-info,
a.color-info {
  color: #00BCD4; }
  .color-info:hover,
  a.color-info:hover {
    color: #00BCD4; }

.color-info-alt,
a.color-info-alt {
  color: #7E57C2; }
  .color-info-alt:hover,
  a.color-info-alt:hover {
    color: #7E57C2; }

.color-warning,
a.color-warning {
  color: #FFCA28; }
  .color-warning:hover,
  a.color-warning:hover {
    color: #FFCA28; }

.color-danger,
a.color-danger {
  color: #EF5350; }
  .color-danger:hover,
  a.color-danger:hover {
    color: #EF5350; }

.color-dark,
a.color-dark {
  color: #121316; }
  .color-dark:hover,
  a.color-dark:hover {
    color: #121316; }

.color-white,
a.color-white {
  color: #fff; }
  .color-white:hover,
  a.color-white:hover {
    color: #fff; }

.color-gray-darker,
a.color-gray-darker {
  color: #222; }
  .color-gray-darker:hover,
  a.color-gray-darker:hover {
    color: #222; }

.color-gray-dark,
a.color-gray-dark {
  color: #292b2c; }
  .color-gray-dark:hover,
  a.color-gray-dark:hover {
    color: #292b2c; }

.color-gray,
a.color-gray {
  color: #464a4c; }
  .color-gray:hover,
  a.color-gray:hover {
    color: #464a4c; }

.color-gray-light,
a.color-gray-light {
  color: #636c72; }
  .color-gray-light:hover,
  a.color-gray-light:hover {
    color: #636c72; }

.color-gray-lighter,
a.color-gray-lighter {
  color: #eceeef; }
  .color-gray-lighter:hover,
  a.color-gray-lighter:hover {
    color: #eceeef; }

.dropcap,
.dropcap-square,
.dropcap-circle {
  display: block;
  float: left;
  font-weight: normal;
  line-height: 36px;
  margin-right: 6px;
  text-shadow: none; }

.dropcap {
  font-size: 3.1em; }

.dropcap-square,
.dropcap-circle {
  background-color: #eceeef;
  color: rgba(0, 0, 0, 0.87);
  width: 36px;
  text-align: center; }

.dropcap-square {
  border-radius: 0.2rem;
  font-size: 2.3em; }

.dropcap-circle {
  border-radius: 50%;
  font-size: 1.78em; }

.dropcap.colored {
  color: #2196F3; }

.dropcap-square.colored,
.dropcap-circle.colored {
  background-color: #2196F3;
  color: #fff; }

.ui-highlight {
  background-color: #121316;
  color: #fff;
  border-radius: 0.2rem;
  padding: 2px 5px; }
  .ui-highlight.colored {
    background-color: #2196F3; }

a.btn-w-xs,
button.btn-w-xs {
  min-width: 80px; }

a.btn-w-sm,
button.btn-w-sm {
  min-width: 100px; }

a.btn-w-md,
button.btn-w-md {
  min-width: 135px; }

a.btn-w-lg,
button.btn-w-lg {
  min-width: 160px; }

a.btn-round,
button.btn-round {
  border-radius: 2em; }

a.btn-gap,
button.btn-gap {
  margin: 5px; }

a.btn-gap-h,
button.btn-gap-h {
  margin: 0 5px; }

a.btn-gap-v,
button.btn-gap-v {
  margin: 0 0 5px; }

.btn-icon {
  padding: 0;
  display: inline-block;
  text-align: center;
  border-radius: 0.2rem;
  height: 35px;
  width: 35px;
  line-height: 35px; }
  .btn-icon i {
    line-height: 35px; }
  .btn-icon.btn-icon-lined {
    line-height: 31px; }
    .btn-icon.btn-icon-lined i {
      line-height: 31px; }
    .btn-icon.btn-icon-lined.btn-icon-thin {
      line-height: 33px; }
      .btn-icon.btn-icon-lined.btn-icon-thin i {
        line-height: 33px; }

.btn-icon-round {
  border-radius: 50%; }

.btn-icon-sm {
  height: 30px;
  width: 30px;
  line-height: 30px; }
  .btn-icon-sm i {
    line-height: 30px; }
  .btn-icon-sm.btn-icon-lined {
    line-height: 26px; }
    .btn-icon-sm.btn-icon-lined i {
      line-height: 26px; }
    .btn-icon-sm.btn-icon-lined.btn-icon-thin {
      line-height: 28px; }
      .btn-icon-sm.btn-icon-lined.btn-icon-thin i {
        line-height: 28px; }

.btn-icon-md {
  height: 45px;
  width: 45px;
  line-height: 45px;
  font-size: 18px; }
  .btn-icon-md i {
    line-height: 45px; }
  .btn-icon-md.btn-icon-lined {
    line-height: 41px; }
    .btn-icon-md.btn-icon-lined i {
      line-height: 41px; }
    .btn-icon-md.btn-icon-lined.btn-icon-thin {
      line-height: 43px; }
      .btn-icon-md.btn-icon-lined.btn-icon-thin i {
        line-height: 43px; }

.btn-icon-lg {
  height: 65px;
  width: 65px;
  line-height: 65px;
  font-size: 28px; }
  .btn-icon-lg i {
    line-height: 65px; }
  .btn-icon-lg.btn-icon-lined {
    line-height: 61px; }
    .btn-icon-lg.btn-icon-lined i {
      line-height: 61px; }
    .btn-icon-lg.btn-icon-lined.btn-icon-thin {
      line-height: 63px; }
      .btn-icon-lg.btn-icon-lined.btn-icon-thin i {
        line-height: 63px; }

.btn-icon-lg-alt {
  height: 70px;
  width: 70px;
  line-height: 70px; }
  .btn-icon-lg-alt i {
    line-height: 70px; }
  .btn-icon-lg-alt.btn-icon-lined {
    line-height: 66px; }
    .btn-icon-lg-alt.btn-icon-lined i {
      line-height: 66px; }
    .btn-icon-lg-alt.btn-icon-lined.btn-icon-thin {
      line-height: 68px; }
      .btn-icon-lg-alt.btn-icon-lined.btn-icon-thin i {
        line-height: 68px; }

.btn-icon-xl {
  height: 80px;
  width: 80px;
  line-height: 80px; }
  .btn-icon-xl i {
    line-height: 80px; }
  .btn-icon-xl.btn-icon-lined {
    line-height: 76px; }
    .btn-icon-xl.btn-icon-lined i {
      line-height: 76px; }
    .btn-icon-xl.btn-icon-lined.btn-icon-thin {
      line-height: 78px; }
      .btn-icon-xl.btn-icon-lined.btn-icon-thin i {
        line-height: 78px; }

.btn-twitter {
  color: #fff;
  background-color: #00c7f7;
  border-color: #00c7f7; }
  .btn-twitter:hover, .btn-twitter:focus, .btn-twitter:active {
    color: #fff;
    text-decoration: none;
    background-color: #00a6ce;
    border-color: #0096ba; }

.btn-facebook {
  color: #fff;
  background-color: #335397;
  border-color: #335397; }
  .btn-facebook:hover, .btn-facebook:focus, .btn-facebook:active {
    color: #fff;
    text-decoration: none;
    background-color: #294279;
    border-color: #243a69; }

.btn-gplus,
.btn-google-plus {
  color: #fff;
  background-color: #dd4a38;
  border-color: #dd4a38; }
  .btn-gplus:hover, .btn-gplus:focus, .btn-gplus:active,
  .btn-google-plus:hover,
  .btn-google-plus:focus,
  .btn-google-plus:active {
    color: #fff;
    text-decoration: none;
    background-color: #ca3522;
    border-color: #b8301f; }

.btn-instagram {
  color: #fff;
  background-color: #82685A;
  border-color: #82685A; }
  .btn-instagram:hover, .btn-instagram:focus, .btn-instagram:active {
    color: #fff;
    text-decoration: none;
    background-color: #6a5549;
    border-color: #5e4b41; }

.btn-vimeo {
  color: #fff;
  background-color: #63879C;
  border-color: #63879C; }
  .btn-vimeo:hover, .btn-vimeo:focus, .btn-vimeo:active {
    color: #fff;
    text-decoration: none;
    background-color: #537183;
    border-color: #4b6777; }

.btn-flickr {
  color: #fff;
  background-color: #0061DB;
  border-color: #0061DB; }
  .btn-flickr:hover, .btn-flickr:focus, .btn-flickr:active {
    color: #fff;
    text-decoration: none;
    background-color: #004fb2;
    border-color: #00469e; }

.btn-github {
  color: #fff;
  background-color: #3B3B3B;
  border-color: #3B3B3B; }
  .btn-github:hover, .btn-github:focus, .btn-github:active {
    color: #fff;
    text-decoration: none;
    background-color: #272727;
    border-color: #1c1c1c; }

.btn-pinterest {
  color: #fff;
  background-color: #D73532;
  border-color: #D73532; }
  .btn-pinterest:hover, .btn-pinterest:focus, .btn-pinterest:active {
    color: #fff;
    text-decoration: none;
    background-color: #bc2725;
    border-color: #ab2421; }

.btn-tumblr {
  color: #fff;
  background-color: #586980;
  border-color: #586980; }
  .btn-tumblr:hover, .btn-tumblr:focus, .btn-tumblr:active {
    color: #fff;
    text-decoration: none;
    background-color: #475568;
    border-color: #3f4b5c; }

.btn-linkedin {
  color: #fff;
  background-color: #018FAF;
  border-color: #018FAF; }
  .btn-linkedin:hover, .btn-linkedin:focus, .btn-linkedin:active {
    color: #fff;
    text-decoration: none;
    background-color: #016e86;
    border-color: #015d72; }

.btn-dribbble {
  color: #fff;
  background-color: #EA73A0;
  border-color: #EA73A0; }
  .btn-dribbble:hover, .btn-dribbble:focus, .btn-dribbble:active {
    color: #fff;
    text-decoration: none;
    background-color: #e55088;
    border-color: #e23e7c; }

.btn-stumbleupon {
  color: #fff;
  background-color: #EA4B24;
  border-color: #EA4B24; }
  .btn-stumbleupon:hover, .btn-stumbleupon:focus, .btn-stumbleupon:active {
    color: #fff;
    text-decoration: none;
    background-color: #d13914;
    border-color: #bf3412; }

.btn-lastfm {
  color: #fff;
  background-color: #B80638;
  border-color: #B80638; }
  .btn-lastfm:hover, .btn-lastfm:focus, .btn-lastfm:active {
    color: #fff;
    text-decoration: none;
    background-color: #90052c;
    border-color: #7d0426; }

.btn-evernote {
  color: #fff;
  background-color: #3BAB27;
  border-color: #3BAB27; }
  .btn-evernote:hover, .btn-evernote:focus, .btn-evernote:active {
    color: #fff;
    text-decoration: none;
    background-color: #308a1f;
    border-color: #2a791c; }

.btn-skype {
  color: #fff;
  background-color: #00B0F6;
  border-color: #00B0F6; }
  .btn-skype:hover, .btn-skype:focus, .btn-skype:active {
    color: #fff;
    text-decoration: none;
    background-color: #0093cd;
    border-color: #0084b9; }

.btn-soundcloud {
  color: #fff;
  background-color: #0066FF;
  border-color: #0066FF; }
  .btn-soundcloud:hover, .btn-soundcloud:focus, .btn-soundcloud:active {
    color: #fff;
    text-decoration: none;
    background-color: #0056d6;
    border-color: #004ec2; }

.btn-behance {
  color: #fff;
  background-color: #B80638;
  border-color: #B80638; }
  .btn-behance:hover, .btn-behance:focus, .btn-behance:active {
    color: #fff;
    text-decoration: none;
    background-color: #90052c;
    border-color: #7d0426; }

.btn-rss {
  color: #fff;
  background-color: #F79638;
  border-color: #F79638; }
  .btn-rss:hover, .btn-rss:focus, .btn-rss:active {
    color: #fff;
    text-decoration: none;
    background-color: #f58111;
    border-color: #e87709; }

.btn-youtube {
  color: #fff;
  background-color: #CC181E;
  border-color: #CC181E; }
  .btn-youtube:hover, .btn-youtube:focus, .btn-youtube:active {
    color: #fff;
    text-decoration: none;
    background-color: #a71419;
    border-color: #951216; }

.theme-gray .btn-default,
.theme-gray .btn-secondary,
.theme-dark .btn-default,
.theme-dark .btn-secondary {
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(0, 0, 0, 0.15);
  color: #d5d6d7; }

@media only screen and (max-width: 800px) {
  .table-flip-scroll {
    /* sort out borders */ }
    .table-flip-scroll .cf:after {
      visibility: hidden;
      display: block;
      font-size: 0;
      content: " ";
      clear: both;
      height: 0; }
    .table-flip-scroll * html .cf {
      zoom: 1; }
    .table-flip-scroll *:first-child + html .cf {
      zoom: 1; }
    .table-flip-scroll table {
      width: 100%;
      border-collapse: collapse;
      border-spacing: 0; }
    .table-flip-scroll th,
    .table-flip-scroll td {
      margin: 0;
      vertical-align: top; }
    .table-flip-scroll th {
      text-align: left; }
    .table-flip-scroll table {
      display: block;
      position: relative;
      width: 100%; }
    .table-flip-scroll thead {
      display: block;
      float: left; }
    .table-flip-scroll tbody {
      display: block;
      width: auto;
      position: relative;
      overflow-x: auto;
      white-space: nowrap; }
    .table-flip-scroll thead tr {
      display: block; }
    .table-flip-scroll .table > thead > tr > th:first-child {
      border-top: 1px solid #ddd; }
    .table-flip-scroll th {
      display: block;
      text-align: right; }
    .table-flip-scroll tbody tr {
      display: inline-block;
      vertical-align: top; }
    .table-flip-scroll td {
      display: block;
      min-height: 1.25em;
      text-align: left; }
    .table-flip-scroll th {
      border-bottom: 0;
      border-left: 0; }
    .table-flip-scroll td {
      border-left: 0;
      border-right: 0;
      border-bottom: 0; }
    .table-flip-scroll tbody tr {
      border-left: 1px solid #babcbf; }
    .table-flip-scroll th:last-child,
    .table-flip-scroll td:last-child {
      border-bottom: 1px solid #babcbf; }
    .table-flip-scroll .mdl-data-table tbody tr {
      height: auto; } }

.theme-gray .form-control,
.theme-gray .input-group-addon,
.theme-dark .form-control,
.theme-dark .input-group-addon {
  background-color: rgba(255, 255, 255, 0.05);
  border-color: rgba(0, 0, 0, 0.15);
  color: #d5d6d7; }

.theme-gray .help-block,
.theme-dark .help-block {
  color: #636c72; }

.input-round {
  border-radius: 2em; }

input.input-primary {
  border-color: #2196F3; }
  input.input-primary:focus {
    border-color: #2196F3; }

input.input-info {
  border-color: #00BCD4; }
  input.input-info:focus {
    border-color: #00BCD4; }

input.input-success {
  border-color: #66BB6A; }
  input.input-success:focus {
    border-color: #66BB6A; }

input.input-warning {
  border-color: #FFCA28; }
  input.input-warning:focus {
    border-color: #FFCA28; }

input.input-danger {
  border-color: #EF5350; }
  input.input-danger:focus {
    border-color: #EF5350; }

.box {
  position: relative;
  margin-bottom: 1.5rem;
  border: 0;
  border-radius: 0.2rem;
  -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 2px rgba(0, 0, 0, 0.15); }
  .box.box-transparent {
    -webkit-box-shadow: none;
            box-shadow: none; }
  .box .box-dark {
    background-color: rgba(0, 0, 0, 0.03); }

.box-default {
  background-color: #fff; }

.box-header {
  padding: 0.75rem 1.25rem;
  border-bottom: 1px solid transparent;
  border-radius: -0.8rem -0.8rem 0 0;
  font-weight: 500; }

.box-toolbar {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem; }
  .box-toolbar a {
    color: #636c72; }
    .box-toolbar a .material-icons {
      font-size: 1rem; }

.box-divider {
  height: 1px;
  background: rgba(0, 0, 0, 0.08);
  margin: 0 1.25rem; }

.box-body {
  padding: 1.25rem; }
  .box-body::after {
    display: block;
    content: "";
    clear: both; }
  .box-body.padding-lg {
    padding: 30px 15px; }
  .box-body.padding-xl {
    padding: 60px 15px; }
  .box-body.padding-lg-h {
    padding: 15px 30px; }
  .box-body.padding-lg-v {
    padding: 30px 15px; }

.theme-gray .box-default {
  background-color: #191919; }

.theme-dark .box-default {
  background-color: #17181c; }

.breadcrumb {
  display: block;
  margin: 0;
  border: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: transparent;
  padding: 15px 0;
  text-transform: uppercase;
  color: #ccc;
  text-shadow: none;
  font-size: 11px; }
  .breadcrumb a {
    color: #ccc;
    text-decoration: none; }
    .breadcrumb a:hover {
      color: #2196F3; }
  .breadcrumb li {
    padding-left: 0; }

.call-to-action {
  position: relative;
  text-align: center; }
  .call-to-action .cta-inner {
    padding: 2em 0; }
  .call-to-action .cta-text {
    font-size: 24px;
    line-height: 30px; }
  .call-to-action .cta-btn {
    margin: 30px 0 10px; }
  .call-to-action .cta-muted {
    opacity: .7; }
  .call-to-action.cta-inline .cta-text {
    font-size: 20px;
    font-weight: 300; }
  .call-to-action.cta-inline .cta-btn {
    display: inline-block;
    margin: 0 0 0 30px; }
  .call-to-action.cta-full-width .cta-inner {
    padding: 6em 1em; }
  .call-to-action.cta-bg-img {
    background-size: cover;
    background-position: center;
    color: rgba(255, 255, 255, 0.8); }
    .call-to-action.cta-bg-img .cta-inner {
      background-color: rgba(0, 0, 0, 0.35);
      padding: 7em 1em; }

.callout {
  margin: 20px 0;
  padding: 20px;
  border-left: 3px solid #eee; }
  .callout h4 {
    margin-top: 0;
    margin-bottom: 5px;
    font-size: 1.25rem;
    line-height: 1.5; }
  .callout p:last-child {
    margin-bottom: 0; }

.callout-success {
  background-color: rgba(102, 187, 106, 0.08);
  border-color: #66BB6A; }
  .callout-success h4 {
    color: #66BB6A; }

.callout-info {
  background-color: rgba(0, 188, 212, 0.05);
  border-color: #00BCD4; }
  .callout-info h4 {
    color: #00BCD4; }

.callout-warning {
  background-color: rgba(255, 202, 40, 0.08);
  border-color: #FFCA28; }
  .callout-warning h4 {
    color: #FFCA28; }

.callout-danger {
  background-color: rgba(239, 83, 80, 0.05);
  border-color: #EF5350; }
  .callout-danger h4 {
    color: #EF5350; }

.card-white {
  color: rgba(0, 0, 0, 0.87);
  background-color: #fff; }

a.item-card {
  display: block;
  text-decoration: none; }
  a.item-card:hover {
    -webkit-box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 15px rgba(0, 0, 0, 0.1); }

.item-card {
  position: relative;
  -webkit-transition: 0.2s linear;
  transition: 0.2s linear; }
  .item-card img {
    max-width: 100%;
    max-height: 100%; }
  .item-card .card__image {
    padding: 30px 15px;
    height: 300px;
    background-color: rgba(0, 0, 0, 0.035);
    text-align: center; }
  .item-card h1, .item-card h2, .item-card h3, .item-card h4, .item-card h5, .item-card h6 {
    margin: 0;
    color: rgba(0, 0, 0, 0.87);
    line-height: 1.5; }
  .item-card h6 {
    font-size: 10px;
    opacity: .5; }
  .item-card h4 {
    font-size: 16px; }
  .item-card .card__body {
    position: relative;
    padding: 30px 15px;
    margin-bottom: 30px; }
  .item-card .card__price {
    position: absolute;
    top: 30px;
    right: 15px; }
    .item-card .card__price span {
      display: block;
      color: #636c72; }
      .item-card .card__price span.type--strikethrough {
        opacity: .5;
        text-decoration: line-through; }
  .item-card.card__horizontal {
    position: relative;
    margin-bottom: 30px; }
    .item-card.card__horizontal .card__image {
      width: 50%; }
    .item-card.card__horizontal .card__body {
      width: 50%;
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      padding: 40px 30px; }
    .item-card.card__horizontal .card__price {
      top: 30px;
      right: 30px; }
    .item-card.card__horizontal .card__desc {
      margin: 0 25% 3em 0;
      opacity: .7; }

.theme-gray .card-white,
.theme-dark .card-white {
  color: #d5d6d7; }
  .theme-gray .card-white h1, .theme-gray .card-white h2, .theme-gray .card-white h3, .theme-gray .card-white h4, .theme-gray .card-white h5, .theme-gray .card-white h6,
  .theme-dark .card-white h1,
  .theme-dark .card-white h2,
  .theme-dark .card-white h3,
  .theme-dark .card-white h4,
  .theme-dark .card-white h5,
  .theme-dark .card-white h6 {
    color: #d5d6d7; }

.theme-gray .card-white {
  background-color: #191919; }

.theme-dark .card-white {
  background-color: #17181c; }

.feature-callout {
  position: relative;
  clear: both; }
  @media (min-width: 768px) {
    .feature-callout.feature-content-left .callout-feature-content {
      padding-right: 2em; } }
  @media (min-width: 1200px) {
    .feature-callout.feature-content-left .callout-feature-content {
      padding-right: 3em; } }
  @media (min-width: 768px) {
    .feature-callout.feature-content-right .callout-feature-content {
      padding-left: 2em; } }
  @media (min-width: 1200px) {
    .feature-callout.feature-content-right .callout-feature-content {
      padding-left: 3em; } }
  .feature-callout.feature-content-center .callout-feature-content {
    text-align: center;
    max-width: 75%;
    margin: 0 auto; }
  .feature-callout .md-button {
    padding: 5px 0;
    min-width: 150px; }

.feature-callout-cover,
.feature-callout-image-pull {
  background-size: cover;
  background-position: center; }

.feature-callout-image-pull {
  min-height: 200px; }
  @media (min-width: 768px) {
    .feature-callout-image-pull {
      position: absolute;
      top: 0;
      bottom: 0; } }

.callout-feature-content {
  padding: 3em 0; }
  @media (min-width: 768px) {
    .callout-feature-content {
      padding-top: 6em;
      padding-bottom: 6em; } }
  @media (min-width: 992px) {
    .callout-feature-content {
      padding-top: 8em;
      padding-bottom: 8em; } }
  @media (min-width: 1200px) {
    .callout-feature-content {
      padding-top: 12em;
      padding-bottom: 12em; } }
  .callout-feature-content h2 {
    font-size: 24px;
    margin-top: 0; }
    @media (min-width: 768px) {
      .callout-feature-content h2 {
        font-size: 30px;
        font-weight: 400;
        line-height: 1.9;
        margin: 0; } }
  .callout-feature-content p {
    line-height: 1.75;
    -webkit-hyphens: none;
        -ms-hyphens: none;
            hyphens: none; }
    .callout-feature-content p:last-child {
      margin-bottom: 0; }
    @media (min-width: 768px) {
      .callout-feature-content p {
        line-height: 2;
        margin: 1.5em 0; } }

.feature-callout-cover.has-overlay {
  color: #fff; }
  .feature-callout-cover.has-overlay:after {
    content: ' ';
    position: absolute;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.25); }

.feature-callout-cover .with-maxwidth {
  position: relative;
  z-index: 2; }

.feature-callout-cover h2 {
  font-size: 30px;
  font-weight: bold;
  letter-spacing: .1em; }
  @media (min-width: 768px) {
    .feature-callout-cover h2 {
      font-size: 48px; } }

.ih-item {
  position: relative;
  border-radius: 0.2rem;
  -webkit-transition: all 0.35s ease-in-out;
  transition: all 0.35s ease-in-out; }
  .ih-item a {
    color: #333; }
    .ih-item a:hover {
      text-decoration: none; }
  .ih-item img {
    border-radius: 0.2rem;
    width: 100%;
    height: 100%; }

.ih-item.square {
  position: relative;
  margin-bottom: 30px; }
  .ih-item.square .info {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden; }

.ih-item.ih-material {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%; }
  .ih-item.ih-material .info-mask {
    content: '';
    position: absolute;
    top: -25%;
    left: 0;
    right: 0;
    padding-bottom: 100%;
    border-radius: 50%;
    opacity: 0;
    -webkit-transform: scale(0);
            transform: scale(0);
    -webkit-transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1); }
  .ih-item.ih-material .info-content {
    opacity: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    -webkit-transform: scale(0.5);
            transform: scale(0.5);
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    .ih-item.ih-material .info-content:before {
      content: '';
      display: inline-block;
      vertical-align: middle;
      height: 100%;
      margin-left: -0.5em; }
    .ih-item.ih-material .info-content .info-inner {
      display: inline-block;
      width: 100%;
      vertical-align: middle;
      text-align: center; }
      .ih-item.ih-material .info-content .info-inner h3 {
        margin: 0 0 10px;
        text-transform: uppercase;
        color: #fff;
        font-size: 18px;
        line-height: 1; }
      .ih-item.ih-material .info-content .info-inner p {
        font-style: italic;
        font-size: 12px;
        color: #eceeef; }
  .ih-item.ih-material .bg-color-white + .info-content .info-inner h3,
  .ih-item.ih-material .bg-color-warning + .info-content .info-inner h3 {
    color: rgba(0, 0, 0, 0.87); }
  .ih-item.ih-material .bg-color-white + .info-content .info-inner p,
  .ih-item.ih-material .bg-color-warning + .info-content .info-inner p {
    color: #999; }
  .ih-item.ih-material a:hover .info-content {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); }
  .ih-item.ih-material a:hover .info-mask {
    opacity: .8;
    -webkit-transform: scale(1.21);
            transform: scale(1.21); }

.ih-item.square.effect3 {
  overflow: hidden; }
  .ih-item.square.effect3 .info {
    height: 65px;
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0;
    -webkit-transition: all .35s ease-in-out;
    transition: all .35s ease-in-out; }
    .ih-item.square.effect3 .info h3 {
      text-transform: uppercase;
      color: #fff;
      text-align: center;
      font-size: 17px;
      line-height: 1;
      padding: 10px 10px 0 4px;
      margin: 4px 0 0 0; }
    .ih-item.square.effect3 .info p {
      margin: 0;
      font-style: italic;
      font-size: 12px;
      line-height: 20px;
      position: relative;
      color: rgba(255, 255, 255, 0.7);
      padding: 5px;
      text-align: center; }
    .ih-item.square.effect3 .info.bg-color-primary {
      background-color: rgba(33, 150, 243, 0.8); }
    .ih-item.square.effect3 .info.bg-color-info {
      background-color: rgba(0, 188, 212, 0.8); }
  .ih-item.square.effect3 a:hover .info {
    visibility: visible;
    opacity: 1; }

.ih-item.square.effect3.bottom_to_top .info {
  top: auto;
  -webkit-transform: translateY(100%);
          transform: translateY(100%); }

.ih-item.square.effect3.bottom_to_top a:hover .info {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.ih-item.square.effect3.top_to_bottom .info {
  bottom: auto;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%); }

.ih-item.square.effect3.top_to_bottom a:hover .info {
  -webkit-transform: translateY(0);
          transform: translateY(0); }

.icon-box {
  margin-top: 30px;
  position: relative;
  padding: 0 0 0 80px; }
  .icon-box .ibox-icon {
    display: block;
    position: absolute;
    width: 64px;
    height: 64px;
    top: 0;
    left: 0; }
    .icon-box .ibox-icon a {
      text-decoration: none; }
    .icon-box .ibox-icon a,
    .icon-box .ibox-icon i,
    .icon-box .ibox-icon img {
      display: block;
      position: relative;
      width: 100%;
      height: 100%;
      color: #FFF; }
    .icon-box .ibox-icon i,
    .icon-box .ibox-icon img {
      border-radius: 50%;
      background-color: #2196F3; }
    .icon-box .ibox-icon i {
      font-style: normal;
      font-size: 28px;
      text-align: center;
      line-height: 64px; }
  .icon-box h3 {
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin: 0;
    color: rgba(0, 0, 0, 0.87); }
  .icon-box p {
    margin: 8px 0 0 0;
    color: #999; }
  .icon-box .before-heading {
    font-size: 14px; }

/* Icon Box - Icon Large
-----------------------------------------------------------------*/
.icon-box.ibox-lg {
  padding: 0 0 0 115px; }
  .icon-box.ibox-lg .ibox-icon {
    width: 96px;
    height: 96px; }
    .icon-box.ibox-lg .ibox-icon i {
      font-size: 42px;
      line-height: 96px; }

/* Icon Box - Icon Outline
-----------------------------------------------------------------*/
.icon-box.ibox-outline .ibox-icon {
  border: 1px solid #2196F3;
  border-radius: 50%;
  padding: 3px; }
  .icon-box.ibox-outline .ibox-icon i {
    line-height: 56px; }

/* Icon Box - Icon Outline Large
-----------------------------------------------------------------*/
.icon-box.ibox-outline.ibox-lg .ibox-icon {
  padding: 4px; }
  .icon-box.ibox-outline.ibox-lg .ibox-icon i {
    line-height: 86px; }

/* Icon Box - Icon Rounded
-----------------------------------------------------------------*/
.icon-box.ibox-rounded .ibox-icon {
  border-radius: 0.2rem !important; }
  .icon-box.ibox-rounded .ibox-icon i,
  .icon-box.ibox-rounded .ibox-icon img {
    border-radius: 0.2rem !important; }

/* Icon Box - Icon Rounded & Large
-----------------------------------------------------------------*/
.icon-box.ibox-rounded.ibox-lg .ibox-icon {
  border-radius: 0.2rem !important; }
  .icon-box.ibox-rounded.ibox-lg .ibox-icon i,
  .icon-box.ibox-rounded.ibox-lg .ibox-icon img {
    border-radius: 0.2rem !important; }

/* Icon Box - Light Background
-----------------------------------------------------------------*/
.icon-box.ibox-light i,
.icon-box.ibox-light img {
  background-color: #e5e5e5;
  color: rgba(0, 0, 0, 0.87); }

.icon-box.ibox-light.ibox-outline .ibox-icon {
  border-color: #E5E5E5; }
  .icon-box.ibox-light.ibox-outline .ibox-icon i {
    line-height: 54px; }

.icon-box.ibox-light.ibox-outline i,
.icon-box.ibox-light.ibox-outline img {
  border: 1px solid #E5E5E5;
  background-color: #e5e5e5;
  color: rgba(0, 0, 0, 0.87); }

.icon-box.ibox-light.ibox-outline.ibox-lg .ibox-icon i {
  line-height: 84px; }

.icon-box.ibox-light .ibox-icon i {
  line-height: 62px; }

.icon-box.ibox-lg .ibox-icon i {
  line-height: 96px; }

/* Icon Box - Dark Background
-----------------------------------------------------------------*/
.icon-box.ibox-dark.ibox-outline .ibox-icon {
  border-color: rgba(0, 0, 0, 0.87); }

.icon-box.ibox-dark .ibox-icon i,
.icon-box.ibox-dark .ibox-icon img {
  background-color: rgba(0, 0, 0, 0.87); }

/* Icon Box - Border
-----------------------------------------------------------------*/
.icon-box.ibox-border .ibox-icon {
  border: 1px solid #2196F3;
  border-radius: 50%; }
  .icon-box.ibox-border .ibox-icon i,
  .icon-box.ibox-border .ibox-icon img {
    border: none;
    background-color: transparent !important;
    color: #2196F3; }

.icon-box.ibox-border .ibox-icon {
  padding: 0; }
  .icon-box.ibox-border .ibox-icon i {
    line-height: 62px !important; }

.icon-box.ibox-border.ibox-lg .ibox-icon i {
  line-height: 94px !important; }

/* Icon Box - Border - Light
-----------------------------------------------------------------*/
.icon-box.ibox-border.ibox-light .ibox-icon {
  border-color: #E5E5E5; }

.icon-box.ibox-border.ibox-light i,
.icon-box.ibox-border.ibox-light img {
  color: #888; }

/* Icon Box - Border - Dark
-----------------------------------------------------------------*/
.icon-box.ibox-border.ibox-dark .ibox-icon {
  border-color: #333; }

.icon-box.ibox-border.ibox-dark i,
.icon-box.ibox-border.ibox-dark img {
  color: rgba(0, 0, 0, 0.87); }

/* Icon Box - Plain
-----------------------------------------------------------------*/
.icon-box.ibox-plain .ibox-icon {
  border: none !important;
  height: auto !important; }
  .icon-box.ibox-plain .ibox-icon i,
  .icon-box.ibox-plain .ibox-icon img {
    border: none !important;
    background-color: transparent !important;
    color: #2196F3;
    border-radius: 0; }
  .icon-box.ibox-plain .ibox-icon i {
    font-size: 48px;
    line-height: 1 !important; }
  .icon-box.ibox-plain .ibox-icon img {
    height: 64px; }

.icon-box.ibox-plain.ibox-image .ibox-icon {
  width: auto; }

.icon-box.ibox-plain.ibox-image img {
  width: auto;
  display: inline-block; }

.icon-box.ibox-plain.ibox-small {
  padding-left: 42px; }
  .icon-box.ibox-plain.ibox-small .ibox-icon {
    width: 28px; }
    .icon-box.ibox-plain.ibox-small .ibox-icon i {
      font-size: 28px; }
    .icon-box.ibox-plain.ibox-small .ibox-icon img {
      height: 28px; }
  .icon-box.ibox-plain.ibox-small h3 {
    font-size: 15px;
    line-height: 26px;
    margin-bottom: 10px; }
  .icon-box.ibox-plain.ibox-small p {
    margin-left: -42px; }

.icon-box.ibox-plain.ibox-lg .ibox-icon i {
  font-size: 72px; }

.icon-box.ibox-plain.ibox-lg .ibox-icon img {
  height: 96px; }

.icon-box.ibox-plain.ibox-light .ibox-icon i,
.icon-box.ibox-plain.ibox-light .ibox-icon img {
  color: #888; }

.icon-box.ibox-plain.ibox-dark .ibox-icon i,
.icon-box.ibox-plain.ibox-dark .ibox-icon img {
  color: rgba(0, 0, 0, 0.87); }

/* Icon Box - Center
-----------------------------------------------------------------*/
.icon-box.ibox-center {
  padding: 0;
  text-align: center; }
  .icon-box.ibox-center.ibox-small {
    padding-left: 0 !important; }
  .icon-box.ibox-center .ibox-icon {
    position: relative;
    margin: 0 auto; }
  .icon-box.ibox-center h3 {
    margin: .8em 0 0; }
  .icon-box.ibox-center p {
    font-size: 14px;
    margin-top: 0em; }

/* Icon Box - Right
-----------------------------------------------------------------*/
.icon-box.ibox-right {
  padding: 0 80px 0 0;
  text-align: right; }
  .icon-box.ibox-right.ibox-lg {
    padding-right: 115px; }
  .icon-box.ibox-right .ibox-icon {
    left: auto;
    right: 0; }
  .icon-box.ibox-right.ibox-plain.ibox-small {
    padding: 0 42px 0 0; }
    .icon-box.ibox-right.ibox-plain.ibox-small p {
      margin: 0 -42px 0 0; }

/* Dark Theme
-----------------------------------------------------------------*/
.theme-gray .icon-box h3,
.theme-dark .icon-box h3 {
  color: #d5d6d7; }

/* Boxed
-----------------------------------------------------------------*/
.box-body > .icon-box {
  margin-top: 0; }

.preloaderbar {
  z-index: 1040;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  margin-bottom: -4px; }
  .preloaderbar .bar {
    position: absolute;
    width: 100%;
    height: 0;
    text-indent: -9999px;
    background-color: #23b7e5; }
    .preloaderbar .bar:before {
      position: absolute;
      right: 50%;
      left: 50%;
      height: 4px;
      background-color: inherit;
      content: ""; }
  .preloaderbar.active {
    -webkit-animation: changebar 2.25s infinite 0.75s;
            animation: changebar 2.25s infinite 0.75s; }
  .preloaderbar.active .bar {
    -webkit-animation: changebar 2.25s infinite;
            animation: changebar 2.25s infinite; }
  .preloaderbar.active .bar:before {
    -webkit-animation: movingbar 0.75s infinite;
            animation: movingbar 0.75s infinite; }

@-webkit-keyframes movingbar {
  0% {
    right: 50%;
    left: 50%; }
  99.9% {
    right: 0;
    left: 0; }
  100% {
    right: 50%;
    left: 50%; } }

@keyframes movingbar {
  0% {
    right: 50%;
    left: 50%; }
  99.9% {
    right: 0;
    left: 0; }
  100% {
    right: 50%;
    left: 50%; } }

@-webkit-keyframes changebar {
  0% {
    background-color: #66BB6A; }
  33.3% {
    background-color: #66BB6A; }
  33.33% {
    background-color: #FFCA28; }
  66.6% {
    background-color: #FFCA28; }
  66.66% {
    background-color: #EF5350; }
  99.9% {
    background-color: #EF5350; }
  100% {
    background-color: #66BB6A; } }

@keyframes changebar {
  0% {
    background-color: #66BB6A; }
  33.3% {
    background-color: #66BB6A; }
  33.33% {
    background-color: #FFCA28; }
  66.6% {
    background-color: #FFCA28; }
  66.66% {
    background-color: #EF5350; }
  99.9% {
    background-color: #EF5350; }
  100% {
    background-color: #66BB6A; } }

.mdl-card.mdl-card-full-width {
  width: 100%; }

.card-panel {
  padding: 20px;
  margin: 10px 0 20px 0;
  border-radius: 2px; }

.card {
  position: relative;
  overflow: hidden;
  margin: 10px 0 20px 0;
  border-radius: 2px; }
  .card .card-title {
    font-size: 24px; }
    .card .card-title.activator {
      cursor: pointer; }
  .card .card-action > a {
    margin-right: 20px;
    text-transform: uppercase; }
  .card .card-image {
    position: relative; }
    .card .card-image img {
      border-radius: 2px 2px 0 0;
      position: relative;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0;
      width: 100%; }
    .card .card-image .card-title {
      position: absolute;
      bottom: 0;
      left: 0;
      padding: 20px;
      color: #fff;
      text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25); }
  .card .card-content {
    padding: 20px;
    border-radius: 0 0 2px 2px; }
    .card .card-content p {
      margin: 0;
      color: inherit; }
    .card .card-content .card-title {
      line-height: 48px; }
    .card .card-content .card-profile-img {
      position: relative;
      z-index: 1;
      margin-top: -70px;
      border-radius: 50%;
      width: 100px;
      height: 100px;
      padding: 5px;
      background-color: #fff; }
      .card .card-content .card-profile-img img {
        width: 90px;
        height: 90px;
        border-radius: 50%; }
      .card .card-content .card-profile-img.profile-img-sm {
        margin-top: -50px;
        width: 60px;
        height: 60px;
        padding: 2px; }
        .card .card-content .card-profile-img.profile-img-sm img {
          width: 56px;
          height: 56px;
          border-radius: 50%; }
    .card .card-content .card-button .btn-icon {
      position: relative;
      z-index: 1;
      margin-top: -65px; }
  .card .card-action {
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    padding: 20px; }
    .card .card-action.no-border {
      border: 0; }
  .card .card-reveal {
    padding: 20px;
    position: absolute;
    background-color: #FFF;
    width: 100%;
    overflow-y: auto;
    top: 100%;
    height: 100%;
    z-index: 1; }
    .card .card-reveal .card-title {
      cursor: pointer;
      display: block; }

.theme-gray .mdl-card,
.theme-dark .mdl-card {
  color: #d5d6d7; }

.theme-gray .mdl-card__supporting-text,
.theme-dark .mdl-card__supporting-text {
  color: #d5d6d7; }

.theme-gray .mdl-card {
  background-color: #191919; }

.theme-dark .mdl-card {
  background-color: #17181c; }

.mdl-data-table.mdl-data-table-non-numeric td, .mdl-data-table.mdl-data-table-non-numeric th {
  text-align: left; }

.box.table-box {
  border-radius: 0; }

.box > .mdl-data-table {
  width: 100%;
  background-color: transparent; }

.table-responsive {
  overflow-x: auto;
  min-height: 0.01%; }
  @media screen and (max-width: 767px) {
    .table-responsive {
      width: 100%;
      margin-bottom: 1.125rem;
      overflow-y: hidden;
      -ms-overflow-style: -ms-autohiding-scrollbar;
      border: 1px solid rgba(0, 0, 0, 0.1); }
      .table-responsive > .mdl-data-table {
        margin-bottom: 0; }
        .table-responsive > .mdl-data-table > thead > tr > th,
        .table-responsive > .mdl-data-table > thead > tr > td,
        .table-responsive > .mdl-data-table > tbody > tr > th,
        .table-responsive > .mdl-data-table > tbody > tr > td,
        .table-responsive > .mdl-data-table > tfoot > tr > th,
        .table-responsive > .mdl-data-table > tfoot > tr > td {
          white-space: nowrap; }
      .table-responsive > .table-bordered {
        border: 0; }
        .table-responsive > .table-bordered > thead > tr > th:first-child,
        .table-responsive > .table-bordered > thead > tr > td:first-child,
        .table-responsive > .table-bordered > tbody > tr > th:first-child,
        .table-responsive > .table-bordered > tbody > tr > td:first-child,
        .table-responsive > .table-bordered > tfoot > tr > th:first-child,
        .table-responsive > .table-bordered > tfoot > tr > td:first-child {
          border-left: 0; }
        .table-responsive > .table-bordered > thead > tr > th:last-child,
        .table-responsive > .table-bordered > thead > tr > td:last-child,
        .table-responsive > .table-bordered > tbody > tr > th:last-child,
        .table-responsive > .table-bordered > tbody > tr > td:last-child,
        .table-responsive > .table-bordered > tfoot > tr > th:last-child,
        .table-responsive > .table-bordered > tfoot > tr > td:last-child {
          border-right: 0; }
        .table-responsive > .table-bordered > tbody > tr:last-child > th,
        .table-responsive > .table-bordered > tbody > tr:last-child > td,
        .table-responsive > .table-bordered > tfoot > tr:last-child > th,
        .table-responsive > .table-bordered > tfoot > tr:last-child > td {
          border-bottom: 0; } }

.theme-gray .box > .mdl-data-table th,
.theme-dark .box > .mdl-data-table th {
  color: rgba(255, 255, 255, 0.5); }

img.img30_30 {
  width: 30px;
  height: 30px; }

img.img40_40 {
  width: 40px;
  height: 40px; }

img.img64_64 {
  width: 64px;
  height: 64px; }

img.img80_80 {
  width: 80px;
  height: 80px; }

.pricing-table {
  position: relative;
  margin-bottom: 20px;
  background-color: #fcfcfc;
  color: #999;
  border-radius: 0.2rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  text-align: center;
  -webkit-transition: 0.25s ease-out;
  transition: 0.25s ease-out; }
  .pricing-table:hover {
    -webkit-box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15);
            box-shadow: 0 5px 11px 0 rgba(0, 0, 0, 0.18), 0 4px 15px 0 rgba(0, 0, 0, 0.15); }
  .pricing-table header {
    background-color: #8c8c8c;
    text-align: center;
    padding: 1.25rem 0.75rem; }
    .pricing-table header h2 {
      margin: 0;
      font-size: 1.25rem;
      line-height: 1;
      font-weight: normal;
      text-transform: uppercase;
      color: #fff; }
  .pricing-table .pricing-price {
    padding: 45px 15px;
    background-color: #999;
    font-size: 56px;
    line-height: 1;
    color: #fff;
    font-weight: 300; }
    .pricing-table .pricing-price .pricing-sign {
      margin-right: 5px;
      font-size: 24px;
      font-weight: normal; }
    .pricing-table .pricing-price .pricing-sub {
      margin-left: 5px;
      font-size: 22px;
      line-height: 1; }
  .pricing-table .pricing-lead {
    margin-bottom: 1.5em;
    font-size: 18px;
    text-transform: uppercase; }
    .pricing-table .pricing-lead:after {
      margin: 0 auto;
      content: "";
      height: 0px;
      width: 80px;
      padding-top: .6em;
      border-bottom: solid 3px #eff0f3;
      display: block; }
  .pricing-table .pricing-plan-details {
    padding: 1em; }
    .pricing-table .pricing-plan-details > ul {
      margin: 0;
      padding: 0;
      list-style: none;
      font-size: 1rem;
      line-height: 2em; }
  .pricing-table > footer {
    padding: 2em;
    text-align: center; }
    .pricing-table > footer > a {
      display: block;
      margin: 0 auto;
      padding: 12px;
      font-size: 14px;
      line-height: 1;
      width: 100%;
      max-width: 200px; }
  .pricing-table.pricing-table-primary header {
    background-color: #0d8aee; }
  .pricing-table.pricing-table-primary .pricing-price {
    background-color: #2196F3; }
  .pricing-table.pricing-table-primary:after {
    border-top: 6px solid #2196F3;
    border-left: 6px solid #2196F3; }
  .pricing-table.pricing-table-secondary header, .pricing-table.pricing-table-info header {
    background-color: #00a5bb; }
  .pricing-table.pricing-table-secondary .pricing-price, .pricing-table.pricing-table-info .pricing-price {
    background-color: #00BCD4; }
  .pricing-table.pricing-table-secondary:after, .pricing-table.pricing-table-info:after {
    border-top: 6px solid #00BCD4;
    border-left: 6px solid #00BCD4; }
  .pricing-table.pricing-table-success header {
    background-color: #54b359; }
  .pricing-table.pricing-table-success .pricing-price {
    background-color: #66BB6A; }
  .pricing-table.pricing-table-success:after {
    border-top: 6px solid #66BB6A;
    border-left: 6px solid #66BB6A; }
  .pricing-table.pricing-table-warning header {
    background-color: #ffc40f; }
  .pricing-table.pricing-table-warning .pricing-price {
    background-color: #FFCA28; }
  .pricing-table.pricing-table-warning:after {
    border-top: 6px solid #FFCA28;
    border-left: 6px solid #FFCA28; }
  .pricing-table.pricing-table-danger header {
    background-color: #ed3c39; }
  .pricing-table.pricing-table-danger .pricing-price {
    background-color: #EF5350; }
  .pricing-table.pricing-table-danger:after {
    border-top: 6px solid #EF5350;
    border-left: 6px solid #EF5350; }

.theme-gray .pricing-table {
  background-color: #191919; }

.theme-dark .pricing-table {
  background-color: #17181c; }

.ui-ribbon-container {
  position: relative; }
  .ui-ribbon-container .ui-ribbon-wrapper {
    position: absolute;
    overflow: hidden;
    width: 85px;
    height: 88px;
    top: -3px;
    right: -3px; }
  .ui-ribbon-container .ui-ribbon {
    position: relative;
    display: block;
    text-align: center;
    font-size: 15px;
    color: #fff;
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
    padding: 7px 0;
    left: -5px;
    top: 15px;
    width: 120px;
    line-height: 20px;
    background-color: #464a4c;
    -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
            box-shadow: 0 0 3px rgba(0, 0, 0, 0.3); }
    .ui-ribbon-container .ui-ribbon:before, .ui-ribbon-container .ui-ribbon:after {
      position: absolute;
      content: " ";
      line-height: 0;
      border-top: 2px solid #464a4c;
      border-left: 2px solid transparent;
      border-right: 2px solid transparent;
      bottom: -2px; }
    .ui-ribbon-container .ui-ribbon:before {
      left: 0;
      bottom: -1px; }
    .ui-ribbon-container .ui-ribbon:after {
      right: 0; }
  .ui-ribbon-container.ui-ribbon-primary .ui-ribbon {
    background-color: #2196F3; }
    .ui-ribbon-container.ui-ribbon-primary .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-primary .ui-ribbon:after {
      border-top: 2px solid #2196F3; }
  .ui-ribbon-container.ui-ribbon-success .ui-ribbon {
    background-color: #66BB6A; }
    .ui-ribbon-container.ui-ribbon-success .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-success .ui-ribbon:after {
      border-top: 2px solid #66BB6A; }
  .ui-ribbon-container.ui-ribbon-info .ui-ribbon {
    background-color: #00BCD4; }
    .ui-ribbon-container.ui-ribbon-info .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-info .ui-ribbon:after {
      border-top: 2px solid #00BCD4; }
  .ui-ribbon-container.ui-ribbon-warning .ui-ribbon {
    background-color: #FFCA28; }
    .ui-ribbon-container.ui-ribbon-warning .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-warning .ui-ribbon:after {
      border-top: 2px solid #FFCA28; }
  .ui-ribbon-container.ui-ribbon-danger .ui-ribbon {
    background-color: #EF5350; }
    .ui-ribbon-container.ui-ribbon-danger .ui-ribbon:before, .ui-ribbon-container.ui-ribbon-danger .ui-ribbon:after {
      border-top: 2px solid #EF5350; }

.sash {
  display: block;
  position: absolute;
  left: 0;
  right: auto;
  top: 25px;
  z-index: 1; }
  .sash .material-icons {
    font-size: 14px;
    height: 20px;
    height: 20px;
    line-height: 30px; }

.sash {
  cursor: default;
  overflow: visible;
  pointer-events: none;
  position: absolute;
  background-color: #636c72;
  pointer-events: auto;
  color: #fff; }
  .sash > div {
    position: relative;
    z-index: 1;
    height: 30px;
    line-height: 30px;
    -webkit-transition: width 0.1s 0.05s cubic-bezier(0.86, 0, 0.07, 1);
    transition: width 0.1s 0.05s cubic-bezier(0.86, 0, 0.07, 1);
    width: 25px; }
    .sash > div:hover {
      -webkit-transition-delay: 0;
      transition-delay: 0;
      width: 100%; }
      .sash > div:hover .sash-text {
        opacity: 1;
        width: 100%;
        padding-left: 15px; }
  .sash .sash-text {
    display: block;
    opacity: 0;
    overflow: hidden;
    -webkit-transition: opacity 0.3s, padding 0.25s, width 0.25s;
    transition: opacity 0.3s, padding 0.25s, width 0.25s;
    -webkit-transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
            transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
    white-space: nowrap;
    width: 3em;
    float: left;
    margin-left: 5px;
    padding-right: 20px; }
  .sash i {
    position: absolute;
    right: 1px;
    margin-left: 5px; }
    .sash i:before {
      color: #f5f5f5; }
  .sash.sash-triangle-right:after {
    background-color: transparent;
    border: 15px solid #636c72;
    border-right-color: transparent;
    bottom: 0;
    content: " ";
    position: absolute;
    right: -20px; }
  .sash.sash-primary {
    background-color: #2196F3; }
    .sash.sash-primary.sash-triangle-right:after {
      border-color: #2196F3;
      border-right-color: transparent; }
  .sash.sash-info {
    background-color: #00BCD4; }
    .sash.sash-info.sash-triangle-right:after {
      border-color: #00BCD4;
      border-right-color: transparent; }
  .sash.sash-success {
    background-color: #66BB6A; }
    .sash.sash-success.sash-triangle-right:after {
      border-color: #66BB6A;
      border-right-color: transparent; }
  .sash.sash-warning {
    background-color: #FFCA28; }
    .sash.sash-warning.sash-triangle-right:after {
      border-color: #FFCA28;
      border-right-color: transparent; }
  .sash.sash-danger {
    background-color: #EF5350; }
    .sash.sash-danger.sash-triangle-right:after {
      border-color: #EF5350;
      border-right-color: transparent; }
  .sash.sash-primary {
    background-color: #2196F3; }
    .sash.sash-primary.sash-triangle-right:after {
      border-color: #2196F3;
      border-right-color: transparent; }
  .sash.sash-white {
    background-color: #fff;
    color: rgba(0, 0, 0, 0.87); }
    .sash.sash-white.sash-triangle-right:after {
      border-color: #fff;
      border-right-color: transparent; }

.testimonial {
  text-align: center; }
  .testimonial .testimonial__quote {
    display: block;
    text-align: center; }
    .testimonial .testimonial__quote .material-icons {
      font-size: 3.5em;
      line-height: 1em; }
  .testimonial blockquote:before, .testimonial blockquote:after {
    content: none; }
  .testimonial .avatar {
    border-radius: 50%;
    max-width: 80px; }
  .testimonial h5 {
    font-size: 1rem;
    margin-bottom: .4em; }
  .testimonial .title {
    opacity: .54; }

.testimonial-alt .avatar {
  max-width: 100px;
  margin-bottom: 1rem; }

.testimonial-alt blockquote {
  margin: 0;
  font-size: 1.25rem;
  opacity: .9;
  border-left: 0; }

.testimonial-alt .citation {
  font-size: 1rem;
  opacity: .54; }

.ui-timline-container {
  padding: 15px; }

.ui-timline-left .ui-timeline:before {
  left: 0; }

@media (min-width: 768px) {
  .ui-timline-left .ui-timeline .tl-item:before {
    display: none; } }

@media (min-width: 768px) {
  .ui-timline-left .ui-timeline .tl-item .tl-caption {
    margin-left: -55px; } }

@media (min-width: 768px) {
  .ui-timline-left .ui-timeline .tl-item .tl-body .tl-time {
    left: auto;
    right: 15px;
    color: #636c72; } }

.ui-timeline {
  display: table;
  position: relative;
  table-layout: fixed;
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse; }
  .ui-timeline:before {
    background-color: rgba(0, 0, 0, 0.15);
    bottom: 0px;
    content: "";
    position: absolute;
    left: 0;
    top: 30px;
    width: 1px;
    z-index: 0; }
    @media (min-width: 768px) {
      .ui-timeline:before {
        left: 50%; } }
  .ui-timeline .tl-item {
    display: table-row;
    margin-bottom: 5px; }
    .ui-timeline .tl-item:before {
      display: none;
      content: ""; }
      @media (min-width: 768px) {
        .ui-timeline .tl-item:before {
          display: block;
          width: 50%; } }
    .ui-timeline .tl-item .tl-caption {
      width: 150px;
      margin-left: -55px; }
      @media (min-width: 768px) {
        .ui-timeline .tl-item .tl-caption {
          margin-left: -110px; } }
    @media (min-width: 768px) {
      .ui-timeline .tl-item.alt {
        text-align: right; }
        .ui-timeline .tl-item.alt:before {
          display: none; }
        .ui-timeline .tl-item.alt:after {
          content: "";
          display: block;
          width: 50%; }
        .ui-timeline .tl-item.alt .tl-body .tl-entry {
          margin: 0 35px 15px 0; }
        .ui-timeline .tl-item.alt .tl-body .tl-time {
          right: -220px;
          left: auto;
          text-align: left; }
        .ui-timeline .tl-item.alt .tl-body .tl-icon {
          right: -53px;
          left: auto; }
        .ui-timeline .tl-item.alt .tl-body .tl-content:after {
          right: -16px;
          left: auto;
          border: 8px solid transparent;
          border-left: 8px solid rgba(255, 255, 255, 0.9);
          border-top: 8px solid rgba(255, 255, 255, 0.9); } }
    .ui-timeline .tl-item .tl-body {
      display: table-cell;
      width: 50%;
      vertical-align: top; }
      .ui-timeline .tl-item .tl-body .tl-entry {
        position: relative;
        margin: 0 0 15px 36px; }
      .ui-timeline .tl-item .tl-body .tl-time {
        z-index: 1;
        position: absolute;
        left: auto;
        right: 15px;
        top: 0;
        width: 150px;
        color: #636c72;
        line-height: 35px;
        text-align: right; }
        @media (min-width: 768px) {
          .ui-timeline .tl-item .tl-body .tl-time {
            left: -220px;
            right: auto;
            color: rgba(0, 0, 0, 0.87); } }
      .ui-timeline .tl-item .tl-body .tl-icon {
        position: absolute;
        left: -53px;
        top: 0; }
      .ui-timeline .tl-item .tl-body .tl-content {
        position: relative;
        padding: 15px;
        border-radius: 0.2rem;
        background-color: rgba(255, 255, 255, 0.9); }
        .ui-timeline .tl-item .tl-body .tl-content:after {
          content: " ";
          line-height: 0;
          position: absolute;
          left: -16px;
          top: 0;
          border: 8px solid transparent;
          border-right: 8px solid rgba(255, 255, 255, 0.9);
          border-top: 8px solid rgba(255, 255, 255, 0.9); }
        .ui-timeline .tl-item .tl-body .tl-content h4 {
          font-size: 18px;
          line-height: 1.5rem;
          line-height: 1.1; }

@media (min-width: 768px) {
  .theme-gray .ui-timeline .tl-item.alt .tl-body .tl-content:after,
  .theme-dark .ui-timeline .tl-item.alt .tl-body .tl-content:after {
    border-left: 8px solid rgba(255, 255, 255, 0.05);
    border-top: 8px solid rgba(255, 255, 255, 0.05); } }

.theme-gray .ui-timeline .tl-item .tl-body .tl-content,
.theme-dark .ui-timeline .tl-item .tl-body .tl-content {
  background-color: rgba(255, 255, 255, 0.05); }
  .theme-gray .ui-timeline .tl-item .tl-body .tl-content:after,
  .theme-dark .ui-timeline .tl-item .tl-body .tl-content:after {
    border-right: 8px solid rgba(255, 255, 255, 0.05);
    border-top: 8px solid rgba(255, 255, 255, 0.05); }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInVpLmNzcyIsIm1hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9fdmFyaWFibGVzLnNjc3MiLCJtYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvX2NvbG9yLWRlZmluaXRpb25zLnNjc3MiLCJtYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvX2Z1bmN0aW9ucy5zY3NzIiwidGhlbWUvX3ZhcmlhYmxlcy10aGVtZS5zY3NzIiwibWF0ZXJpYWwtZGVzaWduLWxpdGUvX21hdGVyaWFsLWRlc2lnbi1saXRlLnNjc3MiLCJtYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvX21peGlucy5zY3NzIiwibWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL3R5cG9ncmFwaHkvX3R5cG9ncmFwaHkuc2NzcyIsImdsb2JhbC9fdmFyaWFibGVzLWJvb3RzdHJhcC5zY3NzIiwibWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL2JhZGdlL19iYWRnZS5zY3NzIiwibWF0ZXJpYWwtZGVzaWduLWxpdGUvc3JjL2NhcmQvX2NhcmQuc2NzcyIsIm1hdGVyaWFsLWRlc2lnbi1saXRlL3NyYy9kYXRhLXRhYmxlL19kYXRhLXRhYmxlLnNjc3MiLCJtYXRlcmlhbC1kZXNpZ24tbGl0ZS9zcmMvc2hhZG93L19zaGFkb3cuc2NzcyIsIm1hdGVyaWFsLWRlc2lnbi1saXRlL19jdXN0b20uc2NzcyIsInVpL191dGlsaXRpZXMuc2NzcyIsImdsb2JhbC9fdmFyaWFibGVzLWV4dHJhLnNjc3MiLCJ1aS9fc2NhZmZvbGRpbmcuc2NzcyIsInVpL19ncmlkLnNjc3MiLCJ1aS9fdHlwZS5zY3NzIiwidWkvX2J1dHRvbnMuc2NzcyIsInVpL190YWJsZXMtcmVzcG9uc2l2ZS5zY3NzIiwidWkvX2Zvcm1zLnNjc3MiLCJ1aS9fZm9ybS1pbnB1dC5zY3NzIiwidWkvX2JveGVzLnNjc3MiLCJib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwidWkvX2JyZWFkY3J1bWJzLnNjc3MiLCJ1aS9fY2FsbC10by1hY3Rpb25zLnNjc3MiLCJ1aS9fY2FsbG91dC5zY3NzIiwidWkvX2NhcmRzLnNjc3MiLCJ1aS9fZmVhdHVyZS1jYWxsb3V0LnNjc3MiLCJ1aS9faG92ZXIuc2NzcyIsInVpL19pY29uLWJveGVzLnNjc3MiLCJ1aS9fbWQtcHJlbG9hZGVyLnNjc3MiLCJ1aS9fbWQtY2FyZHMuc2NzcyIsInVpL19tZC10YWJsZXMuc2NzcyIsInVpL19pbWFnZS1zaXplLnNjc3MiLCJ1aS9fcHJpY2luZy10YWJsZXMuc2NzcyIsImJvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCJ1aS9fcmliYm9ucy5zY3NzIiwidWkvX3Nhc2guc2NzcyIsInVpL190ZXN0aW1vbmlhbHMuc2NzcyIsInVpL190aW1lbGluZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGlCQUFpQjtBQ0FqQjs7d0NBRXdDO0FBQ3hDOzs7Ozs7Ozs7R0FTRztBQUdILHdDQUF3QztBQUl4QyxvQ0FBb0M7QUFFcEM7Ozs7O0dBS0c7QUMxQkg7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFFSCw0Q0FBNEM7QUFFNUMsOEVBQThFO0FBQzlFLGdCQUFnQjtBQW1maEIsa0VBQWtFO0FBMkVsRSxpQkFBaUI7QUFHakIsZ0RBQWdEO0FDcGxCaEQ7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUZrQkgsNENBQTRDO0FBUTVDLHdDQUF3QztBQVF4QyxrQ0FBa0M7QUFTbEMsVUFBVTtBQUVWLHFCQUFxQjtBQTBCckIsaUJBQWlCO0FBS2pCLFdBQVc7QUFXWCxhQUFhO0FBT2IsZUFBZTtBQVFmLGdCQUFnQjtBQThCaEIsd0NBQXdDO0FHbEp4Qyw2QkFBNkI7QUFDN0IsdURBQXVEO0FBRUosWUFBWTtBQUlILHNCQUFzQjtBQUNaLHNCQUFzQjtBQUk1RixtREFBbUQ7QUFFbkQsZ0RBQWdEO0FBS2hELFdBQVc7QUFDWCx1REFBdUQ7QUFDdkQsd0RBQXdEO0FBU2UsY0FBYztBQUNmLGVBQWU7QUFDdkIsVUFBVTtBQ2hDeEUsMEJBQTBCO0FKQTFCOzt3Q0FFd0M7QUFDeEM7Ozs7Ozs7OztHQVNHO0FBR0gsd0NB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QXBJYjtVQXFIb0IsYUFBWTtVQUNaLGVBQWM7VUFDZCxtQkFBa0I7VUFDbEIsWUFBVztVQUNYLE9BQU07VUFDTiw4QkFBNkI7VUFDN0IsaURBcEt3QjtVQXFLeEIsK0NBckt3QixFQXNLM0I7UUE3SGpCO1VBZ0lvQixnQkFBZTtVQUNmLG9CakNpR0M7VWlDaEdELGlCakN1R1EsRWlDdEdYOztBQWFMO0VBTFo7O0lBUzRCLGlEQTVMb0I7SUE2THBCLGdEQTdMb0IsRUE4THZCLEVBQUE7O0FBWHpCOztFQW1CZ0IsNENBdE1nQyxFQTJNbkM7RUF4QmI7O0lBcUJvQixrREF4TTRCO0lBeU01QixnREF6TTRCLEVBME0vQiIsImZpbGUiOiJ1aS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICRDT05URU5UU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogU1RZTEUgR1VJREUgVkFSSUFCTEVTLS0tLS0tLS0tLS0tLS0tLS0tRGVjbGFyYXRpb25zIG9mIFNhc3MgdmFyaWFibGVzXG4gKiAtLS0tLVR5cG9ncmFwaHlcbiAqIC0tLS0tQ29sb3JzXG4gKiAtLS0tLUNhcmRcbiAqIC0tLS0tQmFkZ2VcbiAqIC0tLS0tU2hhZG93c1xuICogLS0tLS1EYXRhIHRhYmxlXG4gKiAtLS0tLURhcmsgdGhlbWVcbiAqL1xuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuLyogPT09PT09PT09PSAgQ09MT1JTICA9PT09PT09PT09ICovXG4vKipcbipcbiogTWF0ZXJpYWwgZGVzaWduIGNvbG9yIHBhbGV0dGVzLlxuKiBAc2VlIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9kZXNpZ24vc3BlYy9zdHlsZS9jb2xvci5odG1sXG4qXG4qKi9cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiA9PT09PT09PT09ICBDb2xvciBQYWxldHRlcyAgPT09PT09PT09PSAqL1xuLyogQ29sb3Igb3JkZXI6IDUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLCBBMTAwLCBBMjAwLCovXG4vKiBBNDAwLCBBNzAwLiovXG4vKiBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAuKi9cbi8qIGNvbG9ycy5zY3NzICovXG4vKiBUaGUgdHdvIHBvc3NpYmxlIGNvbG9ycyBmb3Igb3ZlcmxheWVkIHRleHQuKi9cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiA9PT09PT09PT09ICBDb2xvciAmIFRoZW1lcyAgPT09PT09PT09PSAqL1xuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuLyogPT09PT09PT09PSAgQ2FyZCAgPT09PT09PT09PSAqL1xuLyogQ0FSRCAqL1xuLyogQ2FyZCBkaW1lbnNpb25zICovXG4vKiBDb3ZlciBpbWFnZSAqL1xuLyogQkFER0UgKi9cbi8qIFNIQURPV1MgKi9cbi8qIEFOSU1BVElPTiAqL1xuLyogREFUQSBUQUJMRSAqL1xuLyogPT09PT09PT09PSAgREFSSyBUSEVNRSAgPT09PT09PT09PSAqL1xuLyogTGlnaHQgYmFja2dyb3VuZCBzaWRlYmFyKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qI2Y2ZjZmNjsqL1xuLyogdmVydGljYWwgbmF2IG9ubHkqL1xuLyogdmVydGljYWwgbmF2IG9ubHkqL1xuLyogJGxpZ2h0X25hdl9zdWIyX25hdl9iZzogICAgICAgICAgICAgICAjZWFlYWVhOyovXG4vKiAkbGlnaHRfbmF2X3N1YjNfbmF2X2JnOiAgICAgICAgICAgICAgICNkZGQ7Ki9cbi8qIFRoZW1lcyovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiAkdGhlbWVfZGFya190ZXh0X2NvbG9yOiAgICAgICByZ2JhKDI1NSwyNTUsMjU1LC43KTsqL1xuLyogb3IgM2MzYzNjKi9cbi8qIG9yICM0YzRjNGMqL1xuLyogIzQ0NDsqL1xuLyogTWF0ZXJpYWwgRGVzaWduIExpdGUgKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgJENPTlRFTlRTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBTVFlMRSBHVUlERSBWQVJJQUJMRVMtLS0tLS0tLS0tLS0tLS0tLS1EZWNsYXJhdGlvbnMgb2YgU2FzcyB2YXJpYWJsZXNcbiAqIC0tLS0tVHlwb2dyYXBoeVxuICogLS0tLS1Db2xvcnNcbiAqIC0tLS0tQ2FyZFxuICogLS0tLS1CYWRnZVxuICogLS0tLS1TaGFkb3dzXG4gKiAtLS0tLURhdGEgdGFibGVcbiAqIC0tLS0tRGFyayB0aGVtZVxuICovXG4vKiA9PT09PT09PT09ICBUWVBPR1JBUEhZICA9PT09PT09PT09ICovXG4vKiA9PT09PT09PT09ICBDT0xPUlMgID09PT09PT09PT0gKi9cbi8qKlxuKlxuKiBNYXRlcmlhbCBkZXNpZ24gY29sb3IgcGFsZXR0ZXMuXG4qIEBzZWUgaHR0cDovL3d3dy5nb29nbGUuY29tL2Rlc2lnbi9zcGVjL3N0eWxlL2NvbG9yLmh0bWxcbipcbioqL1xuLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qID09PT09PT09PT0gIENvbG9yIFBhbGV0dGVzICA9PT09PT09PT09ICovXG4vKiBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAsIEExMDAsIEEyMDAsKi9cbi8qIEE0MDAsIEE3MDAuKi9cbi8qIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMC4qL1xuLyogY29sb3JzLnNjc3MgKi9cbi8qIFRoZSB0d28gcG9zc2libGUgY29sb3JzIGZvciBvdmVybGF5ZWQgdGV4dC4qL1xuLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qID09PT09PT09PT0gIENvbG9yICYgVGhlbWVzICA9PT09PT09PT09ICovXG4vKiA9PT09PT09PT09ICBUWVBPR1JBUEhZICA9PT09PT09PT09ICovXG4vKiA9PT09PT09PT09ICBDYXJkICA9PT09PT09PT09ICovXG4vKiBDQVJEICovXG4vKiBDYXJkIGRpbWVuc2lvbnMgKi9cbi8qIENvdmVyIGltYWdlICovXG4vKiBCQURHRSAqL1xuLyogU0hBRE9XUyAqL1xuLyogQU5JTUFUSU9OICovXG4vKiBEQVRBIFRBQkxFICovXG4vKiA9PT09PT09PT09ICBEQVJLIFRIRU1FICA9PT09PT09PT09ICovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogVHlwb2dyYXBoeSAqL1xuLyogU2hhZG93cyAqL1xuLyogQW5pbWF0aW9ucyAqL1xuLyogRGlhbG9nICovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAkQ09OVEVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFNUWUxFIEdVSURFIFZBUklBQkxFUy0tLS0tLS0tLS0tLS0tLS0tLURlY2xhcmF0aW9ucyBvZiBTYXNzIHZhcmlhYmxlc1xuICogLS0tLS1UeXBvZ3JhcGh5XG4gKiAtLS0tLUNvbG9yc1xuICogLS0tLS1DYXJkXG4gKiAtLS0tLUJhZGdlXG4gKiAtLS0tLVNoYWRvd3NcbiAqIC0tLS0tRGF0YSB0YWJsZVxuICogLS0tLS1EYXJrIHRoZW1lXG4gKi9cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIENPTE9SUyAgPT09PT09PT09PSAqL1xuLyoqXG4qXG4qIE1hdGVyaWFsIGRlc2lnbiBjb2xvciBwYWxldHRlcy5cbiogQHNlZSBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvc3R5bGUvY29sb3IuaHRtbFxuKlxuKiovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogPT09PT09PT09PSAgQ29sb3IgUGFsZXR0ZXMgID09PT09PT09PT0gKi9cbi8qIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMCwgQTEwMCwgQTIwMCwqL1xuLyogQTQwMCwgQTcwMC4qL1xuLyogQ29sb3Igb3JkZXI6IDUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLiovXG4vKiBjb2xvcnMuc2NzcyAqL1xuLyogVGhlIHR3byBwb3NzaWJsZSBjb2xvcnMgZm9yIG92ZXJsYXllZCB0ZXh0LiovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogPT09PT09PT09PSAgQ29sb3IgJiBUaGVtZXMgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIENhcmQgID09PT09PT09PT0gKi9cbi8qIENBUkQgKi9cbi8qIENhcmQgZGltZW5zaW9ucyAqL1xuLyogQ292ZXIgaW1hZ2UgKi9cbi8qIEJBREdFICovXG4vKiBTSEFET1dTICovXG4vKiBBTklNQVRJT04gKi9cbi8qIERBVEEgVEFCTEUgKi9cbi8qID09PT09PT09PT0gIERBUksgVEhFTUUgID09PT09PT09PT0gKi9cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiBUeXBvZ3JhcGh5ICovXG4vKiBTaGFkb3dzICovXG4vKiBBbmltYXRpb25zICovXG4vKiBEaWFsb2cgKi9cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4OyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7IH1cblxuLyoqXG4gICogU3R5bGVzIGZvciBIVE1MIGVsZW1lbnRzXG4gICovXG5oMSBzbWFsbCwgaDIgc21hbGwsIGgzIHNtYWxsLCBoNCBzbWFsbCwgaDUgc21hbGwsIGg2IHNtYWxsIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiA1NnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gIG9wYWNpdHk6IDAuNTQ7XG4gIGZvbnQtc2l6ZTogMC42ZW07IH1cblxuaDEge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDU2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMjRweDsgfVxuXG5oMiB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNDVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7IH1cblxuaDMge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDM0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4OyB9XG5cbmg0IHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgbWFyZ2luLXRvcDogMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG5oNSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7IH1cblxuaDYge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNnB4OyB9XG5cbnAge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuXG5hIHtcbiAgY29sb3I6ICMyMTk2RjM7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuYmxvY2txdW90ZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtOyB9XG4gIGJsb2NrcXVvdGU6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTAuNWVtO1xuICAgIGNvbnRlbnQ6ICfigJwnOyB9XG4gIGJsb2NrcXVvdGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICfigJ0nO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4wNWVtOyB9XG5cbm1hcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmZjgxOyB9XG5cbmR0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDsgfVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG51bCwgb2wge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuXG4vKipcbiAqIENsYXNzIE5hbWUgU3R5bGVzXG4gKi9cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS00IHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMTJweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtOyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS00LWNvbG9yLWNvbnRyYXN0IHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxMTJweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICBvcGFjaXR5OiAwLjU0OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS0zIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiA1NnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTMtY29sb3ItY29udHJhc3Qge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDU2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgb3BhY2l0eTogMC41NDsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWRpc3BsYXktMiB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogNDVweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDQ4cHg7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTItY29sb3ItY29udHJhc3Qge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDQ1cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiA0OHB4O1xuICBvcGFjaXR5OiAwLjU0OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS0xIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAzNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogNDBweDsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWRpc3BsYXktMS1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMzRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gIG9wYWNpdHk6IDAuNTQ7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1oZWFkbGluZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1oZWFkbGluZS1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIG9wYWNpdHk6IDAuODc7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10aXRsZS1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIG9wYWNpdHk6IDAuODc7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1zdWJoZWFkIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLXN1YmhlYWQtY29sb3ItY29udHJhc3Qge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICBvcGFjaXR5OiAwLjg3OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0yIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0yLWNvbG9yLWNvbnRyYXN0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBvcGFjaXR5OiAwLjg3OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0xIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTEtY29sb3ItY29udHJhc3Qge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgb3BhY2l0eTogMC44NzsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWJvZHktMi1mb3JjZS1wcmVmZXJyZWQtZm9udCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0yLWZvcmNlLXByZWZlcnJlZC1mb250LWNvbG9yLWNvbnRyYXN0IHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIG9wYWNpdHk6IDAuODc7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTEtZm9yY2UtcHJlZmVycmVkLWZvbnQge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMDsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWJvZHktMS1mb3JjZS1wcmVmZXJyZWQtZm9udC1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBvcGFjaXR5OiAwLjg3OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tY2FwdGlvbi1mb3JjZS1wcmVmZXJyZWQtZm9udCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tY2FwdGlvbi1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBvcGFjaXR5OiAwLjU0OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tY2FwdGlvbi1mb3JjZS1wcmVmZXJyZWQtZm9udC1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBvcGFjaXR5OiAwLjU0OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tbWVudSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwOyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tbWVudS1jb2xvci1jb250cmFzdCB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCAtYXBwbGUtc3lzdGVtLCBzeXN0ZW0tdWksIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBvcGFjaXR5OiAwLjg3OyB9XG5cbi5tZGwtdHlwb2dyYXBoeS0tYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1idXR0b24tY29sb3ItY29udHJhc3Qge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgb3BhY2l0eTogMC44NzsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LW5vd3JhcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LWxvd2VyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LWNhcGl0YWxpemUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtdGhpbiB7XG4gIGZvbnQtd2VpZ2h0OiAyMDAgIWltcG9ydGFudDsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1mb250LXJlZ3VsYXIge1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7IH1cblxuLm1kbC10eXBvZ3JhcGh5LS1mb250LW1lZGl1bSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDAgIWltcG9ydGFudDsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDsgfVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtYmxhY2sge1xuICBmb250LXdlaWdodDogOTAwICFpbXBvcnRhbnQ7IH1cblxuLm1hdGVyaWFsLWljb25zIHtcbiAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAkQ09OVEVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFNUWUxFIEdVSURFIFZBUklBQkxFUy0tLS0tLS0tLS0tLS0tLS0tLURlY2xhcmF0aW9ucyBvZiBTYXNzIHZhcmlhYmxlc1xuICogLS0tLS1UeXBvZ3JhcGh5XG4gKiAtLS0tLUNvbG9yc1xuICogLS0tLS1DYXJkXG4gKiAtLS0tLUJhZGdlXG4gKiAtLS0tLVNoYWRvd3NcbiAqIC0tLS0tRGF0YSB0YWJsZVxuICogLS0tLS1EYXJrIHRoZW1lXG4gKi9cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIENPTE9SUyAgPT09PT09PT09PSAqL1xuLyoqXG4qXG4qIE1hdGVyaWFsIGRlc2lnbiBjb2xvciBwYWxldHRlcy5cbiogQHNlZSBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvc3R5bGUvY29sb3IuaHRtbFxuKlxuKiovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogPT09PT09PT09PSAgQ29sb3IgUGFsZXR0ZXMgID09PT09PT09PT0gKi9cbi8qIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMCwgQTEwMCwgQTIwMCwqL1xuLyogQTQwMCwgQTcwMC4qL1xuLyogQ29sb3Igb3JkZXI6IDUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLiovXG4vKiBjb2xvcnMuc2NzcyAqL1xuLyogVGhlIHR3byBwb3NzaWJsZSBjb2xvcnMgZm9yIG92ZXJsYXllZCB0ZXh0LiovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogPT09PT09PT09PSAgQ29sb3IgJiBUaGVtZXMgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIENhcmQgID09PT09PT09PT0gKi9cbi8qIENBUkQgKi9cbi8qIENhcmQgZGltZW5zaW9ucyAqL1xuLyogQ292ZXIgaW1hZ2UgKi9cbi8qIEJBREdFICovXG4vKiBTSEFET1dTICovXG4vKiBBTklNQVRJT04gKi9cbi8qIERBVEEgVEFCTEUgKi9cbi8qID09PT09PT09PT0gIERBUksgVEhFTUUgID09PT09PT09PT0gKi9cbi5tZGwtYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1yaWdodDogMjRweDsgfVxuICAubWRsLWJhZGdlOm5vdChbZGF0YS1iYWRnZV0pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgLm1kbC1iYWRnZVtkYXRhLWJhZGdlXTphZnRlciB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWJhZGdlKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMXB4O1xuICAgIHJpZ2h0OiAtMjRweDtcbiAgICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgLWFwcGxlLXN5c3RlbSwgc3lzdGVtLXVpLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBiYWNrZ3JvdW5kOiAjMDBCQ0Q0O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLm1kbC1idXR0b24gLm1kbC1iYWRnZVtkYXRhLWJhZGdlXTphZnRlciB7XG4gICAgICB0b3A6IC0xMHB4O1xuICAgICAgcmlnaHQ6IC01cHg7IH1cbiAgLm1kbC1iYWRnZS5tZGwtYmFkZ2UtLW5vLWJhY2tncm91bmRbZGF0YS1iYWRnZV06YWZ0ZXIge1xuICAgIGNvbG9yOiAjMDBCQ0Q0O1xuICAgIGJhY2tncm91bmQ6ICM5OTk7XG4gICAgYm94LXNoYWRvdzogMCAwIDFweCBncmF5OyB9XG4gIC5tZGwtYmFkZ2UubWRsLWJhZGdlLS1vdmVybGFwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7IH1cbiAgICAubWRsLWJhZGdlLm1kbC1iYWRnZS0tb3ZlcmxhcDphZnRlciB7XG4gICAgICByaWdodDogLTEwcHg7IH1cblxuLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgJENPTlRFTlRTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBTVFlMRSBHVUlERSBWQVJJQUJMRVMtLS0tLS0tLS0tLS0tLS0tLS1EZWNsYXJhdGlvbnMgb2YgU2FzcyB2YXJpYWJsZXNcbiAqIC0tLS0tVHlwb2dyYXBoeVxuICogLS0tLS1Db2xvcnNcbiAqIC0tLS0tQ2FyZFxuICogLS0tLS1CYWRnZVxuICogLS0tLS1TaGFkb3dzXG4gKiAtLS0tLURhdGEgdGFibGVcbiAqIC0tLS0tRGFyayB0aGVtZVxuICovXG4vKiA9PT09PT09PT09ICBUWVBPR1JBUEhZICA9PT09PT09PT09ICovXG4vKiA9PT09PT09PT09ICBDT0xPUlMgID09PT09PT09PT0gKi9cbi8qKlxuKlxuKiBNYXRlcmlhbCBkZXNpZ24gY29sb3IgcGFsZXR0ZXMuXG4qIEBzZWUgaHR0cDovL3d3dy5nb29nbGUuY29tL2Rlc2lnbi9zcGVjL3N0eWxlL2NvbG9yLmh0bWxcbipcbioqL1xuLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qID09PT09PT09PT0gIENvbG9yIFBhbGV0dGVzICA9PT09PT09PT09ICovXG4vKiBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAsIEExMDAsIEEyMDAsKi9cbi8qIEE0MDAsIEE3MDAuKi9cbi8qIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMC4qL1xuLyogY29sb3JzLnNjc3MgKi9cbi8qIFRoZSB0d28gcG9zc2libGUgY29sb3JzIGZvciBvdmVybGF5ZWQgdGV4dC4qL1xuLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qID09PT09PT09PT0gIENvbG9yICYgVGhlbWVzICA9PT09PT09PT09ICovXG4vKiA9PT09PT09PT09ICBUWVBPR1JBUEhZICA9PT09PT09PT09ICovXG4vKiA9PT09PT09PT09ICBDYXJkICA9PT09PT09PT09ICovXG4vKiBDQVJEICovXG4vKiBDYXJkIGRpbWVuc2lvbnMgKi9cbi8qIENvdmVyIGltYWdlICovXG4vKiBCQURHRSAqL1xuLyogU0hBRE9XUyAqL1xuLyogQU5JTUFUSU9OICovXG4vKiBEQVRBIFRBQkxFICovXG4vKiA9PT09PT09PT09ICBEQVJLIFRIRU1FICA9PT09PT09PT09ICovXG4ubWRsLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMzMwcHg7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogcmdiKDI1NSwyNTUsMjU1KTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5tZGwtY2FyZF9fbWVkaWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoIzY2QkI2QSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveDtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLm1kbC1jYXJkX190aXRsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiByZ2IoMCwwLDApO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAxNnB4IDE2cHg7XG4gIHBlcnNwZWN0aXZlLW9yaWdpbjogMTY1cHggNTZweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTY1cHggNTZweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAubWRsLWNhcmRfX3RpdGxlLm1kbC1jYXJkLS1ib3JkZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTsgfVxuXG4ubWRsLWNhcmRfX3RpdGxlLXRleHQge1xuICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDI0cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zZm9ybS1vcmlnaW46IDE0OXB4IDQ4cHg7XG4gIG1hcmdpbjogMDsgfVxuXG4ubWRsLWNhcmRfX3N1YnRpdGxlLXRleHQge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGNvbG9yOiByZ2JhKDAsMCwwLCAwLjU0KTtcbiAgbWFyZ2luOiAwOyB9XG5cbi5tZGwtY2FyZF9fc3VwcG9ydGluZy10ZXh0IHtcbiAgY29sb3I6IHJnYmEoMCwwLDAsIDAuNTQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxNnB4IDE2cHg7XG4gIHdpZHRoOiA5MCU7IH1cbiAgLm1kbC1jYXJkX19zdXBwb3J0aW5nLXRleHQubWRsLWNhcmQtLWJvcmRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG5cbi5tZGwtY2FyZF9fYWN0aW9ucyB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHBhZGRpbmc6IDhweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAubWRsLWNhcmRfX2FjdGlvbnMubWRsLWNhcmQtLWJvcmRlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpOyB9XG5cbi5tZGwtY2FyZC0tZXhwYW5kIHtcbiAgZmxleC1ncm93OiAxOyB9XG5cbi5tZGwtY2FyZF9fbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDE2cHg7XG4gIHRvcDogMTZweDsgfVxuXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qXFxcbiAgICAkQ09OVEVOVFNcblxcKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKipcbiAqIFNUWUxFIEdVSURFIFZBUklBQkxFUy0tLS0tLS0tLS0tLS0tLS0tLURlY2xhcmF0aW9ucyBvZiBTYXNzIHZhcmlhYmxlc1xuICogLS0tLS1UeXBvZ3JhcGh5XG4gKiAtLS0tLUNvbG9yc1xuICogLS0tLS1DYXJkXG4gKiAtLS0tLUJhZGdlXG4gKiAtLS0tLVNoYWRvd3NcbiAqIC0tLS0tRGF0YSB0YWJsZVxuICogLS0tLS1EYXJrIHRoZW1lXG4gKi9cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIENPTE9SUyAgPT09PT09PT09PSAqL1xuLyoqXG4qXG4qIE1hdGVyaWFsIGRlc2lnbiBjb2xvciBwYWxldHRlcy5cbiogQHNlZSBodHRwOi8vd3d3Lmdvb2dsZS5jb20vZGVzaWduL3NwZWMvc3R5bGUvY29sb3IuaHRtbFxuKlxuKiovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogPT09PT09PT09PSAgQ29sb3IgUGFsZXR0ZXMgID09PT09PT09PT0gKi9cbi8qIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMCwgQTEwMCwgQTIwMCwqL1xuLyogQTQwMCwgQTcwMC4qL1xuLyogQ29sb3Igb3JkZXI6IDUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLiovXG4vKiBjb2xvcnMuc2NzcyAqL1xuLyogVGhlIHR3byBwb3NzaWJsZSBjb2xvcnMgZm9yIG92ZXJsYXllZCB0ZXh0LiovXG4vKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuLyogPT09PT09PT09PSAgQ29sb3IgJiBUaGVtZXMgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIFRZUE9HUkFQSFkgID09PT09PT09PT0gKi9cbi8qID09PT09PT09PT0gIENhcmQgID09PT09PT09PT0gKi9cbi8qIENBUkQgKi9cbi8qIENhcmQgZGltZW5zaW9ucyAqL1xuLyogQ292ZXIgaW1hZ2UgKi9cbi8qIEJBREdFICovXG4vKiBTSEFET1dTICovXG4vKiBBTklNQVRJT04gKi9cbi8qIERBVEEgVEFCTEUgKi9cbi8qID09PT09PT09PT0gIERBUksgVEhFTUUgID09PT09PT09PT0gKi9cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiBUeXBvZ3JhcGh5ICovXG4vKiBTaGFkb3dzICovXG4vKiBBbmltYXRpb25zICovXG4vKiBEaWFsb2cgKi9cbi5tZGwtZGF0YS10YWJsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBmb250LXNpemU6IDEzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsMjU1LDI1NSk7IH1cbiAgLm1kbC1kYXRhLXRhYmxlIHRoZWFkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3B4OyB9XG4gICAgLm1kbC1kYXRhLXRhYmxlIHRoZWFkIC5tZGwtZGF0YS10YWJsZV9fc2VsZWN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgLm1kbC1kYXRhLXRhYmxlIHRib2R5IHRyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiA0OHB4O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMjhzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJhY2tncm91bmQtY29sb3I7IH1cbiAgICAubWRsLWRhdGEtdGFibGUgdGJvZHkgdHIuaXMtc2VsZWN0ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2UwZTBlMDsgfVxuICAgIC5tZGwtZGF0YS10YWJsZSB0Ym9keSB0cjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDgpOyB9XG4gIC5tZGwtZGF0YS10YWJsZSB0ZCwgLm1kbC1kYXRhLXRhYmxlIHRoIHtcbiAgICBwYWRkaW5nOiAwIDE4cHggMTJweCAxOHB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgLm1kbC1kYXRhLXRhYmxlIHRkOmZpcnN0LW9mLXR5cGUsIC5tZGwtZGF0YS10YWJsZSB0aDpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMjRweDsgfVxuICAgIC5tZGwtZGF0YS10YWJsZSB0ZDpsYXN0LW9mLXR5cGUsIC5tZGwtZGF0YS10YWJsZSB0aDpsYXN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1yaWdodDogMjRweDsgfVxuICAubWRsLWRhdGEtdGFibGUgdGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogNDhweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAgIC5tZGwtZGF0YS10YWJsZSB0ZCAubWRsLWRhdGEtdGFibGVfX3NlbGVjdCB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5tZGwtZGF0YS10YWJsZSB0aCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIGhlaWdodDogNDhweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41NCk7XG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG4gICAgLm1kbC1kYXRhLXRhYmxlIHRoLm1kbC1kYXRhLXRhYmxlX19oZWFkZXItLXNvcnRlZC1hc2NlbmRpbmcsIC5tZGwtZGF0YS10YWJsZSB0aC5tZGwtZGF0YS10YWJsZV9faGVhZGVyLS1zb3J0ZWQtZGVzY2VuZGluZyB7XG4gICAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAgICAgLm1kbC1kYXRhLXRhYmxlIHRoLm1kbC1kYXRhLXRhYmxlX19oZWFkZXItLXNvcnRlZC1hc2NlbmRpbmc6YmVmb3JlLCAubWRsLWRhdGEtdGFibGUgdGgubWRsLWRhdGEtdGFibGVfX2hlYWRlci0tc29ydGVkLWRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdNYXRlcmlhbCBJY29ucyc7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgICAtd2Via2l0LWZvbnQtZmVhdHVyZS1zZXR0aW5nczogJ2xpZ2EnO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBjb250ZW50OiBcIlxcZTVkOFwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHN1YjsgfVxuICAgICAgLm1kbC1kYXRhLXRhYmxlIHRoLm1kbC1kYXRhLXRhYmxlX19oZWFkZXItLXNvcnRlZC1hc2NlbmRpbmc6aG92ZXIsIC5tZGwtZGF0YS10YWJsZSB0aC5tZGwtZGF0YS10YWJsZV9faGVhZGVyLS1zb3J0ZWQtZGVzY2VuZGluZzpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgICAgICAubWRsLWRhdGEtdGFibGUgdGgubWRsLWRhdGEtdGFibGVfX2hlYWRlci0tc29ydGVkLWFzY2VuZGluZzpob3ZlcjpiZWZvcmUsIC5tZGwtZGF0YS10YWJsZSB0aC5tZGwtZGF0YS10YWJsZV9faGVhZGVyLS1zb3J0ZWQtZGVzY2VuZGluZzpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMjYpOyB9XG4gICAgLm1kbC1kYXRhLXRhYmxlIHRoLm1kbC1kYXRhLXRhYmxlX19oZWFkZXItLXNvcnRlZC1kZXNjZW5kaW5nOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcZTVkYlwiOyB9XG5cbi5tZGwtZGF0YS10YWJsZV9fc2VsZWN0IHtcbiAgd2lkdGg6IDE2cHg7IH1cblxuLm1kbC1kYXRhLXRhYmxlX19jZWxsLS1ub24tbnVtZXJpYy5tZGwtZGF0YS10YWJsZV9fY2VsbC0tbm9uLW51bWVyaWMge1xuICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSpcXFxuICAgICRDT05URU5UU1xuXFwqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi8qKlxuICogU1RZTEUgR1VJREUgVkFSSUFCTEVTLS0tLS0tLS0tLS0tLS0tLS0tRGVjbGFyYXRpb25zIG9mIFNhc3MgdmFyaWFibGVzXG4gKiAtLS0tLVR5cG9ncmFwaHlcbiAqIC0tLS0tQ29sb3JzXG4gKiAtLS0tLUNhcmRcbiAqIC0tLS0tQmFkZ2VcbiAqIC0tLS0tU2hhZG93c1xuICogLS0tLS1EYXRhIHRhYmxlXG4gKiAtLS0tLURhcmsgdGhlbWVcbiAqL1xuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuLyogPT09PT09PT09PSAgQ09MT1JTICA9PT09PT09PT09ICovXG4vKipcbipcbiogTWF0ZXJpYWwgZGVzaWduIGNvbG9yIHBhbGV0dGVzLlxuKiBAc2VlIGh0dHA6Ly93d3cuZ29vZ2xlLmNvbS9kZXNpZ24vc3BlYy9zdHlsZS9jb2xvci5odG1sXG4qXG4qKi9cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiA9PT09PT09PT09ICBDb2xvciBQYWxldHRlcyAgPT09PT09PT09PSAqL1xuLyogQ29sb3Igb3JkZXI6IDUwLCAxMDAsIDIwMCwgMzAwLCA0MDAsIDUwMCwgNjAwLCA3MDAsIDgwMCwgOTAwLCBBMTAwLCBBMjAwLCovXG4vKiBBNDAwLCBBNzAwLiovXG4vKiBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAuKi9cbi8qIGNvbG9ycy5zY3NzICovXG4vKiBUaGUgdHdvIHBvc3NpYmxlIGNvbG9ycyBmb3Igb3ZlcmxheWVkIHRleHQuKi9cbi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG4vKiA9PT09PT09PT09ICBDb2xvciAmIFRoZW1lcyAgPT09PT09PT09PSAqL1xuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuLyogPT09PT09PT09PSAgQ2FyZCAgPT09PT09PT09PSAqL1xuLyogQ0FSRCAqL1xuLyogQ2FyZCBkaW1lbnNpb25zICovXG4vKiBDb3ZlciBpbWFnZSAqL1xuLyogQkFER0UgKi9cbi8qIFNIQURPV1MgKi9cbi8qIEFOSU1BVElPTiAqL1xuLyogREFUQSBUQUJMRSAqL1xuLyogPT09PT09PT09PSAgREFSSyBUSEVNRSAgPT09PT09PT09PSAqL1xuLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbi8qIFR5cG9ncmFwaHkgKi9cbi8qIFNoYWRvd3MgKi9cbi8qIEFuaW1hdGlvbnMgKi9cbi8qIERpYWxvZyAqL1xuLm1kbC1zaGFkb3ctLTJkcCwgLmNhcmQtcGFuZWwsIC5jYXJkIHtcbiAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAwLjIpLCAwIDFweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpOyB9XG5cbi5tZGwtc2hhZG93LS0zZHAge1xuICBib3gtc2hhZG93OiAwIDNweCA0cHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDNweCAzcHggLTJweCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgMXB4IDhweCAwIHJnYmEoMCwgMCwgMCwgMC4xMik7IH1cblxuLm1kbC1zaGFkb3ctLTRkcCB7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDVweCAwIHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMXB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1kbC1zaGFkb3ctLTZkcCB7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDFweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAzcHggNXB4IC0xcHggcmdiYSgwLCAwLCAwLCAwLjIpOyB9XG5cbi5tZGwtc2hhZG93LS04ZHAge1xuICBib3gtc2hhZG93OiAwIDhweCAxMHB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMTQpLCAwIDNweCAxNHB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMTIpLCAwIDVweCA1cHggLTNweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cblxuLm1kbC1zaGFkb3ctLTE2ZHAge1xuICBib3gtc2hhZG93OiAwIDE2cHggMjRweCAycHggcmdiYSgwLCAwLCAwLCAwLjE0KSwgMCA2cHggMzBweCA1cHggcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCA4cHggMTBweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4ubWRsLXNoYWRvdy0tMjRkcCB7XG4gIGJveC1zaGFkb3c6IDAgOXB4IDQ2cHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xNCksIDAgMTFweCAxNXB4IC03cHggcmdiYSgwLCAwLCAwLCAwLjEyKSwgMCAyNHB4IDM4cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG5hZGRyZXNzIHtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4uZGl2aWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuZGl2aWRlci5kaXZpZGVyLXNvbGlkIHtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyB9XG4gIC5kaXZpZGVyLmRpdmlkZXItZGFzaGVkIHtcbiAgICBib3JkZXItc3R5bGU6IGRhc2hlZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAuZGl2aWRlci5kaXZpZGVyLWRvdHRlZCB7XG4gICAgYm9yZGVyLXN0eWxlOiBkb3R0ZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMSk7IH1cblxuLmRpdmlkZXIteHMge1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIG1hcmdpbi1ib3R0b206IDNweDsgfVxuXG4uZGl2aWRlci1zbSB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG5cbi5kaXZpZGVyLW1kIHtcbiAgbWFyZ2luLXRvcDogMTVweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDsgfVxuXG4uZGl2aWRlci1sZyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7IH1cblxuLmRpdmlkZXIteGwge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBtYXJnaW4tYm90dG9tOiAzMHB4OyB9XG5cbi5kaXZpZGVyLXh4bCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cblxuLnNwYWNlIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiA2cHg7IH1cblxuLnNwYWNlLW1kIHtcbiAgcGFkZGluZzogMTVweDsgfVxuXG4uc3BhY2UtbGcge1xuICBwYWRkaW5nOiAyNXB4OyB9XG5cbnNwYW4uYmxvY2sge1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ubm8tbWFyZ2luIHtcbiAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cblxuLm5vLW1hcmdpbi1oIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm5vLW1hcmdpbi10b3Age1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cblxuLm5vLW1hcmdpbi1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7IH1cblxuLm5vLW1hcmdpbi1sZWZ0IHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubm8tbWFyZ2luLXJpZ2h0IHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm5vLWJvcmRlciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG5cbi5uby1ib3JkZXItcmFkaXVzIHtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG4ubm8tcGFkZGluZyB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuXG4ubm8tcGFkZGluZy1oIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDsgfVxuXG4ubm8tc2hhZG93IHtcbiAgYm94LXNoYWRvdzogMDsgfVxuXG4uZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5wdWxsLWluIHtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4OyB9XG5cbi5tYXJnaW4tYi1sZyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cblxuLmFydGljbGUtdGl0bGUsXG4uYXJ0aWNsZS10aXRsZS1zdHlsZSB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIG1hcmdpbjogLjZlbSAwO1xuICBjb2xvcjogIzIxOTZGMzsgfVxuICAuYXJ0aWNsZS10aXRsZS5jb2xvci1kYXJrLFxuICAuYXJ0aWNsZS10aXRsZS1zdHlsZS5jb2xvci1kYXJrIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuXG4uY2hhcHRlciAuYXJ0aWNsZSB7XG4gIHBhZGRpbmctYm90dG9tOiAzMHB4OyB9XG4gIC5jaGFwdGVyIC5hcnRpY2xlOm50aC1vZi10eXBlKDEpIC5hcnRpY2xlLXRpdGxlIHtcbiAgICBtYXJnaW46IDAgMCAzMHB4O1xuICAgIGJvcmRlci10b3A6IG5vbmU7IH1cbiAgLmNoYXB0ZXIgLmFydGljbGUuYXJ0aWNsZS1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDE1KTsgfVxuICAuY2hhcHRlciAuYXJ0aWNsZS5hcnRpY2xlLWJvcmRlcmVkIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjExNzY0Nyk7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMTc2NDcpOyB9XG4gICAgLmNoYXB0ZXIgLmFydGljbGUuYXJ0aWNsZS1ib3JkZXJlZDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7IH1cbiAgLmNoYXB0ZXIgLmFydGljbGUucGFkZGluZy1sZy12IHtcbiAgICBwYWRkaW5nOiA3NXB4IDA7IH1cblxuLmNoYXB0ZXIgLmFydGljbGUtdGl0bGUge1xuICBmb250LXNpemU6IDI0cHg7XG4gIHBhZGRpbmctdG9wOiA4MHB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgbWFyZ2luOiA0OHB4IDAgMzBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMTc2NDcpO1xuICBjb2xvcjogIzIxOTZGMzsgfVxuXG4uaGVybyB7XG4gIHBhZGRpbmc6IDcwcHggMCA3NXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmhlcm8tdGl0bGUge1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgfVxuXG4uaGVyby10aXRsZSB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpO1xuICBmb250LXNpemU6IDQ1cHg7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG5cbi5oZXJvLXRhZ2xpbmUge1xuICBtYXJnaW46IDEwcHggYXV0byAzMHB4O1xuICBtYXgtd2lkdGg6IDcwMHB4O1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMzJweDsgfVxuXG4udGhlbWUtZ3JheSAuaGVyby10aXRsZSxcbi50aGVtZS1ncmF5IC5oZXJvLXRhZ2xpbmUsXG4udGhlbWUtZGFyayAuaGVyby10aXRsZSxcbi50aGVtZS1kYXJrIC5oZXJvLXRhZ2xpbmUge1xuICBjb2xvcjogI2Q1ZDZkNzsgfVxuXG4udGhlbWUtZ3JheSAuYXJ0aWNsZS10aXRsZS5jb2xvci1kYXJrLFxuLnRoZW1lLWRhcmsgLmFydGljbGUtdGl0bGUuY29sb3ItZGFyayB7XG4gIGNvbG9yOiAjZDVkNmQ3OyB9XG5cbi5jb250YWluZXItZmx1aWQge1xuICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7IH1cbiAgLmNvbnRhaW5lci1mbHVpZC5wYWRkaW5nLWxnLWgge1xuICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4OyB9XG4gIC5jb250YWluZXItZmx1aWQud2l0aC1tYXh3aWR0aCB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHg7IH1cbiAgLmNvbnRhaW5lci1mbHVpZC53aXRoLW1heHdpZHRoLWxnIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4OyB9XG4gIC5jb250YWluZXItZmx1aWQud2l0aC1tYXh3aWR0aC1tZCB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDsgfVxuICAuY29udGFpbmVyLWZsdWlkLndpdGgtbWF4d2lkdGgtc20ge1xuICAgIG1heC13aWR0aDogNzIwcHg7IH1cbiAgLmNvbnRhaW5lci1mbHVpZC5uby1icmVhZGNydW1icyB7XG4gICAgcGFkZGluZy10b3A6IDJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMWVtOyB9XG5cbi5ncmFkaWVudC10ZXh0IHtcbiAgZm9udC1zaXplOiAxNTBweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICMyMTk2RjM7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KDkyZGVnLCAjZmI4M2ZhLCAjMDBhY2VkKTtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4udGV4dC1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMTJweDsgfVxuXG4udGV4dC1ub3JtYWwge1xuICBmb250LXNpemU6IDFyZW07IH1cblxuLnRleHQtaHVnZSB7XG4gIGZvbnQtc2l6ZTogNzJweDsgfVxuXG4udGV4dC1sYXJnZSB7XG4gIGZvbnQtc2l6ZTogNTBweDsgfVxuXG4udGV4dC10aGluIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4udGV4dC11bHRyYWxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDEwMDsgfVxuXG4uYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmNvbG9yLXByaW1hcnksXG5hLmNvbG9yLXByaW1hcnkge1xuICBjb2xvcjogIzIxOTZGMzsgfVxuICAuY29sb3ItcHJpbWFyeTpob3ZlcixcbiAgYS5jb2xvci1wcmltYXJ5OmhvdmVyIHtcbiAgICBjb2xvcjogIzIxOTZGMzsgfVxuXG4uY29sb3Itc3VjY2VzcyxcbmEuY29sb3Itc3VjY2VzcyB7XG4gIGNvbG9yOiAjNjZCQjZBOyB9XG4gIC5jb2xvci1zdWNjZXNzOmhvdmVyLFxuICBhLmNvbG9yLXN1Y2Nlc3M6aG92ZXIge1xuICAgIGNvbG9yOiAjNjZCQjZBOyB9XG5cbi5jb2xvci1pbmZvLFxuYS5jb2xvci1pbmZvIHtcbiAgY29sb3I6ICMwMEJDRDQ7IH1cbiAgLmNvbG9yLWluZm86aG92ZXIsXG4gIGEuY29sb3ItaW5mbzpob3ZlciB7XG4gICAgY29sb3I6ICMwMEJDRDQ7IH1cblxuLmNvbG9yLWluZm8tYWx0LFxuYS5jb2xvci1pbmZvLWFsdCB7XG4gIGNvbG9yOiAjN0U1N0MyOyB9XG4gIC5jb2xvci1pbmZvLWFsdDpob3ZlcixcbiAgYS5jb2xvci1pbmZvLWFsdDpob3ZlciB7XG4gICAgY29sb3I6ICM3RTU3QzI7IH1cblxuLmNvbG9yLXdhcm5pbmcsXG5hLmNvbG9yLXdhcm5pbmcge1xuICBjb2xvcjogI0ZGQ0EyODsgfVxuICAuY29sb3Itd2FybmluZzpob3ZlcixcbiAgYS5jb2xvci13YXJuaW5nOmhvdmVyIHtcbiAgICBjb2xvcjogI0ZGQ0EyODsgfVxuXG4uY29sb3ItZGFuZ2VyLFxuYS5jb2xvci1kYW5nZXIge1xuICBjb2xvcjogI0VGNTM1MDsgfVxuICAuY29sb3ItZGFuZ2VyOmhvdmVyLFxuICBhLmNvbG9yLWRhbmdlcjpob3ZlciB7XG4gICAgY29sb3I6ICNFRjUzNTA7IH1cblxuLmNvbG9yLWRhcmssXG5hLmNvbG9yLWRhcmsge1xuICBjb2xvcjogIzEyMTMxNjsgfVxuICAuY29sb3ItZGFyazpob3ZlcixcbiAgYS5jb2xvci1kYXJrOmhvdmVyIHtcbiAgICBjb2xvcjogIzEyMTMxNjsgfVxuXG4uY29sb3Itd2hpdGUsXG5hLmNvbG9yLXdoaXRlIHtcbiAgY29sb3I6ICNmZmY7IH1cbiAgLmNvbG9yLXdoaXRlOmhvdmVyLFxuICBhLmNvbG9yLXdoaXRlOmhvdmVyIHtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uY29sb3ItZ3JheS1kYXJrZXIsXG5hLmNvbG9yLWdyYXktZGFya2VyIHtcbiAgY29sb3I6ICMyMjI7IH1cbiAgLmNvbG9yLWdyYXktZGFya2VyOmhvdmVyLFxuICBhLmNvbG9yLWdyYXktZGFya2VyOmhvdmVyIHtcbiAgICBjb2xvcjogIzIyMjsgfVxuXG4uY29sb3ItZ3JheS1kYXJrLFxuYS5jb2xvci1ncmF5LWRhcmsge1xuICBjb2xvcjogIzI5MmIyYzsgfVxuICAuY29sb3ItZ3JheS1kYXJrOmhvdmVyLFxuICBhLmNvbG9yLWdyYXktZGFyazpob3ZlciB7XG4gICAgY29sb3I6ICMyOTJiMmM7IH1cblxuLmNvbG9yLWdyYXksXG5hLmNvbG9yLWdyYXkge1xuICBjb2xvcjogIzQ2NGE0YzsgfVxuICAuY29sb3ItZ3JheTpob3ZlcixcbiAgYS5jb2xvci1ncmF5OmhvdmVyIHtcbiAgICBjb2xvcjogIzQ2NGE0YzsgfVxuXG4uY29sb3ItZ3JheS1saWdodCxcbmEuY29sb3ItZ3JheS1saWdodCB7XG4gIGNvbG9yOiAjNjM2YzcyOyB9XG4gIC5jb2xvci1ncmF5LWxpZ2h0OmhvdmVyLFxuICBhLmNvbG9yLWdyYXktbGlnaHQ6aG92ZXIge1xuICAgIGNvbG9yOiAjNjM2YzcyOyB9XG5cbi5jb2xvci1ncmF5LWxpZ2h0ZXIsXG5hLmNvbG9yLWdyYXktbGlnaHRlciB7XG4gIGNvbG9yOiAjZWNlZWVmOyB9XG4gIC5jb2xvci1ncmF5LWxpZ2h0ZXI6aG92ZXIsXG4gIGEuY29sb3ItZ3JheS1saWdodGVyOmhvdmVyIHtcbiAgICBjb2xvcjogI2VjZWVlZjsgfVxuXG4uZHJvcGNhcCxcbi5kcm9wY2FwLXNxdWFyZSxcbi5kcm9wY2FwLWNpcmNsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gIG1hcmdpbi1yaWdodDogNnB4O1xuICB0ZXh0LXNoYWRvdzogbm9uZTsgfVxuXG4uZHJvcGNhcCB7XG4gIGZvbnQtc2l6ZTogMy4xZW07IH1cblxuLmRyb3BjYXAtc3F1YXJlLFxuLmRyb3BjYXAtY2lyY2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWVlZjtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gIHdpZHRoOiAzNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLmRyb3BjYXAtc3F1YXJlIHtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICBmb250LXNpemU6IDIuM2VtOyB9XG5cbi5kcm9wY2FwLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAxLjc4ZW07IH1cblxuLmRyb3BjYXAuY29sb3JlZCB7XG4gIGNvbG9yOiAjMjE5NkYzOyB9XG5cbi5kcm9wY2FwLXNxdWFyZS5jb2xvcmVkLFxuLmRyb3BjYXAtY2lyY2xlLmNvbG9yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4udWktaGlnaGxpZ2h0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMTMxNjtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgcGFkZGluZzogMnB4IDVweDsgfVxuICAudWktaGlnaGxpZ2h0LmNvbG9yZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cblxuYS5idG4tdy14cyxcbmJ1dHRvbi5idG4tdy14cyB7XG4gIG1pbi13aWR0aDogODBweDsgfVxuXG5hLmJ0bi13LXNtLFxuYnV0dG9uLmJ0bi13LXNtIHtcbiAgbWluLXdpZHRoOiAxMDBweDsgfVxuXG5hLmJ0bi13LW1kLFxuYnV0dG9uLmJ0bi13LW1kIHtcbiAgbWluLXdpZHRoOiAxMzVweDsgfVxuXG5hLmJ0bi13LWxnLFxuYnV0dG9uLmJ0bi13LWxnIHtcbiAgbWluLXdpZHRoOiAxNjBweDsgfVxuXG5hLmJ0bi1yb3VuZCxcbmJ1dHRvbi5idG4tcm91bmQge1xuICBib3JkZXItcmFkaXVzOiAyZW07IH1cblxuYS5idG4tZ2FwLFxuYnV0dG9uLmJ0bi1nYXAge1xuICBtYXJnaW46IDVweDsgfVxuXG5hLmJ0bi1nYXAtaCxcbmJ1dHRvbi5idG4tZ2FwLWgge1xuICBtYXJnaW46IDAgNXB4OyB9XG5cbmEuYnRuLWdhcC12LFxuYnV0dG9uLmJ0bi1nYXAtdiB7XG4gIG1hcmdpbjogMCAwIDVweDsgfVxuXG4uYnRuLWljb24ge1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICBoZWlnaHQ6IDM1cHg7XG4gIHdpZHRoOiAzNXB4O1xuICBsaW5lLWhlaWdodDogMzVweDsgfVxuICAuYnRuLWljb24gaSB7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7IH1cbiAgLmJ0bi1pY29uLmJ0bi1pY29uLWxpbmVkIHtcbiAgICBsaW5lLWhlaWdodDogMzFweDsgfVxuICAgIC5idG4taWNvbi5idG4taWNvbi1saW5lZCBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMXB4OyB9XG4gICAgLmJ0bi1pY29uLmJ0bi1pY29uLWxpbmVkLmJ0bi1pY29uLXRoaW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDMzcHg7IH1cbiAgICAgIC5idG4taWNvbi5idG4taWNvbi1saW5lZC5idG4taWNvbi10aGluIGkge1xuICAgICAgICBsaW5lLWhlaWdodDogMzNweDsgfVxuXG4uYnRuLWljb24tcm91bmQge1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cblxuLmJ0bi1pY29uLXNtIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMzBweDtcbiAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cbiAgLmJ0bi1pY29uLXNtIGkge1xuICAgIGxpbmUtaGVpZ2h0OiAzMHB4OyB9XG4gIC5idG4taWNvbi1zbS5idG4taWNvbi1saW5lZCB7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7IH1cbiAgICAuYnRuLWljb24tc20uYnRuLWljb24tbGluZWQgaSB7XG4gICAgICBsaW5lLWhlaWdodDogMjZweDsgfVxuICAgIC5idG4taWNvbi1zbS5idG4taWNvbi1saW5lZC5idG4taWNvbi10aGluIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4OyB9XG4gICAgICAuYnRuLWljb24tc20uYnRuLWljb24tbGluZWQuYnRuLWljb24tdGhpbiBpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7IH1cblxuLmJ0bi1pY29uLW1kIHtcbiAgaGVpZ2h0OiA0NXB4O1xuICB3aWR0aDogNDVweDtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gIGZvbnQtc2l6ZTogMThweDsgfVxuICAuYnRuLWljb24tbWQgaSB7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7IH1cbiAgLmJ0bi1pY29uLW1kLmJ0bi1pY29uLWxpbmVkIHtcbiAgICBsaW5lLWhlaWdodDogNDFweDsgfVxuICAgIC5idG4taWNvbi1tZC5idG4taWNvbi1saW5lZCBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4OyB9XG4gICAgLmJ0bi1pY29uLW1kLmJ0bi1pY29uLWxpbmVkLmJ0bi1pY29uLXRoaW4ge1xuICAgICAgbGluZS1oZWlnaHQ6IDQzcHg7IH1cbiAgICAgIC5idG4taWNvbi1tZC5idG4taWNvbi1saW5lZC5idG4taWNvbi10aGluIGkge1xuICAgICAgICBsaW5lLWhlaWdodDogNDNweDsgfVxuXG4uYnRuLWljb24tbGcge1xuICBoZWlnaHQ6IDY1cHg7XG4gIHdpZHRoOiA2NXB4O1xuICBsaW5lLWhlaWdodDogNjVweDtcbiAgZm9udC1zaXplOiAyOHB4OyB9XG4gIC5idG4taWNvbi1sZyBpIHtcbiAgICBsaW5lLWhlaWdodDogNjVweDsgfVxuICAuYnRuLWljb24tbGcuYnRuLWljb24tbGluZWQge1xuICAgIGxpbmUtaGVpZ2h0OiA2MXB4OyB9XG4gICAgLmJ0bi1pY29uLWxnLmJ0bi1pY29uLWxpbmVkIGkge1xuICAgICAgbGluZS1oZWlnaHQ6IDYxcHg7IH1cbiAgICAuYnRuLWljb24tbGcuYnRuLWljb24tbGluZWQuYnRuLWljb24tdGhpbiB7XG4gICAgICBsaW5lLWhlaWdodDogNjNweDsgfVxuICAgICAgLmJ0bi1pY29uLWxnLmJ0bi1pY29uLWxpbmVkLmJ0bi1pY29uLXRoaW4gaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2M3B4OyB9XG5cbi5idG4taWNvbi1sZy1hbHQge1xuICBoZWlnaHQ6IDcwcHg7XG4gIHdpZHRoOiA3MHB4O1xuICBsaW5lLWhlaWdodDogNzBweDsgfVxuICAuYnRuLWljb24tbGctYWx0IGkge1xuICAgIGxpbmUtaGVpZ2h0OiA3MHB4OyB9XG4gIC5idG4taWNvbi1sZy1hbHQuYnRuLWljb24tbGluZWQge1xuICAgIGxpbmUtaGVpZ2h0OiA2NnB4OyB9XG4gICAgLmJ0bi1pY29uLWxnLWFsdC5idG4taWNvbi1saW5lZCBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2NnB4OyB9XG4gICAgLmJ0bi1pY29uLWxnLWFsdC5idG4taWNvbi1saW5lZC5idG4taWNvbi10aGluIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2OHB4OyB9XG4gICAgICAuYnRuLWljb24tbGctYWx0LmJ0bi1pY29uLWxpbmVkLmJ0bi1pY29uLXRoaW4gaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2OHB4OyB9XG5cbi5idG4taWNvbi14bCB7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDgwcHg7XG4gIGxpbmUtaGVpZ2h0OiA4MHB4OyB9XG4gIC5idG4taWNvbi14bCBpIHtcbiAgICBsaW5lLWhlaWdodDogODBweDsgfVxuICAuYnRuLWljb24teGwuYnRuLWljb24tbGluZWQge1xuICAgIGxpbmUtaGVpZ2h0OiA3NnB4OyB9XG4gICAgLmJ0bi1pY29uLXhsLmJ0bi1pY29uLWxpbmVkIGkge1xuICAgICAgbGluZS1oZWlnaHQ6IDc2cHg7IH1cbiAgICAuYnRuLWljb24teGwuYnRuLWljb24tbGluZWQuYnRuLWljb24tdGhpbiB7XG4gICAgICBsaW5lLWhlaWdodDogNzhweDsgfVxuICAgICAgLmJ0bi1pY29uLXhsLmJ0bi1pY29uLWxpbmVkLmJ0bi1pY29uLXRoaW4gaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA3OHB4OyB9XG5cbi5idG4tdHdpdHRlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBjN2Y3O1xuICBib3JkZXItY29sb3I6ICMwMGM3Zjc7IH1cbiAgLmJ0bi10d2l0dGVyOmhvdmVyLCAuYnRuLXR3aXR0ZXI6Zm9jdXMsIC5idG4tdHdpdHRlcjphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNmNlO1xuICAgIGJvcmRlci1jb2xvcjogIzAwOTZiYTsgfVxuXG4uYnRuLWZhY2Vib29rIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzUzOTc7XG4gIGJvcmRlci1jb2xvcjogIzMzNTM5NzsgfVxuICAuYnRuLWZhY2Vib29rOmhvdmVyLCAuYnRuLWZhY2Vib29rOmZvY3VzLCAuYnRuLWZhY2Vib29rOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTQyNzk7XG4gICAgYm9yZGVyLWNvbG9yOiAjMjQzYTY5OyB9XG5cbi5idG4tZ3BsdXMsXG4uYnRuLWdvb2dsZS1wbHVzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZDRhMzg7XG4gIGJvcmRlci1jb2xvcjogI2RkNGEzODsgfVxuICAuYnRuLWdwbHVzOmhvdmVyLCAuYnRuLWdwbHVzOmZvY3VzLCAuYnRuLWdwbHVzOmFjdGl2ZSxcbiAgLmJ0bi1nb29nbGUtcGx1czpob3ZlcixcbiAgLmJ0bi1nb29nbGUtcGx1czpmb2N1cyxcbiAgLmJ0bi1nb29nbGUtcGx1czphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2EzNTIyO1xuICAgIGJvcmRlci1jb2xvcjogI2I4MzAxZjsgfVxuXG4uYnRuLWluc3RhZ3JhbSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjODI2ODVBO1xuICBib3JkZXItY29sb3I6ICM4MjY4NUE7IH1cbiAgLmJ0bi1pbnN0YWdyYW06aG92ZXIsIC5idG4taW5zdGFncmFtOmZvY3VzLCAuYnRuLWluc3RhZ3JhbTphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNmE1NTQ5O1xuICAgIGJvcmRlci1jb2xvcjogIzVlNGI0MTsgfVxuXG4uYnRuLXZpbWVvIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2Mzg3OUM7XG4gIGJvcmRlci1jb2xvcjogIzYzODc5QzsgfVxuICAuYnRuLXZpbWVvOmhvdmVyLCAuYnRuLXZpbWVvOmZvY3VzLCAuYnRuLXZpbWVvOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1MzcxODM7XG4gICAgYm9yZGVyLWNvbG9yOiAjNGI2Nzc3OyB9XG5cbi5idG4tZmxpY2tyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDYxREI7XG4gIGJvcmRlci1jb2xvcjogIzAwNjFEQjsgfVxuICAuYnRuLWZsaWNrcjpob3ZlciwgLmJ0bi1mbGlja3I6Zm9jdXMsIC5idG4tZmxpY2tyOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDRmYjI7XG4gICAgYm9yZGVyLWNvbG9yOiAjMDA0NjllOyB9XG5cbi5idG4tZ2l0aHViIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzQjNCM0I7XG4gIGJvcmRlci1jb2xvcjogIzNCM0IzQjsgfVxuICAuYnRuLWdpdGh1Yjpob3ZlciwgLmJ0bi1naXRodWI6Zm9jdXMsIC5idG4tZ2l0aHViOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyNzI3Mjc7XG4gICAgYm9yZGVyLWNvbG9yOiAjMWMxYzFjOyB9XG5cbi5idG4tcGludGVyZXN0IHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNENzM1MzI7XG4gIGJvcmRlci1jb2xvcjogI0Q3MzUzMjsgfVxuICAuYnRuLXBpbnRlcmVzdDpob3ZlciwgLmJ0bi1waW50ZXJlc3Q6Zm9jdXMsIC5idG4tcGludGVyZXN0OmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNiYzI3MjU7XG4gICAgYm9yZGVyLWNvbG9yOiAjYWIyNDIxOyB9XG5cbi5idG4tdHVtYmxyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1ODY5ODA7XG4gIGJvcmRlci1jb2xvcjogIzU4Njk4MDsgfVxuICAuYnRuLXR1bWJscjpob3ZlciwgLmJ0bi10dW1ibHI6Zm9jdXMsIC5idG4tdHVtYmxyOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NzU1Njg7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2Y0YjVjOyB9XG5cbi5idG4tbGlua2VkaW4ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAxOEZBRjtcbiAgYm9yZGVyLWNvbG9yOiAjMDE4RkFGOyB9XG4gIC5idG4tbGlua2VkaW46aG92ZXIsIC5idG4tbGlua2VkaW46Zm9jdXMsIC5idG4tbGlua2VkaW46YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAxNmU4NjtcbiAgICBib3JkZXItY29sb3I6ICMwMTVkNzI7IH1cblxuLmJ0bi1kcmliYmJsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUE3M0EwO1xuICBib3JkZXItY29sb3I6ICNFQTczQTA7IH1cbiAgLmJ0bi1kcmliYmJsZTpob3ZlciwgLmJ0bi1kcmliYmJsZTpmb2N1cywgLmJ0bi1kcmliYmJsZTphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTU1MDg4O1xuICAgIGJvcmRlci1jb2xvcjogI2UyM2U3YzsgfVxuXG4uYnRuLXN0dW1ibGV1cG9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNFQTRCMjQ7XG4gIGJvcmRlci1jb2xvcjogI0VBNEIyNDsgfVxuICAuYnRuLXN0dW1ibGV1cG9uOmhvdmVyLCAuYnRuLXN0dW1ibGV1cG9uOmZvY3VzLCAuYnRuLXN0dW1ibGV1cG9uOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMTM5MTQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjYmYzNDEyOyB9XG5cbi5idG4tbGFzdGZtIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCODA2Mzg7XG4gIGJvcmRlci1jb2xvcjogI0I4MDYzODsgfVxuICAuYnRuLWxhc3RmbTpob3ZlciwgLmJ0bi1sYXN0Zm06Zm9jdXMsIC5idG4tbGFzdGZtOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MDA1MmM7XG4gICAgYm9yZGVyLWNvbG9yOiAjN2QwNDI2OyB9XG5cbi5idG4tZXZlcm5vdGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNCQUIyNztcbiAgYm9yZGVyLWNvbG9yOiAjM0JBQjI3OyB9XG4gIC5idG4tZXZlcm5vdGU6aG92ZXIsIC5idG4tZXZlcm5vdGU6Zm9jdXMsIC5idG4tZXZlcm5vdGU6YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMwOGExZjtcbiAgICBib3JkZXItY29sb3I6ICMyYTc5MWM7IH1cblxuLmJ0bi1za3lwZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCMEY2O1xuICBib3JkZXItY29sb3I6ICMwMEIwRjY7IH1cbiAgLmJ0bi1za3lwZTpob3ZlciwgLmJ0bi1za3lwZTpmb2N1cywgLmJ0bi1za3lwZTphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA5M2NkO1xuICAgIGJvcmRlci1jb2xvcjogIzAwODRiOTsgfVxuXG4uYnRuLXNvdW5kY2xvdWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwNjZGRjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA2NkZGOyB9XG4gIC5idG4tc291bmRjbG91ZDpob3ZlciwgLmJ0bi1zb3VuZGNsb3VkOmZvY3VzLCAuYnRuLXNvdW5kY2xvdWQ6YWN0aXZlIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNTZkNjtcbiAgICBib3JkZXItY29sb3I6ICMwMDRlYzI7IH1cblxuLmJ0bi1iZWhhbmNlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNCODA2Mzg7XG4gIGJvcmRlci1jb2xvcjogI0I4MDYzODsgfVxuICAuYnRuLWJlaGFuY2U6aG92ZXIsIC5idG4tYmVoYW5jZTpmb2N1cywgLmJ0bi1iZWhhbmNlOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5MDA1MmM7XG4gICAgYm9yZGVyLWNvbG9yOiAjN2QwNDI2OyB9XG5cbi5idG4tcnNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNzk2Mzg7XG4gIGJvcmRlci1jb2xvcjogI0Y3OTYzODsgfVxuICAuYnRuLXJzczpob3ZlciwgLmJ0bi1yc3M6Zm9jdXMsIC5idG4tcnNzOmFjdGl2ZSB7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmNTgxMTE7XG4gICAgYm9yZGVyLWNvbG9yOiAjZTg3NzA5OyB9XG5cbi5idG4teW91dHViZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0MxODFFO1xuICBib3JkZXItY29sb3I6ICNDQzE4MUU7IH1cbiAgLmJ0bi15b3V0dWJlOmhvdmVyLCAuYnRuLXlvdXR1YmU6Zm9jdXMsIC5idG4teW91dHViZTphY3RpdmUge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYTcxNDE5O1xuICAgIGJvcmRlci1jb2xvcjogIzk1MTIxNjsgfVxuXG4udGhlbWUtZ3JheSAuYnRuLWRlZmF1bHQsXG4udGhlbWUtZ3JheSAuYnRuLXNlY29uZGFyeSxcbi50aGVtZS1kYXJrIC5idG4tZGVmYXVsdCxcbi50aGVtZS1kYXJrIC5idG4tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICBjb2xvcjogI2Q1ZDZkNzsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gIC50YWJsZS1mbGlwLXNjcm9sbCB7XG4gICAgLyogc29ydCBvdXQgYm9yZGVycyAqLyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIC5jZjphZnRlciB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMDtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBoZWlnaHQ6IDA7IH1cbiAgICAudGFibGUtZmxpcC1zY3JvbGwgKiBodG1sIC5jZiB7XG4gICAgICB6b29tOiAxOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsICo6Zmlyc3QtY2hpbGQgKyBodG1sIC5jZiB7XG4gICAgICB6b29tOiAxOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHRhYmxlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgIGJvcmRlci1zcGFjaW5nOiAwOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHRoLFxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0ZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHRoIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAudGFibGUtZmxpcC1zY3JvbGwgdGFibGUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHRib2R5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0aGVhZCB0ciB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCAudGFibGUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7IH1cbiAgICAudGFibGUtZmxpcC1zY3JvbGwgdGgge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0Ym9keSB0ciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHRkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWluLWhlaWdodDogMS4yNWVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0aCB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7IH1cbiAgICAudGFibGUtZmxpcC1zY3JvbGwgdGQge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICBib3JkZXItYm90dG9tOiAwOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHRib2R5IHRyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2JhYmNiZjsgfVxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0aDpsYXN0LWNoaWxkLFxuICAgIC50YWJsZS1mbGlwLXNjcm9sbCB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmFiY2JmOyB9XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIC5tZGwtZGF0YS10YWJsZSB0Ym9keSB0ciB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH0gfVxuXG4udGhlbWUtZ3JheSAuZm9ybS1jb250cm9sLFxuLnRoZW1lLWdyYXkgLmlucHV0LWdyb3VwLWFkZG9uLFxuLnRoZW1lLWRhcmsgLmZvcm0tY29udHJvbCxcbi50aGVtZS1kYXJrIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgY29sb3I6ICNkNWQ2ZDc7IH1cblxuLnRoZW1lLWdyYXkgLmhlbHAtYmxvY2ssXG4udGhlbWUtZGFyayAuaGVscC1ibG9jayB7XG4gIGNvbG9yOiAjNjM2YzcyOyB9XG5cbi5pbnB1dC1yb3VuZCB7XG4gIGJvcmRlci1yYWRpdXM6IDJlbTsgfVxuXG5pbnB1dC5pbnB1dC1wcmltYXJ5IHtcbiAgYm9yZGVyLWNvbG9yOiAjMjE5NkYzOyB9XG4gIGlucHV0LmlucHV0LXByaW1hcnk6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzIxOTZGMzsgfVxuXG5pbnB1dC5pbnB1dC1pbmZvIHtcbiAgYm9yZGVyLWNvbG9yOiAjMDBCQ0Q0OyB9XG4gIGlucHV0LmlucHV0LWluZm86Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzAwQkNENDsgfVxuXG5pbnB1dC5pbnB1dC1zdWNjZXNzIHtcbiAgYm9yZGVyLWNvbG9yOiAjNjZCQjZBOyB9XG4gIGlucHV0LmlucHV0LXN1Y2Nlc3M6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzY2QkI2QTsgfVxuXG5pbnB1dC5pbnB1dC13YXJuaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiAjRkZDQTI4OyB9XG4gIGlucHV0LmlucHV0LXdhcm5pbmc6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogI0ZGQ0EyODsgfVxuXG5pbnB1dC5pbnB1dC1kYW5nZXIge1xuICBib3JkZXItY29sb3I6ICNFRjUzNTA7IH1cbiAgaW5wdXQuaW5wdXQtZGFuZ2VyOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICNFRjUzNTA7IH1cblxuLmJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgYm94LXNoYWRvdzogMCAwIDJweCByZ2JhKDAsIDAsIDAsIDAuMTUpOyB9XG4gIC5ib3guYm94LXRyYW5zcGFyZW50IHtcbiAgICBib3gtc2hhZG93OiBub25lOyB9XG4gIC5ib3ggLmJveC1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDMpOyB9XG5cbi5ib3gtZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7IH1cblxuLmJveC1oZWFkZXIge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogLTAuOHJlbSAtMC44cmVtIDAgMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDsgfVxuXG4uYm94LXRvb2xiYXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4yNXJlbTtcbiAgcmlnaHQ6IDEuMjVyZW07IH1cbiAgLmJveC10b29sYmFyIGEge1xuICAgIGNvbG9yOiAjNjM2YzcyOyB9XG4gICAgLmJveC10b29sYmFyIGEgLm1hdGVyaWFsLWljb25zIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4uYm94LWRpdmlkZXIge1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjA4KTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07IH1cblxuLmJveC1ib2R5IHtcbiAgcGFkZGluZzogMS4yNXJlbTsgfVxuICAuYm94LWJvZHk6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGNsZWFyOiBib3RoOyB9XG4gIC5ib3gtYm9keS5wYWRkaW5nLWxnIHtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7IH1cbiAgLmJveC1ib2R5LnBhZGRpbmcteGwge1xuICAgIHBhZGRpbmc6IDYwcHggMTVweDsgfVxuICAuYm94LWJvZHkucGFkZGluZy1sZy1oIHtcbiAgICBwYWRkaW5nOiAxNXB4IDMwcHg7IH1cbiAgLmJveC1ib2R5LnBhZGRpbmctbGctdiB7XG4gICAgcGFkZGluZzogMzBweCAxNXB4OyB9XG5cbi50aGVtZS1ncmF5IC5ib3gtZGVmYXVsdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTE5MTk7IH1cblxuLnRoZW1lLWRhcmsgLmJveC1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3MTgxYzsgfVxuXG4uYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDE1cHggMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNjY2M7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICBmb250LXNpemU6IDExcHg7IH1cbiAgLmJyZWFkY3J1bWIgYSB7XG4gICAgY29sb3I6ICNjY2M7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gICAgLmJyZWFkY3J1bWIgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzIxOTZGMzsgfVxuICAuYnJlYWRjcnVtYiBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi5jYWxsLXRvLWFjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5jYWxsLXRvLWFjdGlvbiAuY3RhLWlubmVyIHtcbiAgICBwYWRkaW5nOiAyZW0gMDsgfVxuICAuY2FsbC10by1hY3Rpb24gLmN0YS10ZXh0IHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cbiAgLmNhbGwtdG8tYWN0aW9uIC5jdGEtYnRuIHtcbiAgICBtYXJnaW46IDMwcHggMCAxMHB4OyB9XG4gIC5jYWxsLXRvLWFjdGlvbiAuY3RhLW11dGVkIHtcbiAgICBvcGFjaXR5OiAuNzsgfVxuICAuY2FsbC10by1hY3Rpb24uY3RhLWlubGluZSAuY3RhLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gIC5jYWxsLXRvLWFjdGlvbi5jdGEtaW5saW5lIC5jdGEtYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMCAzMHB4OyB9XG4gIC5jYWxsLXRvLWFjdGlvbi5jdGEtZnVsbC13aWR0aCAuY3RhLWlubmVyIHtcbiAgICBwYWRkaW5nOiA2ZW0gMWVtOyB9XG4gIC5jYWxsLXRvLWFjdGlvbi5jdGEtYmctaW1nIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpOyB9XG4gICAgLmNhbGwtdG8tYWN0aW9uLmN0YS1iZy1pbWcgLmN0YS1pbm5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICAgICAgcGFkZGluZzogN2VtIDFlbTsgfVxuXG4uY2FsbG91dCB7XG4gIG1hcmdpbjogMjBweCAwO1xuICBwYWRkaW5nOiAyMHB4O1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNlZWU7IH1cbiAgLmNhbGxvdXQgaDQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS41OyB9XG4gIC5jYWxsb3V0IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uY2FsbG91dC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDIsIDE4NywgMTA2LCAwLjA4KTtcbiAgYm9yZGVyLWNvbG9yOiAjNjZCQjZBOyB9XG4gIC5jYWxsb3V0LXN1Y2Nlc3MgaDQge1xuICAgIGNvbG9yOiAjNjZCQjZBOyB9XG5cbi5jYWxsb3V0LWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE4OCwgMjEyLCAwLjA1KTtcbiAgYm9yZGVyLWNvbG9yOiAjMDBCQ0Q0OyB9XG4gIC5jYWxsb3V0LWluZm8gaDQge1xuICAgIGNvbG9yOiAjMDBCQ0Q0OyB9XG5cbi5jYWxsb3V0LXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjAyLCA0MCwgMC4wOCk7XG4gIGJvcmRlci1jb2xvcjogI0ZGQ0EyODsgfVxuICAuY2FsbG91dC13YXJuaW5nIGg0IHtcbiAgICBjb2xvcjogI0ZGQ0EyODsgfVxuXG4uY2FsbG91dC1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIzOSwgODMsIDgwLCAwLjA1KTtcbiAgYm9yZGVyLWNvbG9yOiAjRUY1MzUwOyB9XG4gIC5jYWxsb3V0LWRhbmdlciBoNCB7XG4gICAgY29sb3I6ICNFRjUzNTA7IH1cblxuLmNhcmQtd2hpdGUge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuXG5hLml0ZW0tY2FyZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgYS5pdGVtLWNhcmQ6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuXG4uaXRlbS1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiAwLjJzIGxpbmVhcjsgfVxuICAuaXRlbS1jYXJkIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7IH1cbiAgLml0ZW0tY2FyZCAuY2FyZF9faW1hZ2Uge1xuICAgIHBhZGRpbmc6IDMwcHggMTVweDtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wMzUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuaXRlbS1jYXJkIGgxLCAuaXRlbS1jYXJkIGgyLCAuaXRlbS1jYXJkIGgzLCAuaXRlbS1jYXJkIGg0LCAuaXRlbS1jYXJkIGg1LCAuaXRlbS1jYXJkIGg2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuICAuaXRlbS1jYXJkIGg2IHtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gICAgb3BhY2l0eTogLjU7IH1cbiAgLml0ZW0tY2FyZCBoNCB7XG4gICAgZm9udC1zaXplOiAxNnB4OyB9XG4gIC5pdGVtLWNhcmQgLmNhcmRfX2JvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuaXRlbS1jYXJkIC5jYXJkX19wcmljZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMzBweDtcbiAgICByaWdodDogMTVweDsgfVxuICAgIC5pdGVtLWNhcmQgLmNhcmRfX3ByaWNlIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogIzYzNmM3MjsgfVxuICAgICAgLml0ZW0tY2FyZCAuY2FyZF9fcHJpY2Ugc3Bhbi50eXBlLS1zdHJpa2V0aHJvdWdoIHtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoOyB9XG4gIC5pdGVtLWNhcmQuY2FyZF9faG9yaXpvbnRhbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgICAuaXRlbS1jYXJkLmNhcmRfX2hvcml6b250YWwgLmNhcmRfX2ltYWdlIHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuaXRlbS1jYXJkLmNhcmRfX2hvcml6b250YWwgLmNhcmRfX2JvZHkge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgcGFkZGluZzogNDBweCAzMHB4OyB9XG4gICAgLml0ZW0tY2FyZC5jYXJkX19ob3Jpem9udGFsIC5jYXJkX19wcmljZSB7XG4gICAgICB0b3A6IDMwcHg7XG4gICAgICByaWdodDogMzBweDsgfVxuICAgIC5pdGVtLWNhcmQuY2FyZF9faG9yaXpvbnRhbCAuY2FyZF9fZGVzYyB7XG4gICAgICBtYXJnaW46IDAgMjUlIDNlbSAwO1xuICAgICAgb3BhY2l0eTogLjc7IH1cblxuLnRoZW1lLWdyYXkgLmNhcmQtd2hpdGUsXG4udGhlbWUtZGFyayAuY2FyZC13aGl0ZSB7XG4gIGNvbG9yOiAjZDVkNmQ3OyB9XG4gIC50aGVtZS1ncmF5IC5jYXJkLXdoaXRlIGgxLCAudGhlbWUtZ3JheSAuY2FyZC13aGl0ZSBoMiwgLnRoZW1lLWdyYXkgLmNhcmQtd2hpdGUgaDMsIC50aGVtZS1ncmF5IC5jYXJkLXdoaXRlIGg0LCAudGhlbWUtZ3JheSAuY2FyZC13aGl0ZSBoNSwgLnRoZW1lLWdyYXkgLmNhcmQtd2hpdGUgaDYsXG4gIC50aGVtZS1kYXJrIC5jYXJkLXdoaXRlIGgxLFxuICAudGhlbWUtZGFyayAuY2FyZC13aGl0ZSBoMixcbiAgLnRoZW1lLWRhcmsgLmNhcmQtd2hpdGUgaDMsXG4gIC50aGVtZS1kYXJrIC5jYXJkLXdoaXRlIGg0LFxuICAudGhlbWUtZGFyayAuY2FyZC13aGl0ZSBoNSxcbiAgLnRoZW1lLWRhcmsgLmNhcmQtd2hpdGUgaDYge1xuICAgIGNvbG9yOiAjZDVkNmQ3OyB9XG5cbi50aGVtZS1ncmF5IC5jYXJkLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5MTkxOTsgfVxuXG4udGhlbWUtZGFyayAuY2FyZC13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzE4MWM7IH1cblxuLmZlYXR1cmUtY2FsbG91dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY2xlYXI6IGJvdGg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZlYXR1cmUtY2FsbG91dC5mZWF0dXJlLWNvbnRlbnQtbGVmdCAuY2FsbG91dC1mZWF0dXJlLWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1yaWdodDogMmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIC5mZWF0dXJlLWNhbGxvdXQuZmVhdHVyZS1jb250ZW50LWxlZnQgLmNhbGxvdXQtZmVhdHVyZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5mZWF0dXJlLWNhbGxvdXQuZmVhdHVyZS1jb250ZW50LXJpZ2h0IC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDJlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuZmVhdHVyZS1jYWxsb3V0LmZlYXR1cmUtY29udGVudC1yaWdodCAuY2FsbG91dC1mZWF0dXJlLWNvbnRlbnQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAzZW07IH0gfVxuICAuZmVhdHVyZS1jYWxsb3V0LmZlYXR1cmUtY29udGVudC1jZW50ZXIgLmNhbGxvdXQtZmVhdHVyZS1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gICAgbWFyZ2luOiAwIGF1dG87IH1cbiAgLmZlYXR1cmUtY2FsbG91dCAubWQtYnV0dG9uIHtcbiAgICBwYWRkaW5nOiA1cHggMDtcbiAgICBtaW4td2lkdGg6IDE1MHB4OyB9XG5cbi5mZWF0dXJlLWNhbGxvdXQtY292ZXIsXG4uZmVhdHVyZS1jYWxsb3V0LWltYWdlLXB1bGwge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7IH1cblxuLmZlYXR1cmUtY2FsbG91dC1pbWFnZS1wdWxsIHtcbiAgbWluLWhlaWdodDogMjAwcHg7IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZlYXR1cmUtY2FsbG91dC1pbWFnZS1wdWxsIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDsgfSB9XG5cbi5jYWxsb3V0LWZlYXR1cmUtY29udGVudCB7XG4gIHBhZGRpbmc6IDNlbSAwOyB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCB7XG4gICAgICBwYWRkaW5nLXRvcDogNmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDZlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCB7XG4gICAgICBwYWRkaW5nLXRvcDogOGVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDhlbTsgfSB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICAuY2FsbG91dC1mZWF0dXJlLWNvbnRlbnQge1xuICAgICAgcGFkZGluZy10b3A6IDEyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTJlbTsgfSB9XG4gIC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIG1hcmdpbi10b3A6IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuOTtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgLmNhbGxvdXQtZmVhdHVyZS1jb250ZW50IHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjc1O1xuICAgIGh5cGhlbnM6IG5vbmU7IH1cbiAgICAuY2FsbG91dC1mZWF0dXJlLWNvbnRlbnQgcDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDsgfSB9XG5cbi5mZWF0dXJlLWNhbGxvdXQtY292ZXIuaGFzLW92ZXJsYXkge1xuICBjb2xvcjogI2ZmZjsgfVxuICAuZmVhdHVyZS1jYWxsb3V0LWNvdmVyLmhhcy1vdmVybGF5OmFmdGVyIHtcbiAgICBjb250ZW50OiAnICc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjI1KTsgfVxuXG4uZmVhdHVyZS1jYWxsb3V0LWNvdmVyIC53aXRoLW1heHdpZHRoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyOyB9XG5cbi5mZWF0dXJlLWNhbGxvdXQtY292ZXIgaDIge1xuICBmb250LXNpemU6IDMwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsZXR0ZXItc3BhY2luZzogLjFlbTsgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAuZmVhdHVyZS1jYWxsb3V0LWNvdmVyIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogNDhweDsgfSB9XG5cbi5paC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjM1cyBlYXNlLWluLW91dDsgfVxuICAuaWgtaXRlbSBhIHtcbiAgICBjb2xvcjogIzMzMzsgfVxuICAgIC5paC1pdGVtIGE6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5paC1pdGVtIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTsgfVxuXG4uaWgtaXRlbS5zcXVhcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7IH1cbiAgLmloLWl0ZW0uc3F1YXJlIC5pbmZvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuLmloLWl0ZW0uaWgtbWF0ZXJpYWwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7IH1cbiAgLmloLWl0ZW0uaWgtbWF0ZXJpYWwgLmluZm8tbWFzayB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTI1JTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNHMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTsgfVxuICAuaWgtaXRlbS5paC1tYXRlcmlhbCAuaW5mby1jb250ZW50IHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7IH1cbiAgICAuaWgtaXRlbS5paC1tYXRlcmlhbCAuaW5mby1jb250ZW50OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNWVtOyB9XG4gICAgLmloLWl0ZW0uaWgtbWF0ZXJpYWwgLmluZm8tY29udGVudCAuaW5mby1pbm5lciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgIC5paC1pdGVtLmloLW1hdGVyaWFsIC5pbmZvLWNvbnRlbnQgLmluZm8taW5uZXIgaDMge1xuICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgLmloLWl0ZW0uaWgtbWF0ZXJpYWwgLmluZm8tY29udGVudCAuaW5mby1pbm5lciBwIHtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGNvbG9yOiAjZWNlZWVmOyB9XG4gIC5paC1pdGVtLmloLW1hdGVyaWFsIC5iZy1jb2xvci13aGl0ZSArIC5pbmZvLWNvbnRlbnQgLmluZm8taW5uZXIgaDMsXG4gIC5paC1pdGVtLmloLW1hdGVyaWFsIC5iZy1jb2xvci13YXJuaW5nICsgLmluZm8tY29udGVudCAuaW5mby1pbm5lciBoMyB7XG4gICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cbiAgLmloLWl0ZW0uaWgtbWF0ZXJpYWwgLmJnLWNvbG9yLXdoaXRlICsgLmluZm8tY29udGVudCAuaW5mby1pbm5lciBwLFxuICAuaWgtaXRlbS5paC1tYXRlcmlhbCAuYmctY29sb3Itd2FybmluZyArIC5pbmZvLWNvbnRlbnQgLmluZm8taW5uZXIgcCB7XG4gICAgY29sb3I6ICM5OTk7IH1cbiAgLmloLWl0ZW0uaWgtbWF0ZXJpYWwgYTpob3ZlciAuaW5mby1jb250ZW50IHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgLmloLWl0ZW0uaWgtbWF0ZXJpYWwgYTpob3ZlciAuaW5mby1tYXNrIHtcbiAgICBvcGFjaXR5OiAuODtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMjEpOyB9XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QzIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuaWgtaXRlbS5zcXVhcmUuZWZmZWN0MyAuaW5mbyB7XG4gICAgaGVpZ2h0OiA2NXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44KTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IGFsbCAuMzVzIGVhc2UtaW4tb3V0OyB9XG4gICAgLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDMgLmluZm8gaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBwYWRkaW5nOiAxMHB4IDEwcHggMCA0cHg7XG4gICAgICBtYXJnaW46IDRweCAwIDAgMDsgfVxuICAgIC5paC1pdGVtLnNxdWFyZS5lZmZlY3QzIC5pbmZvIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDMgLmluZm8uYmctY29sb3ItcHJpbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDMzLCAxNTAsIDI0MywgMC44KTsgfVxuICAgIC5paC1pdGVtLnNxdWFyZS5lZmZlY3QzIC5pbmZvLmJnLWNvbG9yLWluZm8ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxODgsIDIxMiwgMC44KTsgfVxuICAuaWgtaXRlbS5zcXVhcmUuZWZmZWN0MyBhOmhvdmVyIC5pbmZvIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7IH1cblxuLmloLWl0ZW0uc3F1YXJlLmVmZmVjdDMuYm90dG9tX3RvX3RvcCAuaW5mbyB7XG4gIHRvcDogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpOyB9XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QzLmJvdHRvbV90b190b3AgYTpob3ZlciAuaW5mbyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0My50b3BfdG9fYm90dG9tIC5pbmZvIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpOyB9XG5cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QzLnRvcF90b19ib3R0b20gYTpob3ZlciAuaW5mbyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxuXG4uaWNvbi1ib3gge1xuICBtYXJnaW4tdG9wOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDAgMCAwIDgwcHg7IH1cbiAgLmljb24tYm94IC5pYm94LWljb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogNjRweDtcbiAgICBoZWlnaHQ6IDY0cHg7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7IH1cbiAgICAuaWNvbi1ib3ggLmlib3gtaWNvbiBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAgIC5pY29uLWJveCAuaWJveC1pY29uIGEsXG4gICAgLmljb24tYm94IC5pYm94LWljb24gaSxcbiAgICAuaWNvbi1ib3ggLmlib3gtaWNvbiBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgLmljb24tYm94IC5pYm94LWljb24gaSxcbiAgICAuaWNvbi1ib3ggLmlib3gtaWNvbiBpbWcge1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTZGMzsgfVxuICAgIC5pY29uLWJveCAuaWJveC1pY29uIGkge1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7IH1cbiAgLmljb24tYm94IGgzIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuICAuaWNvbi1ib3ggcCB7XG4gICAgbWFyZ2luOiA4cHggMCAwIDA7XG4gICAgY29sb3I6ICM5OTk7IH1cbiAgLmljb24tYm94IC5iZWZvcmUtaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxNHB4OyB9XG5cbi8qIEljb24gQm94IC0gSWNvbiBMYXJnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24tYm94Lmlib3gtbGcge1xuICBwYWRkaW5nOiAwIDAgMCAxMTVweDsgfVxuICAuaWNvbi1ib3guaWJveC1sZyAuaWJveC1pY29uIHtcbiAgICB3aWR0aDogOTZweDtcbiAgICBoZWlnaHQ6IDk2cHg7IH1cbiAgICAuaWNvbi1ib3guaWJveC1sZyAuaWJveC1pY29uIGkge1xuICAgICAgZm9udC1zaXplOiA0MnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDk2cHg7IH1cblxuLyogSWNvbiBCb3ggLSBJY29uIE91dGxpbmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pY29uLWJveC5pYm94LW91dGxpbmUgLmlib3gtaWNvbiB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMyMTk2RjM7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogM3B4OyB9XG4gIC5pY29uLWJveC5pYm94LW91dGxpbmUgLmlib3gtaWNvbiBpIHtcbiAgICBsaW5lLWhlaWdodDogNTZweDsgfVxuXG4vKiBJY29uIEJveCAtIEljb24gT3V0bGluZSBMYXJnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24tYm94Lmlib3gtb3V0bGluZS5pYm94LWxnIC5pYm94LWljb24ge1xuICBwYWRkaW5nOiA0cHg7IH1cbiAgLmljb24tYm94Lmlib3gtb3V0bGluZS5pYm94LWxnIC5pYm94LWljb24gaSB7XG4gICAgbGluZS1oZWlnaHQ6IDg2cHg7IH1cblxuLyogSWNvbiBCb3ggLSBJY29uIFJvdW5kZWRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pY29uLWJveC5pYm94LXJvdW5kZWQgLmlib3gtaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5pY29uLWJveC5pYm94LXJvdW5kZWQgLmlib3gtaWNvbiBpLFxuICAuaWNvbi1ib3guaWJveC1yb3VuZGVkIC5pYm94LWljb24gaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiAwLjJyZW0gIWltcG9ydGFudDsgfVxuXG4vKiBJY29uIEJveCAtIEljb24gUm91bmRlZCAmIExhcmdlXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaWNvbi1ib3guaWJveC1yb3VuZGVkLmlib3gtbGcgLmlib3gtaWNvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbSAhaW1wb3J0YW50OyB9XG4gIC5pY29uLWJveC5pYm94LXJvdW5kZWQuaWJveC1sZyAuaWJveC1pY29uIGksXG4gIC5pY29uLWJveC5pYm94LXJvdW5kZWQuaWJveC1sZyAuaWJveC1pY29uIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogMC4ycmVtICFpbXBvcnRhbnQ7IH1cblxuLyogSWNvbiBCb3ggLSBMaWdodCBCYWNrZ3JvdW5kXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaWNvbi1ib3guaWJveC1saWdodCBpLFxuLmljb24tYm94Lmlib3gtbGlnaHQgaW1nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cblxuLmljb24tYm94Lmlib3gtbGlnaHQuaWJveC1vdXRsaW5lIC5pYm94LWljb24ge1xuICBib3JkZXItY29sb3I6ICNFNUU1RTU7IH1cbiAgLmljb24tYm94Lmlib3gtbGlnaHQuaWJveC1vdXRsaW5lIC5pYm94LWljb24gaSB7XG4gICAgbGluZS1oZWlnaHQ6IDU0cHg7IH1cblxuLmljb24tYm94Lmlib3gtbGlnaHQuaWJveC1vdXRsaW5lIGksXG4uaWNvbi1ib3guaWJveC1saWdodC5pYm94LW91dGxpbmUgaW1nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI0U1RTVFNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U1ZTVlNTtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cblxuLmljb24tYm94Lmlib3gtbGlnaHQuaWJveC1vdXRsaW5lLmlib3gtbGcgLmlib3gtaWNvbiBpIHtcbiAgbGluZS1oZWlnaHQ6IDg0cHg7IH1cblxuLmljb24tYm94Lmlib3gtbGlnaHQgLmlib3gtaWNvbiBpIHtcbiAgbGluZS1oZWlnaHQ6IDYycHg7IH1cblxuLmljb24tYm94Lmlib3gtbGcgLmlib3gtaWNvbiBpIHtcbiAgbGluZS1oZWlnaHQ6IDk2cHg7IH1cblxuLyogSWNvbiBCb3ggLSBEYXJrIEJhY2tncm91bmRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pY29uLWJveC5pYm94LWRhcmsuaWJveC1vdXRsaW5lIC5pYm94LWljb24ge1xuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cblxuLmljb24tYm94Lmlib3gtZGFyayAuaWJveC1pY29uIGksXG4uaWNvbi1ib3guaWJveC1kYXJrIC5pYm94LWljb24gaW1nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuXG4vKiBJY29uIEJveCAtIEJvcmRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24tYm94Lmlib3gtYm9yZGVyIC5pYm94LWljb24ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjE5NkYzO1xuICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgLmljb24tYm94Lmlib3gtYm9yZGVyIC5pYm94LWljb24gaSxcbiAgLmljb24tYm94Lmlib3gtYm9yZGVyIC5pYm94LWljb24gaW1nIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzIxOTZGMzsgfVxuXG4uaWNvbi1ib3guaWJveC1ib3JkZXIgLmlib3gtaWNvbiB7XG4gIHBhZGRpbmc6IDA7IH1cbiAgLmljb24tYm94Lmlib3gtYm9yZGVyIC5pYm94LWljb24gaSB7XG4gICAgbGluZS1oZWlnaHQ6IDYycHggIWltcG9ydGFudDsgfVxuXG4uaWNvbi1ib3guaWJveC1ib3JkZXIuaWJveC1sZyAuaWJveC1pY29uIGkge1xuICBsaW5lLWhlaWdodDogOTRweCAhaW1wb3J0YW50OyB9XG5cbi8qIEljb24gQm94IC0gQm9yZGVyIC0gTGlnaHRcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi5pY29uLWJveC5pYm94LWJvcmRlci5pYm94LWxpZ2h0IC5pYm94LWljb24ge1xuICBib3JkZXItY29sb3I6ICNFNUU1RTU7IH1cblxuLmljb24tYm94Lmlib3gtYm9yZGVyLmlib3gtbGlnaHQgaSxcbi5pY29uLWJveC5pYm94LWJvcmRlci5pYm94LWxpZ2h0IGltZyB7XG4gIGNvbG9yOiAjODg4OyB9XG5cbi8qIEljb24gQm94IC0gQm9yZGVyIC0gRGFya1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24tYm94Lmlib3gtYm9yZGVyLmlib3gtZGFyayAuaWJveC1pY29uIHtcbiAgYm9yZGVyLWNvbG9yOiAjMzMzOyB9XG5cbi5pY29uLWJveC5pYm94LWJvcmRlci5pYm94LWRhcmsgaSxcbi5pY29uLWJveC5pYm94LWJvcmRlci5pYm94LWRhcmsgaW1nIHtcbiAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH1cblxuLyogSWNvbiBCb3ggLSBQbGFpblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24tYm94Lmlib3gtcGxhaW4gLmlib3gtaWNvbiB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuaWNvbi1ib3guaWJveC1wbGFpbiAuaWJveC1pY29uIGksXG4gIC5pY29uLWJveC5pYm94LXBsYWluIC5pYm94LWljb24gaW1nIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjMjE5NkYzO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7IH1cbiAgLmljb24tYm94Lmlib3gtcGxhaW4gLmlib3gtaWNvbiBpIHtcbiAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDsgfVxuICAuaWNvbi1ib3guaWJveC1wbGFpbiAuaWJveC1pY29uIGltZyB7XG4gICAgaGVpZ2h0OiA2NHB4OyB9XG5cbi5pY29uLWJveC5pYm94LXBsYWluLmlib3gtaW1hZ2UgLmlib3gtaWNvbiB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5pY29uLWJveC5pYm94LXBsYWluLmlib3gtaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LXNtYWxsIHtcbiAgcGFkZGluZy1sZWZ0OiA0MnB4OyB9XG4gIC5pY29uLWJveC5pYm94LXBsYWluLmlib3gtc21hbGwgLmlib3gtaWNvbiB7XG4gICAgd2lkdGg6IDI4cHg7IH1cbiAgICAuaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LXNtYWxsIC5pYm94LWljb24gaSB7XG4gICAgICBmb250LXNpemU6IDI4cHg7IH1cbiAgICAuaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LXNtYWxsIC5pYm94LWljb24gaW1nIHtcbiAgICAgIGhlaWdodDogMjhweDsgfVxuICAuaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LXNtYWxsIGgzIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDsgfVxuICAuaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LXNtYWxsIHAge1xuICAgIG1hcmdpbi1sZWZ0OiAtNDJweDsgfVxuXG4uaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LWxnIC5pYm94LWljb24gaSB7XG4gIGZvbnQtc2l6ZTogNzJweDsgfVxuXG4uaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LWxnIC5pYm94LWljb24gaW1nIHtcbiAgaGVpZ2h0OiA5NnB4OyB9XG5cbi5pY29uLWJveC5pYm94LXBsYWluLmlib3gtbGlnaHQgLmlib3gtaWNvbiBpLFxuLmljb24tYm94Lmlib3gtcGxhaW4uaWJveC1saWdodCAuaWJveC1pY29uIGltZyB7XG4gIGNvbG9yOiAjODg4OyB9XG5cbi5pY29uLWJveC5pYm94LXBsYWluLmlib3gtZGFyayAuaWJveC1pY29uIGksXG4uaWNvbi1ib3guaWJveC1wbGFpbi5pYm94LWRhcmsgLmlib3gtaWNvbiBpbWcge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg3KTsgfVxuXG4vKiBJY29uIEJveCAtIENlbnRlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmljb24tYm94Lmlib3gtY2VudGVyIHtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5pY29uLWJveC5pYm94LWNlbnRlci5pYm94LXNtYWxsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDsgfVxuICAuaWNvbi1ib3guaWJveC1jZW50ZXIgLmlib3gtaWNvbiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5pY29uLWJveC5pYm94LWNlbnRlciBoMyB7XG4gICAgbWFyZ2luOiAuOGVtIDAgMDsgfVxuICAuaWNvbi1ib3guaWJveC1jZW50ZXIgcCB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIG1hcmdpbi10b3A6IDBlbTsgfVxuXG4vKiBJY29uIEJveCAtIFJpZ2h0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uaWNvbi1ib3guaWJveC1yaWdodCB7XG4gIHBhZGRpbmc6IDAgODBweCAwIDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5pY29uLWJveC5pYm94LXJpZ2h0Lmlib3gtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDExNXB4OyB9XG4gIC5pY29uLWJveC5pYm94LXJpZ2h0IC5pYm94LWljb24ge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7IH1cbiAgLmljb24tYm94Lmlib3gtcmlnaHQuaWJveC1wbGFpbi5pYm94LXNtYWxsIHtcbiAgICBwYWRkaW5nOiAwIDQycHggMCAwOyB9XG4gICAgLmljb24tYm94Lmlib3gtcmlnaHQuaWJveC1wbGFpbi5pYm94LXNtYWxsIHAge1xuICAgICAgbWFyZ2luOiAwIC00MnB4IDAgMDsgfVxuXG4vKiBEYXJrIFRoZW1lXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4udGhlbWUtZ3JheSAuaWNvbi1ib3ggaDMsXG4udGhlbWUtZGFyayAuaWNvbi1ib3ggaDMge1xuICBjb2xvcjogI2Q1ZDZkNzsgfVxuXG4vKiBCb3hlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLmJveC1ib2R5ID4gLmljb24tYm94IHtcbiAgbWFyZ2luLXRvcDogMDsgfVxuXG4ucHJlbG9hZGVyYmFyIHtcbiAgei1pbmRleDogMTA0MDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDRweDtcbiAgbWFyZ2luLWJvdHRvbTogLTRweDsgfVxuICAucHJlbG9hZGVyYmFyIC5iYXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIzYjdlNTsgfVxuICAgIC5wcmVsb2FkZXJiYXIgLmJhcjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7IH1cbiAgLnByZWxvYWRlcmJhci5hY3RpdmUge1xuICAgIGFuaW1hdGlvbjogY2hhbmdlYmFyIDIuMjVzIGluZmluaXRlIDAuNzVzOyB9XG4gIC5wcmVsb2FkZXJiYXIuYWN0aXZlIC5iYXIge1xuICAgIGFuaW1hdGlvbjogY2hhbmdlYmFyIDIuMjVzIGluZmluaXRlOyB9XG4gIC5wcmVsb2FkZXJiYXIuYWN0aXZlIC5iYXI6YmVmb3JlIHtcbiAgICBhbmltYXRpb246IG1vdmluZ2JhciAwLjc1cyBpbmZpbml0ZTsgfVxuXG5Aa2V5ZnJhbWVzIG1vdmluZ2JhciB7XG4gIDAlIHtcbiAgICByaWdodDogNTAlO1xuICAgIGxlZnQ6IDUwJTsgfVxuICA5OS45JSB7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogMDsgfVxuICAxMDAlIHtcbiAgICByaWdodDogNTAlO1xuICAgIGxlZnQ6IDUwJTsgfSB9XG5cbkBrZXlmcmFtZXMgY2hhbmdlYmFyIHtcbiAgMCUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NkJCNkE7IH1cbiAgMzMuMyUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NkJCNkE7IH1cbiAgMzMuMzMlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZDQTI4OyB9XG4gIDY2LjYlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZDQTI4OyB9XG4gIDY2LjY2JSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGNTM1MDsgfVxuICA5OS45JSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGNTM1MDsgfVxuICAxMDAlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZCQjZBOyB9IH1cblxuLm1kbC1jYXJkLm1kbC1jYXJkLWZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2FyZC1wYW5lbCB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbjogMTBweCAwIDIwcHggMDtcbiAgYm9yZGVyLXJhZGl1czogMnB4OyB9XG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDEwcHggMCAyMHB4IDA7XG4gIGJvcmRlci1yYWRpdXM6IDJweDsgfVxuICAuY2FyZCAuY2FyZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4OyB9XG4gICAgLmNhcmQgLmNhcmQtdGl0bGUuYWN0aXZhdG9yIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAuY2FyZCAuY2FyZC1hY3Rpb24gPiBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuY2FyZCAuY2FyZC1pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhcmQgLmNhcmQtaW1hZ2UgaW1nIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDJweCAycHggMCAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY2FyZCAuY2FyZC1pbWFnZSAuY2FyZC10aXRsZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMjUpOyB9XG4gIC5jYXJkIC5jYXJkLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7IH1cbiAgICAuY2FyZCAuY2FyZC1jb250ZW50IHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAuY2FyZCAuY2FyZC1jb250ZW50IC5jYXJkLXRpdGxlIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA0OHB4OyB9XG4gICAgLmNhcmQgLmNhcmQtY29udGVudCAuY2FyZC1wcm9maWxlLWltZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgbWFyZ2luLXRvcDogLTcwcHg7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgfVxuICAgICAgLmNhcmQgLmNhcmQtY29udGVudCAuY2FyZC1wcm9maWxlLWltZyBpbWcge1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgaGVpZ2h0OiA5MHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7IH1cbiAgICAgIC5jYXJkIC5jYXJkLWNvbnRlbnQgLmNhcmQtcHJvZmlsZS1pbWcucHJvZmlsZS1pbWctc20ge1xuICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgcGFkZGluZzogMnB4OyB9XG4gICAgICAgIC5jYXJkIC5jYXJkLWNvbnRlbnQgLmNhcmQtcHJvZmlsZS1pbWcucHJvZmlsZS1pbWctc20gaW1nIHtcbiAgICAgICAgICB3aWR0aDogNTZweDtcbiAgICAgICAgICBoZWlnaHQ6IDU2cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlOyB9XG4gICAgLmNhcmQgLmNhcmQtY29udGVudCAuY2FyZC1idXR0b24gLmJ0bi1pY29uIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBtYXJnaW4tdG9wOiAtNjVweDsgfVxuICAuY2FyZCAuY2FyZC1hY3Rpb24ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgICAuY2FyZCAuY2FyZC1hY3Rpb24ubm8tYm9yZGVyIHtcbiAgICAgIGJvcmRlcjogMDsgfVxuICAuY2FyZCAuY2FyZC1yZXZlYWwge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICB0b3A6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuY2FyZCAuY2FyZC1yZXZlYWwgLmNhcmQtdGl0bGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cblxuLnRoZW1lLWdyYXkgLm1kbC1jYXJkLFxuLnRoZW1lLWRhcmsgLm1kbC1jYXJkIHtcbiAgY29sb3I6ICNkNWQ2ZDc7IH1cblxuLnRoZW1lLWdyYXkgLm1kbC1jYXJkX19zdXBwb3J0aW5nLXRleHQsXG4udGhlbWUtZGFyayAubWRsLWNhcmRfX3N1cHBvcnRpbmctdGV4dCB7XG4gIGNvbG9yOiAjZDVkNmQ3OyB9XG5cbi50aGVtZS1ncmF5IC5tZGwtY2FyZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxOTE5MTk7IH1cblxuLnRoZW1lLWRhcmsgLm1kbC1jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3MTgxYzsgfVxuXG4ubWRsLWRhdGEtdGFibGUubWRsLWRhdGEtdGFibGUtbm9uLW51bWVyaWMgdGQsIC5tZGwtZGF0YS10YWJsZS5tZGwtZGF0YS10YWJsZS1ub24tbnVtZXJpYyB0aCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7IH1cblxuLmJveC50YWJsZS1ib3gge1xuICBib3JkZXItcmFkaXVzOiAwOyB9XG5cbi5ib3ggPiAubWRsLWRhdGEtdGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYmxlLXJlc3BvbnNpdmUge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBtaW4taGVpZ2h0OiAwLjAxJTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4xMjVyZW07XG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTsgfVxuICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAubWRsLWRhdGEtdGFibGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLm1kbC1kYXRhLXRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC5tZGwtZGF0YS10YWJsZSA+IHRoZWFkID4gdHIgPiB0ZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAubWRsLWRhdGEtdGFibGUgPiB0Ym9keSA+IHRyID4gdGgsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLm1kbC1kYXRhLXRhYmxlID4gdGJvZHkgPiB0ciA+IHRkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC5tZGwtZGF0YS10YWJsZSA+IHRmb290ID4gdHIgPiB0aCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAubWRsLWRhdGEtdGFibGUgPiB0Zm9vdCA+IHRyID4gdGQge1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cbiAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICAgICAgYm9yZGVyOiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRoZWFkID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Ym9keSA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQgPiB0Zm9vdCA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAwOyB9XG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGhlYWQgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLWJvcmRlcmVkID4gdGZvb3QgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRoLFxuICAgICAgICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCA+IHRmb290ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwOyB9IH1cblxuLnRoZW1lLWdyYXkgLmJveCA+IC5tZGwtZGF0YS10YWJsZSB0aCxcbi50aGVtZS1kYXJrIC5ib3ggPiAubWRsLWRhdGEtdGFibGUgdGgge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOyB9XG5cbmltZy5pbWczMF8zMCB7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7IH1cblxuaW1nLmltZzQwXzQwIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDsgfVxuXG5pbWcuaW1nNjRfNjQge1xuICB3aWR0aDogNjRweDtcbiAgaGVpZ2h0OiA2NHB4OyB9XG5cbmltZy5pbWc4MF84MCB7XG4gIHdpZHRoOiA4MHB4O1xuICBoZWlnaHQ6IDgwcHg7IH1cblxuLnByaWNpbmctdGFibGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2ZjZmM7XG4gIGNvbG9yOiAjOTk5O1xuICBib3JkZXItcmFkaXVzOiAwLjJyZW07XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogMC4yNXMgZWFzZS1vdXQ7IH1cbiAgLnByaWNpbmctdGFibGU6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6IDAgNXB4IDExcHggMCByZ2JhKDAsIDAsIDAsIDAuMTgpLCAwIDRweCAxNXB4IDAgcmdiYSgwLCAwLCAwLCAwLjE1KTsgfVxuICAucHJpY2luZy10YWJsZSBoZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM4YzhjOGM7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMC43NXJlbTsgfVxuICAgIC5wcmljaW5nLXRhYmxlIGhlYWRlciBoMiB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLnByaWNpbmctdGFibGUgLnByaWNpbmctcHJpY2Uge1xuICAgIHBhZGRpbmc6IDQ1cHggMTVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5O1xuICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXdlaWdodDogMzAwOyB9XG4gICAgLnByaWNpbmctdGFibGUgLnByaWNpbmctcHJpY2UgLnByaWNpbmctc2lnbiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7IH1cbiAgICAucHJpY2luZy10YWJsZSAucHJpY2luZy1wcmljZSAucHJpY2luZy1zdWIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIC5wcmljaW5nLXRhYmxlIC5wcmljaW5nLWxlYWQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuNWVtO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4gICAgLnByaWNpbmctdGFibGUgLnByaWNpbmctbGVhZDphZnRlciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IDBweDtcbiAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgcGFkZGluZy10b3A6IC42ZW07XG4gICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggI2VmZjBmMztcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC5wcmljaW5nLXRhYmxlIC5wcmljaW5nLXBsYW4tZGV0YWlscyB7XG4gICAgcGFkZGluZzogMWVtOyB9XG4gICAgLnByaWNpbmctdGFibGUgLnByaWNpbmctcGxhbi1kZXRhaWxzID4gdWwge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBsaW5lLWhlaWdodDogMmVtOyB9XG4gIC5wcmljaW5nLXRhYmxlID4gZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLnByaWNpbmctdGFibGUgPiBmb290ZXIgPiBhIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMjAwcHg7IH1cbiAgLnByaWNpbmctdGFibGUucHJpY2luZy10YWJsZS1wcmltYXJ5IGhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzBkOGFlZTsgfVxuICAucHJpY2luZy10YWJsZS5wcmljaW5nLXRhYmxlLXByaW1hcnkgLnByaWNpbmctcHJpY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cbiAgLnByaWNpbmctdGFibGUucHJpY2luZy10YWJsZS1wcmltYXJ5OmFmdGVyIHtcbiAgICBib3JkZXItdG9wOiA2cHggc29saWQgIzIxOTZGMztcbiAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkICMyMTk2RjM7IH1cbiAgLnByaWNpbmctdGFibGUucHJpY2luZy10YWJsZS1zZWNvbmRhcnkgaGVhZGVyLCAucHJpY2luZy10YWJsZS5wcmljaW5nLXRhYmxlLWluZm8gaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBhNWJiOyB9XG4gIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtc2Vjb25kYXJ5IC5wcmljaW5nLXByaWNlLCAucHJpY2luZy10YWJsZS5wcmljaW5nLXRhYmxlLWluZm8gLnByaWNpbmctcHJpY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMEJDRDQ7IH1cbiAgLnByaWNpbmctdGFibGUucHJpY2luZy10YWJsZS1zZWNvbmRhcnk6YWZ0ZXIsIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtaW5mbzphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICMwMEJDRDQ7XG4gICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAjMDBCQ0Q0OyB9XG4gIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtc3VjY2VzcyBoZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1NGIzNTk7IH1cbiAgLnByaWNpbmctdGFibGUucHJpY2luZy10YWJsZS1zdWNjZXNzIC5wcmljaW5nLXByaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZCQjZBOyB9XG4gIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtc3VjY2VzczphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICM2NkJCNkE7XG4gICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAjNjZCQjZBOyB9XG4gIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtd2FybmluZyBoZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmM0MGY7IH1cbiAgLnByaWNpbmctdGFibGUucHJpY2luZy10YWJsZS13YXJuaW5nIC5wcmljaW5nLXByaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZDQTI4OyB9XG4gIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtd2FybmluZzphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNGRkNBMjg7XG4gICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAjRkZDQTI4OyB9XG4gIC5wcmljaW5nLXRhYmxlLnByaWNpbmctdGFibGUtZGFuZ2VyIGhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VkM2MzOTsgfVxuICAucHJpY2luZy10YWJsZS5wcmljaW5nLXRhYmxlLWRhbmdlciAucHJpY2luZy1wcmljZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VGNTM1MDsgfVxuICAucHJpY2luZy10YWJsZS5wcmljaW5nLXRhYmxlLWRhbmdlcjphZnRlciB7XG4gICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICNFRjUzNTA7XG4gICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAjRUY1MzUwOyB9XG5cbi50aGVtZS1ncmF5IC5wcmljaW5nLXRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE5MTkxOTsgfVxuXG4udGhlbWUtZGFyayAucHJpY2luZy10YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzE4MWM7IH1cblxuLnVpLXJpYmJvbi1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLnVpLXJpYmJvbi1jb250YWluZXIgLnVpLXJpYmJvbi13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogODVweDtcbiAgICBoZWlnaHQ6IDg4cHg7XG4gICAgdG9wOiAtM3B4O1xuICAgIHJpZ2h0OiAtM3B4OyB9XG4gIC51aS1yaWJib24tY29udGFpbmVyIC51aS1yaWJib24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICBwYWRkaW5nOiA3cHggMDtcbiAgICBsZWZ0OiAtNXB4O1xuICAgIHRvcDogMTVweDtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQ2NGE0YztcbiAgICBib3gtc2hhZG93OiAwIDAgM3B4IHJnYmEoMCwgMCwgMCwgMC4zKTsgfVxuICAgIC51aS1yaWJib24tY29udGFpbmVyIC51aS1yaWJib246YmVmb3JlLCAudWktcmliYm9uLWNvbnRhaW5lciAudWktcmliYm9uOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgIzQ2NGE0YztcbiAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvdHRvbTogLTJweDsgfVxuICAgIC51aS1yaWJib24tY29udGFpbmVyIC51aS1yaWJib246YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IC0xcHg7IH1cbiAgICAudWktcmliYm9uLWNvbnRhaW5lciAudWktcmliYm9uOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gIC51aS1yaWJib24tY29udGFpbmVyLnVpLXJpYmJvbi1wcmltYXJ5IC51aS1yaWJib24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTk2RjM7IH1cbiAgICAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24tcHJpbWFyeSAudWktcmliYm9uOmJlZm9yZSwgLnVpLXJpYmJvbi1jb250YWluZXIudWktcmliYm9uLXByaW1hcnkgLnVpLXJpYmJvbjphZnRlciB7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgIzIxOTZGMzsgfVxuICAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24tc3VjY2VzcyAudWktcmliYm9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjZCQjZBOyB9XG4gICAgLnVpLXJpYmJvbi1jb250YWluZXIudWktcmliYm9uLXN1Y2Nlc3MgLnVpLXJpYmJvbjpiZWZvcmUsIC51aS1yaWJib24tY29udGFpbmVyLnVpLXJpYmJvbi1zdWNjZXNzIC51aS1yaWJib246YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICM2NkJCNkE7IH1cbiAgLnVpLXJpYmJvbi1jb250YWluZXIudWktcmliYm9uLWluZm8gLnVpLXJpYmJvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwQkNENDsgfVxuICAgIC51aS1yaWJib24tY29udGFpbmVyLnVpLXJpYmJvbi1pbmZvIC51aS1yaWJib246YmVmb3JlLCAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24taW5mbyAudWktcmliYm9uOmFmdGVyIHtcbiAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjMDBCQ0Q0OyB9XG4gIC51aS1yaWJib24tY29udGFpbmVyLnVpLXJpYmJvbi13YXJuaW5nIC51aS1yaWJib24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkNBMjg7IH1cbiAgICAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24td2FybmluZyAudWktcmliYm9uOmJlZm9yZSwgLnVpLXJpYmJvbi1jb250YWluZXIudWktcmliYm9uLXdhcm5pbmcgLnVpLXJpYmJvbjphZnRlciB7XG4gICAgICBib3JkZXItdG9wOiAycHggc29saWQgI0ZGQ0EyODsgfVxuICAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24tZGFuZ2VyIC51aS1yaWJib24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRjUzNTA7IH1cbiAgICAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24tZGFuZ2VyIC51aS1yaWJib246YmVmb3JlLCAudWktcmliYm9uLWNvbnRhaW5lci51aS1yaWJib24tZGFuZ2VyIC51aS1yaWJib246YWZ0ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNFRjUzNTA7IH1cblxuLnNhc2gge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogYXV0bztcbiAgdG9wOiAyNXB4O1xuICB6LWluZGV4OiAxOyB9XG4gIC5zYXNoIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDMwcHg7IH1cblxuLnNhc2gge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjM2YzcyO1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgY29sb3I6ICNmZmY7IH1cbiAgLnNhc2ggPiBkaXYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIDAuMDVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTtcbiAgICB3aWR0aDogMjVweDsgfVxuICAgIC5zYXNoID4gZGl2OmhvdmVyIHtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogMDtcbiAgICAgIHRyYW5zaXRpb24tZGVsYXk6IDA7XG4gICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLnNhc2ggPiBkaXY6aG92ZXIgLnNhc2gtdGV4dCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7IH1cbiAgLnNhc2ggLnNhc2gtdGV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgcGFkZGluZyAwLjI1cywgd2lkdGggMC4yNXM7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHdpZHRoOiAzZW07XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4OyB9XG4gIC5zYXNoIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiA1cHg7IH1cbiAgICAuc2FzaCBpOmJlZm9yZSB7XG4gICAgICBjb2xvcjogI2Y1ZjVmNTsgfVxuICAuc2FzaC5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDE1cHggc29saWQgIzYzNmM3MjtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IC0yMHB4OyB9XG4gIC5zYXNoLnNhc2gtcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzIxOTZGMzsgfVxuICAgIC5zYXNoLnNhc2gtcHJpbWFyeS5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogIzIxOTZGMztcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnNhc2guc2FzaC1pbmZvIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBCQ0Q0OyB9XG4gICAgLnNhc2guc2FzaC1pbmZvLnNhc2gtdHJpYW5nbGUtcmlnaHQ6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMDBCQ0Q0O1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuc2FzaC5zYXNoLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM2NkJCNkE7IH1cbiAgICAuc2FzaC5zYXNoLXN1Y2Nlc3Muc2FzaC10cmlhbmdsZS1yaWdodDphZnRlciB7XG4gICAgICBib3JkZXItY29sb3I6ICM2NkJCNkE7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5zYXNoLnNhc2gtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGQ0EyODsgfVxuICAgIC5zYXNoLnNhc2gtd2FybmluZy5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0ZGQ0EyODtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnNhc2guc2FzaC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFRjUzNTA7IH1cbiAgICAuc2FzaC5zYXNoLWRhbmdlci5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI0VGNTM1MDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cbiAgLnNhc2guc2FzaC1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjE5NkYzOyB9XG4gICAgLnNhc2guc2FzaC1wcmltYXJ5LnNhc2gtdHJpYW5nbGUtcmlnaHQ6YWZ0ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMjE5NkYzO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuc2FzaC5zYXNoLXdoaXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuODcpOyB9XG4gICAgLnNhc2guc2FzaC13aGl0ZS5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogI2ZmZjtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxuLnRlc3RpbW9uaWFsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC50ZXN0aW1vbmlhbCAudGVzdGltb25pYWxfX3F1b3RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAudGVzdGltb25pYWwgLnRlc3RpbW9uaWFsX19xdW90ZSAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgZm9udC1zaXplOiAzLjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07IH1cbiAgLnRlc3RpbW9uaWFsIGJsb2NrcXVvdGU6YmVmb3JlLCAudGVzdGltb25pYWwgYmxvY2txdW90ZTphZnRlciB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICAudGVzdGltb25pYWwgLmF2YXRhciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG1heC13aWR0aDogODBweDsgfVxuICAudGVzdGltb25pYWwgaDUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAuNGVtOyB9XG4gIC50ZXN0aW1vbmlhbCAudGl0bGUge1xuICAgIG9wYWNpdHk6IC41NDsgfVxuXG4udGVzdGltb25pYWwtYWx0IC5hdmF0YXIge1xuICBtYXgtd2lkdGg6IDEwMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG5cbi50ZXN0aW1vbmlhbC1hbHQgYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBvcGFjaXR5OiAuOTtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRlc3RpbW9uaWFsLWFsdCAuY2l0YXRpb24ge1xuICBmb250LXNpemU6IDFyZW07XG4gIG9wYWNpdHk6IC41NDsgfVxuXG4udWktdGltbGluZS1jb250YWluZXIge1xuICBwYWRkaW5nOiAxNXB4OyB9XG5cbi51aS10aW1saW5lLWxlZnQgLnVpLXRpbWVsaW5lOmJlZm9yZSB7XG4gIGxlZnQ6IDA7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS10aW1saW5lLWxlZnQgLnVpLXRpbWVsaW5lIC50bC1pdGVtOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAudWktdGltbGluZS1sZWZ0IC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtY2FwdGlvbiB7XG4gICAgbWFyZ2luLWxlZnQ6IC01NXB4OyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC51aS10aW1saW5lLWxlZnQgLnVpLXRpbWVsaW5lIC50bC1pdGVtIC50bC1ib2R5IC50bC10aW1lIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAxNXB4O1xuICAgIGNvbG9yOiAjNjM2YzcyOyB9IH1cblxuLnVpLXRpbWVsaW5lIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG4gIC51aS10aW1lbGluZTpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDMwcHg7XG4gICAgd2lkdGg6IDFweDtcbiAgICB6LWluZGV4OiAwOyB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAudWktdGltZWxpbmU6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogNTAlOyB9IH1cbiAgLnVpLXRpbWVsaW5lIC50bC1pdGVtIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyB9XG4gICAgLnVpLXRpbWVsaW5lIC50bC1pdGVtOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgY29udGVudDogXCJcIjsgfVxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbTpiZWZvcmUge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtY2FwdGlvbiB7XG4gICAgICB3aWR0aDogMTUwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTU1cHg7IH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAudWktdGltZWxpbmUgLnRsLWl0ZW0gLnRsLWNhcHRpb24ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTEwcHg7IH0gfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgLnVpLXRpbWVsaW5lIC50bC1pdGVtLmFsdCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQ6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQ6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDUwJTsgfVxuICAgICAgICAudWktdGltZWxpbmUgLnRsLWl0ZW0uYWx0IC50bC1ib2R5IC50bC1lbnRyeSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDM1cHggMTVweCAwOyB9XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQgLnRsLWJvZHkgLnRsLXRpbWUge1xuICAgICAgICAgIHJpZ2h0OiAtMjIwcHg7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQgLnRsLWJvZHkgLnRsLWljb24ge1xuICAgICAgICAgIHJpZ2h0OiAtNTNweDtcbiAgICAgICAgICBsZWZ0OiBhdXRvOyB9XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQgLnRsLWJvZHkgLnRsLWNvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgIHJpZ2h0OiAtMTZweDtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIGJvcmRlcjogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAgICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7IH0gfVxuICAgIC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtYm9keSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtYm9keSAudGwtZW50cnkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG1hcmdpbjogMCAwIDE1cHggMzZweDsgfVxuICAgICAgLnVpLXRpbWVsaW5lIC50bC1pdGVtIC50bC1ib2R5IC50bC10aW1lIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIGNvbG9yOiAjNjM2YzcyO1xuICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgLnVpLXRpbWVsaW5lIC50bC1pdGVtIC50bC1ib2R5IC50bC10aW1lIHtcbiAgICAgICAgICAgIGxlZnQ6IC0yMjBweDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC44Nyk7IH0gfVxuICAgICAgLnVpLXRpbWVsaW5lIC50bC1pdGVtIC50bC1ib2R5IC50bC1pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAtNTNweDtcbiAgICAgICAgdG9wOiAwOyB9XG4gICAgICAudWktdGltZWxpbmUgLnRsLWl0ZW0gLnRsLWJvZHkgLnRsLWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpOyB9XG4gICAgICAgIC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtYm9keSAudGwtY29udGVudDphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IC0xNnB4O1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG4gICAgICAgICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTsgfVxuICAgICAgICAudWktdGltZWxpbmUgLnRsLWl0ZW0gLnRsLWJvZHkgLnRsLWNvbnRlbnQgaDQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC50aGVtZS1ncmF5IC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQgLnRsLWJvZHkgLnRsLWNvbnRlbnQ6YWZ0ZXIsXG4gIC50aGVtZS1kYXJrIC51aS10aW1lbGluZSAudGwtaXRlbS5hbHQgLnRsLWJvZHkgLnRsLWNvbnRlbnQ6YWZ0ZXIge1xuICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgICBib3JkZXItdG9wOiA4cHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTsgfSB9XG5cbi50aGVtZS1ncmF5IC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtYm9keSAudGwtY29udGVudCxcbi50aGVtZS1kYXJrIC51aS10aW1lbGluZSAudGwtaXRlbSAudGwtYm9keSAudGwtY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7IH1cbiAgLnRoZW1lLWdyYXkgLnVpLXRpbWVsaW5lIC50bC1pdGVtIC50bC1ib2R5IC50bC1jb250ZW50OmFmdGVyLFxuICAudGhlbWUtZGFyayAudWktdGltZWxpbmUgLnRsLWl0ZW0gLnRsLWJvZHkgLnRsLWNvbnRlbnQ6YWZ0ZXIge1xuICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7IH1cbiIsIi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKlxcXG4gICAgJENPTlRFTlRTXG5cXCotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLyoqXG4gKiBTVFlMRSBHVUlERSBWQVJJQUJMRVMtLS0tLS0tLS0tLS0tLS0tLS1EZWNsYXJhdGlvbnMgb2YgU2FzcyB2YXJpYWJsZXNcbiAqIC0tLS0tVHlwb2dyYXBoeVxuICogLS0tLS1Db2xvcnNcbiAqIC0tLS0tQ2FyZFxuICogLS0tLS1CYWRnZVxuICogLS0tLS1TaGFkb3dzXG4gKiAtLS0tLURhdGEgdGFibGVcbiAqIC0tLS0tRGFyayB0aGVtZVxuICovXG5cblxuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuJHByZWZlcnJlZF9mb250OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiRwZXJmb3JtYW5jZV9mb250OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcblxuLyogPT09PT09PT09PSAgQ09MT1JTICA9PT09PT09PT09ICovXG5cbi8qKlxuKlxuKiBNYXRlcmlhbCBkZXNpZ24gY29sb3IgcGFsZXR0ZXMuXG4qIEBzZWUgaHR0cDovL3d3dy5nb29nbGUuY29tL2Rlc2lnbi9zcGVjL3N0eWxlL2NvbG9yLmh0bWxcbipcbioqL1xuXG5AaW1wb3J0IFwiY29sb3ItZGVmaW5pdGlvbnNcIjtcbkBpbXBvcnQgXCJmdW5jdGlvbnNcIjtcblxuXG4vKiA9PT09PT09PT09ICBDb2xvciAmIFRoZW1lcyAgPT09PT09PT09PSAqL1xuXG4kY29sb3ItcHJpbWFyeTogJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY29sb3ItYWNjZW50OiAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcblxuXG5cblxuLyogPT09PT09PT09PSAgVFlQT0dSQVBIWSAgPT09PT09PT09PSAqL1xuXG4kdGV4dC1jb2xvci1wcmltYXJ5OiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuODcpXCIpICFkZWZhdWx0O1xuJHRleHQtbGluay1jb2xvcjogJGNvbG9yLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiR0YXJnZXQtZWxlbWVudHMtZGlyZWN0bHk6IHRydWUgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PSAgQ2FyZCAgPT09PT09PT09PSAqL1xuXG4kY2FyZC1iYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIikgIWRlZmF1bHQ7XG4kY2FyZC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLWJsYWNrfSlcIikgIWRlZmF1bHQ7XG4kY2FyZC1pbWFnZS1wbGFjZWhvbGRlci1jb2xvcjogdW5xdW90ZShcInJnYigjeyRjb2xvci1hY2NlbnR9KVwiKSAhZGVmYXVsdDtcbiRjYXJkLXN1cHBvcnRpbmctdGV4dC10ZXh0LWNvbG9yOiB1bnF1b3RlKFwicmdiYSgjeyRjb2xvci1ibGFja30sIDAuNTQpXCIpICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiByZ2JhKDAsMCwwLDAuMSkgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogdW5xdW90ZShcInJnYmEoI3skY29sb3ItYmxhY2t9LCAwLjU0KVwiKSAhZGVmYXVsdDtcblxuLyogQ0FSRCAqL1xuXG4vKiBDYXJkIGRpbWVuc2lvbnMgKi9cbiRjYXJkLXdpZHRoOiAzMzBweCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogMjAwcHggIWRlZmF1bHQ7XG4kY2FyZC1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1mb250LXNpemU6IDI0cHggIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kY2FyZC1ob3Jpem9udGFsLXBhZGRpbmc6IDE2cHggIWRlZmF1bHQ7XG4kY2FyZC12ZXJ0aWNhbC1wYWRkaW5nOiAxNnB4ICFkZWZhdWx0O1xuXG4kY2FyZC10aXRsZS1wZXJzcGVjdGl2ZS1vcmlnaW4teDogMTY1cHggIWRlZmF1bHQ7XG4kY2FyZC10aXRsZS1wZXJzcGVjdGl2ZS1vcmlnaW4teTogNTZweCAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtdHJhbnNmb3JtLW9yaWdpbi14OiAxNjVweCAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXRyYW5zZm9ybS1vcmlnaW4teTogNTZweCAhZGVmYXVsdDtcblxuJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXg6IDE0OXB4ICFkZWZhdWx0O1xuJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXk6IDQ4cHggIWRlZmF1bHQ7XG5cbiRjYXJkLXN1cHBvcnRpbmctdGV4dC1mb250LXNpemU6IDE0cHggIWRlZmF1bHQ7XG4kY2FyZC1zdXBwb3J0aW5nLXRleHQtbGluZS1oZWlnaHQ6IDE4cHggIWRlZmF1bHQ7XG5cbiRjYXJkLWFjdGlvbnMtZm9udC1zaXplOiAxNnB4ICFkZWZhdWx0O1xuXG4kY2FyZC10aXRsZS10ZXh0LWZvbnQtd2VpZ2h0OiAzMDAgIWRlZmF1bHQ7XG4kY2FyZC16LWluZGV4OiAxICFkZWZhdWx0O1xuXG4vKiBDb3ZlciBpbWFnZSAqL1xuJGNhcmQtY292ZXItaW1hZ2UtaGVpZ2h0OiAxODZweCAhZGVmYXVsdDtcbiRjYXJkLWJhY2tncm91bmQtaW1hZ2UtdXJsOiAnJyAhZGVmYXVsdDtcblxuXG4vKiBCQURHRSAqL1xuJGJhZGdlLWZvbnQtc2l6ZTogMTJweCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvci1pbnZlcnNlOiAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRiYWRnZS1iYWNrZ3JvdW5kLWludmVyc2U6ICM5OTkgIWRlZmF1bHQ7XG4kYmFkZ2Utc2l6ZSA6IDIycHggIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZzogMnB4ICFkZWZhdWx0O1xuJGJhZGdlLW92ZXJsYXA6IDEycHggIWRlZmF1bHQ7XG5cblxuLyogU0hBRE9XUyAqL1xuXG4kc2hhZG93LWtleS11bWJyYS1vcGFjaXR5OiAwLjIgIWRlZmF1bHQ7XG4kc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5OiAwLjE0ICFkZWZhdWx0O1xuJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5OiAwLjEyICFkZWZhdWx0O1xuXG5cbi8qIEFOSU1BVElPTiAqL1xuJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1jdXJ2ZS1saW5lYXItb3V0LXNsb3ctaW46IGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpICFkZWZhdWx0O1xuJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1saW5lYXItaW46IGN1YmljLWJlemllcigwLjQsIDAsIDEsIDEpICFkZWZhdWx0O1xuXG4kYW5pbWF0aW9uLWN1cnZlLWRlZmF1bHQ6ICRhbmltYXRpb24tY3VydmUtZmFzdC1vdXQtc2xvdy1pbiAhZGVmYXVsdDtcblxuXG4vKiBEQVRBIFRBQkxFICovXG5cbiRkYXRhLXRhYmxlLWZvbnQtc2l6ZTogMTNweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWhlYWRlci1mb250LXNpemU6IDEycHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1oZWFkZXItc29ydC1pY29uLXNpemU6IDE2cHggIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLWhlYWRlci1jb2xvcjogcmdiYSgjMDAwLCAwLjU0KSAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWhlYWRlci1zb3J0ZWQtY29sb3I6IHJnYmEoIzAwMCwgMC44NykgIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1oZWFkZXItc29ydGVkLWljb24taG92ZXItY29sb3I6IHJnYmEoIzAwMCwgMC4yNikgIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1kaXZpZGVyLWNvbG9yOiByZ2JhKCMwMDAsIDAuMSkgIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLWhvdmVyLWNvbG9yOiByZ2JhKDAsMCwwLC4wOCkgIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1zZWxlY3Rpb24tY29sb3I6ICNlMGUwZTAgIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLWRpdmlkZXJzOiAxcHggc29saWQgJGRhdGEtdGFibGUtZGl2aWRlci1jb2xvciAhZGVmYXVsdDtcblxuJGRhdGEtdGFibGUtcm93LWhlaWdodDogNDhweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWxhc3Qtcm93LWhlaWdodDogNTZweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDU2cHggIWRlZmF1bHQ7XG5cbiRkYXRhLXRhYmxlLWNvbHVtbi1zcGFjaW5nOiAzNnB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtY29sdW1uLXBhZGRpbmc6ICRkYXRhLXRhYmxlLWNvbHVtbi1zcGFjaW5nIC8gMjtcblxuJGRhdGEtdGFibGUtY2FyZC1oZWFkZXItaGVpZ2h0OiA2NHB4ICFkZWZhdWx0O1xuJGRhdGEtdGFibGUtY2FyZC10aXRsZS10b3A6IDIwcHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1jYXJkLXBhZGRpbmc6IDI0cHggIWRlZmF1bHQ7XG4kZGF0YS10YWJsZS1idXR0b24tcGFkZGluZy1yaWdodDogMTZweCAhZGVmYXVsdDtcbiRkYXRhLXRhYmxlLWNlbGwtdG9wOiAkZGF0YS10YWJsZS1jYXJkLXBhZGRpbmcgLyAyO1xuXG5cbi8qID09PT09PT09PT0gIERBUksgVEhFTUUgID09PT09PT09PT0gKi9cbiR0aGVtZS1kYXJrLWRhdGEtdGFibGUtaGVhZGVyLWNvbG9yOiByZ2JhKCNmZmYsIC41KTtcbiR0aGVtZS1kYXJrLWRhdGEtdGFibGUtY29udGVudC1jb2xvcjogcmdiYSgjZmZmLCAuNyk7XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiA9PT09PT09PT09ICBDb2xvciBQYWxldHRlcyAgPT09PT09PT09PSAqL1xuXG4vKiBDb2xvciBvcmRlcjogNTAsIDEwMCwgMjAwLCAzMDAsIDQwMCwgNTAwLCA2MDAsIDcwMCwgODAwLCA5MDAsIEExMDAsIEEyMDAsKi9cbi8qIEE0MDAsIEE3MDAuKi9cblxuJHBhbGV0dGUtcmVkOlxuXCIyNTUsMjM1LDIzOFwiXG5cIjI1NSwyMDUsMjEwXCJcblwiMjM5LDE1NCwxNTRcIlxuXCIyMjksMTE1LDExNVwiXG5cIjIzOSw4Myw4MFwiXG5cIjI0NCw2Nyw1NFwiXG5cIjIyOSw1Nyw1M1wiXG5cIjIxMSw0Nyw0N1wiXG5cIjE5OCw0MCw0MFwiXG5cIjE4MywyOCwyOFwiXG5cIjI1NSwxMzgsMTI4XCJcblwiMjU1LDgyLDgyXCJcblwiMjU1LDIzLDY4XCJcblwiMjEzLDAsMFwiO1xuXG4kcGFsZXR0ZS1yZWQtNTA6IG50aCgkcGFsZXR0ZS1yZWQsIDEpO1xuJHBhbGV0dGUtcmVkLTEwMDogbnRoKCRwYWxldHRlLXJlZCwgMik7XG4kcGFsZXR0ZS1yZWQtMjAwOiBudGgoJHBhbGV0dGUtcmVkLCAzKTtcbiRwYWxldHRlLXJlZC0zMDA6IG50aCgkcGFsZXR0ZS1yZWQsIDQpO1xuJHBhbGV0dGUtcmVkLTQwMDogbnRoKCRwYWxldHRlLXJlZCwgNSk7XG4kcGFsZXR0ZS1yZWQtNTAwOiBudGgoJHBhbGV0dGUtcmVkLCA2KTtcbiRwYWxldHRlLXJlZC02MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDcpO1xuJHBhbGV0dGUtcmVkLTcwMDogbnRoKCRwYWxldHRlLXJlZCwgOCk7XG4kcGFsZXR0ZS1yZWQtODAwOiBudGgoJHBhbGV0dGUtcmVkLCA5KTtcbiRwYWxldHRlLXJlZC05MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDEwKTtcbiRwYWxldHRlLXJlZC1BMTAwOiBudGgoJHBhbGV0dGUtcmVkLCAxMSk7XG4kcGFsZXR0ZS1yZWQtQTIwMDogbnRoKCRwYWxldHRlLXJlZCwgMTIpO1xuJHBhbGV0dGUtcmVkLUE0MDA6IG50aCgkcGFsZXR0ZS1yZWQsIDEzKTtcbiRwYWxldHRlLXJlZC1BNzAwOiBudGgoJHBhbGV0dGUtcmVkLCAxNCk7XG5cbiRwYWxldHRlLXBpbms6XG5cIjI1MiwyMjgsMjM2XCJcblwiMjQ4LDE4NywyMDhcIlxuXCIyNDQsMTQzLDE3N1wiXG5cIjI0MCw5OCwxNDZcIlxuXCIyMzYsNjQsMTIyXCJcblwiMjMzLDMwLDk5XCJcblwiMjE2LDI3LDk2XCJcblwiMTk0LDI0LDkxXCJcblwiMTczLDIwLDg3XCJcblwiMTM2LDE0LDc5XCJcblwiMjU1LDEyOCwxNzFcIlxuXCIyNTUsNjQsMTI5XCJcblwiMjQ1LDAsODdcIlxuXCIxOTcsMTcsOThcIjtcblxuJHBhbGV0dGUtcGluay01MDogbnRoKCRwYWxldHRlLXBpbmssIDEpO1xuJHBhbGV0dGUtcGluay0xMDA6IG50aCgkcGFsZXR0ZS1waW5rLCAyKTtcbiRwYWxldHRlLXBpbmstMjAwOiBudGgoJHBhbGV0dGUtcGluaywgMyk7XG4kcGFsZXR0ZS1waW5rLTMwMDogbnRoKCRwYWxldHRlLXBpbmssIDQpO1xuJHBhbGV0dGUtcGluay00MDA6IG50aCgkcGFsZXR0ZS1waW5rLCA1KTtcbiRwYWxldHRlLXBpbmstNTAwOiBudGgoJHBhbGV0dGUtcGluaywgNik7XG4kcGFsZXR0ZS1waW5rLTYwMDogbnRoKCRwYWxldHRlLXBpbmssIDcpO1xuJHBhbGV0dGUtcGluay03MDA6IG50aCgkcGFsZXR0ZS1waW5rLCA4KTtcbiRwYWxldHRlLXBpbmstODAwOiBudGgoJHBhbGV0dGUtcGluaywgOSk7XG4kcGFsZXR0ZS1waW5rLTkwMDogbnRoKCRwYWxldHRlLXBpbmssIDEwKTtcbiRwYWxldHRlLXBpbmstQTEwMDogbnRoKCRwYWxldHRlLXBpbmssIDExKTtcbiRwYWxldHRlLXBpbmstQTIwMDogbnRoKCRwYWxldHRlLXBpbmssIDEyKTtcbiRwYWxldHRlLXBpbmstQTQwMDogbnRoKCRwYWxldHRlLXBpbmssIDEzKTtcbiRwYWxldHRlLXBpbmstQTcwMDogbnRoKCRwYWxldHRlLXBpbmssIDE0KTtcblxuJHBhbGV0dGUtcHVycGxlOlxuXCIyNDMsMjI5LDI0NVwiXG5cIjIyNSwxOTAsMjMxXCJcblwiMjA2LDE0NywyMTZcIlxuXCIxODYsMTA0LDIwMFwiXG5cIjE3MSw3MSwxODhcIlxuXCIxNTYsMzksMTc2XCJcblwiMTQyLDM2LDE3MFwiXG5cIjEyMywzMSwxNjJcIlxuXCIxMDYsMjcsMTU0XCJcblwiNzQsMjAsMTQwXCJcblwiMjM0LDEyOCwyNTJcIlxuXCIyMjQsNjQsMjUxXCJcblwiMjEzLDAsMjQ5XCJcblwiMTcwLDAsMjU1XCI7XG5cbiRwYWxldHRlLXB1cnBsZS01MDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMSk7XG4kcGFsZXR0ZS1wdXJwbGUtMTAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAyKTtcbiRwYWxldHRlLXB1cnBsZS0yMDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDMpO1xuJHBhbGV0dGUtcHVycGxlLTMwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgNCk7XG4kcGFsZXR0ZS1wdXJwbGUtNDAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCA1KTtcbiRwYWxldHRlLXB1cnBsZS01MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDYpO1xuJHBhbGV0dGUtcHVycGxlLTYwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgNyk7XG4kcGFsZXR0ZS1wdXJwbGUtNzAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCA4KTtcbiRwYWxldHRlLXB1cnBsZS04MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDkpO1xuJHBhbGV0dGUtcHVycGxlLTkwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMTApO1xuJHBhbGV0dGUtcHVycGxlLUExMDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDExKTtcbiRwYWxldHRlLXB1cnBsZS1BMjAwOiBudGgoJHBhbGV0dGUtcHVycGxlLCAxMik7XG4kcGFsZXR0ZS1wdXJwbGUtQTQwMDogbnRoKCRwYWxldHRlLXB1cnBsZSwgMTMpO1xuJHBhbGV0dGUtcHVycGxlLUE3MDA6IG50aCgkcGFsZXR0ZS1wdXJwbGUsIDE0KTtcblxuJHBhbGV0dGUtZGVlcC1wdXJwbGU6XG5cIjIzNywyMzEsMjQ2XCJcblwiMjA5LDE5NiwyMzNcIlxuXCIxNzksMTU3LDIxOVwiXG5cIjE0OSwxMTcsMjA1XCJcblwiMTI2LDg3LDE5NFwiXG5cIjEwMyw1OCwxODNcIlxuXCI5NCw1MywxNzdcIlxuXCI4MSw0NSwxNjhcIlxuXCI2OSwzOSwxNjBcIlxuXCI0OSwyNywxNDZcIlxuXCIxNzksMTM2LDI1NVwiXG5cIjEyNCw3NywyNTVcIlxuXCIxMDEsMzEsMjU1XCJcblwiOTgsMCwyMzRcIjtcblxuJHBhbGV0dGUtZGVlcC1wdXJwbGUtNTA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMSk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS0xMDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMik7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS0yMDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMyk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS0zMDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgNCk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS00MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgNSk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS01MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgNik7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS02MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgNyk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS03MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgOCk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS04MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgOSk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS05MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMTApO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtQTEwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAxMSk7XG4kcGFsZXR0ZS1kZWVwLXB1cnBsZS1BMjAwOiBudGgoJHBhbGV0dGUtZGVlcC1wdXJwbGUsIDEyKTtcbiRwYWxldHRlLWRlZXAtcHVycGxlLUE0MDA6IG50aCgkcGFsZXR0ZS1kZWVwLXB1cnBsZSwgMTMpO1xuJHBhbGV0dGUtZGVlcC1wdXJwbGUtQTcwMDogbnRoKCRwYWxldHRlLWRlZXAtcHVycGxlLCAxNCk7XG5cbiRwYWxldHRlLWluZGlnbzpcblwiMjMyLDIzNCwyNDZcIlxuXCIxOTcsMjAyLDIzM1wiXG5cIjE1OSwxNjgsMjE4XCJcblwiMTIxLDEzNCwyMDNcIlxuXCI5MiwxMDcsMTkyXCJcblwiNjMsODEsMTgxXCJcblwiNTcsNzMsMTcxXCJcblwiNDgsNjMsMTU5XCJcblwiNDAsNTMsMTQ3XCJcblwiMjYsMzUsMTI2XCJcblwiMTQwLDE1OCwyNTVcIlxuXCI4MywxMDksMjU0XCJcblwiNjEsOTAsMjU0XCJcblwiNDgsNzksMjU0XCI7XG5cbiRwYWxldHRlLWluZGlnby01MDogbnRoKCRwYWxldHRlLWluZGlnbywgMSk7XG4kcGFsZXR0ZS1pbmRpZ28tMTAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAyKTtcbiRwYWxldHRlLWluZGlnby0yMDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDMpO1xuJHBhbGV0dGUtaW5kaWdvLTMwMDogbnRoKCRwYWxldHRlLWluZGlnbywgNCk7XG4kcGFsZXR0ZS1pbmRpZ28tNDAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCA1KTtcbiRwYWxldHRlLWluZGlnby01MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDYpO1xuJHBhbGV0dGUtaW5kaWdvLTYwMDogbnRoKCRwYWxldHRlLWluZGlnbywgNyk7XG4kcGFsZXR0ZS1pbmRpZ28tNzAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCA4KTtcbiRwYWxldHRlLWluZGlnby04MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDkpO1xuJHBhbGV0dGUtaW5kaWdvLTkwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMTApO1xuJHBhbGV0dGUtaW5kaWdvLUExMDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDExKTtcbiRwYWxldHRlLWluZGlnby1BMjAwOiBudGgoJHBhbGV0dGUtaW5kaWdvLCAxMik7XG4kcGFsZXR0ZS1pbmRpZ28tQTQwMDogbnRoKCRwYWxldHRlLWluZGlnbywgMTMpO1xuJHBhbGV0dGUtaW5kaWdvLUE3MDA6IG50aCgkcGFsZXR0ZS1pbmRpZ28sIDE0KTtcblxuJHBhbGV0dGUtYmx1ZTpcblwiMjI3LDI0MiwyNTNcIlxuXCIxODcsMjIyLDI1MVwiXG5cIjE0NCwyMDIsMjQ5XCJcblwiMTAwLDE4MSwyNDZcIlxuXCI2NiwxNjUsMjQ1XCJcblwiMzMsMTUwLDI0M1wiXG5cIjMwLDEzNiwyMjlcIlxuXCIyNSwxMTgsMjEwXCJcblwiMjEsMTAxLDE5MlwiXG5cIjEzLDcxLDE2MVwiXG5cIjEzMCwxNzcsMjU1XCJcblwiNjgsMTM4LDI1NVwiXG5cIjQxLDEyMSwyNTVcIlxuXCI0MSw5OCwyNTVcIjtcblxuJHBhbGV0dGUtYmx1ZS01MDogbnRoKCRwYWxldHRlLWJsdWUsIDEpO1xuJHBhbGV0dGUtYmx1ZS0xMDA6IG50aCgkcGFsZXR0ZS1ibHVlLCAyKTtcbiRwYWxldHRlLWJsdWUtMjAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgMyk7XG4kcGFsZXR0ZS1ibHVlLTMwMDogbnRoKCRwYWxldHRlLWJsdWUsIDQpO1xuJHBhbGV0dGUtYmx1ZS00MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCA1KTtcbiRwYWxldHRlLWJsdWUtNTAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgNik7XG4kcGFsZXR0ZS1ibHVlLTYwMDogbnRoKCRwYWxldHRlLWJsdWUsIDcpO1xuJHBhbGV0dGUtYmx1ZS03MDA6IG50aCgkcGFsZXR0ZS1ibHVlLCA4KTtcbiRwYWxldHRlLWJsdWUtODAwOiBudGgoJHBhbGV0dGUtYmx1ZSwgOSk7XG4kcGFsZXR0ZS1ibHVlLTkwMDogbnRoKCRwYWxldHRlLWJsdWUsIDEwKTtcbiRwYWxldHRlLWJsdWUtQTEwMDogbnRoKCRwYWxldHRlLWJsdWUsIDExKTtcbiRwYWxldHRlLWJsdWUtQTIwMDogbnRoKCRwYWxldHRlLWJsdWUsIDEyKTtcbiRwYWxldHRlLWJsdWUtQTQwMDogbnRoKCRwYWxldHRlLWJsdWUsIDEzKTtcbiRwYWxldHRlLWJsdWUtQTcwMDogbnRoKCRwYWxldHRlLWJsdWUsIDE0KTtcblxuJHBhbGV0dGUtbGlnaHQtYmx1ZTpcblwiMjI1LDI0NSwyNTRcIlxuXCIxNzksMjI5LDI1MlwiXG5cIjEyOSwyMTIsMjUwXCJcblwiNzksMTk1LDI0N1wiXG5cIjQxLDE4MiwyNDZcIlxuXCIzLDE2OSwyNDRcIlxuXCIzLDE1NSwyMjlcIlxuXCIyLDEzNiwyMDlcIlxuXCIyLDExOSwxODlcIlxuXCIxLDg3LDE1NVwiXG5cIjEyOCwyMTYsMjU1XCJcblwiNjQsMTk2LDI1NVwiXG5cIjAsMTc2LDI1NVwiXG5cIjAsMTQ1LDIzNFwiO1xuXG4kcGFsZXR0ZS1saWdodC1ibHVlLTUwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMSk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTEwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDIpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS0yMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCAzKTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtMzAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgNCk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTQwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDUpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS01MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCA2KTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtNjAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgNyk7XG4kcGFsZXR0ZS1saWdodC1ibHVlLTcwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWJsdWUsIDgpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS04MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ibHVlLCA5KTtcbiRwYWxldHRlLWxpZ2h0LWJsdWUtOTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMTApO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS1BMTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMTEpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS1BMjAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMTIpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS1BNDAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMTMpO1xuJHBhbGV0dGUtbGlnaHQtYmx1ZS1BNzAwOiBudGgoJHBhbGV0dGUtbGlnaHQtYmx1ZSwgMTQpO1xuXG4kcGFsZXR0ZS1jeWFuOlxuXCIyMjQsMjQ3LDI1MFwiXG5cIjE3OCwyMzUsMjQyXCJcblwiMTI4LDIyMiwyMzRcIlxuXCI3NywyMDgsMjI1XCJcblwiMzgsMTk4LDIxOFwiXG5cIjAsMTg4LDIxMlwiXG5cIjAsMTcyLDE5M1wiXG5cIjAsMTUxLDE2N1wiXG5cIjAsMTMxLDE0M1wiXG5cIjAsOTYsMTAwXCJcblwiMTMyLDI1NSwyNTVcIlxuXCIyNCwyNTUsMjU1XCJcblwiMCwyMjksMjU1XCJcblwiMCwxODQsMjEyXCI7XG5cbiRwYWxldHRlLWN5YW4tNTA6IG50aCgkcGFsZXR0ZS1jeWFuLCAxKTtcbiRwYWxldHRlLWN5YW4tMTAwOiBudGgoJHBhbGV0dGUtY3lhbiwgMik7XG4kcGFsZXR0ZS1jeWFuLTIwMDogbnRoKCRwYWxldHRlLWN5YW4sIDMpO1xuJHBhbGV0dGUtY3lhbi0zMDA6IG50aCgkcGFsZXR0ZS1jeWFuLCA0KTtcbiRwYWxldHRlLWN5YW4tNDAwOiBudGgoJHBhbGV0dGUtY3lhbiwgNSk7XG4kcGFsZXR0ZS1jeWFuLTUwMDogbnRoKCRwYWxldHRlLWN5YW4sIDYpO1xuJHBhbGV0dGUtY3lhbi02MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCA3KTtcbiRwYWxldHRlLWN5YW4tNzAwOiBudGgoJHBhbGV0dGUtY3lhbiwgOCk7XG4kcGFsZXR0ZS1jeWFuLTgwMDogbnRoKCRwYWxldHRlLWN5YW4sIDkpO1xuJHBhbGV0dGUtY3lhbi05MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAxMCk7XG4kcGFsZXR0ZS1jeWFuLUExMDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAxMSk7XG4kcGFsZXR0ZS1jeWFuLUEyMDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAxMik7XG4kcGFsZXR0ZS1jeWFuLUE0MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAxMyk7XG4kcGFsZXR0ZS1jeWFuLUE3MDA6IG50aCgkcGFsZXR0ZS1jeWFuLCAxNCk7XG5cbiRwYWxldHRlLXRlYWw6XG5cIjIyNCwyNDIsMjQxXCJcblwiMTc4LDIyMywyMTlcIlxuXCIxMjgsMjAzLDE5NlwiXG5cIjc3LDE4MiwxNzJcIlxuXCIzOCwxNjYsMTU0XCJcblwiMCwxNTAsMTM2XCJcblwiMCwxMzcsMTIzXCJcblwiMCwxMjEsMTA3XCJcblwiMCwxMDUsOTJcIlxuXCIwLDc3LDY0XCJcblwiMTY3LDI1NSwyMzVcIlxuXCIxMDAsMjU1LDIxOFwiXG5cIjI5LDIzMywxODJcIlxuXCIwLDE5MSwxNjVcIjtcblxuJHBhbGV0dGUtdGVhbC01MDogbnRoKCRwYWxldHRlLXRlYWwsIDEpO1xuJHBhbGV0dGUtdGVhbC0xMDA6IG50aCgkcGFsZXR0ZS10ZWFsLCAyKTtcbiRwYWxldHRlLXRlYWwtMjAwOiBudGgoJHBhbGV0dGUtdGVhbCwgMyk7XG4kcGFsZXR0ZS10ZWFsLTMwMDogbnRoKCRwYWxldHRlLXRlYWwsIDQpO1xuJHBhbGV0dGUtdGVhbC00MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCA1KTtcbiRwYWxldHRlLXRlYWwtNTAwOiBudGgoJHBhbGV0dGUtdGVhbCwgNik7XG4kcGFsZXR0ZS10ZWFsLTYwMDogbnRoKCRwYWxldHRlLXRlYWwsIDcpO1xuJHBhbGV0dGUtdGVhbC03MDA6IG50aCgkcGFsZXR0ZS10ZWFsLCA4KTtcbiRwYWxldHRlLXRlYWwtODAwOiBudGgoJHBhbGV0dGUtdGVhbCwgOSk7XG4kcGFsZXR0ZS10ZWFsLTkwMDogbnRoKCRwYWxldHRlLXRlYWwsIDEwKTtcbiRwYWxldHRlLXRlYWwtQTEwMDogbnRoKCRwYWxldHRlLXRlYWwsIDExKTtcbiRwYWxldHRlLXRlYWwtQTIwMDogbnRoKCRwYWxldHRlLXRlYWwsIDEyKTtcbiRwYWxldHRlLXRlYWwtQTQwMDogbnRoKCRwYWxldHRlLXRlYWwsIDEzKTtcbiRwYWxldHRlLXRlYWwtQTcwMDogbnRoKCRwYWxldHRlLXRlYWwsIDE0KTtcblxuJHBhbGV0dGUtZ3JlZW46XG5cIjIzMiwyNDUsMjMzXCJcblwiMjAwLDIzMCwyMDFcIlxuXCIxNjUsMjE0LDE2N1wiXG5cIjEyOSwxOTksMTMyXCJcblwiMTAyLDE4NywxMDZcIlxuXCI3NiwxNzUsODBcIlxuXCI2NywxNjAsNzFcIlxuXCI1NiwxNDIsNjBcIlxuXCI0NiwxMjUsNTBcIlxuXCIyNyw5NCwzMlwiXG5cIjE4NSwyNDYsMjAyXCJcblwiMTA1LDI0MCwxNzRcIlxuXCIwLDIzMCwxMThcIlxuXCIwLDIwMCw4M1wiO1xuXG4kcGFsZXR0ZS1ncmVlbi01MDogbnRoKCRwYWxldHRlLWdyZWVuLCAxKTtcbiRwYWxldHRlLWdyZWVuLTEwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAyKTtcbiRwYWxldHRlLWdyZWVuLTIwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAzKTtcbiRwYWxldHRlLWdyZWVuLTMwMDogbnRoKCRwYWxldHRlLWdyZWVuLCA0KTtcbiRwYWxldHRlLWdyZWVuLTQwMDogbnRoKCRwYWxldHRlLWdyZWVuLCA1KTtcbiRwYWxldHRlLWdyZWVuLTUwMDogbnRoKCRwYWxldHRlLWdyZWVuLCA2KTtcbiRwYWxldHRlLWdyZWVuLTYwMDogbnRoKCRwYWxldHRlLWdyZWVuLCA3KTtcbiRwYWxldHRlLWdyZWVuLTcwMDogbnRoKCRwYWxldHRlLWdyZWVuLCA4KTtcbiRwYWxldHRlLWdyZWVuLTgwMDogbnRoKCRwYWxldHRlLWdyZWVuLCA5KTtcbiRwYWxldHRlLWdyZWVuLTkwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAxMCk7XG4kcGFsZXR0ZS1ncmVlbi1BMTAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDExKTtcbiRwYWxldHRlLWdyZWVuLUEyMDA6IG50aCgkcGFsZXR0ZS1ncmVlbiwgMTIpO1xuJHBhbGV0dGUtZ3JlZW4tQTQwMDogbnRoKCRwYWxldHRlLWdyZWVuLCAxMyk7XG4kcGFsZXR0ZS1ncmVlbi1BNzAwOiBudGgoJHBhbGV0dGUtZ3JlZW4sIDE0KTtcblxuJHBhbGV0dGUtbGlnaHQtZ3JlZW46XG5cIjI0MSwyNDgsMjMzXCJcblwiMjIwLDIzNywyMDBcIlxuXCIxOTcsMjI1LDE2NVwiXG5cIjE3NCwyMTMsMTI5XCJcblwiMTU2LDIwNCwxMDFcIlxuXCIxMzksMTk1LDc0XCJcblwiMTI0LDE3OSw2NlwiXG5cIjEwNCwxNTksNTZcIlxuXCI4NSwxMzksNDdcIlxuXCI1MSwxMDUsMzBcIlxuXCIyMDQsMjU1LDE0NFwiXG5cIjE3OCwyNTUsODlcIlxuXCIxMTgsMjU1LDNcIlxuXCIxMDAsMjIxLDIzXCI7XG5cbiRwYWxldHRlLWxpZ2h0LWdyZWVuLTUwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDEpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tMTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDIpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tMjAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDMpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tMzAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDQpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tNDAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDUpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tNTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDYpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tNjAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDcpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tNzAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDgpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tODAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDkpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tOTAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDEwKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLUExMDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMTEpO1xuJHBhbGV0dGUtbGlnaHQtZ3JlZW4tQTIwMDogbnRoKCRwYWxldHRlLWxpZ2h0LWdyZWVuLCAxMik7XG4kcGFsZXR0ZS1saWdodC1ncmVlbi1BNDAwOiBudGgoJHBhbGV0dGUtbGlnaHQtZ3JlZW4sIDEzKTtcbiRwYWxldHRlLWxpZ2h0LWdyZWVuLUE3MDA6IG50aCgkcGFsZXR0ZS1saWdodC1ncmVlbiwgMTQpO1xuXG4kcGFsZXR0ZS1saW1lOlxuXCIyNDksMjUxLDIzMVwiXG5cIjI0MCwyNDQsMTk1XCJcblwiMjMwLDIzOCwxNTZcIlxuXCIyMjAsMjMxLDExN1wiXG5cIjIxMiwyMjUsODdcIlxuXCIyMDUsMjIwLDU3XCJcblwiMTkyLDIwMiw1MVwiXG5cIjE3NSwxODAsNDNcIlxuXCIxNTgsMTU3LDM2XCJcblwiMTMwLDExOSwyM1wiXG5cIjI0NCwyNTUsMTI5XCJcblwiMjM4LDI1NSw2NVwiXG5cIjE5OCwyNTUsMFwiXG5cIjE3NCwyMzQsMFwiO1xuXG4kcGFsZXR0ZS1saW1lLTUwOiBudGgoJHBhbGV0dGUtbGltZSwgMSk7XG4kcGFsZXR0ZS1saW1lLTEwMDogbnRoKCRwYWxldHRlLWxpbWUsIDIpO1xuJHBhbGV0dGUtbGltZS0yMDA6IG50aCgkcGFsZXR0ZS1saW1lLCAzKTtcbiRwYWxldHRlLWxpbWUtMzAwOiBudGgoJHBhbGV0dGUtbGltZSwgNCk7XG4kcGFsZXR0ZS1saW1lLTQwMDogbnRoKCRwYWxldHRlLWxpbWUsIDUpO1xuJHBhbGV0dGUtbGltZS01MDA6IG50aCgkcGFsZXR0ZS1saW1lLCA2KTtcbiRwYWxldHRlLWxpbWUtNjAwOiBudGgoJHBhbGV0dGUtbGltZSwgNyk7XG4kcGFsZXR0ZS1saW1lLTcwMDogbnRoKCRwYWxldHRlLWxpbWUsIDgpO1xuJHBhbGV0dGUtbGltZS04MDA6IG50aCgkcGFsZXR0ZS1saW1lLCA5KTtcbiRwYWxldHRlLWxpbWUtOTAwOiBudGgoJHBhbGV0dGUtbGltZSwgMTApO1xuJHBhbGV0dGUtbGltZS1BMTAwOiBudGgoJHBhbGV0dGUtbGltZSwgMTEpO1xuJHBhbGV0dGUtbGltZS1BMjAwOiBudGgoJHBhbGV0dGUtbGltZSwgMTIpO1xuJHBhbGV0dGUtbGltZS1BNDAwOiBudGgoJHBhbGV0dGUtbGltZSwgMTMpO1xuJHBhbGV0dGUtbGltZS1BNzAwOiBudGgoJHBhbGV0dGUtbGltZSwgMTQpO1xuXG4kcGFsZXR0ZS15ZWxsb3c6XG5cIjI1NSwyNTMsMjMxXCJcblwiMjU1LDI0OSwxOTZcIlxuXCIyNTUsMjQ1LDE1N1wiXG5cIjI1NSwyNDEsMTE4XCJcblwiMjU1LDIzOCw4OFwiXG5cIjI1NSwyMzUsNTlcIlxuXCIyNTMsMjE2LDUzXCJcblwiMjUxLDE5Miw0NVwiXG5cIjI0OSwxNjgsMzdcIlxuXCIyNDUsMTI3LDIzXCJcblwiMjU1LDI1NSwxNDFcIlxuXCIyNTUsMjU1LDBcIlxuXCIyNTUsMjM0LDBcIlxuXCIyNTUsMjE0LDBcIjtcblxuJHBhbGV0dGUteWVsbG93LTUwOiBudGgoJHBhbGV0dGUteWVsbG93LCAxKTtcbiRwYWxldHRlLXllbGxvdy0xMDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDIpO1xuJHBhbGV0dGUteWVsbG93LTIwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMyk7XG4kcGFsZXR0ZS15ZWxsb3ctMzAwOiBudGgoJHBhbGV0dGUteWVsbG93LCA0KTtcbiRwYWxldHRlLXllbGxvdy00MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDUpO1xuJHBhbGV0dGUteWVsbG93LTUwMDogbnRoKCRwYWxldHRlLXllbGxvdywgNik7XG4kcGFsZXR0ZS15ZWxsb3ctNjAwOiBudGgoJHBhbGV0dGUteWVsbG93LCA3KTtcbiRwYWxldHRlLXllbGxvdy03MDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDgpO1xuJHBhbGV0dGUteWVsbG93LTgwMDogbnRoKCRwYWxldHRlLXllbGxvdywgOSk7XG4kcGFsZXR0ZS15ZWxsb3ctOTAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAxMCk7XG4kcGFsZXR0ZS15ZWxsb3ctQTEwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMTEpO1xuJHBhbGV0dGUteWVsbG93LUEyMDA6IG50aCgkcGFsZXR0ZS15ZWxsb3csIDEyKTtcbiRwYWxldHRlLXllbGxvdy1BNDAwOiBudGgoJHBhbGV0dGUteWVsbG93LCAxMyk7XG4kcGFsZXR0ZS15ZWxsb3ctQTcwMDogbnRoKCRwYWxldHRlLXllbGxvdywgMTQpO1xuXG4kcGFsZXR0ZS1hbWJlcjpcblwiMjU1LDI0OCwyMjVcIlxuXCIyNTUsMjM2LDE3OVwiXG5cIjI1NSwyMjQsMTMwXCJcblwiMjU1LDIxMyw3OVwiXG5cIjI1NSwyMDIsNDBcIlxuXCIyNTUsMTkzLDdcIlxuXCIyNTUsMTc5LDBcIlxuXCIyNTUsMTYwLDBcIlxuXCIyNTUsMTQzLDBcIlxuXCIyNTUsMTExLDBcIlxuXCIyNTUsMjI5LDEyN1wiXG5cIjI1NSwyMTUsNjRcIlxuXCIyNTUsMTk2LDBcIlxuXCIyNTUsMTcxLDBcIjtcblxuJHBhbGV0dGUtYW1iZXItNTA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMSk7XG4kcGFsZXR0ZS1hbWJlci0xMDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMik7XG4kcGFsZXR0ZS1hbWJlci0yMDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMyk7XG4kcGFsZXR0ZS1hbWJlci0zMDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgNCk7XG4kcGFsZXR0ZS1hbWJlci00MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgNSk7XG4kcGFsZXR0ZS1hbWJlci01MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgNik7XG4kcGFsZXR0ZS1hbWJlci02MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgNyk7XG4kcGFsZXR0ZS1hbWJlci03MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgOCk7XG4kcGFsZXR0ZS1hbWJlci04MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgOSk7XG4kcGFsZXR0ZS1hbWJlci05MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMTApO1xuJHBhbGV0dGUtYW1iZXItQTEwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAxMSk7XG4kcGFsZXR0ZS1hbWJlci1BMjAwOiBudGgoJHBhbGV0dGUtYW1iZXIsIDEyKTtcbiRwYWxldHRlLWFtYmVyLUE0MDA6IG50aCgkcGFsZXR0ZS1hbWJlciwgMTMpO1xuJHBhbGV0dGUtYW1iZXItQTcwMDogbnRoKCRwYWxldHRlLWFtYmVyLCAxNCk7XG5cbiRwYWxldHRlLW9yYW5nZTpcblwiMjU1LDI0MywyMjRcIlxuXCIyNTUsMjI0LDE3OFwiXG5cIjI1NSwyMDQsMTI4XCJcblwiMjU1LDE4Myw3N1wiXG5cIjI1NSwxNjcsMzhcIlxuXCIyNTUsMTUyLDBcIlxuXCIyNTEsMTQwLDBcIlxuXCIyNDUsMTI0LDBcIlxuXCIyMzksMTA4LDBcIlxuXCIyMzAsODEsMFwiXG5cIjI1NSwyMDksMTI4XCJcblwiMjU1LDE3MSw2NFwiXG5cIjI1NSwxNDUsMFwiXG5cIjI1NSwxMDksMFwiO1xuXG4kcGFsZXR0ZS1vcmFuZ2UtNTA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDEpO1xuJHBhbGV0dGUtb3JhbmdlLTEwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMik7XG4kcGFsZXR0ZS1vcmFuZ2UtMjAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAzKTtcbiRwYWxldHRlLW9yYW5nZS0zMDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDQpO1xuJHBhbGV0dGUtb3JhbmdlLTQwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgNSk7XG4kcGFsZXR0ZS1vcmFuZ2UtNTAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCA2KTtcbiRwYWxldHRlLW9yYW5nZS02MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDcpO1xuJHBhbGV0dGUtb3JhbmdlLTcwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgOCk7XG4kcGFsZXR0ZS1vcmFuZ2UtODAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCA5KTtcbiRwYWxldHRlLW9yYW5nZS05MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDEwKTtcbiRwYWxldHRlLW9yYW5nZS1BMTAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAxMSk7XG4kcGFsZXR0ZS1vcmFuZ2UtQTIwMDogbnRoKCRwYWxldHRlLW9yYW5nZSwgMTIpO1xuJHBhbGV0dGUtb3JhbmdlLUE0MDA6IG50aCgkcGFsZXR0ZS1vcmFuZ2UsIDEzKTtcbiRwYWxldHRlLW9yYW5nZS1BNzAwOiBudGgoJHBhbGV0dGUtb3JhbmdlLCAxNCk7XG5cbiRwYWxldHRlLWRlZXAtb3JhbmdlOlxuXCIyNTEsMjMzLDIzMVwiXG5cIjI1NSwyMDQsMTg4XCJcblwiMjU1LDE3MSwxNDVcIlxuXCIyNTUsMTM4LDEwMVwiXG5cIjI1NSwxMTIsNjdcIlxuXCIyNTUsODcsMzRcIlxuXCIyNDQsODEsMzBcIlxuXCIyMzAsNzQsMjVcIlxuXCIyMTYsNjcsMjFcIlxuXCIxOTEsNTQsMTJcIlxuXCIyNTUsMTU4LDEyOFwiXG5cIjI1NSwxMTAsNjRcIlxuXCIyNTUsNjEsMFwiXG5cIjIyMSw0NCwwXCI7XG5cbiRwYWxldHRlLWRlZXAtb3JhbmdlLTUwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDEpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtMTAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDIpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtMjAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDMpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtMzAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDQpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtNDAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDUpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtNTAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDYpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtNjAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDcpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtNzAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDgpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtODAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDkpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtOTAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDEwKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLUExMDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMTEpO1xuJHBhbGV0dGUtZGVlcC1vcmFuZ2UtQTIwMDogbnRoKCRwYWxldHRlLWRlZXAtb3JhbmdlLCAxMik7XG4kcGFsZXR0ZS1kZWVwLW9yYW5nZS1BNDAwOiBudGgoJHBhbGV0dGUtZGVlcC1vcmFuZ2UsIDEzKTtcbiRwYWxldHRlLWRlZXAtb3JhbmdlLUE3MDA6IG50aCgkcGFsZXR0ZS1kZWVwLW9yYW5nZSwgMTQpO1xuXG5cbi8qIENvbG9yIG9yZGVyOiA1MCwgMTAwLCAyMDAsIDMwMCwgNDAwLCA1MDAsIDYwMCwgNzAwLCA4MDAsIDkwMC4qL1xuXG4kcGFsZXR0ZS1icm93bjpcblwiMjM5LDIzNSwyMzNcIlxuXCIyMTUsMjA0LDIwMFwiXG5cIjE4OCwxNzAsMTY0XCJcblwiMTYxLDEzNiwxMjdcIlxuXCIxNDEsMTEwLDk5XCJcblwiMTIxLDg1LDcyXCJcblwiMTA5LDc2LDY1XCJcblwiOTMsNjQsNTVcIlxuXCI3OCw1Miw0NlwiXG5cIjYyLDM5LDM1XCI7XG5cbiRwYWxldHRlLWJyb3duLTUwOiBudGgoJHBhbGV0dGUtYnJvd24sIDEpO1xuJHBhbGV0dGUtYnJvd24tMTAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDIpO1xuJHBhbGV0dGUtYnJvd24tMjAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDMpO1xuJHBhbGV0dGUtYnJvd24tMzAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDQpO1xuJHBhbGV0dGUtYnJvd24tNDAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDUpO1xuJHBhbGV0dGUtYnJvd24tNTAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDYpO1xuJHBhbGV0dGUtYnJvd24tNjAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDcpO1xuJHBhbGV0dGUtYnJvd24tNzAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDgpO1xuJHBhbGV0dGUtYnJvd24tODAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDkpO1xuJHBhbGV0dGUtYnJvd24tOTAwOiBudGgoJHBhbGV0dGUtYnJvd24sIDEwKTtcblxuJHBhbGV0dGUtZ3JleTpcblwiMjUwLDI1MCwyNTBcIlxuXCIyNDUsMjQ1LDI0NVwiXG5cIjIzOCwyMzgsMjM4XCJcblwiMjI0LDIyNCwyMjRcIlxuXCIxODksMTg5LDE4OVwiXG5cIjE1OCwxNTgsMTU4XCJcblwiMTE3LDExNywxMTdcIlxuXCI5Nyw5Nyw5N1wiXG5cIjY2LDY2LDY2XCJcblwiMzMsMzMsMzNcIjtcblxuJHBhbGV0dGUtZ3JleS01MDogbnRoKCRwYWxldHRlLWdyZXksIDEpO1xuJHBhbGV0dGUtZ3JleS0xMDA6IG50aCgkcGFsZXR0ZS1ncmV5LCAyKTtcbiRwYWxldHRlLWdyZXktMjAwOiBudGgoJHBhbGV0dGUtZ3JleSwgMyk7XG4kcGFsZXR0ZS1ncmV5LTMwMDogbnRoKCRwYWxldHRlLWdyZXksIDQpO1xuJHBhbGV0dGUtZ3JleS00MDA6IG50aCgkcGFsZXR0ZS1ncmV5LCA1KTtcbiRwYWxldHRlLWdyZXktNTAwOiBudGgoJHBhbGV0dGUtZ3JleSwgNik7XG4kcGFsZXR0ZS1ncmV5LTYwMDogbnRoKCRwYWxldHRlLWdyZXksIDcpO1xuJHBhbGV0dGUtZ3JleS03MDA6IG50aCgkcGFsZXR0ZS1ncmV5LCA4KTtcbiRwYWxldHRlLWdyZXktODAwOiBudGgoJHBhbGV0dGUtZ3JleSwgOSk7XG4kcGFsZXR0ZS1ncmV5LTkwMDogbnRoKCRwYWxldHRlLWdyZXksIDEwKTtcblxuJHBhbGV0dGUtYmx1ZS1ncmV5OlxuXCIyMzYsMjM5LDI0MVwiXG5cIjIwNywyMTYsMjIwXCJcblwiMTc2LDE5MCwxOTdcIlxuXCIxNDQsMTY0LDE3NFwiXG5cIjEyMCwxNDQsMTU2XCJcblwiOTYsMTI1LDEzOVwiXG5cIjg0LDExMCwxMjJcIlxuXCI2OSw5MCwxMDBcIlxuXCI1NSw3MSw3OVwiXG5cIjM4LDUwLDU2XCI7XG5cbiRwYWxldHRlLWJsdWUtZ3JleS01MDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgMSk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktMTAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCAyKTtcbiRwYWxldHRlLWJsdWUtZ3JleS0yMDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDMpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTMwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgNCk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktNDAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCA1KTtcbiRwYWxldHRlLWJsdWUtZ3JleS01MDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDYpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTYwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgNyk7XG4kcGFsZXR0ZS1ibHVlLWdyZXktNzAwOiBudGgoJHBhbGV0dGUtYmx1ZS1ncmV5LCA4KTtcbiRwYWxldHRlLWJsdWUtZ3JleS04MDA6IG50aCgkcGFsZXR0ZS1ibHVlLWdyZXksIDkpO1xuJHBhbGV0dGUtYmx1ZS1ncmV5LTkwMDogbnRoKCRwYWxldHRlLWJsdWUtZ3JleSwgMTApO1xuXG4kY29sb3ItYmxhY2s6IFwiMCwwLDBcIjtcbiRjb2xvci13aGl0ZTogXCIyNTUsMjU1LDI1NVwiO1xuXG5cbi8qIGNvbG9ycy5zY3NzICovXG4kc3R5bGVndWlkZS1nZW5lcmF0ZS10ZW1wbGF0ZTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8qIFRoZSB0d28gcG9zc2libGUgY29sb3JzIGZvciBvdmVybGF5ZWQgdGV4dC4qL1xuJGNvbG9yLWRhcmstY29udHJhc3Q6ICRjb2xvci13aGl0ZSAhZGVmYXVsdDtcbiRjb2xvci1saWdodC1jb250cmFzdDogJGNvbG9yLWJsYWNrICFkZWZhdWx0O1xuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXRzKCRudW1iZXIpIHtcbiAgQHJldHVybiAkbnVtYmVyIC8gKCRudW1iZXIgKiAwICsgMSk7XG59XG4iLCIvKiBMaWdodCBiYWNrZ3JvdW5kIHNpZGViYXIqL1xuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuJGxpZ2h0X25hdl90ZXh0X2NvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvcjtcbiRsaWdodF9uYXZfbGlua19ob3Zlcl9iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQ7IC8qI2Y2ZjZmNjsqL1xuJGxpZ2h0X25hdl9saW5rX2hvdmVyX2NvbG9yOiAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRsaWdodF9uYXZfbGlua19hY3RpdmVfYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQ7XG4kbGlnaHRfbmF2X2xpbmtfYWN0aXZlX2NvbG9yOiAgICAgICAgICRicmFuZC1wcmltYXJ5O1xuJGxpZ2h0X25hdl9saW5rX29wZW5fYmc6ICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4wNSk7ICAgICAgLyogdmVydGljYWwgbmF2IG9ubHkqL1xuJGxpZ2h0X25hdl9saW5rX29wZW5fY29sb3I6ICAgICAgICAgICAkbGlnaHRfbmF2X2xpbmtfYWN0aXZlX2NvbG9yOyAgIC8qIHZlcnRpY2FsIG5hdiBvbmx5Ki9cblxuJGxpZ2h0X25hdl9zdWJfbmF2X2JnOiAgICAgICAgICAgICAgICAkbGlnaHRfbmF2X2xpbmtfb3Blbl9iZztcbiRsaWdodF9uYXZfc3ViX2xpbmtfYWN0aXZlX2NvbG9yOiAgICAgJGJyYW5kLXByaW1hcnk7XG4vKiAkbGlnaHRfbmF2X3N1YjJfbmF2X2JnOiAgICAgICAgICAgICAgICNlYWVhZWE7Ki9cbiRsaWdodF9uYXZfc3ViMl9uYXZfYmc6ICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMDUpO1xuLyogJGxpZ2h0X25hdl9zdWIzX25hdl9iZzogICAgICAgICAgICAgICAjZGRkOyovXG4kbGlnaHRfbmF2X3N1YjNfbmF2X2JnOiAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjA1KTtcblxuXG5cbi8qIFRoZW1lcyovXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4vKiAkdGhlbWVfZGFya190ZXh0X2NvbG9yOiAgICAgICByZ2JhKDI1NSwyNTUsMjU1LC43KTsqL1xuJHRoZW1lX2RhcmtfdGV4dF9jb2xvcl9saWdodDogcmdiYSgyNTUsMjU1LDI1NSwuNSk7XG4kdGhlbWVfZGFya190ZXh0X2NvbG9yOiAgICAgICNkNWQ2ZDc7XG5cbiR0aGVtZV9kYXJrX3NpZGViYXJfYmdfY29sb3I6ICRkYXJrO1xuJHRoZW1lX2RhcmtfaGVhZGVyX2JnX2NvbG9yOiAgbGlnaHRlbigkZGFyaywgMiUpO1xuJHRoZW1lX2RhcmtfcGFnZV9iZzogICAgICAgICAgbGlnaHRlbigkZGFyaywgMi41JSk7XG4kdGhlbWVfZGFya19ib3hfYmc6ICAgICAgICAgICAkdGhlbWVfZGFya19oZWFkZXJfYmdfY29sb3I7XG5cbiR0aGVtZV9ncmF5X3NpZGViYXJfYmdfY29sb3I6IGdyYXlzY2FsZSgkdGhlbWVfZGFya19zaWRlYmFyX2JnX2NvbG9yKTsgLyogb3IgM2MzYzNjKi9cbiR0aGVtZV9ncmF5X2hlYWRlcl9iZ19jb2xvcjogIGdyYXlzY2FsZSgkdGhlbWVfZGFya19oZWFkZXJfYmdfY29sb3IpOyAvKiBvciAjNGM0YzRjKi9cbiR0aGVtZV9ncmF5X3BhZ2VfYmc6ICAgICAgICAgIGdyYXlzY2FsZSgkdGhlbWVfZGFya19wYWdlX2JnKTsgLyogIzQ0NDsqL1xuJHRoZW1lX2dyYXlfdGV4dF9jb2xvcjogICAgICAgJHRoZW1lX2RhcmtfdGV4dF9jb2xvcjtcbiR0aGVtZV9ncmF5X2JveF9iZzogICAgICAgICAgICR0aGVtZV9ncmF5X2hlYWRlcl9iZ19jb2xvcjtcbiIsIi8qIE1hdGVyaWFsIERlc2lnbiBMaXRlICovXG5cbkBpbXBvcnQgXCIuLi9nbG9iYWwvdmFyaWFibGVzLWJvb3RzdHJhcFwiO1xuXG4vLyBWYXJpYWJsZXMgYW5kIG1peGluc1xuQGltcG9ydCBcInNyYy92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJzcmMvbWl4aW5zXCI7XG5cbi8vIFJlc2V0cyBhbmQgZGVwZW5kZW5jaWVzXG5AaW1wb3J0IFwic3JjL3R5cG9ncmFwaHkvdHlwb2dyYXBoeVwiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwic3JjL2JhZGdlL2JhZGdlXCI7XG5AaW1wb3J0IFwic3JjL2NhcmQvY2FyZFwiO1xuQGltcG9ydCBcInNyYy9kYXRhLXRhYmxlL2RhdGEtdGFibGVcIjtcbkBpbXBvcnQgXCJzcmMvc2hhZG93L3NoYWRvd1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiY3VzdG9tXCI7XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG4vKiBUeXBvZ3JhcGh5ICovXG5cbkBtaXhpbiB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGlmICR1c2VQcmVmZXJyZWQge1xuICAgIGZvbnQtZmFtaWx5OiAkcHJlZmVycmVkX2ZvbnQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tZGlzcGxheS00KCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDExMnB4O1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWRpc3BsYXktMygkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiA1NnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLWRpc3BsYXktMigkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiA0NXB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogNDhweDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuNTQ7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tZGlzcGxheS0xKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDM0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiA0MHB4O1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC41NDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1oZWFkbGluZSgkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMzJweDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tdGl0bGUoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLXN1YmhlYWQoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjg3O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLXN1YmhlYWQtMigkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IHRydWUpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tYm9keS0yKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgdHlwby1wcmVmZXJyZWQtZm9udCgkdXNlUHJlZmVycmVkKTtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBAaWYgJHVzZVByZWZlcnJlZCB7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfSBAZWxzZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1ib2R5LTEoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiBmYWxzZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBsZXR0ZXItc3BhY2luZzogMDtcblxuICBAaWYgJGNvbG9yQ29udHJhc3Qge1xuICAgIG9wYWNpdHk6IDAuODc7XG4gIH1cbn1cblxuQG1peGluIHR5cG8tY2FwdGlvbigkY29sb3JDb250cmFzdDogZmFsc2UsICR1c2VQcmVmZXJyZWQ6IGZhbHNlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC41NDtcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1ibG9ja3F1b3RlKCRjb2xvckNvbnRyYXN0OiBmYWxzZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSkge1xuICBAaW5jbHVkZSB0eXBvLXByZWZlcnJlZC1mb250KCR1c2VQcmVmZXJyZWQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcblxuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0wLjVlbTtcbiAgICBjb250ZW50OiAn4oCcJztcbiAgfVxuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICfigJ0nO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC4wNWVtO1xuICB9XG5cbiAgQGlmICRjb2xvckNvbnRyYXN0IHtcbiAgICBvcGFjaXR5OiAwLjU0O1xuICB9XG59XG5cbkBtaXhpbiB0eXBvLW1lbnUoJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1idXR0b24oJGNvbG9yQ29udHJhc3Q6IGZhbHNlLCAkdXNlUHJlZmVycmVkOiB0cnVlKSB7XG4gIEBpbmNsdWRlIHR5cG8tcHJlZmVycmVkLWZvbnQoJHVzZVByZWZlcnJlZCk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuXG4gIEBpZiAkY29sb3JDb250cmFzdCB7XG4gICAgb3BhY2l0eTogMC44NztcbiAgfVxufVxuXG5AbWl4aW4gdHlwby1pY29uKCkge1xuICBmb250LWZhbWlseTogJ01hdGVyaWFsIEljb25zJztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDI0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gIC13ZWJraXQtZm9udC1mZWF0dXJlLXNldHRpbmdzOiAnbGlnYSc7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xufVxuXG4vKiBTaGFkb3dzICovXG5cbi8vIEZvY3VzIHNoYWRvdyBtaXhpbi5cbkBtaXhpbiBmb2N1cy1zaGFkb3coKSB7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLDAsMCwuMTgpLDAgOHB4IDE2cHggcmdiYSgwLDAsMCwuMzYpO1xufVxuXG5AbWl4aW4gc2hhZG93LTJkcCgpIHtcbiAgYm94LXNoYWRvdzogMCAycHggMnB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAzcHggMXB4IC0ycHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAxcHggNXB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy0zZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgM3B4IDRweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgM3B4IDNweCAtMnB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktdW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMXB4IDhweCAwIHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KTtcbn1cbkBtaXhpbiBzaGFkb3ctNGRwKCkge1xuICBib3gtc2hhZG93OiAwIDRweCA1cHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDFweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDJweCA0cHggLTFweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy02ZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDEwcHggMCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXBlbnVtYnJhLW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDFweCAxOHB4IDAgcmdiYSgwLCAwLCAwLCAkc2hhZG93LWFtYmllbnQtc2hhZG93LW9wYWNpdHkpLFxuICAgICAgICAgICAgICAwIDNweCA1cHggLTFweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuQG1peGluIHNoYWRvdy04ZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgOHB4IDEwcHggMXB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1rZXktcGVudW1icmEtb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgM3B4IDE0cHggMnB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCA1cHggNXB4IC0zcHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cblxuQG1peGluIHNoYWRvdy0xNmRwKCkge1xuICBib3gtc2hhZG93OiAwIDE2cHggMjRweCAycHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAgNnB4IDMwcHggNXB4IHJnYmEoMCwgMCwgMCwgJHNoYWRvdy1hbWJpZW50LXNoYWRvdy1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAgOHB4IDEwcHggLTVweCByZ2JhKDAsIDAsIDAsICRzaGFkb3cta2V5LXVtYnJhLW9wYWNpdHkpO1xufVxuXG5AbWl4aW4gc2hhZG93LTI0ZHAoKSB7XG4gIGJveC1zaGFkb3c6IDAgIDlweCA0NnB4ICA4cHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS1wZW51bWJyYS1vcGFjaXR5KSxcbiAgICAgICAgICAgICAgMCAxMXB4IDE1cHggLTdweCByZ2JhKDAsIDAsIDAsICRzaGFkb3ctYW1iaWVudC1zaGFkb3ctb3BhY2l0eSksXG4gICAgICAgICAgICAgIDAgMjRweCAzOHB4ICAzcHggcmdiYSgwLCAwLCAwLCAkc2hhZG93LWtleS11bWJyYS1vcGFjaXR5KTtcbn1cblxuLyogQW5pbWF0aW9ucyAqL1xuXG5AbWl4aW4gbWF0ZXJpYWwtYW5pbWF0aW9uLWZhc3Qtb3V0LXNsb3ctaW4oJGR1cmF0aW9uOjAuMnMpIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1zbG93LWluO1xufVxuXG5AbWl4aW4gbWF0ZXJpYWwtYW5pbWF0aW9uLWxpbmVhci1vdXQtc2xvdy1pbigkZHVyYXRpb246MC4ycykge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkYW5pbWF0aW9uLWN1cnZlLWxpbmVhci1vdXQtc2xvdy1pbjtcbn1cblxuQG1peGluIG1hdGVyaWFsLWFuaW1hdGlvbi1mYXN0LW91dC1saW5lYXItaW4oJGR1cmF0aW9uOjAuMnMpIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGFuaW1hdGlvbi1jdXJ2ZS1mYXN0LW91dC1saW5lYXItaW47XG59XG5cbkBtaXhpbiBtYXRlcmlhbC1hbmltYXRpb24tZGVmYXVsdCgkZHVyYXRpb246MC4ycykge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkYW5pbWF0aW9uLWN1cnZlLWRlZmF1bHQ7XG59XG5cbi8qIERpYWxvZyAqL1xuXG5AbWl4aW4gZGlhbG9nLXdpZHRoKCR1bml0czo1KSB7XG4gIEBpZih0eXBlX29mKCR1bml0cykgIT0gJ251bWJlcicpIHtcbiAgICBAZXJyb3IgXCJUaGUgdW5pdCBnaXZlbiB0byBkaWFsb2ctd2lkdGggc2hvdWxkIGJlIGEgbnVtYmVyLlwiO1xuICB9XG4gIC8vIDU2ZHAgaXMgdGhlIGJhc2UgdW5pdCB3aWR0aCBmb3IgRGlhbG9ncy5cbiAgLy8gV2l0aCA1IHVuaXRzIGJlaW5nIHRoZSBudW1iZXIgb2YgdW5pdHMgZm9yIGEgbW9iaWxlIGRldmljZS5cbiAgLy8gaHR0cHM6Ly9nb28uZ2wvc0syTzVvXG4gIHdpZHRoOiAkdW5pdHMgKiA1NnB4O1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG5AaWYgJHRhcmdldC1lbGVtZW50cy1kaXJlY3RseSA9PSB0cnVlIHtcbiAgaHRtbCwgYm9keSB7XG4gICAgZm9udC1mYW1pbHk6ICRwZXJmb3JtYW5jZV9mb250O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvKipcbiAgKiBTdHlsZXMgZm9yIEhUTUwgZWxlbWVudHNcbiAgKi9cblxuICBoMSBzbWFsbCwgaDIgc21hbGwsIGgzIHNtYWxsLCBoNCBzbWFsbCwgaDUgc21hbGwsIGg2IHNtYWxsIHtcbiAgICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktMygkY29sb3JDb250cmFzdDogdHJ1ZSk7XG5cbiAgICBmb250LXNpemU6IDAuNmVtO1xuICB9XG5cbiAgaDEge1xuICAgIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0zO1xuXG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0yO1xuXG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG5cbiAgaDMge1xuICAgIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0xO1xuXG4gICAgbWFyZ2luLXRvcDogMjRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICB9XG5cbiAgaDQge1xuICAgIEBpbmNsdWRlIHR5cG8taGVhZGxpbmU7XG5cbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBoNSB7XG4gICAgQGluY2x1ZGUgdHlwby10aXRsZTtcblxuICAgIG1hcmdpbi10b3A6IDI0cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgfVxuXG4gIGg2IHtcbiAgICBAaW5jbHVkZSB0eXBvLXN1YmhlYWQ7XG5cbiAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBwIHtcbiAgICBAaW5jbHVkZSB0eXBvLWJvZHktMTtcblxuICAgIG1hcmdpbi1ib3R0b206IDE2cHg7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogJHRleHQtbGluay1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgYmxvY2txdW90ZSB7XG4gICAgQGluY2x1ZGUgdHlwby1ibG9ja3F1b3RlO1xuICB9XG5cbiAgbWFyayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZmY4MTtcbiAgfVxuXG4gIGR0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG5cbiAgYWRkcmVzcyB7XG4gICAgQGluY2x1ZGUgdHlwby1jYXB0aW9uO1xuXG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICB9XG5cbiAgdWwsIG9sIHtcbiAgICBAaW5jbHVkZSB0eXBvLWJvZHktMTtcbiAgfVxufVxuXG4vKipcbiAqIENsYXNzIE5hbWUgU3R5bGVzXG4gKi9cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTQge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktNDtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTQtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktNCgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgdHlwby1kaXNwbGF5LTM7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZGlzcGxheS0zLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1kaXNwbGF5LTMoJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0yO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWRpc3BsYXktMi1jb2xvci1jb250cmFzdCB7XG4gIEBpbmNsdWRlIHR5cG8tZGlzcGxheS0yKCRjb2xvckNvbnRyYXN0OiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTEge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktMTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1kaXNwbGF5LTEtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWRpc3BsYXktMSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0taGVhZGxpbmUge1xuICBAaW5jbHVkZSB0eXBvLWhlYWRsaW5lO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWhlYWRsaW5lLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1oZWFkbGluZSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGl0bGUge1xuICBAaW5jbHVkZSB0eXBvLXRpdGxlO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRpdGxlLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby10aXRsZSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tc3ViaGVhZCB7XG4gIEBpbmNsdWRlIHR5cG8tc3ViaGVhZDtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1zdWJoZWFkLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1zdWJoZWFkKCRjb2xvckNvbnRyYXN0OiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTIge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMjtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTItY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMigkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0xIHtcbiAgQGluY2x1ZGUgdHlwby1ib2R5LTE7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYm9keS0xLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1ib2R5LTEoJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWJvZHktMi1mb3JjZS1wcmVmZXJyZWQtZm9udCB7XG4gIEBpbmNsdWRlIHR5cG8tYm9keS0yKCR1c2VQcmVmZXJyZWQ6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWJvZHktMi1mb3JjZS1wcmVmZXJyZWQtZm9udC1jb2xvci1jb250cmFzdCB7XG4gIEBpbmNsdWRlIHR5cG8tYm9keS0yKCRjb2xvckNvbnRyYXN0OiB0cnVlLCAkdXNlUHJlZmVycmVkOiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTEtZm9yY2UtcHJlZmVycmVkLWZvbnQge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMSgkdXNlUHJlZmVycmVkOiB0cnVlKTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1ib2R5LTEtZm9yY2UtcHJlZmVycmVkLWZvbnQtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWJvZHktMSgkY29sb3JDb250cmFzdDogdHJ1ZSwgJHVzZVByZWZlcnJlZDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tY2FwdGlvbiB7XG4gIEBpbmNsdWRlIHR5cG8tY2FwdGlvbjtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1jYXB0aW9uLWZvcmNlLXByZWZlcnJlZC1mb250IHtcbiAgQGluY2x1ZGUgdHlwby1jYXB0aW9uKCR1c2VQcmVmZXJyZWQ6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWNhcHRpb24tY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWNhcHRpb24oJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWNhcHRpb24tZm9yY2UtcHJlZmVycmVkLWZvbnQtY29sb3ItY29udHJhc3Qge1xuICBAaW5jbHVkZSB0eXBvLWNhcHRpb24oJGNvbG9yQ29udHJhc3Q6IHRydWUsICR1c2VQcmVmZXJyZWQ6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLW1lbnUge1xuICBAaW5jbHVkZSB0eXBvLW1lbnU7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tbWVudS1jb2xvci1jb250cmFzdCB7XG4gIEBpbmNsdWRlIHR5cG8tbWVudSgkY29sb3JDb250cmFzdDogdHJ1ZSk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYnV0dG9uIHtcbiAgQGluY2x1ZGUgdHlwby1idXR0b247XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tYnV0dG9uLWNvbG9yLWNvbnRyYXN0IHtcbiAgQGluY2x1ZGUgdHlwby1idXR0b24oJGNvbG9yQ29udHJhc3Q6IHRydWUpO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGV4dC1ub3dyYXAge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLXRleHQtbG93ZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS10ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tdGV4dC1jYXBpdGFsaXplIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZm9udC10aGluIHtcbiAgZm9udC13ZWlnaHQ6IDIwMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG59XG5cbi5tZGwtdHlwb2dyYXBoeS0tZm9udC1yZWd1bGFyIHtcbiAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtbWVkaXVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMCAhaW1wb3J0YW50O1xufVxuXG4ubWRsLXR5cG9ncmFwaHktLWZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcbn1cblxuLm1kbC10eXBvZ3JhcGh5LS1mb250LWJsYWNrIHtcbiAgZm9udC13ZWlnaHQ6IDkwMCAhaW1wb3J0YW50O1xufVxuXG4ubWF0ZXJpYWwtaWNvbnMge1xuICBAaW5jbHVkZSB0eXBvLWljb247XG59XG4iLCIvLyBWYXJpYWJsZXNcbi8vXG4vLyBDb3B5IHNldHRpbmdzIGZyb20gdGhpcyBmaWxlIGludG8gdGhlIHByb3ZpZGVkIGBfY3VzdG9tLnNjc3NgIHRvIG92ZXJyaWRlXG4vLyB0aGUgQm9vdHN0cmFwIGRlZmF1bHRzIHdpdGhvdXQgbW9kaWZ5aW5nIGtleSwgdmVyc2lvbmVkIGZpbGVzLlxuXG5cbi8vIFRhYmxlIG9mIENvbnRlbnRzXG4vL1xuLy8gQ29sb3JzXG4vLyBPcHRpb25zXG4vLyBTcGFjaW5nXG4vLyBCb2R5XG4vLyBMaW5rc1xuLy8gR3JpZCBicmVha3BvaW50c1xuLy8gR3JpZCBjb250YWluZXJzXG4vLyBHcmlkIGNvbHVtbnNcbi8vIEZvbnRzXG4vLyBDb21wb25lbnRzXG4vLyBUYWJsZXNcbi8vIEJ1dHRvbnNcbi8vIEZvcm1zXG4vLyBEcm9wZG93bnNcbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vIE5hdmJhclxuLy8gTmF2c1xuLy8gUGFnaW5hdGlvblxuLy8gSnVtYm90cm9uXG4vLyBGb3JtIHN0YXRlcyBhbmQgYWxlcnRzXG4vLyBDYXJkc1xuLy8gVG9vbHRpcHNcbi8vIFBvcG92ZXJzXG4vLyBCYWRnZXNcbi8vIE1vZGFsc1xuLy8gQWxlcnRzXG4vLyBQcm9ncmVzcyBiYXJzXG4vLyBMaXN0IGdyb3VwXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4vLyBGaWd1cmVzXG4vLyBCcmVhZGNydW1ic1xuLy8gQ2Fyb3VzZWxcbi8vIENsb3NlXG4vLyBDb2RlXG5cbkBtaXhpbiBfYXNzZXJ0LWFzY2VuZGluZygkbWFwLCAkbWFwLW5hbWUpIHtcbiAgJHByZXYta2V5OiBudWxsO1xuICAkcHJldi1udW06IG51bGw7XG4gIEBlYWNoICRrZXksICRudW0gaW4gJG1hcCB7XG4gICAgQGlmICRwcmV2LW51bSA9PSBudWxsIHtcbiAgICAgIC8vIERvIG5vdGhpbmdcbiAgICB9IEBlbHNlIGlmIG5vdCBjb21wYXJhYmxlKCRwcmV2LW51bSwgJG51bSkge1xuICAgICAgQHdhcm4gXCJQb3RlbnRpYWxseSBpbnZhbGlkIHZhbHVlIGZvciAjeyRtYXAtbmFtZX06IFRoaXMgbWFwIG11c3QgYmUgaW4gYXNjZW5kaW5nIG9yZGVyLCBidXQga2V5ICcjeyRrZXl9JyBoYXMgdmFsdWUgI3skbnVtfSB3aG9zZSB1bml0IG1ha2VzIGl0IGluY29tcGFyYWJsZSB0byAjeyRwcmV2LW51bX0sIHRoZSB2YWx1ZSBvZiB0aGUgcHJldmlvdXMga2V5ICcjeyRwcmV2LWtleX0nICFcIjtcbiAgICB9IEBlbHNlIGlmICRwcmV2LW51bSA+PSAkbnVtIHtcbiAgICAgIEB3YXJuIFwiSW52YWxpZCB2YWx1ZSBmb3IgI3skbWFwLW5hbWV9OiBUaGlzIG1hcCBtdXN0IGJlIGluIGFzY2VuZGluZyBvcmRlciwgYnV0IGtleSAnI3ska2V5fScgaGFzIHZhbHVlICN7JG51bX0gd2hpY2ggaXNuJ3QgZ3JlYXRlciB0aGFuICN7JHByZXYtbnVtfSwgdGhlIHZhbHVlIG9mIHRoZSBwcmV2aW91cyBrZXkgJyN7JHByZXYta2V5fScgIVwiO1xuICAgIH1cbiAgICAkcHJldi1rZXk6ICRrZXk7XG4gICAgJHByZXYtbnVtOiAkbnVtO1xuICB9XG59XG5cbi8vIFJlcGxhY2UgYCRzZWFyY2hgIHdpdGggYCRyZXBsYWNlYCBpbiBgJHN0cmluZ2Bcbi8vIEBhdXRob3IgSHVnbyBHaXJhdWRlbFxuLy8gQHBhcmFtIHtTdHJpbmd9ICRzdHJpbmcgLSBJbml0aWFsIHN0cmluZ1xuLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWFyY2ggLSBTdWJzdHJpbmcgdG8gcmVwbGFjZVxuLy8gQHBhcmFtIHtTdHJpbmd9ICRyZXBsYWNlICgnJykgLSBOZXcgdmFsdWVcbi8vIEByZXR1cm4ge1N0cmluZ30gLSBVcGRhdGVkIHN0cmluZ1xuQGZ1bmN0aW9uIHN0ci1yZXBsYWNlKCRzdHJpbmcsICRzZWFyY2gsICRyZXBsYWNlOiBcIlwiKSB7XG4gICRpbmRleDogc3RyLWluZGV4KCRzdHJpbmcsICRzZWFyY2gpO1xuXG4gIEBpZiAkaW5kZXgge1xuICAgIEByZXR1cm4gc3RyLXNsaWNlKCRzdHJpbmcsIDEsICRpbmRleCAtIDEpICsgJHJlcGxhY2UgKyBzdHItcmVwbGFjZShzdHItc2xpY2UoJHN0cmluZywgJGluZGV4ICsgc3RyLWxlbmd0aCgkc2VhcmNoKSksICRzZWFyY2gsICRyZXBsYWNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHN0cmluZztcbn1cblxuQG1peGluIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJG1hcCkge1xuICAkdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xuICAkZmlyc3QtdmFsdWU6IG50aCgkdmFsdWVzLCAxKTtcbiAgQGlmICRmaXJzdC12YWx1ZSAhPSAwIHtcbiAgICBAd2FybiBcIkZpcnN0IGJyZWFrcG9pbnQgaW4gYCRncmlkLWJyZWFrcG9pbnRzYCBtdXN0IHN0YXJ0IGF0IDAsIGJ1dCBzdGFydHMgYXQgI3skZmlyc3QtdmFsdWV9LlwiO1xuICB9XG59XG5cblxuLy8gR2VuZXJhbCB2YXJpYWJsZSBzdHJ1Y3R1cmVcbi8vXG4vLyBWYXJpYWJsZSBmb3JtYXQgc2hvdWxkIGZvbGxvdyB0aGUgYCRjb21wb25lbnQtbW9kaWZpZXItc3RhdGUtcHJvcGVydHlgIG9yZGVyLlxuXG5cbi8vIENvbG9yc1xuLy9cbi8vIEdyYXlzY2FsZSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuLy8gU3RhcnQgd2l0aCBhc3NpZ25pbmcgY29sb3IgbmFtZXMgdG8gc3BlY2lmaWMgaGV4IHZhbHVlcy5cbiR3aGl0ZTogICNmZmYgIWRlZmF1bHQ7XG4kYmxhY2s6ICAjMDAwICFkZWZhdWx0O1xuJHJlZDogICAgI0VGNTM1MCAhZGVmYXVsdDsgLy8gUmVkIDQwMFxuJG9yYW5nZTogI0ZGQ0EyOCAhZGVmYXVsdDsgLy8gQW1iZXIgNDAwXG4keWVsbG93OiAjZmZkNTAwICFkZWZhdWx0O1xuJGdyZWVuOiAgIzY2QkI2QSAhZGVmYXVsdDsgLy8gR3JlZW4gNDAwXG4kYmx1ZTogICAjMjE5NkYzICFkZWZhdWx0OyAvLyBCbHVlIDUwMFxuJHRlYWw6ICAgIzViYzBkZSAhZGVmYXVsdDtcbiRwaW5rOiAgICNmZjViNzcgIWRlZmF1bHQ7XG4kcHVycGxlOiAjN0U1N0MyICFkZWZhdWx0OyAvLyBEZWVwIFB1cnBsZSA0MDBcblxuLy8gQ3JlYXRlIGdyYXlzY2FsZVxuJGdyYXktZGFya2VyOiAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgICAgIzI5MmIyYyAhZGVmYXVsdDtcbiRncmF5OiAgICAgICAgICAgICAgICAgICAgICAjNDY0YTRjICFkZWZhdWx0O1xuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgICAgICM2MzZjNzIgIWRlZmF1bHQ7XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgICAgI2VjZWVlZiAhZGVmYXVsdDtcbiRncmF5LWxpZ2h0ZXN0OiAgICAgICAgICAgICAjZjdmN2Y5ICFkZWZhdWx0O1xuXG4vLyBSZWFzc2lnbiBjb2xvciB2YXJzIHRvIHNlbWFudGljIGNvbG9yIHNjaGVtZVxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgICAgICRibHVlICFkZWZhdWx0O1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgICAgICRncmVlbiAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICAgICAjMDBCQ0Q0ICFkZWZhdWx0OyAvLyBDeWFuIDUwMFxuJGJyYW5kLWluZm8tYWx0OiAgICAgICAgICAgICRwdXJwbGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAgICAgJG9yYW5nZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGJyYW5kLWludmVyc2U6ICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaG92ZXItbWVkaWEtcXVlcnk6ICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JpZC1jbGFzc2VzOiAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgIHRydWUgIWRlZmF1bHQ7XG5cblxuLy8gU3BhY2luZ1xuLy9cbi8vIENvbnRyb2wgdGhlIGRlZmF1bHQgc3R5bGluZyBvZiBtb3N0IEJvb3RzdHJhcCBlbGVtZW50cyBieSBtb2RpZnlpbmcgdGhlc2Vcbi8vIHZhcmlhYmxlcy4gTW9zdGx5IGZvY3VzZWQgb24gc3BhY2luZy5cbi8vIFlvdSBjYW4gYWRkIG1vcmUgZW50cmllcyB0byB0aGUgJHNwYWNlcnMgbWFwLCBzaG91bGQgeW91IG5lZWQgbW9yZSB2YXJpYXRpb24uXG5cbiRzcGFjZXI6ICAgMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXIteDogJHNwYWNlciAhZGVmYXVsdDtcbiRzcGFjZXIteTogJHNwYWNlciAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IChcbiAgICB4OiAwLFxuICAgIHk6IDBcbiAgKSxcbiAgMTogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAuMjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAuMjUpXG4gICksXG4gIDI6IChcbiAgICB4OiAoJHNwYWNlci14ICogLjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAuNSlcbiAgKSxcbiAgMzogKFxuICAgIHg6ICRzcGFjZXIteCxcbiAgICB5OiAkc3BhY2VyLXlcbiAgKSxcbiAgNDogKFxuICAgIHg6ICgkc3BhY2VyLXggKiAxLjUpLFxuICAgIHk6ICgkc3BhY2VyLXkgKiAxLjUpXG4gICksXG4gIDU6IChcbiAgICB4OiAoJHNwYWNlci14ICogMyksXG4gICAgeTogKCRzcGFjZXIteSAqIDMpXG4gIClcbikgIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKFxuICAyNTogMjUlLFxuICA1MDogNTAlLFxuICA3NTogNzUlLFxuICAxMDA6IDEwMCVcbikgIWRlZmF1bHQ7XG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LWJnOiAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgIHJnYmEoMCwgMCwgMCwgMC44NykgIWRlZmF1bHQ7XG4kaW52ZXJzZS1iZzogICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRpbnZlcnNlLWNvbG9yOiAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4kZ3JpZC1icmVha3BvaW50czogKFxuICB4czogMCxcbiAgc206IDU3NnB4LFxuICBtZDogNzY4cHgsXG4gIGxnOiA5OTJweCxcbiAgeGw6IDEyMDBweFxuKSAhZGVmYXVsdDtcbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cyk7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkY29udGFpbmVyLW1heC13aWR0aHMsIFwiJGNvbnRhaW5lci1tYXgtd2lkdGhzXCIpO1xuXG5cbi8vIEdyaWQgY29sdW1uc1xuLy9cbi8vIFNldCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgYW5kIHNwZWNpZnkgdGhlIHdpZHRoIG9mIHRoZSBndXR0ZXJzLlxuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2U6ICAgICAzMHB4ICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoczogKFxuICB4czogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXG4gIHNtOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZSxcbiAgbWQ6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlLFxuICBsZzogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UsXG4gIHhsOiAkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZVxuKSAhZGVmYXVsdDtcblxuLy8gRm9udHNcbi8vXG4vLyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiUm9ib3RvXCIsIC1hcHBsZS1zeXN0ZW0sIHN5c3RlbS11aSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6IDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1zbTogICAuODc1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS14czogICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcbiRmb250LXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4kZm9udC13ZWlnaHQtYmFzZTogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjUgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtaDE6IDIuNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDI6IDJyZW0gIWRlZmF1bHQ7XG4kZm9udC1zaXplLWgzOiAxLjc1cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNDogMS41cmVtICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1oNTogMS4yNXJlbSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6IDFyZW0gIWRlZmF1bHQ7XG5cbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAoJHNwYWNlciAvIDIpICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgIDEuMSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG4kZGlzcGxheTEtc2l6ZTogNnJlbSAhZGVmYXVsdDtcbiRkaXNwbGF5Mi1zaXplOiA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogNC41cmVtICFkZWZhdWx0O1xuJGRpc3BsYXk0LXNpemU6IDMuNXJlbSAhZGVmYXVsdDtcblxuJGRpc3BsYXkxLXdlaWdodDogICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAzMDAgIWRlZmF1bHQ7XG4kZGlzcGxheTMtd2VpZ2h0OiAgICAgMzAwICFkZWZhdWx0O1xuJGRpc3BsYXk0LXdlaWdodDogICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG5cbiRsZWFkLWZvbnQtc2l6ZTogICAxLjI1cmVtICFkZWZhdWx0O1xuJGxlYWQtZm9udC13ZWlnaHQ6IDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogODAlICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRhYmJyLWJvcmRlci1jb2xvcjogJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWJvcmRlci13aWR0aDogLjI1cmVtICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywuMSkgIWRlZmF1bHQ7XG4kaHItYm9yZGVyLXdpZHRoOiAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kbWFyay1wYWRkaW5nOiAuMmVtICFkZWZhdWx0O1xuXG4kZHQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4ka2JkLWJveC1zaGFkb3c6ICAgICAgICAgaW5zZXQgMCAtLjFyZW0gMCByZ2JhKCRibGFjaywuMjUpICFkZWZhdWx0O1xuJG5lc3RlZC1rYmQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogNXB4ICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbiRsaW5lLWhlaWdodC1sZzogICAgICAgICAoNCAvIDMpICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgIDEuNSAhZGVmYXVsdDtcblxuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGc6ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgIC4ycmVtICFkZWZhdWx0O1xuXG4kY29tcG9uZW50LWFjdGl2ZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgLjNlbSAhZGVmYXVsdDtcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgIGFsbCAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1mYWRlOiAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICBoZWlnaHQgLjM1cyBlYXNlICFkZWZhdWx0O1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtc20tY2VsbC1wYWRkaW5nOiAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4kdGFibGUtaW52ZXJzZS1iZzogICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kdGFibGUtaW52ZXJzZS1jb2xvcjogICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4wNDUpICFkZWZhdWx0O1xuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywuMDgpICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG5cbiR0YWJsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjEpICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnNcbi8vXG4vLyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAxLjI1ICFkZWZhdWx0O1xuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgMCAwIDAgMnB4IHJnYmEoJGJyYW5kLXByaW1hcnksIC4yNSkgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssLjEyNSkgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgJGJ0bi1wcmltYXJ5LWJnICFkZWZhdWx0O1xuXG4kYnRuLXNlY29uZGFyeS1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1zZWNvbmRhcnktYm9yZGVyOiAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICAkYnRuLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgJGJ0bi1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgICRidG4td2FybmluZy1iZyAhZGVmYXVsdDtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgICRidG4tZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuJGJ0bi1wYWRkaW5nLXgtc206ICAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRidG4tYmxvY2stc3BhY2luZy15OiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJ0bi10b29sYmFyLW1hcmdpbjogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGb3Jtc1xuXG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjE1KSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zXG4kaW5wdXQtYm94LXNoYWRvdzogICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssLjA3NSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJnLWZvY3VzOiAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgMjUlKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93LWZvY3VzOiAgICAgICAgICRpbnB1dC1ib3gtc2hhZG93LCByZ2JhKCRpbnB1dC1ib3JkZXItZm9jdXMsIC42KSAhZGVmYXVsdDtcbiRpbnB1dC1jb2xvci1mb2N1czogICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wYWRkaW5nLXgtc206ICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICgoJGZvbnQtc2l6ZS1iYXNlICogJGlucHV0LWxpbmUtaGVpZ2h0KSArICgkaW5wdXQtcGFkZGluZy15ICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLWxnICogJGxpbmUtaGVpZ2h0LWxnKSArICgkaW5wdXQtcGFkZGluZy15LWxnICogMikpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgKCgkZm9udC1zaXplLXNtICogJGxpbmUtaGVpZ2h0LXNtKSArICgkaW5wdXQtcGFkZGluZy15LXNtICogMikpICFkZWZhdWx0O1xuXG4kaW5wdXQtdHJhbnNpdGlvbjogICAgICAgICAgICAgICBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzICFkZWZhdWx0O1xuXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6IC4yNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LW1hcmdpbi14OiAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4teDogLjc1cmVtICFkZWZhdWx0O1xuXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAkc3BhY2VyLXkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAxLjVyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg6IDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXk6IC4yNXJlbSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1tYXJnaW4teTogICAoKCRsaW5lLWhlaWdodC1iYXNlICogMXJlbSkgLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpIC8gLTIgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgIDUwJSA1MCUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3c6IGluc2V0IDAgLjI1cmVtIC4yNXJlbSByZ2JhKCRibGFjaywuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1kaXNhYmxlZC1jdXJzb3I6ICAgICAgICAgICAgICRjdXJzb3ItZGlzYWJsZWQgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtZGlzYWJsZWQtaW5kaWNhdG9yLWJnOiAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWRpc2FibGVkLWRlc2NyaXB0aW9uLWNvbG9yOiAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYmc6ICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItYm94LXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWZvY3VzLWluZGljYXRvci1ib3gtc2hhZG93OiAwIDAgMCAxcHggJGJvZHktYmcsIDAgMCAwIDNweCAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWFjdGl2ZS1pbmRpY2F0b3ItYmc6ICAgICAgICAgbGlnaHRlbigkYnJhbmQtcHJpbWFyeSwgMzUlKSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1hY3RpdmUtaW5kaWNhdG9yLWJveC1zaGFkb3c6IG5vbmUgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtY2hlY2tlZC1pY29uOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nIGQ9J002LjU2NC43NWwtMy41OSAzLjYxMi0xLjUzOC0xLjU1TDAgNC4yNiAyLjk3NCA3LjI1IDggMi4xOTN6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1iZzogJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaW5kaWNhdG9yLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtY2hlY2tlZC1pbmRpY2F0b3ItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGV0ZXJtaW5hdGUtaWNvbjogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA0JyUzRSUzQ3BhdGggc3Ryb2tlPScjeyRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMCAyaDQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4kY3VzdG9tLXJhZGlvLXJhZGl1czogNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1jaGVja2VkLWljb246IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4JyUzRSUzQ2NpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1jaGVja2VkLWluZGljYXRvci1jb2xvcn0nLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14OiAgICAgICAgICAuNzVyZW0gICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc6ICAgMXJlbSAhZGVmYXVsdDsgLy8gRXh0cmEgcGFkZGluZyB0byBhY2NvdW50IGZvciB0aGUgcHJlc2VuY2Ugb2YgdGhlIGJhY2tncm91bmQtaW1hZ2UgYmFzZWQgaW5kaWNhdG9yXG4kY3VzdG9tLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAkaW5wdXQtbGluZS1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWRpc2FibGVkLWJnOiAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1iZy1zaXplOiAgICAgICA4cHggMTBweCAhZGVmYXVsdDsgLy8gSW4gcGl4ZWxzIGJlY2F1c2UgaW1hZ2UgZGltZW5zaW9uc1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLWNvbG9yOiAjMzMzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yOiAgICAgc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgNCA1JyUzRSUzQ3BhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiBsaWdodGVuKCRicmFuZC1wcmltYXJ5LCAyNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdzogICBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIC4wNzUpLCAwIDAgNXB4IHJnYmEoJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yLCAuNSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXNtLXBhZGRpbmcteTogIC4ycmVtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3Qtc20tZm9udC1zaXplOiAgNzUlICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtaGVpZ2h0OiAgICAgICAgICAgMi41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXdpZHRoOiAgICAgICAgICAgIDE0cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwIC4wNzVyZW0gJHdoaXRlLCAwIDAgMCAuMnJlbSAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteTogICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ6ICAgMS41ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWNvbG9yOiAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1jb2xvcjogICRpbnB1dC1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgaW5zZXQgMCAuMnJlbSAuNHJlbSByZ2JhKCRibGFjaywuMDUpICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJ1dHRvbi1jb2xvcjogICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXRleHQ6IChcbiAgcGxhY2Vob2xkZXI6IChcbiAgICBlbjogXCJDaG9vc2UgZmlsZS4uLlwiXG4gICksXG4gIGJ1dHRvbi1sYWJlbDogKFxuICAgIGVuOiBcIkJyb3dzZVwiXG4gIClcbikgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uIGljb25zXG4kZm9ybS1pY29uLXN1Y2Nlc3MtY29sb3I6ICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGZvcm0taWNvbi1zdWNjZXNzOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBmaWxsPScjeyRmb3JtLWljb24tc3VjY2Vzcy1jb2xvcn0nIGQ9J00yLjMgNi43M0wuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGZvcm0taWNvbi13YXJuaW5nLWNvbG9yOiAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRmb3JtLWljb24td2FybmluZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4JyUzRSUzQ3BhdGggZmlsbD0nI3skZm9ybS1pY29uLXdhcm5pbmctY29sb3J9JyBkPSdNNC40IDUuMzI0aC0uOHYtMi40NmguOHptMCAxLjQyaC0uOFY1Ljg5aC44ek0zLjc2LjYzTC4wNCA3LjA3NWMtLjExNS4yLjAxNi40MjUuMjYuNDI2aDcuMzk3Yy4yNDIgMCAuMzcyLS4yMjYuMjU4LS40MjZDNi43MjYgNC45MjQgNS40NyAyLjc5IDQuMjUzLjYzYy0uMTEzLS4xNzQtLjM5LS4xNzQtLjQ5NCAweicvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG4kZm9ybS1pY29uLWRhbmdlci1jb2xvcjogJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRmb3JtLWljb24tZGFuZ2VyOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIGZpbGw9JyN7JGZvcm0taWNvbi1kYW5nZXItY29sb3J9JyB2aWV3Qm94PSctMiAtMiA3IDcnJTNFJTNDcGF0aCBzdHJva2U9JyUyM2Q5NTM0ZicgZD0nTTAgMGwzIDNtMC0zTDAgMycvJTNFJTNDY2lyY2xlIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3k9JzMnIHI9Jy41Jy8lM0UlM0NjaXJjbGUgY3g9JzMnIGN5PSczJyByPScuNScvJTNFJTNDL3N2ZyUzRVwiKSwgXCIjXCIsIFwiJTIzXCIpICFkZWZhdWx0O1xuXG5cbi8vIERyb3Bkb3duc1xuLy9cbi8vIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuJGRyb3Bkb3duLW1pbi13aWR0aDogICAgICAgICAgICAgMTByZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1tYXJnaW4tdG9wOiAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICByZ2JhKCRibGFjaywuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm94LXNoYWRvdzogICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssLjE3NSkgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bi1iYWNrZHJvcDogIDk5MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICgkc3BhY2VyIC8gMikgIWRlZmF1bHQ7XG5cbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLC41KSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ob3Zlci1jb2xvcjogICAgICAgICAgIHJnYmEoJHdoaXRlLC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICByZ2JhKCR3aGl0ZSwxKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLC4yNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlci1iZzogc3RyLXJlcGxhY2UodXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2NoYXJzZXQ9dXRmOCwlM0Nzdmcgdmlld0JveD0nMCAwIDMyIDMyJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNFJTNDcGF0aCBzdHJva2U9JyN7JG5hdmJhci1pbnZlcnNlLWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgOGgyNE00IDE2aDI0TTQgMjRoMjQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGVyLWJvcmRlcjogICAgICAgIHJnYmEoJHdoaXRlLC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssLjUpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjogICAgICAgICAgcmdiYSgkYmxhY2ssLjcpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I6ICAgICAgICAgcmdiYSgkYmxhY2ssLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssLjMpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJnOiBzdHItcmVwbGFjZSh1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGY4LCUzQ3N2ZyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM0UlM0NwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgZD0nTTQgOGgyNE00IDE2aDI0TTQgMjRoMjQnLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXI6ICAgICAgIHJnYmEoJGJsYWNrLC4xKSAhZGVmYXVsdDtcblxuLy8gTmF2c1xuXG4kbmF2LWl0ZW0tbWFyZ2luOiAgICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJG5hdi1pdGVtLWlubGluZS1zcGFjZXI6ICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAuNWVtIDFlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAgICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjEyNSkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogJGJvZHktYmcgIWRlZmF1bHQ7XG5cbiRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1jb2xvcjogJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWJnOiAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuXG4vLyBQYWdpbmF0aW9uXG5cbiRwYWdpbmF0aW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1zbTogICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgICAgMS41cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LWxnOiAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5lLWhlaWdodDogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLyBKdW1ib3Ryb25cblxuJGp1bWJvdHJvbi1wYWRkaW5nOiAgICAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbigkc3RhdGUtc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICAgICAjMzE3MDhmICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgI2Q5ZWRmNyAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkc3RhdGUtaW5mby1iZywgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgZGFya2VuKCRzdGF0ZS13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRzdGF0ZS1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXk6ICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgMXB4ICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXJhZGl1czogICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywuMTI1KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXMtaW5uZXI6IGNhbGMoI3skY2FyZC1ib3JkZXItcmFkaXVzfSAtICN7JGNhcmQtYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRjYXJkLWJnOiAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcmQtbGluay1ob3Zlci1jb2xvcjogICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2FyZC1kZWNrLW1hcmdpbjogICAgICAgICAgKCRncmlkLWd1dHRlci13aWR0aC1iYXNlIC8gMikgIWRlZmF1bHQ7XG5cbiRjYXJkLWNvbHVtbnMtY291bnQ6ICAgICAgICAzICFkZWZhdWx0O1xuJGNhcmQtY29sdW1ucy1nYXA6ICAgICAgICAgIDEuMjVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1jb2x1bW5zLW1hcmdpbjogICAgICAgJGNhcmQtc3BhY2VyLXkgIWRlZmF1bHQ7XG5cblxuLy8gVG9vbHRpcHNcblxuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteTogICAgICAgICAgIDNweCAhZGVmYXVsdDtcbiR0b29sdGlwLXBhZGRpbmcteDogICAgICAgICAgIDhweCAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgIDNweCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy8gUG9wb3ZlcnNcblxuJHBvcG92ZXItaW5uZXItcGFkZGluZzogICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgMCA1cHggMTBweCByZ2JhKCRibGFjaywuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci10aXRsZS1wYWRkaW5nLXk6ICAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcblxuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXg6ICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJHBvcG92ZXItY29udGVudC1wYWRkaW5nLXk6ICAgICAgICAgICA5cHggIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMXB4KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZS1pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIC4wNSkgIWRlZmF1bHQ7XG5cblxuLy8gQmFkZ2VzXG5cbiRiYWRnZS1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGJhZGdlLXByaW1hcnktYmc6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYmFkZ2Utc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRiYWRnZS1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJhZGdlLXdhcm5pbmctYmc6ICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYmFkZ2UtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluay1ob3Zlci1jb2xvcjogICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC1zaXplOiAgICAgICAgICAgICA3NSUgIWRlZmF1bHQ7XG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLXNtLXVwLW1hcmdpbi15OiAzMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgcmdiYSgkYmxhY2ssLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LXhzLWJveC1zaGFkb3c6ICAgIDAgM3B4IDlweCByZ2JhKCRibGFjaywuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1zbS11cC1ib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoJGJsYWNrLC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZzogICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuJG1vZGFsLXRyYW5zaXRpb246ICAgICAgICAgICAgdHJhbnNmb3JtIC4zcyBlYXNlLW91dCAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICRzcGFjZXIteSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtZm9udC1zaXplOiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgIGluc2V0IDAgLjFyZW0gLjFyZW0gcmdiYSgkYmxhY2ssLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAxcyBsaW5lYXIgaW5maW5pdGUgIWRlZmF1bHQ7XG5cbi8vIExpc3QgZ3JvdXBcblxuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywuMTI1KSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci13aWR0aDogICAgICAgICRib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAgICAgIC43NXJlbSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAgJGdyYXktbGlnaHRlc3QgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICAgbGlnaHRlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDUwJSkgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGxpc3QtZ3JvdXAtYmcgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1jb2xvcjogICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtbGluay1hY3RpdmUtY29sb3I6ICAgJGxpc3QtZ3JvdXAtY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWFjdGl2ZS1iZzogICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuJHRodW1ibmFpbC1wYWRkaW5nOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHRodW1ibmFpbC1iZzogICAgICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci13aWR0aDogICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgI2RkZCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLC4wNzUpICFkZWZhdWx0O1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6IDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG5cbi8vIEJyZWFkY3J1bWJzXG5cbiRicmVhZGNydW1iLXBhZGRpbmcteTogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgIFwiL1wiICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjogICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1wcmV2LWljb24tYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNNCAwbC00IDQgNCA0IDEuNS0xLjUtMi41LTIuNSAyLjUtMi41LTEuNS0xLjV6Jy8lM0UlM0Mvc3ZnJTNFXCIpLCBcIiNcIiwgXCIlMjNcIikgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1uZXh0LWljb24tYmc6IHN0ci1yZXBsYWNlKHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0ZjgsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHZpZXdCb3g9JzAgMCA4IDgnJTNFJTNDcGF0aCBkPSdNMS41IDBsLTEuNSAxLjUgMi41IDIuNS0yLjUgMi41IDEuNSAxLjUgNC00LTQtNHonLyUzRSUzQy9zdmclM0VcIiksIFwiI1wiLCBcIiUyM1wiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb246ICAgICAgICAgICB0cmFuc2Zvcm0gLjZzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG5cbi8vIENsb3NlXG5cbiRjbG9zZS1mb250LXNpemU6ICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGNsb3NlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAkd2hpdGUgIWRlZmF1bHQ7XG5cblxuLy8gQ29kZVxuXG4kY29kZS1mb250LXNpemU6ICAgICAgICAgICAgICA5MCUgIWRlZmF1bHQ7XG4kY29kZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbiRjb2RlLXBhZGRpbmcteTogICAgICAgICAgICAgIC4ycmVtICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2JkNDE0NyAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXN0ICFkZWZhdWx0O1xuXG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVzdCAhZGVmYXVsdDtcbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kcHJlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuJHByZS1zY3JvbGxhYmxlLW1heC1oZWlnaHQ6ICAgMzQwcHggIWRlZmF1bHQ7XG4iLCIvKipcbiAqIENvcHlyaWdodCAyMDE1IEdvb2dsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5AaW1wb3J0IFwiLi4vdmFyaWFibGVzXCI7XG5cbi5tZGwtYmFkZ2Uge1xuICBwb3NpdGlvbiA6IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXJnaW4tcmlnaHQ6ICgkYmFkZ2Utc2l6ZSArICRiYWRnZS1wYWRkaW5nKTtcblxuICAmOm5vdChbZGF0YS1iYWRnZV0pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmW2RhdGEtYmFkZ2VdOmFmdGVyIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtYmFkZ2UpO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0oJGJhZGdlLXNpemUgLyAyKTtcbiAgICByaWdodDogLSgkYmFkZ2Utc2l6ZSArICRiYWRnZS1wYWRkaW5nKTtcblxuICAgIC5tZGwtYnV0dG9uICYge1xuICAgICAgdG9wOiAtMTBweDtcbiAgICAgIHJpZ2h0OiAtNXB4O1xuICAgIH1cblxuICAgIGZvbnQtZmFtaWx5OiAkcHJlZmVycmVkX2ZvbnQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gICAgd2lkdGg6ICRiYWRnZS1zaXplO1xuICAgIGhlaWdodDogJGJhZGdlLXNpemU7XG4gICAgYm9yZGVyLXJhZGl1cyA6IDUwJTtcblxuICAgIGJhY2tncm91bmQ6ICRiYWRnZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gIH1cblxuICAmLm1kbC1iYWRnZS0tbm8tYmFja2dyb3VuZCB7XG4gICAgJltkYXRhLWJhZGdlXTphZnRlciB7XG4gICAgICBjb2xvcjogJGJhZGdlLWNvbG9yLWludmVyc2U7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZC1pbnZlcnNlO1xuXG4gICAgICBib3gtc2hhZG93OiAwIDAgMXB4IGdyYXk7XG4gICAgfVxuICB9XG4gICYubWRsLWJhZGdlLS1vdmVybGFwIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICgkYmFkZ2Utc2l6ZSAtICRiYWRnZS1vdmVybGFwKTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAtKCRiYWRnZS1zaXplIC0gJGJhZGdlLW92ZXJsYXApO1xuICAgIH1cbiAgfVxufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuXG4ubWRsLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmb250LXNpemU6ICRjYXJkLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWluLWhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogJGNhcmQtd2lkdGg7XG4gIHotaW5kZXg6ICRjYXJkLXotaW5kZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZC1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubWRsLWNhcmRfX21lZGlhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtaW1hZ2UtcGxhY2Vob2xkZXItY29sb3I7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBwYWRkaW5nLWJveDtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZGwtY2FyZF9fdGl0bGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogJGNhcmQtdGV4dC1jb2xvcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3RyZXRjaDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogJGNhcmQtdmVydGljYWwtcGFkZGluZyAkY2FyZC1ob3Jpem9udGFsLXBhZGRpbmc7XG4gIHBlcnNwZWN0aXZlLW9yaWdpbjogJGNhcmQtdGl0bGUtcGVyc3BlY3RpdmUtb3JpZ2luLXggJGNhcmQtdGl0bGUtcGVyc3BlY3RpdmUtb3JpZ2luLXk7XG4gIHRyYW5zZm9ybS1vcmlnaW46ICRjYXJkLXRpdGxlLXRyYW5zZm9ybS1vcmlnaW4teCAkY2FyZC10aXRsZS10cmFuc2Zvcm0tb3JpZ2luLXk7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgJi5tZGwtY2FyZC0tYm9yZGVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cbi5tZGwtY2FyZF9fdGl0bGUtdGV4dCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogJGNhcmQtdGl0bGUtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGNhcmQtdGl0bGUtdGV4dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNmb3JtLW9yaWdpbjogJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXggJGNhcmQtdGl0bGUtdGV4dC10cmFuc2Zvcm0tb3JpZ2luLXk7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1kbC1jYXJkX19zdWJ0aXRsZS10ZXh0IHtcbiAgZm9udC1zaXplOiAkY2FyZC1zdWJ0aXRsZS1mb250LXNpemU7XG4gIGNvbG9yOiAkY2FyZC1zdWJ0aXRsZS1jb2xvcjtcbiAgbWFyZ2luOiAwO1xufVxuXG4ubWRsLWNhcmRfX3N1cHBvcnRpbmctdGV4dCB7XG4gIGNvbG9yOiAkY2FyZC1zdXBwb3J0aW5nLXRleHQtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAkY2FyZC1zdXBwb3J0aW5nLXRleHQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGNhcmQtc3VwcG9ydGluZy10ZXh0LWxpbmUtaGVpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAkY2FyZC12ZXJ0aWNhbC1wYWRkaW5nICRjYXJkLWhvcml6b250YWwtcGFkZGluZztcbiAgd2lkdGg6IDkwJTtcblxuICAmLm1kbC1jYXJkLS1ib3JkZXIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLm1kbC1jYXJkX19hY3Rpb25zIHtcbiAgZm9udC1zaXplOiAkY2FyZC1hY3Rpb25zLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gIHBhZGRpbmc6IDhweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAmLm1kbC1jYXJkLS1ib3JkZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkY2FyZC1ib3JkZXItY29sb3I7XG4gIH1cbn1cblxuLm1kbC1jYXJkLS1leHBhbmQge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cblxuLm1kbC1jYXJkX19tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTZweDtcbiAgdG9wOiAxNnB4O1xufVxuIiwiLyoqXG4gKiBDb3B5cmlnaHQgMjAxNSBHb29nbGUgSW5jLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuQGltcG9ydCBcIi4uL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcIi4uL21peGluc1wiO1xuXG4ubWRsLWRhdGEtdGFibGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogJGRhdGEtdGFibGUtZGl2aWRlcnM7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGZvbnQtc2l6ZTogJGRhdGEtdGFibGUtZm9udC1zaXplO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB1bnF1b3RlKFwicmdiKCN7JGNvbG9yLXdoaXRlfSlcIik7XG5cbiAgdGhlYWQge1xuICAgIHBhZGRpbmctYm90dG9tOiAzcHg7XG5cbiAgICAubWRsLWRhdGEtdGFibGVfX3NlbGVjdCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHtcbiAgICB0ciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6ICRkYXRhLXRhYmxlLXJvdy1oZWlnaHQ7XG4gICAgICBAaW5jbHVkZSBtYXRlcmlhbC1hbmltYXRpb24tZGVmYXVsdCgwLjI4cyk7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBiYWNrZ3JvdW5kLWNvbG9yO1xuXG4gICAgICAmLmlzLXNlbGVjdGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGEtdGFibGUtc2VsZWN0aW9uLWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhdGEtdGFibGUtaG92ZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGQsIHRoIHtcbiAgICBwYWRkaW5nOiAwICRkYXRhLXRhYmxlLWNvbHVtbi1wYWRkaW5nIDEycHggJGRhdGEtdGFibGUtY29sdW1uLXBhZGRpbmc7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAyNHB4O1xuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDI0cHg7XG4gICAgfVxuICB9XG5cbiAgdGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogJGRhdGEtdGFibGUtcm93LWhlaWdodDtcbiAgICBib3JkZXItdG9wOiAkZGF0YS10YWJsZS1kaXZpZGVycztcbiAgICBib3JkZXItYm90dG9tOiAkZGF0YS10YWJsZS1kaXZpZGVycztcbiAgICBwYWRkaW5nLXRvcDogJGRhdGEtdGFibGUtY2VsbC10b3A7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIC5tZGwtZGF0YS10YWJsZV9fc2VsZWN0IHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgdGgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIEBpbmNsdWRlIHR5cG8tYm9keS0yKCk7XG4gICAgaGVpZ2h0OiAkZGF0YS10YWJsZS1yb3ctaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGRhdGEtdGFibGUtaGVhZGVyLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGRhdGEtdGFibGUtaGVhZGVyLWNvbG9yO1xuICAgIHBhZGRpbmctYm90dG9tOiA4cHg7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICYubWRsLWRhdGEtdGFibGVfX2hlYWRlci0tc29ydGVkLWFzY2VuZGluZyxcbiAgICAmLm1kbC1kYXRhLXRhYmxlX19oZWFkZXItLXNvcnRlZC1kZXNjZW5kaW5nIHtcbiAgICAgIGNvbG9yOiAkZGF0YS10YWJsZS1oZWFkZXItc29ydGVkLWNvbG9yO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBAaW5jbHVkZSB0eXBvLWljb247XG4gICAgICAgIGZvbnQtc2l6ZTogJGRhdGEtdGFibGUtaGVhZGVyLXNvcnQtaWNvbi1zaXplO1xuICAgICAgICBjb250ZW50OiBcIlxcZTVkOFwiO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHN1YjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb2xvcjogJGRhdGEtdGFibGUtaGVhZGVyLXNvcnRlZC1pY29uLWhvdmVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYubWRsLWRhdGEtdGFibGVfX2hlYWRlci0tc29ydGVkLWRlc2NlbmRpbmc6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlNWRiXCI7XG4gICAgfVxuICB9XG59XG5cbi5tZGwtZGF0YS10YWJsZV9fc2VsZWN0IHtcbiAgd2lkdGg6IDE2cHg7XG59XG5cbi5tZGwtZGF0YS10YWJsZV9fY2VsbC0tbm9uLW51bWVyaWMubWRsLWRhdGEtdGFibGVfX2NlbGwtLW5vbi1udW1lcmljIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiIsIi8qKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbkBpbXBvcnQgXCIuLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9taXhpbnNcIjtcblxuLm1kbC1zaGFkb3ctLTJkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy0yZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTNkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy0zZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTRkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy00ZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTZkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy02ZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLThkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy04ZHAoKTtcbn1cblxuLm1kbC1zaGFkb3ctLTE2ZHAge1xuICBAaW5jbHVkZSBzaGFkb3ctMTZkcCgpO1xufVxuXG4ubWRsLXNoYWRvdy0tMjRkcCB7XG4gIEBpbmNsdWRlIHNoYWRvdy0yNGRwKCk7XG59XG4iLCIvLyBvdmVycmlkZXMgbWRsXG5hZGRyZXNzIHtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59IiwiXG5cbi8vIFxuQG1peGluIGRpdmlkZXIoKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAmLmRpdmlkZXItc29saWQge1xuICAgICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgICBib3JkZXItY29sb3I6ICRzdGF0ZS1kZWZhdWx0LWJvcmRlcjtcbiAgICB9XG4gICAgJi5kaXZpZGVyLWRhc2hlZCB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogZGFzaGVkO1xuICAgICAgICBib3JkZXItY29sb3I6ICRzdGF0ZS1kZWZhdWx0LWJvcmRlcjtcbiAgICB9XG4gICAgJi5kaXZpZGVyLWRvdHRlZCB7XG4gICAgICAgIGJvcmRlci1zdHlsZTogZG90dGVkO1xuICAgICAgICBib3JkZXItY29sb3I6ICRzdGF0ZS1kZWZhdWx0LWJvcmRlcjtcbiAgICB9XG59XG4uZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgZGl2aWRlcigpO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5kaXZpZGVyLXhzIHtcbiAgICBtYXJnaW4tdG9wOiAzcHg7IFxuICAgIG1hcmdpbi1ib3R0b206IDNweDsgXG59XG4uZGl2aWRlci1zbSB7IFxuICAgIG1hcmdpbi10b3A6IDVweDsgXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4OyBcbn1cbi5kaXZpZGVyLW1kIHsgXG4gICAgbWFyZ2luLXRvcDogMTVweDsgXG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDsgXG59XG4uZGl2aWRlci1sZyB7IFxuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5kaXZpZGVyLXhsIHsgXG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuLmRpdmlkZXIteHhsIHsgXG4gICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xufVxuXG4vLyBcbi5zcGFjZSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDZweDtcbn1cbi5zcGFjZS1tZCB7IHBhZGRpbmc6IDE1cHg7IH1cbi5zcGFjZS1sZyB7IHBhZGRpbmc6IDI1cHg7IH1cblxuLy8gXG5zcGFuLmJsb2NrIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cbi5uby1tYXJnaW4geyBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuLm5vLW1hcmdpbi1oIHtcbiAgICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xufVxuLm5vLW1hcmdpbi10b3AgeyBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi5uby1tYXJnaW4tYm90dG9tIHsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG4ubm8tbWFyZ2luLWxlZnQgeyBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50OyB9XG4ubm8tbWFyZ2luLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cblxuLm5vLWJvcmRlciB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4ubm8tYm9yZGVyLXJhZGl1cyB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5uby1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4ubm8tcGFkZGluZy1oIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG4ubm8tc2hhZG93IHtcbiAgICBib3gtc2hhZG93OiAwO1xufVxuLmZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuLnB1bGwtaW4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTVweDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xufVxuXG5cbi8vIFxuLm1hcmdpbi1iLWxnIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufSIsIi8vIHJnYmEoIzAwMCwgLjAzNSkgLy8gI2VlZVxuXG4kaW1hZ2VfcGF0aDogICAgICAgICAgICBcIi4uL2Fzc2V0cy9pbWFnZXMvXCIgIWRlZmF1bHQ7XG4kaW1hZ2VfcGF0aGRlbW86ICAgICAgICBcIi4uL2Fzc2V0cy9pbWFnZXMtZGVtby9cIiAhZGVmYXVsdDtcblxuXG4kc2tpbjogICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRza2luLWxpZ2h0OiAgICAgICAgICAgICM0MkE1RjUgIWRlZmF1bHQ7IC8vIEJsdWUgNDAwXG4kZGFyazogICAgICAgICAgICAgICAgICAjMTIxMzE2Oy8vIzFkMjAyNyFkZWZhdWx0Oy8vLyMxODE5MWQhZGVmYXVsdDsvLyMzMzNDNDQgIWRlZmF1bHQ7IC8vIGRhcmtlbiBCbHVlIDEwMCA+ICMzNDNFNDZcbiRkYXJrLWxpZ2h0OiAgICAgICAgICAgIGxpZ2h0ZW4oJGRhcmssIDUlKSAhZGVmYXVsdDtcbiRicmlnaHQ6ICAgICAgICAgICAgICAgICNmYWZhZmEgIWRlZmF1bHQ7XG4kd2hpdGU6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktbGlnaHQyOiAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRibGFkZS1jb2xvcjogICAgICAgICAgICAjZmYwMDQ1ICFkZWZhdWx0O1xuXG4kcGFnZS1iZzogICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0OyAvLyBiYWNrZ3JvdW5kIGNvbG9yIG9mIC5hcHAtcGFnZS1jb250YWluZXJcblxuXG4kc3RhdGUtZGVmYXVsdC1iZzogICAgICAgICAgICAgIHJnYmEoMCwwLDAsIC4xKSAhZGVmYXVsdDsgLy8gYWxzbzogcGFnaW5hdGlvbiBiZ1xuJHN0YXRlLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtZGVmYXVsdC1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuJHN0YXRlLWRlZmF1bHQtYm9yZGVyLWxpZ2h0OiAgICAjZjNmM2YzICFkZWZhdWx0O1xuXG4vLz09IFR5cG9ncmFwaHlcbiRmb250LXdlaWdodC10aGluOiAgICAgIDMwMCAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb25kZW5zZWQ6IFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIlJvYm90b1wiLCBcIkhlbHZldGljYSBOZXVlXCIsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0XG5cblxuLy8gVUlcbiRjb250YWluZXJfZmx1aWRfbWF4d2lkdGg6ICAgICAgMTQwMHB4O1xuXG5cbi8vIENhcmRzXG4kY2FyZC1wYWRkaW5nOiAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtY2FyZDogICAgMnB4ICFkZWZhdWx0O1xuXG4vLyBHcmlkIFZhcmlhYmxlc1xuJGVsZW1lbnQtdG9wLW1hcmdpbjogICAgICAgICgkZ3JpZC1ndXR0ZXItd2lkdGgtYmFzZS8zKSAhZGVmYXVsdDtcbiRlbGVtZW50LWJvdHRvbS1tYXJnaW46ICAgICAoJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2UqMikvMyAhZGVmYXVsdDtcblxuLy8gVGFibGVzXG4kdGhlbWUtZGFyay1kYXRhLXRhYmxlLWhlYWRlci1jb2xvcjogcmdiYSgjZmZmLCAwLjU0KTtcblxuXG4vLyBib3ggc2hhZG93XG5AbWl4aW4gei1kZXB0aC0xIHtcbiAgICBib3gtc2hhZG93OiAwIDJweCA1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTYpLCAwIDJweCAxMHB4IDAgcmdiYSgwLCAwLCAwLCAwLjEyKTtcbn1cbkBtaXhpbiB6LWRlcHRoLTEtaGFsZiB7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMTFweCAwIHJnYmEoMCwgMCwgMCwgMC4xOCksIDAgNHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuQG1peGluIHotZGVwdGgtMiB7XG4gICAgYm94LXNoYWRvdzogMCA4cHggMTdweCAwIHJnYmEoMCwgMCwgMCwgMC4yKSwgMCA2cHggMjBweCAwIHJnYmEoMCwgMCwgMCwgMC4xOSk7XG59XG5AbWl4aW4gei1kZXB0aC0zIHtcbiAgICBib3gtc2hhZG93OiAwIDEycHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMC4yNCksIDAgMTdweCA1MHB4IDAgcmdiYSgwLCAwLCAwLCAwLjE5KTtcbn1cbkBtaXhpbiB6LWRlcHRoLTQge1xuICAgIGJveC1zaGFkb3c6IDAgMTZweCAyOHB4IDAgcmdiYSgwLCAwLCAwLCAwLjIyKSwgMCAyNXB4IDU1cHggMCByZ2JhKDAsIDAsIDAsIDAuMjEpO1xufVxuQG1peGluIHotZGVwdGgtNSB7XG4gICAgYm94LXNoYWRvdzogMCAyN3B4IDI0cHggMCByZ2JhKDAsIDAsIDAsIDAuMiksIDAgNDBweCA3N3B4IDAgcmdiYSgwLCAwLCAwLCAwLjIyKTtcbn1cbiIsIlxuLmFydGljbGUtdGl0bGUsXG4uYXJ0aWNsZS10aXRsZS1zdHlsZSB7XG4gICAgZm9udC1zaXplOiAyNHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgbWFyZ2luOiAuNmVtIDA7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICYuY29sb3ItZGFyayB7XG4gICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICB9XG59XG5cbi8vXG4uY2hhcHRlciB7XG4gICAgLmFydGljbGUge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICAgICAgICAuYXJ0aWNsZS10aXRsZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMzBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5hcnRpY2xlLWRhcmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLDAsMCwuMDE1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYXJ0aWNsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjExNzY0Nyk7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjExNzY0Nyk7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYucGFkZGluZy1sZy12IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDc1cHggMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5hcnRpY2xlLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICAgIG1hcmdpbjogNDhweCAwIDMwcHg7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTE3NjQ3KTtcbiAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbn1cblxuLy8gSGVyb1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaGVybyB7XG4gICAgcGFkZGluZzogNzBweCAwIDc1cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmhlcm8tdGl0bGV7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG59XG4uaGVyby10aXRsZSB7XG4gICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogNDVweDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXRoaW47XG4gICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5oZXJvLXRhZ2xpbmUge1xuICAgIG1hcmdpbjogMTBweCBhdXRvIDMwcHg7XG4gICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC10aGluO1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMzJweDtcbn1cblxuLy8gRGFyayB0aGVtZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4udGhlbWUtZ3JheSxcbi50aGVtZS1kYXJrIHtcbiAgICAuaGVyby10aXRsZSxcbiAgICAuaGVyby10YWdsaW5lIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZV9kYXJrX3RleHRfY29sb3I7XG4gICAgfVxuXG4gICAgLmFydGljbGUtdGl0bGUge1xuICAgICAgICAmLmNvbG9yLWRhcmsge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZV9kYXJrX3RleHRfY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuY29udGFpbmVyLWZsdWlkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAmLnBhZGRpbmctbGctaCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLXdpZHRoLWJhc2U7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRncmlkLWd1dHRlci13aWR0aC1iYXNlO1xuICAgIH1cbiAgICAmLndpdGgtbWF4d2lkdGgge1xuICAgICAgICBtYXgtd2lkdGg6ICRjb250YWluZXJfZmx1aWRfbWF4d2lkdGg7XG4gICAgfVxuICAgICYud2l0aC1tYXh3aWR0aC1sZyB7XG4gICAgICAgIG1heC13aWR0aDogbWFwLWdldCgkY29udGFpbmVyLW1heC13aWR0aHMsIGxnKTtcbiAgICB9XG4gICAgJi53aXRoLW1heHdpZHRoLW1kIHtcbiAgICAgICAgbWF4LXdpZHRoOiBtYXAtZ2V0KCRjb250YWluZXItbWF4LXdpZHRocywgbGcpO1xuICAgIH1cbiAgICAmLndpdGgtbWF4d2lkdGgtc20ge1xuICAgICAgICBtYXgtd2lkdGg6IG1hcC1nZXQoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBtZCk7XG4gICAgfVxuICAgICYubm8tYnJlYWRjcnVtYnMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuICAgIH1cbn0iLCJcbi8vIEluY2x1ZGluZzogR3JhZGllbnQgdGV4dCwgRHJvcGNhcCwgSGlnaGxpZ2h0LCBMaXN0LCBkaXZpZGVyL3NwYWNlLCBiYWNrZ3JvdW5kXG5cblxuLy8gR3JhZGllbnQgdGV4dFxuLmdyYWRpZW50LXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTUwcHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBjb2xvcjogJGJyYW5kLXByaW1hcnk7IC8vIGZhbGxiYWNrXG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoOTJkZWcsICNmYjgzZmEsICMwMGFjZWQpO1xuICAgIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAgIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnRleHQtc21hbGwgeyBmb250LXNpemU6IDEycHg7IH1cbi50ZXh0LW5vcm1hbCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlOyB9XG4udGV4dC1odWdlIHsgZm9udC1zaXplOiA3MnB4OyB9XG4udGV4dC1sYXJnZSB7IGZvbnQtc2l6ZTogNTBweDsgfVxuLnRleHQtdGhpbiB7IGZvbnQtd2VpZ2h0OiAzMDA7IH1cbi50ZXh0LXVsdHJhbGlnaHQgeyBmb250LXdlaWdodDogMTAwOyB9XG5cbi5ib2xkIHtcbiAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xufVxuXG4uY29sb3ItcHJpbWFyeSxcbmEuY29sb3ItcHJpbWFyeSB7IFxuICAgIGNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAmOmhvdmVyIHsgY29sb3I6ICRicmFuZC1wcmltYXJ5OyB9XG59XG4uY29sb3Itc3VjY2VzcyxcbmEuY29sb3Itc3VjY2VzcyB7IFxuICAgIGNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAmOmhvdmVyIHsgY29sb3I6ICRicmFuZC1zdWNjZXNzOyB9XG59XG4uY29sb3ItaW5mbyxcbmEuY29sb3ItaW5mbyB7IFxuICAgIGNvbG9yOiAkYnJhbmQtaW5mbztcbiAgICAmOmhvdmVyIHsgY29sb3I6ICRicmFuZC1pbmZvOyB9XG59XG4uY29sb3ItaW5mby1hbHQsXG5hLmNvbG9yLWluZm8tYWx0IHsgXG4gICAgY29sb3I6ICRicmFuZC1pbmZvLWFsdDtcbiAgICAmOmhvdmVyIHsgY29sb3I6ICRicmFuZC1pbmZvLWFsdDsgfVxufVxuLmNvbG9yLXdhcm5pbmcsXG5hLmNvbG9yLXdhcm5pbmcgeyBcbiAgICBjb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkYnJhbmQtd2FybmluZzsgfVxufVxuLmNvbG9yLWRhbmdlcixcbmEuY29sb3ItZGFuZ2VyIHsgXG4gICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkYnJhbmQtZGFuZ2VyOyB9XG59XG4uY29sb3ItZGFyayxcbmEuY29sb3ItZGFyayB7IFxuICAgIGNvbG9yOiAkZGFyaztcbiAgICAmOmhvdmVyIHsgY29sb3I6ICRkYXJrOyB9XG59XG4uY29sb3Itd2hpdGUsXG5hLmNvbG9yLXdoaXRlIHsgXG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAmOmhvdmVyIHsgY29sb3I6ICR3aGl0ZTsgfVxufVxuLmNvbG9yLWdyYXktZGFya2VyLFxuYS5jb2xvci1ncmF5LWRhcmtlciB7IFxuICAgIGNvbG9yOiAkZ3JheS1kYXJrZXI7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkZ3JheS1kYXJrZXI7IH1cbn1cbi5jb2xvci1ncmF5LWRhcmssXG5hLmNvbG9yLWdyYXktZGFyayB7IFxuICAgIGNvbG9yOiAkZ3JheS1kYXJrO1xuICAgICY6aG92ZXIgeyBjb2xvcjogJGdyYXktZGFyazsgfVxufVxuLmNvbG9yLWdyYXksXG5hLmNvbG9yLWdyYXkgeyBcbiAgICBjb2xvcjogJGdyYXk7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkZ3JheTsgfVxufVxuLmNvbG9yLWdyYXktbGlnaHQsXG5hLmNvbG9yLWdyYXktbGlnaHQgeyBcbiAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkZ3JheS1saWdodDsgfVxufVxuLmNvbG9yLWdyYXktbGlnaHRlcixcbmEuY29sb3ItZ3JheS1saWdodGVyIHsgXG4gICAgY29sb3I6ICRncmF5LWxpZ2h0ZXI7XG4gICAgJjpob3ZlciB7IGNvbG9yOiAkZ3JheS1saWdodGVyOyB9XG59XG5cblxuLy8gRHJvcGNhcFxuLmRyb3BjYXAsXG4uZHJvcGNhcC1zcXVhcmUsXG4uZHJvcGNhcC1jaXJjbGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7ICAgICAgICBcbn1cblxuLmRyb3BjYXAge1xuICAgIGZvbnQtc2l6ZTogMy4xZW07XG59XG5cbi5kcm9wY2FwLXNxdWFyZSxcbi5kcm9wY2FwLWNpcmNsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHRlcjtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgd2lkdGg6IDM2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZHJvcGNhcC1zcXVhcmUge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzOyAgICAgICAgXG4gICAgZm9udC1zaXplOiAyLjNlbTtcbn1cblxuLmRyb3BjYXAtY2lyY2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7ICAgICAgICBcbiAgICBmb250LXNpemU6IDEuNzhlbTtcbn1cblxuLmRyb3BjYXAuY29sb3JlZCB7XG4gICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xufVxuXG4uZHJvcGNhcC1zcXVhcmUuY29sb3JlZCxcbi5kcm9wY2FwLWNpcmNsZS5jb2xvcmVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICBjb2xvcjogJHdoaXRlO1xufVxuXG5cbi8vIEhpZ2h0bGlnaHRcbi51aS1oaWdobGlnaHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7ICAgICAgICBcbiAgICBwYWRkaW5nOiAycHggNXB4O1xuICAgICYuY29sb3JlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgIH1cbn1cblxuXG5cbiIsIlxuLy8gbWl4aW5cbkBtaXhpbiBidXR0b24taWNvbi12YXJpYW50KCRzaXplKSB7XG4gICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICB3aWR0aDogJHNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRzaXplO1xuICAgIGkgeyBsaW5lLWhlaWdodDogJHNpemU7IH1cbiAgICAmLmJ0bi1pY29uLWxpbmVkIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICgkc2l6ZSAtIDRweCk7XG4gICAgICAgIGkgeyBsaW5lLWhlaWdodDogKCRzaXplIC0gNHB4KTsgfVxuXG4gICAgICAgICYuYnRuLWljb24tdGhpbiB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogKCRzaXplIC0gMnB4KTtcbiAgICAgICAgICAgIGkgeyBsaW5lLWhlaWdodDogKCRzaXplIC0gMnB4KTsgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc29jaWFsLWJ1dHRvbi12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDglKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKVxuICAgIH1cbn1cblxuXG5cbi8vIG1ha2Ugc3VyZSBpdCBvdmVycmlkZXMgbWF0ZXJpYWwyIHN0eWxlc1xuYSxcbmJ1dHRvbiB7XG4gICAgJi5idG4tdy14cyB7IG1pbi13aWR0aDogODBweDsgfVxuICAgICYuYnRuLXctc20geyBtaW4td2lkdGg6IDEwMHB4OyB9XG4gICAgJi5idG4tdy1tZCB7IG1pbi13aWR0aDogMTM1cHg7IH1cbiAgICAmLmJ0bi13LWxnIHsgbWluLXdpZHRoOiAxNjBweDsgfVxuXG4gICAgJi5idG4tcm91bmQgeyBib3JkZXItcmFkaXVzOiAyZW07IH1cbiAgICAmLmJ0bi1nYXAgeyBtYXJnaW46IDVweDsgfVxuICAgICYuYnRuLWdhcC1oIHsgbWFyZ2luOiAwIDVweDsgfVxuICAgICYuYnRuLWdhcC12IHsgbWFyZ2luOiAwIDAgNXB4OyB9XG59XG5cblxuLy9cbi5idG4taWNvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uLXZhcmlhbnQoMzVweCk7XG59XG4uYnRuLWljb24tcm91bmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5idG4taWNvbi1zbSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCgzMHB4KTtcbn1cbi5idG4taWNvbi1tZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCg0NXB4KTtcbiAgICBmb250LXNpemU6IDE4cHg7XG59XG4uYnRuLWljb24tbGcge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1pY29uLXZhcmlhbnQoNjVweCk7XG4gICAgZm9udC1zaXplOiAyOHB4O1xufVxuLmJ0bi1pY29uLWxnLWFsdCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCg3MHB4KTtcbn1cbi5idG4taWNvbi14bCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWljb24tdmFyaWFudCg4MHB4KTtcbn1cblxuXG4vLyBzb2NpYWwgYnV0dG9uc1xuLmJ0bi10d2l0dGVyIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCMwMGM3ZjcsICMwMGM3ZjcpOyB9XG4uYnRuLWZhY2Vib29rIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCMzMzUzOTcsICMzMzUzOTcpOyB9XG4uYnRuLWdwbHVzLFxuLmJ0bi1nb29nbGUtcGx1cyB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjZGQ0YTM4LCAjZGQ0YTM4KTsgfVxuLmJ0bi1pbnN0YWdyYW0geyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoIzgyNjg1QSwgIzgyNjg1QSk7IH1cbi5idG4tdmltZW8geyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoIzYzODc5QywgIzYzODc5Qyk7IH1cbi5idG4tZmxpY2tyIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCMwMDYxREIsICMwMDYxREIpOyB9XG4uYnRuLWdpdGh1YiB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjM0IzQjNCLCAjM0IzQjNCKTsgfVxuLmJ0bi1waW50ZXJlc3QgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoI0Q3MzUzMiwgI0Q3MzUzMik7IH1cbi5idG4tdHVtYmxyIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCM1ODY5ODAsICM1ODY5ODApOyB9XG4uYnRuLWxpbmtlZGluIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCMwMThGQUYsICMwMThGQUYpOyB9XG4uYnRuLWRyaWJiYmxlIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCNFQTczQTAsICNFQTczQTApOyB9XG4uYnRuLXN0dW1ibGV1cG9uIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCNFQTRCMjQsICNFQTRCMjQpOyB9XG4uYnRuLWxhc3RmbSB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjQjgwNjM4LCAjQjgwNjM4KTsgfVxuLmJ0bi1ldmVybm90ZSB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjM0JBQjI3LCAjM0JBQjI3KTsgfVxuLmJ0bi1za3lwZSB7IEBpbmNsdWRlIHNvY2lhbC1idXR0b24tdmFyaWFudCgjMDBCMEY2LCAjMDBCMEY2KTsgfVxuLmJ0bi1zb3VuZGNsb3VkIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCMwMDY2RkYsICMwMDY2RkYpOyB9XG4uYnRuLWJlaGFuY2UgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoI0I4MDYzOCwgI0I4MDYzOCk7IH1cbi5idG4tcnNzIHsgQGluY2x1ZGUgc29jaWFsLWJ1dHRvbi12YXJpYW50KCNGNzk2MzgsICNGNzk2MzgpOyB9XG4uYnRuLXlvdXR1YmUgeyBAaW5jbHVkZSBzb2NpYWwtYnV0dG9uLXZhcmlhbnQoI0NDMTgxRSwgI0NDMTgxRSk7IH1cblxuXG5cbi8vIERhcmsgdGhlbWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4udGhlbWUtZ3JheSxcbi50aGVtZS1kYXJrIHtcbiAgICAuYnRuLWRlZmF1bHQsXG4gICAgLmJ0bi1zZWNvbmRhcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCNmZmYsIC4wNSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgjMDAwLCAuMTUpO1xuICAgICAgICBjb2xvcjogJHRoZW1lX2RhcmtfdGV4dF9jb2xvcjtcbiAgICB9XG59XG4iLCJcblxuLy8gZmxpcCBzY3JvbGwgKFB1cmUgQ1NTKSwgdGhhbmtzIHRvIGh0dHA6Ly9lbHZlcnkubmV0L2RlbW8vcmVzcG9uc2l2ZS10YWJsZXMvI2ZsaXAtc2Nyb2xsXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgLnRhYmxlLWZsaXAtc2Nyb2xsIHtcbiAgICAgICAgLmNmOmFmdGVyIHsgdmlzaWJpbGl0eTogaGlkZGVuOyBkaXNwbGF5OiBibG9jazsgZm9udC1zaXplOiAwOyBjb250ZW50OiBcIiBcIjsgY2xlYXI6IGJvdGg7IGhlaWdodDogMDsgfVxuICAgICAgICAqIGh0bWwgLmNmIHsgem9vbTogMTsgfVxuICAgICAgICAqOmZpcnN0LWNoaWxkK2h0bWwgLmNmIHsgem9vbTogMTsgfVxuICAgICAgICB0YWJsZSB7IHdpZHRoOiAxMDAlOyBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyBib3JkZXItc3BhY2luZzogMDsgfVxuXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7IG1hcmdpbjogMDsgdmVydGljYWwtYWxpZ246IHRvcDsgfVxuICAgICAgICB0aCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICAgICAgdGFibGUgeyBkaXNwbGF5OiBibG9jazsgcG9zaXRpb246IHJlbGF0aXZlOyB3aWR0aDogMTAwJTsgfVxuICAgICAgICB0aGVhZCB7IGRpc3BsYXk6IGJsb2NrOyBmbG9hdDogbGVmdDsgfVxuICAgICAgICB0Ym9keSB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogYXV0bzsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdy14OiBhdXRvOyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG4gICAgICAgIHRoZWFkIHRyIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHsgLy8gYWRkIHRvIEJvb3RzdHJhcCBzdHlsZVxuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZGQ7XG4gICAgICAgIH1cbiAgICAgICAgdGggeyBkaXNwbGF5OiBibG9jazsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICAgICAgdGJvZHkgdHIgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cbiAgICAgICAgdGQgeyBkaXNwbGF5OiBibG9jazsgbWluLWhlaWdodDogMS4yNWVtOyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG5cblxuICAgICAgICAvKiBzb3J0IG91dCBib3JkZXJzICovXG5cbiAgICAgICAgdGggeyBib3JkZXItYm90dG9tOiAwOyBib3JkZXItbGVmdDogMDsgfVxuICAgICAgICB0ZCB7IGJvcmRlci1sZWZ0OiAwOyBib3JkZXItcmlnaHQ6IDA7IGJvcmRlci1ib3R0b206IDA7IH1cbiAgICAgICAgdGJvZHkgdHIgeyBib3JkZXItbGVmdDogMXB4IHNvbGlkICNiYWJjYmY7IH1cbiAgICAgICAgdGg6bGFzdC1jaGlsZCxcbiAgICAgICAgdGQ6bGFzdC1jaGlsZCB7IGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmFiY2JmOyB9XG5cbiAgICAgICAgLy8gb3ZlcnJpZGVzIG1kLWRhdGEtdGFibGVcbiAgICAgICAgLm1kbC1kYXRhLXRhYmxlIHRib2R5IHRyIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8vIERhcmsgdGhlbWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4udGhlbWUtZ3JheSxcbi50aGVtZS1kYXJrIHtcbiAgICAuZm9ybS1jb250cm9sLFxuICAgIC5pbnB1dC1ncm91cC1hZGRvbntcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgjZmZmLCAuMDUpO1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoIzAwMCwgLjE1KTtcbiAgICAgICAgY29sb3I6ICR0aGVtZV9kYXJrX3RleHRfY29sb3I7XG4gICAgfVxuICAgIC5oZWxwLWJsb2NrIHtcbiAgICAgICAgY29sb3I6ICRncmF5LWxpZ2h0O1xuICAgIH1cbn0iLCIuaW5wdXQtcm91bmQge1xuICAgIGJvcmRlci1yYWRpdXM6IDJlbTtcbn1cblxuaW5wdXQuaW5wdXQtcHJpbWFyeSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkc2tpbjtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2tpbjtcbiAgICB9XG59XG5pbnB1dC5pbnB1dC1pbmZvIHtcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC1pbmZvO1xuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1pbmZvO1xuICAgIH1cbn1cbmlucHV0LmlucHV0LXN1Y2Nlc3Mge1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxufVxuaW5wdXQuaW5wdXQtd2FybmluZyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtd2FybmluZztcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtd2FybmluZztcbiAgICB9XG59XG5pbnB1dC5pbnB1dC1kYW5nZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgIH1cbn1cbiIsIi5ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGJveC1zaGFkb3c6IDAgMCAycHggcmdiYSgwLDAsMCwuMTUpO1xuXG4gICAgJi5ib3gtdHJhbnNwYXJlbnQge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5ib3gtZGFyayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjAzKTtcbiAgICB9XG59XG5cbi8vIHB1dCBjb2xvciBpbiAuYm94LWRlZmF1bHQsIHNvIC5iZy14eHggY2FuIG92ZXJyaWRlcyBib3ggY29sb3IgZWFzaWx5XG4uYm94LWRlZmF1bHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xufVxuXG4uYm94LWhlYWRlciB7XG4gICAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yYWRpdXM6ICgkYm9yZGVyLXJhZGl1cyAtIDEpICgkYm9yZGVyLXJhZGl1cyAtIDEpIDAgMDtcbiAgICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICAgIC8vIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ib3gtdG9vbGJhciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogJGNhcmQtc3BhY2VyLXg7XG4gICAgcmlnaHQ6ICRjYXJkLXNwYWNlci14O1xuXG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAkdGV4dC1tdXRlZDtcblxuICAgICAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5ib3gtZGl2aWRlciB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwwLjA4KTtcbiAgICBtYXJnaW46IDAgJGNhcmQtc3BhY2VyLXg7XG59XG5cbi5ib3gtYm9keSB7XG4gICAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXg7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICAmLnBhZGRpbmctbGcge1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgfVxuICAgICYucGFkZGluZy14bCB7XG4gICAgICAgIHBhZGRpbmc6IDYwcHggMTVweDtcbiAgICB9XG4gICAgJi5wYWRkaW5nLWxnLWgge1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDMwcHg7XG4gICAgfVxuICAgICYucGFkZGluZy1sZy12IHtcbiAgICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgIH1cbn1cblxuXG4vLyBUaGVtZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi50aGVtZS1ncmF5IHtcbiAgICAuYm94LWRlZmF1bHQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWVfZ3JheV9ib3hfYmc7XG4gICAgfVxufVxuLnRoZW1lLWRhcmsge1xuICAgIC5ib3gtZGVmYXVsdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZV9kYXJrX2JveF9iZztcbiAgICB9XG59XG5cblxuIiwiQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTFweDtcblxuICAgIGEge1xuICAgICAgICBjb2xvcjogI2NjYztcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxufVxuIiwiLmNhbGwtdG8tYWN0aW9uIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIC5jdGEtaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAyZW0gMDtcbiAgICB9XG4gICAgLmN0YS10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICB9XG4gICAgLmN0YS1idG4ge1xuICAgICAgICBtYXJnaW46IDMwcHggMCAxMHB4O1xuICAgIH1cbiAgICAuY3RhLW11dGVkIHtcbiAgICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuICAgICYuY3RhLWlubGluZSB7XG4gICAgICAgIC5jdGEtdGV4dCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAvLyBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtdGhpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jdGEtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMzBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuY3RhLWZ1bGwtd2lkdGgge1xuICAgICAgICAuY3RhLWlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZlbSAxZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmN0YS1iZy1pbWcge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiByZ2JhKCNmZmYsIC44KTtcbiAgICAgICAgLmN0YS1pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4zNSk7XG4gICAgICAgICAgICBwYWRkaW5nOiA3ZW0gMWVtO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIuY2FsbG91dCB7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgcGFkZGluZzogMjBweDtcbiAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICNlZWU7XG5cbiAgICBoNCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgfVxuXG4gICAgcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi8vIHVzZSByZ2JhIHNvIHRoYXQgYmFja2dyb3VuZC1jb2xvciBhbHNvIHdvcmtzIGZvciBkYXJrIHRoZW1lXG4uY2FsbG91dC1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRicmFuZC1zdWNjZXNzLCAuMDgpOyAvLyAjZjNmYWYzXG4gICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcblxuICAgIGg0IHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgIH0gICBcbn1cblxuLmNhbGxvdXQtaW5mbyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnJhbmQtaW5mbywgLjA1KTsgLy8gI2Y0ZjhmYVxuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWluZm87XG5cbiAgICBoNCB7XG4gICAgICAgIGNvbG9yOiAkYnJhbmQtaW5mbztcbiAgICB9XG59XG5cbi5jYWxsb3V0LXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJyYW5kLXdhcm5pbmcsIC4wOCk7IC8vICNmY2Y4ZjJcbiAgICBib3JkZXItY29sb3I6ICRicmFuZC13YXJuaW5nO1xuXG4gICAgaDQge1xuICAgICAgICBjb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgfVxufVxuXG4uY2FsbG91dC1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGJyYW5kLWRhbmdlciwgLjA1KTsgLy8gI2ZkZjdmN1xuICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLWRhbmdlcjtcblxuICAgIGg0IHtcbiAgICAgICAgY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfVxufVxuXG5cbiIsIi5jYXJkLXdoaXRlIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuXG5cbi8vIFxuYS5pdGVtLWNhcmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDE1cHggcmdiYSgwLDAsMCwgLjEpO1xuICAgIH1cbn1cbi5pdGVtLWNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiAwLjJzIGxpbmVhcjtcblxuICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLmNhcmRfX2ltYWdlIHtcbiAgICAgICAgcGFkZGluZzogMzBweCAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDMwMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4wMzUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgfVxuICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICB9XG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuXG4gICAgLmNhcmRfX2JvZHkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMTVweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG5cbiAgICAuY2FyZF9fcHJpY2Uge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAmLnR5cGUtLXN0cmlrZXRocm91Z2gge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5jYXJkX19ob3Jpem9udGFsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgICAgIC5jYXJkX19pbWFnZSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmRfX2JvZHkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogNDBweCAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5jYXJkX19wcmljZSB7XG4gICAgICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXJkX19kZXNjIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAyNSUgM2VtIDA7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNztcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vLyBEYXJrIHRoZW1lXG4udGhlbWUtZ3JheSxcbi50aGVtZS1kYXJrIHtcbiAgICAuY2FyZC13aGl0ZSB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWVfZGFya190ZXh0X2NvbG9yO1xuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWVfZGFya190ZXh0X2NvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuLnRoZW1lLWdyYXkge1xuICAgIC5jYXJkLXdoaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lX2dyYXlfYm94X2JnO1xuICAgIH1cbn1cbi50aGVtZS1kYXJrIHtcbiAgICAuY2FyZC13aGl0ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZV9kYXJrX2JveF9iZztcbiAgICB9XG59XG4iLCIuZmVhdHVyZS1jYWxsb3V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgY2xlYXI6IGJvdGg7XG5cbiAgICAmLmZlYXR1cmUtY29udGVudC1sZWZ0IHtcbiAgICAgICAgLmNhbGxvdXQtZmVhdHVyZS1jb250ZW50IHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkpIHsgcGFkZGluZy1yaWdodDogMmVtOyB9XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgeGwpKSB7IHBhZGRpbmctcmlnaHQ6IDNlbTsgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYuZmVhdHVyZS1jb250ZW50LXJpZ2h0IHtcbiAgICAgICAgLmNhbGxvdXQtZmVhdHVyZS1jb250ZW50IHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkpIHsgcGFkZGluZy1sZWZ0OiAyZW07IH1cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCB4bCkpIHsgcGFkZGluZy1sZWZ0OiAzZW07IH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuZmVhdHVyZS1jb250ZW50LWNlbnRlciB7XG4gICAgICAgIC5jYWxsb3V0LWZlYXR1cmUtY29udGVudCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDc1JTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1kLWJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDVweCAwO1xuICAgICAgICBtaW4td2lkdGg6IDE1MHB4O1xuICAgIH1cbn1cblxuLmZlYXR1cmUtY2FsbG91dC1jb3Zlcixcbi5mZWF0dXJlLWNhbGxvdXQtaW1hZ2UtcHVsbCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG5cbi5mZWF0dXJlLWNhbGxvdXQtaW1hZ2UtcHVsbCB7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDBcbiAgICB9XG59XG5cbi5jYWxsb3V0LWZlYXR1cmUtY29udGVudCB7XG4gICAgcGFkZGluZzogM2VtIDA7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogNmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNmVtO1xuICAgIH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDhlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDhlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIHhsKSkge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEyZW07XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS45O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgICBsaW5lLWhlaWdodDogMS43NTtcbiAgICAgICAgaHlwaGVuczogbm9uZTtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjtcbiAgICAgICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmZlYXR1cmUtY2FsbG91dC1jb3ZlciB7XG4gICAgJi5oYXMtb3ZlcmxheXtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLC4yNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud2l0aC1tYXh3aWR0aCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMWVtO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIvLyBodHRwczovL2dpdGh1Yi5jb20vZ3VkaC9paG92ZXJcblxuLmloLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zNXMgZWFzZS1pbi1vdXQ7XG4gICAgYSB7XG4gICAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG59XG5cbi5paC1pdGVtLnNxdWFyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAuaW5mbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cblxuLy8gTWF0ZXJpYWwgXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5paC1tYXRlcmlhbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgd2lkdGg6IDEwMCU7IFxuICAgIGhlaWdodDogMTAwJTsgXG5cbiAgICAuaW5mby1tYXNrIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtMjUlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC40cyBjdWJpYy1iZXppZXIoLjQsMCwuMiwxKTtcbiAgICB9XG5cbiAgICAuaW5mby1jb250ZW50IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKC41KTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTAuNWVtOyAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8taW5uZXIge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJnLWNvbG9yLXdoaXRlICsgLmluZm8tY29udGVudCxcbiAgICAuYmctY29sb3Itd2FybmluZyArIC5pbmZvLWNvbnRlbnQge1xuICAgICAgICAuaW5mby1pbm5lciB7XG4gICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM5OTk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhOmhvdmVyIHtcbiAgICAgICAgLmluZm8tY29udGVudCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgfVxuICAgICAgICAuaW5mby1tYXNrIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IC44O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIxKTsgLy8gZm9yIDIwMCozMDAgaW1hZ2VzXG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gU3F1YXJlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0MyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5pbmZvIHtcbiAgICAgICAgaGVpZ2h0OiA2NXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAgcmdiYSgjMDAwLCAuOCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMzVzIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAxMHB4IDAgNHB4O1xuICAgICAgICAgICAgbWFyZ2luOiA0cHggMCAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgY29sb3I6IHJnYmEoI2ZmZiwgLjcpO1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iZy1jb2xvci1wcmltYXJ5IHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYnJhbmQtcHJpbWFyeSwgLjgpfVxuICAgICAgICAmLmJnLWNvbG9yLWluZm8geyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRicmFuZC1pbmZvLCAuOCl9XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWgtaXRlbS5zcXVhcmUuZWZmZWN0My5ib3R0b21fdG9fdG9wIHtcbiAgICAuaW5mbyB7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5paC1pdGVtLnNxdWFyZS5lZmZlY3QzLnRvcF90b19ib3R0b20ge1xuICAgIC5pbmZvIHtcbiAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIH1cblxuICAgIGE6aG92ZXIge1xuICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiXG4kaWNvbl9ib3hfaWNvbl9zaXplOiAyOHB4O1xuJGljb25fYm94X2RpbWVuc2lvbjogNjRweDtcblxuJGljb25fYm94X2xnX2ljb25fc2l6ZTogNDJweDtcbiRpY29uX2JveF9sZ19kaW1lbnNpb246IDk2cHg7XG5cblxuLmljb24tYm94IHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAwIDAgMCA4MHB4O1xuICAgIC5pYm94LWljb24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogJGljb25fYm94X2RpbWVuc2lvbjtcbiAgICAgICAgaGVpZ2h0OiAkaWNvbl9ib3hfZGltZW5zaW9uO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgaSxcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgfVxuICAgICAgICBpLFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgICAgICBmb250LXNpemU6ICRpY29uX2JveF9pY29uX3NpemU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGljb25fYm94X2RpbWVuc2lvbjtcbiAgICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luOiA4cHggMCAwIDA7XG4gICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDI7XG4gICAgfVxuICAgIC5iZWZvcmUtaGVhZGluZyB7IGZvbnQtc2l6ZTogMTRweDsgfVxufVxuXG5cbi8qIEljb24gQm94IC0gSWNvbiBMYXJnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1sZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAwIDExNXB4O1xuICAgICAgICAuaWJveC1pY29uIHtcbiAgICAgICAgICAgIHdpZHRoOiAkaWNvbl9ib3hfbGdfZGltZW5zaW9uO1xuICAgICAgICAgICAgaGVpZ2h0OiAkaWNvbl9ib3hfbGdfZGltZW5zaW9uO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaWNvbl9ib3hfbGdfaWNvbl9zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkaWNvbl9ib3hfbGdfZGltZW5zaW9uO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogSWNvbiBCb3ggLSBJY29uIE91dGxpbmVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmljb24tYm94IHtcbiAgICAmLmlib3gtb3V0bGluZSB7XG4gICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHg7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogSWNvbiBCb3ggLSBJY29uIE91dGxpbmUgTGFyZ2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmljb24tYm94IHtcbiAgICAmLmlib3gtb3V0bGluZSB7XG4gICAgICAgICYuaWJveC1sZyB7XG4gICAgICAgICAgICAuaWJveC1pY29uIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4NnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiBJY29uIEJveCAtIEljb24gUm91bmRlZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1yb3VuZGVkIHtcbiAgICAgICAgLmlib3gtaWNvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgaSxcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogSWNvbiBCb3ggLSBJY29uIFJvdW5kZWQgJiBMYXJnZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1yb3VuZGVkIHtcbiAgICAgICAgJi5pYm94LWxnIHtcbiAgICAgICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaSxcbiAgICAgICAgICAgICAgICBpbWcgeyBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50OyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIEljb24gQm94IC0gTGlnaHQgQmFja2dyb3VuZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1saWdodCB7XG4gICAgICAgIGksXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xuICAgICAgICAgICAgY29sb3I6ICRib2R5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgICYuaWJveC1vdXRsaW5lIHtcbiAgICAgICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI0U1RTVFNTtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaSxcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0U1RTVFNTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaWJveC1sZyB7XG4gICAgICAgICAgICAgICAgLmlib3gtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIGkgeyBsaW5lLWhlaWdodDogODRweDsgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaWJveC1pY29uIGkgeyBsaW5lLWhlaWdodDogNjJweDsgfVxuICAgIH1cbiAgICAmLmlib3gtbGcge1xuICAgICAgICAuaWJveC1pY29uIHtcbiAgICAgICAgICAgIGkgeyBsaW5lLWhlaWdodDogOTZweDsgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBJY29uIEJveCAtIERhcmsgQmFja2dyb3VuZFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1kYXJrIHtcbiAgICAgICAgJi5pYm94LW91dGxpbmUge1xuICAgICAgICAgICAgLmlib3gtaWNvbiB7IGJvcmRlci1jb2xvcjogJGJvZHktY29sb3I7IH1cbiAgICAgICAgfVxuICAgICAgICAuaWJveC1pY29uIHtcbiAgICAgICAgICAgIGksXG4gICAgICAgICAgICBpbWcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1jb2xvcjsgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIEljb24gQm94IC0gQm9yZGVyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLWJveCB7XG4gICAgJi5pYm94LWJvcmRlciB7XG4gICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgaSxcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGkgeyBsaW5lLWhlaWdodDogNjJweCAhaW1wb3J0YW50OyB9XG4gICAgICAgIH1cbiAgICAgICAgJi5pYm94LWxnIC5pYm94LWljb24gaSB7IGxpbmUtaGVpZ2h0OiA5NHB4ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG59XG5cblxuLyogSWNvbiBCb3ggLSBCb3JkZXIgLSBMaWdodFxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1ib3JkZXIge1xuICAgICAgICAmLmlib3gtbGlnaHQge1xuICAgICAgICAgICAgLmlib3gtaWNvbiB7IGJvcmRlci1jb2xvcjogI0U1RTVFNTsgfVxuICAgICAgICAgICAgaSxcbiAgICAgICAgICAgIGltZyB7IGNvbG9yOiAjODg4OyB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIEljb24gQm94IC0gQm9yZGVyIC0gRGFya1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1ib3JkZXIge1xuICAgICAgICAmLmlib3gtZGFyayB7XG4gICAgICAgICAgICAuaWJveC1pY29uIHsgYm9yZGVyLWNvbG9yOiAjMzMzOyB9XG4gICAgICAgICAgICBpLFxuICAgICAgICAgICAgaW1nIHsgY29sb3I6ICRib2R5LWNvbG9yOyB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogSWNvbiBCb3ggLSBQbGFpblxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4uaWNvbi1ib3gge1xuICAgICYuaWJveC1wbGFpbiB7XG4gICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGksXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZyB7IGhlaWdodDogNjRweDsgfVxuICAgICAgICB9XG4gICAgICAgICYuaWJveC1pbWFnZSB7XG4gICAgICAgICAgICAuaWJveC1pY29uIHsgd2lkdGg6IGF1dG87IH1cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuaWJveC1zbWFsbCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDQycHg7XG4gICAgICAgICAgICAuaWJveC1pY29uIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjhweDtcbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC00MnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuaWJveC1sZyB7XG4gICAgICAgICAgICAuaWJveC1pY29uIHtcbiAgICAgICAgICAgICAgICBpIHtmb250LXNpemU6IDcycHg7IH1cbiAgICAgICAgICAgICAgICBpbWcgeyBoZWlnaHQ6IDk2cHg7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmlib3gtbGlnaHQge1xuICAgICAgICAgICAgLmlib3gtaWNvbiB7XG4gICAgICAgICAgICAgICAgaSxcbiAgICAgICAgICAgICAgICBpbWcgeyBjb2xvcjogIzg4ODsgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuaWJveC1kYXJrIHtcbiAgICAgICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgICAgIGksXG4gICAgICAgICAgICAgICAgaW1nIHsgY29sb3I6ICRib2R5LWNvbG9yOyB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLyogSWNvbiBCb3ggLSBDZW50ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmljb24tYm94IHtcbiAgICAmLmlib3gtY2VudGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAmLmlib3gtc21hbGwge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmlib3gtaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIG1hcmdpbjogLjhlbSAwIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKiBJY29uIEJveCAtIFJpZ2h0XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5cbi5pY29uLWJveCB7XG4gICAgJi5pYm94LXJpZ2h0IHtcbiAgICAgICAgcGFkZGluZzogMCA4MHB4IDAgMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICYuaWJveC1sZyB7IHBhZGRpbmctcmlnaHQ6IDExNXB4OyB9XG4gICAgICAgIC5pYm94LWljb24ge1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgICYuaWJveC1wbGFpbiB7XG4gICAgICAgICAgICAmLmlib3gtc21hbGwge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNDJweCAwIDA7XG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAtNDJweCAwIDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIERhcmsgVGhlbWVcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi50aGVtZS1ncmF5LFxuLnRoZW1lLWRhcmsge1xuICAgIC5pY29uLWJveCB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWVfZGFya190ZXh0X2NvbG9yO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qIEJveGVkXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4uYm94LWJvZHkgPiAuaWNvbi1ib3gge1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG4iLCIucHJlbG9hZGVyYmFyIHtcbiAgICB6LWluZGV4OiAkemluZGV4LW1vZGFsLWJhY2tkcm9wO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDRweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtNHB4O1xuXG4gICAgLmJhciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyM2I3ZTU7XG5cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDUwJTtcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGFuaW1hdGlvbjogY2hhbmdlYmFyIDIuMjVzIGluZmluaXRlIDAuNzVzO1xuICAgIH1cbiAgICAmLmFjdGl2ZSAuYmFyIHtcbiAgICAgICAgYW5pbWF0aW9uOiBjaGFuZ2ViYXIgMi4yNXMgaW5maW5pdGU7XG4gICAgfVxuICAgICYuYWN0aXZlIC5iYXI6YmVmb3JlIHtcbiAgICAgICAgYW5pbWF0aW9uOiBtb3ZpbmdiYXIgMC43NXMgaW5maW5pdGU7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIG1vdmluZ2JhciB7XG4gICAgMCUge1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgfVxuICAgIDk5LjklIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICByaWdodDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgfVxufVxuQGtleWZyYW1lcyBjaGFuZ2ViYXIge1xuICAgIDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuICAgIDMzLjMlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgfVxuICAgIDMzLjMzJSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgIH1cbiAgICA2Ni42JSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgIH1cbiAgICA2Ni42NiUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgIH1cbiAgICA5OS45JSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1kYW5nZXI7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICB9XG59IiwiLm1kbC1jYXJkLm1kbC1jYXJkLWZ1bGwtd2lkdGgge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5cbi5jYXJkLXBhbmVsIHtcbiAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1jYXJkO1xuICAgIEBleHRlbmQgLm1kbC1zaGFkb3ctLTJkcDtcbn1cblxuLmNhcmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogJGVsZW1lbnQtdG9wLW1hcmdpbiAwICRlbGVtZW50LWJvdHRvbS1tYXJnaW4gMDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1jYXJkO1xuICAgIEBleHRlbmQgLm1kbC1zaGFkb3ctLTJkcDtcblxuICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAmLmFjdGl2YXRvciB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1hY3Rpb24gPiBhIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZC1wYWRkaW5nO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgIC5jYXJkLWltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1jYXJkICRib3JkZXItcmFkaXVzLWNhcmQgMCAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZC10aXRsZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogJGNhcmQtcGFkZGluZztcbiAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgdGV4dC1zaGFkb3c6IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4yNSk7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAkY2FyZC1wYWRkaW5nO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgJGJvcmRlci1yYWRpdXMtY2FyZCAkYm9yZGVyLXJhZGl1cy1jYXJkO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQ4cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcmQtcHJvZmlsZS1pbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC03MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDkwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnByb2ZpbGUtaW1nLXNtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtNTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnB4OyBcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTZweDtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA1NnB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jYXJkLWJ1dHRvbiAuYnRuLWljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC02NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcmQtYWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgICAgICYubm8tYm9yZGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jYXJkLXJldmVhbCB7XG4gICAgICAgIHBhZGRpbmc6ICRjYXJkLXBhZGRpbmc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIC5jYXJkLXRpdGxlIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICB9XG59XG5cblxuLy8gRGFyayB0aGVtZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi50aGVtZS1ncmF5LFxuLnRoZW1lLWRhcmsge1xuICAgIC5tZGwtY2FyZCB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWVfZGFya190ZXh0X2NvbG9yO1xuICAgIH1cbiAgICAubWRsLWNhcmRfX3N1cHBvcnRpbmctdGV4dCB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWVfZGFya190ZXh0X2NvbG9yO1xuICAgIH1cbn1cbi50aGVtZS1ncmF5IHtcbiAgICAubWRsLWNhcmQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWVfZ3JheV9ib3hfYmc7XG4gICAgfVxufVxuLnRoZW1lLWRhcmsge1xuICAgIC5tZGwtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZV9kYXJrX2JveF9iZztcbiAgICB9XG59IiwiLy8gRGVwZW5kcyBvblxuLy8gKiBodHRwczovL2dldG1kbC5pby9jb21wb25lbnRzL2luZGV4Lmh0bWwjdGFibGVzLXNlY3Rpb25cbi8vICogYm94ZXMgY29tcG9uZW50XG5cbi8vIEFkZCB0byBtZGwtZGF0YS10YWJsZVxuLm1kbC1kYXRhLXRhYmxlIHtcbiAgICAmLm1kbC1kYXRhLXRhYmxlLW5vbi1udW1lcmljIHtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4vLyBtZGwtZGF0YS10YWJsZSBpbiBib3hcbi5ib3gge1xuICAgICYudGFibGUtYm94IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICA+IC5tZGwtZGF0YS10YWJsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG59XG5cblxuLy8gUmVzcG9uc2l2ZSB0YWJsZXNcbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDAuMDElOyAvLyBXb3JrYXJvdW5kIGZvciBJRTkgYnVnIChzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNDgzNylcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkgLSAxKSkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1iYXNlICogMC43NSAqIDFyZW0pO1xuICAgICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgICAgIC8vIFRpZ2h0ZW4gdXAgc3BhY2luZ1xuICAgICAgICA+IC5tZGwtZGF0YS10YWJsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICAvLyBFbnN1cmUgdGhlIGNvbnRlbnQgZG9lc24ndCB3cmFwXG4gICAgICAgICAgICA+IHRoZWFkLFxuICAgICAgICAgICAgPiB0Ym9keSxcbiAgICAgICAgICAgID4gdGZvb3Qge1xuICAgICAgICAgICAgICAgID4gdHIge1xuICAgICAgICAgICAgICAgICAgICA+IHRoLFxuICAgICAgICAgICAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTcGVjaWFsIG92ZXJyaWRlcyBmb3IgdGhlIGJvcmRlcmVkIHRhYmxlc1xuICAgICAgICA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG5cbiAgICAgICAgICAgIC8vIE51a2UgdGhlIGFwcHJvcHJpYXRlIGJvcmRlcnMgc28gdGhhdCB0aGUgcGFyZW50IGNhbiBoYW5kbGUgdGhlbVxuICAgICAgICAgICAgPiB0aGVhZCxcbiAgICAgICAgICAgID4gdGJvZHksXG4gICAgICAgICAgICA+IHRmb290IHtcbiAgICAgICAgICAgICAgICA+IHRyIHtcbiAgICAgICAgICAgICAgICAgICAgPiB0aDpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgICAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgICAgICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIE9ubHkgbnVrZSB0aGUgbGFzdCByb3cncyBib3R0b20tYm9yZGVyIGluIGB0Ym9keWAgYW5kIGB0Zm9vdGAgc2luY2VcbiAgICAgICAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcbiAgICAgICAgICAgIC8vIHJlbW92ZSB0aGUgYm9yZGVyIGFsdG9nZXRoZXIuXG4gICAgICAgICAgICA+IHRib2R5LFxuICAgICAgICAgICAgPiB0Zm9vdCB7XG4gICAgICAgICAgICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgPiB0aCxcbiAgICAgICAgICAgICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuLy8gXG4udGhlbWUtZ3JheSxcbi50aGVtZS1kYXJrIHtcbiAgICAuYm94IHtcbiAgICAgICAgPiAubWRsLWRhdGEtdGFibGUge1xuICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZGFyay1kYXRhLXRhYmxlLWhlYWRlci1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCJpbWcge1xuICAgICYuaW1nMzBfMzAge1xuICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cbiAgICAmLmltZzQwXzQwIHtcbiAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICB9ICAgIFxuICAgICYuaW1nNjRfNjQge1xuICAgICAgICB3aWR0aDogNjRweDtcbiAgICAgICAgaGVpZ2h0OiA2NHB4O1xuICAgIH1cbiAgICAmLmltZzgwXzgwIHtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIGhlaWdodDogODBweDsgICAgICAgIFxuICAgIH1cbn1cbiIsIi5wcmljaW5nLXRhYmxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmNmY2ZjO1xuICAgIGNvbG9yOiAjOTk5O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxnO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oLjI1cyBlYXNlLW91dCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgQGluY2x1ZGUgei1kZXB0aC0xLWhhbGY7XG4gICAgfVxuXG4gICAgaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRncmF5LWxpZ2h0MiwgNSUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14ICRjYXJkLXNwYWNlci15O1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGc7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wcmljaW5nLXByaWNlIHtcbiAgICAgICAgcGFkZGluZzogNDVweCAxNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS1saWdodDI7XG4gICAgICAgIGZvbnQtc2l6ZTogNTZweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXRoaW47XG4gICAgICAgIC5wcmljaW5nLXNpZ24ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIC5wcmljaW5nLXN1YiB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJpY2luZy1sZWFkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBoZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IC42ZW07XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAzcHggI2VmZjBmMztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnByaWNpbmctcGxhbi1kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZzogMWVtO1xuICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiBmb290ZXIge1xuICAgICAgICBwYWRkaW5nOiAyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBjb2xvclxuICAgICYucHJpY2luZy10YWJsZS1wcmltYXJ5IHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtcHJpbWFyeSwgNSUpO1xuICAgICAgICB9XG4gICAgICAgIC5wcmljaW5nLXByaWNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAgJi5wcmljaW5nLXRhYmxlLXNlY29uZGFyeSxcbiAgICAmLnByaWNpbmctdGFibGUtaW5mbyB7XG4gICAgICAgIGhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJyYW5kLWluZm8sIDUlKTtcbiAgICAgICAgfVxuICAgICAgICAucHJpY2luZy1wcmljZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtaW5mbztcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAkYnJhbmQtaW5mbztcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA2cHggc29saWQgJGJyYW5kLWluZm87XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5wcmljaW5nLXRhYmxlLXN1Y2Nlc3Mge1xuICAgICAgICBoZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRicmFuZC1zdWNjZXNzLCA1JSk7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNpbmctcHJpY2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLXN1Y2Nlc3M7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA2cHggc29saWQgJGJyYW5kLXN1Y2Nlc3M7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkICRicmFuZC1zdWNjZXNzO1xuICAgICAgICB9XG4gICAgfVxuICAgICYucHJpY2luZy10YWJsZS13YXJuaW5nIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtd2FybmluZywgNSUpO1xuICAgICAgICB9XG4gICAgICAgIC5wcmljaW5nLXByaWNlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC13YXJuaW5nO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogNnB4IHNvbGlkICRicmFuZC13YXJuaW5nO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAkYnJhbmQtd2FybmluZztcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnByaWNpbmctdGFibGUtZGFuZ2VyIHtcbiAgICAgICAgaGVhZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnJhbmQtZGFuZ2VyLCA1JSk7XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNpbmctcHJpY2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbi8vIERhcmsgdGhlbWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4udGhlbWUtZ3JheSB7XG4gICAgLnByaWNpbmctdGFibGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWVfZ3JheV9ib3hfYmc7XG4gICAgfVxufVxuLnRoZW1lLWRhcmsge1xuICAgIC5wcmljaW5nLXRhYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lX2RhcmtfYm94X2JnO1xuICAgIH1cbn1cbiIsIi8vIFRvZ2dsZXNcbi8vXG4vLyBVc2VkIGluIGNvbmp1bmN0aW9uIHdpdGggZ2xvYmFsIHZhcmlhYmxlcyB0byBlbmFibGUgY2VydGFpbiB0aGVtZSBmZWF0dXJlcy5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICBib3gtc2hhZG93OiAkc2hhZG93O1xuICB9XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA9PSAwIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0IFwibWl4aW5zL2JyZWFrcG9pbnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2hvdmVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2ltYWdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL2JhZGdlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9zY3JlZW4tcmVhZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtaGlkZVwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LXRydW5jYXRlXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RyYW5zZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmlzaWJpbGl0eVwiO1xuXG4vLyAvLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0XCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2FyZHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFnaW5hdGlvblwiO1xuQGltcG9ydCBcIm1peGlucy9saXN0c1wiO1xuQGltcG9ydCBcIm1peGlucy9saXN0LWdyb3VwXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi1kaXZpZGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zvcm1zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyAvLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG4vLyBAaW1wb3J0IFwibWl4aW5zL25hdmJhci1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG5AaW1wb3J0IFwibWl4aW5zL2Zsb2F0XCI7XG4iLCIudWktcmliYm9uLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC51aS1yaWJib24td3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgIGhlaWdodDogODhweDtcbiAgICAgICAgdG9wOiAtM3B4O1xuICAgICAgICByaWdodDogLTNweDtcbiAgICB9XG5cbiAgICAudWktcmliYm9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIC8vIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgIHBhZGRpbmc6IDdweCAwO1xuICAgICAgICBsZWZ0OiAtNXB4O1xuICAgICAgICB0b3A6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5O1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgM3B4IHJnYmEoMCwwLDAsMC4zKTtcbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgLy8gY29sb3JcbiAgICAmLnVpLXJpYmJvbi1wcmltYXJ5IHtcbiAgICAgICAgLnVpLXJpYmJvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudWktcmliYm9uLXN1Y2Nlc3Mge1xuICAgICAgICAudWktcmliYm9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgJGJyYW5kLXN1Y2Nlc3M7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi51aS1yaWJib24taW5mbyB7XG4gICAgICAgIC51aS1yaWJib24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWluZm87XG4gICAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAkYnJhbmQtaW5mbztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnVpLXJpYmJvbi13YXJuaW5nIHtcbiAgICAgICAgLnVpLXJpYmJvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtd2FybmluZztcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRicmFuZC13YXJuaW5nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgICYudWktcmliYm9uLWRhbmdlciB7XG4gICAgICAgIC51aS1yaWJib24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWRhbmdlcjtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICRicmFuZC1kYW5nZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbn0iLCIkbGluZV9oZWlnaHQ6IDMwcHg7XG5cbi5zYXNoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICB0b3A6IDI1cHg7XG4gICAgei1pbmRleDogMTtcbiAgICAubWF0ZXJpYWwtaWNvbnMge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmVfaGVpZ2h0O1xuICAgIH1cbn1cbi5zYXNoe1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgY29sb3I6ICR3aGl0ZTtcblxuICAgID5kaXYge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGhlaWdodDogJGxpbmVfaGVpZ2h0O1xuICAgICAgICBsaW5lLWhlaWdodDogJGxpbmVfaGVpZ2h0O1xuICAgICAgICB0cmFuc2l0aW9uOiB3aWR0aCAwLjFzIDAuMDVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTtcbiAgICAgICAgd2lkdGg6IDI1cHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAuc2FzaC10ZXh0IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2FzaC10ZXh0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgcGFkZGluZyAwLjI1cywgd2lkdGggMC4yNXM7XG4gICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIHdpZHRoOiAzZW07XG5cbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgfVxuICAgIGkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjZjVmNWY1O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMTVweCBzb2xpZCAkZ3JheS1saWdodDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogLTIwcHg7XG4gICAgfVxuXG4gICAgLy8gQ29sb3JzXG4gICAgJi5zYXNoLXByaW1hcnkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgJi5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXByaW1hcnk7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc2FzaC1pbmZvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJyYW5kLWluZm87XG4gICAgICAgICYuc2FzaC10cmlhbmdsZS1yaWdodDphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRicmFuZC1pbmZvO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNhc2gtc3VjY2VzcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1zdWNjZXNzO1xuICAgICAgICAmLnNhc2gtdHJpYW5nbGUtcmlnaHQ6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtc3VjY2VzcztcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zYXNoLXdhcm5pbmcge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtd2FybmluZztcbiAgICAgICAgJi5zYXNoLXRyaWFuZ2xlLXJpZ2h0OmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJyYW5kLXdhcm5pbmc7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc2FzaC1kYW5nZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICAmLnNhc2gtdHJpYW5nbGUtcmlnaHQ6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtZGFuZ2VyO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNhc2gtcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1wcmltYXJ5O1xuICAgICAgICAmLnNhc2gtdHJpYW5nbGUtcmlnaHQ6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYnJhbmQtcHJpbWFyeTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi5zYXNoLXdoaXRlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICYuc2FzaC10cmlhbmdsZS1yaWdodDphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi50ZXN0aW1vbmlhbCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLnRlc3RpbW9uaWFsX19xdW90ZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC5tYXRlcmlhbC1pY29ucyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDMuNWVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAgIC8vIG1hcmdpbi1ib3R0b206IDAuNTVlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmF2YXRhciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA4MHB4O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC40ZW07XG4gICAgfVxuXG4gICAgLnRpdGxlIHtcbiAgICAgICAgb3BhY2l0eTogLjU0O1xuICAgIH1cbn1cblxuLnRlc3RpbW9uaWFsLWFsdCB7XG4gICAgLmF2YXRhciB7XG4gICAgICAgIG1heC13aWR0aDogMTAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxnO1xuICAgICAgICBvcGFjaXR5OiAuOTtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLmNpdGF0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gICAgICAgIG9wYWNpdHk6IC41NDtcbiAgICB9XG5cbn0iLCIkVExfY29udGVudF9iZzogICAgICAgICByZ2JhKDI1NSwyNTUsMjU1LC45KTtcbiRUaGVtZV9kYXJrX1RMX2NvbnRlbnRfYmc6IHJnYmEoMjU1LDI1NSwyNTUsLjA1KTtcblxuLnVpLXRpbWxpbmUtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xufVxuXG4vLyAxIHJlbW92ZSAuYWx0IG9mIC50bC1pdGVtLCAyIGFkZCAudWktdGltbGluZS1sZWZ0IHRvIC51aS10aW1saW5lLWNvbnRhaW5lclxuLnVpLXRpbWxpbmUtbGVmdCB7XG4gICAgLnVpLXRpbWVsaW5lIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50bC1pdGVtIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGwtY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTU1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgIC50bC1ib2R5IHtcbiAgICAgICAgICAgICAgICAudGwtdGltZSB7XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnVpLXRpbWVsaW5lIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGFibGUtbGF5b3V0OiBmaXhlZDsgLy8gZW5zdXJlIHNhbWUgd2lkdGhcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBib3JkZXItY29sbGFwc2U6Y29sbGFwc2U7XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCMwMDAsIC4xNSk7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRvcDogMzBweDtcbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRsLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3c7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50bC1jYXB0aW9uIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNTVweDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiBtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCBtZCkpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTExMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAmLmFsdCB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogbWFwLWdldCgkZ3JpZC1icmVha3BvaW50cywgbWQpKSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7ICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50bC1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgLnRsLWVudHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAzNXB4IDE1cHggMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAudGwtdGltZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTIyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnRsLWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IC01M3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAudGwtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogLTE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDhweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogOHB4IHNvbGlkICRUTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCAkVExfY29udGVudF9iZztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50bC1ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgICAgICAgLnRsLWVudHJ5IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMTVweCAzNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRsLXRpbWUge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGdyYXktbGlnaHQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtMjIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRsLWljb24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtNTNweDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGwtdGl0bGUge31cbiAgICAgICAgICAgIC50bC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkVExfY29udGVudF9iZztcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xNnB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogOHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDhweCBzb2xpZCAkVExfY29udGVudF9iZztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICRUTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogJGZvbnQtc2l6ZS1oNDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIERhcmsgdGhlbWVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4udGhlbWUtZ3JheSxcbi50aGVtZS1kYXJrIHtcbiAgICAudWktdGltZWxpbmUge1xuICAgIC50bC1pdGVtIHtcbiAgICAgICAgJi5hbHQge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IG1hcC1nZXQoJGdyaWQtYnJlYWtwb2ludHMsIG1kKSkge1xuICAgICAgICAgICAgICAgIC50bC1ib2R5IHtcbiAgICAgICAgICAgICAgICAgICAgLnRsLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCAkVGhlbWVfZGFya19UTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCAkVGhlbWVfZGFya19UTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRsLWJvZHkge1xuICAgICAgICAgICAgLnRsLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRUaGVtZV9kYXJrX1RMX2NvbnRlbnRfYmc7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogOHB4IHNvbGlkICRUaGVtZV9kYXJrX1RMX2NvbnRlbnRfYmc7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDhweCBzb2xpZCAkVGhlbWVfZGFya19UTF9jb250ZW50X2JnO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICB9XG59XG5cbiJdfQ== */
