@charset "UTF-8";
/*!*****************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/_variables.scss ***!
  \*****************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Import all common theme variables*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/deprecated.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2024 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totara.com] for more information.*/
/**/
/* @author Simon Chester <simon.chester@totara.com>*/
/* @module tui*/
/* stylelint-disable tui/no-deprecated-vars */
/* Deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/* @deprecated since Totara 19.0*/
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_sizes.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_typography.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author Kevin Hottinger <kevin.hottinger@totara.com>*/
/* @author Simon Chester <simon.chester@totara.com>*/
/* @module tui*/
/**
 * Define font style variables
 *
 * @param {string} $name - font variant name (e.g. h1 or body-sm)
 * @param {number} $size - font size in unitless rem
 * @param {number} $line-height - line height in unitless rem
 * @param {number} $weight -- font weight
 * @param {number} $family -- font family
 */
/**
 * Use font style variables
 *
 * @param {string} $name - font variant name (e.g. h1 or body-sm)
 * @param {number} $weight -- font weight. set to null to not add
 * @param {number} $family -- font family. set to null to not add
 */
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_spacing.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Outside-in spacing: Stack*/
/* Stacks provide spacing between their children.*/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_borders.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Dave Wallace <dave.wallace@totaralearning.com>*/
/* @module tuickage   tui*/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_buttons.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tui*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_colors.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Arrows*/
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/arrow.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Forms*/
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/forms.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tui*/
/* Avatar*/
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/avatar.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Drop down*/
/*!********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/dropdown.scss ***!
  \********************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Data table*/
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/datatable.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Tabs*/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/tabs.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Card*/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/card.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Charts*/
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/charts.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Filters*/
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/filters.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Tags*/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/tags.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Tags*/
/*!***********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/progressbar.scss ***!
  \***********************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* collapsible*/
/*!***********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/collapsible.scss ***!
  \***********************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* progress tracker*/
/*!***************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/progresstracker.scss ***!
  \***************************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Side panel navigation*/
/*!**************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/side_panel_nav.scss ***!
  \**************************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Toggle buttons*/
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/toggle.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Notification toast*/
/*!*****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/colors/notificationtoast.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_shadows.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/*!***********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_side_panel_nav.scss ***!
  \***********************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/*!*****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_progress_tracker_nav.scss ***!
  \*****************************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2021 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Dave Wallace <dave.wallace@totaralearning.com>*/
/* @module tuickage   tui*/
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_range.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2022 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Rodney Cruden-Powell <rodney.cruden-powell@totaralearning.com>*/
/* @module tuickage   tui*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_layout.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Simon Chester <simon.chester@totaralearning.com>*/
/* @module tuickage   tui*/
/* Sidebar layout that is responsive based on the size of its container, rather*/
/* than the viewport.*/
/*!********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_breakpoints.scss ***!
  \********************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* Media queries breakpoints*/
/* Matches @screen-sm-min*/
/* Matches @screen-md-min*/
/* Matches @screen-lg-min*/
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_animations.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author Simon Chester <simon.chester@totaralearning.com>*/
/* @module tui*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_mixins.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author Simon Chester <simon.chester@totaralearning.com>*/
/* @module tui*/
/**
 * For adding a fixed sized header image to a card, including optional margin on the outer edges.
 *
 * @deprecated since Totara 19.0
 */
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_modals.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_embeds.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2021 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Simon Chester <simon.chester@totaralearning.com>*/
/* @module tuickage   tui*/
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_media.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2022 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Simon Chester <simon.chester@totaralearning.com>*/
/* @module    tui*/
/* Pick a width % value between small_frac and large_frac equivalent to where*/
/* our available width lies between small_anchor and large_anchor, clamped to*/
/* stay in that range.*/
/* This is overly complicated due to limitations of CSS / calc, but is equivalent to*/
/* width = available_width * lerp(small_frac, large_frac, clamp01(inverse_lerp(small_anchor, large_anchor, available_width)))*/
/* @private INTERNAL FUNCTION, DO NOT USE*/
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_forms.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* This contains the common variable set for form elements,*/
/* allowing form elements to be consistently styled.*/
/* loosely based on a modular scale of (2 * (1.5 ^ n))*/
/* Selectors for form inputs (and similar elements) that should have sizes applied to them.*/
/* If modifying this list in a theme, do it via append() rather than replacing*/
/* the entire list.*/
/* Selectors for inputs that are *replaced elements*.*/
/* The behavior of width: auto differs for replaced elements, so these are set*/
/* to width: 100% to get the "grow to container" behavior.*/
/* https://developer.mozilla.org/en-US/docs/Web/CSS/Replaced_element*/
/* However, this causes an issue in certain contexts - namely if the container*/
/* has a margin. This list exists to enable workarounds using flex at the site*/
/* of use.*/
/* If modifying this list in a theme, do it via append() rather than replacing*/
/* the entire list.*/
/* Don't apply the default input size if the element is within one of these*/
/* selectors.*/
/* (if it's not within a form, it won't be applied either)*/
/* Calculate character-based sizing for inputs.*/
/* Generate sizing class for size*/
/* Default input sizing*/
/* Generate sizing classes for predefined sizes*/
/* Vertical padding of form elements.*/
/* Calculate the remaining available space to meet the target height.*/
/* Must be on a single line otherwise it breaks (for some reason!) so must be ignored by prettier.*/
/* prettier-ignore*/
/* prettier-ignore*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_toggle.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2024 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totara.com] for more information.*/
/**/
/* @author Kevin Hottinger <kevin.hottinger@totara.com>*/
/* @module package tui*/
/* Vertical padding of toggle switch form elements.*/
/* Calculate the remaining available space to meet the target height.*/
/* Must be on a single line otherwise it breaks (for some reason!) so must be ignored by prettier.*/
/* prettier-ignore*/
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_separators.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2021 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tui*/
/*!*************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_tags.scss ***!
  \*************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/tui/src/global_styles/variables/tui_zindex.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Simon Chester <simon.chester@totaralearning.com>*/
/* @module tuickage   tui*/
/*!************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/_variables.scss ***!
  \************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* This variable file includes special comments with the syntax `theme:var` and*/
/* `theme:derive`.*/
/**/
/* `theme:var` comments tell the build system that this is a configurable*/
/* variable and causes information about it to be exported. This is neccesary*/
/* for it to show up in the theme panel.*/
/**/
/* `theme:derive` comments add information to the entry for a theme:var variable*/
/* telling the theme panel that it is derived from another variable.*/
/* This informatation is used to generate a new value for the variable if the*/
/* value of any variable it is derived from has changed.*/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_ventura/src/global_styles/_variables.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* This variable file includes special comments with the syntax `theme:var` and*/
/* `theme:derive`.*/
/**/
/* `theme:var` comments tell the build system that this is a configurable*/
/* variable and causes information about it to be exported. This is neccesary*/
/* for it to show up in the theme panel.*/
/**/
/* `theme:derive` comments add information to the entry for a theme:var variable*/
/* telling the theme panel that it is derived from another variable.*/
/* This informatation is used to generate a new value for the variable if the*/
/* value of any variable it is derived from has changed.*/
/*!************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/_variables.scss ***!
  \************************************************************************************************************************************************************************************************************************/
/* This file is part of Totara Enterprise Extensions.*/
/**/
/* Copyright (C) 2020 onwards Totara Learning Solutions LTD*/
/**/
/* Totara Enterprise Extensions is provided only to Totara*/
/* Learning Solutions LTD's customers and partners, pursuant to*/
/* the terms and conditions of a separate agreement with Totara*/
/* Learning Solutions LTD or its affiliate.*/
/**/
/* If you do not have an agreement with Totara Learning Solutions*/
/* LTD, you may not access, use, modify, or distribute this software.*/
/* Please contact [licensing@totaralearning.com] for more information.*/
/**/
/* @author    Kevin Hottinger <kevin.hottinger@totaralearning.com>*/
/* @module tuickage   tui*/
/* This variable file includes special comments with the syntax `theme:var` and*/
/* `theme:derive`.*/
/**/
/* `theme:var` comments tell the build system that this is a configurable*/
/* variable and causes information about it to be exported. This is neccesary*/
/* for it to show up in the theme panel.*/
/**/
/* `theme:derive` comments add information to the entry for a theme:var variable*/
/* telling the theme panel that it is derived from another variable.*/
/* This informatation is used to generate a new value for the variable if the*/
/* value of any variable it is derived from has changed.*/
@import url("https://fonts.googleapis.com/css?family=Roboto:400,700,200");
:root {
  --color-primary: #69bd45;
  --color-secondary: #007ab8;
  --color-tertiary: #1ea4a9;
  --color-state: #4b7e2b;
  --color-state-hover: #3c6721;
  --color-state-focus: #3c6721;
  --color-state-active: #30541a;
  --color-state-highlight: #f6f9d7;
  --color-state-highlight-neutral: var(--color-neutral-3);
  --color-state-disabled: var(--color-neutral-5);
  --color-neutral-1: #fff;
  --color-neutral-2: #fafafa;
  --color-neutral-3: #f7f7f7;
  --color-neutral-4: #e6e4e4;
  --color-neutral-5: #c7c7c7;
  --color-neutral-6: #767676;
  --color-neutral-7: #262626;
  --color-background: var(--color-neutral-1);
  --color-border: var(--color-neutral-5);
  --color-text: var(--color-neutral-7);
  --color-text-disabled: var(--color-neutral-5);
  --color-text-hint: var(--color-neutral-6);
  --link-color: var(--color-state);
  --link-color-hover: var(--color-state-hover);
  --nav-bg-color: #fff;
  --nav-text-color: var(--color-text);
  --footer-bg-color: #fff;
  --footer-text-color: var(--color-text);
  --footer-text-color-hover: var(--footer-text-color);
  --btn-accent-color: var(--color-state);
  --btn-accent-color-active: var(--color-state-active);
  --btn-accent-color-hover: var(--color-state-hover);
  --btn-accent-color-disabled: var(--color-state-disabled);
}
:root {
  --esor-eular: #0057bb;
  --esor-advocacy: #5c7321;
  --esor-congress: #e1007a;
  --esor-education: #a6c4e6;
  --esor-emunet: #93117E;
  --esor-hpr: #fdc60a;
  --esor-paed: #59dce1;
  --esor-pare: #afca04;
  --esor-qoc: #ed6d05;
  --esor-research: #012169;
  --esor-regopen: #6c9e03;
  --esor-red: red;
  --esor-green: green;
  --color-primary: var(--esor-eular);
  --color-secondary: var(--esor-eular);
  --color-tertiary: var(--esor-eular);
  --color-state: var(--esor-eular);
  --color-state-hover: var(--esor-eular);
  --color-state-focus: var(--esor-eular);
  --color-state-active: var(--esor-eular);
  --color-state-highlight: #f6f9d7;
  --color-state-highlight-neutral: var(--color-neutral-3);
  --color-state-disabled: var(--color-neutral-5);
  --color-neutral-1: #ffffff;
  --color-neutral-2: #fafafa;
  --color-neutral-3: #f7f7f7;
  --color-neutral-4: #e6e4e4;
  --color-neutral-5: #c7c7c7;
  --color-neutral-6: #767676;
  --color-neutral-7: #262626;
  --color-background: var(--color-neutral-1);
  --color-border: var(--color-neutral-5);
  --color-text: var(--color-neutral-7);
  --color-text-disabled: var(--color-neutral-5);
  --color-text-hint: var(--color-neutral-6);
  --link-color: var(--color-state);
  --link-color-hover: var(--color-state-hover);
  --nav-bg-color: #ffffff;
  --nav-text-color: var(--color-text);
  --footer-bg-color: var(--esor-eular);
  --footer-text-color: #ffffff;
  --footer-text-color-hover: var(--footer-text-color);
  --btn-accent-color: var(--color-state);
  --btn-accent-color-active: var(--color-state-active);
  --btn-accent-color-focus: var(--color-state-focus);
  --btn-accent-color-disabled: var(--color-state-disabled);
  --btn-prim-accent-color: var(--color-state);
  --btn-prim-accent-color-active: var(--color-state-active);
  --btn-prim-accent-color-focus: var(--color-state-focus);
  --btn-prim-accent-color-disabled: var(--color-state-disabled);
  --font-body-size: 16px;
}
/*!****************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??clonedRuleSet-528.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-528.use[2]!./client/component/theme_esor/src/global_styles/static.scss ***!
  \****************************************************************************************************************************************************************************************************************/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/index.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/typo.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
/**
 * Title
 */
/**
 * Text
 */
/*!************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/aboutusheader.scss ***!
  \************************************************************************************************************************************************************************************************************************************/
.lc-about-us .about-us-header-wrapper {
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
  margin-bottom: 0rem;
}
.lc-about-us .about-us-header-wrapper .inner {
  padding: 3rem 0;
}
@media (min-width: 992px) {
  .lc-about-us .about-us-header-wrapper .inner {
    padding: 5rem 0;
  }
}
@media (min-width: 1200px) {
  .lc-about-us .about-us-header-wrapper .inner {
    padding: 8rem 0;
  }
}
.lc-about-us .about-us-header-wrapper .inner h1 {
  margin: 0;
  font-size: 3rem;
  line-height: 3rem;
  font-weight: bold;
  color: var(--color-primary);
}
.lc-about-us .about-us-header-wrapper .inner .cta {
  margin-top: 2rem;
}
@media (min-width: 992px) {
  .lc-about-us .about-us-header-wrapper .inner .cta {
    margin-top: 3rem;
  }
}
@media (min-width: 1200px) {
  .lc-about-us .about-us-header-wrapper .inner .cta {
    margin-top: 4rem;
  }
}
/*!***********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/anura_course.scss ***!
  \***********************************************************************************************************************************************************************************************************************************/
#page-course-view-topics {
  /* anura styling*/
  /* anura-conference styling*/
}
#page-course-view-topics.lc-anura .content.anura-integration .section.main {
  border-bottom: 2px solid var(--color-neutral-4);
}
#page-course-view-topics.lc-anura .content.anura-integration .section .anura-integration .sectionname::before {
  content: "";
  font-size: 2.5rem;
  font-weight: bold;
  font-family: "tfont" !important;
  position: absolute;
  left: -3rem;
}
#page-course-view-topics.lc-anura .content.anura-integration .section .anura-integration.closed .sectionname::before {
  content: "";
}
#page-course-view-topics.lc-anura-conference .section.main {
  border-bottom: 2px solid var(--color-neutral-4);
}
#page-course-view-topics.lc-anura-conference .section .anura-integration .sectionname::before {
  content: "";
  font-size: 2.5rem;
  font-weight: bold;
  font-family: "tfont" !important;
  position: absolute;
  left: -3rem;
}
#page-course-view-topics.lc-anura-conference .section .anura-integration .section-accordion-wrapper {
  height: auto;
  overflow: unset;
}
#page-course-view-topics.lc-anura-conference .section .anura-integration.closed .sectionname::before {
  content: "";
}
#page-course-view-topics.lc-anura-conference .section .anura-integration.closed .section-accordion-wrapper {
  height: 0;
  overflow: hidden;
}
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/buttons.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
/*!***********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/courseheader.scss ***!
  \***********************************************************************************************************************************************************************************************************************************/
.course-img-header-wrapper, .program-img-header-wrapper {
  background-color: var(--color-primary);
  color: white;
  margin-bottom: var(--gap-2);
}
.course-img-header-wrapper .row .inner, .program-img-header-wrapper .row .inner {
  padding: 1rem 0 1rem;
}
@media (min-width: 768px) {
  .course-img-header-wrapper .row .inner, .program-img-header-wrapper .row .inner {
    padding: 3rem 0 2rem;
  }
}
@media (min-width: 1200px) {
  .course-img-header-wrapper .row .inner, .program-img-header-wrapper .row .inner {
    padding: 4rem 0 3rem;
  }
}
.course-img-header-wrapper .row .inner h1, .program-img-header-wrapper .row .inner h1 {
  margin: 0;
}
.course-img-header-wrapper .row .inner .sp-header-action .inner, .program-img-header-wrapper .row .inner .sp-header-action .inner {
  padding: 0;
  display: flex;
  align-items: center;
}
.course-img-header-wrapper .row .inner .sp-header-action .inner .sp-enrol-section, .program-img-header-wrapper .row .inner .sp-header-action .inner .sp-enrol-section {
  margin-right: 1.5rem;
}
.course-img-header-wrapper .row .inner .sp-header-action .inner .sp-enrol-section .btn-enrol, .program-img-header-wrapper .row .inner .sp-header-action .inner .sp-enrol-section .btn-enrol {
  background-color: var(--btn-bg-color);
  color: var(--btn-text-color);
}
.course-img-header-wrapper .row .inner .sp-header-action .inner h4, .course-img-header-wrapper .row .inner .sp-header-action .inner .sp-description, .program-img-header-wrapper .row .inner .sp-header-action .inner h4, .program-img-header-wrapper .row .inner .sp-header-action .inner .sp-description {
  display: none;
}
.course-img-header-wrapper .row .img-holder, .program-img-header-wrapper .row .img-holder {
  max-width: 100%;
  width: 100%;
  background-size: cover;
  background-position: center;
  aspect-ratio: 1.5319148936;
}
/*!***********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/confirm_info.scss ***!
  \***********************************************************************************************************************************************************************************************************************************/
.auth-confirm-header {
  background-color: var(--esor-education);
  color: black;
}
.auth-confirm-header .inner {
  text-align: center;
  font-weight: bold;
  padding: var(--gap-2) 0;
}
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/footer.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
.page-footer {
  padding-top: var(--gap-6) !important;
}
.page-footer .page-footer-main-content {
  background-position: center bottom;
  background-size: contain;
  background-repeat: no-repeat;
  padding-top: var(--gap-6);
  padding-bottom: var(--gap-6);
}
.page-footer .page-footer-main-content p {
  margin: var(--gap-1) 0;
}
@media (min-width: 1200px) {
  .page-footer .page-footer-main-content {
    padding-top: var(--gap-10);
    padding-bottom: var(--gap-10);
  }
}
@media (max-width: 992px) {
  .page-footer .page-footer-main-content {
    padding-left: 0;
    padding-right: 0;
  }
}
.page-footer .logo-section img {
  max-width: 255px;
}
.page-footer .nav-section .contact, .page-footer .nav-section .mailto {
  font-weight: bold;
}
.page-footer .nav-section .phone {
  margin: var(--gap-4) 0;
}
.page-footer .nav-section p {
  margin: var(--gap-2) 0;
}
.page-footer .nav-section a:hover {
  color: white;
}
@media (max-width: 992px) {
  .page-footer .nav-section .col-lg-3 {
    margin-top: var(--gap-6);
  }
}
.page-footer .social-section .footer-social-icons {
  text-align: right;
}
.page-footer .social-section .footer-social-icons > a {
  margin: 0 var(--gap-2);
}
.page-footer .social-section .footer-social-icons > a:first-of-type {
  margin-left: 0;
}
.page-footer .social-section .footer-social-icons > a:last-of-type {
  margin-right: 0;
}
.page-footer .social-section .col-md-6 {
  margin-top: var(--gap-8);
}
#page-login-index .tui-core_auth-footer .footnote img {
  max-width: 25%;
  margin-bottom: 2.5rem;
}
#page-login-index .tui-core_auth-footer .footnote ul {
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (min-width: 992px) {
  #page-login-index .tui-core_auth-footer .footnote ul {
    flex-direction: row;
  }
}
#page-login-index .tui-core_auth-footer .footnote ul li {
  list-style: none;
}
#page-login-index .tui-core_auth-footer .tui-core_auth-footer__poweredBy {
  display: none;
}
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/fonts.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
html, body {
  font-family: "Roboto", sans-serif !important;
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/navigation.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
.totaraNav .totaraNav_prim--list {
  margin-left: auto;
}
.totaraNav .totaraNav_prim--list .totaraNav_prim--list_item.totaraNav_prim--list_item_selected .totaraNav_prim--list_item_link {
  font-weight: bold;
}
.totaraNav .totaraNav_prim--list .totaraNav_prim--list_item .totaraNav_prim--list_item_link {
  color: var(--color-primary);
}
.totaraNav .totaraNav_prim--list .totaraNav_prim--list_item .totaraNav_prim--list_item_link .totaraNav_prim--list_item_label::after {
  transition: none;
}
.totaraNav .totaraNav_prim--list .totaraNav_prim--list_item .totaraNav_prim--list_item_link:hover .totaraNav_prim--list_item_label::after {
  border-color: var(--esor-education);
  transition: none;
}
.totaraNav .totaraNav_prim--side {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  border-left: solid 1px var(--color-primary);
}
.totaraNav .totaraNav_prim--side .popover-region .flex-icon {
  color: var(--color-primary);
}
.totaraNav .navExpand--listSecond .navExpand--list_item_link {
  color: var(--color-primary);
}
.totaraNav .navExpand--listSecond .navExpand--list_item_link:hover {
  color: white;
  background-color: var(--esor-education);
}
.totaraNav .usermenu .userpicture {
  border-radius: 50%;
}
.totaraNav .usermenu .usertext {
  color: var(--color-primary);
}
.totaraNav .usermenu .dropdown-menu {
  text-align: center;
  /* color: var(--color-text);*/
  width: 240px;
  /* background: var(--swag-gray);*/
  right: 0;
  left: unset;
  border-radius: 0;
}
.totaraNav .usermenu .dropdown-menu a {
  color: var(--color-text);
}
.totaraNav .usermenu .dropdown-menu div {
  padding: 5px;
}
.totaraNav .usermenu .dropdown-menu img {
  height: 120px;
  margin: 0;
  border-radius: 50%;
  padding: 5px;
}
.totaraNav .usermenu .dropdown-menu .logout {
  margin-top: 50px;
}
/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/landing_awards.scss ***!
  \*************************************************************************************************************************************************************************************************************************************/
.block_landing_award .block-content .unlist {
  width: 100%;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  row-gap: 2.5rem;
}
.block_landing_award .block-content .unlist li {
  margin: 0;
  width: 100%;
}
@media (min-width: 992px) {
  .block_landing_award .block-content .unlist li {
    width: 50%;
  }
}
.block_landing_award .block-content .unlist li .column {
  display: block;
  padding: 0 1rem;
}
@media (min-width: 768px) {
  .block_landing_award .block-content .unlist li .column {
    padding: 0 4rem;
  }
}
.block_landing_award .block-content .unlist li .column .award_items .items_per_row .landing_award-text {
  margin-top: 0.75rem;
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/hide_guest.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
.path-course-view.lc-about-us .tw-containerCourse-enrolmentBanner.alert.alert-info.alert-with-icon, .path-course-view.lc-calendar .tw-containerCourse-enrolmentBanner.alert.alert-info.alert-with-icon {
  display: none;
}
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/sp_modal.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
.path-enrol .modal-container.saferpay .container-fluid {
  padding: 0;
}
.path-enrol .modal-container.saferpay .container-fluid .row h5 {
  font-weight: bold;
}
.path-enrol .modal-container.saferpay .container-fluid .row p .inplaceeditable .quickediticon .flex-icon {
  color: var(--color-primary);
  font-weight: bold;
}
.path-enrol .modal-container.saferpay .container-fluid .errors {
  color: red;
}
.path-enrol .modal-container.saferpay .container-fluid .row-flex {
  display: flex;
  margin-left: -16px;
  margin-right: -16px;
}
.path-enrol .modal-container.saferpay .container-fluid .row-flex h5 {
  font-weight: bold;
}
.path-enrol .modal-container.saferpay .container-fluid .row-flex .col {
  padding-right: 16px;
  padding-left: 16px;
  width: 50%;
}
@media (max-width: 768px) {
  .path-enrol .modal-container.saferpay .container-fluid .row-flex {
    flex-direction: column;
  }
  .path-enrol .modal-container.saferpay .container-fluid .row-flex .col {
    width: 100%;
  }
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-input {
  width: 100%;
  height: var(--form-input-height-large);
  padding: calc((var(--form-input-height-large) - 1em - (var(--form-input-border-size) * 2)) / 2);
  font-size: var(--form-input-font-size-lg);
  border-radius: var(--form-input-border-radius);
  border: var(--form-input-border-size) solid var(--form-input-border-color);
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .code-info {
  font-size: 1.4rem;
  margin-top: 2rem;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper {
  background-color: var(--esor-eular);
  color: var(--btn-prim-text-color);
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .wrapper {
  display: inline-grid;
  grid-template-columns: 1fr 1fr;
  padding-left: 1rem;
  margin-bottom: 1rem;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .wrapper .label, .path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .wrapper .value {
  border-radius: 0;
  padding: 0.4rem 0.8rem;
  line-height: unset;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .wrapper .label {
  font-size: unset;
  font-weight: unset;
  text-align: left;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .wrapper .value {
  text-align: right;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .wrapper .total {
  border-top: solid 1px var(--btn-prim-text-color);
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .description {
  margin-top: 1.4rem;
}
.path-enrol .modal-container.saferpay .container-fluid .discount-code-section .voucher-code-wrapper .discount-modal .tax-info {
  margin-bottom: 0;
}
.path-enrol .modal-container.saferpay .modal-header .close .flex-icon {
  color: var(--color-primary);
}
.path-enrol .modal-container.saferpay .modal-footer {
  text-align: center;
}
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/partials/terms.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
#fitem_id_profile_field_Terms {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
}
#fitem_id_profile_field_Terms .fitemtitle {
  width: unset;
}
#fitem_id_profile_field_Terms .felement {
  width: unset;
}
/*!*************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/index.scss ***!
  \*************************************************************************************************************************************************************************************************************************/
/*!****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/calendar.scss ***!
  \****************************************************************************************************************************************************************************************************************************/
body.path-course-view.lc-calendar .block_fake {
  border: none;
}
body.path-course-view.lc-calendar .block_fake .block-header {
  display: none;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
}
@media (min-width: 1200px) {
  body.path-course-view.lc-calendar .block_fake #calendar-filter {
    flex-direction: row;
  }
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_ftext {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  max-width: 100%;
  margin-bottom: 1rem;
}
@media (min-width: 1200px) {
  body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_ftext {
    max-width: 35%;
  }
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_ftext .fitemtitle label {
  font-weight: bold;
  margin-bottom: 1rem;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_ftext .felement.ftext {
  position: relative;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_ftext .felement.ftext::after {
  content: "";
  font-family: "tfont" !important;
  display: block;
  position: absolute;
  top: 0;
  width: 4rem;
  height: 2rem;
  line-height: 2rem;
  top: 50%;
  margin-top: -1rem;
  text-align: center;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_ftext .felement.ftext input[type=text] {
  width: 100%;
  box-sizing: border-box;
  padding: 8px 16px 8px 4rem;
  line-height: 1.5rem;
  font-size: 1.5rem;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset {
  display: flex;
  flex-direction: column;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset legend {
  margin: 0;
  margin-bottom: 1rem;
  padding: 0;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset legend span {
  padding: 0;
  font-weight: bold;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement {
  display: flex;
  flex-direction: column;
  column-gap: 1rem;
  align-items: flex-start;
  justify-content: space-between;
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement {
    flex-direction: row;
    align-items: center;
  }
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector {
  position: relative;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector:first-of-type {
  margin-bottom: 1rem;
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector:first-of-type {
    margin-bottom: 0;
  }
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector select {
  padding: 8px 16px;
  line-height: 1.5rem;
  font-size: 1.5rem;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector::before {
  /* content: 'C';*/
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector .fcheckbox-content input[type=checkbox] {
  display: none;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector .fcheckbox-content input[type=checkbox] + label {
  background-color: white;
  color: var(--color-primary);
  border: solid 1px var(--color-primary);
  border-radius: 3px;
  padding: var(--gap-1) var(--gap-2);
  line-height: 1.2;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .fdate_selector .fcheckbox-content input[type=checkbox]:checked + label {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
  color: white;
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .delimiter {
  display: none;
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .delimiter {
    display: block;
  }
}
body.path-course-view.lc-calendar .block_fake #calendar-filter .fitem_fgroup fieldset .felement .delimiter::after {
  content: "";
  display: block;
  width: 2rem;
  height: 2px;
  background-color: #bbb;
}
body.path-course-view.lc-calendar ul li.section {
  border-bottom: none;
}
body.path-course-view.lc-calendar ul li.section .sectionname {
  color: var(--color-primary);
  font-weight: bold;
}
body.path-course-view.lc-calendar ul li.section .content {
  margin: 0;
}
body.path-course-view.lc-calendar .contentafterlink {
  margin: 0;
}
body.path-course-view.lc-calendar .modtype_calevent {
  margin: 1.5rem 0;
  padding: 0;
  box-shadow: 4px 4px 15px 0 rgba(0, 0, 0, 0.1);
}
body.path-course-view.lc-calendar .modtype_calevent > div {
  margin: 0;
  padding: 0;
}
body.path-course-view.lc-calendar .modtype_calevent .activityinstance {
  display: none;
}
body.path-course-view.lc-calendar .modtype_calevent .no-overflow {
  padding: 0;
}
body.path-course-view.lc-calendar .mod_calevent_entry {
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  body.path-course-view.lc-calendar .mod_calevent_entry {
    flex-wrap: nowrap;
  }
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_image_wrapper {
  width: 100%;
  min-height: 200px;
  aspect-ratio: 1.7777777778;
}
@media (min-width: 768px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_image_wrapper {
    width: 40%;
  }
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_image_wrapper {
    width: 30%;
  }
}
@media (min-width: 1200px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_image_wrapper {
    width: 48%;
  }
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_image_wrapper .img_holder {
  width: 100%;
  aspect-ratio: 1.7777777778;
  background-size: cover;
  background-position: center;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper {
  width: 100%;
  padding: 3rem 1.5rem;
}
@media (min-width: 768px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper {
    width: 60%;
  }
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper {
    width: 70%;
  }
}
@media (min-width: 1200px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper {
    width: 80%;
  }
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_title, body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_label, body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_date_icon, body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_location_icon {
  margin: 0;
  padding: 0;
  text-align: left;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_label .label_image {
  width: auto;
  max-height: 4rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link, body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_infodownload {
  padding: 0;
  text-align: left;
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(5, auto);
    padding: 1.5rem 1.5rem;
  }
}
@media (min-width: 1200px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(5, auto);
    padding: 1.5rem 3rem;
  }
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_title {
  grid-column: 1 / 4;
  grid-row: 1 / 2;
  font-weight: bold;
  color: var(--color-text);
  margin-bottom: 0.75rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_title a {
  font-weight: bold;
  color: var(--color-text);
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_label {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  margin-bottom: 1.5rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_date_icon {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
  margin-bottom: 1.5rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_date_icon img {
  margin: 0;
  margin-right: 1rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_location_icon {
  grid-column: 1 / 2;
  grid-row: 4 / 5;
  margin-bottom: 1.5rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_location_icon img {
  margin: 0;
  margin-right: 1rem;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper {
  grid-column: 2 / 4;
  grid-row: 4 / 6;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .inner .calevent_link a, body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .inner .calevent_infodownload a {
  padding: 8px 16px;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .inner div:last-of-type {
  margin-top: 2rem;
}
@media (min-width: 768px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .inner {
    display: flex;
    justify-content: space-between;
    column-gap: 1rem;
    justify-content: flex-end;
  }
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .inner div:last-of-type {
    margin-top: 0;
  }
}
@media (min-width: 992px) {
  body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .inner {
    column-gap: 1rem;
    justify-content: flex-end;
  }
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .calevent_link a {
  background-color: var(--color-primary);
  border-radius: 3px;
  color: white;
}
body.path-course-view.lc-calendar .mod_calevent_entry .calevent_center_wrapper .calevent_link_wrapper .calevent_infodownload a {
  color: var(--color-primary);
  text-decoration: underline;
}
body.path-calendar_event#page-calendar_event-views-calendar_event_view .course-img-header-wrapper {
  background-color: white;
  color: var(--color-primary);
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/catalog.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
#page-totara-catalog-index {
  /**
     * Header
     */
}
#page-totara-catalog-index .totaraNav {
  margin-bottom: 0;
}
#page-totara-catalog-index .hero-header {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right center;
  max-width: calc(1680px - 32px);
  margin: 0 auto;
  width: 100%;
  margin-top: var(--gap-2);
}
#page-totara-catalog-index .hero-header .inner {
  padding-top: 3rem;
  padding-bottom: 8rem;
}
#page-totara-catalog-index .hero-header .inner h2 {
  color: var(--color-primary);
  font-weight: var(--font-h1-weight);
  font-size: var(--font-h1-size);
  font-family: var(--font-h1-family);
  line-height: var(--font-h1-line-height);
}
#page-totara-catalog-index .breadcrumb-container #page-header {
  margin: 0;
  padding: 0;
}
#page-totara-catalog-index .tw-catalog__page_heading {
  margin-bottom: 0;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide {
  border: none;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  #page-totara-catalog-index .tw-catalog .tw-catalogItemWide {
    flex-wrap: nowrap;
  }
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide:active, #page-totara-catalog-index .tw-catalog .tw-catalogItemWide:focus, #page-totara-catalog-index .tw-catalog .tw-catalogItemWide:hover {
  box-shadow: none;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_left {
  width: 100%;
  /* max-width: 380px;*/
}
@media (min-width: 768px) {
  #page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_left {
    width: 30%;
  }
}
@media (min-width: 1200px) {
  #page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_left {
    width: 20%;
  }
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_left .tw-catalogItemWide__image {
  padding-top: 56%;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right {
  flex-direction: column;
  flex-grow: unset;
  width: 100%;
  padding: var(--gap-2) var(--gap-4);
}
@media (min-width: 768px) {
  #page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right {
    width: 70%;
  }
}
@media (min-width: 1200px) {
  #page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right {
    width: 80%;
  }
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__content_right_side {
  width: 100%;
  max-width: none;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__content_right_body {
  flex-grow: unset;
  width: 100%;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__textarea_group {
  padding-top: 0;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__textarea_group .tw-catalogItemWide__textarea_group_item {
  margin-top: 0;
  color: var(--color-text);
  font-size: 16px;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__textarea_group .tw-catalogItemWide__textarea_group_item .item-label {
  min-width: 15rem;
  display: inline-block;
  font-weight: bold;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__title, #page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description {
  height: auto;
  line-height: normal;
  margin-top: 0;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__title {
  font-size: 18px;
}
@media (min-width: 992px) {
  #page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__title {
    font-size: 28px;
  }
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description .tw-catalogItemWide__ellipsis {
  padding: 4px 12px;
  border-radius: 4px;
  color: white;
  font-weight: bold;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description[data-description="Endorsed"] .tw-catalogItemWide__ellipsis {
  background-color: #ED6D05;
  display: inline-block;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description[data-description="Emeunet"] .tw-catalogItemWide__ellipsis {
  background-color: #93117E;
  display: inline-block;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description[data-description="Research"] .tw-catalogItemWide__ellipsis {
  background-color: #012169;
  display: inline-block;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description[data-description="EULAR"] .tw-catalogItemWide__ellipsis {
  background-color: #0057B8;
  display: inline-block;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__content_right .tw-catalogItemWide__description[data-description="Econs"] .tw-catalogItemWide__ellipsis {
  background-color: #A6C4E6;
  display: inline-block;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__labels {
  left: calc(var(--gap-1)* -1);
  max-width: 100%;
  position: absolute;
  top: var(--gap-2);
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__title_featured {
  border-radius: 0;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__hero {
  position: static;
  top: unset;
  left: unset;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__hero[data-herotext=No] {
  display: none;
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__hero .tw-catalogItemWide__hero_text {
  border-radius: 0;
  background-color: var(--esor-regopen);
  /* padding: 0 18px;*/
}
#page-totara-catalog-index .tw-catalog .tw-catalogItemWide .tw-catalogItemWide__concluded {
  font-weight: 500;
  font-size: calc(var(--font-size-base) / 16 * 13);
  line-height: 1.5;
  letter-spacing: 0.0625rem;
  background-color: #EAAA00;
  color: var(--catalog-item-featured-text-color);
  display: inline-block;
  margin: 0 var(--gap-1) 0 0;
  padding: 0 var(--gap-2);
  vertical-align: text-bottom;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails {
  height: auto;
  margin-top: 0;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__arrow {
  display: none;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__placement {
  position: static;
  left: unset;
  top: unset;
  height: auto;
  width: 100%;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__placement .tw-catalogDetails__content {
  overflow: unset;
  box-shadow: none;
  border: none;
  min-height: 5rem;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__placement .tw-catalogDetails__content .tw-catalogDetails__title {
  margin-top: 0;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__placement .tw-catalogDetails__content .tw-catalogDetails__detail {
  margin-left: 2rem;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__placement .tw-catalogDetails__content .tw-catalogDetailsLink {
  padding: 0;
  border: none;
  margin-bottom: 0;
  background-color: transparent;
}
#page-totara-catalog-index .tw-catalog .tw-catalogDetails .tw-catalogDetails__placement .tw-catalogDetails__content .tw-catalogDetailsLink .tw-catalogDetailsLink__option_content {
  justify-content: flex-end;
}
#page-totara-catalog-index .tw-catalog .tw-catalogPagination {
  margin: 5rem 0 3rem;
  text-align: center;
}
#page-totara-catalog-index .tw-catalog .tw-catalogPagination .tw-catalogPagination__btn {
  display: inline-block;
  padding: 12px 18px;
}
#page-totara-catalog-index .tw-catalog .tw-catalog__debug {
  margin: 0;
}
#page-totara-catalog-index .tw-catalog .tw-grid__item.tw-grid__item_active {
  box-shadow: 4px 4px 15px 0 rgba(0, 0, 0, 0.1);
}
#page-totara-catalog-index .tw-grid {
  margin-top: 3rem;
}
#page-totara-catalog-index .tw-catalog__primaryFilter {
  margin-top: 0;
  margin-bottom: 0;
  border: none;
  padding: var(--gap-4) 0 var(--gap-8);
}
#page-totara-catalog-index .tw-catalog__primaryFilter .inner {
  margin: 0 auto;
  max-width: 1018px;
  padding: 2rem 1rem;
  border-radius: 4px;
  background-color: #f5f5f5;
}
@media (min-width: 992px) {
  #page-totara-catalog-index .tw-catalog__primaryFilter .inner {
    padding: 4rem 3rem;
  }
}
#page-totara-catalog-index .tw-catalog__primaryFilter section.clear-filter {
  text-align: right;
  display: none;
}
#page-totara-catalog-index .tw-catalog__primaryFilter.show-clear section.clear-filter {
  display: block;
}
#page-totara-catalog-index .tw-selectRegionPrimary {
  display: flex;
  flex-direction: column;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector {
  max-width: none;
  width: 100%;
  /* Filter*/
  /* Search box*/
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) {
  order: 2;
  margin-top: 1rem;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree {
  padding: 0;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__label {
  display: none;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable {
  width: 100%;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__current {
  display: none;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option {
  background-color: transparent;
  display: block;
  box-shadow: none;
  width: 100%;
  max-width: none;
  max-height: none;
  overflow: unset;
  position: static;
  border: none;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option .tw-selectTree__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 1rem;
  row-gap: 1rem;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option .tw-selectTree__list .tw-selectTree__list_item {
  border: solid 1px var(--color-primary);
  border-radius: var(--form-input-border-radius);
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option .tw-selectTree__list .tw-selectTree__list_item:nth-child(1) {
  display: none;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option .tw-selectTree__list .tw-selectTree__list_item .tw-selectTree__list_row_link {
  padding: 6px 12px;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option .tw-selectTree__list .tw-selectTree__list_item .tw-selectTree__list_row.tw-selectTree__active {
  background-color: var(--color-primary);
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(1) .tw-selectTree .tw-selectTree__expandable .tw-selectTree__option .tw-selectTree__list .tw-selectTree__list_item .tw-selectTree__list_row.tw-selectTree__active .tw-selectTree__list_row_link {
  color: white;
  font-weight: normal;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(2) {
  order: 1;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(2) .tw-selectSearchText {
  flex-direction: row-reverse;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(2) .tw-selectSearchText .tw-selectSearchText__btn {
  border-radius: 0;
  border-top-left-radius: var(--form-input-border-radius);
  border-bottom-left-radius: var(--form-input-border-radius);
  border: solid 1px var(--color-border);
  border-right: none;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(2) .tw-selectSearchText .tw-selectSearchText__field {
  width: 100vw;
}
#page-totara-catalog-index .tw-selectRegionPrimary .tw-selectRegionPrimary__selector:nth-child(2) .tw-selectSearchText .tw-selectSearchText__field .tw-selectSearchText__field_input {
  border-radius: 0;
  border: solid 1px var(--color-border);
  border-left: none;
  border-top-right-radius: var(--form-input-border-radius);
  border-bottom-right-radius: var(--form-input-border-radius);
}
#page-totara-catalog-index .tw-catalog__results_overview_row .tw-catalogResultsCount, #page-totara-catalog-index .tw-catalog__results_overview_row .tw-catalogResultsShare {
  display: none;
}
#page-totara-catalog-index .tw-catalog__results_overview {
  padding: var(--gap-6) 0;
  border-top: solid 1px rgba(0, 0, 0, 0.2);
  border-bottom: solid 1px rgba(0, 0, 0, 0.2);
  align-items: center;
}
#page-totara-catalog-index .tw-catalog__results_overview h2.lc-catalog-category {
  font-family: "Roboto";
  font-size: 1rem;
  line-height: 1.2rem;
  color: var(--esor-eular);
  margin: 0;
  max-width: 70%;
}
@media (max-width: 767px) {
  #page-totara-catalog-index .tw-catalog__results_overview h2.lc-catalog-category {
    max-width: none;
  }
}
@media (max-width: 767px) {
  #page-totara-catalog-index .tw-catalog__results_overview {
    flex-direction: column;
  }
}
#page-totara-catalog-index .tw-catalog__results_overview .tw-catalog__results_overview_row:last-child {
  margin: 0;
  align-self: flex-end;
}
#page-totara-catalog-index .tw-catalogItemWide__description {
  display: none;
}
#page-totara-catalog-index [data-description="Live courses and meetings" i] [data-type-shortname="Tile info" i], #page-totara-catalog-index [data-description="Live courses and meetings" i] [data-type-shortname="Application Deadline" i], #page-totara-catalog-index [data-description="Live courses and meetings" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Live courses & meetings" i] [data-type-shortname="Tile info" i], #page-totara-catalog-index [data-description="Live courses & meetings" i] [data-type-shortname="Application Deadline" i], #page-totara-catalog-index [data-description="Live courses & meetings" i] [data-type-shortname="Date" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Online courses" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Online courses" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Online courses" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Online courses" i] [data-type-shortname="Application Deadline" i], #page-totara-catalog-index [data-description="Online courses & other digital offers" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Online courses & other digital offers" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Online courses & other digital offers" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Online courses & other digital offers" i] [data-type-shortname="Application Deadline" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Cost" i], #page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Endorsed courses" i] [data-type-shortname="Registration deadline" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Cost" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Endorsed courses & meetings" i] [data-type-shortname="Registration deadline" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Bursaries, Grants & Exchange opportunities" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Bursaries, Grants & Exchange opportunities" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Bursaries, Grants & Exchange opportunities" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Bursaries, Grants & Exchange opportunities" i] [data-type-shortname="Cost" i], #page-totara-catalog-index [data-description="Bursaries, Grants & Exchange opportunities" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Bursaries, Grants & Exchange opportunities" i] [data-type-shortname="Application Deadline" i], #page-totara-catalog-index [data-description="Awards, Grants & Exchange Opportunity" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Awards, Grants & Exchange Opportunity" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Awards, Grants & Exchange Opportunity" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Awards, Grants & Exchange Opportunity" i] [data-type-shortname="Cost" i], #page-totara-catalog-index [data-description="Awards, Grants & Exchange Opportunity" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Awards, Grants & Exchange Opportunity" i] [data-type-shortname="Application Deadline" i], #page-totara-catalog-index [data-description="Bursaries, Awards & Exchange opportunities" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Bursaries, Awards & Exchange opportunities" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Bursaries, Awards & Exchange opportunities" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Bursaries, Awards & Exchange opportunities" i] [data-type-shortname="Cost" i], #page-totara-catalog-index [data-description="Bursaries, Awards & Exchange opportunities" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Bursaries, Awards & Exchange opportunities" i] [data-type-shortname="Application Deadline" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Registration deadline" i], #page-totara-catalog-index [data-description="Publications" i] [data-type-shortname="Application Deadline" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Registration deadline" i], #page-totara-catalog-index [data-description="Free Learning Material" i] [data-type-shortname="Application Deadline" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Registration deadline" i], #page-totara-catalog-index [data-description="Webinars" i] [data-type-shortname="Application Deadline" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Module" i] [data-type-shortname="Date" i] {
  display: none;
}
#page-totara-catalog-index [data-description="Modules" i] [data-type-shortname="Course start date" i], #page-totara-catalog-index [data-description="Modules" i] [data-type-shortname="Start date" i], #page-totara-catalog-index [data-description="Modules" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="Modules" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="Modules" i] [data-type-shortname="Registration deadline" i], #page-totara-catalog-index [data-description="Modules" i] [data-type-shortname="Application Deadline" i] {
  display: none;
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/course.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
.path-enrol .totaraNav, .path-course .totaraNav {
  margin-bottom: 0;
}
.path-enrol, .path-course-view {
  /* myEULAR Badge Styles */
  /* Responsive adjustments - move badge below buttons when it starts getting cramped */
}
.path-enrol #region-main h2.heading, .path-course-view #region-main h2.heading {
  font-size: 3rem;
  line-height: 3rem;
  font-weight: bold;
  color: var(--color-primary);
  margin-bottom: 2rem;
}
.path-enrol #region-main h2.heading::after, .path-course-view #region-main h2.heading::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
.path-enrol .block_fake, .path-course-view .block_fake {
  color: var(--color-text);
}
.path-enrol .block_fake p, .path-course-view .block_fake p {
  margin: 0;
}
.path-enrol .block_fake .block-header .block-title h2, .path-course-view .block_fake .block-header .block-title h2 {
  font-size: 2rem;
  line-height: 2rem;
  font-weight: bold;
  color: var(--color-primary);
  margin-bottom: 0;
}
.path-enrol .block_fake .block-header .block-title h2::after, .path-course-view .block_fake .block-header .block-title h2::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
.path-enrol .block_fake.course-cf-header .block-content .inner, .path-course-view .block_fake.course-cf-header .block-content .inner {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 1.5rem;
}
@media (min-width: 992px) {
  .path-enrol .block_fake.course-cf-header .block-content .inner, .path-course-view .block_fake.course-cf-header .block-content .inner {
    grid-template-columns: repeat(auto-fit, minmax(0, -webkit-max-content));
    grid-template-columns: repeat(auto-fit, minmax(0, max-content));
  }
}
.path-enrol .block_fake.course-cf-header .block-content .inner .item-wrapper .item, .path-course-view .block_fake.course-cf-header .block-content .inner .item-wrapper .item {
  display: flex;
  align-items: center;
}
.path-enrol .block_fake.course-cf-header .block-content .inner .item-wrapper .item .item-label, .path-course-view .block_fake.course-cf-header .block-content .inner .item-wrapper .item .item-label {
  white-space: nowrap;
}
.path-enrol .block_fake.course-cf-header .block-content .inner .item-wrapper .item .value, .path-course-view .block_fake.course-cf-header .block-content .inner .item-wrapper .item .value {
  color: var(--color-primary);
  font-weight: bold;
  margin-left: 1rem;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.path-enrol .block_fake.course-documents .block-content .item, .path-course-view .block_fake.course-documents .block-content .item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: solid 2px rgba(0, 0, 0, 0.2);
  padding: 0.5rem 0;
}
.path-enrol .block_fake.course-documents .block-content .item p, .path-course-view .block_fake.course-documents .block-content .item p {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.path-enrol .block_fake.course-documents .block-content .item .icon, .path-course-view .block_fake.course-documents .block-content .item .icon {
  width: 2.6rem;
  height: 2.6rem;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  flex-shrink: 0;
  flex-grow: 0;
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/symbol_download);
}
.path-enrol .block_fake.course-info .block-content .info-item, .path-course-view .block_fake.course-info .block-content .info-item {
  display: flex;
  align-items: center;
  margin: 1rem 0;
}
.path-enrol .block_fake.course-info .block-content .info-item:first-of-type, .path-course-view .block_fake.course-info .block-content .info-item:first-of-type {
  margin-top: 0;
}
.path-enrol .block_fake.course-info .block-content .info-item:last-of-type, .path-course-view .block_fake.course-info .block-content .info-item:last-of-type {
  margin-bottom: 0;
}
.path-enrol .block_fake.course-info .block-content .info-item .icon, .path-course-view .block_fake.course-info .block-content .info-item .icon {
  width: 2.6rem;
  height: 2.6rem;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  flex-shrink: 0;
  flex-grow: 0;
}
.path-enrol .block_fake.course-info .block-content .info-item .icon.category, .path-course-view .block_fake.course-info .block-content .info-item .icon.category {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/Online_Courses);
}
.path-enrol .block_fake.course-info .block-content .info-item .icon.duration, .path-course-view .block_fake.course-info .block-content .info-item .icon.duration {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/ion_hourglass-outline);
}
.path-enrol .block_fake.course-info .block-content .info-item .icon.skill, .path-course-view .block_fake.course-info .block-content .info-item .icon.skill {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/skill-level-advanced);
}
.path-enrol .block_fake.course-info .block-content .info-item .icon.deadline, .path-course-view .block_fake.course-info .block-content .info-item .icon.deadline {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/calendar-time);
}
.path-enrol .block_fake.course-info .block-content .info-item .icon.contacts, .path-course-view .block_fake.course-info .block-content .info-item .icon.contacts {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/email-outline);
}
.path-enrol .block_fake.course-info .block-content .info-item > p, .path-course-view .block_fake.course-info .block-content .info-item > p {
  margin: 0 0 0 1.5rem;
}
.path-enrol .block_fake.course-video.empty, .path-course-view .block_fake.course-video.empty {
  display: none;
}
.path-enrol .block_fake.course-video .block-content .course-video-wrapper iframe, .path-course-view .block_fake.course-video .block-content .course-video-wrapper iframe {
  width: 100%;
  height: auto;
  display: block;
}
.path-enrol .course-img-header .inner, .path-course-view .course-img-header .inner {
  position: relative;
}
.path-enrol .course-header-actions-wrapper, .path-course-view .course-header-actions-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  min-height: 50px;
  padding-top: 10px;
}
.path-enrol .course-header-actions, .path-course-view .course-header-actions {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
}
.path-enrol .course-header-actions > *, .path-course-view .course-header-actions > * {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}
.path-enrol .myeular-badge-wrapper, .path-course-view .myeular-badge-wrapper {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 0;
}
.path-enrol .myeular-badge-link, .path-course-view .myeular-badge-link {
  display: inline-block;
  transition: opacity 0.2s ease;
}
.path-enrol .myeular-badge-link:hover, .path-course-view .myeular-badge-link:hover {
  opacity: 0.9;
}
.path-enrol .myeular-badge, .path-course-view .myeular-badge {
  max-width: 280px;
  height: auto;
  display: block;
}
@media (max-width: 1200px) {
  .path-enrol .course-header-actions-wrapper, .path-course-view .course-header-actions-wrapper {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
  .path-enrol .myeular-badge-wrapper, .path-course-view .myeular-badge-wrapper {
    align-self: flex-start;
  }
  .path-enrol .myeular-badge, .path-course-view .myeular-badge {
    max-width: 280px;
  }
}
@media (max-width: 767px) {
  .path-enrol .course-header-actions, .path-course-view .course-header-actions {
    width: 100%;
  }
  .path-enrol .myeular-badge, .path-course-view .myeular-badge {
    max-width: 260px;
  }
}
@media (max-width: 480px) {
  .path-enrol .myeular-badge, .path-course-view .myeular-badge {
    max-width: 240px;
  }
}
/**
 * Course formats
 */
#page-course-view-eular #page-content .course-content ul.eular .section {
  padding: 0;
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .summary, #page-course-view-eular #page-content .course-content ul.eular .bluesection ul.section.img-text {
  transition: none;
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content {
  margin: 1.5rem 0;
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content .topic_collapse_header {
  margin: 0;
  padding: 0;
  margin-left: 3rem;
  margin-bottom: 0.75rem;
  position: relative;
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content .topic_collapse_header .sectionname {
  margin: 0 calc(10% + 90px) 0 0;
  line-height: var(--font-heading-line-height);
  color: var(--color-primary);
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content .topic_collapse_header .toggle_image {
  display: flex;
  padding: 0;
  margin: 0;
  width: 3rem;
  height: 3rem;
  align-items: center;
  position: absolute;
  left: -3rem;
  top: 0;
  font-size: 2.5rem;
  font-weight: bold;
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content .topic_collapse_header .toggle_image::before {
  color: var(--color-primary);
  font-family: "tfont" !important;
  content: "";
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content .topic_collapse_header .toggle_image.rotated::before {
  content: "";
}
#page-course-view-eular #page-content .course-content ul.eular .bluesection .content .summary, #page-course-view-eular #page-content .course-content ul.eular .bluesection .content .availabilityinfo {
  margin-left: 3rem;
}
#page-course-view-topics #page-content .course-content ul.topics .section[data-open=true] .content .sectionname .flex-icon::before {
  content: "";
}
#page-course-view-topics #page-content .course-content ul.topics .section[data-open=true] .content .tw-formatTopics__topic_content {
  display: block;
}
#page-course-view-topics #page-content .course-content ul.topics .section[data-open=true] .content .tw-formatTopics__topic_content > * {
  display: block;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content {
  margin: 1.5rem 0;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .sectionname {
  position: relative;
  margin: 0 0 0 3rem;
  color: var(--color-primary);
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .sectionname > span {
  margin-left: 0;
  pointer-events: none;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .sectionname .tw-formatTopics__collapse_link {
  display: flex;
  padding: 0;
  margin: 0;
  width: 3rem;
  height: 3rem;
  align-items: center;
  position: absolute;
  left: -3rem;
  top: 0;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .sectionname .tw-formatTopics__collapse_link:hover {
  text-decoration: none;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .sectionname .flex-icon {
  font-size: 2.5rem;
  font-weight: bold;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .sectionname .flex-icon::before {
  content: "";
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .tw-formatTopics__topic_content {
  display: block;
  margin-left: 3rem;
  margin-top: 0.75rem;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .tw-formatTopics__topic_content > * {
  display: none;
}
#page-course-view-topics #page-content .course-content ul.topics .section .content .tw-formatTopics__topic_content > .availabilityinfo {
  display: block;
}
.format-singleactivity .course-img-header-wrapper .inner .btn.btn-secondary {
  display: none;
}
/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/eularCourseFormat.scss ***!
  \*************************************************************************************************************************************************************************************************************************************/
#page-course-view-eular #section-1 {
  padding: 0;
}
#page-course-view-eular #section-1 .section.img-text {
  padding-left: 25px;
}
#page-course-view-eular .section .activity {
  padding: 1rem 0;
}
#page-course-view-eular .section .activity:first-of-type {
  padding-top: 0;
}
#page-course-view-eular .section .activity:last-of-type {
  padding-bottom: 0;
}
#page-course-view-eular .section .activity.modtype_label p:first-of-type {
  margin-top: 0;
}
#page-course-view-eular .section .activity p:empty {
  margin: 0;
}
#page-course-view-eular .course-content ul.eular .bluesection {
  border-bottom: 1px solid gray;
  padding: 25px 15px 5px;
}
#page-course-view-eular .course-content ul.eular .bluesection .modtype_label p {
  background: var(--esor-education);
}
#page-course-view-eular .course-content ul.eular .bluesection .sectionname {
  color: var(--color-state);
  line-height: 1.5;
}
#page-course-view-eular .course-content ul.eular .bluesection .toggle_image {
  color: var(--color-state);
  top: 10px;
}
#page-course-view-eular .course-content ul.eular .bluesection .activity .actions {
  right: -10px;
  top: 10px;
}
#page-course-view-eular .course-content ul.eular .bluesection .summary h5 {
  color: var(--color-primary);
  margin: 1.5rem 0 0 0;
  right: 0;
  top: 0;
}
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/dashboard.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
.path-totara-dashboard .totaraNav {
  margin-bottom: 0;
}
.path-totara-dashboard .user-hero-header .inner {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: right center;
  min-height: 150px;
}
@media (min-width: 992px) {
  .path-totara-dashboard .user-hero-header .inner {
    min-height: 200px;
  }
}
@media (min-width: 1200px) {
  .path-totara-dashboard .user-hero-header .inner {
    min-height: 250px;
  }
}
/*!*************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/enrol.scss ***!
  \*************************************************************************************************************************************************************************************************************************/
#page-enrol-index {
  /* Reposition self-enrollment form message above our custom buttons */
  /* Hide continue button from manual enrollment */
  /* Hide Saferpay login button */
  /* Hide default "Sign in" button for guests when custom registration block exists on the page */
  /* Only hides the direct child login button, not the one inside .enrol-registration-block */
  /* myEULAR Badge Styles */
  /* Ensure enrolment forms display properly below */
  /* Responsive adjustments - move badge below buttons when it starts getting cramped */
}
#page-enrol-index .block {
  border: none;
}
#page-enrol-index .block .block-title::after {
  display: none;
}
#page-enrol-index #block-region-side-pre .block {
  box-shadow: 4px 0 15px 0 rgba(0, 0, 0, 0.05);
}
#page-enrol-index #region-main div[role=main] > h2 {
  display: none;
}
#page-enrol-index #region-main div[role=main] h2.heading {
  display: block;
}
#page-enrol-index #region-main div[role=main] .tui-core_course-courseInfo .tui-core_course-courseInfo__image {
  display: none;
}
#page-enrol-index #region-main div[role=main] .tui-core_course-courseInfo .tui-core_course-courseInfo__summaryFiles {
  display: none;
}
#page-enrol-index #region-main div[role=main] .generaltable {
  overflow: auto;
}
#page-enrol-index #region-main div[role=main] .generaltable .button-group button.btn {
  width: auto !important;
}
#page-enrol-index #region-main .generalbox.info .panel.panel-default {
  border: none;
}
#page-enrol-index #region-main .generalbox.info .panel.panel-default .panel-heading.info {
  display: none;
}
#page-enrol-index #region-main .generalbox.info .panel.panel-default .summary {
  margin: 0;
}
#page-enrol-index #region-main .generalbox.info .panel.panel-default #toggle-summary {
  background-color: transparent;
  color: var(--color-primary);
  border: none;
  padding: 1rem 0;
}
#page-enrol-index #region-main .generalbox.info .panel.panel-default #toggle-summary .btn-label {
  padding: 0 0.5rem;
}
#page-enrol-index #region-main .enrol-registration-block {
  margin-top: 1rem;
}
#page-enrol-index .modal-container.saferpay .benefit-wrapper {
  max-height: 25vh;
  overflow: auto;
}
#page-enrol-index .modal-container.saferpay .benefit-item {
  border: solid 2px transparent;
  padding: 1rem 0.6rem;
}
#page-enrol-index .modal-container.saferpay .benefit-item label {
  display: block;
}
#page-enrol-index .modal-container.saferpay .benefit-item label .ben-info {
  display: flex;
  column-gap: 1.5rem;
  margin-bottom: 0.5rem;
}
#page-enrol-index .modal-container.saferpay .benefit-item label .ben-value {
  font-weight: bold;
  font-size: calc(var(--font-body-size)*1.2);
}
#page-enrol-index .modal-container.saferpay .benefit-item label .ben-description {
  font-size: calc(var(--font-body-size)*0.9);
}
#page-enrol-index .modal-container.saferpay .benefit-item input {
  display: none;
}
#page-enrol-index .modal-container.saferpay .benefit-item p {
  margin: 0;
}
#page-enrol-index .modal-container.saferpay .benefit-item:has(input[type="radio"]:checked) {
  border-color: var(--color-primary);
}
#page-enrol-index.lc-images-enrol #page .enrol-images.form-wrapper {
  display: none;
}
#page-enrol-index .btn-enrol {
  margin-bottom: 10px;
}
#page-enrol-index .fcontainer.clearfix .fitem.femptylabel .felement.fstatic {
  /* Hide the login button but keep the text */
}
#page-enrol-index .fcontainer.clearfix .fitem.femptylabel .felement.fstatic a.btn {
  display: none !important;
}
#page-enrol-index .continuebutton {
  display: none !important;
}
#page-enrol-index .box.generalbox.saferpay .inner a.btn[href*="login"] {
  display: none !important;
}
#page-enrol-index #region-main:has(.enrol-registration-block) div[role="main"] > a.btn.btn-default[href*="login"]:not(.enrol-registration-block a) {
  display: none !important;
}
#page-enrol-index .course-img-header .inner {
  position: relative;
}
#page-enrol-index .course-header-actions-wrapper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  min-height: 50px;
  padding-top: 10px;
}
#page-enrol-index .course-header-actions {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
}
#page-enrol-index .course-header-actions > * {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
}
#page-enrol-index .myeular-badge-wrapper {
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 0;
}
#page-enrol-index .myeular-badge-link {
  display: inline-block;
  transition: opacity 0.2s ease;
}
#page-enrol-index .myeular-badge-link:hover {
  opacity: 0.9;
}
#page-enrol-index .myeular-badge {
  max-width: 280px;
  height: auto;
  display: block;
}
#page-enrol-index .images-header-action .collapse, #page-enrol-index .sp-header-action > div {
  margin-top: 10px;
}
@media (max-width: 1200px) {
  #page-enrol-index .course-header-actions-wrapper {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
  #page-enrol-index .myeular-badge-wrapper {
    align-self: flex-start;
  }
  #page-enrol-index .myeular-badge {
    max-width: 280px;
  }
}
@media (max-width: 767px) {
  #page-enrol-index .course-header-actions {
    width: 100%;
  }
  #page-enrol-index .myeular-badge {
    max-width: 260px;
  }
}
@media (max-width: 480px) {
  #page-enrol-index .myeular-badge {
    max-width: 240px;
  }
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/signup.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
#page-login-signup .lc-wrapper {
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: 100% auto;
}
#page-login-signup .lc-wrapper .alert-with-icon {
  display: flex !important;
}
#page-login-signup .lc-wrapper #region-main {
  width: 100%;
  float: unset;
  left: unset;
  max-width: 1088px;
  min-height: 60vh;
  background-color: rgba(255, 255, 255, 0.75);
  margin: 0 auto;
  padding-left: var(--gap-8);
  padding-right: var(--gap-8);
  padding-top: var(--gap-12);
  padding-bottom: var(--gap-12);
}
#page-login-signup .lc-wrapper #region-main h2 {
  color: var(--color-primary);
}
#page-login-signup .lc-wrapper #region-main h2::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
#page-login-signup .lc-wrapper #region-main input[type=text], #page-login-signup .lc-wrapper #region-main input[type=password] {
  width: 100%;
  max-width: unset;
}
#page-login-signup .lc-wrapper #region-main .felement.fselect select {
  width: 100%;
  max-width: unset;
}
#page-login-signup .lc-wrapper #region-main .femptylabel .fitemtitle {
  display: none;
}
#page-login-signup .lc-wrapper #region-main .femptylabel .fstatic {
  width: 100%;
}
#page-login-signup .lc-wrapper #region-main .collapsible-actions {
  display: none;
}
#page-login-signup .lc-wrapper #region-main form#mform1 {
  display: flex;
  flex-direction: column;
  /* required fields*/
}
#page-login-signup .lc-wrapper #region-main form#mform1 .fdescription.required {
  order: 1;
}
#page-login-signup .lc-wrapper #region-main form#mform1 fieldset.collapsible {
  margin-top: 5rem;
  /* title*/
}
#page-login-signup .lc-wrapper #region-main form#mform1 fieldset.collapsible:first-of-type {
  margin-top: 0;
}
#page-login-signup .lc-wrapper #region-main form#mform1 fieldset.collapsible .ftoggler {
  display: none;
}
#page-login-signup .lc-wrapper #region-main form#mform1 fieldset.collapsible#id_category_1 {
  order: 2;
}
#page-login-signup .lc-wrapper #region-main form#mform1 fieldset.collapsible#id_createuserandpass {
  order: 3;
}
#page-login-signup .lc-wrapper #region-main form#mform1 fieldset.collapsible#id_supplyinfo {
  order: 4;
  margin-top: 0;
}
#page-login-signup .lc-wrapper #region-main form#mform1 .fitem.lc-create-notice {
  order: 7;
}
#page-login-signup .lc-wrapper #region-main form#mform1 .fitem.lc-create-notice p {
  margin: 0;
  padding: 0 16px;
}
#page-login-signup .lc-wrapper #region-main form#mform1 .fitem#fitem_id_city {
  display: none;
}
#page-login-signup .lc-wrapper #region-main form#mform1 .fitem.fitem_passwordunmask .totara_passwordunmask .wrap {
  flex-grow: 1;
}
#page-login-signup .lc-wrapper #region-main form#mform1 #id_category_2 {
  order: 6;
  margin-top: 0;
}
#page-login-signup .lc-wrapper #region-main form#mform1 #id_category_5 {
  order: 5;
}
#page-login-signup .lc-wrapper #region-main form#mform1 #fgroup_id_buttonar {
  order: 8;
}
#page-login-signup .lc-wrapper #region-main form#mform1 .fitem_actionbuttons input {
  padding: 8px 16px;
}
#page-login-signup .lc-wrapper #region-main #fitem_id_email2 {
  display: none;
}
#page-login-signup #page-footer {
  margin-top: 0;
}
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/landingpage.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
#page-site-index .totaraNav {
  margin-bottom: 0;
}
#page-site-index .hero-section {
  background-position: right center;
  background-repeat: no-repeat;
  background-size: contain;
  max-height: calc(100vh - 91px);
}
@media (max-width: 989px) {
  #page-site-index .hero-section {
    background-size: cover;
  }
}
#page-site-index .hero-section .section-inner {
  padding: 5rem 0;
}
#page-site-index .hero-section .section-inner .row {
  background-color: rgba(255, 255, 255, 0.8);
}
@media (min-width: 768px) {
  #page-site-index .hero-section .section-inner {
    padding: 15% 0;
  }
}
#page-site-index .hero-section .section-inner h1 {
  font-size: 4rem;
  line-height: 4.8rem;
  font-weight: bold;
  color: var(--color-primary);
  margin: 2rem 0 1rem;
}
#page-site-index .hero-section .section-inner h2 {
  font-size: 2.5rem;
  line-height: 3rem;
  font-weight: normal;
  color: var(--color-primary);
  margin: 1rem 0 3rem;
}
#page-site-index .hero-section .section-inner .btn-secondary {
  padding: 12px 18px;
}
#page-site-index .ca-section {
  padding: calc(var(--gap-4) * 2) 0;
}
@media (min-width: 992px) {
  #page-site-index .ca-section {
    padding: calc(var(--gap-4) * 4) 0;
  }
}
@media (min-width: 1200px) {
  #page-site-index .ca-section {
    padding: calc(var(--gap-4) * 6) 0;
  }
}
#page-site-index .ca-section .content {
  text-align: center;
}
#page-site-index .era-section .container-fluid iframe {
  width: 100%;
  aspect-ratio: 1.7777777778;
}
#page-site-index .era-section .container-fluid .wrapper h3 {
  margin: 0 0 3rem;
}
#page-site-index .era-section .container-fluid .wrapper p {
  margin: 0;
}
#page-site-index .era-section .container-fluid .wrapper h4 {
  margin: 3rem 0 4rem;
}
#page-site-index .era-section .container-fluid .item {
  text-align: center;
}
#page-site-index .era-section .container-fluid .item img {
  max-width: 100%;
  display: block;
  margin: 0 auto 1rem;
}
#page-site-index .era-section .container-fluid .item p {
  margin: 0;
  font-weight: bold;
}
/**
 * LC_LANDING_COURSES
 */
#page-site-index .latest-courses-section {
  margin-top: calc(var(--gap-4) * 2);
}
@media (min-width: 992px) {
  #page-site-index .latest-courses-section {
    margin-top: calc(var(--gap-4) * 4);
  }
}
@media (min-width: 1200px) {
  #page-site-index .latest-courses-section {
    margin-top: calc(var(--gap-4) * 6);
  }
}
#page-site-index .latest-courses-section .block_lc_latest_courses {
  margin-bottom: 0;
  border: none;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-header {
  padding: 0;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-header .block-title {
  padding: 0;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-header .block-title::after {
  display: none;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-header .block-title h2 {
  color: var(--color-primary);
  font-weight: bold;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content {
  padding: 0;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .slick-arrow::before {
  color: var(--color-primary);
  opacity: 1;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .slick-arrow.slick-disabled::before {
  color: var(--color-neutral-5);
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .slick-dots button::before {
  color: var(--color-neutral-5);
  opacity: 1;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .slick-dots .slick-active button::before {
  color: var(--color-primary);
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .block_lc_latest_courses-row-item button[type=submit] {
  border-color: transparent;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .block_lc_latest_courses-row-item .image-block {
  border-radius: 0.4rem;
}
#page-site-index .latest-courses-section .block_lc_latest_courses .block-content .block_lc_latest_courses-row-item .info-block h4 {
  font-weight: bold;
}
/**
 * Shared styling
 */
#page-site-index .btn-primary {
  padding: 12px 18px;
}
#page-site-index .latest-courses-section h2, #page-site-index .era-section h3, #page-site-index .era-section h4 {
  color: var(--color-primary);
  font-weight: bold;
}
#page-site-index .latest-courses-section h2::after, #page-site-index .era-section h3::after, #page-site-index .era-section h4::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
#page-site-index .latest-courses-section h2, #page-site-index .era-section h3 {
  font-size: 18px;
}
/*!*************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/login.scss ***!
  \*************************************************************************************************************************************************************************************************************************/
#page-login-index .tui-core_auth-login .tui-core_auth-login__title::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
#page-login-index .tui-core_auth-login .tui-core_auth-login__errorInner {
  display: block;
}
#page-login-index .tui-core_auth-login .tui-core_auth-login__error .singlebutton {
  margin-top: 1rem;
  display: block;
}
#page-login-index .tui-core_auth-login .tui-core_auth-login__error .singlebutton .btn-primary {
  width: 100%;
}
#page-login-index .tui-core_auth-login .tui-formRow label {
  font-weight: bold;
}
#page-login-index .tui-core_auth-login > div a[href$="login/signup.php"] {
  display: block;
  font-size: var(--font-size-heading-level-2);
  margin: 1.25rem 0;
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/program.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
.path-totara-program .totaraNav {
  margin-bottom: 0;
}
.path-totara-program .breadcrumb-container {
  display: none;
}
.path-totara-program .program-img-header-wrapper .inner .category {
  margin-top: 2rem;
}
.path-totara-program .program-img-header-wrapper .inner .category > span {
  font-weight: bold;
  padding: 8px 16px;
  border-radius: 3px;
  background-color: white;
  color: var(--color-primary);
}
.path-totara-program #view-program-content > h2 {
  display: none;
}
.path-totara-program #view-program-content .notifymessage {
  margin-top: 3rem;
}
.path-totara-program #view-program-content .programprogress {
  display: flex;
  align-items: center;
}
.path-totara-program #view-program-content .programprogress .item:nth-child(3) {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.path-totara-program #view-program-content .programprogress .item .progressbar_container .progress div[role=progressbar] .progressbar__text {
  color: white;
}
.path-totara-program #view-program-content .display-program {
  margin-top: 4rem;
  border: none;
  padding: 0;
}
.path-totara-program #view-program-content .display-program .generaltable tr .header {
  border-bottom: solid 1px #707070;
}
.path-totara-program #view-program-content .display-program .generaltable tr .cell {
  border-bottom: solid 1px #bbb;
}
.path-totara-program #view-program-content .display-program .generaltable tr .cell.coursename .course_icon {
  display: none;
}
.path-totara-program #view-program-content .display-program .generaltable tr .cell.status {
  position: relative;
}
.path-totara-program #view-program-content .display-program .generaltable tr .cell.status .progressbar_container {
  position: absolute;
  top: 50%;
  margin-top: -7px;
  width: calc(100% - 16px);
}
.path-totara-program #view-program-content .display-program .generaltable tr.lastrow .cell {
  border-bottom: none;
}
.path-totara-program #view-program-content .nextsetoperator {
  padding-bottom: 0;
}
/*!***************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/plan-record-courses.scss ***!
  \***************************************************************************************************************************************************************************************************************************************/
#page-totara-plan-record-courses {
  /* hide some elements for non site admins*/
}
#page-totara-plan-record-courses .block_totara_report_table h2 {
  color: var(--color-primary) !important;
}
#page-totara-plan-record-courses #region-main #dp-plan-content h2 {
  font-size: 2.5rem;
  line-height: 3rem;
  font-weight: normal;
  color: var(--color-primary);
  margin: 1rem 0 3rem;
}
#page-totara-plan-record-courses #region-main #dp-plan-content h2::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
#page-totara-plan-record-courses.no-sa #region-main .rb-showhide, #page-totara-plan-record-courses.no-sa #region-main #rb_export_form {
  display: none;
}
/*!************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/quiz.scss ***!
  \************************************************************************************************************************************************************************************************************************/
/*!********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/quiz_generic.scss ***!
  \********************************************************************************************************************************************************************************************************************************/
body.path-mod-quiz .totaraNav {
  margin-bottom: 0;
}
body.path-mod-quiz .course-img-header-wrapper.quiz-header {
  margin-bottom: var(--gap-8);
}
body.path-mod-quiz .course-img-header-wrapper.quiz-header p {
  margin: 0;
}
body.path-mod-quiz .course-img-header-wrapper.quiz-header p.back2quiz {
  margin-top: 1rem;
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/quiz_question.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
body.path-mod-quiz .que .info-wrapper {
  display: flex;
  justify-content: flex-end;
}
body.path-mod-quiz .que .info {
  float: none;
  display: block;
  width: auto;
  background-color: white;
}
body.path-mod-quiz .que .info h3 {
  font-size: 2rem;
  color: var(--color-primary);
}
body.path-mod-quiz .que .content {
  margin-left: 0;
}
body.path-mod-quiz .que .content .qtext .img-responsive {
  float: none;
  margin: 0;
  max-width: unset;
  width: 100%;
}
body.path-mod-quiz .que .content .answer > div {
  position: relative;
  text-indent: 0;
  padding: 8px 0 8px 36px;
}
body.path-mod-quiz .que .content .answer > div input[type="checkbox"] {
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid var(--color-primary);
  border-radius: 50%;
  outline: none;
  margin: 0;
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translate(0, -50%);
}
body.path-mod-quiz .que .content .answer > div input[type="checkbox"]:checked::before {
  background-color: var(--color-primary);
}
body.path-mod-quiz .que .content .answer > div input[type="checkbox"]::before {
  content: "";
  display: block;
  width: 76%;
  height: 76%;
  margin: 2px;
  border-radius: 50%;
}
body.path-mod-quiz .que .content .outcome {
  border-width: var(--border-width-thin);
  border-radius: 0;
}
body.path-mod-quiz .que .content .outcome .feedback table {
  border: none;
}
body.path-mod-quiz .que .content .outcome .feedback table tr:first-of-type td {
  border-top: none;
}
body.path-mod-quiz .que .content .outcome .feedback table tr:last-of-type td {
  border-bottom: none;
}
body.path-mod-quiz .que .content .outcome .feedback table tr td:first-of-type {
  border-left: none;
}
body.path-mod-quiz .que .content .outcome .feedback table tr td:last-of-type {
  border-right: none;
}
body.path-mod-quiz .que.incorrect .content .outcome, body.path-mod-quiz .que.notanswered .content .outcome {
  color: var(--esor-red);
  border-color: var(--esor-red);
}
body.path-mod-quiz .que.incorrect .content .outcome .feedback table tr td, body.path-mod-quiz .que.notanswered .content .outcome .feedback table tr td {
  border-color: var(--esor-red);
}
body.path-mod-quiz .que.partiallycorrect .content .outcome, body.path-mod-quiz .que.correct .content .outcome {
  color: var(--esor-green);
  border-color: var(--esor-green);
}
body.path-mod-quiz .que.partiallycorrect .content .outcome .feedback table tr td, body.path-mod-quiz .que.correct .content .outcome .feedback table tr td {
  border-color: var(--esor-green);
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/quiz_navblock.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
body.path-mod-quiz #mod_quiz_navblock {
  border: none;
}
body.path-mod-quiz #mod_quiz_navblock .block-title::after {
  /* display: none;*/
}
body.path-mod-quiz #mod_quiz_navblock .qn_buttons .qnbutton {
  font-size: 1.5rem;
  width: 5ch;
  height: 5ch;
  line-height: 5ch;
  font-weight: normal;
  border-radius: 0;
  border: solid 1px var(--color-primary);
}
body.path-mod-quiz #mod_quiz_navblock .qn_buttons .qnbutton.thispage {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
  color: white;
}
body.path-mod-quiz #mod_quiz_navblock .qn_buttons .qnbutton .thispageholder {
  border: none;
}
body.path-mod-quiz #mod_quiz_navblock .qn_buttons .qnbutton.answersaved {
  background-color: #ccddf1;
}
body.path-mod-quiz #mod_quiz_navblock .qn_buttons .qnbutton.notanswered .trafficlight {
  border-color: var(--color-prompt-alert);
}
body#page-mod-quiz-review #mod_quiz_navblock .qn_buttons .qnbutton {
  background-color: white;
  border: solid 1px var(--color-primary);
}
body#page-mod-quiz-review #mod_quiz_navblock .qn_buttons .qnbutton .trafficlight {
  border: none;
}
body#page-mod-quiz-review #mod_quiz_navblock .qn_buttons .qnbutton.correct, body#page-mod-quiz-review #mod_quiz_navblock .qn_buttons .qnbutton.partiallycorrect {
  border-color: var(--esor-green);
  color: var(--esor-green);
}
body#page-mod-quiz-review #mod_quiz_navblock .qn_buttons .qnbutton.incorrect, body#page-mod-quiz-review #mod_quiz_navblock .qn_buttons .qnbutton.notanswered {
  border-color: var(--esor-red);
  color: var(--esor-red);
}
/*!******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/sitepolicy.scss ***!
  \******************************************************************************************************************************************************************************************************************************/
#page-admin-tool-sitepolicy-userpolicy.lc-no-footer footer, #page-admin-tool-sitepolicy-userexit.lc-no-footer footer {
  display: none;
}
#page-admin-tool-sitepolicy-userpolicy .totaraNav, #page-admin-tool-sitepolicy-userpolicy .breadcrumb-container, #page-admin-tool-sitepolicy-userexit .totaraNav, #page-admin-tool-sitepolicy-userexit .breadcrumb-container {
  display: none;
}
#page-admin-tool-sitepolicy-userpolicy #region-main, #page-admin-tool-sitepolicy-userexit #region-main {
  visibility: hidden;
}
#page-admin-tool-sitepolicy-userpolicy #region-main #tf_fid_tool_sitepolicy_form_userconsentform, #page-admin-tool-sitepolicy-userexit #region-main #tf_fid_tool_sitepolicy_form_userconsentform {
  display: none;
}
#page-admin-tool-sitepolicy-userpolicy #region-main .user_policy_wrapper, #page-admin-tool-sitepolicy-userexit #region-main .user_policy_wrapper {
  visibility: visible;
}
#page-admin-tool-sitepolicy-userpolicy.lc-loading .user_policy_wrapper, #page-admin-tool-sitepolicy-userexit.lc-loading .user_policy_wrapper {
  visibility: hidden !important;
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper {
  z-index: 1000;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: auto;
  background-color: var(--color-primary);
  color: white;
  min-height: 200px;
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy {
  padding: 6rem 2rem;
  max-width: 1100px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  row-gap: 2rem;
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_text, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_text {
  width: 100%;
}
@media (min-width: 992px) {
  #page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_text, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_text {
    width: 70%;
  }
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_text h2, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_text h2 {
  margin-top: 0;
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_text a, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_text a {
  color: white;
  text-decoration: underline;
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_btns, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_btns {
  width: 100%;
  text-align: right;
}
@media (min-width: 992px) {
  #page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_btns, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_btns {
    width: 30%;
  }
}
#page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_btns button, #page-admin-tool-sitepolicy-userpolicy .user_policy_wrapper .user_policy .user_policy_btns input[type=submit], #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_btns button, #page-admin-tool-sitepolicy-userexit .user_policy_wrapper .user_policy .user_policy_btns input[type=submit] {
  background-color: white;
  color: var(--color-primary);
  font-weight: bold;
}
/* Styling when embedded on other pages*/
#overlay_terms {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: white;
  opacity: 0.75;
  z-index: calc(var(--zindex-navbar) + 5);
}
.userpolicy iframe {
  display: block;
}
.userpolicy.iframe-wrapper {
  height: 200px;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: calc(var(--zindex-navbar) + 10);
}
/*!********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/scorm-player.scss ***!
  \********************************************************************************************************************************************************************************************************************************/
#page-mod-scorm-player #region-main {
  width: 100%;
  margin: 0;
  padding: 0;
}
#page-mod-scorm-player .page-wrapper > div > .container-fluid {
  max-width: 100%;
  margin: 0;
  padding: 0;
}
#page-mod-scorm-player #page-content {
  margin: 0;
  padding: 0;
}
#page-mod-scorm-player #page-content #region-main.col-md-push-3 {
  left: unset;
}
#page-mod-scorm-player #page-content #block-region-side-pre {
  display: none;
}
#page-mod-scorm-player .breadcrumb-container-wrapper {
  display: none;
}
#page-mod-scorm-player .exit_activity {
  position: absolute;
  top: 0px;
  color: transparent;
  height: 60px;
  width: 70px;
}
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/user-edit.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
#page-user-edit.no-sa #region-main #fitem_id_maildisplay, #page-user-edit.no-sa #region-main #fitem_id_forcedtimezone, #page-user-edit.no-sa #region-main #fitem_id_theme, #page-user-edit.no-sa #region-main #fitem_id_description_editor, #page-user-edit.no-sa #region-main #fitem_id_imagealt, #page-user-edit.no-sa #region-main #id_moodle_additional_names, #page-user-edit.no-sa #region-main #id_moodle_interests, #page-user-edit.no-sa #region-main #id_moodle_optional {
  display: none;
}
#page-user-edit .esor-temp-required, #page-user-editadvanced .esor-temp-required {
  color: var(--esor-red);
  font-weight: bold;
  font-size: 18px;
  border: 2px solid var(--esor-red);
  padding: 5px;
  display: inline-block;
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/notifications.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
body.path-message .notifications-header {
  margin-bottom: 50px;
}
body.path-message .notifications-header img.icon {
  height: auto;
  width: auto;
  max-width: 200px;
}
body.path-message .notifications-footer {
  margin-top: 50px;
}
body.path-message .notifications-footer img.icon {
  height: auto;
  width: auto;
}
body.path-message .notifications-footer .social-icons {
  margin-bottom: 10px;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
body.path-message .notifications-footer .social-icons a img.icon {
  margin: 0;
}
body.path-message .notifications-footer .social-icons a:hover {
  text-decoration: none;
}
/*!***************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/pages/pathway.scss ***!
  \***************************************************************************************************************************************************************************************************************************/
body.format-pathway .tui-sidePanel .tui-format_pathway-courseInformation {
  display: none;
}
body.format-pathway .tui-pageBackLink {
  display: none;
}
/*!**************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/index.scss ***!
  \**************************************************************************************************************************************************************************************************************************/
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/_generic.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
.block .block-header .block-title {
  padding: 0;
}
.block .block-header .block-title h2 {
  font-size: 2.5rem;
  line-height: 3rem;
  font-weight: normal;
  color: var(--color-primary);
  margin: 1rem 0 3rem;
}
.block .block-header .block-title h2::after {
  content: "";
  display: block;
  width: 50%;
  max-width: 60px;
  background-color: var(--color-primary);
  height: 4px;
  border-radius: 4px;
  margin-top: 0.33rem;
}
.block .block-header .block-title::after {
  display: none;
}
#block-region-side-post .block, #block-region-side-pre .block, #region-main .block {
  margin-bottom: 2rem;
}
@media (min-width: 992px) {
  #block-region-side-post .block, #block-region-side-pre .block, #region-main .block {
    margin-bottom: 4rem;
  }
}
@media (min-width: 1200px) {
  #block-region-side-post .block, #block-region-side-pre .block, #region-main .block {
    margin-bottom: 8rem;
  }
}
#block-region-side-post .block:last-of-type, #block-region-side-pre .block:last-of-type, #region-main .block:last-of-type {
  margin-bottom: 0;
}
/*!*************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/landing_profiles.scss ***!
  \*************************************************************************************************************************************************************************************************************************************/
.block_landing_pic .block-content ul.unlist {
  margin: 0;
  width: 100%;
}
.block_landing_pic .block-content ul.unlist li {
  display: none;
  margin: 0;
}
.block_landing_pic .block-content ul.unlist li.lc-add-edit {
  display: block;
  margin-top: 3rem;
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration {
  display: block;
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column {
  display: block;
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .landing_pic-title {
  display: none;
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items {
  display: flex;
  flex-wrap: wrap;
  row-gap: 2.5rem;
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row {
  width: 100%;
}
@media (min-width: 768px) {
  .block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row {
    width: 50%;
  }
}
@media (min-width: 992px) {
  .block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row {
    width: 33.33%;
  }
}
@media (min-width: 1200px) {
  .block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row {
    width: 25%;
  }
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row .landing_pic-image {
  border: solid 5px var(--color-primary);
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row .landing_pic-name {
  margin-top: 1rem;
  font-weight: bold;
}
.block_landing_pic .block-content ul.unlist li.lc-eular-school-administration .column .link_items .items_per_row .landing_pic-email {
  display: none;
}
/*!**********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/landing_award.scss ***!
  \**********************************************************************************************************************************************************************************************************************************/
@media (min-width: 992px) {
  .block_landing_award .block-content .items_per_row {
    margin: 0 10%;
  }
}
.block_landing_award .block-content .items_per_row img {
  width: 100%;
  height: auto;
}
/*!*******************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/user_stats.scss ***!
  \*******************************************************************************************************************************************************************************************************************************/
.block_user_stats .block-content {
  padding: 0;
}
.block_user_stats .block-content .wrapper {
  column-gap: 0.5rem;
  align-items: center;
}
.block_user_stats .block-content .wrapper .user-profile {
  max-width: 30%;
}
.block_user_stats .block-content .wrapper .stats {
  max-width: 70%;
}
.block_user_stats .block-content .wrapper .stats .item {
  margin-bottom: 0.6rem;
}
.block_user_stats .block-content .wrapper .stats .item .value {
  margin-left: 0.6rem;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.block_user_stats .block-content .wrapper .stats .item:last-of-type {
  margin-bottom: 0;
}
.block_user_stats .block-content .wrapper .stats .item .icon {
  height: 2.5rem;
  width: 2.5rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.block_user_stats .block-content .wrapper .stats .item.completions .icon {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/ion_hourglass-outline);
}
.block_user_stats .block-content .wrapper .stats .item.badges .icon {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/icon_badges);
}
.block_user_stats .block-content .wrapper .stats .item.time .icon {
  background-image: url(/theme/image.php/esor/theme_esor/1761571146/icons/time);
}
/*!*********************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/user_profile.scss ***!
  \*********************************************************************************************************************************************************************************************************************************/
.block_user_profile .block-content .wrapper .image-wrapper .userpicture {
  border: solid 4px var(--color-primary);
}
.block_user_profile .block-content .wrapper .image-wrapper .fullname {
  text-align: center;
  font-weight: bold;
}
.block_user_profile .block-content .wrapper .divider {
  margin-top: 0rem;
  margin-bottom: 0rem;
  width: 2px;
  background-color: var(--color-border);
}
.block_user_profile .block-content .wrapper .profile-info .profile-field > label {
  font-weight: bold;
}
/*!*****************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??ruleSet[1].rules[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[0].use[2]!./client/component/theme_esor/src/global_styles/blocks/showcase.scss ***!
  \*****************************************************************************************************************************************************************************************************************************/
.block_showcase .items .item .item-inner {
  padding: 2rem;
  color: white;
}
.block_showcase .items .item .item-inner img {
  width: 40% !important;
  margin: 0 30% !important;
}
.block_showcase .items .item .item-inner .item-title {
  margin-top: 3rem;
  margin-bottom: 1.5rem;
  overflow: unset !important;
}
.block_showcase.hero-section {
  margin-top: 6rem;
}
@media (min-width: 992px) {
  .block_showcase.hero-section {
    margin-top: 0rem;
  }
}
.block_showcase.hero-section.chromeless {
  background-color: var(--color-primary);
  box-shadow: -25vw 0 var(--color-primary), 25vw 0 var(--color-primary);
}
.block_showcase.hero-section.chromeless .block-header {
  padding-top: 3rem;
}
.block_showcase.hero-section.chromeless .block-header .block-title h2 {
  color: white;
  margin-top: 0;
}
.block_showcase.hero-section.chromeless .block-header .block-title h2::after {
  background-color: white;
}
.block_showcase.hero-section.chromeless .block-content {
  padding-bottom: 3rem;
}
.block_showcase.hero-section.chromeless .block-content .items .item {
  background-color: #004da8;
}
.block_showcase.hero-section.chromeless .block-content .header .cta a {
  color: white;
}
.block_showcase.hero-section.chromeless .block-content .header .cta a:hover {
  color: white;
}
.block_showcase.secondary-section .block-content {
  padding-bottom: 3rem;
}
.block_showcase.secondary-section .block-content .items .item {
  background-color: white;
  box-sizing: border-box;
  border: solid 2px var(--color-primary);
}
.block_showcase.secondary-section .block-content .items .item.no-body .item-inner .item-title {
  margin-bottom: 0;
}
.block_showcase.secondary-section .block-content .items .item .item-inner {
  color: var(--color-primary);
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??clonedRuleSet-528.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-528.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./client/component/theme_esor/src/components/login/LoginForm.vue?vue&type=style&index=0&id=6ea6f199&lang=scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************/
.tui-core_auth-loginForm__options {
  display: flex;
  flex-flow: row wrap;
  gap: var(--gap-2);
  align-items: baseline;
  justify-content: space-between;
}
.tui-core_auth-loginForm__submitWrap {
  display: flex;
  flex-flow: column;
}
.tui-core_auth-loginForm__content {
  display: flex;
  flex-flow: column;
  gap: var(--gap-6);
}
.tui-core_auth-loginForm__help {
  display: flex;
}
.tui-core_auth-loginForm__heading {
  font-weight: normal;
  font-size: var(--font-heading-small-size);
  line-height: var(--font-heading-small-line-height);
  margin-bottom: var(--gap-4);
}
.tui-core_auth-loginForm__termsConditions {
  font-weight: bold;
  margin: 1rem 0 2rem;
}
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./client/tooling/webpack/css_raw_loader.js??clonedRuleSet-528.use[1]!./node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-528.use[2]!./node_modules/vue-loader/dist/index.js??ruleSet[0].use[0]!./client/component/theme_esor/src/pages/overrides/core_auth/Login.vue?vue&type=style&index=0&id=77aa0ad4&lang=scss ***!
  \**********************************************************************************************************************************************************************************************************************************************************************************************************************************/
.tui-core_auth-login {
  display: flex;
  flex-flow: column;
  gap: var(--gap-6);
}
.tui-core_auth-login__separator {
  border: 1px solid var(--color-neutral-5);
  border-width: 1px 0 0 0;
}
.tui-core_auth-login__errorInner {
  display: inline-flex;
  font-weight: var(--font-body-sm-weight);
  font-size: var(--font-body-sm-size);
  font-family: var(--font-body-sm-family);
  line-height: var(--font-body-sm-line-height);
  padding: var(--gap-3);
  color: var(--color-prompt-alert);
  background-color: var(--color-prompt-alert-bg);
  border-radius: 8px;
}
.tui-core_auth-login__title {
  margin: 0;
}
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvZm9udHMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV92ZW50dXJhL2J1aWxkL2dsb2JhbF9zdHlsZXMvX3ZhcmlhYmxlcy5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9fdmFyaWFibGVzLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2Fib3V0dXNoZWFkZXIuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvYW51cmFfY291cnNlLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2NvdXJzZWhlYWRlci5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9jb25maXJtX2luZm8uZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvZm9vdGVyLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL25hdmlnYXRpb24uZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvbGFuZGluZ19hd2FyZHMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvaGlkZV9ndWVzdC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9zcF9tb2RhbC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy90ZXJtcy5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9jYWxlbmRhci5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9jYXRhbG9nLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL2NvdXJzZS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy90eXBvLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL2V1bGFyQ291cnNlRm9ybWF0LmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL2Rhc2hib2FyZC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9lbnJvbC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9zaWdudXAuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvbGFuZGluZ3BhZ2UuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvbG9naW4uZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvcHJvZ3JhbS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9wbGFuLXJlY29yZC1jb3Vyc2VzLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfZ2VuZXJpYy5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9xdWl6X3F1ZXN0aW9uLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfbmF2YmxvY2suZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvc2l0ZXBvbGljeS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9zY29ybS1wbGF5ZXIuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvdXNlci1lZGl0LmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL25vdGlmaWNhdGlvbnMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvcGF0aHdheS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9ibG9ja3MvX2dlbmVyaWMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL2xhbmRpbmdfcHJvZmlsZXMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL2xhbmRpbmdfYXdhcmQuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3VzZXJfc3RhdHMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3VzZXJfcHJvZmlsZS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9ibG9ja3Mvc2hvd2Nhc2UuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL3R1aV9idW5kbGUuZGV2ZWxvcG1lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdBO0FDNEJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDM0JJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7OztBQ2pDaEI7QUFBQTtBQUFBO0FBQUE7QUFNZ0I7QUFBQTtBQUFBO0FBTVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlJO0FBQUE7QUFBQTtBQWFoQjtBQUFBO0FBQUE7QUFNUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBVUo7QUFBQTtBQUFBO0FBQUE7QUFPUTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFBQTs7Ozs7OztBQ2pFcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9RO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBTUo7QUFBQTtBQUFBO0FBU1o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUM5Q1I7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7O0FDSko7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUNJO0FBQUE7QUFBQTtBQUFBO0FBT0o7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBRUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBVUk7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFNUjtBQUFBO0FBQUE7Ozs7QVB4R1I7QUFBQTtBQUFBOzs7O0FRQUk7QUFBQTtBQUFBO0FBSVk7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBSVE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFVcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT1E7QUFBQTtBQUFBO0FBT0o7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFRSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7Ozs7QUN2Rko7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRUTtBQUFBO0FBQUE7Ozs7QUM5QnBCO0FBQUE7QUFBQTs7OztBQ0FJO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQU9ZO0FBQUE7QUFBQTtBQUFBO0FBU2hCO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQVVSO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTs7OztBQ3ZIWjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBOzs7Ozs7O0FDTlE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXSjtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBVUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVoQjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlcEI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFPUjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFKO0FBQUE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVJO0FBQUE7QUFBQTtBQUFBO0FBTUo7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFVSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBUUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBUUo7QUFBQTtBQUFBO0FBQUE7QUFPWTtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNJO0FBQUE7QUFBQTtBQUFBO0FBVUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBY2hCO0FBQUE7QUFBQTtBQUFBOzs7O0FDbllaO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDSTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0o7QUFBQTtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRUjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFBQTtBQU9BO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFRWjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWNKO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFRaEI7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUFBO0FBTUk7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFlaEM7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVoQjtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQU9SO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQVVBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTs7OztBQ3JqQko7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQytCSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBRHhCQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFNUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ2VaO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FETFk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1JO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWlCWjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWdCSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBUVI7QUFBQTtBQUFBO0FBVVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdoQjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9BO0FBQ0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBS0o7QUFDSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtKO0FBQ0k7QUFBQTtBQUFBO0FBQUE7Ozs7QUFjUTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWFJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFPWjtBQUFBO0FBQUE7QUFxQlk7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBRUk7QUFBQTtBQUFBO0FBT1o7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdJO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWNoQjtBQUFBO0FBQUE7Ozs7QUUvWlI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBVVI7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUMzREo7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUNqQlo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFSTtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFPSjtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFTSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFVSTtBQUFBO0FBQUE7QUFRaEI7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTtBQU9RO0FBQUE7QUFBQTtBQUVJO0FBQUE7QUFBQTtBQVFaO0FBQUE7QUFBQTtBQU9RO0FBQUE7QUFBQTtBQVNKO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBTUE7QUFDSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFLSjtBQUNJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBS0o7QUFDSTtBQUFBO0FBQUE7QUFBQTs7OztBQ2hRSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFhSTtBQUFBO0FBQUE7QUptQlI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUlkUTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFFSTtBQUFBO0FBQUE7QUFBQTtBQVFKO0FBQUE7QUFBQTtBQU1RO0FBQUE7QUFBQTtBQU9aO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBOzs7O0FDdklBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFDSTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUFjWjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFPUjtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBUVI7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBOzs7O0FBZXBCO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FMeEpBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FLZ0tBO0FBQUE7QUFBQTs7OztBTGhLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBTW5DUTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUMzQlI7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBTVE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFZUjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQU1RO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTWTtBQUFBO0FBQUE7QUFTcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdZO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVKO0FBQUE7QUFBQTtBQVFoQjtBQUFBO0FBQUE7Ozs7QUN2R1I7QUFBQTtBQUFBO0FBR1E7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QVJnQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QVF0QlE7QUFBQTtBQUFBOzs7Ozs7O0FDbEJKO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUNJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTs7OztBQ1BKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUk7QUFBQTtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjUTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWVo7QUFBQTtBQUFBO0FBQUE7QUFLUTtBQUFBO0FBQUE7QUFLWTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFhaEI7QUFBQTtBQUFBO0FBQUE7QUFPZ0I7QUFBQTtBQUFBO0FBYWhCO0FBQUE7QUFBQTtBQUFBO0FBT2dCO0FBQUE7QUFBQTs7OztBQ3JJNUI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQWFSO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTs7OztBQ3pEWjtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBYWhCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7OztBQ3ZHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFSO0FBQUE7QUFBQTtBQUFBO0FBS1E7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUNqQ1E7QUFBQTtBQUFBO0FBZ0JSO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUNsQkE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNRO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTs7OztBQzdCSjtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7Ozs7Ozs7QUNOQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBakJxQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QWlCaENRO0FBQUE7QUFBQTtBQWNSO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBOzs7O0FDbkNBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTs7OztBQ25EcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBOzs7O0FDTFI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNJO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTs7OztBQzlDUjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNRO0FBQUE7QUFBQTs7OztBQ3JCUjtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdaO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBT1o7QUFBQTtBQUFBO0FBSVE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQ0k7QUFBQTtBQUFBO0FBYXBCO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPWTtBQUFBO0FBQUE7QUFNUjtBQUFBO0FBQUE7Ozs7QUNuRmhCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7Ozs7QUFTRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0U7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvZm9udHMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvOjQwMCw3MDAsMjAwJyk7XG5cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfdmVudHVyYS9zcmMvZ2xvYmFsX3N0eWxlcy9fdmFyaWFibGVzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMuKi9cbi8qKi9cbi8qIENvcHlyaWdodCAoQykgMjAyMCBvbndhcmRzIFRvdGFyYSBMZWFybmluZyBTb2x1dGlvbnMgTFREKi9cbi8qKi9cbi8qIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMgaXMgcHJvdmlkZWQgb25seSB0byBUb3RhcmEqL1xuLyogTGVhcm5pbmcgU29sdXRpb25zIExURCdzIGN1c3RvbWVycyBhbmQgcGFydG5lcnMsIHB1cnN1YW50IHRvKi9cbi8qIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiBhIHNlcGFyYXRlIGFncmVlbWVudCB3aXRoIFRvdGFyYSovXG4vKiBMZWFybmluZyBTb2x1dGlvbnMgTFREIG9yIGl0cyBhZmZpbGlhdGUuKi9cbi8qKi9cbi8qIElmIHlvdSBkbyBub3QgaGF2ZSBhbiBhZ3JlZW1lbnQgd2l0aCBUb3RhcmEgTGVhcm5pbmcgU29sdXRpb25zKi9cbi8qIExURCwgeW91IG1heSBub3QgYWNjZXNzLCB1c2UsIG1vZGlmeSwgb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlLiovXG4vKiBQbGVhc2UgY29udGFjdCBbbGljZW5zaW5nQHRvdGFyYWxlYXJuaW5nLmNvbV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uKi9cbi8qKi9cbi8qIEBhdXRob3IgICAgS2V2aW4gSG90dGluZ2VyIDxrZXZpbi5ob3R0aW5nZXJAdG90YXJhbGVhcm5pbmcuY29tPiovXG4vKiBAbW9kdWxlIHR1aWNrYWdlICAgdHVpKi9cblxuLyogVGhpcyB2YXJpYWJsZSBmaWxlIGluY2x1ZGVzIHNwZWNpYWwgY29tbWVudHMgd2l0aCB0aGUgc3ludGF4IGB0aGVtZTp2YXJgIGFuZCovXG4vKiBgdGhlbWU6ZGVyaXZlYC4qL1xuLyoqL1xuLyogYHRoZW1lOnZhcmAgY29tbWVudHMgdGVsbCB0aGUgYnVpbGQgc3lzdGVtIHRoYXQgdGhpcyBpcyBhIGNvbmZpZ3VyYWJsZSovXG4vKiB2YXJpYWJsZSBhbmQgY2F1c2VzIGluZm9ybWF0aW9uIGFib3V0IGl0IHRvIGJlIGV4cG9ydGVkLiBUaGlzIGlzIG5lY2Nlc2FyeSovXG4vKiBmb3IgaXQgdG8gc2hvdyB1cCBpbiB0aGUgdGhlbWUgcGFuZWwuKi9cbi8qKi9cbi8qIGB0aGVtZTpkZXJpdmVgIGNvbW1lbnRzIGFkZCBpbmZvcm1hdGlvbiB0byB0aGUgZW50cnkgZm9yIGEgdGhlbWU6dmFyIHZhcmlhYmxlKi9cbi8qIHRlbGxpbmcgdGhlIHRoZW1lIHBhbmVsIHRoYXQgaXQgaXMgZGVyaXZlZCBmcm9tIGFub3RoZXIgdmFyaWFibGUuKi9cbi8qIFRoaXMgaW5mb3JtYXRhdGlvbiBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgbmV3IHZhbHVlIGZvciB0aGUgdmFyaWFibGUgaWYgdGhlKi9cbi8qIHZhbHVlIG9mIGFueSB2YXJpYWJsZSBpdCBpcyBkZXJpdmVkIGZyb20gaGFzIGNoYW5nZWQuKi9cblxuOnJvb3Qge1xuICAvKiovXG4gIC8qIFRoZW1lIGNvbG91cnMqL1xuICAvKiovXG5cbiAgLyogUHJpbWFyeSBjb2xvdXIqL1xuICAvKiBPZnRlbiB1c2VkIGZvciBkZWZhdWx0IGltYWdlLCBiYWNrZ3JvdW5kcywgbGluZSBzZXBhcmF0b3JzICYgdmlzdWFsIGluZGljYXRvcnMqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1wcmltYXJ5OiAjNjliZDQ1O1xuXG4gIC8qIFNlY29uZGFyeSBjb2xvdXIqL1xuICAvKiBPZnRlbiB1c2VkIGZvciB2aXN1YWwgY29tcG9uZW50cyBzdWNoIGFzIHByb2dyZXNzIGJhcnMgJiBjaGFydHMqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1zZWNvbmRhcnk6ICMwMDdhYjg7XG5cbiAgLyogVGVydGlhcnkgY29sb3VyKi9cbiAgLyogT2Z0ZW4gdXNlZCBmb3IgdmlzdWFsIGNvbXBvbmVudHMsIG11c3QgaGF2ZSBoaWdoIGNvbnRyYXN0IHRvIGJhY2tncm91bmQqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci10ZXJ0aWFyeTogIzFlYTRhOTtcblxuICAvKiovXG4gIC8qIEludGVyYWN0aXZlIHN0YXRlIGNvbG91cnMqL1xuICAvKiovXG5cbiAgLyogRGVmYXVsdCBzdGF0ZSBjb2xvdXIsIHNob3dzIGFuIGVsZW1lbnQgaXMgaW50ZXJhY3RpdmUqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1zdGF0ZTogIzRiN2UyYjtcblxuICAvKiBIb3ZlciBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gY3Vyc29yIGlzIG92ZXIgaW50ZXJhY3RpdmUgZWxlbWVudCovXG4gIC8qIHRoZW1lOnZhciAqL1xuICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWNvbG9yLXN0YXRlKSwgLTEwKSAqL1xuICAtLWNvbG9yLXN0YXRlLWhvdmVyOiAjM2M2NzIxO1xuICAvKiBGb2N1cyBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBoYXMgZm9jdXMgKGtleWJvYXJkIHRhYmJpbmcpKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tY29sb3Itc3RhdGUpLCAtMTApICovXG4gIC0tY29sb3Itc3RhdGUtZm9jdXM6ICMzYzY3MjE7XG4gIC8qIEFjdGl2ZSBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBpcyBhY3RpdmUgKGNsaWNrZWQpKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tY29sb3Itc3RhdGUpLCAtMjcpICovXG4gIC0tY29sb3Itc3RhdGUtYWN0aXZlOiAjMzA1NDFhO1xuICAvKiBIaWdobGlnaHQsIHZpc3VhbCBjbHVlIGZvciB0aGluZ3MgdGhhdCBuZWVkIHRvIGJlIGhpZ2hsaWdodGVkIG1vcmUqL1xuICAvKiBwcm9taW5lbnRseSB0aGFuIGhpZ2hsaWdodC1uZXV0cmFsLiovXG4gIC0tY29sb3Itc3RhdGUtaGlnaGxpZ2h0OiAjZjZmOWQ3O1xuICAvKiBOZXV0cmFsIGhpZ2hsaWdodCwgdmlzdWFsIGNsdWUgZm9yIGhvdmVyL2ZvY3VzIG9uIGNvbXBvbmVudHMgc3VjaCBhcyBhIGxpc3Qgcm93Ki9cbiAgLS1jb2xvci1zdGF0ZS1oaWdobGlnaHQtbmV1dHJhbDogdmFyKC0tY29sb3ItbmV1dHJhbC0zKTtcbiAgLyogRGlzYWJsZWQgY29sb3VyIG9mIGludGVyYWN0aXZlIGVsZW1lbnRzKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3Itc3RhdGUtZGlzYWJsZWQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG5cbiAgLyoqL1xuICAvKiBOZXV0cmFsIGNvbG91ciByYW5nZXMqL1xuICAvKiovXG5cbiAgLyogT2Z0ZW4gdXNlZCBmb3IgbmF2aWdhdGlvbiBiYXIsIGJhY2tncm91bmRzICYgZm9vdGVyKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3ItbmV1dHJhbC0xOiAjZmZmO1xuICAvKiBPZnRlbiB1c2VkIGZvciBjb250ZW50IGJhY2tncm91bmQqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTI6ICNmYWZhZmE7XG4gIC8qIE9mdGVuIHVzZWQgZm9yIHNpZGUgcGFuZWwgYmFja2dyb3VuZCAmIGRpc2FibGVkIGJ1dHRvbnMqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTM6ICNmN2Y3Zjc7XG4gIC8qIE9mdGVuIHVzZWQgZm9yIHByb2dyZXNzIGJhciBiYWNrZ3JvdW5kKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3ItbmV1dHJhbC00OiAjZTZlNGU0O1xuICAvKiBPZnRlbiB1c2VkIGZvciBjYXJkIGNvbXBvbmVudCBib3JkZXJzLCBsaW5lIHNlcGFyYXRvcnMgJiBkaXNhYmxlZCBidXR0b24qL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTU6ICNjN2M3Yzc7XG4gIC8qIE9mdGVuIHVzZWQgZm9yIGljb25zIGFuZCBmb3JtIGNvbXBvbmVudCBib3JkZXJzKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3ItbmV1dHJhbC02OiAjNzY3Njc2O1xuICAvKiBPZnRlbiB1c2VkIGZvciBoZWFkZXJzIGFuZCBib2R5IHRleHQqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTc6ICMyNjI2MjY7XG5cbiAgLyoqL1xuICAvKiBDb250ZW50IGNvbG91cnMqL1xuICAvKiovXG4gIC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbmV1dHJhbC0xKTtcbiAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtNyk7XG4gIC0tY29sb3ItdGV4dC1kaXNhYmxlZDogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgLS1jb2xvci10ZXh0LWhpbnQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtNik7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlKTtcbiAgLyogdGhlbWU6dmFyICovXG4gIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tbGluay1jb2xvciksIC0xMCkgKi9cbiAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1zdGF0ZS1ob3Zlcik7XG5cbiAgLyoqL1xuICAvKiBIZWFkZXIgY29sb3JzKi9cbiAgLyoqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1uYXYtYmctY29sb3I6ICNmZmY7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLW5hdi10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblxuICAvKiovXG4gIC8qIEZvb3RlciBjb2xvcnMqL1xuICAvKiovXG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLWZvb3Rlci1iZy1jb2xvcjogI2ZmZjtcbiAgLyogdGhlbWU6dmFyICovXG4gIC0tZm9vdGVyLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLyogdGhlbWU6ZGVyaXZlIGFkanVzdC1oZXgtdmFsdWUtYnJpZ2h0bmVzcyh2YXIoLS1mb290ZXItdGV4dC1jb2xvciksIC0xMCkgKi9cbiAgLS1mb290ZXItdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZm9vdGVyLXRleHQtY29sb3IpO1xuXG4gIC8qKi9cbiAgLyogQnV0dG9ucyovXG4gIC8qKi9cblxuICAvKiBTdGFuZGFyZCBidG4qL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1idG4tYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWJ0bi1hY2NlbnQtY29sb3IpLCAtMjcpICovXG4gIC0tYnRuLWFjY2VudC1jb2xvci1hY3RpdmU6IHZhcigtLWNvbG9yLXN0YXRlLWFjdGl2ZSk7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWJ0bi1hY2NlbnQtY29sb3IpLCAtMTApICovXG4gIC0tYnRuLWFjY2VudC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3Itc3RhdGUtaG92ZXIpO1xuICAtLWJ0bi1hY2NlbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLXN0YXRlLWRpc2FibGVkKTtcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9fdmFyaWFibGVzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMuKi9cbi8qKi9cbi8qIENvcHlyaWdodCAoQykgMjAyMCBvbndhcmRzIFRvdGFyYSBMZWFybmluZyBTb2x1dGlvbnMgTFREKi9cbi8qKi9cbi8qIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMgaXMgcHJvdmlkZWQgb25seSB0byBUb3RhcmEqL1xuLyogTGVhcm5pbmcgU29sdXRpb25zIExURCdzIGN1c3RvbWVycyBhbmQgcGFydG5lcnMsIHB1cnN1YW50IHRvKi9cbi8qIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiBhIHNlcGFyYXRlIGFncmVlbWVudCB3aXRoIFRvdGFyYSovXG4vKiBMZWFybmluZyBTb2x1dGlvbnMgTFREIG9yIGl0cyBhZmZpbGlhdGUuKi9cbi8qKi9cbi8qIElmIHlvdSBkbyBub3QgaGF2ZSBhbiBhZ3JlZW1lbnQgd2l0aCBUb3RhcmEgTGVhcm5pbmcgU29sdXRpb25zKi9cbi8qIExURCwgeW91IG1heSBub3QgYWNjZXNzLCB1c2UsIG1vZGlmeSwgb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlLiovXG4vKiBQbGVhc2UgY29udGFjdCBbbGljZW5zaW5nQHRvdGFyYWxlYXJuaW5nLmNvbV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uKi9cbi8qKi9cbi8qIEBhdXRob3IgICAgS2V2aW4gSG90dGluZ2VyIDxrZXZpbi5ob3R0aW5nZXJAdG90YXJhbGVhcm5pbmcuY29tPiovXG4vKiBAbW9kdWxlIHR1aWNrYWdlICAgdHVpKi9cblxuLyogVGhpcyB2YXJpYWJsZSBmaWxlIGluY2x1ZGVzIHNwZWNpYWwgY29tbWVudHMgd2l0aCB0aGUgc3ludGF4IGB0aGVtZTp2YXJgIGFuZCovXG4vKiBgdGhlbWU6ZGVyaXZlYC4qL1xuLyoqL1xuLyogYHRoZW1lOnZhcmAgY29tbWVudHMgdGVsbCB0aGUgYnVpbGQgc3lzdGVtIHRoYXQgdGhpcyBpcyBhIGNvbmZpZ3VyYWJsZSovXG4vKiB2YXJpYWJsZSBhbmQgY2F1c2VzIGluZm9ybWF0aW9uIGFib3V0IGl0IHRvIGJlIGV4cG9ydGVkLiBUaGlzIGlzIG5lY2Nlc2FyeSovXG4vKiBmb3IgaXQgdG8gc2hvdyB1cCBpbiB0aGUgdGhlbWUgcGFuZWwuKi9cbi8qKi9cbi8qIGB0aGVtZTpkZXJpdmVgIGNvbW1lbnRzIGFkZCBpbmZvcm1hdGlvbiB0byB0aGUgZW50cnkgZm9yIGEgdGhlbWU6dmFyIHZhcmlhYmxlKi9cbi8qIHRlbGxpbmcgdGhlIHRoZW1lIHBhbmVsIHRoYXQgaXQgaXMgZGVyaXZlZCBmcm9tIGFub3RoZXIgdmFyaWFibGUuKi9cbi8qIFRoaXMgaW5mb3JtYXRhdGlvbiBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgbmV3IHZhbHVlIGZvciB0aGUgdmFyaWFibGUgaWYgdGhlKi9cbi8qIHZhbHVlIG9mIGFueSB2YXJpYWJsZSBpdCBpcyBkZXJpdmVkIGZyb20gaGFzIGNoYW5nZWQuKi9cblxuOnJvb3Qge1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tZXNvci1ldWxhcjogIzAwNTdiYjtcbiAgICAtLWVzb3ItYWR2b2NhY3k6ICM1YzczMjE7XG4gICAgLS1lc29yLWNvbmdyZXNzOiAjZTEwMDdhO1xuICAgIC0tZXNvci1lZHVjYXRpb246ICNhNmM0ZTY7XG4gICAgLS1lc29yLWVtdW5ldDogIzkzMTE3RTtcbiAgICAtLWVzb3ItaHByOiAjZmRjNjBhO1xuICAgIC0tZXNvci1wYWVkOiAjNTlkY2UxO1xuICAgIC0tZXNvci1wYXJlOiAjYWZjYTA0O1xuICAgIC0tZXNvci1xb2M6ICNlZDZkMDU7XG4gICAgLS1lc29yLXJlc2VhcmNoOiAjMDEyMTY5O1xuXG4gICAgLS1lc29yLXJlZ29wZW46ICM2YzllMDM7XG5cbiAgICAtLWVzb3ItcmVkOiByZWQ7XG4gICAgLS1lc29yLWdyZWVuOiBncmVlbjtcblxuICAgIC8qKi9cbiAgICAvKiBUaGVtZSBjb2xvdXJzKi9cbiAgICAvKiovXG4gIFxuICAgIC8qIFByaW1hcnkgY29sb3VyKi9cbiAgICAvKiBPZnRlbiB1c2VkIGZvciBkZWZhdWx0IGltYWdlLCBiYWNrZ3JvdW5kcywgbGluZSBzZXBhcmF0b3JzICYgdmlzdWFsIGluZGljYXRvcnMqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItcHJpbWFyeTogdmFyKC0tZXNvci1ldWxhcik7XG4gIFxuICAgIC8qIFNlY29uZGFyeSBjb2xvdXIqL1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIHZpc3VhbCBjb21wb25lbnRzIHN1Y2ggYXMgcHJvZ3Jlc3MgYmFycyAmIGNoYXJ0cyovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1zZWNvbmRhcnk6IHZhcigtLWVzb3ItZXVsYXIpO1xuICBcbiAgICAvKiBUZXJ0aWFyeSBjb2xvdXIqL1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIHZpc3VhbCBjb21wb25lbnRzLCBtdXN0IGhhdmUgaGlnaCBjb250cmFzdCB0byBiYWNrZ3JvdW5kKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAtLWNvbG9yLXRlcnRpYXJ5OiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgXG4gICAgLyoqL1xuICAgIC8qIEludGVyYWN0aXZlIHN0YXRlIGNvbG91cnMqL1xuICAgIC8qKi9cbiAgXG4gICAgLyogRGVmYXVsdCBzdGF0ZSBjb2xvdXIsIHNob3dzIGFuIGVsZW1lbnQgaXMgaW50ZXJhY3RpdmUqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3Itc3RhdGU6IHZhcigtLWVzb3ItZXVsYXIpO1xuICBcbiAgICAvKiBIb3ZlciBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gY3Vyc29yIGlzIG92ZXIgaW50ZXJhY3RpdmUgZWxlbWVudCovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLyogdGhlbWU6ZGVyaXZlIGFkanVzdC1oZXgtdmFsdWUtYnJpZ2h0bmVzcyh2YXIoLS1jb2xvci1zdGF0ZSksIC0xMCkgKi9cbiAgICAtLWNvbG9yLXN0YXRlLWhvdmVyOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAvKiBGb2N1cyBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBoYXMgZm9jdXMgKGtleWJvYXJkIHRhYmJpbmcpKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWNvbG9yLXN0YXRlKSwgLTEwKSAqL1xuICAgIC0tY29sb3Itc3RhdGUtZm9jdXM6IHZhcigtLWVzb3ItZXVsYXIpO1xuICAgIC8qIEFjdGl2ZSBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBpcyBhY3RpdmUgKGNsaWNrZWQpKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWNvbG9yLXN0YXRlKSwgLTI3KSAqL1xuICAgIC0tY29sb3Itc3RhdGUtYWN0aXZlOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAvKiBIaWdobGlnaHQsIHZpc3VhbCBjbHVlIGZvciB0aGluZ3MgdGhhdCBuZWVkIHRvIGJlIGhpZ2hsaWdodGVkIG1vcmUqL1xuICAgIC8qIHByb21pbmVudGx5IHRoYW4gaGlnaGxpZ2h0LW5ldXRyYWwuKi9cbiAgICAtLWNvbG9yLXN0YXRlLWhpZ2hsaWdodDogI2Y2ZjlkNztcbiAgICAvKiBOZXV0cmFsIGhpZ2hsaWdodCwgdmlzdWFsIGNsdWUgZm9yIGhvdmVyL2ZvY3VzIG9uIGNvbXBvbmVudHMgc3VjaCBhcyBhIGxpc3Qgcm93Ki9cbiAgICAtLWNvbG9yLXN0YXRlLWhpZ2hsaWdodC1uZXV0cmFsOiB2YXIoLS1jb2xvci1uZXV0cmFsLTMpO1xuICAgIC8qIERpc2FibGVkIGNvbG91ciBvZiBpbnRlcmFjdGl2ZSBlbGVtZW50cyovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1zdGF0ZS1kaXNhYmxlZDogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgXG4gICAgLyoqL1xuICAgIC8qIE5ldXRyYWwgY29sb3VyIHJhbmdlcyovXG4gICAgLyoqL1xuICBcbiAgICAvKiBPZnRlbiB1c2VkIGZvciBuYXZpZ2F0aW9uIGJhciwgYmFja2dyb3VuZHMgJiBmb290ZXIqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItbmV1dHJhbC0xOiAjZmZmZmZmO1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIGNvbnRlbnQgYmFja2dyb3VuZCovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTI6ICNmYWZhZmE7XG4gICAgLyogT2Z0ZW4gdXNlZCBmb3Igc2lkZSBwYW5lbCBiYWNrZ3JvdW5kICYgZGlzYWJsZWQgYnV0dG9ucyovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTM6ICNmN2Y3Zjc7XG4gICAgLyogT2Z0ZW4gdXNlZCBmb3IgcHJvZ3Jlc3MgYmFyIGJhY2tncm91bmQqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItbmV1dHJhbC00OiAjZTZlNGU0O1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIGNhcmQgY29tcG9uZW50IGJvcmRlcnMsIGxpbmUgc2VwYXJhdG9ycyAmIGRpc2FibGVkIGJ1dHRvbiovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTU6ICNjN2M3Yzc7XG4gICAgLyogT2Z0ZW4gdXNlZCBmb3IgaWNvbnMgYW5kIGZvcm0gY29tcG9uZW50IGJvcmRlcnMqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItbmV1dHJhbC02OiAjNzY3Njc2O1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIGhlYWRlcnMgYW5kIGJvZHkgdGV4dCovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTc6ICMyNjI2MjY7XG4gIFxuICAgIC8qKi9cbiAgICAvKiBDb250ZW50IGNvbG91cnMqL1xuICAgIC8qKi9cbiAgICAtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtMSk7XG4gICAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1uZXV0cmFsLTcpO1xuICAgIC0tY29sb3ItdGV4dC1kaXNhYmxlZDogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgICAtLWNvbG9yLXRleHQtaGludDogdmFyKC0tY29sb3ItbmV1dHJhbC02KTtcbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAtLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlKTtcbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWxpbmstY29sb3IpLCAtMTApICovXG4gICAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1zdGF0ZS1ob3Zlcik7XG4gIFxuICAgIC8qKi9cbiAgICAvKiBIZWFkZXIgY29sb3JzKi9cbiAgICAvKiovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1uYXYtYmctY29sb3I6ICNmZmZmZmY7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1uYXYtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgXG4gICAgLyoqL1xuICAgIC8qIEZvb3RlciBjb2xvcnMqL1xuICAgIC8qKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAtLWZvb3Rlci1iZy1jb2xvcjogdmFyKC0tZXNvci1ldWxhcik7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1mb290ZXItdGV4dC1jb2xvcjogI2ZmZmZmZjtcbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWZvb3Rlci10ZXh0LWNvbG9yKSwgLTEwKSAqL1xuICAgIC0tZm9vdGVyLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWZvb3Rlci10ZXh0LWNvbG9yKTtcbiAgICAvKiovXG4gICAgLyogQnV0dG9ucyovXG4gICAgLyoqL1xuICBcbiAgICAvKiBTdGFuZGFyZCBidG4qL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tYnRuLWFjY2VudC1jb2xvcjogdmFyKC0tY29sb3Itc3RhdGUpO1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tYnRuLWFjY2VudC1jb2xvciksIC0yNykgKi9cbiAgICAtLWJ0bi1hY2NlbnQtY29sb3ItYWN0aXZlOiB2YXIoLS1jb2xvci1zdGF0ZS1hY3RpdmUpO1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tYnRuLWFjY2VudC1jb2xvciksIC0xMCkgKi9cbiAgICAtLWJ0bi1hY2NlbnQtY29sb3ItZm9jdXM6IHZhcigtLWNvbG9yLXN0YXRlLWZvY3VzKTtcbiAgICAtLWJ0bi1hY2NlbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLXN0YXRlLWRpc2FibGVkKTtcbiAgXG4gICAgLyogUHJpbWFyeSBidG4qL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tYnRuLXByaW0tYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLyogdGhlbWU6ZGVyaXZlIGFkanVzdC1oZXgtdmFsdWUtYnJpZ2h0bmVzcyh2YXIoLS1idG4tcHJpbS1hY2NlbnQtY29sb3IpLCAtMjcpICovXG4gICAgLS1idG4tcHJpbS1hY2NlbnQtY29sb3ItYWN0aXZlOiB2YXIoLS1jb2xvci1zdGF0ZS1hY3RpdmUpO1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tYnRuLXByaW0tYWNjZW50LWNvbG9yKSwgLTEwKSAqL1xuICAgIC0tYnRuLXByaW0tYWNjZW50LWNvbG9yLWZvY3VzOiB2YXIoLS1jb2xvci1zdGF0ZS1mb2N1cyk7XG4gICAgLS1idG4tcHJpbS1hY2NlbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLXN0YXRlLWRpc2FibGVkKTtcblxuICAgIC8qIG92ZXJyaWRlIFZhcmlhYmxlcyovXG4gICAgLS1mb250LWJvZHktc2l6ZTogMTZweDtcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9hYm91dHVzaGVhZGVyLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5sYy1hYm91dC11cyB7XG4gICAgLmFib3V0LXVzLWhlYWRlci13cmFwcGVyIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuXG4gICAgICAgIC5pbm5lciB7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXJlbSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cmVtIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWJvdXR1cy10aXRsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN0YSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2FudXJhX2NvdXJzZS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLWNvdXJzZS12aWV3LXRvcGljcyB7XG5cbiAgICAvKiBhbnVyYSBzdHlsaW5nKi9cbiAgICAmLmxjLWFudXJhIHtcbiAgICAgICAgLmNvbnRlbnQuYW51cmEtaW50ZWdyYXRpb24ge1xuICAgICAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICYubWFpbiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci1uZXV0cmFsLTQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hbnVyYS1pbnRlZ3JhdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYWQzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwidGZvbnRcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuY2xvc2VkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVjNWZcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBhbnVyYS1jb25mZXJlbmNlIHN0eWxpbmcqL1xuICAgICYubGMtYW51cmEtY29uZmVyZW5jZSB7XG4gICAgICAgIC5zZWN0aW9uIHtcbiAgICAgICAgICAgICYubWFpbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLW5ldXRyYWwtNCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hbnVyYS1pbnRlZ3JhdGlvbiB7XG4gICAgICAgICAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYWQzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwidGZvbnRcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2VjdGlvbi1hY2NvcmRpb24td3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY2xvc2VkIHtcbiAgICAgICAgICAgICAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVjNWZcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zZWN0aW9uLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9jb3Vyc2VoZWFkZXIuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uY291cnNlLWltZy1oZWFkZXItd3JhcHBlcixcbi5wcm9ncmFtLWltZy1oZWFkZXItd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWdhcC0yKTtcblxuICAgIC5yb3cge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwIDFyZW07XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMCAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cmVtIDAgM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNwLWhlYWRlci1hY3Rpb24ge1xuICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgLnNwLWVucm9sLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG4tZW5yb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1iZy1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi10ZXh0LWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg0LFxuICAgICAgICAgICAgICAgICAgICAuc3AtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmltZy1ob2xkZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzNjAvMjM1O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvY29uZmlybV9pbmZvLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmF1dGgtY29uZmlybS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWVzb3ItZWR1Y2F0aW9uKTtcbiAgICBjb2xvcjogYmxhY2s7XG5cbiAgICAuaW5uZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtMikgMDtcbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9mb290ZXIuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGFnZS1mb290ZXIge1xuXG4gICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC02KSAhaW1wb3J0YW50O1xuXG4gICAgLnBhZ2UtZm9vdGVyLW1haW4tY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tZ2FwLTEpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwLTYpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2FwLTYpO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC0xMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2FwLTEwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvLXNlY3Rpb24ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtc2VjdGlvbiB7XG4gICAgICAgIC5jb250YWN0LFxuICAgICAgICAubWFpbHRvIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBob25lIHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tZ2FwLTQpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tZ2FwLTIpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgLmNvbC1sZy0zIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc29jaWFsLXNlY3Rpb24ge1xuICAgICAgICAuZm9vdGVyLXNvY2lhbC1pY29ucyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIHZhcigtLWdhcC0yKTtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbC1tZC02IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWdhcC04KTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4jcGFnZS1sb2dpbi1pbmRleCB7XG4gICAgLnR1aS1jb3JlX2F1dGgtZm9vdGVyIHtcbiAgICAgICAgLmZvb3Rub3RlIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dWktY29yZV9hdXRoLWZvb3Rlcl9fcG93ZXJlZEJ5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvbmF2aWdhdGlvbi5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udG90YXJhTmF2IHtcblxuICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAudG90YXJhTmF2X3ByaW0tLWxpc3RfaXRlbSB7XG4gICAgICAgICAgICAmLnRvdGFyYU5hdl9wcmltLS1saXN0X2l0ZW1fc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdF9pdGVtX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdF9pdGVtX2xpbmsge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdF9pdGVtX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAudG90YXJhTmF2X3ByaW0tLWxpc3RfaXRlbV9sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lc29yLWVkdWNhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50b3RhcmFOYXZfcHJpbS0tc2lkZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAucG9wb3Zlci1yZWdpb24ge1xuICAgICAgICAgICAgLmZsZXgtaWNvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5hdkV4cGFuZC0tbGlzdFNlY29uZCB7XG4gICAgICAgIC5uYXZFeHBhbmQtLWxpc3RfaXRlbV9saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWVzb3ItZWR1Y2F0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51c2VybWVudSB7XG4gICAgICAgIC51c2VycGljdHVyZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAudXNlcnRleHQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLyogY29sb3I6IHZhcigtLWNvbG9yLXRleHQpOyovXG4gICAgICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgICAgICAvKiBiYWNrZ3JvdW5kOiB2YXIoLS1zd2FnLWdyYXkpOyovXG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dvdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2xhbmRpbmdfYXdhcmRzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2tfbGFuZGluZ19hd2FyZCB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAudW5saXN0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIHJvdy1nYXA6IDIuNXJlbTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYucjAge31cblxuICAgICAgICAgICAgICAgICYucjEge31cblxuICAgICAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDRyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuYXdhcmRfaXRlbXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW1zX3Blcl9yb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7fVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmRpbmdfYXdhcmQtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2hpZGVfZ3Vlc3Quc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBhdGgtY291cnNlLXZpZXcgIHtcbiAgICAmLmxjLWFib3V0LXVzLFxuICAgICYubGMtY2FsZW5kYXIge1xuICAgICAgICAudHctY29udGFpbmVyQ291cnNlLWVucm9sbWVudEJhbm5lci5hbGVydC5hbGVydC1pbmZvLmFsZXJ0LXdpdGgtaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9zcF9tb2RhbC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBhdGgtZW5yb2wge1xuICAgIC5tb2RhbC1jb250YWluZXIge1xuICAgICAgICAmLnNhZmVycGF5IHtcbiAgICAgICAgICAgIC5jb250YWluZXItZmx1aWQgIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgIFxuICAgICAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pbnBsYWNlZWRpdGFibGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5xdWlja2VkaXRpY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZsZXgtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5lcnJvcnMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmVkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yb3ctZmxleCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTZweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTZweDtcblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHR1aS1zY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRpc2NvdW50LWNvZGUtc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIC52b3VjaGVyLWNvZGUtaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWZvcm0taW5wdXQtaGVpZ2h0LWxhcmdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoKHZhcigtLWZvcm0taW5wdXQtaGVpZ2h0LWxhcmdlKSAtIDFlbSAtICh2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1zaXplKSAqIDIpKSAvIDIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb3JtLWlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1zaXplKSBzb2xpZCB2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29kZS1pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC52b3VjaGVyLWNvZGUtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbS10ZXh0LWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmRpc2NvdW50LW1vZGFsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjRyZW0gMC44cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG90YWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHZhcigtLWJ0bi1wcmltLXRleHQtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGF4LWluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgLmZsZXgtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvdGVybXMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNmaXRlbV9pZF9wcm9maWxlX2ZpZWxkX1Rlcm1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgLmZpdGVtdGl0bGUge1xuICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfVxuXG4gICAgLmZlbGVtZW50IHtcbiAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvY2FsZW5kYXIuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkge1xuICAgICYucGF0aC1jb3Vyc2UtdmlldyB7XG4gICAgICAgICYubGMtY2FsZW5kYXIge1xuICAgICAgICAgICAgLmJsb2NrX2Zha2Uge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgICAgIC5ibG9jay1oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICNjYWxlbmRhci1maWx0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZpdGVtX2Z0ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5maXRlbXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZlbGVtZW50LmZ0ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXHVlYzdjXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcInRmb250XCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZpdGVtX2Zncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZlbGVtZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZkYXRlX3NlbGVjdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBjb250ZW50OiAnQyc7Ki9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZjaGVja2JveC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tZ2FwLTEpIHZhcigtLWdhcC0yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVsaW1pdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JiYjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAuY29udGVudGFmdGVybGluayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kdHlwZV9jYWxldmVudCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDRweCA0cHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMTAlKTtcblxuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmFjdGl2aXR5aW5zdGFuY2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5uby1vdmVyZmxvdyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kX2NhbGV2ZW50X2VudHJ5IHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jYWxldmVudF9pbWFnZV93cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2Lzk7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbWdfaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jYWxldmVudF9jZW50ZXJfd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF90aXRsZSxcbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2xhYmVsLFxuICAgICAgICAgICAgICAgICAgICAuY2FsZXZlbnRfZGF0ZV9pY29uLFxuICAgICAgICAgICAgICAgICAgICAuY2FsZXZlbnRfbG9jYXRpb25faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubGFiZWxfaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY2FsZXZlbnRfbGluayxcbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2luZm9kb3dubG9hZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg1LCBhdXRvKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNSwgYXV0byk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMSAvIDI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAyIC8gMztcblxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2RhdGVfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMyAvIDQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2xvY2F0aW9uX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDQgLyA1O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9saW5rX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyA0O1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDQgLyA2O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9saW5rLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9pbmZvZG93bmxvYWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpdjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2luZm9kb3dubG9hZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmLnBhdGgtY2FsZW5kYXJfZXZlbnQge1xuICAgICAgICAmI3BhZ2UtY2FsZW5kYXJfZXZlbnQtdmlld3MtY2FsZW5kYXJfZXZlbnRfdmlldyB7XG4gICAgICAgICAgICAuY291cnNlLWltZy1oZWFkZXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2NhdGFsb2cuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtdG90YXJhLWNhdGFsb2ctaW5kZXgge1xuICAgIC50b3RhcmFOYXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICRFbmRvcnNlZDogI0VENkQwNTtcbiAgICAkRW1ldW5ldDogIzkzMTE3RTtcbiAgICAkUmVzZWFyY2g6ICMwMTIxNjk7XG4gICAgJEVVTEFSOiAjMDA1N0I4O1xuICAgICRFY29uczogI0E2QzRFNjtcbiAgICAkQ29uY2x1ZGVkOiAjRUFBQTAwO1xuXG4gICAgLmhlcm8taGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxNjgwcHggLSAzMnB4KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtMik7XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhyZW07XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtaDEtd2VpZ2h0KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtaDEtc2l6ZSk7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaDEtZmFtaWx5KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1oMS1saW5lLWhlaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYi1jb250YWluZXIge1xuICAgICAgICAjcGFnZS1oZWFkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50dy1jYXRhbG9nX19wYWdlX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC50dy1jYXRhbG9nIHtcbiAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19jb250ZW50X2xlZnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC8qIG1heC13aWR0aDogMzgwcHg7Ki9cblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDU2JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2NvbnRlbnRfcmlnaHQge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiB1bnNldDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtMikgdmFyKC0tZ2FwLTQpO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fY29udGVudF9yaWdodF9zaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19jb250ZW50X3JpZ2h0X2JvZHkge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX190ZXh0YXJlYV9ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX3RleHRhcmVhX2dyb3VwX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fdGl0bGUsXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2VsbGlwc2lzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW2RhdGEtZGVzY3JpcHRpb249XCJFbmRvcnNlZFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19lbGxpcHNpcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJEVuZG9yc2VkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZbZGF0YS1kZXNjcmlwdGlvbj1cIkVtZXVuZXRcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZWxsaXBzaXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRFbWV1bmV0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZbZGF0YS1kZXNjcmlwdGlvbj1cIlJlc2VhcmNoXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2VsbGlwc2lzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkUmVzZWFyY2g7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJltkYXRhLWRlc2NyaXB0aW9uPVwiRVVMQVJcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZWxsaXBzaXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRFVUxBUjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW2RhdGEtZGVzY3JpcHRpb249XCJFY29uc1wiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19lbGxpcHNpcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJEVjb25zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fbGFiZWxzIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLWdhcC0xKSogLTEpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiB2YXIoLS1nYXAtMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX3RpdGxlX2ZlYXR1cmVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19oZXJvIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIHRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG5cbiAgICAgICAgICAgICAgICAmW2RhdGEtaGVyb3RleHQ9Tm9dIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19oZXJvX3RleHQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1lc29yLXJlZ29wZW4pO1xuICAgICAgICAgICAgICAgICAgICAvKiBwYWRkaW5nOiAwIDE4cHg7Ki9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2NvbmNsdWRlZHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mb250LXNpemUtYmFzZSkgLyAxNiAqIDEzKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDYyNXJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkQ29uY2x1ZGVkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jYXRhbG9nLWl0ZW0tZmVhdHVyZWQtdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCB2YXIoLS1nYXAtMSkgMCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tZ2FwLTIpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dy1jYXRhbG9nRGV0YWlscyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0RldGFpbHNfX2Fycm93IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0RldGFpbHNfX3BsYWNlbWVudCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICB0b3A6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nRGV0YWlsc19fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nRGV0YWlsc19fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nRGV0YWlsc19fZGV0YWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dEZXRhaWxzTGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0RldGFpbHNMaW5rX19vcHRpb25fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dy1jYXRhbG9nUGFnaW5hdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDVyZW0gMCAzcmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAudHctY2F0YWxvZ1BhZ2luYXRpb25fX2J0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dy1jYXRhbG9nX19kZWJ1ZyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudHctZ3JpZF9faXRlbSB7XG4gICAgICAgICAgICAmLnR3LWdyaWRfX2l0ZW1fYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiA0cHggNHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHctZ3JpZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGVhZGVyXG4gICAgICovXG5cbiAgICAudHctY2F0YWxvZ19fcHJpbWFyeUZpbHRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tZ2FwLTQpIDAgdmFyKC0tZ2FwLTgpO1xuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAxOHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHJlbSAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2VjdGlvbi5jbGVhci1maWx0ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaG93LWNsZWFyIHtcbiAgICAgICAgICAgIHNlY3Rpb24uY2xlYXItZmlsdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50dy1zZWxlY3RSZWdpb25QcmltYXJ5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAudHctc2VsZWN0UmVnaW9uUHJpbWFyeV9fc2VsZWN0b3Ige1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC8qIEZpbHRlciovXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgICAgIC50dy1zZWxlY3RUcmVlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGFiZWwge31cblxuICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50dy1zZWxlY3RUcmVlX19leHBhbmRhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFRyZWVfX29wdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdy1nYXA6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFRyZWVfX2xpc3RfaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGlzdF9yb3dfbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50dy1zZWxlY3RUcmVlX19saXN0X3JvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi50dy1zZWxlY3RUcmVlX19hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGlzdF9yb3dfbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIFNlYXJjaCBib3gqL1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHRfX2J0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tZm9ybS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHRfX2ZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHRfX2ZpZWxkX2lucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHctY2F0YWxvZ19fcmVzdWx0c19vdmVydmlld19yb3cge1xuXG4gICAgICAgIC50dy1jYXRhbG9nUmVzdWx0c0NvdW50LFxuICAgICAgICAudHctY2F0YWxvZ1Jlc3VsdHNTaGFyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnR3LWNhdGFsb2dfX3Jlc3VsdHNfb3ZlcnZpZXcge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtNikgMDtcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMCwgMCwgMCwgMjAlKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMCwgMCwgMCwgMjAlKTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGgyLmxjLWNhdGFsb2ctY2F0ZWdvcnkge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAlO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgLnR3LWNhdGFsb2dfX3Jlc3VsdHNfb3ZlcnZpZXdfcm93IHtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiTGl2ZSBjb3Vyc2VzIGFuZCBtZWV0aW5nc1wiIGldLFxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiTGl2ZSBjb3Vyc2VzICYgbWVldGluZ3NcIiBpXSB7XG5cbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJUaWxlIGluZm9cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJBcHBsaWNhdGlvbiBEZWFkbGluZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJPbmxpbmUgY291cnNlc1wiIGldLFxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiT25saW5lIGNvdXJzZXMgJiBvdGhlciBkaWdpdGFsIG9mZmVyc1wiIGldIHtcblxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEdXJhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkxvY2F0aW9uXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQXBwbGljYXRpb24gRGVhZGxpbmVcIiBpXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJFbmRvcnNlZCBjb3Vyc2VzXCIgaV0sXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJFbmRvcnNlZCBjb3Vyc2VzICYgbWVldGluZ3NcIiBpXSB7XG5cbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJDb3Vyc2Ugc3RhcnQgZGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRHVyYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJDb3N0XCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJSZWdpc3RyYXRpb24gZGVhZGxpbmVcIiBpXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJCdXJzYXJpZXMsIEdyYW50cyAmIEV4Y2hhbmdlIG9wcG9ydHVuaXRpZXNcIiBpXSxcbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkF3YXJkcywgR3JhbnRzICYgRXhjaGFuZ2UgT3Bwb3J0dW5pdHlcIiBpXSxcbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkJ1cnNhcmllcywgQXdhcmRzICYgRXhjaGFuZ2Ugb3Bwb3J0dW5pdGllc1wiIGldIHtcblxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkNvdXJzZSBzdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiU3RhcnQgZGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJDb3N0XCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJBcHBsaWNhdGlvbiBEZWFkbGluZVwiIGldIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIlB1YmxpY2F0aW9uc1wiIGldIHtcblxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkNvdXJzZSBzdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiU3RhcnQgZGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEdXJhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkxvY2F0aW9uXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiUmVnaXN0cmF0aW9uIGRlYWRsaW5lXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQXBwbGljYXRpb24gRGVhZGxpbmVcIiBpXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJGcmVlIExlYXJuaW5nIE1hdGVyaWFsXCIgaV0ge1xuXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQ291cnNlIHN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJTdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkR1cmF0aW9uXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJSZWdpc3RyYXRpb24gZGVhZGxpbmVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJBcHBsaWNhdGlvbiBEZWFkbGluZVwiIGldIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIldlYmluYXJzXCIgaV0ge1xuXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQ291cnNlIHN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJTdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkR1cmF0aW9uXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJSZWdpc3RyYXRpb24gZGVhZGxpbmVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJBcHBsaWNhdGlvbiBEZWFkbGluZVwiIGldIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIk1vZHVsZVwiIGldIHtcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEYXRlXCIgaV0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiTW9kdWxlc1wiIGldIHtcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJDb3Vyc2Ugc3RhcnQgZGF0ZVwiIGldLCBcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJTdGFydCBkYXRlXCIgaV0sIFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSwgXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSwgXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiUmVnaXN0cmF0aW9uIGRlYWRsaW5lXCIgaV0sIFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkFwcGxpY2F0aW9uIERlYWRsaW5lXCIgaV0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvY291cnNlLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBhdGgtZW5yb2wsXG4ucGF0aC1jb3Vyc2Uge1xuICAgIC50b3RhcmFOYXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbn1cblxuLnBhdGgtZW5yb2wsXG4ucGF0aC1jb3Vyc2UtdmlldyB7XG5cbiAgICAjcmVnaW9uLW1haW4ge1xuICAgICAgICBoMi5oZWFkaW5nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGNvdXJzZS1tYWluLXRpdGxlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdGl0bGUtdW5kZXJsaW5lO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9ja19mYWtlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJsb2NrLWhlYWRlciB7XG4gICAgICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgY291cnNlLWJsb2NrLXRpdGxlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0aXRsZS11bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb3Vyc2UtY2YtaGVhZGVyIHtcbiAgICAgICAgICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgwLCAtd2Via2l0LW1heC1jb250ZW50KSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDAsIG1heC1jb250ZW50KSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaXRlbS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtLWxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuY291cnNlLWRvY3VtZW50cyB7XG4gICAgICAgICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDJweCByZ2JhKDAsIDAsIDAsIDIwJSk7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFtbcGl4OnRoZW1lX2Vzb3J8aWNvbnMvc3ltYm9sX2Rvd25sb2FkXV0pO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb3Vyc2UtaW5mbyB7XG4gICAgICAgICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgLmluZm8taXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9PbmxpbmVfQ291cnNlc11dKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kdXJhdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFtbcGl4OnRoZW1lX2Vzb3J8aWNvbnMvaW9uX2hvdXJnbGFzcy1vdXRsaW5lXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnNraWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9za2lsbC1sZXZlbC1hZHZhbmNlZF1dKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5kZWFkbGluZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFtbcGl4OnRoZW1lX2Vzb3J8aWNvbnMvY2FsZW5kYXItdGltZV1dKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5jb250YWN0cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFtbcGl4OnRoZW1lX2Vzb3J8aWNvbnMvZW1haWwtb3V0bGluZV1dKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID5wIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAwIDAgMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb3Vyc2UtdmlkZW8ge1xuICAgICAgICAgICAgJi5lbXB0eSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2NrLXRpdGxlIHtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgLmNvdXJzZS12aWRlby13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBteUVVTEFSIEJhZGdlIFN0eWxlcyAqL1xuICAgIC5jb3Vyc2UtaW1nLWhlYWRlciAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICAgIFxuICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMtd3JhcHBlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGdhcDogMjBweDtcbiAgICAgICAgbWluLWhlaWdodDogNTBweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMge1xuICAgICAgICBmbGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEwcHg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBcbiAgICAuY291cnNlLWhlYWRlci1hY3Rpb25zID4gKiB7XG4gICAgICAgIG1heC13aWR0aDogLXdlYmtpdC1maXQtY29udGVudDtcbiAgICAgICAgbWF4LXdpZHRoOiAtbW96LWZpdC1jb250ZW50O1xuICAgICAgICBtYXgtd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIH1cbiAgICBcbiAgICAubXlldWxhci1iYWRnZS13cmFwcGVyIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICAgIH1cbiAgICBcbiAgICAubXlldWxhci1iYWRnZS1saW5rOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC45O1xuICAgIH1cbiAgICBcbiAgICAubXlldWxhci1iYWRnZSB7XG4gICAgICAgIG1heC13aWR0aDogMjgwcHg7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICAgIFxuICAgIC8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgLSBtb3ZlIGJhZGdlIGJlbG93IGJ1dHRvbnMgd2hlbiBpdCBzdGFydHMgZ2V0dGluZyBjcmFtcGVkICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAuY291cnNlLWhlYWRlci1hY3Rpb25zLXdyYXBwZXIge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubXlldWxhci1iYWRnZS13cmFwcGVyIHtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjgwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjYwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogQ291cnNlIGZvcm1hdHNcbiAqL1xuXG4jcGFnZS1jb3Vyc2Utdmlldy1ldWxhciB7XG4gICAgI3BhZ2UtY29udGVudCB7XG4gICAgICAgIC5jb3Vyc2UtY29udGVudCB7XG4gICAgICAgICAgICB1bC5ldWxhciB7XG4gICAgICAgICAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5ibHVlc2VjdGlvbiB7XG5cbiAgICAgICAgICAgICAgICAgICAgLnN1bW1hcnksXG4gICAgICAgICAgICAgICAgICAgIHVsLnNlY3Rpb24uaW1nLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50b3BpY19jb2xsYXBzZV9oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBjYWxjKDEwJSArIDkwcHgpIDAgMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaGVhZGluZy1saW5lLWhlaWdodCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50b2dnbGVfaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcInRmb250XCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYzVmXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYucm90YXRlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYWQzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAuc3VtbWFyeSxcbiAgICAgICAgICAgICAgICAgICAgICAgIC5hdmFpbGFiaWxpdHlpbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jcGFnZS1jb3Vyc2Utdmlldy10b3BpY3Mge1xuICAgICNwYWdlLWNvbnRlbnQge1xuICAgICAgICAuY291cnNlLWNvbnRlbnQge1xuICAgICAgICAgICAgdWwudG9waWNzIHtcbiAgICAgICAgICAgICAgICAuc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICZbZGF0YS1vcGVuPXRydWVdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuc2VjdGlvbm5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmxleC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVhZDNcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50dy1mb3JtYXRUb3BpY3NfX3RvcGljX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctZm9ybWF0VG9waWNzX19jb2xsYXBzZV9saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0zcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmxleC1pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZWM1ZlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAudHctZm9ybWF0VG9waWNzX190b3BpY19jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAqIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5hdmFpbGFiaWxpdHlpbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4uZm9ybWF0LXNpbmdsZWFjdGl2aXR5IHtcbiAgICAuY291cnNlLWltZy1oZWFkZXItd3JhcHBlciB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAuYnRuLmJ0bi1zZWNvbmRhcnl7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvdHlwby5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKipcbiAqIFRpdGxlXG4gKi9cblxuQG1peGluIGxhbmRpbmctbWFpbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA0LjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgIG1hcmdpbjogMnJlbSAwIDFyZW07XG59XG5cbkBtaXhpbiBsYW5kaW5nLXN1Yi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgbWFyZ2luOiAxcmVtIDAgM3JlbTtcbn1cblxuQG1peGluIGFib3V0dXMtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG59XG5cbkBtaXhpbiBjb3Vyc2UtbWFpbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuQG1peGluIGNvdXJzZS1ibG9jay10aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuQG1peGluIHRpdGxlLXVuZGVybGluZSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGhlaWdodDogNHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuMzNyZW07XG4gICAgfVxufVxuXG4vKipcbiAqIFRleHRcbiAqL1xuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9ldWxhckNvdXJzZUZvcm1hdC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtY291cnNlLXZpZXctZXVsYXIge1xuICAgICNzZWN0aW9uLTEge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5zZWN0aW9uLmltZy10ZXh0IHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uIHtcbiAgICAgICAgLmFjdGl2aXR5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcblxuICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLm1vZHR5cGVfbGFiZWwge1xuICAgICAgICAgICAgICAgIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwOmVtcHR5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFpbmVyLWxlZnQsXG4gICAgICAgIC5jb250YWluZXItcmlnaHQge1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvdXJzZS1jb250ZW50IHVsLmV1bGFyIC5ibHVlc2VjdGlvbiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBncmF5O1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDE1cHggNXB4O1xuXG4gICAgICAgIC5tb2R0eXBlX2xhYmVsIHAge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZXNvci1lZHVjYXRpb24pO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRvZ2dsZV9pbWFnZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3Itc3RhdGUpO1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGl2aXR5IC5hY3Rpb25zIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdW1tYXJ5IGg1IHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIDAgMCAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9kYXNoYm9hcmQuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGF0aC10b3RhcmEtZGFzaGJvYXJkIHtcbiAgICAudG90YXJhTmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAudXNlci1oZXJvLWhlYWRlciB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuXG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxNTBweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9lbnJvbC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtZW5yb2wtaW5kZXgge1xuXG4gICAgLmJsb2NrIHtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICAmOjphZnRlcntcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2Jsb2NrLXJlZ2lvbi1zaWRlLXByZSB7XG4gICAgICAgIC5ibG9jayB7XG4gICAgICAgICAgICBib3gtc2hhZG93OiA0cHggMCAxNXB4IDAgcmdiYSgwLCAwLCAwLCA1JSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcmVnaW9uLW1haW4ge1xuICAgICAgICBkaXZbcm9sZT1tYWluXSB7XG4gICAgICAgICAgICA+IGgyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMi5oZWFkaW5nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR1aS1jb3JlX2NvdXJzZS1jb3Vyc2VJbmZvIHtcbiAgICAgICAgICAgICAgICAudHVpLWNvcmVfY291cnNlLWNvdXJzZUluZm9fX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHVpLWNvcmVfY291cnNlLWNvdXJzZUluZm9fX3N1bW1hcnlGaWxlcyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2VuZXJhbHRhYmxlIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAuYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uLmJ0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0byFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZ2VuZXJhbGJveCB7XG4gICAgICAgICAgICAmLmluZm8ge1xuICAgICAgICAgICAgICAgIC5wYW5lbC5wYW5lbC1kZWZhdWx0IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgIC5wYW5lbC1oZWFkaW5nLmluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAuc3VtbWFyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAjdG9nZ2xlLXN1bW1hcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmxleC1pY29uIHtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG4tbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMC41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmVucm9sLXJlZ2lzdHJhdGlvbi1ibG9jayB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWNvbnRhaW5lci5zYWZlcnBheSB7XG4gICAgICAgIC5iZW5lZml0LXdyYXBwZXIge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjV2aDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJlbmVmaXQtaXRlbSB7XG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMC42cmVtO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAuYmVuLWluZm8ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmVuLXZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mb250LWJvZHktc2l6ZSkqMS4yKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmJlbi1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mb250LWJvZHktc2l6ZSkqMC45KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpoYXMoaW5wdXRbdHlwZT1cInJhZGlvXCJdOmNoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sYy1pbWFnZXMtZW5yb2wge1xuICAgICAgICAjcGFnZSB7XG4gICAgICAgICAgICAuZW5yb2wtaW1hZ2VzLmZvcm0td3JhcHBlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idG4tZW5yb2wge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAvKiBSZXBvc2l0aW9uIHNlbGYtZW5yb2xsbWVudCBmb3JtIG1lc3NhZ2UgYWJvdmUgb3VyIGN1c3RvbSBidXR0b25zICovXG4gICAgLmZjb250YWluZXIuY2xlYXJmaXgge1xuICAgICAgICAuZml0ZW0uZmVtcHR5bGFiZWwge1xuICAgICAgICAgICAgLmZlbGVtZW50LmZzdGF0aWMge1xuICAgICAgICAgICAgICAgIC8qIEhpZGUgdGhlIGxvZ2luIGJ1dHRvbiBidXQga2VlcCB0aGUgdGV4dCAqL1xuICAgICAgICAgICAgICAgIGEuYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBIaWRlIGNvbnRpbnVlIGJ1dHRvbiBmcm9tIG1hbnVhbCBlbnJvbGxtZW50ICovXG4gICAgLmNvbnRpbnVlYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICAvKiBIaWRlIFNhZmVycGF5IGxvZ2luIGJ1dHRvbiAqL1xuICAgIC5ib3guZ2VuZXJhbGJveC5zYWZlcnBheSB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBhLmJ0bltocmVmKj1cImxvZ2luXCJdIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLyogSGlkZSBkZWZhdWx0IFwiU2lnbiBpblwiIGJ1dHRvbiBmb3IgZ3Vlc3RzIHdoZW4gY3VzdG9tIHJlZ2lzdHJhdGlvbiBibG9jayBleGlzdHMgb24gdGhlIHBhZ2UgKi9cbiAgICAvKiBPbmx5IGhpZGVzIHRoZSBkaXJlY3QgY2hpbGQgbG9naW4gYnV0dG9uLCBub3QgdGhlIG9uZSBpbnNpZGUgLmVucm9sLXJlZ2lzdHJhdGlvbi1ibG9jayAqL1xuICAgICNyZWdpb24tbWFpbjpoYXMoLmVucm9sLXJlZ2lzdHJhdGlvbi1ibG9jaykge1xuICAgICAgICBkaXZbcm9sZT1cIm1haW5cIl0gPiBhLmJ0bi5idG4tZGVmYXVsdFtocmVmKj1cImxvZ2luXCJdOm5vdCguZW5yb2wtcmVnaXN0cmF0aW9uLWJsb2NrIGEpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIG15RVVMQVIgQmFkZ2UgU3R5bGVzICovXG4gICAgLmNvdXJzZS1pbWctaGVhZGVyIC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucy13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICB9XG4gICAgXG4gICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucyB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIFxuICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMgPiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50O1xuICAgICAgICBtYXgtd2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7XG4gICAgICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlLXdyYXBwZXIge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLm15ZXVsYXItYmFkZ2UtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlLWxpbms6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLyogRW5zdXJlIGVucm9sbWVudCBmb3JtcyBkaXNwbGF5IHByb3Blcmx5IGJlbG93ICovXG4gICAgLmltYWdlcy1oZWFkZXItYWN0aW9uIC5jb2xsYXBzZSxcbiAgICAuc3AtaGVhZGVyLWFjdGlvbiA+IGRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgLSBtb3ZlIGJhZGdlIGJlbG93IGJ1dHRvbnMgd2hlbiBpdCBzdGFydHMgZ2V0dGluZyBjcmFtcGVkICovXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICAuY291cnNlLWhlYWRlci1hY3Rpb25zLXdyYXBwZXIge1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZ2FwOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAubXlldWxhci1iYWRnZS13cmFwcGVyIHtcbiAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjgwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjYwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9zaWdudXAuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS1sb2dpbi1zaWdudXAge1xuICAgIC5sYy13cmFwcGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgYXV0bztcblxuICAgICAgICAuYWxlcnQtd2l0aC1pY29uIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZsb2F0OiB1bnNldDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDg4cHg7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA2MHZoO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjc1KTtcbiAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1nYXAtOCk7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1nYXAtOCk7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwLTEyKTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1nYXAtMTIpO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGl0bGUtdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT10ZXh0XSxcbiAgICAgICAgICAgIGlucHV0W3R5cGU9cGFzc3dvcmRdIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmVsZW1lbnQuZnNlbGVjdCB7XG4gICAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZmVtcHR5bGFiZWwge1xuICAgICAgICAgICAgICAgIC5maXRlbXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmZzdGF0aWMge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb2xsYXBzaWJsZS1hY3Rpb25zIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBmb3JtI21mb3JtMSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgLyogcmVxdWlyZWQgZmllbGRzKi9cbiAgICAgICAgICAgICAgICAuZmRlc2NyaXB0aW9uLnJlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDE7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZmllbGRzZXQuY29sbGFwc2libGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAuZnRvZ2dsZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC8qIHRpdGxlKi9cbiAgICAgICAgICAgICAgICAgICAgJiNpZF9jYXRlZ29yeV8xIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYjaWRfY3JlYXRldXNlcmFuZHBhc3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJiNpZF9zdXBwbHlpbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiA0O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5maXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICYubGMtY3JlYXRlLW5vdGljZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogNztcbiAgICAgICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuXG5cbiAgICAgICAgICAgICAgICAgICAgJiNmaXRlbV9pZF9jaXR5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmZpdGVtX3Bhc3N3b3JkdW5tYXNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC50b3RhcmFfcGFzc3dvcmR1bm1hc2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC53cmFwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAjaWRfY2F0ZWdvcnlfMiB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA2O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICNpZF9jYXRlZ29yeV81IHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgI2Zncm91cF9pZF9idXR0b25hciB7XG4gICAgICAgICAgICAgICAgICAgIG9yZGVyOiA4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5maXRlbV9hY3Rpb25idXR0b25zIHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNmaXRlbV9pZF9lbWFpbDIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcGFnZS1mb290ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9sYW5kaW5ncGFnZS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2Utc2l0ZS1pbmRleCB7XG5cbiAgICAudG90YXJhTmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuaGVyby1zZWN0aW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSA5MXB4KTtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDo5ODlweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zZWN0aW9uLWlubmVyIHtcbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgODAlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcGFkZGluZzogNXJlbSAwO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNSUgMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxhbmRpbmctbWFpbi10aXRsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxhbmRpbmctc3ViLXRpdGxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuLXNlY29uZGFyeSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCAxOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhLXNlY3Rpb24ge1xuICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLWdhcC00KSAqIDIpIDA7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiBjYWxjKHZhcigtLWdhcC00KSAqIDQpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tZ2FwLTQpICogNikgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5lcmEtc2VjdGlvbiB7XG4gICAgICAgIC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgM3JlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGg0IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAzcmVtIDAgNHJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIFxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIExDX0xBTkRJTkdfQ09VUlNFU1xuICovXG5cbiNwYWdlLXNpdGUtaW5kZXgge1xuICAgIC5sYXRlc3QtY291cnNlcy1zZWN0aW9uIHtcbiAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1nYXAtNCkgKiAyKTtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tZ2FwLTQpICogNCk7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGModmFyKC0tZ2FwLTQpICogNik7XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5ibG9ja19sY19sYXRlc3RfY291cnNlcyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICAgICAuYmxvY2staGVhZGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgIFxuICAgICAgICAgICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICAgICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmLnNsaWNrLWRpc2FibGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2xpY2stZG90cyB7XG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLnNsaWNrLWFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmxvY2tfbGNfbGF0ZXN0X2NvdXJzZXMtcm93LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgICBidXR0b25bdHlwZT1zdWJtaXRdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaW1hZ2UtYmxvY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmluZm8tYmxvY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKipcbiAqIFNoYXJlZCBzdHlsaW5nXG4gKi9cblxuI3BhZ2Utc2l0ZS1pbmRleCB7XG4gICAgLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMTJweCAxOHB4XG4gICAgfVxuXG4gICAgLmxhdGVzdC1jb3Vyc2VzLXNlY3Rpb24gaDIsXG4gICAgLmVyYS1zZWN0aW9uIGgzLFxuICAgIC5lcmEtc2VjdGlvbiBoNCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIEBpbmNsdWRlIHRpdGxlLXVuZGVybGluZTtcbiAgICB9XG5cbiAgICAubGF0ZXN0LWNvdXJzZXMtc2VjdGlvbiBoMixcbiAgICAuZXJhLXNlY3Rpb24gaDMge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9sb2dpbi5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtbG9naW4taW5kZXgge1xuICAgIC50dWktY29yZV9hdXRoLWxvZ2luIHtcbiAgICAgICAgLnR1aS1jb3JlX2F1dGgtbG9naW5fX3RpdGxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRpdGxlLXVuZGVybGluZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50dWktY29yZV9hdXRoLWxvZ2luX19lcnJvciB7XG4gICAgICAgICAgICAmSW5uZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2luZ2xlYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgLmJ0bi1wcmltYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnR1aS1mb3JtUm93IHtcbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIGFbaHJlZiQ9XCJsb2dpbi9zaWdudXAucGhwXCJdIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1oZWFkaW5nLWxldmVsLTIpO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMS4yNXJlbSAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvcHJvZ3JhbS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGF0aC10b3RhcmEtcHJvZ3JhbSB7XG4gICAgLnRvdGFyYU5hdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWItY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAucHJvZ3JhbS1pbWctaGVhZGVyLXdyYXBwZXIge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgLmNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3ZpZXctcHJvZ3JhbS1jb250ZW50IHtcbiAgICAgICAgPiBoMiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5vdGlmeW1lc3NhZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9ncmFtcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5pdGVtIHtcblxuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5wcm9ncmVzc2Jhcl9jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAucHJvZ3Jlc3Mge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGl2W3JvbGU9cHJvZ3Jlc3NiYXJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvZ3Jlc3NiYXJfX3RleHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRpc3BsYXktcHJvZ3JhbSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaDMge1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5nZW5lcmFsdGFibGUge1xuICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBzb2xpZCAxcHggIzcwNzA3MDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjYmJiO1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgJi5jb3Vyc2VuYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuY291cnNlX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5zdGF0dXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzc2Jhcl9jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5sYXN0cm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5jZWxsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5leHRzZXRvcGVyYXRvciB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9wbGFuLXJlY29yZC1jb3Vyc2VzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLXRvdGFyYS1wbGFuLXJlY29yZC1jb3Vyc2VzIHtcblxuICAgIC5ibG9ja190b3RhcmFfcmVwb3J0X3RhYmxlIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgICNkcC1wbGFuLWNvbnRlbnQge1xuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxhbmRpbmctc3ViLXRpdGxlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRpdGxlLXVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIGhpZGUgc29tZSBlbGVtZW50cyBmb3Igbm9uIHNpdGUgYWRtaW5zKi9cbiAgICAmLm5vLXNhIHtcbiAgICAgICAgI3JlZ2lvbi1tYWluIHtcbiAgICAgICAgICAgIC5yYi1zaG93aGlkZSxcbiAgICAgICAgICAgICNyYl9leHBvcnRfZm9ybSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfZ2VuZXJpYy5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkge1xuICAgICYucGF0aC1tb2QtcXVpeiB7XG4gICAgICAgIC50b3RhcmFOYXYge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb3Vyc2UtaW1nLWhlYWRlci13cmFwcGVyLnF1aXotaGVhZGVyIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgXG4gICAgICAgICAgICAgICAgJi5iYWNrMnF1aXoge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2FwLTgpO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfcXVlc3Rpb24uc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keSB7XG4gICAgJi5wYXRoLW1vZC1xdWl6IHtcbiAgICAgICAgLnF1ZSB7XG4gICAgICAgICAgICAuaW5mby13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pbmZvIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgICAgICAgICAgICAucXRleHQge1xuICAgICAgICAgICAgICAgICAgICAuaW1nLXJlc3BvbnNpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYW5zd2VyIHtcbiAgICAgICAgICAgICAgICAgICAgPmRpdiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwIDhweCAzNnB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiA4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NiU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNzYlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5vdXRjb21lIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiB2YXIoLS1ib3JkZXItd2lkdGgtdGhpbik7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgLmZlZWRiYWNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5pbmNvcnJlY3QsXG4gICAgICAgICAgICAmLm5vdGFuc3dlcmVkIHtcbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIC5vdXRjb21lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLXJlZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWVzb3ItcmVkKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZlZWRiYWNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWVzb3ItcmVkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5wYXJ0aWFsbHljb3JyZWN0LFxuICAgICAgICAgICAgJi5jb3JyZWN0IHtcbiAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIC5vdXRjb21lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZXNvci1ncmVlbik7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5mZWVkYmFjayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lc29yLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9xdWl6X25hdmJsb2NrLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkge1xuICAgICYucGF0aC1tb2QtcXVpeiB7XG4gICAgICAgICNtb2RfcXVpel9uYXZibG9jayB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIC5ibG9jay10aXRsZTo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIC8qIGRpc3BsYXk6IG5vbmU7Ki9cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnFuX2J1dHRvbnMge1xuICAgICAgICAgICAgICAgIC5xbmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNWNoO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDVjaDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDVjaDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAxcHggdmFyKC0tY29sb3ItcHJpbWFyeSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJi50aGlzcGFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAudGhpc3BhZ2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5hbnN3ZXJzYXZlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NkZGYxO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5ub3RhbnN3ZXJlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAudHJhZmZpY2xpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXByb21wdC1hbGVydCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYjcGFnZS1tb2QtcXVpei1yZXZpZXcge1xuICAgICAgICAjbW9kX3F1aXpfbmF2YmxvY2sge1xuICAgICAgICAgICAgLnFuX2J1dHRvbnMge1xuICAgICAgICAgICAgICAgIC5xbmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgICAgICAudHJhZmZpY2xpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuY29ycmVjdCxcbiAgICAgICAgICAgICAgICAgICAgJi5wYXJ0aWFsbHljb3JyZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZXNvci1ncmVlbik7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tZXNvci1ncmVlbik7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmluY29ycmVjdCxcbiAgICAgICAgICAgICAgICAgICAgJi5ub3RhbnN3ZXJlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWVzb3ItcmVkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLXJlZCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvc2l0ZXBvbGljeS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS1hZG1pbi10b29sLXNpdGVwb2xpY3ktdXNlcnBvbGljeSxcbiNwYWdlLWFkbWluLXRvb2wtc2l0ZXBvbGljeS11c2VyZXhpdCB7XG5cbiAgICAmLmxjLW5vLWZvb3RlciB7XG4gICAgICAgIGZvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudG90YXJhTmF2LFxuICAgIC5icmVhZGNydW1iLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI3JlZ2lvbi1tYWluIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gICAgICAgICN0Zl9maWRfdG9vbF9zaXRlcG9saWN5X2Zvcm1fdXNlcmNvbnNlbnRmb3JtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLnVzZXJfcG9saWN5X3dyYXBwZXIge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYubGMtbG9hZGluZyB7XG4gICAgICAgIC51c2VyX3BvbGljeV93cmFwcGVyIHtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnVzZXJfcG9saWN5X3dyYXBwZXIge1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgbWluLWhlaWdodDogMjAwcHg7XG5cbiAgICAgICAgLnVzZXJfcG9saWN5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDZyZW0gMnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTEwMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgcm93LWdhcDogMnJlbTtcblxuICAgICAgICAgICAgLnVzZXJfcG9saWN5X3RleHQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnVzZXJfcG9saWN5X2J0bnMge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYnV0dG9uLFxuICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyogU3R5bGluZyB3aGVuIGVtYmVkZGVkIG9uIG90aGVyIHBhZ2VzKi9cblxuI292ZXJsYXlfdGVybXMge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgb3BhY2l0eTogMC43NTtcbiAgICB6LWluZGV4OiBjYWxjKHZhcigtLXppbmRleC1uYXZiYXIpICsgNSk7XG59XG5cbi51c2VycG9saWN5IHtcbiAgICBpZnJhbWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAmLmlmcmFtZS13cmFwcGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB6LWluZGV4OiBjYWxjKHZhcigtLXppbmRleC1uYXZiYXIpICsgMTApO1xuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3Njb3JtLXBsYXllci5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLW1vZC1zY29ybS1wbGF5ZXIge1xuICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnBhZ2Utd3JhcHBlciB7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3BhZ2UtY29udGVudCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAjcmVnaW9uLW1haW4ge1xuICAgICAgICAgICAgJi5jb2wtbWQtcHVzaC0zIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNibG9jay1yZWdpb24tc2lkZS1wcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmVhZGNydW1iLWNvbnRhaW5lci13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZXhpdF9hY3Rpdml0eSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICB3aWR0aDogNzBweDtcbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy91c2VyLWVkaXQuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS11c2VyLWVkaXQge1xuICAgICYubm8tc2Ege1xuICAgICAgICAjcmVnaW9uLW1haW4ge1xuICAgICAgICAgICAgI2ZpdGVtX2lkX21haWxkaXNwbGF5LFxuICAgICAgICAgICAgI2ZpdGVtX2lkX2ZvcmNlZHRpbWV6b25lLFxuICAgICAgICAgICAgI2ZpdGVtX2lkX3RoZW1lLFxuICAgICAgICAgICAgI2ZpdGVtX2lkX2Rlc2NyaXB0aW9uX2VkaXRvcixcbiAgICAgICAgICAgICNmaXRlbV9pZF9pbWFnZWFsdCxcbiAgICAgICAgICAgICNpZF9tb29kbGVfYWRkaXRpb25hbF9uYW1lcyxcbiAgICAgICAgICAgICNpZF9tb29kbGVfaW50ZXJlc3RzLFxuICAgICAgICAgICAgI2lkX21vb2RsZV9vcHRpb25hbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3BhZ2UtdXNlci1lZGl0LFxuI3BhZ2UtdXNlci1lZGl0YWR2YW5jZWQge1xuICAgIC5lc29yLXRlbXAtcmVxdWlyZWQge1xuICAgICAgICBjb2xvcjogdmFyKC0tZXNvci1yZWQpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1lc29yLXJlZCk7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9ub3RpZmljYXRpb25zLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkucGF0aC1tZXNzYWdlIHtcbiAgICAubm90aWZpY2F0aW9ucy1oZWFkZXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgICAgICBcbiAgICAgICAgaW1nLmljb257XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9ucy1mb290ZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICBcbiAgICAgICAgaW1nLmljb257XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zb2NpYWwtaWNvbnMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGdhcDogMTBweDtcblxuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgICBpbWcuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3BhdGh3YXkuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keSB7XG4gICAgJi5mb3JtYXQtcGF0aHdheSB7XG4gICAgICAgIC50dWktc2lkZVBhbmVsIHtcbiAgICAgICAgICAgIC50dWktZm9ybWF0X3BhdGh3YXktY291cnNlSW5mb3JtYXRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudHVpLXBhZ2VCYWNrTGluayB7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9ibG9ja3MvX2dlbmVyaWMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2sge1xuICAgIC5ibG9jay1oZWFkZXIge1xuICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGxhbmRpbmctc3ViLXRpdGxlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRpdGxlLXVuZGVybGluZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2stY29udGVudCB7fVxufVxuXG4jcmVnaW9uLXRvcCB7fVxuXG4jYmxvY2stcmVnaW9uLXNpZGUtcG9zdCxcbiNibG9jay1yZWdpb24tc2lkZS1wcmUsXG4jcmVnaW9uLW1haW4ge1xuICAgIC5ibG9jayB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHt9XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvYmxvY2tzL2xhbmRpbmdfcHJvZmlsZXMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5ibG9ja19sYW5kaW5nX3BpYyB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICB1bC51bmxpc3Qge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICYubGMtYWRkLWVkaXQge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmxjLWV1bGFyLXNjaG9vbC1hZG1pbmlzdHJhdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5sYW5kaW5nX3BpYy10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxpbmtfaXRlbXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdy1nYXA6IDIuNXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtc19wZXJfcm93IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjUlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmRpbmdfcGljLWltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgNXB4IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmRpbmdfcGljLW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmRpbmdfcGljLWVtYWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL2Jsb2Nrcy9sYW5kaW5nX2F3YXJkLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2tfbGFuZGluZ19hd2FyZCB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAuaXRlbXNfcGVyX3JvdyB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH0gXG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL2Jsb2Nrcy91c2VyX3N0YXRzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2tfdXNlcl9zdGF0cyB7XG5cbiAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLndyYXBwZXIge1xuICAgICAgICAgICAgY29sdW1uLWdhcDogMC41cmVtO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLnVzZXItcHJvZmlsZSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdGF0cyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG5cbiAgICAgICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC42cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jb21wbGV0aW9ucyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFtbcGl4OnRoZW1lX2Vzb3J8aWNvbnMvaW9uX2hvdXJnbGFzcy1vdXRsaW5lXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5iYWRnZXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChbW3BpeDp0aGVtZV9lc29yfGljb25zL2ljb25fYmFkZ2VzXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi50aW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy90aW1lXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL2Jsb2Nrcy91c2VyX3Byb2ZpbGUuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmJsb2NrX3VzZXJfcHJvZmlsZSB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICAuaW1hZ2Utd3JhcHBlciB7XG5cbiAgICAgICAgICAgICAgICAudXNlcnBpY3R1cmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDRweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZnVsbG5hbWUge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDByZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9maWxlLWluZm8ge1xuICAgICAgICAgICAgICAgIC5wcm9maWxlLWZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgPiBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wcm9maWxlLWZpZWxkLXZhbHVlIHt9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3Nob3djYXNlLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmJsb2NrX3Nob3djYXNlIHtcbiAgICAuaXRlbXMge1xuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAuaXRlbS1pbm5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCAzMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbS10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLml0ZW0tYm9keSB7fVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5oZXJvLXNlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiA2cmVtO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY2hyb21lbGVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IC0yNXZ3IDAgdmFyKC0tY29sb3ItcHJpbWFyeSksIDI1dncgMCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgLmJsb2NrLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDNyZW07XG5cbiAgICAgICAgICAgICAgICAuYmxvY2stdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAgICAgICAgIC5pdGVtcyB7XG4gICAgICAgICAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDRkYTg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgLmN0YSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuc2Vjb25kYXJ5LXNlY3Rpb24ge1xuICAgICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcblxuICAgICAgICAgICAgLml0ZW1zIHtcbiAgICAgICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDJweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgICAgICAmLm5vLWJvZHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0taW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaXRlbS1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/Y2xvbmVkUnVsZVNldC01MjgudXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9jbG9uZWRSdWxlU2V0LTUyOC51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvc3RhdGljLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5AaW1wb3J0ICd0aGVtZV9lc29yL3BhcnRpYWxzL2luZGV4JztcbkBpbXBvcnQgJ3RoZW1lX2Vzb3IvcGFnZXMvaW5kZXgnO1xuQGltcG9ydCAndGhlbWVfZXNvci9ibG9ja3MvaW5kZXgnO1xuXG4vKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9jbG9uZWRSdWxlU2V0LTUyOC51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P2Nsb25lZFJ1bGVTZXQtNTI4LnVzZVsyXSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3QvaW5kZXguanM/P3J1bGVTZXRbMF0udXNlWzBdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9jb21wb25lbnRzL2xvZ2luL0xvZ2luRm9ybS52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD02ZWE2ZjE5OSZsYW5nPXNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnR1aS1jb3JlX2F1dGgtbG9naW5Gb3JtIHtcbiAgICAmX19vcHRpb25zIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgICAgZ2FwOiB2YXIoLS1nYXAtMik7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIH1cblxuICAgICZfX3N1Ym1pdFdyYXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmX19jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgICAgIGdhcDogdmFyKC0tZ2FwLTYpO1xuICAgIH1cblxuICAgICZfX2hlbHAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgICZfX2hlYWRpbmcge1xuICAgICAgICBAaW5jbHVkZSB0dWktZm9udC1oZWFkaW5nLXNtYWxsLXJlZ3VsYXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWdhcC00KTtcbiAgICB9XG5cbiAgICAmX190ZXJtc0NvbmRpdGlvbnMge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWFyZ2luOiAxcmVtIDAgMnJlbTtcbiAgICB9XG59XG5cbi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/Y2xvbmVkUnVsZVNldC01MjgudXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9jbG9uZWRSdWxlU2V0LTUyOC51c2VbMl0hLi9ub2RlX21vZHVsZXMvdnVlLWxvYWRlci9kaXN0L2luZGV4LmpzPz9ydWxlU2V0WzBdLnVzZVswXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvcGFnZXMvb3ZlcnJpZGVzL2NvcmVfYXV0aC9Mb2dpbi52dWU/dnVlJnR5cGU9c3R5bGUmaW5kZXg9MCZpZD03N2FhMGFkNCZsYW5nPXNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4gIC50dWktY29yZV9hdXRoLWxvZ2luIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tZ2FwLTYpO1xuICBcbiAgICAmX19zZXBhcmF0b3Ige1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDAgMCAwO1xuICAgIH1cbiAgXG4gICAgJl9fZXJyb3JJbm5lciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIEBpbmNsdWRlIHR1aS1mb250LWJvZHktc21hbGwoKTtcbiAgICAgIHBhZGRpbmc6IHZhcigtLWdhcC0zKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcm9tcHQtYWxlcnQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJvbXB0LWFsZXJ0LWJnKTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICB9XG4gIFxuICAgICZfX3RpdGxlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuIl19 */:root{--nav-bg-color: #ffffff;--nav-text-color: #1d5aa9;--color-primary: #1d5aa9;--color-state: #1d5aa9;--color-text: #262626;--footer-bg-color: #1d5aa9;--footer-text-color: #ffffff;--color-state-hover: #13509f;--color-state-focus: #13509f;--color-state-active: #023f8e;--footer-text-color-hover: #f5f5f5;}
.panel-footer {
display:none
}
.tw-containerCourse-enrolmentBanner__messageBox {
display:none
}
.alert.alert-with-icon {
display:none
}
.block_lc_im_interested .im_interested-no-content .blue_button {
display:none
}

#page-login-signup .fitemtitle {
width: 100% }

.format-pathway h2 {
display:none
}
.mod_facetoface__navigation__top {
display:none
}
.breadcrumb-nav .breadcrumb {
display:none
}
.modified{
display:none
}

body.course-744 a.btn.btn-secondary[href*="id=744"],
body.course-746 a.btn.btn-secondary[href*="id=746"],
body.course-753 a.btn.btn-secondary[href*="id=753"]{
    display: none !important;
}
