@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="Onsite Courses" i] [data-type-shortname="Tile info" i], #page-totara-catalog-index [data-description="Onsite Courses" i] [data-type-shortname="Application Deadline" i], #page-totara-catalog-index [data-description="Onsite Courses" i] [data-type-shortname="Date" i], #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="eLearning Courses" i] [data-type-shortname="Date" i], #page-totara-catalog-index [data-description="eLearning Courses" i] [data-type-shortname="Duration" i], #page-totara-catalog-index [data-description="eLearning Courses" i] [data-type-shortname="Location" i], #page-totara-catalog-index [data-description="eLearning Courses" i] [data-type-shortname="Application Deadline" i], #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/1762947816/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/1762947816/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/1762947816/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/1762947816/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/1762947816/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/1762947816/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/1762947816/icons/ion_hourglass-outline);
}
.block_user_stats .block-content .wrapper .stats .item.badges .icon {
  background-image: url(/theme/image.php/esor/theme_esor/1762947816/icons/icon_badges);
}
.block_user_stats .block-content .wrapper .stats .item.time .icon {
  background-image: url(/theme/image.php/esor/theme_esor/1762947816/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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvZm9udHMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV92ZW50dXJhL2J1aWxkL2dsb2JhbF9zdHlsZXMvX3ZhcmlhYmxlcy5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9fdmFyaWFibGVzLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2Fib3V0dXNoZWFkZXIuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvYW51cmFfY291cnNlLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2NvdXJzZWhlYWRlci5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9jb25maXJtX2luZm8uZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvZm9vdGVyLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL25hdmlnYXRpb24uZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvbGFuZGluZ19hd2FyZHMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvaGlkZV9ndWVzdC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9zcF9tb2RhbC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy90ZXJtcy5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9jYWxlbmRhci5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9jYXRhbG9nLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL2NvdXJzZS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy90eXBvLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL2V1bGFyQ291cnNlRm9ybWF0LmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL2Rhc2hib2FyZC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9lbnJvbC5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9zaWdudXAuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvbGFuZGluZ3BhZ2UuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvbG9naW4uZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvcHJvZ3JhbS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9wbGFuLXJlY29yZC1jb3Vyc2VzLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfZ2VuZXJpYy5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9xdWl6X3F1ZXN0aW9uLmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfbmF2YmxvY2suZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvc2l0ZXBvbGljeS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9wYWdlcy9zY29ybS1wbGF5ZXIuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvdXNlci1lZGl0LmRldmVsb3BtZW50LnNjc3MiLCJkYXRhL3RvdGFyYWxlYXJuL2Vzb3IuZXVsYXIub3JnL2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9idWlsZC9nbG9iYWxfc3R5bGVzL3BhZ2VzL25vdGlmaWNhdGlvbnMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvcGFnZXMvcGF0aHdheS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9ibG9ja3MvX2dlbmVyaWMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL2xhbmRpbmdfcHJvZmlsZXMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL2xhbmRpbmdfYXdhcmQuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3VzZXJfc3RhdHMuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3VzZXJfcHJvZmlsZS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFsZWFybi9lc29yLmV1bGFyLm9yZy9odHRwZG9jcy9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3IvYnVpbGQvZ2xvYmFsX3N0eWxlcy9ibG9ja3Mvc2hvd2Nhc2UuZGV2ZWxvcG1lbnQuc2NzcyIsImRhdGEvdG90YXJhbGVhcm4vZXNvci5ldWxhci5vcmcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL2J1aWxkL3R1aV9idW5kbGUuZGV2ZWxvcG1lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUdBO0FDNEJBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUNBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FDM0JJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7OztBQ2pDaEI7QUFBQTtBQUFBO0FBQUE7QUFNZ0I7QUFBQTtBQUFBO0FBTVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVlJO0FBQUE7QUFBQTtBQWFoQjtBQUFBO0FBQUE7QUFNUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBVUo7QUFBQTtBQUFBO0FBQUE7QUFPUTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFBQTs7Ozs7OztBQ2pFcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9RO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBTUo7QUFBQTtBQUFBO0FBU1o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUM5Q1I7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7O0FDSko7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUNJO0FBQUE7QUFBQTtBQUFBO0FBT0o7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBRUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBVUk7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFNUjtBQUFBO0FBQUE7Ozs7QVB4R1I7QUFBQTtBQUFBOzs7O0FRQUk7QUFBQTtBQUFBO0FBSVk7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBSVE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFVcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT1E7QUFBQTtBQUFBO0FBT0o7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFRSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7Ozs7QUN2Rko7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRUTtBQUFBO0FBQUE7Ozs7QUM5QnBCO0FBQUE7QUFBQTs7OztBQ0FJO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQU9ZO0FBQUE7QUFBQTtBQUFBO0FBU2hCO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQVVSO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTs7OztBQ3ZIWjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBOzs7Ozs7O0FDTlE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBY0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXSjtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBVUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVoQjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFlcEI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFPUjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFKO0FBQUE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVJO0FBQUE7QUFBQTtBQUFBO0FBTUo7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFVSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBUUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBUUo7QUFBQTtBQUFBO0FBQUE7QUFPWTtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUNJO0FBQUE7QUFBQTtBQUFBO0FBVUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBY2hCO0FBQUE7QUFBQTtBQUFBOzs7O0FDbllaO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFDSTtBQUFBO0FBQUE7QUFXQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0o7QUFBQTtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRUjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFBQTtBQU9BO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBQUE7QUFRWjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWNKO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFRaEI7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUFBO0FBTUk7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFXSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFlaEM7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWVoQjtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFBQTtBQU9SO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQVdBO0FBQUE7QUFBQTtBQWVBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQWFBO0FBQUE7QUFBQTtBQVlBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTs7OztBQ3ZqQko7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQytCSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBRHhCQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFNUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ2VaO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FETFk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1JO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWlCWjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWdCSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBUVI7QUFBQTtBQUFBO0FBVVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdoQjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFRQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9BO0FBQ0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBS0o7QUFDSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtKO0FBQ0k7QUFBQTtBQUFBO0FBQUE7Ozs7QUFjUTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQWFJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFPWjtBQUFBO0FBQUE7QUFxQlk7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBRUk7QUFBQTtBQUFBO0FBT1o7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdJO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQWNoQjtBQUFBO0FBQUE7Ozs7QUUvWlI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBVVI7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUMzREo7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUNqQlo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFSTtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFPSjtBQUFBO0FBQUE7QUFPSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFTSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFVSTtBQUFBO0FBQUE7QUFRaEI7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTtBQU9RO0FBQUE7QUFBQTtBQUVJO0FBQUE7QUFBQTtBQVFaO0FBQUE7QUFBQTtBQU9RO0FBQUE7QUFBQTtBQVNKO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBTUE7QUFDSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFLSjtBQUNJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBS0o7QUFDSTtBQUFBO0FBQUE7QUFBQTs7OztBQ2hRSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFhSTtBQUFBO0FBQUE7QUptQlI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUlkUTtBQUFBO0FBQUE7QUFBQTtBQU9JO0FBQUE7QUFBQTtBQUFBO0FBT0E7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFFSTtBQUFBO0FBQUE7QUFBQTtBQVFKO0FBQUE7QUFBQTtBQU1RO0FBQUE7QUFBQTtBQU9aO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBO0FBTVI7QUFBQTtBQUFBOzs7O0FDdklBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1JO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFDSTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQU1SO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFNSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUFjWjtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFPUjtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQVFBO0FBQUE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBUVI7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBOzs7O0FBZXBCO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FMeEpBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FLZ0tBO0FBQUE7QUFBQTs7OztBTGhLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBTW5DUTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUMzQlI7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBTVE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFZUjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQU1RO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTWTtBQUFBO0FBQUE7QUFTcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdZO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQUtKO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVVKO0FBQUE7QUFBQTtBQVFoQjtBQUFBO0FBQUE7Ozs7QUN2R1I7QUFBQTtBQUFBO0FBR1E7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QVJnQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QVF0QlE7QUFBQTtBQUFBOzs7Ozs7O0FDbEJKO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUNJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTs7OztBQ1BKO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUk7QUFBQTtBQUFBO0FBQUE7QUFNSjtBQUFBO0FBQUE7QUFJUTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFTQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFjUTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWVo7QUFBQTtBQUFBO0FBQUE7QUFLUTtBQUFBO0FBQUE7QUFLWTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFhaEI7QUFBQTtBQUFBO0FBQUE7QUFPZ0I7QUFBQTtBQUFBO0FBYWhCO0FBQUE7QUFBQTtBQUFBO0FBT2dCO0FBQUE7QUFBQTs7OztBQ3JJNUI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBS0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUtJO0FBQUE7QUFBQTtBQWFSO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFBQTs7OztBQ3pEWjtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFHQTtBQUFBO0FBQUE7QUFNQTtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBV0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7O0FBYWhCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBWUk7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTs7OztBQ3ZHQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVFSO0FBQUE7QUFBQTtBQUFBO0FBS1E7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBS0o7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUNqQ1E7QUFBQTtBQUFBO0FBZ0JSO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7Ozs7QUNsQkE7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQU9KO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNRO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTs7OztBQzdCSjtBQUFBO0FBQUE7QUFLSjtBQUFBO0FBQUE7Ozs7Ozs7QUNOQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBakJxQ1I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QWlCaENRO0FBQUE7QUFBQTtBQWNSO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBOzs7O0FDbkNBO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLSTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUtBO0FBQUE7QUFBQTs7OztBQ25EcEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBO0FBQUE7QUFBQTtBQUFBOzs7O0FDTFI7QUFBQTtBQUFBO0FBR0k7QUFBQTtBQUFBO0FBQUE7QUFJSTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFHSTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNJO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTtBQU1BO0FBQUE7QUFBQTs7OztBQzlDUjtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQU1KO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVNRO0FBQUE7QUFBQTs7OztBQ3JCUjtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQVdaO0FBQUE7QUFBQTtBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQTtBQUFBO0FBQUE7QUFBQTtBQUlJO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQUFBO0FBSUk7QUFBQTtBQUFBO0FBT1o7QUFBQTtBQUFBO0FBSVE7QUFBQTtBQUFBO0FBT0k7QUFBQTtBQUFBO0FBQ0k7QUFBQTtBQUFBO0FBYXBCO0FBQUE7QUFBQTtBQUlRO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFPWTtBQUFBO0FBQUE7QUFNUjtBQUFBO0FBQUE7Ozs7QUNuRmhCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBUUE7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBTUE7QUFBQTtBQUFBO0FBSUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0E7QUFBQTtBQUFBO0FBQUE7Ozs7QUFTRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0U7QUFBQTtBQUFBO0FBQUE7QUFLQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBU0E7QUFBQTtBQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvZm9udHMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvOjQwMCw3MDAsMjAwJyk7XG5cbmh0bWwsIGJvZHkge1xuICBmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfdmVudHVyYS9zcmMvZ2xvYmFsX3N0eWxlcy9fdmFyaWFibGVzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMuKi9cbi8qKi9cbi8qIENvcHlyaWdodCAoQykgMjAyMCBvbndhcmRzIFRvdGFyYSBMZWFybmluZyBTb2x1dGlvbnMgTFREKi9cbi8qKi9cbi8qIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMgaXMgcHJvdmlkZWQgb25seSB0byBUb3RhcmEqL1xuLyogTGVhcm5pbmcgU29sdXRpb25zIExURCdzIGN1c3RvbWVycyBhbmQgcGFydG5lcnMsIHB1cnN1YW50IHRvKi9cbi8qIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiBhIHNlcGFyYXRlIGFncmVlbWVudCB3aXRoIFRvdGFyYSovXG4vKiBMZWFybmluZyBTb2x1dGlvbnMgTFREIG9yIGl0cyBhZmZpbGlhdGUuKi9cbi8qKi9cbi8qIElmIHlvdSBkbyBub3QgaGF2ZSBhbiBhZ3JlZW1lbnQgd2l0aCBUb3RhcmEgTGVhcm5pbmcgU29sdXRpb25zKi9cbi8qIExURCwgeW91IG1heSBub3QgYWNjZXNzLCB1c2UsIG1vZGlmeSwgb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlLiovXG4vKiBQbGVhc2UgY29udGFjdCBbbGljZW5zaW5nQHRvdGFyYWxlYXJuaW5nLmNvbV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uKi9cbi8qKi9cbi8qIEBhdXRob3IgICAgS2V2aW4gSG90dGluZ2VyIDxrZXZpbi5ob3R0aW5nZXJAdG90YXJhbGVhcm5pbmcuY29tPiovXG4vKiBAbW9kdWxlIHR1aWNrYWdlICAgdHVpKi9cblxuLyogVGhpcyB2YXJpYWJsZSBmaWxlIGluY2x1ZGVzIHNwZWNpYWwgY29tbWVudHMgd2l0aCB0aGUgc3ludGF4IGB0aGVtZTp2YXJgIGFuZCovXG4vKiBgdGhlbWU6ZGVyaXZlYC4qL1xuLyoqL1xuLyogYHRoZW1lOnZhcmAgY29tbWVudHMgdGVsbCB0aGUgYnVpbGQgc3lzdGVtIHRoYXQgdGhpcyBpcyBhIGNvbmZpZ3VyYWJsZSovXG4vKiB2YXJpYWJsZSBhbmQgY2F1c2VzIGluZm9ybWF0aW9uIGFib3V0IGl0IHRvIGJlIGV4cG9ydGVkLiBUaGlzIGlzIG5lY2Nlc2FyeSovXG4vKiBmb3IgaXQgdG8gc2hvdyB1cCBpbiB0aGUgdGhlbWUgcGFuZWwuKi9cbi8qKi9cbi8qIGB0aGVtZTpkZXJpdmVgIGNvbW1lbnRzIGFkZCBpbmZvcm1hdGlvbiB0byB0aGUgZW50cnkgZm9yIGEgdGhlbWU6dmFyIHZhcmlhYmxlKi9cbi8qIHRlbGxpbmcgdGhlIHRoZW1lIHBhbmVsIHRoYXQgaXQgaXMgZGVyaXZlZCBmcm9tIGFub3RoZXIgdmFyaWFibGUuKi9cbi8qIFRoaXMgaW5mb3JtYXRhdGlvbiBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgbmV3IHZhbHVlIGZvciB0aGUgdmFyaWFibGUgaWYgdGhlKi9cbi8qIHZhbHVlIG9mIGFueSB2YXJpYWJsZSBpdCBpcyBkZXJpdmVkIGZyb20gaGFzIGNoYW5nZWQuKi9cblxuOnJvb3Qge1xuICAvKiovXG4gIC8qIFRoZW1lIGNvbG91cnMqL1xuICAvKiovXG5cbiAgLyogUHJpbWFyeSBjb2xvdXIqL1xuICAvKiBPZnRlbiB1c2VkIGZvciBkZWZhdWx0IGltYWdlLCBiYWNrZ3JvdW5kcywgbGluZSBzZXBhcmF0b3JzICYgdmlzdWFsIGluZGljYXRvcnMqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1wcmltYXJ5OiAjNjliZDQ1O1xuXG4gIC8qIFNlY29uZGFyeSBjb2xvdXIqL1xuICAvKiBPZnRlbiB1c2VkIGZvciB2aXN1YWwgY29tcG9uZW50cyBzdWNoIGFzIHByb2dyZXNzIGJhcnMgJiBjaGFydHMqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1zZWNvbmRhcnk6ICMwMDdhYjg7XG5cbiAgLyogVGVydGlhcnkgY29sb3VyKi9cbiAgLyogT2Z0ZW4gdXNlZCBmb3IgdmlzdWFsIGNvbXBvbmVudHMsIG11c3QgaGF2ZSBoaWdoIGNvbnRyYXN0IHRvIGJhY2tncm91bmQqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci10ZXJ0aWFyeTogIzFlYTRhOTtcblxuICAvKiovXG4gIC8qIEludGVyYWN0aXZlIHN0YXRlIGNvbG91cnMqL1xuICAvKiovXG5cbiAgLyogRGVmYXVsdCBzdGF0ZSBjb2xvdXIsIHNob3dzIGFuIGVsZW1lbnQgaXMgaW50ZXJhY3RpdmUqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1zdGF0ZTogIzRiN2UyYjtcblxuICAvKiBIb3ZlciBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gY3Vyc29yIGlzIG92ZXIgaW50ZXJhY3RpdmUgZWxlbWVudCovXG4gIC8qIHRoZW1lOnZhciAqL1xuICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWNvbG9yLXN0YXRlKSwgLTEwKSAqL1xuICAtLWNvbG9yLXN0YXRlLWhvdmVyOiAjM2M2NzIxO1xuICAvKiBGb2N1cyBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBoYXMgZm9jdXMgKGtleWJvYXJkIHRhYmJpbmcpKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tY29sb3Itc3RhdGUpLCAtMTApICovXG4gIC0tY29sb3Itc3RhdGUtZm9jdXM6ICMzYzY3MjE7XG4gIC8qIEFjdGl2ZSBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBpcyBhY3RpdmUgKGNsaWNrZWQpKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tY29sb3Itc3RhdGUpLCAtMjcpICovXG4gIC0tY29sb3Itc3RhdGUtYWN0aXZlOiAjMzA1NDFhO1xuICAvKiBIaWdobGlnaHQsIHZpc3VhbCBjbHVlIGZvciB0aGluZ3MgdGhhdCBuZWVkIHRvIGJlIGhpZ2hsaWdodGVkIG1vcmUqL1xuICAvKiBwcm9taW5lbnRseSB0aGFuIGhpZ2hsaWdodC1uZXV0cmFsLiovXG4gIC0tY29sb3Itc3RhdGUtaGlnaGxpZ2h0OiAjZjZmOWQ3O1xuICAvKiBOZXV0cmFsIGhpZ2hsaWdodCwgdmlzdWFsIGNsdWUgZm9yIGhvdmVyL2ZvY3VzIG9uIGNvbXBvbmVudHMgc3VjaCBhcyBhIGxpc3Qgcm93Ki9cbiAgLS1jb2xvci1zdGF0ZS1oaWdobGlnaHQtbmV1dHJhbDogdmFyKC0tY29sb3ItbmV1dHJhbC0zKTtcbiAgLyogRGlzYWJsZWQgY29sb3VyIG9mIGludGVyYWN0aXZlIGVsZW1lbnRzKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3Itc3RhdGUtZGlzYWJsZWQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG5cbiAgLyoqL1xuICAvKiBOZXV0cmFsIGNvbG91ciByYW5nZXMqL1xuICAvKiovXG5cbiAgLyogT2Z0ZW4gdXNlZCBmb3IgbmF2aWdhdGlvbiBiYXIsIGJhY2tncm91bmRzICYgZm9vdGVyKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3ItbmV1dHJhbC0xOiAjZmZmO1xuICAvKiBPZnRlbiB1c2VkIGZvciBjb250ZW50IGJhY2tncm91bmQqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTI6ICNmYWZhZmE7XG4gIC8qIE9mdGVuIHVzZWQgZm9yIHNpZGUgcGFuZWwgYmFja2dyb3VuZCAmIGRpc2FibGVkIGJ1dHRvbnMqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTM6ICNmN2Y3Zjc7XG4gIC8qIE9mdGVuIHVzZWQgZm9yIHByb2dyZXNzIGJhciBiYWNrZ3JvdW5kKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3ItbmV1dHJhbC00OiAjZTZlNGU0O1xuICAvKiBPZnRlbiB1c2VkIGZvciBjYXJkIGNvbXBvbmVudCBib3JkZXJzLCBsaW5lIHNlcGFyYXRvcnMgJiBkaXNhYmxlZCBidXR0b24qL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTU6ICNjN2M3Yzc7XG4gIC8qIE9mdGVuIHVzZWQgZm9yIGljb25zIGFuZCBmb3JtIGNvbXBvbmVudCBib3JkZXJzKi9cbiAgLyogdGhlbWU6dmFyICovXG4gIC0tY29sb3ItbmV1dHJhbC02OiAjNzY3Njc2O1xuICAvKiBPZnRlbiB1c2VkIGZvciBoZWFkZXJzIGFuZCBib2R5IHRleHQqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1jb2xvci1uZXV0cmFsLTc6ICMyNjI2MjY7XG5cbiAgLyoqL1xuICAvKiBDb250ZW50IGNvbG91cnMqL1xuICAvKiovXG4gIC0tY29sb3ItYmFja2dyb3VuZDogdmFyKC0tY29sb3ItbmV1dHJhbC0xKTtcbiAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLWNvbG9yLXRleHQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtNyk7XG4gIC0tY29sb3ItdGV4dC1kaXNhYmxlZDogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgLS1jb2xvci10ZXh0LWhpbnQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtNik7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlKTtcbiAgLyogdGhlbWU6dmFyICovXG4gIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tbGluay1jb2xvciksIC0xMCkgKi9cbiAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1zdGF0ZS1ob3Zlcik7XG5cbiAgLyoqL1xuICAvKiBIZWFkZXIgY29sb3JzKi9cbiAgLyoqL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1uYXYtYmctY29sb3I6ICNmZmY7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLW5hdi10ZXh0LWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcblxuICAvKiovXG4gIC8qIEZvb3RlciBjb2xvcnMqL1xuICAvKiovXG4gIC8qIHRoZW1lOnZhciAqL1xuICAtLWZvb3Rlci1iZy1jb2xvcjogI2ZmZjtcbiAgLyogdGhlbWU6dmFyICovXG4gIC0tZm9vdGVyLXRleHQtY29sb3I6IHZhcigtLWNvbG9yLXRleHQpO1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLyogdGhlbWU6ZGVyaXZlIGFkanVzdC1oZXgtdmFsdWUtYnJpZ2h0bmVzcyh2YXIoLS1mb290ZXItdGV4dC1jb2xvciksIC0xMCkgKi9cbiAgLS1mb290ZXItdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZm9vdGVyLXRleHQtY29sb3IpO1xuXG4gIC8qKi9cbiAgLyogQnV0dG9ucyovXG4gIC8qKi9cblxuICAvKiBTdGFuZGFyZCBidG4qL1xuICAvKiB0aGVtZTp2YXIgKi9cbiAgLS1idG4tYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWJ0bi1hY2NlbnQtY29sb3IpLCAtMjcpICovXG4gIC0tYnRuLWFjY2VudC1jb2xvci1hY3RpdmU6IHZhcigtLWNvbG9yLXN0YXRlLWFjdGl2ZSk7XG4gIC8qIHRoZW1lOnZhciAqL1xuICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWJ0bi1hY2NlbnQtY29sb3IpLCAtMTApICovXG4gIC0tYnRuLWFjY2VudC1jb2xvci1ob3ZlcjogdmFyKC0tY29sb3Itc3RhdGUtaG92ZXIpO1xuICAtLWJ0bi1hY2NlbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLXN0YXRlLWRpc2FibGVkKTtcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9fdmFyaWFibGVzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMuKi9cbi8qKi9cbi8qIENvcHlyaWdodCAoQykgMjAyMCBvbndhcmRzIFRvdGFyYSBMZWFybmluZyBTb2x1dGlvbnMgTFREKi9cbi8qKi9cbi8qIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMgaXMgcHJvdmlkZWQgb25seSB0byBUb3RhcmEqL1xuLyogTGVhcm5pbmcgU29sdXRpb25zIExURCdzIGN1c3RvbWVycyBhbmQgcGFydG5lcnMsIHB1cnN1YW50IHRvKi9cbi8qIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiBhIHNlcGFyYXRlIGFncmVlbWVudCB3aXRoIFRvdGFyYSovXG4vKiBMZWFybmluZyBTb2x1dGlvbnMgTFREIG9yIGl0cyBhZmZpbGlhdGUuKi9cbi8qKi9cbi8qIElmIHlvdSBkbyBub3QgaGF2ZSBhbiBhZ3JlZW1lbnQgd2l0aCBUb3RhcmEgTGVhcm5pbmcgU29sdXRpb25zKi9cbi8qIExURCwgeW91IG1heSBub3QgYWNjZXNzLCB1c2UsIG1vZGlmeSwgb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlLiovXG4vKiBQbGVhc2UgY29udGFjdCBbbGljZW5zaW5nQHRvdGFyYWxlYXJuaW5nLmNvbV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uKi9cbi8qKi9cbi8qIEBhdXRob3IgICAgS2V2aW4gSG90dGluZ2VyIDxrZXZpbi5ob3R0aW5nZXJAdG90YXJhbGVhcm5pbmcuY29tPiovXG4vKiBAbW9kdWxlIHR1aWNrYWdlICAgdHVpKi9cblxuLyogVGhpcyB2YXJpYWJsZSBmaWxlIGluY2x1ZGVzIHNwZWNpYWwgY29tbWVudHMgd2l0aCB0aGUgc3ludGF4IGB0aGVtZTp2YXJgIGFuZCovXG4vKiBgdGhlbWU6ZGVyaXZlYC4qL1xuLyoqL1xuLyogYHRoZW1lOnZhcmAgY29tbWVudHMgdGVsbCB0aGUgYnVpbGQgc3lzdGVtIHRoYXQgdGhpcyBpcyBhIGNvbmZpZ3VyYWJsZSovXG4vKiB2YXJpYWJsZSBhbmQgY2F1c2VzIGluZm9ybWF0aW9uIGFib3V0IGl0IHRvIGJlIGV4cG9ydGVkLiBUaGlzIGlzIG5lY2Nlc2FyeSovXG4vKiBmb3IgaXQgdG8gc2hvdyB1cCBpbiB0aGUgdGhlbWUgcGFuZWwuKi9cbi8qKi9cbi8qIGB0aGVtZTpkZXJpdmVgIGNvbW1lbnRzIGFkZCBpbmZvcm1hdGlvbiB0byB0aGUgZW50cnkgZm9yIGEgdGhlbWU6dmFyIHZhcmlhYmxlKi9cbi8qIHRlbGxpbmcgdGhlIHRoZW1lIHBhbmVsIHRoYXQgaXQgaXMgZGVyaXZlZCBmcm9tIGFub3RoZXIgdmFyaWFibGUuKi9cbi8qIFRoaXMgaW5mb3JtYXRhdGlvbiBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgbmV3IHZhbHVlIGZvciB0aGUgdmFyaWFibGUgaWYgdGhlKi9cbi8qIHZhbHVlIG9mIGFueSB2YXJpYWJsZSBpdCBpcyBkZXJpdmVkIGZyb20gaGFzIGNoYW5nZWQuKi9cblxuOnJvb3Qge1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tZXNvci1ldWxhcjogIzAwNTdiYjtcbiAgICAtLWVzb3ItYWR2b2NhY3k6ICM1YzczMjE7XG4gICAgLS1lc29yLWNvbmdyZXNzOiAjZTEwMDdhO1xuICAgIC0tZXNvci1lZHVjYXRpb246ICNhNmM0ZTY7XG4gICAgLS1lc29yLWVtdW5ldDogIzkzMTE3RTtcbiAgICAtLWVzb3ItaHByOiAjZmRjNjBhO1xuICAgIC0tZXNvci1wYWVkOiAjNTlkY2UxO1xuICAgIC0tZXNvci1wYXJlOiAjYWZjYTA0O1xuICAgIC0tZXNvci1xb2M6ICNlZDZkMDU7XG4gICAgLS1lc29yLXJlc2VhcmNoOiAjMDEyMTY5O1xuXG4gICAgLS1lc29yLXJlZ29wZW46ICM2YzllMDM7XG5cbiAgICAtLWVzb3ItcmVkOiByZWQ7XG4gICAgLS1lc29yLWdyZWVuOiBncmVlbjtcblxuICAgIC8qKi9cbiAgICAvKiBUaGVtZSBjb2xvdXJzKi9cbiAgICAvKiovXG4gIFxuICAgIC8qIFByaW1hcnkgY29sb3VyKi9cbiAgICAvKiBPZnRlbiB1c2VkIGZvciBkZWZhdWx0IGltYWdlLCBiYWNrZ3JvdW5kcywgbGluZSBzZXBhcmF0b3JzICYgdmlzdWFsIGluZGljYXRvcnMqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItcHJpbWFyeTogdmFyKC0tZXNvci1ldWxhcik7XG4gIFxuICAgIC8qIFNlY29uZGFyeSBjb2xvdXIqL1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIHZpc3VhbCBjb21wb25lbnRzIHN1Y2ggYXMgcHJvZ3Jlc3MgYmFycyAmIGNoYXJ0cyovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1zZWNvbmRhcnk6IHZhcigtLWVzb3ItZXVsYXIpO1xuICBcbiAgICAvKiBUZXJ0aWFyeSBjb2xvdXIqL1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIHZpc3VhbCBjb21wb25lbnRzLCBtdXN0IGhhdmUgaGlnaCBjb250cmFzdCB0byBiYWNrZ3JvdW5kKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAtLWNvbG9yLXRlcnRpYXJ5OiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgXG4gICAgLyoqL1xuICAgIC8qIEludGVyYWN0aXZlIHN0YXRlIGNvbG91cnMqL1xuICAgIC8qKi9cbiAgXG4gICAgLyogRGVmYXVsdCBzdGF0ZSBjb2xvdXIsIHNob3dzIGFuIGVsZW1lbnQgaXMgaW50ZXJhY3RpdmUqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3Itc3RhdGU6IHZhcigtLWVzb3ItZXVsYXIpO1xuICBcbiAgICAvKiBIb3ZlciBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gY3Vyc29yIGlzIG92ZXIgaW50ZXJhY3RpdmUgZWxlbWVudCovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLyogdGhlbWU6ZGVyaXZlIGFkanVzdC1oZXgtdmFsdWUtYnJpZ2h0bmVzcyh2YXIoLS1jb2xvci1zdGF0ZSksIC0xMCkgKi9cbiAgICAtLWNvbG9yLXN0YXRlLWhvdmVyOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAvKiBGb2N1cyBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBoYXMgZm9jdXMgKGtleWJvYXJkIHRhYmJpbmcpKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWNvbG9yLXN0YXRlKSwgLTEwKSAqL1xuICAgIC0tY29sb3Itc3RhdGUtZm9jdXM6IHZhcigtLWVzb3ItZXVsYXIpO1xuICAgIC8qIEFjdGl2ZSBzdGF0ZSBjb2xvdXIsIHNob3duIHdoZW4gZWxlbWVudCBpcyBhY3RpdmUgKGNsaWNrZWQpKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWNvbG9yLXN0YXRlKSwgLTI3KSAqL1xuICAgIC0tY29sb3Itc3RhdGUtYWN0aXZlOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAvKiBIaWdobGlnaHQsIHZpc3VhbCBjbHVlIGZvciB0aGluZ3MgdGhhdCBuZWVkIHRvIGJlIGhpZ2hsaWdodGVkIG1vcmUqL1xuICAgIC8qIHByb21pbmVudGx5IHRoYW4gaGlnaGxpZ2h0LW5ldXRyYWwuKi9cbiAgICAtLWNvbG9yLXN0YXRlLWhpZ2hsaWdodDogI2Y2ZjlkNztcbiAgICAvKiBOZXV0cmFsIGhpZ2hsaWdodCwgdmlzdWFsIGNsdWUgZm9yIGhvdmVyL2ZvY3VzIG9uIGNvbXBvbmVudHMgc3VjaCBhcyBhIGxpc3Qgcm93Ki9cbiAgICAtLWNvbG9yLXN0YXRlLWhpZ2hsaWdodC1uZXV0cmFsOiB2YXIoLS1jb2xvci1uZXV0cmFsLTMpO1xuICAgIC8qIERpc2FibGVkIGNvbG91ciBvZiBpbnRlcmFjdGl2ZSBlbGVtZW50cyovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1zdGF0ZS1kaXNhYmxlZDogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgXG4gICAgLyoqL1xuICAgIC8qIE5ldXRyYWwgY29sb3VyIHJhbmdlcyovXG4gICAgLyoqL1xuICBcbiAgICAvKiBPZnRlbiB1c2VkIGZvciBuYXZpZ2F0aW9uIGJhciwgYmFja2dyb3VuZHMgJiBmb290ZXIqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItbmV1dHJhbC0xOiAjZmZmZmZmO1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIGNvbnRlbnQgYmFja2dyb3VuZCovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTI6ICNmYWZhZmE7XG4gICAgLyogT2Z0ZW4gdXNlZCBmb3Igc2lkZSBwYW5lbCBiYWNrZ3JvdW5kICYgZGlzYWJsZWQgYnV0dG9ucyovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTM6ICNmN2Y3Zjc7XG4gICAgLyogT2Z0ZW4gdXNlZCBmb3IgcHJvZ3Jlc3MgYmFyIGJhY2tncm91bmQqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItbmV1dHJhbC00OiAjZTZlNGU0O1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIGNhcmQgY29tcG9uZW50IGJvcmRlcnMsIGxpbmUgc2VwYXJhdG9ycyAmIGRpc2FibGVkIGJ1dHRvbiovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTU6ICNjN2M3Yzc7XG4gICAgLyogT2Z0ZW4gdXNlZCBmb3IgaWNvbnMgYW5kIGZvcm0gY29tcG9uZW50IGJvcmRlcnMqL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tY29sb3ItbmV1dHJhbC02OiAjNzY3Njc2O1xuICAgIC8qIE9mdGVuIHVzZWQgZm9yIGhlYWRlcnMgYW5kIGJvZHkgdGV4dCovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci1uZXV0cmFsLTc6ICMyNjI2MjY7XG4gIFxuICAgIC8qKi9cbiAgICAvKiBDb250ZW50IGNvbG91cnMqL1xuICAgIC8qKi9cbiAgICAtLWNvbG9yLWJhY2tncm91bmQ6IHZhcigtLWNvbG9yLW5ldXRyYWwtMSk7XG4gICAgLS1jb2xvci1ib3JkZXI6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1jb2xvci10ZXh0OiB2YXIoLS1jb2xvci1uZXV0cmFsLTcpO1xuICAgIC0tY29sb3ItdGV4dC1kaXNhYmxlZDogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgICAtLWNvbG9yLXRleHQtaGludDogdmFyKC0tY29sb3ItbmV1dHJhbC02KTtcbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAtLWxpbmstY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlKTtcbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWxpbmstY29sb3IpLCAtMTApICovXG4gICAgLS1saW5rLWNvbG9yLWhvdmVyOiB2YXIoLS1jb2xvci1zdGF0ZS1ob3Zlcik7XG4gIFxuICAgIC8qKi9cbiAgICAvKiBIZWFkZXIgY29sb3JzKi9cbiAgICAvKiovXG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1uYXYtYmctY29sb3I6ICNmZmZmZmY7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1uYXYtdGV4dC1jb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgXG4gICAgLyoqL1xuICAgIC8qIEZvb3RlciBjb2xvcnMqL1xuICAgIC8qKi9cbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAtLWZvb3Rlci1iZy1jb2xvcjogdmFyKC0tZXNvci1ldWxhcik7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLS1mb290ZXItdGV4dC1jb2xvcjogI2ZmZmZmZjtcbiAgICAvKiB0aGVtZTp2YXIgKi9cbiAgICAvKiB0aGVtZTpkZXJpdmUgYWRqdXN0LWhleC12YWx1ZS1icmlnaHRuZXNzKHZhcigtLWZvb3Rlci10ZXh0LWNvbG9yKSwgLTEwKSAqL1xuICAgIC0tZm9vdGVyLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWZvb3Rlci10ZXh0LWNvbG9yKTtcbiAgICAvKiovXG4gICAgLyogQnV0dG9ucyovXG4gICAgLyoqL1xuICBcbiAgICAvKiBTdGFuZGFyZCBidG4qL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tYnRuLWFjY2VudC1jb2xvcjogdmFyKC0tY29sb3Itc3RhdGUpO1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tYnRuLWFjY2VudC1jb2xvciksIC0yNykgKi9cbiAgICAtLWJ0bi1hY2NlbnQtY29sb3ItYWN0aXZlOiB2YXIoLS1jb2xvci1zdGF0ZS1hY3RpdmUpO1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tYnRuLWFjY2VudC1jb2xvciksIC0xMCkgKi9cbiAgICAtLWJ0bi1hY2NlbnQtY29sb3ItZm9jdXM6IHZhcigtLWNvbG9yLXN0YXRlLWZvY3VzKTtcbiAgICAtLWJ0bi1hY2NlbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLXN0YXRlLWRpc2FibGVkKTtcbiAgXG4gICAgLyogUHJpbWFyeSBidG4qL1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC0tYnRuLXByaW0tYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gICAgLyogdGhlbWU6dmFyICovXG4gICAgLyogdGhlbWU6ZGVyaXZlIGFkanVzdC1oZXgtdmFsdWUtYnJpZ2h0bmVzcyh2YXIoLS1idG4tcHJpbS1hY2NlbnQtY29sb3IpLCAtMjcpICovXG4gICAgLS1idG4tcHJpbS1hY2NlbnQtY29sb3ItYWN0aXZlOiB2YXIoLS1jb2xvci1zdGF0ZS1hY3RpdmUpO1xuICAgIC8qIHRoZW1lOnZhciAqL1xuICAgIC8qIHRoZW1lOmRlcml2ZSBhZGp1c3QtaGV4LXZhbHVlLWJyaWdodG5lc3ModmFyKC0tYnRuLXByaW0tYWNjZW50LWNvbG9yKSwgLTEwKSAqL1xuICAgIC0tYnRuLXByaW0tYWNjZW50LWNvbG9yLWZvY3VzOiB2YXIoLS1jb2xvci1zdGF0ZS1mb2N1cyk7XG4gICAgLS1idG4tcHJpbS1hY2NlbnQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWNvbG9yLXN0YXRlLWRpc2FibGVkKTtcblxuICAgIC8qIG92ZXJyaWRlIFZhcmlhYmxlcyovXG4gICAgLS1mb250LWJvZHktc2l6ZTogMTZweDtcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9hYm91dHVzaGVhZGVyLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5sYy1hYm91dC11cyB7XG4gICAgLmFib3V0LXVzLWhlYWRlci13cmFwcGVyIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcblxuICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuXG4gICAgICAgIC5pbm5lciB7XG5cbiAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXJlbSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cmVtIDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgxIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYWJvdXR1cy10aXRsZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmN0YSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNHJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhIHtcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2FudXJhX2NvdXJzZS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLWNvdXJzZS12aWV3LXRvcGljcyB7XG5cbiAgICAvKiBhbnVyYSBzdHlsaW5nKi9cbiAgICAmLmxjLWFudXJhIHtcbiAgICAgICAgLmNvbnRlbnQuYW51cmEtaW50ZWdyYXRpb24ge1xuICAgICAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICYubWFpbiB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB2YXIoLS1jb2xvci1uZXV0cmFsLTQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hbnVyYS1pbnRlZ3JhdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYWQzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwidGZvbnRcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuY2xvc2VkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVjNWZcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBhbnVyYS1jb25mZXJlbmNlIHN0eWxpbmcqL1xuICAgICYubGMtYW51cmEtY29uZmVyZW5jZSB7XG4gICAgICAgIC5zZWN0aW9uIHtcbiAgICAgICAgICAgICYubWFpbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLW5ldXRyYWwtNCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hbnVyYS1pbnRlZ3JhdGlvbiB7XG4gICAgICAgICAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYWQzXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwidGZvbnRcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuc2VjdGlvbi1hY2NvcmRpb24td3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHVuc2V0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY2xvc2VkIHtcbiAgICAgICAgICAgICAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVjNWZcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5zZWN0aW9uLWFjY29yZGlvbi13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9jb3Vyc2VoZWFkZXIuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uY291cnNlLWltZy1oZWFkZXItd3JhcHBlcixcbi5wcm9ncmFtLWltZy1oZWFkZXItd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWdhcC0yKTtcblxuICAgIC5yb3cge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwIDFyZW07XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMCAycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cmVtIDAgM3JlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNwLWhlYWRlci1hY3Rpb24ge1xuICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAgICAgLnNwLWVucm9sLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjVyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5idG4tZW5yb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJ0bi1iZy1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWJ0bi10ZXh0LWNvbG9yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGg0LFxuICAgICAgICAgICAgICAgICAgICAuc3AtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmltZy1ob2xkZXIge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAzNjAvMjM1O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvY29uZmlybV9pbmZvLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmF1dGgtY29uZmlybS1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWVzb3ItZWR1Y2F0aW9uKTtcbiAgICBjb2xvcjogYmxhY2s7XG5cbiAgICAuaW5uZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtMikgMDtcbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9mb290ZXIuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGFnZS1mb290ZXIge1xuXG4gICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC02KSAhaW1wb3J0YW50O1xuXG4gICAgLnBhZ2UtZm9vdGVyLW1haW4tY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBib3R0b207XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tZ2FwLTEpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwLTYpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2FwLTYpO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC0xMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tZ2FwLTEwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvLXNlY3Rpb24ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtc2VjdGlvbiB7XG4gICAgICAgIC5jb250YWN0LFxuICAgICAgICAubWFpbHRvIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBob25lIHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tZ2FwLTQpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogdmFyKC0tZ2FwLTIpIDA7XG4gICAgICAgIH1cblxuICAgICAgICBhOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgLmNvbC1sZy0zIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc29jaWFsLXNlY3Rpb24ge1xuICAgICAgICAuZm9vdGVyLXNvY2lhbC1pY29ucyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIHZhcigtLWdhcC0yKTtcbiAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbC1tZC02IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHZhcigtLWdhcC04KTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4jcGFnZS1sb2dpbi1pbmRleCB7XG4gICAgLnR1aS1jb3JlX2F1dGgtZm9vdGVyIHtcbiAgICAgICAgLmZvb3Rub3RlIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB1bCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dWktY29yZV9hdXRoLWZvb3Rlcl9fcG93ZXJlZEJ5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvbmF2aWdhdGlvbi5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udG90YXJhTmF2IHtcblxuICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAudG90YXJhTmF2X3ByaW0tLWxpc3RfaXRlbSB7XG4gICAgICAgICAgICAmLnRvdGFyYU5hdl9wcmltLS1saXN0X2l0ZW1fc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdF9pdGVtX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdF9pdGVtX2xpbmsge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgIC50b3RhcmFOYXZfcHJpbS0tbGlzdF9pdGVtX2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAudG90YXJhTmF2X3ByaW0tLWxpc3RfaXRlbV9sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lc29yLWVkdWNhdGlvbik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50b3RhcmFOYXZfcHJpbS0tc2lkZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAucG9wb3Zlci1yZWdpb24ge1xuICAgICAgICAgICAgLmZsZXgtaWNvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm5hdkV4cGFuZC0tbGlzdFNlY29uZCB7XG4gICAgICAgIC5uYXZFeHBhbmQtLWxpc3RfaXRlbV9saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWVzb3ItZWR1Y2F0aW9uKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC51c2VybWVudSB7XG4gICAgICAgIC51c2VycGljdHVyZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgICAudXNlcnRleHQge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgLyogY29sb3I6IHZhcigtLWNvbG9yLXRleHQpOyovXG4gICAgICAgICAgICB3aWR0aDogMjQwcHg7XG4gICAgICAgICAgICAvKiBiYWNrZ3JvdW5kOiB2YXIoLS1zd2FnLWdyYXkpOyovXG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQpXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGRpdiB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sb2dvdXQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2xhbmRpbmdfYXdhcmRzLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2tfbGFuZGluZ19hd2FyZCB7XG4gICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAudW5saXN0IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIHJvdy1nYXA6IDIuNXJlbTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYucjAge31cblxuICAgICAgICAgICAgICAgICYucjEge31cblxuICAgICAgICAgICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDRyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuYXdhcmRfaXRlbXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW1zX3Blcl9yb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7fVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmRpbmdfYXdhcmQtdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhcnRpYWxzL2hpZGVfZ3Vlc3Quc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBhdGgtY291cnNlLXZpZXcgIHtcbiAgICAmLmxjLWFib3V0LXVzLFxuICAgICYubGMtY2FsZW5kYXIge1xuICAgICAgICAudHctY29udGFpbmVyQ291cnNlLWVucm9sbWVudEJhbm5lci5hbGVydC5hbGVydC1pbmZvLmFsZXJ0LXdpdGgtaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy9zcF9tb2RhbC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBhdGgtZW5yb2wge1xuICAgIC5tb2RhbC1jb250YWluZXIge1xuICAgICAgICAmLnNhZmVycGF5IHtcbiAgICAgICAgICAgIC5jb250YWluZXItZmx1aWQgIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgIFxuICAgICAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pbnBsYWNlZWRpdGFibGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5xdWlja2VkaXRpY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZsZXgtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5lcnJvcnMge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogcmVkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5yb3ctZmxleCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMTZweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMTZweDtcblxuICAgICAgICAgICAgICAgICAgICBoNSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHR1aS1zY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jb2wge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRpc2NvdW50LWNvZGUtc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIC52b3VjaGVyLWNvZGUtaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IHZhcigtLWZvcm0taW5wdXQtaGVpZ2h0LWxhcmdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IGNhbGMoKHZhcigtLWZvcm0taW5wdXQtaGVpZ2h0LWxhcmdlKSAtIDFlbSAtICh2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1zaXplKSAqIDIpKSAvIDIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb3JtLWlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1yYWRpdXMpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiB2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1zaXplKSBzb2xpZCB2YXIoLS1mb3JtLWlucHV0LWJvcmRlci1jb2xvcik7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29kZS1pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC52b3VjaGVyLWNvZGUtd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1idG4tcHJpbS10ZXh0LWNvbG9yKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmRpc2NvdW50LW1vZGFsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWdyaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjRyZW0gMC44cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudG90YWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHZhcigtLWJ0bi1wcmltLXRleHQtY29sb3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS40cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGF4LWluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgICAgICAgICAgLmZsZXgtaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFydGlhbHMvdGVybXMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNmaXRlbV9pZF9wcm9maWxlX2ZpZWxkX1Rlcm1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgLmZpdGVtdGl0bGUge1xuICAgICAgICB3aWR0aDogdW5zZXQ7XG4gICAgfVxuXG4gICAgLmZlbGVtZW50IHtcbiAgICAgICAgd2lkdGg6IHVuc2V0O1xuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvY2FsZW5kYXIuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbmJvZHkge1xuICAgICYucGF0aC1jb3Vyc2UtdmlldyB7XG4gICAgICAgICYubGMtY2FsZW5kYXIge1xuICAgICAgICAgICAgLmJsb2NrX2Zha2Uge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgICAgIC5ibG9jay1oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICNjYWxlbmRhci1maWx0ZXIge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZpdGVtX2Z0ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAzNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5maXRlbXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZlbGVtZW50LmZ0ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXHVlYzdjXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcInRmb250XCIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT10ZXh0XSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweCA4cHggNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmZpdGVtX2Zncm91cCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNldCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZlbGVtZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZkYXRlX3NlbGVjdG9yIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvKiBjb250ZW50OiAnQyc7Ki9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmZjaGVja2JveC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogdmFyKC0tZ2FwLTEpIHZhcigtLWdhcC0yKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmNoZWNrZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKyBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGVsaW1pdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2JiYjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAuY29udGVudGFmdGVybGluayB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kdHlwZV9jYWxldmVudCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IDRweCA0cHggMTVweCAwIHJnYmEoMCwgMCwgMCwgMTAlKTtcblxuICAgICAgICAgICAgICAgID5kaXYge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmFjdGl2aXR5aW5zdGFuY2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5uby1vdmVyZmxvdyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kX2NhbGV2ZW50X2VudHJ5IHtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jYWxldmVudF9pbWFnZV93cmFwcGVyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgICAgICAgICBhc3BlY3QtcmF0aW86IDE2Lzk7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0OCU7XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbWdfaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYXNwZWN0LXJhdGlvOiAxNi85O1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5jYWxldmVudF9jZW50ZXJfd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF90aXRsZSxcbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2xhYmVsLFxuICAgICAgICAgICAgICAgICAgICAuY2FsZXZlbnRfZGF0ZV9pY29uLFxuICAgICAgICAgICAgICAgICAgICAuY2FsZXZlbnRfbG9jYXRpb25faWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAubGFiZWxfaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDRyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY2FsZXZlbnRfbGluayxcbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2luZm9kb3dubG9hZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCg1LCBhdXRvKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbSAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNSwgYXV0byk7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxLjVyZW0gM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNyZW0gMS41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF90aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMSAvIDI7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2xhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtcm93OiAyIC8gMztcblxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2RhdGVfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXJvdzogMyAvIDQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2xvY2F0aW9uX2ljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDQgLyA1O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9saW5rX3dyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDIgLyA0O1xuICAgICAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDQgLyA2O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuaW5uZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9saW5rLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9pbmZvZG93bmxvYWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpdjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5jYWxldmVudF9saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmNhbGV2ZW50X2luZm9kb3dubG9hZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAmLnBhdGgtY2FsZW5kYXJfZXZlbnQge1xuICAgICAgICAmI3BhZ2UtY2FsZW5kYXJfZXZlbnQtdmlld3MtY2FsZW5kYXJfZXZlbnRfdmlldyB7XG4gICAgICAgICAgICAuY291cnNlLWltZy1oZWFkZXItd3JhcHBlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2NhdGFsb2cuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtdG90YXJhLWNhdGFsb2ctaW5kZXgge1xuICAgIC50b3RhcmFOYXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgICRFbmRvcnNlZDogI0VENkQwNTtcbiAgICAkRW1ldW5ldDogIzkzMTE3RTtcbiAgICAkUmVzZWFyY2g6ICMwMTIxNjk7XG4gICAgJEVVTEFSOiAjMDA1N0I4O1xuICAgICRFY29uczogI0E2QzRFNjtcbiAgICAkQ29uY2x1ZGVkOiAjRUFBQTAwO1xuXG4gICAgLmhlcm8taGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICAgIG1heC13aWR0aDogY2FsYygxNjgwcHggLSAzMnB4KTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtMik7XG5cbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDhyZW07XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtaDEtd2VpZ2h0KTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtaDEtc2l6ZSk7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaDEtZmFtaWx5KTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1oMS1saW5lLWhlaWdodCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYi1jb250YWluZXIge1xuICAgICAgICAjcGFnZS1oZWFkZXIge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50dy1jYXRhbG9nX19wYWdlX2hlYWRpbmcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC50dy1jYXRhbG9nIHtcbiAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgICAgICY6Zm9jdXMsXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19jb250ZW50X2xlZnQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC8qIG1heC13aWR0aDogMzgwcHg7Ki9cblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAlO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2ltYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDU2JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2NvbnRlbnRfcmlnaHQge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgZmxleC1ncm93OiB1bnNldDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtMikgdmFyKC0tZ2FwLTQpO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLXNtKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fY29udGVudF9yaWdodF9zaWRlIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19jb250ZW50X3JpZ2h0X2JvZHkge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IHVuc2V0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX190ZXh0YXJlYV9ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX3RleHRhcmVhX2dyb3VwX2l0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMTVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fdGl0bGUsXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2VsbGlwc2lzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW2RhdGEtZGVzY3JpcHRpb249XCJFbmRvcnNlZFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19lbGxpcHNpcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJEVuZG9yc2VkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZbZGF0YS1kZXNjcmlwdGlvbj1cIkVtZXVuZXRcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZWxsaXBzaXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRFbWV1bmV0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICZbZGF0YS1kZXNjcmlwdGlvbj1cIlJlc2VhcmNoXCJdIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2VsbGlwc2lzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkUmVzZWFyY2g7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJltkYXRhLWRlc2NyaXB0aW9uPVwiRVVMQVJcIl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZWxsaXBzaXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRFVUxBUjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmW2RhdGEtZGVzY3JpcHRpb249XCJFY29uc1wiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19lbGxpcHNpcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJEVjb25zO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fbGFiZWxzIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKHZhcigtLWdhcC0xKSogLTEpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiB2YXIoLS1nYXAtMik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX3RpdGxlX2ZlYXR1cmVkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19oZXJvIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgICAgIHRvcDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG5cbiAgICAgICAgICAgICAgICAmW2RhdGEtaGVyb3RleHQ9Tm9dIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0l0ZW1XaWRlX19oZXJvX3RleHQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1lc29yLXJlZ29wZW4pO1xuICAgICAgICAgICAgICAgICAgICAvKiBwYWRkaW5nOiAwIDE4cHg7Ki9cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50dy1jYXRhbG9nSXRlbVdpZGVfX2NvbmNsdWRlZHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogY2FsYyh2YXIoLS1mb250LXNpemUtYmFzZSkgLyAxNiAqIDEzKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMDYyNXJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkQ29uY2x1ZGVkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jYXRhbG9nLWl0ZW0tZmVhdHVyZWQtdGV4dC1jb2xvcik7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCB2YXIoLS1nYXAtMSkgMCAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgdmFyKC0tZ2FwLTIpO1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dy1jYXRhbG9nRGV0YWlscyB7XG4gICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0RldGFpbHNfX2Fycm93IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHctY2F0YWxvZ0RldGFpbHNfX3BsYWNlbWVudCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICBsZWZ0OiB1bnNldDtcbiAgICAgICAgICAgICAgICB0b3A6IHVuc2V0O1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nRGV0YWlsc19fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiB1bnNldDtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA1cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nRGV0YWlsc19fdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50dy1jYXRhbG9nRGV0YWlsc19fZGV0YWlsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnR3LWNhdGFsb2dEZXRhaWxzTGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAudHctY2F0YWxvZ0RldGFpbHNMaW5rX19vcHRpb25fY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dy1jYXRhbG9nUGFnaW5hdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW46IDVyZW0gMCAzcmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgICAudHctY2F0YWxvZ1BhZ2luYXRpb25fX2J0biB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEycHggMThweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dy1jYXRhbG9nX19kZWJ1ZyB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudHctZ3JpZF9faXRlbSB7XG4gICAgICAgICAgICAmLnR3LWdyaWRfX2l0ZW1fYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiA0cHggNHB4IDE1cHggMCByZ2JhKDAsIDAsIDAsIDEwJSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHctZ3JpZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGVhZGVyXG4gICAgICovXG5cbiAgICAudHctY2F0YWxvZ19fcHJpbWFyeUZpbHRlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogdmFyKC0tZ2FwLTQpIDAgdmFyKC0tZ2FwLTgpO1xuXG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAxOHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMnJlbSAxcmVtO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHJlbSAzcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc2VjdGlvbi5jbGVhci1maWx0ZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5zaG93LWNsZWFyIHtcbiAgICAgICAgICAgIHNlY3Rpb24uY2xlYXItZmlsdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50dy1zZWxlY3RSZWdpb25QcmltYXJ5IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAudHctc2VsZWN0UmVnaW9uUHJpbWFyeV9fc2VsZWN0b3Ige1xuICAgICAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIC8qIEZpbHRlciovXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgICAgIC50dy1zZWxlY3RUcmVlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGFiZWwge31cblxuICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50dy1zZWxlY3RUcmVlX19leHBhbmRhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFRyZWVfX29wdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJvdy1nYXA6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFRyZWVfX2xpc3RfaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGlzdF9yb3dfbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50dy1zZWxlY3RUcmVlX19saXN0X3JvdyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi50dy1zZWxlY3RUcmVlX19hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudHctc2VsZWN0VHJlZV9fbGlzdF9yb3dfbGluayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIFNlYXJjaCBib3gqL1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIG9yZGVyOiAxO1xuXG4gICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHQge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cbiAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHRfX2J0biB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tZm9ybS1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1ib3JkZXIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHRfX2ZpZWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDB2dztcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnR3LXNlbGVjdFNlYXJjaFRleHRfX2ZpZWxkX2lucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWZvcm0taW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudHctY2F0YWxvZ19fcmVzdWx0c19vdmVydmlld19yb3cge1xuXG4gICAgICAgIC50dy1jYXRhbG9nUmVzdWx0c0NvdW50LFxuICAgICAgICAudHctY2F0YWxvZ1Jlc3VsdHNTaGFyZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnR3LWNhdGFsb2dfX3Jlc3VsdHNfb3ZlcnZpZXcge1xuICAgICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtNikgMDtcbiAgICAgICAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYmEoMCwgMCwgMCwgMjAlKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4IHJnYmEoMCwgMCwgMCwgMjAlKTtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGgyLmxjLWNhdGFsb2ctY2F0ZWdvcnkge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdSb2JvdG8nO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLWV1bGFyKTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNzAlO1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDo3NjdweCkge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KSB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgLnR3LWNhdGFsb2dfX3Jlc3VsdHNfb3ZlcnZpZXdfcm93IHtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnR3LWNhdGFsb2dJdGVtV2lkZV9fZGVzY3JpcHRpb24ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiT25zaXRlIENvdXJzZXNcIiBpXSxcbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkxpdmUgY291cnNlcyBhbmQgbWVldGluZ3NcIiBpXSxcbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkxpdmUgY291cnNlcyAmIG1lZXRpbmdzXCIgaV0ge1xuXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiVGlsZSBpbmZvXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQXBwbGljYXRpb24gRGVhZGxpbmVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEYXRlXCIgaV0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiZUxlYXJuaW5nIENvdXJzZXNcIiBpXSxcbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIk9ubGluZSBjb3Vyc2VzXCIgaV0sXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJPbmxpbmUgY291cnNlcyAmIG90aGVyIGRpZ2l0YWwgb2ZmZXJzXCIgaV0ge1xuXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkR1cmF0aW9uXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJBcHBsaWNhdGlvbiBEZWFkbGluZVwiIGldIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkVuZG9yc2VkIGNvdXJzZXNcIiBpXSxcbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkVuZG9yc2VkIGNvdXJzZXMgJiBtZWV0aW5nc1wiIGldIHtcblxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkNvdXJzZSBzdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiU3RhcnQgZGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEdXJhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkNvc3RcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJMb2NhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlJlZ2lzdHJhdGlvbiBkZWFkbGluZVwiIGldIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkJ1cnNhcmllcywgR3JhbnRzICYgRXhjaGFuZ2Ugb3Bwb3J0dW5pdGllc1wiIGldLFxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiQXdhcmRzLCBHcmFudHMgJiBFeGNoYW5nZSBPcHBvcnR1bml0eVwiIGldLFxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiQnVyc2FyaWVzLCBBd2FyZHMgJiBFeGNoYW5nZSBvcHBvcnR1bml0aWVzXCIgaV0ge1xuXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQ291cnNlIHN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJTdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkNvc3RcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJMb2NhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkFwcGxpY2F0aW9uIERlYWRsaW5lXCIgaV0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiUHVibGljYXRpb25zXCIgaV0ge1xuXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQ291cnNlIHN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJTdGFydCBkYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkR1cmF0aW9uXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiTG9jYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJSZWdpc3RyYXRpb24gZGVhZGxpbmVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJBcHBsaWNhdGlvbiBEZWFkbGluZVwiIGldIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBbZGF0YS1kZXNjcmlwdGlvbj1cIkZyZWUgTGVhcm5pbmcgTWF0ZXJpYWxcIiBpXSB7XG5cbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJDb3Vyc2Ugc3RhcnQgZGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRHVyYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJMb2NhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlJlZ2lzdHJhdGlvbiBkZWFkbGluZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkFwcGxpY2F0aW9uIERlYWRsaW5lXCIgaV0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiV2ViaW5hcnNcIiBpXSB7XG5cbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJDb3Vyc2Ugc3RhcnQgZGF0ZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlN0YXJ0IGRhdGVcIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJEYXRlXCIgaV0sXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRHVyYXRpb25cIiBpXSxcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJMb2NhdGlvblwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlJlZ2lzdHJhdGlvbiBkZWFkbGluZVwiIGldLFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkFwcGxpY2F0aW9uIERlYWRsaW5lXCIgaV0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkYXRhLWRlc2NyaXB0aW9uPVwiTW9kdWxlXCIgaV0ge1xuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkRhdGVcIiBpXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgW2RhdGEtZGVzY3JpcHRpb249XCJNb2R1bGVzXCIgaV0ge1xuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIkNvdXJzZSBzdGFydCBkYXRlXCIgaV0sIFxuICAgICAgICBbZGF0YS10eXBlLXNob3J0bmFtZT1cIlN0YXJ0IGRhdGVcIiBpXSwgXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiRGF0ZVwiIGldLCBcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJMb2NhdGlvblwiIGldLCBcbiAgICAgICAgW2RhdGEtdHlwZS1zaG9ydG5hbWU9XCJSZWdpc3RyYXRpb24gZGVhZGxpbmVcIiBpXSwgXG4gICAgICAgIFtkYXRhLXR5cGUtc2hvcnRuYW1lPVwiQXBwbGljYXRpb24gRGVhZGxpbmVcIiBpXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9jb3Vyc2Uuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ucGF0aC1lbnJvbCxcbi5wYXRoLWNvdXJzZSB7XG4gICAgLnRvdGFyYU5hdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4ucGF0aC1lbnJvbCxcbi5wYXRoLWNvdXJzZS12aWV3IHtcblxuICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgIGgyLmhlYWRpbmcge1xuICAgICAgICAgICAgQGluY2x1ZGUgY291cnNlLW1haW4tdGl0bGU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0aXRsZS11bmRlcmxpbmU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJsb2NrX2Zha2Uge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvY2staGVhZGVyIHtcbiAgICAgICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBjb3Vyc2UtYmxvY2stdGl0bGU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRpdGxlLXVuZGVybGluZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvdXJzZS1jZi1oZWFkZXIge1xuICAgICAgICAgICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4tZ2FwOiAxLjVyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDAsIC13ZWJraXQtbWF4LWNvbnRlbnQpKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMCwgbWF4LWNvbnRlbnQpKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5jb3Vyc2UtZG9jdW1lbnRzIHtcbiAgICAgICAgICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMnB4IHJnYmEoMCwgMCwgMCwgMjAlKTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDA7XG5cbiAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMi42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9zeW1ib2xfZG93bmxvYWRdXSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvdXJzZS1pbmZvIHtcbiAgICAgICAgICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuaW5mby1pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxcmVtIDA7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIuNnJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMi42cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChbW3BpeDp0aGVtZV9lc29yfGljb25zL09ubGluZV9Db3Vyc2VzXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmR1cmF0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9pb25faG91cmdsYXNzLW91dGxpbmVdXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICYuc2tpbGwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChbW3BpeDp0aGVtZV9lc29yfGljb25zL3NraWxsLWxldmVsLWFkdmFuY2VkXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmRlYWRsaW5lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9jYWxlbmRhci10aW1lXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmNvbnRhY3RzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9lbWFpbC1vdXRsaW5lXV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgPnAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDAgMCAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmNvdXJzZS12aWRlbyB7XG4gICAgICAgICAgICAmLmVtcHR5IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmxvY2stdGl0bGUge1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAuY291cnNlLXZpZGVvLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIG15RVVMQVIgQmFkZ2UgU3R5bGVzICovXG4gICAgLmNvdXJzZS1pbWctaGVhZGVyIC5pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucy13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZ2FwOiAyMHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICB9XG4gICAgXG4gICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucyB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIFxuICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMgPiAqIHtcbiAgICAgICAgbWF4LXdpZHRoOiAtd2Via2l0LWZpdC1jb250ZW50O1xuICAgICAgICBtYXgtd2lkdGg6IC1tb3otZml0LWNvbnRlbnQ7XG4gICAgICAgIG1heC13aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlLXdyYXBwZXIge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgXG4gICAgLm15ZXVsYXItYmFkZ2UtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlLWxpbms6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAwLjk7XG4gICAgfVxuICAgIFxuICAgIC5teWV1bGFyLWJhZGdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgXG4gICAgLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAtIG1vdmUgYmFkZ2UgYmVsb3cgYnV0dG9ucyB3aGVuIGl0IHN0YXJ0cyBnZXR0aW5nIGNyYW1wZWQgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMtd3JhcHBlciB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5teWV1bGFyLWJhZGdlLXdyYXBwZXIge1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyoqXG4gKiBDb3Vyc2UgZm9ybWF0c1xuICovXG5cbiNwYWdlLWNvdXJzZS12aWV3LWV1bGFyIHtcbiAgICAjcGFnZS1jb250ZW50IHtcbiAgICAgICAgLmNvdXJzZS1jb250ZW50IHtcbiAgICAgICAgICAgIHVsLmV1bGFyIHtcbiAgICAgICAgICAgICAgICAuc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmJsdWVzZWN0aW9uIHtcblxuICAgICAgICAgICAgICAgICAgICAuc3VtbWFyeSxcbiAgICAgICAgICAgICAgICAgICAgdWwuc2VjdGlvbi5pbWctdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLnRvcGljX2NvbGxhcHNlX2hlYWRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnNlY3Rpb25uYW1lIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGNhbGMoMTAlICsgOTBweCkgMCAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1oZWFkaW5nLWxpbmUtaGVpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRvZ2dsZV9pbWFnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwidGZvbnRcIiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVjNWZcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5yb3RhdGVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGVhZDNcIjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zdW1tYXJ5LFxuICAgICAgICAgICAgICAgICAgICAgICAgLmF2YWlsYWJpbGl0eWluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNwYWdlLWNvdXJzZS12aWV3LXRvcGljcyB7XG4gICAgI3BhZ2UtY29udGVudCB7XG4gICAgICAgIC5jb3Vyc2UtY29udGVudCB7XG4gICAgICAgICAgICB1bC50b3BpY3Mge1xuICAgICAgICAgICAgICAgIC5zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgJltkYXRhLW9wZW49dHJ1ZV0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zZWN0aW9ubmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mbGV4LWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZWFkM1wiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnR3LWZvcm1hdFRvcGljc19fdG9waWNfY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VjdGlvbm5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAwIDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50dy1mb3JtYXRUb3BpY3NfX2NvbGxhcHNlX2xpbmsge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogLTNyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mbGV4LWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlYzVmXCI7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC50dy1mb3JtYXRUb3BpY3NfX3RvcGljX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+ICoge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gLmF2YWlsYWJpbGl0eWluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5mb3JtYXQtc2luZ2xlYWN0aXZpdHkge1xuICAgIC5jb3Vyc2UtaW1nLWhlYWRlci13cmFwcGVyIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIC5idG4uYnRuLXNlY29uZGFyeXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYXJ0aWFscy90eXBvLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKlxuICogVGl0bGVcbiAqL1xuXG5AbWl4aW4gbGFuZGluZy1tYWluLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgbGluZS1oZWlnaHQ6IDQuOHJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgbWFyZ2luOiAycmVtIDAgMXJlbTtcbn1cblxuQG1peGluIGxhbmRpbmctc3ViLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogM3JlbTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICBtYXJnaW46IDFyZW0gMCAzcmVtO1xufVxuXG5AbWl4aW4gYWJvdXR1cy10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbn1cblxuQG1peGluIGNvdXJzZS1tYWluLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgbGluZS1oZWlnaHQ6IDNyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG5AbWl4aW4gY291cnNlLWJsb2NrLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xufVxuXG5AbWl4aW4gdGl0bGUtdW5kZXJsaW5lIHtcbiAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4zM3JlbTtcbiAgICB9XG59XG5cbi8qKlxuICogVGV4dFxuICovXG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2V1bGFyQ291cnNlRm9ybWF0LnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS1jb3Vyc2Utdmlldy1ldWxhciB7XG4gICAgI3NlY3Rpb24tMSB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnNlY3Rpb24uaW1nLXRleHQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb24ge1xuICAgICAgICAuYWN0aXZpdHkge1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYubW9kdHlwZV9sYWJlbCB7XG4gICAgICAgICAgICAgICAgcDpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHA6ZW1wdHkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWluZXItbGVmdCxcbiAgICAgICAgLmNvbnRhaW5lci1yaWdodCB7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY291cnNlLWNvbnRlbnQgdWwuZXVsYXIgLmJsdWVzZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGdyYXk7XG4gICAgICAgIHBhZGRpbmc6IDI1cHggMTVweCA1cHg7XG5cbiAgICAgICAgLm1vZHR5cGVfbGFiZWwgcCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1lc29yLWVkdWNhdGlvbik7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VjdGlvbm5hbWUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIH1cblxuICAgICAgICAudG9nZ2xlX2ltYWdlIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gICAgICAgICAgICB0b3A6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYWN0aXZpdHkgLmFjdGlvbnMge1xuICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1bW1hcnkgaDUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgbWFyZ2luOiAxLjVyZW0gMCAwIDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2Rhc2hib2FyZC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5wYXRoLXRvdGFyYS1kYXNoYm9hcmQge1xuICAgIC50b3RhcmFOYXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC51c2VyLWhlcm8taGVhZGVyIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG5cbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDE1MHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLWxnKSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMjUwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2Vucm9sLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS1lbnJvbC1pbmRleCB7XG5cbiAgICAuYmxvY2sge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgICAgICAgICY6OmFmdGVye1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjYmxvY2stcmVnaW9uLXNpZGUtcHJlIHtcbiAgICAgICAgLmJsb2NrIHtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDRweCAwIDE1cHggMCByZ2JhKDAsIDAsIDAsIDUlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgIGRpdltyb2xlPW1haW5dIHtcbiAgICAgICAgICAgID4gaDIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgyLmhlYWRpbmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudHVpLWNvcmVfY291cnNlLWNvdXJzZUluZm8ge1xuICAgICAgICAgICAgICAgIC50dWktY29yZV9jb3Vyc2UtY291cnNlSW5mb19faW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50dWktY29yZV9jb3Vyc2UtY291cnNlSW5mb19fc3VtbWFyeUZpbGVzIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5nZW5lcmFsdGFibGUge1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICAgICAgICAgICAgICBidXR0b24uYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5nZW5lcmFsYm94IHtcbiAgICAgICAgICAgICYuaW5mbyB7XG4gICAgICAgICAgICAgICAgLnBhbmVsLnBhbmVsLWRlZmF1bHQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICAgICAgLnBhbmVsLWhlYWRpbmcuaW5mbyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5zdW1tYXJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICN0b2dnbGUtc3VtbWFyeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIC5mbGV4LWljb24ge1xuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgLmJ0bi1sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZW5yb2wtcmVnaXN0cmF0aW9uLWJsb2NrIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubW9kYWwtY29udGFpbmVyLnNhZmVycGF5IHtcbiAgICAgICAgLmJlbmVmaXQtd3JhcHBlciB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNXZoO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAuYmVuZWZpdC1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbSAwLjZyZW07XG5cbiAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgIC5iZW4taW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi1nYXA6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5iZW4tdmFsdWUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZvbnQtYm9keS1zaXplKSoxLjIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuYmVuLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBjYWxjKHZhcigtLWZvbnQtYm9keS1zaXplKSowLjkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhhcyhpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmxjLWltYWdlcy1lbnJvbCB7XG4gICAgICAgICNwYWdlIHtcbiAgICAgICAgICAgIC5lbnJvbC1pbWFnZXMuZm9ybS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1lbnJvbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIFxuICAgIC8qIFJlcG9zaXRpb24gc2VsZi1lbnJvbGxtZW50IGZvcm0gbWVzc2FnZSBhYm92ZSBvdXIgY3VzdG9tIGJ1dHRvbnMgKi9cbiAgICAuZmNvbnRhaW5lci5jbGVhcmZpeCB7XG4gICAgICAgIC5maXRlbS5mZW1wdHlsYWJlbCB7XG4gICAgICAgICAgICAuZmVsZW1lbnQuZnN0YXRpYyB7XG4gICAgICAgICAgICAgICAgLyogSGlkZSB0aGUgbG9naW4gYnV0dG9uIGJ1dCBrZWVwIHRoZSB0ZXh0ICovXG4gICAgICAgICAgICAgICAgYS5idG4ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgIC8qIEhpZGUgY29udGludWUgYnV0dG9uIGZyb20gbWFudWFsIGVucm9sbG1lbnQgKi9cbiAgICAuY29udGludWVidXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC8qIEhpZGUgU2FmZXJwYXkgbG9naW4gYnV0dG9uICovXG4gICAgLmJveC5nZW5lcmFsYm94LnNhZmVycGF5IHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgIGEuYnRuW2hyZWYqPVwibG9naW5cIl0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAvKiBIaWRlIGRlZmF1bHQgXCJTaWduIGluXCIgYnV0dG9uIGZvciBndWVzdHMgd2hlbiBjdXN0b20gcmVnaXN0cmF0aW9uIGJsb2NrIGV4aXN0cyBvbiB0aGUgcGFnZSAqL1xuICAgIC8qIE9ubHkgaGlkZXMgdGhlIGRpcmVjdCBjaGlsZCBsb2dpbiBidXR0b24sIG5vdCB0aGUgb25lIGluc2lkZSAuZW5yb2wtcmVnaXN0cmF0aW9uLWJsb2NrICovXG4gICAgI3JlZ2lvbi1tYWluOmhhcyguZW5yb2wtcmVnaXN0cmF0aW9uLWJsb2NrKSB7XG4gICAgICAgIGRpdltyb2xlPVwibWFpblwiXSA+IGEuYnRuLmJ0bi1kZWZhdWx0W2hyZWYqPVwibG9naW5cIl06bm90KC5lbnJvbC1yZWdpc3RyYXRpb24tYmxvY2sgYSkge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogbXlFVUxBUiBCYWRnZSBTdHlsZXMgKi9cbiAgICAuY291cnNlLWltZy1oZWFkZXIgLmlubmVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICBcbiAgICAuY291cnNlLWhlYWRlci1hY3Rpb25zLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBnYXA6IDIwcHg7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIH1cbiAgICBcbiAgICAuY291cnNlLWhlYWRlci1hY3Rpb25zIHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB9XG4gICAgXG4gICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucyA+ICoge1xuICAgICAgICBtYXgtd2lkdGg6IC13ZWJraXQtZml0LWNvbnRlbnQ7XG4gICAgICAgIG1heC13aWR0aDogLW1vei1maXQtY29udGVudDtcbiAgICAgICAgbWF4LXdpZHRoOiBmaXQtY29udGVudDtcbiAgICB9XG4gICAgXG4gICAgLm15ZXVsYXItYmFkZ2Utd3JhcHBlciB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBcbiAgICAubXlldWxhci1iYWRnZS1saW5rIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICB9XG4gICAgXG4gICAgLm15ZXVsYXItYmFkZ2UtbGluazpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDAuOTtcbiAgICB9XG4gICAgXG4gICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IDI4MHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICBcbiAgICAvKiBFbnN1cmUgZW5yb2xtZW50IGZvcm1zIGRpc3BsYXkgcHJvcGVybHkgYmVsb3cgKi9cbiAgICAuaW1hZ2VzLWhlYWRlci1hY3Rpb24gLmNvbGxhcHNlLFxuICAgIC5zcC1oZWFkZXItYWN0aW9uID4gZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gICAgXG4gICAgLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAtIG1vdmUgYmFkZ2UgYmVsb3cgYnV0dG9ucyB3aGVuIGl0IHN0YXJ0cyBnZXR0aW5nIGNyYW1wZWQgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgICAgIC5jb3Vyc2UtaGVhZGVyLWFjdGlvbnMtd3JhcHBlciB7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBnYXA6IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIC5teWV1bGFyLWJhZGdlLXdyYXBwZXIge1xuICAgICAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyODBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmNvdXJzZS1oZWFkZXItYWN0aW9ucyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBAbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgICAgICAgLm15ZXVsYXItYmFkZ2Uge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyNDBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3NpZ251cC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLWxvZ2luLXNpZ251cCB7XG4gICAgLmxjLXdyYXBwZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gcmlnaHQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSBhdXRvO1xuXG4gICAgICAgIC5hbGVydC13aXRoLWljb24ge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgI3JlZ2lvbi1tYWluIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgZmxvYXQ6IHVuc2V0O1xuICAgICAgICAgICAgbGVmdDogdW5zZXQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwODhweDtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDYwdmg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNzUpO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLWdhcC04KTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdhcC04KTtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiB2YXIoLS1nYXAtMTIpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWdhcC0xMik7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0aXRsZS11bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPXRleHRdLFxuICAgICAgICAgICAgaW5wdXRbdHlwZT1wYXNzd29yZF0ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mZWxlbWVudC5mc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mZW1wdHlsYWJlbCB7XG4gICAgICAgICAgICAgICAgLmZpdGVtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuZnN0YXRpYyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbGxhcHNpYmxlLWFjdGlvbnMge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGZvcm0jbWZvcm0xIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgICAgICAgICAvKiByZXF1aXJlZCBmaWVsZHMqL1xuICAgICAgICAgICAgICAgIC5mZGVzY3JpcHRpb24ucmVxdWlyZWQge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBmaWVsZHNldC5jb2xsYXBzaWJsZSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVyZW07XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgXG4gICAgICAgICAgICAgICAgICAgIC5mdG9nZ2xlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLyogdGl0bGUqL1xuICAgICAgICAgICAgICAgICAgICAmI2lkX2NhdGVnb3J5XzEge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJiNpZF9jcmVhdGV1c2VyYW5kcGFzcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmI2lkX3N1cHBseWluZm8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZpdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgJi5sYy1jcmVhdGUtbm90aWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9yZGVyOiA3O1xuICAgICAgICAgICAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG5cblxuICAgICAgICAgICAgICAgICAgICAmI2ZpdGVtX2lkX2NpdHkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuZml0ZW1fcGFzc3dvcmR1bm1hc2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnRvdGFyYV9wYXNzd29yZHVubWFzayB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLndyYXAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgIFxuICAgICAgICAgICAgICAgICNpZF9jYXRlZ29yeV8yIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDY7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgI2lkX2NhdGVnb3J5XzUge1xuICAgICAgICAgICAgICAgICAgICBvcmRlcjogNTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAjZmdyb3VwX2lkX2J1dHRvbmFyIHtcbiAgICAgICAgICAgICAgICAgICAgb3JkZXI6IDg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmZpdGVtX2FjdGlvbmJ1dHRvbnMge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2ZpdGVtX2lkX2VtYWlsMiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNwYWdlLWZvb3RlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2xhbmRpbmdwYWdlLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS1zaXRlLWluZGV4IHtcblxuICAgIC50b3RhcmFOYXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5oZXJvLXNlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDkxcHgpO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOjk4OXB4KSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb24taW5uZXIge1xuICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCA4MCUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBwYWRkaW5nOiA1cmVtIDA7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1zbSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1JSAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGFuZGluZy1tYWluLXRpdGxlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGFuZGluZy1zdWItdGl0bGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDE4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2Etc2VjdGlvbiB7XG4gICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tZ2FwLTQpICogMikgMDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IGNhbGModmFyKC0tZ2FwLTQpICogNCkgMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgcGFkZGluZzogY2FsYyh2YXIoLS1nYXAtNCkgKiA2KSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVyYS1zZWN0aW9uIHtcbiAgICAgICAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMCAzcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDNyZW0gMCA0cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgXG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogTENfTEFORElOR19DT1VSU0VTXG4gKi9cblxuI3BhZ2Utc2l0ZS1pbmRleCB7XG4gICAgLmxhdGVzdC1jb3Vyc2VzLXNlY3Rpb24ge1xuICAgICAgICBtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdhcC00KSAqIDIpO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1nYXAtNCkgKiA0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1sZykge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogY2FsYyh2YXIoLS1nYXAtNCkgKiA2KTtcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmJsb2NrX2xjX2xhdGVzdF9jb3Vyc2VzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG5cbiAgICAgICAgICAgIC5ibG9jay1oZWFkZXIge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgXG4gICAgICAgICAgICAgICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICBcbiAgICAgICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgICAgICAgIC5zbGljay1hcnJvdyB7XG4gICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICYuc2xpY2stZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5ibG9ja19sY19sYXRlc3RfY291cnNlcy1yb3ctaXRlbSB7XG4gICAgICAgICAgICAgICAgICAgIGJ1dHRvblt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pbWFnZS1ibG9jayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuaW5mby1ibG9jayB7XG4gICAgICAgICAgICAgICAgICAgICAgICBoNCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogU2hhcmVkIHN0eWxpbmdcbiAqL1xuXG4jcGFnZS1zaXRlLWluZGV4IHtcbiAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDE4cHhcbiAgICB9XG5cbiAgICAubGF0ZXN0LWNvdXJzZXMtc2VjdGlvbiBoMixcbiAgICAuZXJhLXNlY3Rpb24gaDMsXG4gICAgLmVyYS1zZWN0aW9uIGg0IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgQGluY2x1ZGUgdGl0bGUtdW5kZXJsaW5lO1xuICAgIH1cblxuICAgIC5sYXRlc3QtY291cnNlcy1zZWN0aW9uIGgyLFxuICAgIC5lcmEtc2VjdGlvbiBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL2xvZ2luLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jcGFnZS1sb2dpbi1pbmRleCB7XG4gICAgLnR1aS1jb3JlX2F1dGgtbG9naW4ge1xuICAgICAgICAudHVpLWNvcmVfYXV0aC1sb2dpbl9fdGl0bGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgdGl0bGUtdW5kZXJsaW5lO1xuICAgICAgICB9XG5cbiAgICAgICAgLnR1aS1jb3JlX2F1dGgtbG9naW5fX2Vycm9yIHtcbiAgICAgICAgICAgICZJbm5lciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaW5nbGVidXR0b24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAuYnRuLXByaW1hcnkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudHVpLWZvcm1Sb3cge1xuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgYVtocmVmJD1cImxvZ2luL3NpZ251cC5waHBcIl0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWhlYWRpbmctbGV2ZWwtMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAxLjI1cmVtIDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9wcm9ncmFtLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5wYXRoLXRvdGFyYS1wcm9ncmFtIHtcbiAgICAudG90YXJhTmF2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuYnJlYWRjcnVtYi1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5wcm9ncmFtLWltZy1oZWFkZXItd3JhcHBlciB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG5cbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjdmlldy1wcm9ncmFtLWNvbnRlbnQge1xuICAgICAgICA+IGgyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubm90aWZ5bWVzc2FnZSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2dyYW1wcm9ncmVzcyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAgICAgLml0ZW0ge1xuXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByb2dyZXNzYmFyX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXZbcm9sZT1wcm9ncmVzc2Jhcl0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzc2Jhcl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGlzcGxheS1wcm9ncmFtIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDRyZW07XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMyB7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmdlbmVyYWx0YWJsZSB7XG4gICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCAjNzA3MDcwO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNiYmI7XG4gICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmNvdXJzZW5hbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5jb3Vyc2VfaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLnN0YXR1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnByb2dyZXNzYmFyX2NvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxNnB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmxhc3Ryb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmNlbGwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dHNldG9wZXJhdG9yIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3BsYW4tcmVjb3JkLWNvdXJzZXMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtdG90YXJhLXBsYW4tcmVjb3JkLWNvdXJzZXMge1xuXG4gICAgLmJsb2NrX3RvdGFyYV9yZXBvcnRfdGFibGUge1xuICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSkhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3JlZ2lvbi1tYWluIHtcbiAgICAgICAgI2RwLXBsYW4tY29udGVudCB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGFuZGluZy1zdWItdGl0bGU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGl0bGUtdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogaGlkZSBzb21lIGVsZW1lbnRzIGZvciBub24gc2l0ZSBhZG1pbnMqL1xuICAgICYubm8tc2Ege1xuICAgICAgICAjcmVnaW9uLW1haW4ge1xuICAgICAgICAgICAgLnJiLXNob3doaWRlLFxuICAgICAgICAgICAgI3JiX2V4cG9ydF9mb3JtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvcXVpel9nZW5lcmljLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keSB7XG4gICAgJi5wYXRoLW1vZC1xdWl6IHtcbiAgICAgICAgLnRvdGFyYU5hdiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvdXJzZS1pbWctaGVhZGVyLXdyYXBwZXIucXVpei1oZWFkZXIge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBcbiAgICAgICAgICAgICAgICAmLmJhY2sycXVpeiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nYXAtOCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvcXVpel9xdWVzdGlvbi5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5IHtcbiAgICAmLnBhdGgtbW9kLXF1aXoge1xuICAgICAgICAucXVlIHtcbiAgICAgICAgICAgIC5pbmZvLXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgICAgICAgICAgICAgIC5xdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIC5pbWctcmVzcG9uc2l2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5hbnN3ZXIge1xuICAgICAgICAgICAgICAgICAgICA+ZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogOHB4IDAgOHB4IDM2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDhweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc2JTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA3NiU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLm91dGNvbWUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IHZhcigtLWJvcmRlci13aWR0aC10aGluKTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAgICAgICAgICAgICAuZmVlZGJhY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmluY29ycmVjdCxcbiAgICAgICAgICAgICYubm90YW5zd2VyZWQge1xuICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgLm91dGNvbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWVzb3ItcmVkKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZXNvci1yZWQpO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAuZmVlZGJhY2sge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZXNvci1yZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLnBhcnRpYWxseWNvcnJlY3QsXG4gICAgICAgICAgICAmLmNvcnJlY3Qge1xuICAgICAgICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgLm91dGNvbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWVzb3ItZ3JlZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lc29yLWdyZWVuKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmZlZWRiYWNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWVzb3ItZ3JlZW4pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3F1aXpfbmF2YmxvY2suc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keSB7XG4gICAgJi5wYXRoLW1vZC1xdWl6IHtcbiAgICAgICAgI21vZF9xdWl6X25hdmJsb2NrIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgLmJsb2NrLXRpdGxlOjphZnRlciB7XG4gICAgICAgICAgICAgICAgLyogZGlzcGxheTogbm9uZTsqL1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucW5fYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgLnFuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1Y2g7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNWNoO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNWNoO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkIDFweCB2YXIoLS1jb2xvci1wcmltYXJ5KTtcblxuICAgICAgICAgICAgICAgICAgICAmLnRoaXNwYWdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50aGlzcGFnZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFuc3dlcnNhdmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjY2RkZjE7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLm5vdGFuc3dlcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC50cmFmZmljbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcHJvbXB0LWFsZXJ0KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJiNwYWdlLW1vZC1xdWl6LXJldmlldyB7XG4gICAgICAgICNtb2RfcXVpel9uYXZibG9jayB7XG4gICAgICAgICAgICAucW5fYnV0dG9ucyB7XG4gICAgICAgICAgICAgICAgLnFuYnV0dG9uIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgICAgICAgICAgICAgICAgIC50cmFmZmljbGlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jb3JyZWN0LFxuICAgICAgICAgICAgICAgICAgICAmLnBhcnRpYWxseWNvcnJlY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1lc29yLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLWdyZWVuKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuaW5jb3JyZWN0LFxuICAgICAgICAgICAgICAgICAgICAmLm5vdGFuc3dlcmVkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZXNvci1yZWQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHZhcigtLWVzb3ItcmVkKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9wYWdlcy9zaXRlcG9saWN5LnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLWFkbWluLXRvb2wtc2l0ZXBvbGljeS11c2VycG9saWN5LFxuI3BhZ2UtYWRtaW4tdG9vbC1zaXRlcG9saWN5LXVzZXJleGl0IHtcblxuICAgICYubGMtbm8tZm9vdGVyIHtcbiAgICAgICAgZm9vdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmVcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50b3RhcmFOYXYsXG4gICAgLmJyZWFkY3J1bWItY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAjcmVnaW9uLW1haW4ge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICAgICAgI3RmX2ZpZF90b29sX3NpdGVwb2xpY3lfZm9ybV91c2VyY29uc2VudGZvcm0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAudXNlcl9wb2xpY3lfd3JhcHBlciB7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5sYy1sb2FkaW5nIHtcbiAgICAgICAgLnVzZXJfcG9saWN5X3dyYXBwZXIge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudXNlcl9wb2xpY3lfd3JhcHBlciB7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcblxuICAgICAgICAudXNlcl9wb2xpY3kge1xuICAgICAgICAgICAgcGFkZGluZzogNnJlbSAycmVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICByb3ctZ2FwOiAycmVtO1xuXG4gICAgICAgICAgICAudXNlcl9wb2xpY3lfdGV4dCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudXNlcl9wb2xpY3lfYnRucyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBidXR0b24sXG4gICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBTdHlsaW5nIHdoZW4gZW1iZWRkZWQgb24gb3RoZXIgcGFnZXMqL1xuXG4jb3ZlcmxheV90ZXJtcyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBvcGFjaXR5OiAwLjc1O1xuICAgIHotaW5kZXg6IGNhbGModmFyKC0temluZGV4LW5hdmJhcikgKyA1KTtcbn1cblxuLnVzZXJwb2xpY3kge1xuICAgIGlmcmFtZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuaWZyYW1lLXdyYXBwZXIge1xuICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHotaW5kZXg6IGNhbGModmFyKC0temluZGV4LW5hdmJhcikgKyAxMCk7XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvc2Nvcm0tcGxheWVyLnNjc3MgKioqIVxuICBcXCoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3BhZ2UtbW9kLXNjb3JtLXBsYXllciB7XG4gICAgI3JlZ2lvbi1tYWluIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAucGFnZS13cmFwcGVyIHtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcGFnZS1jb250ZW50IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgICAgICAmLmNvbC1tZC1wdXNoLTMge1xuICAgICAgICAgICAgICAgIGxlZnQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI2Jsb2NrLXJlZ2lvbi1zaWRlLXByZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJyZWFkY3J1bWItY29udGFpbmVyLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5leGl0X2FjdGl2aXR5IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIHdpZHRoOiA3MHB4O1xuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL3VzZXItZWRpdC5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNwYWdlLXVzZXItZWRpdCB7XG4gICAgJi5uby1zYSB7XG4gICAgICAgICNyZWdpb24tbWFpbiB7XG4gICAgICAgICAgICAjZml0ZW1faWRfbWFpbGRpc3BsYXksXG4gICAgICAgICAgICAjZml0ZW1faWRfZm9yY2VkdGltZXpvbmUsXG4gICAgICAgICAgICAjZml0ZW1faWRfdGhlbWUsXG4gICAgICAgICAgICAjZml0ZW1faWRfZGVzY3JpcHRpb25fZWRpdG9yLFxuICAgICAgICAgICAgI2ZpdGVtX2lkX2ltYWdlYWx0LFxuICAgICAgICAgICAgI2lkX21vb2RsZV9hZGRpdGlvbmFsX25hbWVzLFxuICAgICAgICAgICAgI2lkX21vb2RsZV9pbnRlcmVzdHMsXG4gICAgICAgICAgICAjaWRfbW9vZGxlX29wdGlvbmFsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4jcGFnZS11c2VyLWVkaXQsXG4jcGFnZS11c2VyLWVkaXRhZHZhbmNlZCB7XG4gICAgLmVzb3ItdGVtcC1yZXF1aXJlZCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1lc29yLXJlZCk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWVzb3ItcmVkKTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL3BhZ2VzL25vdGlmaWNhdGlvbnMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuYm9keS5wYXRoLW1lc3NhZ2Uge1xuICAgIC5ub3RpZmljYXRpb25zLWhlYWRlciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgIFxuICAgICAgICBpbWcuaWNvbntcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ub3RpZmljYXRpb25zLWZvb3RlciB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgIFxuICAgICAgICBpbWcuaWNvbntcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNvY2lhbC1pY29ucyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgZ2FwOiAxMHB4O1xuXG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGltZy5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvcGFnZXMvcGF0aHdheS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5ib2R5IHtcbiAgICAmLmZvcm1hdC1wYXRod2F5IHtcbiAgICAgICAgLnR1aS1zaWRlUGFuZWwge1xuICAgICAgICAgICAgLnR1aS1mb3JtYXRfcGF0aHdheS1jb3Vyc2VJbmZvcm1hdGlvbiB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50dWktcGFnZUJhY2tMaW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiohKlxcXG4gICEqKiogY3NzIC4vY2xpZW50L3Rvb2xpbmcvd2VicGFjay9jc3NfcmF3X2xvYWRlci5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzJdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9nbG9iYWxfc3R5bGVzL2Jsb2Nrcy9fZ2VuZXJpYy5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5ibG9jayB7XG4gICAgLmJsb2NrLWhlYWRlciB7XG4gICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgbGFuZGluZy1zdWItdGl0bGU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdGl0bGUtdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jay1jb250ZW50IHt9XG59XG5cbiNyZWdpb24tdG9wIHt9XG5cbiNibG9jay1yZWdpb24tc2lkZS1wb3N0LFxuI2Jsb2NrLXJlZ2lvbi1zaWRlLXByZSxcbiNyZWdpb24tbWFpbiB7XG4gICAgLmJsb2NrIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDhyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge31cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4iLCIvKiEqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9ibG9ja3MvbGFuZGluZ19wcm9maWxlcy5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmJsb2NrX2xhbmRpbmdfcGljIHtcbiAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgIHVsLnVubGlzdCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgICAgICAgJi5sYy1hZGQtZWRpdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYubGMtZXVsYXItc2Nob29sLWFkbWluaXN0cmF0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmxhbmRpbmdfcGljLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAubGlua19pdGVtcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcm93LWdhcDogMi41cmVtO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW1zX3Blcl9yb3cge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tc20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJHR1aS1zY3JlZW4tbGcpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFuZGluZ19waWMtaW1hZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCA1cHggdmFyKC0tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFuZGluZ19waWMtbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGFuZGluZ19waWMtZW1haWwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvYmxvY2tzL2xhbmRpbmdfYXdhcmQuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5ibG9ja19sYW5kaW5nX2F3YXJkIHtcbiAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgIC5pdGVtc19wZXJfcm93IHtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkdHVpLXNjcmVlbi1tZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMCAxMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSBcbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3VzZXJfc3RhdHMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5ibG9ja191c2VyX3N0YXRzIHtcblxuICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAud3JhcHBlciB7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAwLjVyZW07XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAudXNlci1wcm9maWxlIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnN0YXRzIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDcwJTtcblxuICAgICAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjZyZW07XG5cbiAgICAgICAgICAgICAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwLjZyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMi41cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmNvbXBsZXRpb25zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5pY29uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoW1twaXg6dGhlbWVfZXNvcnxpY29ucy9pb25faG91cmdsYXNzLW91dGxpbmVdXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmJhZGdlcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFtbcGl4OnRoZW1lX2Vzb3J8aWNvbnMvaWNvbl9iYWRnZXNdXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLnRpbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChbW3BpeDp0aGVtZV9lc29yfGljb25zL3RpbWVdXSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/cnVsZVNldFsxXS5ydWxlc1swXS51c2VbMl0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2dsb2JhbF9zdHlsZXMvYmxvY2tzL3VzZXJfcHJvZmlsZS5zY3NzICoqKiFcbiAgXFwqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2tfdXNlcl9wcm9maWxlIHtcbiAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgIC53cmFwcGVyIHtcbiAgICAgICAgICAgIC5pbWFnZS13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgIC51c2VycGljdHVyZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgNHB4IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mdWxsbmFtZSB7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2ZpbGUtaW5mbyB7XG4gICAgICAgICAgICAgICAgLnByb2ZpbGUtZmllbGQge1xuICAgICAgICAgICAgICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnByb2ZpbGUtZmllbGQtdmFsdWUge31cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiIsIi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P3J1bGVTZXRbMV0ucnVsZXNbMF0udXNlWzFdIS4vbm9kZV9tb2R1bGVzL3Bvc3Rjc3MtbG9hZGVyL2Rpc3QvY2pzLmpzPz9ydWxlU2V0WzFdLnJ1bGVzWzBdLnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9ibG9ja3Mvc2hvd2Nhc2Uuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYmxvY2tfc2hvd2Nhc2Uge1xuICAgIC5pdGVtcyB7XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgIC5pdGVtLWlubmVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDMwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogdW5zZXQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuaXRlbS1ib2R5IHt9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhlcm8tc2VjdGlvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICR0dWktc2NyZWVuLW1kKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jaHJvbWVsZXNzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogLTI1dncgMCB2YXIoLS1jb2xvci1wcmltYXJ5KSwgMjV2dyAwIHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgICAgICAgICAuYmxvY2staGVhZGVyIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogM3JlbTtcblxuICAgICAgICAgICAgICAgIC5ibG9jay10aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJsb2NrLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG4gICAgICAgICAgICAgICAgLml0ZW1zIHtcbiAgICAgICAgICAgICAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzAwNGRhODtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgICAgICAgICAuY3RhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5zZWNvbmRhcnktc2VjdGlvbiB7XG4gICAgICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuXG4gICAgICAgICAgICAuaXRlbXMge1xuICAgICAgICAgICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgMnB4IHZhcigtLWNvbG9yLXByaW1hcnkpO1xuXG4gICAgICAgICAgICAgICAgICAgICYubm8tYm9keSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuaXRlbS1pbm5lciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLml0ZW0tdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5pdGVtLWlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wcmltYXJ5KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuIiwiLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9jbG9uZWRSdWxlU2V0LTUyOC51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P2Nsb25lZFJ1bGVTZXQtNTI4LnVzZVsyXSEuL2NsaWVudC9jb21wb25lbnQvdGhlbWVfZXNvci9zcmMvZ2xvYmFsX3N0eWxlcy9zdGF0aWMuc2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbkBpbXBvcnQgJ3RoZW1lX2Vzb3IvcGFydGlhbHMvaW5kZXgnO1xuQGltcG9ydCAndGhlbWVfZXNvci9wYWdlcy9pbmRleCc7XG5AaW1wb3J0ICd0aGVtZV9lc29yL2Jsb2Nrcy9pbmRleCc7XG5cbi8qISoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqISpcXFxuICAhKioqIGNzcyAuL2NsaWVudC90b29saW5nL3dlYnBhY2svY3NzX3Jhd19sb2FkZXIuanM/P2Nsb25lZFJ1bGVTZXQtNTI4LnVzZVsxXSEuL25vZGVfbW9kdWxlcy9wb3N0Y3NzLWxvYWRlci9kaXN0L2Nqcy5qcz8/Y2xvbmVkUnVsZVNldC01MjgudXNlWzJdIS4vbm9kZV9tb2R1bGVzL3Z1ZS1sb2FkZXIvZGlzdC9pbmRleC5qcz8/cnVsZVNldFswXS51c2VbMF0hLi9jbGllbnQvY29tcG9uZW50L3RoZW1lX2Vzb3Ivc3JjL2NvbXBvbmVudHMvbG9naW4vTG9naW5Gb3JtLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTZlYTZmMTk5Jmxhbmc9c2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4udHVpLWNvcmVfYXV0aC1sb2dpbkZvcm0ge1xuICAgICZfX29wdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBnYXA6IHZhcigtLWdhcC0yKTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgfVxuXG4gICAgJl9fc3VibWl0V3JhcCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uO1xuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbjtcbiAgICAgICAgZ2FwOiB2YXIoLS1nYXAtNik7XG4gICAgfVxuXG4gICAgJl9faGVscCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuXG4gICAgJl9faGVhZGluZyB7XG4gICAgICAgIEBpbmNsdWRlIHR1aS1mb250LWhlYWRpbmctc21hbGwtcmVndWxhcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2FwLTQpO1xuICAgIH1cblxuICAgICZfX3Rlcm1zQ29uZGl0aW9ucyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW46IDFyZW0gMCAycmVtO1xuICAgIH1cbn1cblxuLyohKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiEqXFxcbiAgISoqKiBjc3MgLi9jbGllbnQvdG9vbGluZy93ZWJwYWNrL2Nzc19yYXdfbG9hZGVyLmpzPz9jbG9uZWRSdWxlU2V0LTUyOC51c2VbMV0hLi9ub2RlX21vZHVsZXMvcG9zdGNzcy1sb2FkZXIvZGlzdC9janMuanM/P2Nsb25lZFJ1bGVTZXQtNTI4LnVzZVsyXSEuL25vZGVfbW9kdWxlcy92dWUtbG9hZGVyL2Rpc3QvaW5kZXguanM/P3J1bGVTZXRbMF0udXNlWzBdIS4vY2xpZW50L2NvbXBvbmVudC90aGVtZV9lc29yL3NyYy9wYWdlcy9vdmVycmlkZXMvY29yZV9hdXRoL0xvZ2luLnZ1ZT92dWUmdHlwZT1zdHlsZSZpbmRleD0wJmlkPTc3YWEwYWQ0Jmxhbmc9c2NzcyAqKiohXG4gIFxcKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiAgLnR1aS1jb3JlX2F1dGgtbG9naW4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1nYXAtNik7XG4gIFxuICAgICZfX3NlcGFyYXRvciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuICAgICAgYm9yZGVyLXdpZHRoOiAxcHggMCAwIDA7XG4gICAgfVxuICBcbiAgICAmX19lcnJvcklubmVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgQGluY2x1ZGUgdHVpLWZvbnQtYm9keS1zbWFsbCgpO1xuICAgICAgcGFkZGluZzogdmFyKC0tZ2FwLTMpO1xuICAgICAgY29sb3I6IHZhcigtLWNvbG9yLXByb21wdC1hbGVydCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wcm9tcHQtYWxlcnQtYmcpO1xuICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIH1cbiAgXG4gICAgJl9fdGl0bGUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4iXX0= */: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;
}
