@bigbinary/neeto-team-members-frontend 3.1.8 → 3.2.0-beta2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,13 +1,13 @@
1
1
  import { globalProps, taxonomies } from '@bigbinary/neeto-commons-frontend/initializers';
2
2
  import require$$0, { useState, createElement, useEffect, useMemo, useRef, Fragment as Fragment$1, memo, useCallback } from 'react';
3
3
  import { removeBy, nullSafe, noop, isPresent, findById, isNotEmpty, findBy, _findBy, replaceById, keysToSnakeCase, notEquals, toLabelAndValue, filterBy, slugify } from '@bigbinary/neeto-cist';
4
- import { useMutationWithInvalidation, withT, useQueryParams, withTitle, useFuncDebounce, useDebounce, useBreakpoints } from '@bigbinary/neeto-commons-frontend/react-utils';
4
+ import { useMutationWithInvalidation as useMutationWithInvalidation$1, withT, useQueryParams, withTitle, useFuncDebounce, useDebounce, useBreakpoints } from '@bigbinary/neeto-commons-frontend/react-utils';
5
5
  import Container from '@bigbinary/neeto-molecules/Container';
6
6
  import NeetoHeader from '@bigbinary/neeto-molecules/Header';
7
7
  import Button from '@bigbinary/neetoui/Button';
8
8
  import { useTranslation, Trans } from 'react-i18next';
9
+ import { useQuery, useQueryClient, useMutation, QueryClient, QueryCache, QueryClientProvider, keepPreviousData } from '@tanstack/react-query';
9
10
  import { prop, pluck, mergeLeft, includes, keys, isEmpty, replace as replace$1, is, append, equals, concat, groupBy, not, map, identical, modify, __, filter as filter$1, identity, clamp, curry, isNil, toLower, assoc, trim, isNotNil, pick, move, head, reverse } from 'ramda';
10
- import { useQuery, QueryClient, QueryCache, QueryClientProvider, useMutation } from 'react-query';
11
11
  import axios from 'axios';
12
12
  import i18next, { t as t$1 } from 'i18next';
13
13
  import { DEFAULT_PAGE_INDEX, DEFAULT_STALE_TIME, PLURAL, SINGULAR, DEFAULT_PAGE_SIZE as DEFAULT_PAGE_SIZE$1 } from '@bigbinary/neeto-commons-frontend/constants';
@@ -41,7 +41,7 @@ import Toastr from '@bigbinary/neetoui/Toastr';
41
41
  import withImmutableActions from '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';
42
42
  import { create as create$3 } from 'zustand';
43
43
  import { shallow } from 'zustand/shallow';
44
- import { ReactQueryDevtools } from 'react-query/devtools';
44
+ import { ReactQueryDevtools } from '@tanstack/react-query-devtools';
45
45
  import Checkbox from '@bigbinary/neetoui/Checkbox';
46
46
  import classnames from 'classnames';
47
47
  import Input$1 from '@bigbinary/neetoui/Input';
@@ -247,19 +247,22 @@ var useFetchGroups = function useFetchGroups(_ref) {
247
247
  pageSize = _ref.pageSize,
248
248
  _ref$searchTerm = _ref.searchTerm,
249
249
  searchTerm = _ref$searchTerm === void 0 ? "" : _ref$searchTerm;
250
- return useQuery([QUERY_KEYS.GROUPS, searchTerm, page, pageSize], function () {
251
- return groupsApi.list({
252
- searchTerm: searchTerm,
253
- page: page,
254
- pageSize: pageSize,
255
- loadDetails: true
256
- });
250
+ return useQuery({
251
+ queryKey: [QUERY_KEYS.GROUPS, searchTerm, page, pageSize],
252
+ queryFn: function queryFn() {
253
+ return groupsApi.list({
254
+ searchTerm: searchTerm,
255
+ page: page,
256
+ pageSize: pageSize,
257
+ loadDetails: true
258
+ });
259
+ }
257
260
  });
258
261
  };
259
262
  var useCreateGroup = function useCreateGroup() {
260
263
  var _config$form$otherKey, _config$form;
261
264
  var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
262
- return useMutationWithInvalidation(function (payload) {
265
+ return useMutationWithInvalidation$1(function (payload) {
263
266
  return groupsApi.create(payload);
264
267
  }, {
265
268
  keysToInvalidate: [QUERY_KEYS.GROUPS].concat(_toConsumableArray((_config$form$otherKey = config === null || config === void 0 || (_config$form = config.form) === null || _config$form === void 0 ? void 0 : _config$form.otherKeysToInvalidate) !== null && _config$form$otherKey !== void 0 ? _config$form$otherKey : []))
@@ -268,16 +271,18 @@ var useCreateGroup = function useCreateGroup() {
268
271
  var useDeleteGroup = function useDeleteGroup() {
269
272
  var _config$form$otherKey2, _config$form2;
270
273
  var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
271
- return useMutationWithInvalidation(function (id) {
274
+ return useMutationWithInvalidation$1(function (id) {
272
275
  return groupsApi.destroy(id);
273
276
  }, {
274
277
  keysToInvalidate: [QUERY_KEYS.GROUPS].concat(_toConsumableArray((_config$form$otherKey2 = config === null || config === void 0 || (_config$form2 = config.form) === null || _config$form2 === void 0 ? void 0 : _config$form2.otherKeysToInvalidate) !== null && _config$form$otherKey2 !== void 0 ? _config$form$otherKey2 : []))
275
278
  });
276
279
  };
277
280
  var useFetchGroup = function useFetchGroup(id) {
278
- return useQuery([QUERY_KEYS.GROUPS, id], function () {
279
- return groupsApi.show(id);
280
- }, {
281
+ return useQuery({
282
+ queryKey: [QUERY_KEYS.GROUPS, id],
283
+ queryFn: function queryFn() {
284
+ return groupsApi.show(id);
285
+ },
281
286
  select: prop("group"),
282
287
  enabled: !!id
283
288
  });
@@ -285,7 +290,7 @@ var useFetchGroup = function useFetchGroup(id) {
285
290
  var useUpdateGroup = function useUpdateGroup() {
286
291
  var _config$form$otherKey3, _config$form3;
287
292
  var config = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
288
- return useMutationWithInvalidation(function (_ref2) {
293
+ return useMutationWithInvalidation$1(function (_ref2) {
289
294
  var id = _ref2.id,
290
295
  payload = _ref2.payload;
291
296
  return groupsApi.update(id, payload);
@@ -309,7 +314,10 @@ var usersApi = {
309
314
  };
310
315
 
311
316
  var useFetchUsers = function useFetchUsers() {
312
- return useQuery([QUERY_KEYS.GROUP_MEMBERS], usersApi.list);
317
+ return useQuery({
318
+ queryKey: [QUERY_KEYS.USERS],
319
+ queryFn: usersApi.list
320
+ });
313
321
  };
314
322
 
315
323
  var MAXIMUM_NAME_LENGTH = 25;
@@ -474,10 +482,10 @@ var Form = function Form(_ref) {
474
482
  isLoading = _useFetchUsers.isLoading;
475
483
  var _useCreateGroup = useCreateGroup(config),
476
484
  create = _useCreateGroup.mutate,
477
- isCreating = _useCreateGroup.isLoading;
485
+ isCreating = _useCreateGroup.isPending;
478
486
  var _useUpdateGroup = useUpdateGroup(config),
479
487
  update = _useUpdateGroup.mutate,
480
- isUpdating = _useUpdateGroup.isLoading;
488
+ isUpdating = _useUpdateGroup.isPending;
481
489
  var initialValues = isEdit ? group : mergeLeft(GROUP_FORM_INITIAL_VALUES, (_config$form$initialV = config === null || config === void 0 || (_config$form = config.form) === null || _config$form === void 0 ? void 0 : _config$form.initialValues) !== null && _config$form$initialV !== void 0 ? _config$form$initialV : {});
482
490
  var validationSchema = GROUP_FORM_VALIDATION_SCHEMA.concat(config === null || config === void 0 || (_config$form2 = config.form) === null || _config$form2 === void 0 ? void 0 : _config$form2.validationSchema);
483
491
  var getUserIds = function getUserIds(members) {
@@ -1271,8 +1279,8 @@ var Edit = function Edit(_ref) {
1271
1279
  });
1272
1280
  };
1273
1281
 
1274
- function ownKeys$k(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1275
- function _objectSpread$k(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$k(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$k(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1282
+ function ownKeys$l(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1283
+ function _objectSpread$l(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$l(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$l(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1276
1284
  var List = function List(_ref) {
1277
1285
  var _config$table$deleteA, _config$table, _config$table$deleteA2;
1278
1286
  var config = _ref.config,
@@ -1295,7 +1303,7 @@ var List = function List(_ref) {
1295
1303
  var totalCount = groups === null || groups === void 0 ? void 0 : groups.length;
1296
1304
  var _useDeleteGroup = useDeleteGroup(config),
1297
1305
  groupDelete = _useDeleteGroup.mutate,
1298
- isDeleting = _useDeleteGroup.isLoading;
1306
+ isDeleting = _useDeleteGroup.isPending;
1299
1307
  var getGroupDetail = function getGroupDetail(id) {
1300
1308
  return findById(id, groups);
1301
1309
  };
@@ -1362,7 +1370,7 @@ var List = function List(_ref) {
1362
1370
  })]
1363
1371
  }) : /*#__PURE__*/jsx("div", {
1364
1372
  className: "flex h-full w-full flex-grow items-center justify-center",
1365
- children: /*#__PURE__*/jsx(NoData, _objectSpread$k({
1373
+ children: /*#__PURE__*/jsx(NoData, _objectSpread$l({
1366
1374
  title: t("neetoTeamMembers.helpers.emptyTable", {
1367
1375
  entity: taxonomies.group.plural
1368
1376
  })
@@ -1859,6 +1867,70 @@ try {
1859
1867
 
1860
1868
  var _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);
1861
1869
 
1870
+ function _objectWithoutPropertiesLoose(source, excluded) {
1871
+ if (source == null) return {};
1872
+ var target = {};
1873
+ var sourceKeys = Object.keys(source);
1874
+ var key, i;
1875
+ for (i = 0; i < sourceKeys.length; i++) {
1876
+ key = sourceKeys[i];
1877
+ if (excluded.indexOf(key) >= 0) continue;
1878
+ target[key] = source[key];
1879
+ }
1880
+ return target;
1881
+ }
1882
+
1883
+ function _objectWithoutProperties(source, excluded) {
1884
+ if (source == null) return {};
1885
+ var target = _objectWithoutPropertiesLoose(source, excluded);
1886
+ var key, i;
1887
+ if (Object.getOwnPropertySymbols) {
1888
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
1889
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
1890
+ key = sourceSymbolKeys[i];
1891
+ if (excluded.indexOf(key) >= 0) continue;
1892
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
1893
+ target[key] = source[key];
1894
+ }
1895
+ }
1896
+ return target;
1897
+ }
1898
+
1899
+ var _excluded$4 = ["keysToInvalidate"],
1900
+ _excluded2$3 = ["onSuccess"];
1901
+ function ownKeys$k(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1902
+ function _objectSpread$k(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$k(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$k(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1903
+ var useMutationWithInvalidation = function useMutationWithInvalidation(mutationFn, _ref) {
1904
+ var keysToInvalidate = _ref.keysToInvalidate,
1905
+ options = _objectWithoutProperties(_ref, _excluded$4);
1906
+ var queryClient = useQueryClient();
1907
+ var _onSuccess = options.onSuccess,
1908
+ otherOptions = _objectWithoutProperties(options, _excluded2$3);
1909
+ return useMutation(_objectSpread$k({
1910
+ mutationFn: mutationFn,
1911
+ onSuccess: function onSuccess(data, variables, context) {
1912
+ keysToInvalidate.forEach(function (key) {
1913
+ var result = key;
1914
+ if (typeof key === "function") {
1915
+ result = key(data, variables, context);
1916
+ }
1917
+ if (_typeof$1(result) === "object") {
1918
+ queryClient.invalidateQueries(result);
1919
+ }
1920
+ if (typeof result === "string") {
1921
+ queryClient.invalidateQueries({
1922
+ queryKey: [key]
1923
+ });
1924
+ }
1925
+ queryClient.invalidateQueries({
1926
+ queryKey: key
1927
+ });
1928
+ });
1929
+ _onSuccess === null || _onSuccess === void 0 || _onSuccess(data, variables, context);
1930
+ }
1931
+ }, otherOptions));
1932
+ };
1933
+
1862
1934
  var fetchCountries = function fetchCountries() {
1863
1935
  return axios.get("".concat(BASE_URL, "/profile/countries"));
1864
1936
  };
@@ -1879,9 +1951,10 @@ var profileApi = {
1879
1951
  function ownKeys$j(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1880
1952
  function _objectSpread$j(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$j(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$j(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1881
1953
  var useFetchProfile = function useFetchProfile(options) {
1882
- return useQuery([QUERY_KEYS.USER_PROFILE], profileApi.fetchUserDetails, _objectSpread$j({
1883
- staleTime: DEFAULT_STALE_TIME,
1884
- refetchOnWindowFocus: true
1954
+ return useQuery(_objectSpread$j({
1955
+ queryKey: [QUERY_KEYS.USER_PROFILE],
1956
+ queryFn: profileApi.fetchUserDetails,
1957
+ staleTime: DEFAULT_STALE_TIME
1885
1958
  }, options));
1886
1959
  };
1887
1960
  var useUpdateProfileMutation = function useUpdateProfileMutation(options) {
@@ -1914,7 +1987,9 @@ var VALIDATION_ERRORS = {
1914
1987
  function ownKeys$i(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
1915
1988
  function _objectSpread$i(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$i(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$i(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
1916
1989
  var useFetchCountries = function useFetchCountries(options) {
1917
- return useQuery([QUERY_KEYS.COUNTRIES_LIST], profileApi.fetchCountries, _objectSpread$i({
1990
+ return useQuery(_objectSpread$i({
1991
+ queryKey: [QUERY_KEYS.COUNTRIES_LIST],
1992
+ queryFn: profileApi.fetchCountries,
1918
1993
  staleTime: DEFAULT_STALE_TIME
1919
1994
  }, options));
1920
1995
  };
@@ -2168,7 +2243,7 @@ var ChangeProfile = function ChangeProfile(_ref) {
2168
2243
  handleTimeZoneChange = _useCountries$handleT === void 0 ? noop : _useCountries$handleT;
2169
2244
  var _useUpdateProfileMuta = useUpdateProfileMutation(),
2170
2245
  updateProfile = _useUpdateProfileMuta.mutate,
2171
- isUpdatingProfile = _useUpdateProfileMuta.isLoading;
2246
+ isUpdatingProfile = _useUpdateProfileMuta.isPending;
2172
2247
  var initialFormValues = {
2173
2248
  firstName: firstName,
2174
2249
  lastName: lastName,
@@ -3819,7 +3894,7 @@ var withReactQuery = function withReactQuery(Component) {
3819
3894
  client: queryClient,
3820
3895
  children: [/*#__PURE__*/jsx(Component, _objectSpread$g({}, props)), /*#__PURE__*/jsx(ReactQueryDevtools, {
3821
3896
  initialIsOpen: false,
3822
- position: "bottom-right"
3897
+ position: "left"
3823
3898
  })]
3824
3899
  });
3825
3900
  };
@@ -3837,42 +3912,15 @@ function ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
3837
3912
  function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3838
3913
  var useFetchPermissions = function useFetchPermissions() {
3839
3914
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3840
- return useQuery(QUERY_KEYS.PERMISSIONS, permissionsApi.fetch, _objectSpread$f({
3915
+ return useQuery(_objectSpread$f({
3916
+ queryKey: [QUERY_KEYS.PERMISSIONS],
3917
+ queryFn: permissionsApi.fetch,
3841
3918
  select: function select(response) {
3842
3919
  return response === null || response === void 0 ? void 0 : response.permissions;
3843
3920
  }
3844
3921
  }, options));
3845
3922
  };
3846
3923
 
3847
- function _objectWithoutPropertiesLoose(source, excluded) {
3848
- if (source == null) return {};
3849
- var target = {};
3850
- var sourceKeys = Object.keys(source);
3851
- var key, i;
3852
- for (i = 0; i < sourceKeys.length; i++) {
3853
- key = sourceKeys[i];
3854
- if (excluded.indexOf(key) >= 0) continue;
3855
- target[key] = source[key];
3856
- }
3857
- return target;
3858
- }
3859
-
3860
- function _objectWithoutProperties(source, excluded) {
3861
- if (source == null) return {};
3862
- var target = _objectWithoutPropertiesLoose(source, excluded);
3863
- var key, i;
3864
- if (Object.getOwnPropertySymbols) {
3865
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
3866
- for (i = 0; i < sourceSymbolKeys.length; i++) {
3867
- key = sourceSymbolKeys[i];
3868
- if (excluded.indexOf(key) >= 0) continue;
3869
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
3870
- target[key] = source[key];
3871
- }
3872
- }
3873
- return target;
3874
- }
3875
-
3876
3924
  var fetch$2 = function fetch() {
3877
3925
  return axios.get("".concat(BASE_URL, "/global_roles"));
3878
3926
  };
@@ -3913,7 +3961,9 @@ function ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
3913
3961
  function _objectSpread$e(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$e(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$e(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3914
3962
  var useFetchRoles = function useFetchRoles() {
3915
3963
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3916
- return useQuery(QUERY_KEYS.ROLES, organizationRolesApi.fetch, _objectSpread$e({
3964
+ return useQuery(_objectSpread$e({
3965
+ queryKey: [QUERY_KEYS.ROLES],
3966
+ queryFn: organizationRolesApi.fetch,
3917
3967
  select: function select(response) {
3918
3968
  return response === null || response === void 0 ? void 0 : response.organizationRoles;
3919
3969
  }
@@ -3921,15 +3971,17 @@ var useFetchRoles = function useFetchRoles() {
3921
3971
  };
3922
3972
  var useFetchGlobalRoles = function useFetchGlobalRoles() {
3923
3973
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3924
- return useQuery(QUERY_KEYS.GLOBAL_ROLES, globalRolesApi.fetch, _objectSpread$e({}, options));
3974
+ return useQuery(_objectSpread$e({
3975
+ queryKey: [QUERY_KEYS.GLOBAL_ROLES],
3976
+ queryFn: globalRolesApi.fetch
3977
+ }, options));
3925
3978
  };
3926
3979
  var useCreateRole = function useCreateRole(_ref) {
3927
3980
  var _onSuccess = _ref.onSuccess,
3928
3981
  options = _objectWithoutProperties(_ref, _excluded$3);
3929
- return useMutation(organizationRolesApi.create, _objectSpread$e({
3982
+ return useMutationWithInvalidation(organizationRolesApi.create, _objectSpread$e({
3983
+ keysToInvalidate: [QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
3930
3984
  onSuccess: function onSuccess() {
3931
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
3932
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
3933
3985
  _onSuccess === null || _onSuccess === void 0 || _onSuccess();
3934
3986
  }
3935
3987
  }, options));
@@ -3937,15 +3989,13 @@ var useCreateRole = function useCreateRole(_ref) {
3937
3989
  var useUpdateRole = function useUpdateRole(_ref2) {
3938
3990
  var _onSuccess2 = _ref2.onSuccess,
3939
3991
  options = _objectWithoutProperties(_ref2, _excluded2$2);
3940
- return useMutation(function (_ref3) {
3992
+ return useMutationWithInvalidation(function (_ref3) {
3941
3993
  var id = _ref3.id,
3942
3994
  payload = _ref3.payload;
3943
3995
  return organizationRolesApi.update(id, payload);
3944
3996
  }, _objectSpread$e({
3997
+ keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
3945
3998
  onSuccess: function onSuccess() {
3946
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
3947
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
3948
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
3949
3999
  _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();
3950
4000
  }
3951
4001
  }, options));
@@ -3954,15 +4004,13 @@ var useDestroyRole = function useDestroyRole(_ref4) {
3954
4004
  var _ref4$onSuccess = _ref4.onSuccess,
3955
4005
  _onSuccess3 = _ref4$onSuccess === void 0 ? noop : _ref4$onSuccess,
3956
4006
  options = _objectWithoutProperties(_ref4, _excluded3);
3957
- return useMutation(function (_ref5) {
4007
+ return useMutationWithInvalidation(function (_ref5) {
3958
4008
  var id = _ref5.id,
3959
4009
  payload = _ref5.payload;
3960
4010
  return organizationRolesApi.destroy(id, payload);
3961
4011
  }, _objectSpread$e({
4012
+ keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
3962
4013
  onSuccess: function onSuccess() {
3963
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
3964
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
3965
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
3966
4014
  _onSuccess3 === null || _onSuccess3 === void 0 || _onSuccess3();
3967
4015
  }
3968
4016
  }, options));
@@ -3970,11 +4018,9 @@ var useDestroyRole = function useDestroyRole(_ref4) {
3970
4018
  var useBulkUpdateRoles = function useBulkUpdateRoles(_ref6) {
3971
4019
  var _onSuccess4 = _ref6.onSuccess,
3972
4020
  options = _objectWithoutProperties(_ref6, _excluded4);
3973
- return useMutation(organizationRolesApi.bulkUpdate, _objectSpread$e({
4021
+ return useMutationWithInvalidation(organizationRolesApi.bulkUpdate, _objectSpread$e({
4022
+ keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
3974
4023
  onSuccess: function onSuccess() {
3975
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
3976
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
3977
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
3978
4024
  _onSuccess4 === null || _onSuccess4 === void 0 || _onSuccess4();
3979
4025
  }
3980
4026
  }, options));
@@ -4367,12 +4413,12 @@ var ManageRoles = function ManageRoles(_ref) {
4367
4413
  onSuccess: onClose
4368
4414
  }),
4369
4415
  createRole = _useCreateRole.mutate,
4370
- isCreatingRole = _useCreateRole.isLoading;
4416
+ isCreatingRole = _useCreateRole.isPending;
4371
4417
  var _useUpdateRole = useUpdateRole({
4372
4418
  onSuccess: onClose
4373
4419
  }),
4374
4420
  updateRole = _useUpdateRole.mutate,
4375
- isUpdatingRole = _useUpdateRole.isLoading;
4421
+ isUpdatingRole = _useUpdateRole.isPending;
4376
4422
  var isEdit = isPresent(selectedRole);
4377
4423
  var isSubmitting = isCreatingRole || isUpdatingRole;
4378
4424
  var handleSubmit = function handleSubmit(formValues) {
@@ -4395,9 +4441,9 @@ var ManageRoles = function ManageRoles(_ref) {
4395
4441
  var isReadOnly = selectedRole.kind === "system";
4396
4442
  var isDisabled = ADMIN_ROLES.includes(selectedRole.name) && isReadOnly;
4397
4443
  return /*#__PURE__*/jsxs(Pane, {
4398
- initialFocusRef: inputReference,
4399
4444
  isOpen: isOpen,
4400
4445
  onClose: onClose,
4446
+ initialFocusRef: inputReference,
4401
4447
  children: [/*#__PURE__*/jsx(Pane.Header, {
4402
4448
  children: /*#__PURE__*/jsx(Typography, {
4403
4449
  "data-cy": "ntm-add-role-title",
@@ -4731,7 +4777,7 @@ var Delete = function Delete(_ref) {
4731
4777
  onSuccess: onClose
4732
4778
  }),
4733
4779
  deleteRole = _useDestroyRole.mutate,
4734
- isDeleting = _useDestroyRole.isLoading;
4780
+ isDeleting = _useDestroyRole.isPending;
4735
4781
  var handleDelete = function handleDelete() {
4736
4782
  var _roles$find;
4737
4783
  var id = selectedRole.id;
@@ -4746,8 +4792,9 @@ var Delete = function Delete(_ref) {
4746
4792
  });
4747
4793
  };
4748
4794
  return /*#__PURE__*/jsx(Alert, {
4749
- cancelButtonLabel: t("neetoTeamMembers.buttons.cancel"),
4750
4795
  isOpen: isOpen,
4796
+ onClose: onClose,
4797
+ cancelButtonLabel: t("neetoTeamMembers.buttons.cancel"),
4751
4798
  isSubmitting: isDeleting,
4752
4799
  submitButtonLabel: t("neetoTeamMembers.buttons.delete"),
4753
4800
  title: t("neetoTeamMembers.labels.deleteRole"),
@@ -4757,7 +4804,6 @@ var Delete = function Delete(_ref) {
4757
4804
  name: selectedRole === null || selectedRole === void 0 ? void 0 : selectedRole.name
4758
4805
  }
4759
4806
  }),
4760
- onClose: onClose,
4761
4807
  onSubmit: handleDelete
4762
4808
  });
4763
4809
  };
@@ -4840,19 +4886,25 @@ var ToggleDropdown = function ToggleDropdown(_ref) {
4840
4886
  });
4841
4887
  };
4842
4888
 
4843
- var renderDescription = function renderDescription(permissions) {
4889
+ var renderDescription = function renderDescription(permissions, filteredPermissions) {
4844
4890
  return permissions === null || permissions === void 0 ? void 0 : permissions.map(function (_ref) {
4845
4891
  var id = _ref.id,
4846
- description = _ref.description;
4847
- return /*#__PURE__*/jsx("div", {
4848
- className: "ntm-roles-table-sidebar__list-item",
4849
- "data-name": description,
4850
- children: /*#__PURE__*/jsx(Typography, {
4851
- "data-cy": "ntm-permission-category-description",
4852
- lineHeight: "normal",
4853
- style: "body2",
4854
- children: description
4855
- })
4892
+ description = _ref.description,
4893
+ children = _ref.children;
4894
+ return /*#__PURE__*/jsxs(Fragment$1, {
4895
+ children: [filteredPermissions.includes(id) && /*#__PURE__*/jsx("div", {
4896
+ className: "ntm-roles-table-sidebar__list-item",
4897
+ "data-name": description,
4898
+ children: /*#__PURE__*/jsx(Typography, {
4899
+ "data-cy": "ntm-permission-category-description",
4900
+ lineHeight: "normal",
4901
+ style: "body2",
4902
+ children: description
4903
+ })
4904
+ }, id), /*#__PURE__*/jsx("div", {
4905
+ className: "neeto-ui-relative neeto-ui-pl-6",
4906
+ children: renderDescription(children, filteredPermissions)
4907
+ })]
4856
4908
  }, id);
4857
4909
  });
4858
4910
  };
@@ -4869,11 +4921,24 @@ var Sidebar = function Sidebar(_ref) {
4869
4921
  setSearchTerm = _ref.setSearchTerm,
4870
4922
  filteredGroupPermissions = _ref.filteredGroupPermissions,
4871
4923
  toggleDropdown = _ref.toggleDropdown,
4872
- isScrollPresent = _ref.isScrollPresent;
4924
+ isScrollPresent = _ref.isScrollPresent,
4925
+ _ref$permissions = _ref.permissions,
4926
+ permissions = _ref$permissions === void 0 ? [] : _ref$permissions,
4927
+ _ref$permissionRelati = _ref.permissionRelationConfig,
4928
+ permissionRelationConfig = _ref$permissionRelati === void 0 ? {} : _ref$permissionRelati;
4873
4929
  var _useTranslation = useTranslation(),
4874
4930
  t = _useTranslation.t;
4875
4931
  var categories = Array.from(filteredGroupPermissions.keys());
4876
4932
  var searchWrapperStyle = isScrollPresent ? getSearchWrapperStyle() : {};
4933
+ var permissionsNameMap = groupBy(prop("name"))(permissions);
4934
+ var groupedPermissionsWithChildren = useMemo(function () {
4935
+ var childrenRemovedFromRoot = getChildrenRemovedFromRoot({
4936
+ permissions: permissions,
4937
+ permissionsNameMap: permissionsNameMap,
4938
+ permissionRelationConfig: permissionRelationConfig
4939
+ });
4940
+ return groupBy(prop("category"))(childrenRemovedFromRoot);
4941
+ }, [permissions]);
4877
4942
  return /*#__PURE__*/jsxs("div", {
4878
4943
  className: "ntm-roles-table__sidebar",
4879
4944
  children: [/*#__PURE__*/jsx("div", {
@@ -4897,7 +4962,6 @@ var Sidebar = function Sidebar(_ref) {
4897
4962
  children: categories.map(function (category, index) {
4898
4963
  var groupedPermissions = filteredGroupPermissions.get(category);
4899
4964
  var isPermissionVisible = groupedPermissions.get("isPermissionVisible");
4900
- var permissions = groupedPermissions.get("permissions");
4901
4965
  return /*#__PURE__*/jsxs("div", {
4902
4966
  children: [/*#__PURE__*/jsxs("div", {
4903
4967
  className: "ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted cursor-pointer",
@@ -4913,7 +4977,10 @@ var Sidebar = function Sidebar(_ref) {
4913
4977
  }), /*#__PURE__*/jsx(ToggleDropdown, {
4914
4978
  isVisible: isPermissionVisible
4915
4979
  })]
4916
- }), isPermissionVisible && renderDescription(permissions)]
4980
+ }), isPermissionVisible && /*#__PURE__*/jsx("div", {
4981
+ className: "ml-[12px] px-[24px]",
4982
+ children: renderDescription(groupedPermissionsWithChildren[category], pluck("id", filteredGroupPermissions.get(category).get("permissions") || []))
4983
+ })]
4917
4984
  }, index);
4918
4985
  })
4919
4986
  })
@@ -4922,6 +4989,7 @@ var Sidebar = function Sidebar(_ref) {
4922
4989
  };
4923
4990
 
4924
4991
  var Table = function Table(_ref) {
4992
+ var _config$permissionRel;
4925
4993
  var config = _ref.config,
4926
4994
  filteredRoles = _ref.filteredRoles,
4927
4995
  roles = _ref.roles,
@@ -4944,7 +5012,7 @@ var Table = function Table(_ref) {
4944
5012
  _useState6 = _slicedToArray(_useState5, 2),
4945
5013
  isScrollPresent = _useState6[0],
4946
5014
  setIsScrollPresent = _useState6[1];
4947
- var _useState7 = useState(),
5015
+ var _useState7 = useState(undefined),
4948
5016
  _useState8 = _slicedToArray(_useState7, 2),
4949
5017
  selectedRole = _useState8[0],
4950
5018
  setSelectedRole = _useState8[1];
@@ -4986,9 +5054,11 @@ var Table = function Table(_ref) {
4986
5054
  children: [/*#__PURE__*/jsx(Sidebar, {
4987
5055
  filteredGroupPermissions: filteredGroupPermissions,
4988
5056
  isScrollPresent: isScrollPresent,
5057
+ permissions: permissions,
4989
5058
  searchTerm: searchTerm,
4990
5059
  setSearchTerm: setSearchTerm,
4991
- toggleDropdown: toggleDropdown
5060
+ toggleDropdown: toggleDropdown,
5061
+ permissionRelationConfig: (_config$permissionRel = config === null || config === void 0 ? void 0 : config.permissionRelation) !== null && _config$permissionRel !== void 0 ? _config$permissionRel : {}
4992
5062
  }), /*#__PURE__*/jsx(Columns, {
4993
5063
  config: config,
4994
5064
  filteredGroupPermissions: filteredGroupPermissions,
@@ -7205,27 +7275,33 @@ function _objectSpread$a(e) { for (var r = 1; r < arguments.length; r++) { var t
7205
7275
  var useFetchMembers = function useFetchMembers() {
7206
7276
  var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7207
7277
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7208
- return useQuery([QUERY_KEYS.TEAMS, params], function () {
7209
- return teamsApi.fetch(params);
7210
- }, _objectSpread$a(_objectSpread$a({
7278
+ return useQuery(_objectSpread$a(_objectSpread$a({
7279
+ queryKey: [QUERY_KEYS.TEAMS, params],
7280
+ queryFn: function queryFn() {
7281
+ return teamsApi.fetch(params);
7282
+ },
7211
7283
  select: identity,
7212
- keepPreviousData: true
7284
+ placeholderData: keepPreviousData
7213
7285
  }, options), {}, {
7214
7286
  refetchOnWindowFocus: false
7215
7287
  }));
7216
7288
  };
7217
7289
  var useFetchMembersCountsPerCategory = function useFetchMembersCountsPerCategory() {
7218
7290
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7219
- return useQuery([QUERY_KEYS.TEAMS], teamsApi.fetchCountsPerCategory, _objectSpread$a(_objectSpread$a({
7291
+ return useQuery(_objectSpread$a(_objectSpread$a({
7292
+ queryKey: [QUERY_KEYS.TEAMS],
7293
+ queryFn: teamsApi.fetchCountsPerCategory,
7220
7294
  select: identity,
7221
- keepPreviousData: true
7295
+ placeholderData: keepPreviousData
7222
7296
  }, options), {}, {
7223
7297
  refetchOnWindowFocus: false
7224
7298
  }));
7225
7299
  };
7226
7300
  var useCreateMember = function useCreateMember() {
7227
7301
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7228
- return useMutation(teamsApi.create, options);
7302
+ return useMutation(_objectSpread$a({
7303
+ mutationFn: teamsApi.create
7304
+ }, options));
7229
7305
  };
7230
7306
  var useUpdateMember = function useUpdateMember(_ref) {
7231
7307
  var _onSuccess = _ref.onSuccess,
@@ -7252,26 +7328,35 @@ var useBulkUpdateMembers = function useBulkUpdateMembers(_ref3) {
7252
7328
  }, options));
7253
7329
  };
7254
7330
  var refetchMembers = function refetchMembers() {
7255
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
7256
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
7331
+ queryClient.invalidateQueries({
7332
+ queryKey: [QUERY_KEYS.TEAMS]
7333
+ });
7334
+ queryClient.invalidateQueries({
7335
+ queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES]
7336
+ });
7257
7337
  };
7258
7338
  var useFetchFilterOptions = function useFetchFilterOptions(_ref4) {
7259
7339
  var _ref4$params = _ref4.params,
7260
7340
  params = _ref4$params === void 0 ? {} : _ref4$params,
7261
7341
  _ref4$options = _ref4.options,
7262
7342
  options = _ref4$options === void 0 ? {} : _ref4$options;
7263
- return useQuery([QUERY_KEYS.TEAMS_DEPENDENCIES, params], function () {
7264
- return teamsApi.fetchFilterOptions(params);
7265
- }, _objectSpread$a(_objectSpread$a({
7343
+ return useQuery(_objectSpread$a(_objectSpread$a({
7344
+ queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES, params],
7345
+ queryFn: function queryFn() {
7346
+ return teamsApi.fetchFilterOptions(params);
7347
+ },
7266
7348
  select: identity
7267
7349
  }, options), {}, {
7268
7350
  refetchOnWindowFocus: false
7269
7351
  }));
7270
7352
  };
7271
7353
  var useMembersCreationStatus = function useMembersCreationStatus(jobId, options) {
7272
- return useQuery([QUERY_KEYS.CREATION_STATUS, jobId], function () {
7273
- return teamsApi.creationStatus(jobId);
7274
- }, options);
7354
+ return useQuery(_objectSpread$a({
7355
+ queryKey: [QUERY_KEYS.CREATION_STATUS, jobId],
7356
+ queryFn: function queryFn() {
7357
+ return teamsApi.creationStatus(jobId);
7358
+ }
7359
+ }, options));
7275
7360
  };
7276
7361
 
7277
7362
  var _getQueryParams = getQueryParams(),
@@ -8945,7 +9030,7 @@ var ManageMember = function ManageMember(_ref) {
8945
9030
  }
8946
9031
  }),
8947
9032
  updateMember = _useUpdateMember.mutate,
8948
- isUpdatingMember = _useUpdateMember.isLoading;
9033
+ isUpdatingMember = _useUpdateMember.isPending;
8949
9034
  var hasRoleChanged = function hasRoleChanged(_ref4) {
8950
9035
  var submitted = _ref4.submitted,
8951
9036
  values = _ref4.values;
@@ -9202,7 +9287,7 @@ var TeamMembers = function TeamMembers(_ref) {
9202
9287
  }
9203
9288
  }),
9204
9289
  updateMember = _useUpdateMember.mutate,
9205
- isUpdatingMember = _useUpdateMember.isLoading;
9290
+ isUpdatingMember = _useUpdateMember.isPending;
9206
9291
  var filteredRoles = getFilteredRoles(roles, config);
9207
9292
  var _useTeams = useTeams({
9208
9293
  config: config,
@@ -9420,7 +9505,7 @@ var useMembersSidenav = function useMembersSidenav(_ref) {
9420
9505
 
9421
9506
  var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
9422
9507
 
9423
- var css = ":root{--ntm-roles-table-default-scroll:15px;--ntm-roles-table-cell-height:48px;--ntm-roles-sidebar-width:396px;--ntm-roles-table-header-height:72px}.ntm-scrollbar__inner{height:200px;width:100%}.ntm-scrollbar__outer{height:150px;left:0;overflow:hidden;position:absolute;top:0;visibility:hidden;width:200px}.ntm-empty-state{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ntm-members{overflow:auto;width:100%}.ntm-members-wrapper{display:flex}.ntm-members-page-loader{height:100vh;width:100%}.ntm-members-table__wrapper{display:flex;gap:.75rem;justify-content:space-between;width:100%}.ntm-members-table__column{align-items:center;display:flex;gap:.5rem}.ntm-members-form__header{margin-bottom:.5rem}.ntm-members-form__body{padding-bottom:1rem;width:100%}.ntm-members-form__body>*+*{margin-top:1.5rem}.ntm-members-form__footer{display:flex;gap:.5rem}.ntm-manage-members__header{align-items:flex-start;display:flex}.ntm-manage-members__header>*+*{margin-left:.5rem}.ntm-manage-members__app-roles{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0;width:100%}.ntm-manage-members-app-roles__select-wrapper{max-width:250px;width:50%}.ntm-manage-members-effective-app-roles{align-items:center;display:flex;justify-content:space-between;padding:.25rem 0}.ntm-manage-members-effective-app-roles__role-name{max-width:300px;width:67%}.ntm-members-radio-group,.ntm-members-radio-group .neeto-ui-radio__container--stacked{width:100%}.ntm-members-radio-group__label{padding-right:4px}.ntm-members-radio-group__icon{cursor:pointer}.ntm-members-form-radio-item__wrapper{cursor:pointer;padding:8px 0!important;width:100%}.ntm-members-form-radio-item__wrapper:first-child{padding-top:0!important}.ntm-members-form-radio-item__label{margin-bottom:0!important}.ntm-members-form-radio-item__description,.ntm-product-roles-table th{color:rgb(var(--neeto-ui-gray-700))}.ntm-product-roles-table th{font-size:var(--neeto-ui-text-xs);font-weight:var(--neeto-ui-font-bold);text-transform:uppercase;vertical-align:middle}.ntm-product-roles-table td,.ntm-product-roles-table th{border:1px solid rgb(var(--neeto-ui-gray-300));padding:8px;text-align:left}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox[type=checkbox]{margin-top:4px}.ntm-roles-table__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 24px);padding:0 40px;width:100%}@media screen and (max-width:1024px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:216px}}@media screen and (max-width:768px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:186px;overflow:hidden;padding:0 20px}}.ntm-roles-table__container{display:flex;height:100%}@media screen and (max-width:768px){.ntm-roles-table__container{height:auto;overflow-y:auto}}.ntm-roles-table__sidebar{border-top:thin solid rgb(var(--neeto-ui-gray-300));height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 28px);min-width:396px;min-width:var(--ntm-roles-sidebar-width);width:396px;width:var(--ntm-roles-sidebar-width)}@media screen and (max-width:768px){.ntm-roles-table__sidebar{height:100%}}.ntm-roles-table-sidebar__search{height:72px;height:var(--ntm-roles-table-header-height);padding:20px 24px}.ntm-roles-table-sidebar__list,.ntm-roles-table-sidebar__search{border-left:thin solid rgb(var(--neeto-ui-gray-300));border-right:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table-sidebar__list{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow-y:auto}.ntm-roles-table-sidebar__list div:last-child .ntm-roles-table-sidebar__list-item:last-child{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table-sidebar__list-item{align-items:center;display:flex;justify-content:space-between;min-height:48px;min-height:var(--ntm-roles-table-cell-height);padding:12px 24px}.ntm-roles-table-sidebar__list-item.ntm-roles-table-sidebar__list-item--highlighted{background-color:rgb(var(--neeto-ui-primary-100));padding:12px 24px}.ntm-roles-table-sidebar__list-item:not(.ntm-roles-table-sidebar__list-item--highlighted){border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table-sidebar__list-item:last-child{border-bottom:none}.ntm-roles-table__columns{border-top:thin solid rgb(var(--neeto-ui-gray-300));flex-grow:1;overflow:hidden}@media screen and (max-width:768px){.ntm-roles-table__columns{overflow:visible;overflow:initial}}.ntm-roles-table__cell{align-items:center;border-right:thin solid rgb(var(--neeto-ui-gray-300));display:flex;height:48px;height:var(--ntm-roles-table-cell-height);justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);min-width:200px;padding:12px 8px;width:100%}.ntm-roles-table-cell__checkbox-wrapper{height:1rem;margin:auto;position:absolute;width:1rem;z-index:10}.ntm-roles-table-cell__checkbox{z-index:10}.ntm-roles-table__header{align-items:center;display:flex;overflow-x:auto}.ntm-roles-table__header .ntm-roles-table__cell{height:72px;height:var(--ntm-roles-table-header-height)}@media screen and (max-width:768px){.ntm-roles-table__header{overflow:visible;overflow:initial}}.ntm-roles-table-header-cell__container{align-items:center;display:flex;justify-content:space-between;overflow:hidden;width:100%}.ntm-roles-table-header__dropdown{flex-shrink:0;margin:3px}.ntm-roles-table-header__role-name{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.ntm-roles-table__rows{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow-y:auto;scrollbar-width:none;width:100%}.ntm-roles-table__rows::-webkit-scrollbar{height:0;width:0}.ntm-roles-table__rows::-webkit-scrollbar-thumb{background:rgb(var(--neeto-ui-gray-300));border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-thumb:hover{border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-track{background:rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__rows div:last-child .ntm-roles-table__row:last-child .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__row{align-items:center;display:flex}.ntm-roles-table__row .ntm-roles-table__cell{overflow:hidden;position:relative}.ntm-roles-table__row .ntm-roles-table__cell p{min-width:340px;opacity:0;width:340px}.ntm-roles-table__row.ntm-roles-table__row--highlighted .ntm-roles-table__cell{background-color:rgb(var(--neeto-ui-primary-100))}.ntm-roles-table__row:not(.ntm-roles-table__row--highlighted) .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__row:last-child .ntm-roles-table__cell{border-bottom:none}.ntm-roles-table-sidebar__drop-down-button{color:rgb(var(--neeto-ui-gray-600));cursor:pointer}.ntm-roles-modal__body>*+*{margin-top:1rem}.ntm-roles-modal__footer{display:flex;gap:.5rem}.ntm-roles-pane__body{margin-bottom:1.5rem;width:100%}.ntm-roles-pane__body-wrapper>*+*{margin-top:1rem}.ntm-roles-pane__body>*+*{margin-top:1.5rem}.ntm-roles-pane__footer{display:flex;gap:.5rem}.ntm-roles-permission__heading{color:rgb(var(--neeto-ui-gray-500));text-transform:uppercase}.ntm-roles-permission__card{background-color:rgb(var(--neeto-ui-white));display:flex;flex-direction:column;gap:.75rem;padding:.4rem 0;position:relative}.ntm-roles-permission__card:after{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:1px;left:-15px;position:absolute;top:14px;width:10px}.ntm-roles-permission__card--description{flex-grow:1}.ntm-roles-permission__card--checkbox{padding:0 .5rem}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container .neeto-ui-checkbox[type=checkbox]:disabled+.neeto-ui-label{cursor:not-allowed;opacity:.5}.ntm-roles-permission__sub-blocks{position:relative}.ntm-roles-permission__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:calc(100% - 14px);left:8px;position:absolute;top:0;width:1px}.ntm-roles-permission__sub-blocks:empty{display:none}.ntm-roles-permission-category-card{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:var(--neeto-ui-rounded);padding:10px 20px}.ntm-roles-permission-category-card>.ntm-roles-permission__card:after{display:none}.ntm-roles-help-url-wrapper{align-items:center;display:flex;justify-content:center;padding:1rem 0;width:100%}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hYnN0cmFjdHMvX3Jvb3Quc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hcHBsaWNhdGlvbi5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL2Jhc2UvX2Jhc2Uuc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL3BhZ2VzL19tZW1iZXJzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX3JvbGVzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvYWJzdHJhY3RzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUNFLHFDQUFBLENBQ0Esa0NBQUEsQ0FDQSwrQkFBQSxDQUNBLG9DQ0NGLENDSkUsc0JBRUUsWUFBQSxDQURBLFVEUUosQ0NKRSxzQkFLRSxZQUFBLENBRkEsTUFBQSxDQUdBLGVBQUEsQ0FMQSxpQkFBQSxDQUNBLEtBQUEsQ0FLQSxpQkFBQSxDQUhBLFdEU0osQ0VuQkEsaUJBSUUsa0JBQUEsQ0FEQSxZQUFBLENBREEsV0FBQSxDQUdBLHNCQUFBLENBSkEsVUYwQkYsQ0czQkEsYUFDRSxhQUFBLENBQ0EsVUg4QkYsQ0c1QkUscUJBQ0UsWUg4QkosQ0czQkUseUJBRUUsWUFBQSxDQURBLFVIOEJKLENHekJJLDRCQUVFLFlBQUEsQ0FFQSxVQUFBLENBREEsNkJBQUEsQ0FGQSxVSDhCTixDR3pCSSwyQkFFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSxTSDJCTixDR3RCSSwwQkFDRSxtQkh3Qk4sQ0dyQkksd0JBRUUsbUJBQUEsQ0FEQSxVSHdCTixDR3RCTSw0QkFDRSxpQkh3QlIsQ0dwQkksMEJBQ0UsWUFBQSxDQUNBLFNIc0JOLENHakJBLDRC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LGlCSm1JSixDSWhJSSwrQ0FHRSxlQUFBLENBRkEsU0FBQSxDQUNBLFdKbUlOLENJN0hJLCtFQUNFLGlESitITixDSTFISSxxRkFDRSxzREo0SE4sQ0l2SEksd0RBQ0Usa0JKeUhOLENJcEhBLDJDQUNFLG1DQUFBLENBQ0EsY0p1SEYsQ0luSEUsMkJBQ0UsZUpzSEosQ0luSEUseUJBQ0UsWUFBQSxDQUNBLFNKcUhKLENJaEhFLHNCQUVFLG9CQUFBLENBREEsVUpvSEosQ0lqSEksa0NBQ0UsZUptSE4sQ0loSEksMEJBQ0UsaUJKa0hOLENJOUdFLHdCQUNFLFlBQUEsQ0FDQSxTSmdISixDSTNHRSwrQkFDRSxtQ0FBQSxDQUNBLHdCSjhHSixDSTNHRSw0QkFDRSwyQ0FBQSxDQUdBLFlBQUEsQ0FDQSxxQkFBQSxDQUNBLFVBQUEsQ0FDQSxlQUFBLENBTEEsaUJKaUhKLENJMUdJLGtDQUNFLDhDQUFBLENBQ0EsVUFBQSxDQUNBLFVBQUEsQ0FDQSxVQUFBLENBQ0EsaUJBQUEsQ0FDQSxRQUFBLENBQ0EsVUo0R04sQ0l6R0kseUNBQ0UsV0oyR04sQ0l4R0ksc0NBQ0UsZUowR04sQ0l2R0ksc0ZBQ0Usc0JKeUdOLENJdkdNLGlKQUVFLGtCQUFBLENBREEsVUowR1IsQ0lwR0Usa0NBQ0UsaUJKc0dKLENJcEdJLHlDQUNFLDhDQUFBLENBRUEsVUFBQSxDQUNBLHdCQUFBLENBQ0EsUUFBQSxDQUNBLGlCQUFBLENBSkEsS0FBQSxDQUtBLFNKc0dOLENJbkdJLHdDQUNFLFlKcUdOLENJaEdBLG9DQUdFLDhDQUFBLENBREEscUNBQUEsQ0FEQSxpQkpxR0YsQ0lqR0ksc0VBQ0UsWUptR04sQ0k5RkEsNEJBR0Usa0JBQUEsQ0FGQSxZQUFBLENBR0Esc0JBQUEsQ0FDQSxjQUFBLENBSEEsVUpvR0YiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogMzk2cHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG4iLCI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogMzk2cHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG5cbi5udG0tc2Nyb2xsYmFyX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwMHB4O1xufVxuLm50bS1zY3JvbGxiYXJfX291dGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMTUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm50bS1lbXB0eS1zdGF0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubnRtLW1lbWJlcnMtcGFnZS1sb2FkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMC43NXJlbTtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2JvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9fYm9keSA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVyc19fYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtYXBwLXJvbGVzX19zZWxlY3Qtd3JhcHBlciB7XG4gIHdpZHRoOiA1MCU7XG4gIG1heC13aWR0aDogMjUwcHg7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzLWVmZmVjdGl2ZS1hcHAtcm9sZXNfX3JvbGUtbmFtZSB7XG4gIHdpZHRoOiA2NyU7XG4gIG1heC13aWR0aDogMzAwcHg7XG59XG5cbi5udG0tbWVtYmVycy1yYWRpby1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtcmFkaW8tZ3JvdXBfX2xhYmVsIHtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwX19pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubnRtLW1lbWJlcnMtZm9ybS1yYWRpby1pdGVtX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogOHB4IDBweCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fd3JhcHBlcjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbn1cbi5udG0tbWVtYmVycy1mb3JtLXJhZGlvLWl0ZW1fX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG59XG5cbi5udG0tcHJvZHVjdC1yb2xlcy10YWJsZSB0aCB7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgZm9udC1zaXplOiB2YXIoLS1uZWV0by11aS10ZXh0LXhzKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGQsXG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGgge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19jaGVja2JveC1hbGlnbi1zdGFydC5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLm50bS1tYW5hZ2UtbWVtYmVyc19fY2hlY2tib3gtYWxpZ24tc3RhcnQubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyNHB4KTtcbiAgcGFkZGluZzogMCA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX3dyYXBwZXIge1xuICAgIC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0OiAyMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDE4NnB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fc2lkZWJhciB7XG4gIHdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyOHB4KTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zZWFyY2gge1xuICBwYWRkaW5nOiAyMHB4IDI0cHg7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3Qge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdCBkaXY6bGFzdC1jaGlsZCAubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgbWluLWhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWNlbGwtaGVpZ2h0KTtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktMTAwKSk7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOm5vdCgubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQpIHtcbiAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb2x1bW5zIHtcbiAgZmxleC1ncm93OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fY29sdW1ucyB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwYWRkaW5nOiAxMnB4IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4ubnRtLXJvbGVzLXRhYmxlX19oZWFkZXIgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9faGVhZGVyIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXItY2VsbF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgbWFyZ2luOiAzcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fcm9sZS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3Mge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtZGVmYXVsdC1zY3JvbGwpIC0gMjhweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3M6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3MgZGl2Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fcm93Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHAge1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMzQwcHg7XG4gIG1pbi13aWR0aDogMzQwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvdzpub3QoLm50bS1yb2xlcy10YWJsZV9fcm93LS1oaWdobGlnaHRlZCkgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3c6bGFzdC1jaGlsZCAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWxfX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4ubnRtLXJvbGVzLW1vZGFsX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5udG0tcm9sZXMtcGFuZV9fYm9keS13cmFwcGVyID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm50bS1yb2xlcy1wYW5lX19ib2R5ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4ubnRtLXJvbGVzLXBhbmVfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2hlYWRpbmcge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xuICB3aWR0aDogMTBweDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZC0tZGVzY3JpcHRpb24ge1xuICBmbGV4LWdyb3c6IDE7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQtLWNoZWNrYm94IHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIC5uZWV0by11aS1jaGVja2JveFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2Nrczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIHRvcDogMDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX3N1Yi1ibG9ja3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy1oZWxwLXVybC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59IiwiLm50bS1zY3JvbGxiYXIge1xuICAmX19pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgfVxuXG4gICZfX291dGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCIubnRtLWVtcHR5LXN0YXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4iLCIubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi1wYWdlLWxvYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYtdGFibGUge1xuICAgICZfX3dyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgIH1cbiAgICAmX19jb2x1bW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmLWZvcm0ge1xuICAgICZfX2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgJl9fYm9keSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICYgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19hcHAtcm9sZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1hcHAtcm9sZXNfX3NlbGVjdC13cmFwcGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1lZmZlY3RpdmUtYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlc19fcm9sZS1uYW1lIHtcbiAgd2lkdGg6IDY3JTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAmX19pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbSB7XG4gICZfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiA4cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG4gIH1cbn1cblxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHtcbiAgdGgge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgICBmb250LXNpemU6IHZhcigtLW5lZXRvLXVpLXRleHQteHMpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2NoZWNrYm94LWFsaWduLXN0YXJ0Lm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIHtcbiAgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uZWV0by11aS1jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxufVxuIiwiLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjRweFxuICApO1xuICBwYWRkaW5nOiAwIDQwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDIxNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodDogMTg2cHg7XG5cbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgd2lkdGg6IHZhcigtLW50bS1yb2xlcy1zaWRlYmFyLXdpZHRoKTtcbiAgaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIDI4cHhcbiAgKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc2VhcmNoIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IHtcbiAgbWF4LWhlaWdodDogY2FsYyhcbiAgICAxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLVxuICAgICAgdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlci1sZWZ0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmlnaHQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG5cbiAgZGl2IHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgbWluLWhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWNlbGwtaGVpZ2h0KTtcblxuICAmLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbiAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIH1cblxuICAmOm5vdCgubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQpIHtcbiAgICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbHVtbnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBhZGRpbmc6IDEycHggOHB4O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCk7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIG92ZXJmbG93OiB1bnNldDtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlci1jZWxsX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fZHJvcGRvd24ge1xuICBtYXJnaW46IDNweDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyX19yb2xlLW5hbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm50bS1yb2xlcy10YWJsZV9fcm93cyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gI3t2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpfSAtIHZhcihcbiAgICAgICAgLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodFxuICAgICAgKSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIEBpbmNsdWRlIHNjcm9sbGJhcnMoXG4gICAgMHB4LFxuICAgIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpLFxuICAgIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpXG4gICk7XG5cbiAgZGl2IHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLm50bS1yb2xlcy10YWJsZV9fcm93IHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBIaWRkZW4gLSBKdXN0IGZvciBoZWlnaHQgcmVmZXJlbmNlXG4gICAgcCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgbWluLXdpZHRoOiAzNDBweDtcbiAgICB9XG4gIH1cblxuICAmLm50bS1yb2xlcy10YWJsZV9fcm93LS1oaWdobGlnaHRlZCB7XG4gICAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCgubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkKSB7XG4gICAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2Ryb3AtZG93bi1idXR0b24ge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNjAwKSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm50bS1yb2xlcy1tb2RhbCB7XG4gICZfX2JvZHkgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gICZfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXBhbmUge1xuICAmX19ib2R5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAmLXdyYXBwZXIgPiAqICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgICYgPiAqICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuICB9XG5cbiAgJl9fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbiB7XG4gICZfX2hlYWRpbmcge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS01MDApKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgJl9fY2FyZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXdoaXRlKSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC43NXJlbTtcbiAgICBwYWRkaW5nOiAwLjRyZW0gMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbGVmdDogLTE1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDE0cHg7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICB9XG5cbiAgICAmLS1kZXNjcmlwdGlvbiB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgJi0tY2hlY2tib3gge1xuICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgfVxuXG4gICAgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAubmVldG8tdWktY2hlY2tib3hbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgLm5lZXRvLXVpLWxhYmVsIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3N1Yi1ibG9ja3Mge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0cHgpO1xuICAgICAgbGVmdDogOHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICB9XG5cbiAgICAmOmVtcHR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbi1jYXRlZ29yeS1jYXJkIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1uZWV0by11aS1yb3VuZGVkKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNDAwKSk7XG4gICYgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtaGVscC11cmwtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuIiwiQG1peGluIHNjcm9sbGJhcnMoXG4gICRzaXplLFxuICAkZm9yZWdyb3VuZC1jb2xvcjogJG5lZXRvLXVpLWdyYXktMzAwLFxuICAkYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRcbikge1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQ6ICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxufVxuIl19 */";
9508
+ var css = ":root{--ntm-roles-table-default-scroll:15px;--ntm-roles-table-cell-height:48px;--ntm-roles-sidebar-width:300px;--ntm-roles-table-header-height:72px}.ntm-scrollbar__inner{height:200px;width:100%}.ntm-scrollbar__outer{height:150px;left:0;overflow:hidden;position:absolute;top:0;visibility:hidden;width:200px}.ntm-empty-state{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ntm-members{overflow:auto;width:100%}.ntm-members-wrapper{display:flex}.ntm-members-page-loader{height:100vh;width:100%}.ntm-members-table__wrapper{display:flex;gap:.75rem;justify-content:space-between;width:100%}.ntm-members-table__column{align-items:center;display:flex;gap:.5rem}.ntm-members-form__header{margin-bottom:.5rem}.ntm-members-form__body{padding-bottom:1rem;width:100%}.ntm-members-form__body>*+*{margin-top:1.5rem}.ntm-members-form__footer{display:flex;gap:.5rem}.ntm-manage-members__header{align-items:flex-start;display:flex}.ntm-manage-members__header>*+*{margin-left:.5rem}.ntm-manage-members__app-roles{align-items:center;display:flex;justify-content:space-between;padding:.5rem 0;width:100%}.ntm-manage-members-app-roles__select-wrapper{max-width:250px;width:50%}.ntm-manage-members-effective-app-roles{align-items:center;display:flex;justify-content:space-between;padding:.25rem 0}.ntm-manage-members-effective-app-roles__role-name{max-width:300px;width:67%}.ntm-members-radio-group,.ntm-members-radio-group .neeto-ui-radio__container--stacked{width:100%}.ntm-members-radio-group__label{padding-right:4px}.ntm-members-radio-group__icon{cursor:pointer}.ntm-members-form-radio-item__wrapper{cursor:pointer;padding:8px 0!important;width:100%}.ntm-members-form-radio-item__wrapper:first-child{padding-top:0!important}.ntm-members-form-radio-item__label{margin-bottom:0!important}.ntm-members-form-radio-item__description,.ntm-product-roles-table th{color:rgb(var(--neeto-ui-gray-700))}.ntm-product-roles-table th{font-size:var(--neeto-ui-text-xs);font-weight:var(--neeto-ui-font-bold);text-transform:uppercase;vertical-align:middle}.ntm-product-roles-table td,.ntm-product-roles-table th{border:1px solid rgb(var(--neeto-ui-gray-300));padding:8px;text-align:left}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-manage-members__checkbox-align-start.neeto-ui-checkbox__wrapper .neeto-ui-checkbox[type=checkbox]{margin-top:4px}.ntm-roles-table__wrapper{height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 24px);padding:0 40px;width:100%}@media screen and (max-width:1024px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:216px}}@media screen and (max-width:768px){.ntm-roles-table__wrapper{--neeto-molecules-main-header-with-breadcrumbs-height:186px;overflow:hidden;padding:0 20px}}.ntm-roles-table__container{display:flex;height:100%}@media screen and (max-width:768px){.ntm-roles-table__container{height:auto;overflow-y:auto}}.ntm-roles-table__sidebar{border-top:thin solid rgb(var(--neeto-ui-gray-300));height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 28px);min-width:300px;min-width:var(--ntm-roles-sidebar-width);width:300px;width:var(--ntm-roles-sidebar-width)}@media screen and (max-width:768px){.ntm-roles-table__sidebar{height:100%}}.ntm-roles-table-sidebar__search{height:72px;height:var(--ntm-roles-table-header-height);padding:20px 24px}.ntm-roles-table-sidebar__list,.ntm-roles-table-sidebar__search{border-left:thin solid rgb(var(--neeto-ui-gray-300));border-right:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table-sidebar__list{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow:auto;white-space:nowrap}.ntm-roles-table-sidebar__list,.ntm-roles-table-sidebar__list div:last-child .ntm-roles-table-sidebar__list-item:last-child{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table-sidebar__list-item{display:flex;flex-direction:column;justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);position:relative}.ntm-roles-table-sidebar__list-item:after{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:1px;left:-15px;position:absolute;top:23px;width:10px}.ntm-roles-table-sidebar__list-item.ntm-roles-table-sidebar__list-item--highlighted{background-color:rgb(var(--neeto-ui-primary-100));flex-direction:row;justify-content:space-between;padding:12px 24px}.ntm-roles-table-sidebar__list-item:last-child{border-bottom:none}.ntm-roles-table__columns{border-top:thin solid rgb(var(--neeto-ui-gray-300));flex-grow:1;overflow:hidden}@media screen and (max-width:768px){.ntm-roles-table__columns{overflow:visible;overflow:initial}}.ntm-roles-table__cell{align-items:center;border-right:thin solid rgb(var(--neeto-ui-gray-300));display:flex;height:48px;height:var(--ntm-roles-table-cell-height);justify-content:center;min-height:48px;min-height:var(--ntm-roles-table-cell-height);min-width:200px;padding:12px 8px;width:100%}.ntm-roles-table-cell__checkbox-wrapper{height:1rem;margin:auto;position:absolute;width:1rem;z-index:10}.ntm-roles-table-cell__checkbox{z-index:10}.ntm-roles-table__header{align-items:center;display:flex;overflow-x:auto}.ntm-roles-table__header .ntm-roles-table__cell{height:72px;height:var(--ntm-roles-table-header-height)}@media screen and (max-width:768px){.ntm-roles-table__header{overflow:visible;overflow:initial}}.ntm-roles-table-header-cell__container{align-items:center;display:flex;justify-content:space-between;overflow:hidden;width:100%}.ntm-roles-table-header__dropdown{flex-shrink:0;margin:3px}.ntm-roles-table-header__role-name{overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:100%}.ntm-roles-table__rows{max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - 115px);max-height:calc(100vh - var(--neeto-molecules-main-header-with-breadcrumbs-height) - var(--ntm-roles-table-header-height) - var(--ntm-roles-table-default-scroll) - 28px);overflow-y:auto;scrollbar-width:none;width:100%}.ntm-roles-table__rows::-webkit-scrollbar{height:0;width:0}.ntm-roles-table__rows::-webkit-scrollbar-thumb{background:rgb(var(--neeto-ui-gray-300));border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-thumb:hover{border-radius:50px}.ntm-roles-table__rows::-webkit-scrollbar-track{background:rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__rows div:last-child .ntm-roles-table__row:last-child .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__row{align-items:center;display:flex}.ntm-roles-table__row .ntm-roles-table__cell{overflow:hidden;position:relative}.ntm-roles-table__row .ntm-roles-table__cell p{min-width:340px;opacity:0;width:340px}.ntm-roles-table__row.ntm-roles-table__row--highlighted .ntm-roles-table__cell{background-color:rgb(var(--neeto-ui-primary-100))}.ntm-roles-table__row:not(.ntm-roles-table__row--highlighted) .ntm-roles-table__cell{border-bottom:thin solid rgb(var(--neeto-ui-gray-300))}.ntm-roles-table__row:last-child .ntm-roles-table__cell{border-bottom:none}.ntm-roles-table-sidebar__drop-down-button{color:rgb(var(--neeto-ui-gray-600));cursor:pointer}.ntm-roles-modal__body>*+*{margin-top:1rem}.ntm-roles-modal__footer{display:flex;gap:.5rem}.ntm-roles-pane__body{margin-bottom:1.5rem;width:100%}.ntm-roles-pane__body-wrapper>*+*{margin-top:1rem}.ntm-roles-pane__body>*+*{margin-top:1.5rem}.ntm-roles-pane__footer{display:flex;gap:.5rem}.ntm-roles-permission__heading{color:rgb(var(--neeto-ui-gray-500));text-transform:uppercase}.ntm-roles-permission__card{background-color:rgb(var(--neeto-ui-white));display:flex;flex-direction:column;gap:.75rem;padding:.4rem 0;position:relative}.ntm-roles-permission__card:after{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:1px;left:-15px;position:absolute;top:14px;width:10px}.ntm-roles-permission__card--description{flex-grow:1}.ntm-roles-permission__card--checkbox{padding:0 .5rem}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container .neeto-ui-checkbox[type=checkbox]:disabled+.neeto-ui-label{cursor:not-allowed;opacity:.5}.ntm-roles-permission__sub-blocks{position:relative}.ntm-roles-permission__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:calc(100% - 14px);left:8px;position:absolute;top:0;width:1px}.ntm-roles-permission__sub-blocks:empty{display:none}.ntm-roles-permission-category-card{border:1px solid rgb(var(--neeto-ui-gray-400));border-radius:var(--neeto-ui-rounded);padding:10px 20px}.ntm-roles-permission-category-card>.ntm-roles-permission__card:after{display:none}.ntm-roles-help-url-wrapper{align-items:center;display:flex;justify-content:center;padding:1rem 0;width:100%}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hYnN0cmFjdHMvX3Jvb3Quc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hcHBsaWNhdGlvbi5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL2Jhc2UvX2Jhc2Uuc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL3BhZ2VzL19tZW1iZXJzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX3JvbGVzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvYWJzdHJhY3RzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUNFLHFDQUFBLENBQ0Esa0NBQUEsQ0FDQSwrQkFBQSxDQUNBLG9DQ0NGLENDSkUsc0JBRUUsWUFBQSxDQURBLFVEUUosQ0NKRSxzQkFLRSxZQUFBLENBRkEsTUFBQSxDQUdBLGVBQUEsQ0FMQSxpQkFBQSxDQUNBLEtBQUEsQ0FLQSxpQkFBQSxDQUhBLFdEU0osQ0VuQkEsaUJBSUUsa0JBQUEsQ0FEQSxZQUFBLENBREEsV0FBQSxDQUdBLHNCQUFBLENBSkEsVUYwQkYsQ0czQkEsYUFDRSxhQUFBLENBQ0EsVUg4QkYsQ0c1QkUscUJBQ0UsWUg4QkosQ0czQkUseUJBRUUsWUFBQSxDQURBLFVIOEJKLENHekJJLDRCQUVFLFlBQUEsQ0FFQSxVQUFBLENBREEsNkJBQUEsQ0FGQSxVSDhCTixDR3pCSSwyQkFFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSxTSDJCTixDR3RCSSwwQkFDRSxtQkh3Qk4sQ0dyQkksd0JBRUUsbUJBQUEsQ0FEQSxVSHdCTixDR3RCTSw0QkFDRSxpQkh3QlIsQ0dwQkksMEJBQ0UsWUFBQSxDQUNBLFNIc0JOLENHakJBLDRC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LW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbDogMTVweDtcbiAgLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQ6IDQ4cHg7XG4gIC0tbnRtLXJvbGVzLXNpZGViYXItd2lkdGg6IDMwMHB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0OiA3MnB4O1xufVxuIiwiOnJvb3Qge1xuICAtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbDogMTVweDtcbiAgLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQ6IDQ4cHg7XG4gIC0tbnRtLXJvbGVzLXNpZGViYXItd2lkdGg6IDMwMHB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0OiA3MnB4O1xufVxuXG4ubnRtLXNjcm9sbGJhcl9faW5uZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAyMDBweDtcbn1cbi5udG0tc2Nyb2xsYmFyX19vdXRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwcHg7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDE1MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5udG0tZW1wdHktc3RhdGUge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLm50bS1tZW1iZXJzIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLm50bS1tZW1iZXJzLXdyYXBwZXIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm50bS1tZW1iZXJzLXBhZ2UtbG9hZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG59XG4ubnRtLW1lbWJlcnMtdGFibGVfX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IDAuNzVyZW07XG59XG4ubnRtLW1lbWJlcnMtdGFibGVfX2NvbHVtbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2hlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5udG0tbWVtYmVycy1mb3JtX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cbi5udG0tbWVtYmVycy1mb3JtX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVyc19faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubnRtLW1hbmFnZS1tZW1iZXJzX19oZWFkZXIgPiAqICsgKiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2FwcC1yb2xlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzLWFwcC1yb2xlc19fc2VsZWN0LXdyYXBwZXIge1xuICB3aWR0aDogNTAlO1xuICBtYXgtd2lkdGg6IDI1MHB4O1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzLWVmZmVjdGl2ZS1hcHAtcm9sZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAuMjVyZW0gMDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1lZmZlY3RpdmUtYXBwLXJvbGVzX19yb2xlLW5hbWUge1xuICB3aWR0aDogNjclO1xuICBtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG4ubnRtLW1lbWJlcnMtcmFkaW8tZ3JvdXAge1xuICB3aWR0aDogMTAwJTtcbn1cbi5udG0tbWVtYmVycy1yYWRpby1ncm91cCAubmVldG8tdWktcmFkaW9fX2NvbnRhaW5lci0tc3RhY2tlZCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwX19sYWJlbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cbi5udG0tbWVtYmVycy1yYWRpby1ncm91cF9faWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDhweCAwcHggIWltcG9ydGFudDtcbn1cbi5udG0tbWVtYmVycy1mb3JtLXJhZGlvLWl0ZW1fX3dyYXBwZXI6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG59XG4ubnRtLW1lbWJlcnMtZm9ybS1yYWRpby1pdGVtX19sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5udG0tbWVtYmVycy1mb3JtLXJhZGlvLWl0ZW1fX2Rlc2NyaXB0aW9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTcwMCkpO1xufVxuXG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGgge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tbmVldG8tdWktdGV4dC14cyk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1uZWV0by11aS1mb250LWJvbGQpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHRkLFxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHRoIHtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDhweDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVyc19fY2hlY2tib3gtYWxpZ24tc3RhcnQubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2NoZWNrYm94LWFsaWduLXN0YXJ0Lm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveFt0eXBlPWNoZWNrYm94XSB7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjRweCk7XG4gIHBhZGRpbmc6IDAgNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAubnRtLXJvbGVzLXRhYmxlX193cmFwcGVyIHtcbiAgICAtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodDogMjE2cHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX3dyYXBwZXIge1xuICAgIC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0OiAxODZweDtcbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3NpZGViYXIge1xuICB3aWR0aDogdmFyKC0tbnRtLXJvbGVzLXNpZGViYXItd2lkdGgpO1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjhweCk7XG4gIG1pbi13aWR0aDogdmFyKC0tbnRtLXJvbGVzLXNpZGViYXItd2lkdGgpO1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fc2lkZWJhciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc2VhcmNoIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IHtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtZGVmYXVsdC1zY3JvbGwpIC0gMjhweCk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IGRpdjpsYXN0LWNoaWxkIC5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAxcHg7XG4gIGxlZnQ6IC0xNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjNweDtcbiAgd2lkdGg6IDEwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLS1oaWdobGlnaHRlZCB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktMTAwKSk7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb2x1bW5zIHtcbiAgZmxleC1ncm93OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fY29sdW1ucyB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwYWRkaW5nOiAxMnB4IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4ubnRtLXJvbGVzLXRhYmxlX19oZWFkZXIgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9faGVhZGVyIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXItY2VsbF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgbWFyZ2luOiAzcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fcm9sZS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3Mge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtZGVmYXVsdC1zY3JvbGwpIC0gMjhweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3M6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3MgZGl2Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fcm93Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHAge1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMzQwcHg7XG4gIG1pbi13aWR0aDogMzQwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvdzpub3QoLm50bS1yb2xlcy10YWJsZV9fcm93LS1oaWdobGlnaHRlZCkgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3c6bGFzdC1jaGlsZCAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWxfX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4ubnRtLXJvbGVzLW1vZGFsX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5udG0tcm9sZXMtcGFuZV9fYm9keS13cmFwcGVyID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm50bS1yb2xlcy1wYW5lX19ib2R5ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4ubnRtLXJvbGVzLXBhbmVfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2hlYWRpbmcge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xuICB3aWR0aDogMTBweDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZC0tZGVzY3JpcHRpb24ge1xuICBmbGV4LWdyb3c6IDE7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQtLWNoZWNrYm94IHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIC5uZWV0by11aS1jaGVja2JveFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2Nrczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIHRvcDogMDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX3N1Yi1ibG9ja3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy1oZWxwLXVybC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59IiwiLm50bS1zY3JvbGxiYXIge1xuICAmX19pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgfVxuXG4gICZfX291dGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCIubnRtLWVtcHR5LXN0YXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4iLCIubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi1wYWdlLWxvYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYtdGFibGUge1xuICAgICZfX3dyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgIH1cbiAgICAmX19jb2x1bW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmLWZvcm0ge1xuICAgICZfX2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgJl9fYm9keSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICYgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19hcHAtcm9sZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1hcHAtcm9sZXNfX3NlbGVjdC13cmFwcGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1lZmZlY3RpdmUtYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlc19fcm9sZS1uYW1lIHtcbiAgd2lkdGg6IDY3JTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAmX19pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbSB7XG4gICZfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiA4cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG4gIH1cbn1cblxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHtcbiAgdGgge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgICBmb250LXNpemU6IHZhcigtLW5lZXRvLXVpLXRleHQteHMpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2NoZWNrYm94LWFsaWduLXN0YXJ0Lm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIHtcbiAgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uZWV0by11aS1jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxufVxuIiwiLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjRweFxuICApO1xuICBwYWRkaW5nOiAwIDQwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDIxNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodDogMTg2cHg7XG5cbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgd2lkdGg6IHZhcigtLW50bS1yb2xlcy1zaWRlYmFyLXdpZHRoKTtcbiAgaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIDI4cHhcbiAgKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc2VhcmNoIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IHtcbiAgbWF4LWhlaWdodDogY2FsYyhcbiAgICAxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLVxuICAgICAgdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIGRpdiB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtIHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBsZWZ0OiAtMTVweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyM3B4O1xuICAgIHdpZHRoOiAxMHB4O1xuICB9XG5cblxuICAmLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbiAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fY29sdW1ucyB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIG92ZXJmbG93OiB1bnNldDtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWNlbGwtaGVpZ2h0KTtcbiAgbWluLWhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWNlbGwtaGVpZ2h0KTtcbiAgcGFkZGluZzogMTJweCA4cHg7XG5cbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94LXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMXJlbTtcbiAgd2lkdGg6IDFyZW07XG4gIG1hcmdpbjogYXV0bztcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtY2VsbF9fY2hlY2tib3gge1xuICB6LWluZGV4OiAxMDtcbn1cblxuLm50bS1yb2xlcy10YWJsZV9faGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgb3ZlcmZsb3cteDogYXV0bztcblxuICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyLWNlbGxfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyX19kcm9wZG93biB7XG4gIG1hcmdpbjogM3B4O1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX3JvbGUtbmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSAje3ZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCl9IC0gdmFyKFxuICAgICAgICAtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0XG4gICAgICApIC0gdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsKSAtIDI4cHhcbiAgKTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgQGluY2x1ZGUgc2Nyb2xsYmFycyhcbiAgICAwcHgsXG4gICAgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSksXG4gICAgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSlcbiAgKTtcblxuICBkaXYge1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAubnRtLXJvbGVzLXRhYmxlX19yb3cge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC8vIEhpZGRlbiAtIEp1c3QgZm9yIGhlaWdodCByZWZlcmVuY2VcbiAgICBwIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB3aWR0aDogMzQwcHg7XG4gICAgICBtaW4td2lkdGg6IDM0MHB4O1xuICAgIH1cbiAgfVxuXG4gICYubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIHtcbiAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1wcmltYXJ5LTEwMCkpO1xuICAgIH1cbiAgfVxuXG4gICY6bm90KC5udG0tcm9sZXMtdGFibGVfX3Jvdy0taGlnaGxpZ2h0ZWQpIHtcbiAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fZHJvcC1kb3duLWJ1dHRvbiB7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS02MDApKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubnRtLXJvbGVzLW1vZGFsIHtcbiAgJl9fYm9keSA+ICogKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG5cbiAgJl9fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG5cbi5udG0tcm9sZXMtcGFuZSB7XG4gICZfX2JvZHkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICYtd3JhcHBlciA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgJiA+ICogKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmX19mb290ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uIHtcbiAgJl9faGVhZGluZyB7XG4gICAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTUwMCkpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cblxuICAmX19jYXJkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIHBhZGRpbmc6IDAuNHJlbSAwO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBsZWZ0OiAtMTVweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMTRweDtcbiAgICAgIHdpZHRoOiAxMHB4O1xuICAgIH1cblxuICAgICYtLWRlc2NyaXB0aW9uIHtcbiAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICB9XG5cbiAgICAmLS1jaGVja2JveCB7XG4gICAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICB9XG5cbiAgICAubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgIC5uZWV0by11aS1jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQgKyAubmVldG8tdWktbGFiZWwge1xuICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9fc3ViLWJsb2NrcyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgICAgdG9wOiAwO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTRweCk7XG4gICAgICBsZWZ0OiA4cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMXB4O1xuICAgIH1cblxuICAgICY6ZW1wdHkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQge1xuICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLW5lZXRvLXVpLXJvdW5kZWQpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS00MDApKTtcbiAgJiA+IC5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy1oZWxwLXVybC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG4iLCJAbWl4aW4gc2Nyb2xsYmFycyhcbiAgJHNpemUsXG4gICRmb3JlZ3JvdW5kLWNvbG9yOiAkbmVldG8tdWktZ3JheS0zMDAsXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudFxuKSB7XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcblxuICAmOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6ICRzaXplO1xuICAgIGhlaWdodDogJHNpemU7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJGZvcmVncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG59XG4iXX0= */";
9424
9509
  n(css,{});
9425
9510
 
9426
9511
  var Profile = {