/* 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*/
/* 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 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.*/
/* 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*/
/* 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 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*/
/* 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*/
/* 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*/
/* Avatar*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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 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 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 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*/
/* 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*/
/* 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.*/
/* 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*/
/* 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*/
/* 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*/
/**
 * For adding a fixed sized header image to a card, including optional margin on the outer edges.
 */
/* 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 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*/
/* 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*/
/* 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*/
/* 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*/
/* 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 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*/
/**/
/* Body text*/
/**/
/**/
/* Link text*/
/**/
/**/
/* Heading text*/
/**/
/**/
/* Text wrapping*/
/**/
/* break when the word starts on a new line and breaks where it would have*/
/* overflown, auto inserting hyphens. useful for user-generated content whose*/
/* containers are generally flexible. machine-insertion of hyphens may not be*/
/* an end user preference, but it can be more readable than without.*/
/* break all words at the end of lines, don't hyphenate. useful for predictable*/
/* parts of the UI whose containers are less flexible.*/
/* 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*/
/* #dock is 12000, modal must be above that*/
/* 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 editor_weka*/
/* 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.*/
/* 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.*/
.tui-commentAction {
  display: flex;
  justify-content: flex-start; }
  .tui-commentAction__replyBox {
    display: flex; }
    .tui-commentAction__replyBox-text--small {
      font-weight: normal;
      font-size: var(--font-body-small-size);
      line-height: var(--font-body-small-line-height); }
  .tui-commentAction__likeButton + .tui-commentAction__replyBox {
    margin-left: var(--gap-4); }

.tui-commentActionLink__link--small {
  color: var(--color-state);
  font-size: var(--font-size-13);
  line-height: 1.33;
  cursor: pointer; }
  .tui-commentActionLink__link--small:hover, .tui-commentActionLink__link--small:focus {
    color: var(--color-state-hover); }
  .tui-commentActionLink__link--small:active, .tui-commentActionLink__link--small:active:hover, .tui-commentActionLink__link--small:active:focus {
    color: var(--color-state-active); }
.tui-commentActionLink__link--disabled {
  color: var(--color-neutral-5);
  cursor: not-allowed; }
  .tui-commentActionLink__link--disabled:hover, .tui-commentActionLink__link--disabled:focus {
    color: var(--color-neutral-5);
    text-decoration: none; }

.tui-commentBox {
  height: 100%;
  /* The parent that using this box should be able to override its padding.*/
  padding: 0; }
  .tui-commentBox--withBorder {
    background-color: var(--color-neutral-3);
    border: var(--border-width-thin) solid var(--color-neutral-5); }
    .tui-commentBox--withBorder.tui-commentBox--noForm {
      /* When the form is not available for the comment box, it will leave us a trailing border. Therefore, this*/
      /* modifier is in place in order to prevent that traing border.*/
      border-bottom: none; }
  .tui-commentBox__comments {
    flex-grow: 1; }
  .tui-commentBox__commentForm {
    flex-grow: 0;
    flex-shrink: 0;
    margin-top: var(--gap-4); }
    .tui-commentBox__commentForm--withBorder {
      padding: var(--gap-4);
      padding-top: 0; }

.tui-commentThread__actionLink--withBorder {
  margin-top: var(--gap-4);
  margin-left: var(--gap-4); }
.tui-commentThread__comment--large {
  padding: 0 var(--gap-4);
  padding-bottom: var(--gap-4); }
.tui-commentThread__comment--withBorderBottom {
  border-bottom: var(--border-width-thin) solid var(--color-neutral-5); }
.tui-commentThread__loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--gap-4);
  color: var(--color-neutral-6); }

.tui-commentReplyBox {
  display: flex;
  flex-direction: column; }
  .tui-commentReplyBox__replyLinkBox {
    display: flex;
    margin-top: var(--gap-2);
    padding-top: var(--gap-2); }
    .tui-commentReplyBox__replyLinkBox--withSeparator {
      border-top: var(--border-width-thin) solid var(--color-neutral-4); }
    .tui-commentReplyBox__replyLinkBox--withoutSeparator {
      /* Hide the line, but keep the position as same.*/
      border-top: var(--border-width-thin) solid transparent; }
    .tui-commentReplyBox__replyLinkBox-link {
      color: var(--color-state);
      font-size: var(--font-size-13);
      line-height: 1.33;
      cursor: pointer; }
      .tui-commentReplyBox__replyLinkBox-link:hover, .tui-commentReplyBox__replyLinkBox-link:focus {
        color: var(--color-state-hover); }
      .tui-commentReplyBox__replyLinkBox-link:active, .tui-commentReplyBox__replyLinkBox-link:active:hover, .tui-commentReplyBox__replyLinkBox-link:active:focus {
        color: var(--color-state-active); }
      .tui-commentReplyBox__replyLinkBox-link--disabled {
        color: var(--color-neutral-5);
        cursor: not-allowed; }
        .tui-commentReplyBox__replyLinkBox-link--disabled:hover, .tui-commentReplyBox__replyLinkBox-link--disabled:focus {
          color: var(--color-neutral-5);
          text-decoration: none; }
  .tui-commentReplyBox__reply {
    padding-top: var(--gap-4);
    border-top: var(--border-width-thin) solid var(--color-neutral-5); }
    .tui-commentReplyBox__reply--large {
      /* Override the margin-top for the reply card.*/ }
      .tui-commentReplyBox__reply--large.tui-commentReply {
        margin-top: var(--gap-6); }
  .tui-commentReplyBox__replyForm {
    width: 100%; }

.tui-sidePanelCommentBox {
  display: flex;
  flex-direction: column;
  height: 100%;
  /* Overriding the comment box to make it fit with the sidepanel.*/ }
  .tui-sidePanelCommentBox__header {
    margin: 0;
    margin-bottom: var(--gap-4);
    padding: 0;
    padding-bottom: var(--gap-2);
    font-size: var(--font-size-14);
    border-bottom: var(--border-width-normal) solid var(--color-neutral-5); }
  .tui-sidePanelCommentBox__box {
    display: flex;
    flex-direction: column;
    overflow: hidden; }
    .tui-sidePanelCommentBox__box .tui-commentBox {
      display: flex;
      flex-direction: column;
      flex-grow: 1;
      /* Overriding the comment thread to make it fit with the sidepanel*/ }
      .tui-sidePanelCommentBox__box .tui-commentBox__comments {
        position: relative;
        padding-right: var(--gap-2);
        overflow: auto;
        /* This is not support by IE or Edge.*/
        scroll-behavior: smooth; }
        .tui-sidePanelCommentBox__box .tui-commentBox__comments .tui-commentThread__comment:not(:first-child) {
          padding-top: var(--gap-4);
          border-top: var(--border-width-thin) solid var(--color-neutral-5); }
      .tui-sidePanelCommentBox__box .tui-commentBox__commentForm {
        padding-top: var(--gap-4);
        border-top: var(--border-width-normal) solid var(--color-neutral-5); }

.tui-commentCard {
  display: flex;
  flex-direction: column; }
  .tui-commentCard__comment {
    display: flex;
    align-items: flex-start; }
  .tui-commentCard__profilePicture {
    margin-right: var(--gap-2); }
  .tui-commentCard__body {
    flex: 1 1 auto; }
  .tui-commentCard__header {
    margin-bottom: var(--gap-2); }
  .tui-commentCard__content {
    margin-bottom: var(--gap-2);
    padding-right: var(--gap-2);
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    hyphens: auto; }
    .ie .tui-commentCard__content {
      -ms-hyphens: auto; }

.tui-commentReplyHeader {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between; }
  .tui-commentReplyHeader__content {
    flex-basis: 94%; }
    .tui-commentReplyHeader__content--inline {
      display: flex;
      align-items: flex-end; }
  .tui-commentReplyHeader__link {
    margin-bottom: var(--gap-2); }
    .tui-commentReplyHeader__link--inline {
      margin: 0; }
  .tui-commentReplyHeader__timeDescription {
    margin: 0;
    font-weight: normal;
    font-size: var(--font-body-x-small-size);
    line-height: var(--font-body-x-small-line-height); }
    .tui-commentReplyHeader__timeDescription--inline {
      margin-left: var(--gap-4); }
    .tui-commentReplyHeader__timeDescription span:not(:first-child) {
      margin-left: var(--gap-4); }

.tui-commentReplyCard {
  display: flex;
  align-items: flex-start; }
  .tui-commentReplyCard__profilePicture {
    margin-right: var(--gap-2); }
  .tui-commentReplyCard__body {
    flex: 1 1 auto; }
  .tui-commentReplyCard__header {
    margin-bottom: var(--gap-2); }
  .tui-commentReplyCard__content {
    margin-bottom: var(--gap-2);
    padding-right: var(--gap-2);
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    hyphens: auto; }
    .ie .tui-commentReplyCard__content {
      -ms-hyphens: auto; }

.tui-comment {
  margin-top: var(--gap-4); }
  .tui-comment__replyBox {
    padding-left: var(--gap-8); }

.tui-commentReplyContent {
  margin: 0; }
  .tui-commentReplyContent__content {
    max-width: 100%; }
    .tui-commentReplyContent__content .tui-rendered p {
      color: var(--color-text);
      font-weight: normal;
      font-size: var(--font-body-size);
      line-height: var(--font-body-line-height);
      /* Reset margin of paragraph in tui-rendered content.*/
      margin: 0; }
    .tui-commentReplyContent__content--deleted {
      /* Deleted comment should not have any .tui-rendered element*/
      font-weight: normal;
      font-size: var(--font-body-small-size);
      line-height: var(--font-body-small-line-height);
      font-style: italic; }
    .tui-commentReplyContent__content--reply {
      font-weight: normal;
      font-size: var(--font-body-small-size);
      line-height: var(--font-body-small-line-height); }
      .tui-commentReplyContent__content--reply .tui-rendered p {
        font-weight: normal;
        font-size: var(--font-body-small-size);
        line-height: var(--font-body-small-line-height); }

.tui-commentForm__form {
  flex: 1;
  max-width: 100%; }
.tui-commentForm__editor {
  flex: 1;
  max-width: 100%; }
  .tui-commentForm__editor .tui-weka__editorHost {
    max-height: 200px; }
.tui-commentForm__buttonGroup {
  display: flex;
  justify-content: flex-end;
  margin-top: var(--gap-4); }

.tui-editCommentReplyForm {
  display: flex;
  flex-direction: column;
  max-width: 100%; }
  .tui-editCommentReplyForm__editor {
    max-width: 100%; }

.tui-commentReplyForm {
  margin-top: var(--gap-4);
  padding-right: var(--gap-2); }
  .tui-commentReplyForm__form {
    flex: 1;
    max-width: 100%; }
  .tui-commentReplyForm__editor {
    flex: 1;
    max-width: 100%; }

.tui-commentResponseBox {
  display: flex;
  align-content: flex-start; }
  .tui-commentResponseBox__profilePicture {
    margin-right: var(--gap-2); }
  .tui-commentResponseBox__formBox {
    flex: 1 1 auto;
    width: 100%;
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    hyphens: auto; }
    .ie .tui-commentResponseBox__formBox {
      -ms-hyphens: auto; }

.tui-commentSubmitCancelButtonGroup {
  display: flex;
  justify-content: flex-end;
  margin-top: var(--gap-4); }

.tui-confirmDeleteCommentReplyModal__buttons {
  display: flex;
  justify-content: flex-end; }
.tui-confirmDeleteCommentReplyModal__textBox {
  display: flex;
  align-items: center;
  justify-content: flex-start; }
  .tui-confirmDeleteCommentReplyModal__textBox-text {
    color: var(--color-text);
    font-weight: normal;
    font-size: var(--font-body-size);
    line-height: var(--font-body-line-height);
    margin: 0;
    margin-left: var(--gap-4); }
.tui-confirmDeleteCommentReplyModal__content .tui-modalContent__title {
  padding: 0; }

.tui-commentUserLink--smallLink {
  color: var(--color-state);
  font-size: var(--font-size-13);
  line-height: 1.33;
  cursor: pointer;
  font-weight: bold; }
  .tui-commentUserLink--smallLink:hover, .tui-commentUserLink--smallLink:focus {
    color: var(--color-state-hover); }
  .tui-commentUserLink--smallLink:active, .tui-commentUserLink--smallLink:active:hover, .tui-commentUserLink--smallLink:active:focus {
    color: var(--color-state-active); }
.tui-commentUserLink--largeLink {
  color: var(--color-state);
  font-size: var(--font-body-size);
  line-height: var(--font-body-line-height);
  cursor: pointer;
  font-weight: bold; }
  .tui-commentUserLink--largeLink:hover, .tui-commentUserLink--largeLink:focus {
    color: var(--color-state-hover); }
  .tui-commentUserLink--largeLink:active, .tui-commentUserLink--largeLink:active:hover, .tui-commentUserLink--largeLink:active:focus {
    color: var(--color-state-active); }
.tui-commentUserLink--smallText {
  font-weight: normal;
  font-size: var(--font-body-small-size);
  line-height: var(--font-body-small-line-height);
  font-weight: bold; }
.tui-commentUserLink--largeText {
  color: var(--color-text);
  font-weight: normal;
  font-size: var(--font-body-size);
  line-height: var(--font-body-line-height);
  font-weight: bold; }

.tui-commentReply {
  margin-top: var(--gap-4); }
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImRhdGEvdG90YXJhXzIwMjQwMjA3L2h0dHBkb2NzL2NsaWVudC9jb21wb25lbnQvdG90YXJhX2NvbW1lbnQvYnVpbGQvdHVpX2J1bmRsZS5kZXZlbG9wbWVudC5zY3NzIiwiZGF0YS90b3RhcmFfMjAyNDAyMDcvaHR0cGRvY3MvY2xpZW50L2NvbXBvbmVudC90dWkvYnVpbGQvZ2xvYmFsX3N0eWxlcy92YXJpYWJsZXMvdHVpX3R5cG9ncmFwaHkuZGV2ZWxvcG1lbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OzswREFBQTtBQUFBO0FBQUE7OEJBQUEsRUFJRTtBQUFBO0FBQUEsa0JBQUEsRUFJSTtBQUFBO0FBQUE7O3NEQUFBLEVBTUo7QUFBQTtBQUFBLDhCQUFBLEVBT0U7QUFBQTtBQUFBO0FBQUE7OztrQkFBQSxFQzZIRjtBQUFBO0FBQUEsb0NBQUEsRUFLQTtBQUFBO0FBQUEscUNBQUEsRUQ5SEU7QUFBQTtBQUFBO3NCQUFBLEVBSUU7QUFBQTtBQUFBOzBCQUFBLEVBU047QUFBQTtBQUFBO0FBQUE7O2FBQUEsRUFNRTtBQUFBO0FBQUE7a0VBQUEsRUFJRTtBQUFBO0FBQUE7OzBCQUFBLEVBT0Y7QUFBQTtBQUFBLGlCQUFBLEVBSUE7QUFBQTtBQUFBOzs2QkFBQSxFQUtFO0FBQUE7QUFBQTtxQkFBQSxFQVNBO0FBQUE7QUFBQTtBQUFBOzRCQUFBLEVBT0E7QUFBQTtBQUFBOytCQUFBLEVBS0E7QUFBQTtBQUFBLHVFQUFBLEVBS0Y7QUFBQTtBQUFBOzs7O2dDQUFBLEVBU0Y7QUFBQTtBQUFBO0FBQUE7eUJBQUEsRUFJRTtBQUFBO0FBQUE7OzhCQUFBLEVBS0U7QUFBQTtBQUFBLHdFQUFBLEVBSUE7QUFBQTtBQUFBOzZEQUFBLEVBS0E7QUFBQTtBQUFBOzs7c0JBQUEsRUM2QkY7QUFBQTtBQUFBLHdDQUFBLEVBS0E7QUFBQTtBQUFBLHlDQUFBLEVEL0JJO0FBQUE7QUFBQTs0QkFBQSxFQUdFO0FBQUE7QUFBQTtnQ0FBQSxFQVNOO0FBQUE7QUFBQTtzRUFBQSxFQUlFO0FBQUE7QUFBQSxzREFBQSxFQUVFO0FBQUE7QUFBQSxpQ0FBQSxFQU1KO0FBQUE7QUFBQSxnQkFBQSxFQUtGO0FBQUE7QUFBQTtBQUFBOzs7b0VBQUEsRUFNRTtBQUFBO0FBQUE7Ozs7OzJFQUFBLEVBU0E7QUFBQTtBQUFBOztxQkFBQSxFQUtFO0FBQUE7QUFBQTs7OzBFQUFBLEVBTUU7QUFBQTtBQUFBOzs7O2dDQUFBLEVBVU07QUFBQTtBQUFBOzRFQUFBLEVBUU47QUFBQTtBQUFBOzRFQUFBLEVBUU47QUFBQTtBQUFBO0FBQUE7eUJBQUEsRUFJRTtBQUFBO0FBQUE7NEJBQUEsRUFLQTtBQUFBO0FBQUEsK0JBQUEsRUFJQTtBQUFBO0FBQUEsbUJBQUEsRUFJQTtBQUFBO0FBQUEsZ0NBQUEsRUFJQTtBQUFBO0FBQUE7Ozs7a0JBQUEsRUNJQTtBQUFBO0FBQUEsd0JBQUEsRURHRjtBQUFBO0FBQUE7QUFBQTs7O2lDQUFBLEVBTUU7QUFBQTtBQUFBLG9CQUFBLEVBR0U7QUFBQTtBQUFBOzRCQUFBLEVBTUY7QUFBQTtBQUFBLGdDQUFBLEVBR0U7QUFBQTtBQUFBLGdCQUFBLEVBS0Y7QUFBQTtBQUFBOzs7c0RBQUEsRUFJRTtBQUFBO0FBQUEsZ0NBQUEsRUFJQTtBQUFBO0FBQUEsZ0NBQUEsRUFNSjtBQUFBO0FBQUE7QUFBQTswQkFBQSxFQUlFO0FBQUE7QUFBQSwrQkFBQSxFQUlBO0FBQUE7QUFBQSxtQkFBQSxFQUlBO0FBQUE7QUFBQSxnQ0FBQSxFQUlBO0FBQUE7QUFBQTs7OztrQkFBQSxFQ3hEQTtBQUFBO0FBQUEsd0JBQUEsRUQrREY7QUFBQTtBQUFBO0FBQUEsMkJBQUEsRUFHRTtBQUFBO0FBQUEsK0JBQUEsRUFLRjtBQUFBO0FBQUE7QUFBQSxZQUFBLEVBR0U7QUFBQTtBQUFBLG9CQUFBLEVBSUk7QUFBQTtBQUFBOzs7OztnQkFBQSxFQU9GO0FBQUE7QUFBQTs7Ozt5QkFBQSxFQU1BO0FBQUE7QUFBQTs7c0RBQUEsRUFJSTtBQUFBO0FBQUE7O3dEQUFBLEVBU047QUFBQTtBQUFBO0FBQUE7a0JBQUEsRUFLQTtBQUFBO0FBQUE7a0JBQUEsRUFJRTtBQUFBO0FBQUEsc0JBQUEsRUFLRjtBQUFBO0FBQUE7OzJCQUFBLEVBT0Y7QUFBQTtBQUFBO0FBQUE7O2tCQUFBLEVBS0U7QUFBQTtBQUFBLG9CQUFBLEVBS0Y7QUFBQTtBQUFBO0FBQUE7OEJBQUEsRUFJRTtBQUFBO0FBQUE7b0JBQUEsRUFLQTtBQUFBO0FBQUE7b0JBQUEsRUFNRjtBQUFBO0FBQUE7QUFBQTs0QkFBQSxFQUlFO0FBQUE7QUFBQSwrQkFBQSxFQUlBO0FBQUE7QUFBQTs7OztrQkFBQSxFQzlKQTtBQUFBO0FBQUEsd0JBQUEsRURxS0Y7QUFBQTtBQUFBO0FBQUE7OzJCQUFBLEVBT0U7QUFBQTtBQUFBO0FBQUE7NEJBQUEsRUFLQTtBQUFBO0FBQUE7OzhCQUFBLEVBS0U7QUFBQTtBQUFBOzs7Ozs4QkFBQSxFQVNFO0FBQUE7QUFBQSxhQUFBLEVBUUo7QUFBQTtBQUFBO0FBQUE7Ozs7b0JBQUEsRUN2UkE7QUFBQTtBQUFBLG9DQUFBLEVBS0E7QUFBQTtBQUFBLHFDQUFBLEVEdVJBO0FBQUE7QUFBQTs7OztvQkFBQSxFQ2hVQTtBQUFBO0FBQUEsb0NBQUEsRUFLQTtBQUFBO0FBQUEscUNBQUEsRURnVUE7QUFBQTtBQUFBOzs7b0JBQUEsRUFLQTtBQUFBO0FBQUE7Ozs7b0JBQUEsRUFNRjtBQUFBO0FBQUE7QUFBQSwyQkFBQSxFQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLnR1aS1jb21tZW50QWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICZfX3JlcGx5Qm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgJi10ZXh0IHtcbiAgICAgICYtLXNtYWxsIHtcbiAgICAgICAgQGluY2x1ZGUgdHVpLWZvbnQtYm9keS1zbWFsbCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX2xpa2VCdXR0b24gKyAmX19yZXBseUJveCB7XG4gICAgbWFyZ2luLWxlZnQ6IHZhcigtLWdhcC00KTtcbiAgfVxufVxuXG4udHVpLWNvbW1lbnRBY3Rpb25MaW5rIHtcbiAgJl9fbGluayB7XG4gICAgJi0tc21hbGwge1xuICAgICAgQGluY2x1ZGUgdHVpLWZvbnQtbGluay1zbWFsbCgpO1xuICAgIH1cblxuICAgICYtLWRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udHVpLWNvbW1lbnRCb3gge1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgLyogVGhlIHBhcmVudCB0aGF0IHVzaW5nIHRoaXMgYm94IHNob3VsZCBiZSBhYmxlIHRvIG92ZXJyaWRlIGl0cyBwYWRkaW5nLiovXG4gIHBhZGRpbmc6IDA7XG5cbiAgJi0td2l0aEJvcmRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItbmV1dHJhbC0zKTtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC10aGluKSBzb2xpZCB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuXG4gICAgJi50dWktY29tbWVudEJveC0tbm9Gb3JtIHtcbiAgICAgIC8qIFdoZW4gdGhlIGZvcm0gaXMgbm90IGF2YWlsYWJsZSBmb3IgdGhlIGNvbW1lbnQgYm94LCBpdCB3aWxsIGxlYXZlIHVzIGEgdHJhaWxpbmcgYm9yZGVyLiBUaGVyZWZvcmUsIHRoaXMqL1xuICAgICAgLyogbW9kaWZpZXIgaXMgaW4gcGxhY2UgaW4gb3JkZXIgdG8gcHJldmVudCB0aGF0IHRyYWluZyBib3JkZXIuKi9cbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJl9fY29tbWVudHMge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gICZfX2NvbW1lbnRGb3JtIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tZ2FwLTQpO1xuXG4gICAgJi0td2l0aEJvcmRlciB7XG4gICAgICBwYWRkaW5nOiB2YXIoLS1nYXAtNCk7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLnR1aS1jb21tZW50VGhyZWFkIHtcbiAgJl9fYWN0aW9uTGluayB7XG4gICAgJi0td2l0aEJvcmRlciB7XG4gICAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtNCk7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ2FwLTQpO1xuICAgIH1cbiAgfVxuXG4gICZfX2NvbW1lbnQge1xuICAgICYtLWxhcmdlIHtcbiAgICAgIHBhZGRpbmc6IDAgdmFyKC0tZ2FwLTQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IHZhcigtLWdhcC00KTtcbiAgICB9XG5cbiAgICAmLS13aXRoQm9yZGVyQm90dG9tIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC10aGluKSBzb2xpZCB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuICAgIH1cbiAgfVxuXG4gICZfX2xvYWRpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1nYXAtNCk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNik7XG4gIH1cbn1cblxuLnR1aS1jb21tZW50UmVwbHlCb3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICZfX3JlcGx5TGlua0JveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtMik7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC0yKTtcblxuICAgICYtLXdpdGhTZXBhcmF0b3Ige1xuICAgICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pIHNvbGlkIHZhcigtLWNvbG9yLW5ldXRyYWwtNCk7XG4gICAgfVxuXG4gICAgJi0td2l0aG91dFNlcGFyYXRvciB7XG4gICAgICAvKiBIaWRlIHRoZSBsaW5lLCBidXQga2VlcCB0aGUgcG9zaXRpb24gYXMgc2FtZS4qL1xuICAgICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICYtbGluayB7XG4gICAgICBAaW5jbHVkZSB0dWktZm9udC1saW5rLXNtYWxsKCk7XG5cbiAgICAgICYtLWRpc2FibGVkIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3JlcGx5IHtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tZ2FwLTQpO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJvcmRlci13aWR0aC10aGluKSBzb2xpZCB2YXIoLS1jb2xvci1uZXV0cmFsLTUpO1xuXG4gICAgJi0tbGFyZ2Uge1xuICAgICAgLyogT3ZlcnJpZGUgdGhlIG1hcmdpbi10b3AgZm9yIHRoZSByZXBseSBjYXJkLiovXG4gICAgICAmLnR1aS1jb21tZW50UmVwbHkge1xuICAgICAgICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtNik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fcmVwbHlGb3JtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udHVpLXNpZGVQYW5lbENvbW1lbnRCb3gge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgLyogT3ZlcnJpZGluZyB0aGUgY29tbWVudCBib3ggdG8gbWFrZSBpdCBmaXQgd2l0aCB0aGUgc2lkZXBhbmVsLiovXG4gICZfX2hlYWRlciB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWdhcC00KTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1nYXAtMik7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtMTQpO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1ub3JtYWwpIHNvbGlkIHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gIH1cblxuICAmX19ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgLnR1aS1jb21tZW50Qm94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgZmxleC1ncm93OiAxO1xuXG4gICAgICAvKiBPdmVycmlkaW5nIHRoZSBjb21tZW50IHRocmVhZCB0byBtYWtlIGl0IGZpdCB3aXRoIHRoZSBzaWRlcGFuZWwqL1xuICAgICAgJl9fY29tbWVudHMge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLWdhcC0yKTtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgLyogVGhpcyBpcyBub3Qgc3VwcG9ydCBieSBJRSBvciBFZGdlLiovXG4gICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuXG4gICAgICAgIC50dWktY29tbWVudFRocmVhZCB7XG4gICAgICAgICAgJl9fY29tbWVudCB7XG4gICAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC00KTtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLXRoaW4pIHNvbGlkIHZhcigtLWNvbG9yLW5ldXRyYWwtNSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfX2NvbW1lbnRGb3JtIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHZhcigtLWdhcC00KTtcbiAgICAgICAgYm9yZGVyLXRvcDogdmFyKC0tYm9yZGVyLXdpZHRoLW5vcm1hbCkgc29saWQgdmFyKC0tY29sb3ItbmV1dHJhbC01KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnR1aS1jb21tZW50Q2FyZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgJl9fY29tbWVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgfVxuXG4gICZfX3Byb2ZpbGVQaWN0dXJlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IHZhcigtLWdhcC0yKTtcbiAgfVxuXG4gICZfX2JvZHkge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgJl9faGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nYXAtMik7XG4gIH1cblxuICAmX19jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1nYXAtMik7XG4gICAgcGFkZGluZy1yaWdodDogdmFyKC0tZ2FwLTIpO1xuICAgIEBpbmNsdWRlIHR1aS13b3JkYnJlYWstLWh5cGhlbnM7XG4gIH1cbn1cblxuLnR1aS1jb21tZW50UmVwbHlIZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgJl9fY29udGVudCB7XG4gICAgZmxleC1iYXNpczogOTQlO1xuXG4gICAgJi0taW5saW5lIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2FwLTIpO1xuXG4gICAgJi0taW5saW5lIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAmX190aW1lRGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbjogMDtcbiAgICBAaW5jbHVkZSB0dWktZm9udC1ib2R5LXgtc21hbGwoKTtcblxuICAgICYtLWlubGluZSB7XG4gICAgICBtYXJnaW4tbGVmdDogdmFyKC0tZ2FwLTQpO1xuICAgIH1cblxuICAgIHNwYW46bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWxlZnQ6IHZhcigtLWdhcC00KTtcbiAgICB9XG4gIH1cbn1cblxuLnR1aS1jb21tZW50UmVwbHlDYXJkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgJl9fcHJvZmlsZVBpY3R1cmUge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ2FwLTIpO1xuICB9XG5cbiAgJl9fYm9keSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAmX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWdhcC0yKTtcbiAgfVxuXG4gICZfX2NvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLWdhcC0yKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1nYXAtMik7XG4gICAgQGluY2x1ZGUgdHVpLXdvcmRicmVhay0taHlwaGVucztcbiAgfVxufVxuXG4udHVpLWNvbW1lbnQge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtNCk7XG5cbiAgJl9fcmVwbHlCb3gge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tZ2FwLTgpO1xuICB9XG59XG5cbi50dWktY29tbWVudFJlcGx5Q29udGVudCB7XG4gIG1hcmdpbjogMDtcblxuICAmX19jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAudHVpLXJlbmRlcmVkIHtcbiAgICAgIHAge1xuICAgICAgICBAaW5jbHVkZSB0dWktZm9udC1ib2R5KCk7XG4gICAgICAgIC8qIFJlc2V0IG1hcmdpbiBvZiBwYXJhZ3JhcGggaW4gdHVpLXJlbmRlcmVkIGNvbnRlbnQuKi9cbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICYtLWRlbGV0ZWQge1xuICAgICAgLyogRGVsZXRlZCBjb21tZW50IHNob3VsZCBub3QgaGF2ZSBhbnkgLnR1aS1yZW5kZXJlZCBlbGVtZW50Ki9cbiAgICAgIEBpbmNsdWRlIHR1aS1mb250LWJvZHktc21hbGwoKTtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG5cbiAgICAmLS1yZXBseSB7XG4gICAgICBAaW5jbHVkZSB0dWktZm9udC1ib2R5LXNtYWxsKCk7XG5cbiAgICAgIC50dWktcmVuZGVyZWQge1xuICAgICAgICBwIHtcbiAgICAgICAgICBAaW5jbHVkZSB0dWktZm9udC1ib2R5LXNtYWxsKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnR1aS1jb21tZW50Rm9ybSB7XG4gICZfX2Zvcm0ge1xuICAgIGZsZXg6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJl9fZWRpdG9yIHtcbiAgICBmbGV4OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgIC50dWktd2VrYV9fZWRpdG9ySG9zdCB7XG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICB9XG4gIH1cblxuICAmX19idXR0b25Hcm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLWdhcC00KTtcbiAgfVxufVxuXG4udHVpLWVkaXRDb21tZW50UmVwbHlGb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICZfX2VkaXRvciB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi50dWktY29tbWVudFJlcGx5Rm9ybSB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdhcC00KTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tZ2FwLTIpO1xuXG4gICZfX2Zvcm0ge1xuICAgIGZsZXg6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgJl9fZWRpdG9yIHtcbiAgICBmbGV4OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udHVpLWNvbW1lbnRSZXNwb25zZUJveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgJl9fcHJvZmlsZVBpY3R1cmUge1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tZ2FwLTIpO1xuICB9XG5cbiAgJl9fZm9ybUJveCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQGluY2x1ZGUgdHVpLXdvcmRicmVhay0taHlwaGVucztcbiAgfVxufVxuXG4udHVpLWNvbW1lbnRTdWJtaXRDYW5jZWxCdXR0b25Hcm91cCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIG1hcmdpbi10b3A6IHZhcigtLWdhcC00KTtcbn1cblxuLnR1aS1jb25maXJtRGVsZXRlQ29tbWVudFJlcGx5TW9kYWwge1xuICAmX19idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cblxuICAmX190ZXh0Qm94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgJi10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIHR1aS1mb250LWJvZHkoKTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS1nYXAtNCk7XG4gICAgfVxuICB9XG5cbiAgJl9fY29udGVudCB7XG4gICAgLnR1aS1tb2RhbENvbnRlbnQge1xuICAgICAgJl9fdGl0bGUge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udHVpLWNvbW1lbnRVc2VyTGluayB7XG4gICYtLXNtYWxsTGluayB7XG4gICAgQGluY2x1ZGUgdHVpLWZvbnQtbGluay1zbWFsbCgpO1xuICAgIEBpbmNsdWRlIHR1aS1mb250LWhlYXZ5KCk7XG4gIH1cblxuICAmLS1sYXJnZUxpbmsge1xuICAgIEBpbmNsdWRlIHR1aS1mb250LWxpbmsoKTtcbiAgICBAaW5jbHVkZSB0dWktZm9udC1oZWF2eSgpO1xuICB9XG5cbiAgJi0tc21hbGxUZXh0IHtcbiAgICBAaW5jbHVkZSB0dWktZm9udC1ib2R5LXNtYWxsKCk7XG4gICAgQGluY2x1ZGUgdHVpLWZvbnQtaGVhdnkoKTtcbiAgfVxuXG4gICYtLWxhcmdlVGV4dCB7XG4gICAgQGluY2x1ZGUgdHVpLWZvbnQtYm9keSgpO1xuICAgIEBpbmNsdWRlIHR1aS1mb250LWhlYXZ5KCk7XG4gIH1cbn1cblxuLnR1aS1jb21tZW50UmVwbHkge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1nYXAtNCk7XG59XG5cbiIsIi8qIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMuKi9cbi8qKi9cbi8qIENvcHlyaWdodCAoQykgMjAyMCBvbndhcmRzIFRvdGFyYSBMZWFybmluZyBTb2x1dGlvbnMgTFREKi9cbi8qKi9cbi8qIFRvdGFyYSBFbnRlcnByaXNlIEV4dGVuc2lvbnMgaXMgcHJvdmlkZWQgb25seSB0byBUb3RhcmEqL1xuLyogTGVhcm5pbmcgU29sdXRpb25zIExURCdzIGN1c3RvbWVycyBhbmQgcGFydG5lcnMsIHB1cnN1YW50IHRvKi9cbi8qIHRoZSB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiBhIHNlcGFyYXRlIGFncmVlbWVudCB3aXRoIFRvdGFyYSovXG4vKiBMZWFybmluZyBTb2x1dGlvbnMgTFREIG9yIGl0cyBhZmZpbGlhdGUuKi9cbi8qKi9cbi8qIElmIHlvdSBkbyBub3QgaGF2ZSBhbiBhZ3JlZW1lbnQgd2l0aCBUb3RhcmEgTGVhcm5pbmcgU29sdXRpb25zKi9cbi8qIExURCwgeW91IG1heSBub3QgYWNjZXNzLCB1c2UsIG1vZGlmeSwgb3IgZGlzdHJpYnV0ZSB0aGlzIHNvZnR3YXJlLiovXG4vKiBQbGVhc2UgY29udGFjdCBbbGljZW5zaW5nQHRvdGFyYWxlYXJuaW5nLmNvbV0gZm9yIG1vcmUgaW5mb3JtYXRpb24uKi9cbi8qKi9cbi8qIEBhdXRob3IgICAgS2V2aW4gSG90dGluZ2VyIDxrZXZpbi5ob3R0aW5nZXJAdG90YXJhbGVhcm5pbmcuY29tPiovXG4vKiBAbW9kdWxlIHR1aWNrYWdlICAgdHVpKi9cblxuOnJvb3Qge1xuICAtLWZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90byxcbiAgICAnSGVsdmV0aWNhIE5ldWUnLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6IE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJyxcbiAgICAnQ291cmllciBOZXcnLCBtb25vc3BhY2U7XG5cbiAgLyoqIExpbmUgaGVpZ2h0cyAqKi9cbiAgLyogQm9keSovXG4gIC0tZm9udC1ib2R5LWxpbmUtaGVpZ2h0OiAxLjQyOTtcbiAgLS1mb250LWJvZHktbGFyZ2UtbGluZS1oZWlnaHQ6IDEuMzM7XG4gIC0tZm9udC1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0OiAxLjE1NDtcbiAgLS1mb250LWJvZHkteC1zbWFsbC1saW5lLWhlaWdodDogMS4yNTtcbiAgLS1mb250LWJvZHkteHgtc21hbGwtbGluZS1oZWlnaHQ6IDEuMTtcblxuICAvKiBIZWFkaW5ncyovXG4gIC0tZm9udC1oZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0OiAxLjE2NztcbiAgLS1mb250LWhlYWRpbmctbGluZS1oZWlnaHQ6IDEuMzMzO1xuICAtLWZvbnQtaGVhZGluZy1zbWFsbC1saW5lLWhlaWdodDogMS4zMzM7XG4gIC0tZm9udC1oZWFkaW5nLXgtc21hbGwtbGluZS1oZWlnaHQ6IDEuMzMzO1xuXG4gIC8qKiBGb250IHNpemVzICoqL1xuICAvKiBCb2R5Ki9cbiAgLS1mb250LWJvZHktc2l6ZTogdmFyKC0tZm9udC1zaXplLTE0KTtcbiAgLS1mb250LWJvZHktc21hbGwtc2l6ZTogdmFyKC0tZm9udC1zaXplLTEzKTtcbiAgLS1mb250LWJvZHkteC1zbWFsbC1zaXplOiB2YXIoLS1mb250LXNpemUtMTIpO1xuICAtLWZvbnQtYm9keS14eC1zbWFsbC1zaXplOiB2YXIoLS1mb250LXNpemUtMTEpO1xuXG4gIC8qIEhlYWRpbmdzKi9cbiAgLS1mb250LWhlYWRpbmctbGFyZ2Utc2l6ZTogdmFyKC0tZm9udC1zaXplLTUwKTtcbiAgLS1mb250LWhlYWRpbmctc2l6ZTogdmFyKC0tZm9udC1zaXplLTMwKTtcbiAgLS1mb250LWhlYWRpbmctc21hbGwtc2l6ZTogdmFyKC0tZm9udC1zaXplLTIwKTtcbiAgLS1mb250LWhlYWRpbmcteC1zbWFsbC1zaXplOiB2YXIoLS1mb250LXNpemUtMTYpO1xufVxuXG4vKiovXG4vKiBCb2R5IHRleHQqL1xuLyoqL1xuXG5AbWl4aW4gdHVpLWZvbnQtYm9keSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LWJvZHktc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWJvZHktbGluZS1oZWlnaHQpO1xufVxuXG5AbWl4aW4gdHVpLWZvbnQtYm9keS1zbWFsbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1ib2R5LXNtYWxsLXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1ib2R5LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHR1aS1mb250LWJvZHkteC1zbWFsbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1ib2R5LXgtc21hbGwtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWJvZHkteC1zbWFsbC1saW5lLWhlaWdodCk7XG59XG5cbkBtaXhpbiB0dWktZm9udC1ib2R5LXh4LXNtYWxsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LWJvZHkteHgtc21hbGwtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWJvZHkteHgtc21hbGwtbGluZS1oZWlnaHQpO1xufVxuXG5AbWl4aW4gdHVpLWZvbnQtYm9keS1kaXNhYmxlZCB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LWRpc2FibGVkKTtcbn1cblxuQG1peGluIHR1aS1mb250LWJvZHktcGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1oaW50KTtcbn1cblxuQG1peGluIHR1aS1mb250LWhlYXZ5IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbkBtaXhpbiB0dWktZm9udC1oaW50IHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtaGludCk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuQG1peGluIHR1aS1mb250LW1vbm9zcGFjZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1tb25vc3BhY2UpO1xufVxuXG4vKiovXG4vKiBMaW5rIHRleHQqL1xuLyoqL1xuXG5AbWl4aW4gdHVpLWZvbnQtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1ib2R5LXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZS1ob3Zlcik7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjphY3RpdmU6aG92ZXIsXG4gICY6YWN0aXZlOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3RhdGUtYWN0aXZlKTtcbiAgfVxufVxuXG5AbWl4aW4gdHVpLWZvbnQtbGluay1sYXJnZSB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTE2KTtcbiAgbGluZS1oZWlnaHQ6IDEuMzM7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3Itc3RhdGUtaG92ZXIpO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6YWN0aXZlOmhvdmVyLFxuICAmOmFjdGl2ZTpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlLWFjdGl2ZSk7XG4gIH1cbn1cblxuQG1peGluIHR1aS1mb250LWxpbmstc21hbGwge1xuICBjb2xvcjogdmFyKC0tY29sb3Itc3RhdGUpO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0xMyk7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXN0YXRlLWhvdmVyKTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmFjdGl2ZTpob3ZlcixcbiAgJjphY3RpdmU6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1zdGF0ZS1hY3RpdmUpO1xuICB9XG59XG5cbi8qKi9cbi8qIEhlYWRpbmcgdGV4dCovXG4vKiovXG5cbkBtaXhpbiB0dWktZm9udC1oZWFkaW5nLWxhcmdlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1oZWFkaW5nLWxhcmdlLXNpemUpO1xuICBsaW5lLWhlaWdodDogdmFyKC0tZm9udC1oZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHR1aS1mb250LWhlYWRpbmctbWVkaXVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LWhlYWRpbmctc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWhlYWRpbmctbGluZS1oZWlnaHQpO1xufVxuXG5AbWl4aW4gdHVpLWZvbnQtaGVhZGluZy1zbWFsbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaGVhZGluZy1zbWFsbC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaGVhZGluZy1zbWFsbC1saW5lLWhlaWdodCk7XG59XG5cbkBtaXhpbiB0dWktZm9udC1oZWFkaW5nLXNtYWxsLXJlZ3VsYXIge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtaGVhZGluZy1zbWFsbC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaGVhZGluZy1zbWFsbC1saW5lLWhlaWdodCk7XG59XG5cbkBtaXhpbiB0dWktZm9udC1oZWFkaW5nLXgtc21hbGwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LWhlYWRpbmcteC1zbWFsbC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtaGVhZGluZy14LXNtYWxsLWxpbmUtaGVpZ2h0KTtcbn1cblxuQG1peGluIHR1aS1mb250LWhlYWRpbmctbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZm9udC1zaXplOiB2YXIoLS1mb250LWJvZHktc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS1mb250LWJvZHktbGluZS1oZWlnaHQpO1xufVxuXG5AbWl4aW4gdHVpLWZvbnQtaGVhZGluZy1sYWJlbC1zbWFsbCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXNpemU6IHZhcigtLWZvbnQtYm9keS1zbWFsbC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLWZvbnQtYm9keS1zbWFsbC1saW5lLWhlaWdodCk7XG59XG5cbkBtaXhpbiB0dWktZm9udC1oZWFkaW5nLXBhZ2UtdGl0bGUge1xuICBtYXJnaW46IDA7XG4gIEBpbmNsdWRlIHR1aS1mb250LWhlYWRpbmctbWVkaXVtO1xufVxuXG5AbWl4aW4gdHVpLWZvbnQtaGVhZGluZy1wYWdlLXRpdGxlLXNtYWxsIHtcbiAgbWFyZ2luOiAwO1xuICBAaW5jbHVkZSB0dWktZm9udC1oZWFkaW5nLXNtYWxsO1xufVxuXG4vKiovXG4vKiBUZXh0IHdyYXBwaW5nKi9cbi8qKi9cblxuLyogYnJlYWsgd2hlbiB0aGUgd29yZCBzdGFydHMgb24gYSBuZXcgbGluZSBhbmQgYnJlYWtzIHdoZXJlIGl0IHdvdWxkIGhhdmUqL1xuLyogb3ZlcmZsb3duLCBhdXRvIGluc2VydGluZyBoeXBoZW5zLiB1c2VmdWwgZm9yIHVzZXItZ2VuZXJhdGVkIGNvbnRlbnQgd2hvc2UqL1xuLyogY29udGFpbmVycyBhcmUgZ2VuZXJhbGx5IGZsZXhpYmxlLiBtYWNoaW5lLWluc2VydGlvbiBvZiBoeXBoZW5zIG1heSBub3QgYmUqL1xuLyogYW4gZW5kIHVzZXIgcHJlZmVyZW5jZSwgYnV0IGl0IGNhbiBiZSBtb3JlIHJlYWRhYmxlIHRoYW4gd2l0aG91dC4qL1xuQG1peGluIHR1aS13b3JkYnJlYWstLWh5cGhlbnMge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gICAgICAgICAgaHlwaGVuczogYXV0bztcbiAgLmllICYge1xuICAgIC1tcy1oeXBoZW5zOiBhdXRvO1xuICB9XG59XG5cbi8qIGJyZWFrIGFsbCB3b3JkcyBhdCB0aGUgZW5kIG9mIGxpbmVzLCBkb24ndCBoeXBoZW5hdGUuIHVzZWZ1bCBmb3IgcHJlZGljdGFibGUqL1xuLyogcGFydHMgb2YgdGhlIFVJIHdob3NlIGNvbnRhaW5lcnMgYXJlIGxlc3MgZmxleGlibGUuKi9cbkBtaXhpbiB0dWktd29yZGJyZWFrLS1oYXJkIHtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiBub25lO1xuICAgICAgICAgIGh5cGhlbnM6IG5vbmU7XG4gIC5pZSAmIHtcbiAgICAtbXMtd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgIC1tcy1oeXBoZW5zOiBub25lO1xuICB9XG59XG5cbiJdfQ== */