@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.cjs.js CHANGED
@@ -10,8 +10,8 @@ var Container = require('@bigbinary/neeto-molecules/Container');
10
10
  var NeetoHeader = require('@bigbinary/neeto-molecules/Header');
11
11
  var Button = require('@bigbinary/neetoui/Button');
12
12
  var reactI18next = require('react-i18next');
13
+ var reactQuery = require('@tanstack/react-query');
13
14
  var ramda = require('ramda');
14
- var reactQuery = require('react-query');
15
15
  var axios = require('axios');
16
16
  var i18next = require('i18next');
17
17
  var constants = require('@bigbinary/neeto-commons-frontend/constants');
@@ -44,7 +44,7 @@ var Toastr = require('@bigbinary/neetoui/Toastr');
44
44
  var withImmutableActions = require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
45
45
  var zustand = require('zustand');
46
46
  var shallow = require('zustand/shallow');
47
- var devtools = require('react-query/devtools');
47
+ var reactQueryDevtools = require('@tanstack/react-query-devtools');
48
48
  var Checkbox = require('@bigbinary/neetoui/Checkbox');
49
49
  var classnames = require('classnames');
50
50
  var Input$1 = require('@bigbinary/neetoui/Input');
@@ -313,13 +313,16 @@ var useFetchGroups = function useFetchGroups(_ref) {
313
313
  pageSize = _ref.pageSize,
314
314
  _ref$searchTerm = _ref.searchTerm,
315
315
  searchTerm = _ref$searchTerm === void 0 ? "" : _ref$searchTerm;
316
- return reactQuery.useQuery([QUERY_KEYS.GROUPS, searchTerm, page, pageSize], function () {
317
- return groupsApi.list({
318
- searchTerm: searchTerm,
319
- page: page,
320
- pageSize: pageSize,
321
- loadDetails: true
322
- });
316
+ return reactQuery.useQuery({
317
+ queryKey: [QUERY_KEYS.GROUPS, searchTerm, page, pageSize],
318
+ queryFn: function queryFn() {
319
+ return groupsApi.list({
320
+ searchTerm: searchTerm,
321
+ page: page,
322
+ pageSize: pageSize,
323
+ loadDetails: true
324
+ });
325
+ }
323
326
  });
324
327
  };
325
328
  var useCreateGroup = function useCreateGroup() {
@@ -341,9 +344,11 @@ var useDeleteGroup = function useDeleteGroup() {
341
344
  });
342
345
  };
343
346
  var useFetchGroup = function useFetchGroup(id) {
344
- return reactQuery.useQuery([QUERY_KEYS.GROUPS, id], function () {
345
- return groupsApi.show(id);
346
- }, {
347
+ return reactQuery.useQuery({
348
+ queryKey: [QUERY_KEYS.GROUPS, id],
349
+ queryFn: function queryFn() {
350
+ return groupsApi.show(id);
351
+ },
347
352
  select: ramda.prop("group"),
348
353
  enabled: !!id
349
354
  });
@@ -375,7 +380,10 @@ var usersApi = {
375
380
  };
376
381
 
377
382
  var useFetchUsers = function useFetchUsers() {
378
- return reactQuery.useQuery([QUERY_KEYS.GROUP_MEMBERS], usersApi.list);
383
+ return reactQuery.useQuery({
384
+ queryKey: [QUERY_KEYS.USERS],
385
+ queryFn: usersApi.list
386
+ });
379
387
  };
380
388
 
381
389
  var MAXIMUM_NAME_LENGTH = 25;
@@ -540,10 +548,10 @@ var Form = function Form(_ref) {
540
548
  isLoading = _useFetchUsers.isLoading;
541
549
  var _useCreateGroup = useCreateGroup(config),
542
550
  create = _useCreateGroup.mutate,
543
- isCreating = _useCreateGroup.isLoading;
551
+ isCreating = _useCreateGroup.isPending;
544
552
  var _useUpdateGroup = useUpdateGroup(config),
545
553
  update = _useUpdateGroup.mutate,
546
- isUpdating = _useUpdateGroup.isLoading;
554
+ isUpdating = _useUpdateGroup.isPending;
547
555
  var initialValues = isEdit ? group : ramda.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 : {});
548
556
  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);
549
557
  var getUserIds = function getUserIds(members) {
@@ -1337,8 +1345,8 @@ var Edit = function Edit(_ref) {
1337
1345
  });
1338
1346
  };
1339
1347
 
1340
- 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; }
1341
- 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; }
1348
+ 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; }
1349
+ 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; }
1342
1350
  var List = function List(_ref) {
1343
1351
  var _config$table$deleteA, _config$table, _config$table$deleteA2;
1344
1352
  var config = _ref.config,
@@ -1361,7 +1369,7 @@ var List = function List(_ref) {
1361
1369
  var totalCount = groups === null || groups === void 0 ? void 0 : groups.length;
1362
1370
  var _useDeleteGroup = useDeleteGroup(config),
1363
1371
  groupDelete = _useDeleteGroup.mutate,
1364
- isDeleting = _useDeleteGroup.isLoading;
1372
+ isDeleting = _useDeleteGroup.isPending;
1365
1373
  var getGroupDetail = function getGroupDetail(id) {
1366
1374
  return neetoCist.findById(id, groups);
1367
1375
  };
@@ -1428,7 +1436,7 @@ var List = function List(_ref) {
1428
1436
  })]
1429
1437
  }) : /*#__PURE__*/jsxRuntime.jsx("div", {
1430
1438
  className: "flex h-full w-full flex-grow items-center justify-center",
1431
- children: /*#__PURE__*/jsxRuntime.jsx(NoData__default["default"], _objectSpread$k({
1439
+ children: /*#__PURE__*/jsxRuntime.jsx(NoData__default["default"], _objectSpread$l({
1432
1440
  title: t("neetoTeamMembers.helpers.emptyTable", {
1433
1441
  entity: initializers.taxonomies.group.plural
1434
1442
  })
@@ -1925,6 +1933,70 @@ try {
1925
1933
 
1926
1934
  var _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);
1927
1935
 
1936
+ function _objectWithoutPropertiesLoose(source, excluded) {
1937
+ if (source == null) return {};
1938
+ var target = {};
1939
+ var sourceKeys = Object.keys(source);
1940
+ var key, i;
1941
+ for (i = 0; i < sourceKeys.length; i++) {
1942
+ key = sourceKeys[i];
1943
+ if (excluded.indexOf(key) >= 0) continue;
1944
+ target[key] = source[key];
1945
+ }
1946
+ return target;
1947
+ }
1948
+
1949
+ function _objectWithoutProperties(source, excluded) {
1950
+ if (source == null) return {};
1951
+ var target = _objectWithoutPropertiesLoose(source, excluded);
1952
+ var key, i;
1953
+ if (Object.getOwnPropertySymbols) {
1954
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
1955
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
1956
+ key = sourceSymbolKeys[i];
1957
+ if (excluded.indexOf(key) >= 0) continue;
1958
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
1959
+ target[key] = source[key];
1960
+ }
1961
+ }
1962
+ return target;
1963
+ }
1964
+
1965
+ var _excluded$4 = ["keysToInvalidate"],
1966
+ _excluded2$3 = ["onSuccess"];
1967
+ 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; }
1968
+ 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; }
1969
+ var useMutationWithInvalidation = function useMutationWithInvalidation(mutationFn, _ref) {
1970
+ var keysToInvalidate = _ref.keysToInvalidate,
1971
+ options = _objectWithoutProperties(_ref, _excluded$4);
1972
+ var queryClient = reactQuery.useQueryClient();
1973
+ var _onSuccess = options.onSuccess,
1974
+ otherOptions = _objectWithoutProperties(options, _excluded2$3);
1975
+ return reactQuery.useMutation(_objectSpread$k({
1976
+ mutationFn: mutationFn,
1977
+ onSuccess: function onSuccess(data, variables, context) {
1978
+ keysToInvalidate.forEach(function (key) {
1979
+ var result = key;
1980
+ if (typeof key === "function") {
1981
+ result = key(data, variables, context);
1982
+ }
1983
+ if (_typeof$1(result) === "object") {
1984
+ queryClient.invalidateQueries(result);
1985
+ }
1986
+ if (typeof result === "string") {
1987
+ queryClient.invalidateQueries({
1988
+ queryKey: [key]
1989
+ });
1990
+ }
1991
+ queryClient.invalidateQueries({
1992
+ queryKey: key
1993
+ });
1994
+ });
1995
+ _onSuccess === null || _onSuccess === void 0 || _onSuccess(data, variables, context);
1996
+ }
1997
+ }, otherOptions));
1998
+ };
1999
+
1928
2000
  var fetchCountries = function fetchCountries() {
1929
2001
  return axios__default["default"].get("".concat(BASE_URL, "/profile/countries"));
1930
2002
  };
@@ -1945,13 +2017,14 @@ var profileApi = {
1945
2017
  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; }
1946
2018
  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; }
1947
2019
  var useFetchProfile = function useFetchProfile(options) {
1948
- return reactQuery.useQuery([QUERY_KEYS.USER_PROFILE], profileApi.fetchUserDetails, _objectSpread$j({
1949
- staleTime: constants.DEFAULT_STALE_TIME,
1950
- refetchOnWindowFocus: true
2020
+ return reactQuery.useQuery(_objectSpread$j({
2021
+ queryKey: [QUERY_KEYS.USER_PROFILE],
2022
+ queryFn: profileApi.fetchUserDetails,
2023
+ staleTime: constants.DEFAULT_STALE_TIME
1951
2024
  }, options));
1952
2025
  };
1953
2026
  var useUpdateProfileMutation = function useUpdateProfileMutation(options) {
1954
- return reactUtils.useMutationWithInvalidation(profileApi.updateUser, _objectSpread$j(_objectSpread$j({
2027
+ return useMutationWithInvalidation(profileApi.updateUser, _objectSpread$j(_objectSpread$j({
1955
2028
  keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]]
1956
2029
  }, options), {}, {
1957
2030
  onSuccess: function onSuccess() {
@@ -1980,7 +2053,9 @@ var VALIDATION_ERRORS = {
1980
2053
  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; }
1981
2054
  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; }
1982
2055
  var useFetchCountries = function useFetchCountries(options) {
1983
- return reactQuery.useQuery([QUERY_KEYS.COUNTRIES_LIST], profileApi.fetchCountries, _objectSpread$i({
2056
+ return reactQuery.useQuery(_objectSpread$i({
2057
+ queryKey: [QUERY_KEYS.COUNTRIES_LIST],
2058
+ queryFn: profileApi.fetchCountries,
1984
2059
  staleTime: constants.DEFAULT_STALE_TIME
1985
2060
  }, options));
1986
2061
  };
@@ -2234,7 +2309,7 @@ var ChangeProfile = function ChangeProfile(_ref) {
2234
2309
  handleTimeZoneChange = _useCountries$handleT === void 0 ? neetoCist.noop : _useCountries$handleT;
2235
2310
  var _useUpdateProfileMuta = useUpdateProfileMutation(),
2236
2311
  updateProfile = _useUpdateProfileMuta.mutate,
2237
- isUpdatingProfile = _useUpdateProfileMuta.isLoading;
2312
+ isUpdatingProfile = _useUpdateProfileMuta.isPending;
2238
2313
  var initialFormValues = {
2239
2314
  firstName: firstName,
2240
2315
  lastName: lastName,
@@ -3883,9 +3958,9 @@ var withReactQuery = function withReactQuery(Component) {
3883
3958
  var QueryWrapper = function QueryWrapper(props) {
3884
3959
  return /*#__PURE__*/jsxRuntime.jsxs(reactQuery.QueryClientProvider, {
3885
3960
  client: queryClient,
3886
- children: [/*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread$g({}, props)), /*#__PURE__*/jsxRuntime.jsx(devtools.ReactQueryDevtools, {
3961
+ children: [/*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread$g({}, props)), /*#__PURE__*/jsxRuntime.jsx(reactQueryDevtools.ReactQueryDevtools, {
3887
3962
  initialIsOpen: false,
3888
- position: "bottom-right"
3963
+ position: "left"
3889
3964
  })]
3890
3965
  });
3891
3966
  };
@@ -3903,42 +3978,15 @@ function ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
3903
3978
  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; }
3904
3979
  var useFetchPermissions = function useFetchPermissions() {
3905
3980
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3906
- return reactQuery.useQuery(QUERY_KEYS.PERMISSIONS, permissionsApi.fetch, _objectSpread$f({
3981
+ return reactQuery.useQuery(_objectSpread$f({
3982
+ queryKey: [QUERY_KEYS.PERMISSIONS],
3983
+ queryFn: permissionsApi.fetch,
3907
3984
  select: function select(response) {
3908
3985
  return response === null || response === void 0 ? void 0 : response.permissions;
3909
3986
  }
3910
3987
  }, options));
3911
3988
  };
3912
3989
 
3913
- function _objectWithoutPropertiesLoose(source, excluded) {
3914
- if (source == null) return {};
3915
- var target = {};
3916
- var sourceKeys = Object.keys(source);
3917
- var key, i;
3918
- for (i = 0; i < sourceKeys.length; i++) {
3919
- key = sourceKeys[i];
3920
- if (excluded.indexOf(key) >= 0) continue;
3921
- target[key] = source[key];
3922
- }
3923
- return target;
3924
- }
3925
-
3926
- function _objectWithoutProperties(source, excluded) {
3927
- if (source == null) return {};
3928
- var target = _objectWithoutPropertiesLoose(source, excluded);
3929
- var key, i;
3930
- if (Object.getOwnPropertySymbols) {
3931
- var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
3932
- for (i = 0; i < sourceSymbolKeys.length; i++) {
3933
- key = sourceSymbolKeys[i];
3934
- if (excluded.indexOf(key) >= 0) continue;
3935
- if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
3936
- target[key] = source[key];
3937
- }
3938
- }
3939
- return target;
3940
- }
3941
-
3942
3990
  var fetch$2 = function fetch() {
3943
3991
  return axios__default["default"].get("".concat(BASE_URL, "/global_roles"));
3944
3992
  };
@@ -3979,7 +4027,9 @@ function ownKeys$e(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymb
3979
4027
  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; }
3980
4028
  var useFetchRoles = function useFetchRoles() {
3981
4029
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3982
- return reactQuery.useQuery(QUERY_KEYS.ROLES, organizationRolesApi.fetch, _objectSpread$e({
4030
+ return reactQuery.useQuery(_objectSpread$e({
4031
+ queryKey: [QUERY_KEYS.ROLES],
4032
+ queryFn: organizationRolesApi.fetch,
3983
4033
  select: function select(response) {
3984
4034
  return response === null || response === void 0 ? void 0 : response.organizationRoles;
3985
4035
  }
@@ -3987,15 +4037,17 @@ var useFetchRoles = function useFetchRoles() {
3987
4037
  };
3988
4038
  var useFetchGlobalRoles = function useFetchGlobalRoles() {
3989
4039
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
3990
- return reactQuery.useQuery(QUERY_KEYS.GLOBAL_ROLES, globalRolesApi.fetch, _objectSpread$e({}, options));
4040
+ return reactQuery.useQuery(_objectSpread$e({
4041
+ queryKey: [QUERY_KEYS.GLOBAL_ROLES],
4042
+ queryFn: globalRolesApi.fetch
4043
+ }, options));
3991
4044
  };
3992
4045
  var useCreateRole = function useCreateRole(_ref) {
3993
4046
  var _onSuccess = _ref.onSuccess,
3994
4047
  options = _objectWithoutProperties(_ref, _excluded$3);
3995
- return reactQuery.useMutation(organizationRolesApi.create, _objectSpread$e({
4048
+ return useMutationWithInvalidation(organizationRolesApi.create, _objectSpread$e({
4049
+ keysToInvalidate: [QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
3996
4050
  onSuccess: function onSuccess() {
3997
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
3998
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
3999
4051
  _onSuccess === null || _onSuccess === void 0 || _onSuccess();
4000
4052
  }
4001
4053
  }, options));
@@ -4003,15 +4055,13 @@ var useCreateRole = function useCreateRole(_ref) {
4003
4055
  var useUpdateRole = function useUpdateRole(_ref2) {
4004
4056
  var _onSuccess2 = _ref2.onSuccess,
4005
4057
  options = _objectWithoutProperties(_ref2, _excluded2$2);
4006
- return reactQuery.useMutation(function (_ref3) {
4058
+ return useMutationWithInvalidation(function (_ref3) {
4007
4059
  var id = _ref3.id,
4008
4060
  payload = _ref3.payload;
4009
4061
  return organizationRolesApi.update(id, payload);
4010
4062
  }, _objectSpread$e({
4063
+ keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
4011
4064
  onSuccess: function onSuccess() {
4012
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
4013
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
4014
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
4015
4065
  _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();
4016
4066
  }
4017
4067
  }, options));
@@ -4020,15 +4070,13 @@ var useDestroyRole = function useDestroyRole(_ref4) {
4020
4070
  var _ref4$onSuccess = _ref4.onSuccess,
4021
4071
  _onSuccess3 = _ref4$onSuccess === void 0 ? neetoCist.noop : _ref4$onSuccess,
4022
4072
  options = _objectWithoutProperties(_ref4, _excluded3);
4023
- return reactQuery.useMutation(function (_ref5) {
4073
+ return useMutationWithInvalidation(function (_ref5) {
4024
4074
  var id = _ref5.id,
4025
4075
  payload = _ref5.payload;
4026
4076
  return organizationRolesApi.destroy(id, payload);
4027
4077
  }, _objectSpread$e({
4078
+ keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
4028
4079
  onSuccess: function onSuccess() {
4029
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
4030
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
4031
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
4032
4080
  _onSuccess3 === null || _onSuccess3 === void 0 || _onSuccess3();
4033
4081
  }
4034
4082
  }, options));
@@ -4036,11 +4084,9 @@ var useDestroyRole = function useDestroyRole(_ref4) {
4036
4084
  var useBulkUpdateRoles = function useBulkUpdateRoles(_ref6) {
4037
4085
  var _onSuccess4 = _ref6.onSuccess,
4038
4086
  options = _objectWithoutProperties(_ref6, _excluded4);
4039
- return reactQuery.useMutation(organizationRolesApi.bulkUpdate, _objectSpread$e({
4087
+ return useMutationWithInvalidation(organizationRolesApi.bulkUpdate, _objectSpread$e({
4088
+ keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES, QUERY_KEYS.ROLES],
4040
4089
  onSuccess: function onSuccess() {
4041
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
4042
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
4043
- queryClient.invalidateQueries(QUERY_KEYS.ROLES);
4044
4090
  _onSuccess4 === null || _onSuccess4 === void 0 || _onSuccess4();
4045
4091
  }
4046
4092
  }, options));
@@ -4433,12 +4479,12 @@ var ManageRoles = function ManageRoles(_ref) {
4433
4479
  onSuccess: onClose
4434
4480
  }),
4435
4481
  createRole = _useCreateRole.mutate,
4436
- isCreatingRole = _useCreateRole.isLoading;
4482
+ isCreatingRole = _useCreateRole.isPending;
4437
4483
  var _useUpdateRole = useUpdateRole({
4438
4484
  onSuccess: onClose
4439
4485
  }),
4440
4486
  updateRole = _useUpdateRole.mutate,
4441
- isUpdatingRole = _useUpdateRole.isLoading;
4487
+ isUpdatingRole = _useUpdateRole.isPending;
4442
4488
  var isEdit = neetoCist.isPresent(selectedRole);
4443
4489
  var isSubmitting = isCreatingRole || isUpdatingRole;
4444
4490
  var handleSubmit = function handleSubmit(formValues) {
@@ -4461,9 +4507,9 @@ var ManageRoles = function ManageRoles(_ref) {
4461
4507
  var isReadOnly = selectedRole.kind === "system";
4462
4508
  var isDisabled = ADMIN_ROLES.includes(selectedRole.name) && isReadOnly;
4463
4509
  return /*#__PURE__*/jsxRuntime.jsxs(Pane__default["default"], {
4464
- initialFocusRef: inputReference,
4465
4510
  isOpen: isOpen,
4466
4511
  onClose: onClose,
4512
+ initialFocusRef: inputReference,
4467
4513
  children: [/*#__PURE__*/jsxRuntime.jsx(Pane__default["default"].Header, {
4468
4514
  children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
4469
4515
  "data-cy": "ntm-add-role-title",
@@ -4797,7 +4843,7 @@ var Delete = function Delete(_ref) {
4797
4843
  onSuccess: onClose
4798
4844
  }),
4799
4845
  deleteRole = _useDestroyRole.mutate,
4800
- isDeleting = _useDestroyRole.isLoading;
4846
+ isDeleting = _useDestroyRole.isPending;
4801
4847
  var handleDelete = function handleDelete() {
4802
4848
  var _roles$find;
4803
4849
  var id = selectedRole.id;
@@ -4812,8 +4858,9 @@ var Delete = function Delete(_ref) {
4812
4858
  });
4813
4859
  };
4814
4860
  return /*#__PURE__*/jsxRuntime.jsx(Alert__default["default"], {
4815
- cancelButtonLabel: t("neetoTeamMembers.buttons.cancel"),
4816
4861
  isOpen: isOpen,
4862
+ onClose: onClose,
4863
+ cancelButtonLabel: t("neetoTeamMembers.buttons.cancel"),
4817
4864
  isSubmitting: isDeleting,
4818
4865
  submitButtonLabel: t("neetoTeamMembers.buttons.delete"),
4819
4866
  title: t("neetoTeamMembers.labels.deleteRole"),
@@ -4823,7 +4870,6 @@ var Delete = function Delete(_ref) {
4823
4870
  name: selectedRole === null || selectedRole === void 0 ? void 0 : selectedRole.name
4824
4871
  }
4825
4872
  }),
4826
- onClose: onClose,
4827
4873
  onSubmit: handleDelete
4828
4874
  });
4829
4875
  };
@@ -4906,19 +4952,25 @@ var ToggleDropdown = function ToggleDropdown(_ref) {
4906
4952
  });
4907
4953
  };
4908
4954
 
4909
- var renderDescription = function renderDescription(permissions) {
4955
+ var renderDescription = function renderDescription(permissions, filteredPermissions) {
4910
4956
  return permissions === null || permissions === void 0 ? void 0 : permissions.map(function (_ref) {
4911
4957
  var id = _ref.id,
4912
- description = _ref.description;
4913
- return /*#__PURE__*/jsxRuntime.jsx("div", {
4914
- className: "ntm-roles-table-sidebar__list-item",
4915
- "data-name": description,
4916
- children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
4917
- "data-cy": "ntm-permission-category-description",
4918
- lineHeight: "normal",
4919
- style: "body2",
4920
- children: description
4921
- })
4958
+ description = _ref.description,
4959
+ children = _ref.children;
4960
+ return /*#__PURE__*/jsxRuntime.jsxs(require$$0.Fragment, {
4961
+ children: [filteredPermissions.includes(id) && /*#__PURE__*/jsxRuntime.jsx("div", {
4962
+ className: "ntm-roles-table-sidebar__list-item",
4963
+ "data-name": description,
4964
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
4965
+ "data-cy": "ntm-permission-category-description",
4966
+ lineHeight: "normal",
4967
+ style: "body2",
4968
+ children: description
4969
+ })
4970
+ }, id), /*#__PURE__*/jsxRuntime.jsx("div", {
4971
+ className: "neeto-ui-relative neeto-ui-pl-6",
4972
+ children: renderDescription(children, filteredPermissions)
4973
+ })]
4922
4974
  }, id);
4923
4975
  });
4924
4976
  };
@@ -4935,11 +4987,24 @@ var Sidebar = function Sidebar(_ref) {
4935
4987
  setSearchTerm = _ref.setSearchTerm,
4936
4988
  filteredGroupPermissions = _ref.filteredGroupPermissions,
4937
4989
  toggleDropdown = _ref.toggleDropdown,
4938
- isScrollPresent = _ref.isScrollPresent;
4990
+ isScrollPresent = _ref.isScrollPresent,
4991
+ _ref$permissions = _ref.permissions,
4992
+ permissions = _ref$permissions === void 0 ? [] : _ref$permissions,
4993
+ _ref$permissionRelati = _ref.permissionRelationConfig,
4994
+ permissionRelationConfig = _ref$permissionRelati === void 0 ? {} : _ref$permissionRelati;
4939
4995
  var _useTranslation = reactI18next.useTranslation(),
4940
4996
  t = _useTranslation.t;
4941
4997
  var categories = Array.from(filteredGroupPermissions.keys());
4942
4998
  var searchWrapperStyle = isScrollPresent ? getSearchWrapperStyle() : {};
4999
+ var permissionsNameMap = ramda.groupBy(ramda.prop("name"))(permissions);
5000
+ var groupedPermissionsWithChildren = require$$0.useMemo(function () {
5001
+ var childrenRemovedFromRoot = getChildrenRemovedFromRoot({
5002
+ permissions: permissions,
5003
+ permissionsNameMap: permissionsNameMap,
5004
+ permissionRelationConfig: permissionRelationConfig
5005
+ });
5006
+ return ramda.groupBy(ramda.prop("category"))(childrenRemovedFromRoot);
5007
+ }, [permissions]);
4943
5008
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
4944
5009
  className: "ntm-roles-table__sidebar",
4945
5010
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
@@ -4963,7 +5028,6 @@ var Sidebar = function Sidebar(_ref) {
4963
5028
  children: categories.map(function (category, index) {
4964
5029
  var groupedPermissions = filteredGroupPermissions.get(category);
4965
5030
  var isPermissionVisible = groupedPermissions.get("isPermissionVisible");
4966
- var permissions = groupedPermissions.get("permissions");
4967
5031
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
4968
5032
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
4969
5033
  className: "ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted cursor-pointer",
@@ -4979,7 +5043,10 @@ var Sidebar = function Sidebar(_ref) {
4979
5043
  }), /*#__PURE__*/jsxRuntime.jsx(ToggleDropdown, {
4980
5044
  isVisible: isPermissionVisible
4981
5045
  })]
4982
- }), isPermissionVisible && renderDescription(permissions)]
5046
+ }), isPermissionVisible && /*#__PURE__*/jsxRuntime.jsx("div", {
5047
+ className: "ml-[12px] px-[24px]",
5048
+ children: renderDescription(groupedPermissionsWithChildren[category], ramda.pluck("id", filteredGroupPermissions.get(category).get("permissions") || []))
5049
+ })]
4983
5050
  }, index);
4984
5051
  })
4985
5052
  })
@@ -4988,6 +5055,7 @@ var Sidebar = function Sidebar(_ref) {
4988
5055
  };
4989
5056
 
4990
5057
  var Table = function Table(_ref) {
5058
+ var _config$permissionRel;
4991
5059
  var config = _ref.config,
4992
5060
  filteredRoles = _ref.filteredRoles,
4993
5061
  roles = _ref.roles,
@@ -5010,7 +5078,7 @@ var Table = function Table(_ref) {
5010
5078
  _useState6 = _slicedToArray(_useState5, 2),
5011
5079
  isScrollPresent = _useState6[0],
5012
5080
  setIsScrollPresent = _useState6[1];
5013
- var _useState7 = require$$0.useState(),
5081
+ var _useState7 = require$$0.useState(undefined),
5014
5082
  _useState8 = _slicedToArray(_useState7, 2),
5015
5083
  selectedRole = _useState8[0],
5016
5084
  setSelectedRole = _useState8[1];
@@ -5052,9 +5120,11 @@ var Table = function Table(_ref) {
5052
5120
  children: [/*#__PURE__*/jsxRuntime.jsx(Sidebar, {
5053
5121
  filteredGroupPermissions: filteredGroupPermissions,
5054
5122
  isScrollPresent: isScrollPresent,
5123
+ permissions: permissions,
5055
5124
  searchTerm: searchTerm,
5056
5125
  setSearchTerm: setSearchTerm,
5057
- toggleDropdown: toggleDropdown
5126
+ toggleDropdown: toggleDropdown,
5127
+ permissionRelationConfig: (_config$permissionRel = config === null || config === void 0 ? void 0 : config.permissionRelation) !== null && _config$permissionRel !== void 0 ? _config$permissionRel : {}
5058
5128
  }), /*#__PURE__*/jsxRuntime.jsx(Columns, {
5059
5129
  config: config,
5060
5130
  filteredGroupPermissions: filteredGroupPermissions,
@@ -7271,32 +7341,38 @@ function _objectSpread$a(e) { for (var r = 1; r < arguments.length; r++) { var t
7271
7341
  var useFetchMembers = function useFetchMembers() {
7272
7342
  var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7273
7343
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
7274
- return reactQuery.useQuery([QUERY_KEYS.TEAMS, params], function () {
7275
- return teamsApi.fetch(params);
7276
- }, _objectSpread$a(_objectSpread$a({
7344
+ return reactQuery.useQuery(_objectSpread$a(_objectSpread$a({
7345
+ queryKey: [QUERY_KEYS.TEAMS, params],
7346
+ queryFn: function queryFn() {
7347
+ return teamsApi.fetch(params);
7348
+ },
7277
7349
  select: ramda.identity,
7278
- keepPreviousData: true
7350
+ placeholderData: reactQuery.keepPreviousData
7279
7351
  }, options), {}, {
7280
7352
  refetchOnWindowFocus: false
7281
7353
  }));
7282
7354
  };
7283
7355
  var useFetchMembersCountsPerCategory = function useFetchMembersCountsPerCategory() {
7284
7356
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7285
- return reactQuery.useQuery([QUERY_KEYS.TEAMS], teamsApi.fetchCountsPerCategory, _objectSpread$a(_objectSpread$a({
7357
+ return reactQuery.useQuery(_objectSpread$a(_objectSpread$a({
7358
+ queryKey: [QUERY_KEYS.TEAMS],
7359
+ queryFn: teamsApi.fetchCountsPerCategory,
7286
7360
  select: ramda.identity,
7287
- keepPreviousData: true
7361
+ placeholderData: reactQuery.keepPreviousData
7288
7362
  }, options), {}, {
7289
7363
  refetchOnWindowFocus: false
7290
7364
  }));
7291
7365
  };
7292
7366
  var useCreateMember = function useCreateMember() {
7293
7367
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
7294
- return reactQuery.useMutation(teamsApi.create, options);
7368
+ return reactQuery.useMutation(_objectSpread$a({
7369
+ mutationFn: teamsApi.create
7370
+ }, options));
7295
7371
  };
7296
7372
  var useUpdateMember = function useUpdateMember(_ref) {
7297
7373
  var _onSuccess = _ref.onSuccess,
7298
7374
  options = _objectWithoutProperties(_ref, _excluded$2);
7299
- return reactUtils.useMutationWithInvalidation(function (_ref2) {
7375
+ return useMutationWithInvalidation(function (_ref2) {
7300
7376
  var id = _ref2.id,
7301
7377
  payload = _ref2.payload;
7302
7378
  return teamsApi.update(id, payload);
@@ -7310,7 +7386,7 @@ var useUpdateMember = function useUpdateMember(_ref) {
7310
7386
  var useBulkUpdateMembers = function useBulkUpdateMembers(_ref3) {
7311
7387
  var _onSuccess2 = _ref3.onSuccess,
7312
7388
  options = _objectWithoutProperties(_ref3, _excluded2$1);
7313
- return reactUtils.useMutationWithInvalidation(teamsApi.bulkUpdate, _objectSpread$a({
7389
+ return useMutationWithInvalidation(teamsApi.bulkUpdate, _objectSpread$a({
7314
7390
  keysToInvalidate: [QUERY_KEYS.TEAMS, QUERY_KEYS.TEAMS_DEPENDENCIES],
7315
7391
  onSuccess: function onSuccess() {
7316
7392
  _onSuccess2 === null || _onSuccess2 === void 0 || _onSuccess2();
@@ -7318,26 +7394,35 @@ var useBulkUpdateMembers = function useBulkUpdateMembers(_ref3) {
7318
7394
  }, options));
7319
7395
  };
7320
7396
  var refetchMembers = function refetchMembers() {
7321
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS);
7322
- queryClient.invalidateQueries(QUERY_KEYS.TEAMS_DEPENDENCIES);
7397
+ queryClient.invalidateQueries({
7398
+ queryKey: [QUERY_KEYS.TEAMS]
7399
+ });
7400
+ queryClient.invalidateQueries({
7401
+ queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES]
7402
+ });
7323
7403
  };
7324
7404
  var useFetchFilterOptions = function useFetchFilterOptions(_ref4) {
7325
7405
  var _ref4$params = _ref4.params,
7326
7406
  params = _ref4$params === void 0 ? {} : _ref4$params,
7327
7407
  _ref4$options = _ref4.options,
7328
7408
  options = _ref4$options === void 0 ? {} : _ref4$options;
7329
- return reactQuery.useQuery([QUERY_KEYS.TEAMS_DEPENDENCIES, params], function () {
7330
- return teamsApi.fetchFilterOptions(params);
7331
- }, _objectSpread$a(_objectSpread$a({
7409
+ return reactQuery.useQuery(_objectSpread$a(_objectSpread$a({
7410
+ queryKey: [QUERY_KEYS.TEAMS_DEPENDENCIES, params],
7411
+ queryFn: function queryFn() {
7412
+ return teamsApi.fetchFilterOptions(params);
7413
+ },
7332
7414
  select: ramda.identity
7333
7415
  }, options), {}, {
7334
7416
  refetchOnWindowFocus: false
7335
7417
  }));
7336
7418
  };
7337
7419
  var useMembersCreationStatus = function useMembersCreationStatus(jobId, options) {
7338
- return reactQuery.useQuery([QUERY_KEYS.CREATION_STATUS, jobId], function () {
7339
- return teamsApi.creationStatus(jobId);
7340
- }, options);
7420
+ return reactQuery.useQuery(_objectSpread$a({
7421
+ queryKey: [QUERY_KEYS.CREATION_STATUS, jobId],
7422
+ queryFn: function queryFn() {
7423
+ return teamsApi.creationStatus(jobId);
7424
+ }
7425
+ }, options));
7341
7426
  };
7342
7427
 
7343
7428
  var _getQueryParams = utils$3.getQueryParams(),
@@ -9011,7 +9096,7 @@ var ManageMember = function ManageMember(_ref) {
9011
9096
  }
9012
9097
  }),
9013
9098
  updateMember = _useUpdateMember.mutate,
9014
- isUpdatingMember = _useUpdateMember.isLoading;
9099
+ isUpdatingMember = _useUpdateMember.isPending;
9015
9100
  var hasRoleChanged = function hasRoleChanged(_ref4) {
9016
9101
  var submitted = _ref4.submitted,
9017
9102
  values = _ref4.values;
@@ -9268,7 +9353,7 @@ var TeamMembers = function TeamMembers(_ref) {
9268
9353
  }
9269
9354
  }),
9270
9355
  updateMember = _useUpdateMember.mutate,
9271
- isUpdatingMember = _useUpdateMember.isLoading;
9356
+ isUpdatingMember = _useUpdateMember.isPending;
9272
9357
  var filteredRoles = getFilteredRoles(roles, config);
9273
9358
  var _useTeams = useTeams({
9274
9359
  config: config,
@@ -9486,7 +9571,7 @@ var useMembersSidenav = function useMembersSidenav(_ref) {
9486
9571
 
9487
9572
  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}}
9488
9573
 
9489
- 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hYnN0cmFjdHMvX3Jvb3Quc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9hcHBsaWNhdGlvbi5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL2Jhc2UvX2Jhc2Uuc2NzcyIsImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL19lbXB0eS1zdGF0ZS5zY3NzIiwiYXBwL2phdmFzY3JpcHQvc3JjL3N0eWxlc2hlZXRzL3BhZ2VzL19tZW1iZXJzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvcGFnZXMvX3JvbGVzLnNjc3MiLCJhcHAvamF2YXNjcmlwdC9zcmMvc3R5bGVzaGVldHMvYWJzdHJhY3RzL19taXhpbnMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUNFLHFDQUFBLENBQ0Esa0NBQUEsQ0FDQSwrQkFBQSxDQUNBLG9DQ0NGLENDSkUsc0JBRUUsWUFBQSxDQURBLFVEUUosQ0NKRSxzQkFLRSxZQUFBLENBRkEsTUFBQSxDQUdBLGVBQUEsQ0FMQSxpQkFBQSxDQUNBLEtBQUEsQ0FLQSxpQkFBQSxDQUhBLFdEU0osQ0VuQkEsaUJBSUUsa0JBQUEsQ0FEQSxZQUFBLENBREEsV0FBQSxDQUdBLHNCQUFBLENBSkEsVUYwQkYsQ0czQkEsYUFDRSxhQUFBLENBQ0EsVUg4QkYsQ0c1QkUscUJBQ0UsWUg4QkosQ0czQkUseUJBRUUsWUFBQSxDQURBLFVIOEJKLENHekJJLDRCQUVFLFlBQUEsQ0FFQSxVQUFBLENBREEsNkJBQUEsQ0FGQSxVSDhCTixDR3pCSSwyQkFFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSxTSDJCTixDR3RCSSwwQkFDRSxtQkh3Qk4sQ0dyQkksd0JBRUUsbUJBQUEsQ0FEQSxVSHdCTixDR3RCTSw0QkFDRSxpQkh3QlIsQ0dwQkksMEJBQ0UsWUFBQSxDQUNBLFNIc0JOLENHakJBLDRCQUVFLHNCQUFBLENBREEsWUhxQkYsQ0dsQkUsZ0NBQ0UsaUJIb0JKLENHaEJBLCtCQUVFLGtCQUFBLENBREEsWUFBQSxDQUVBLDZCQUFBLENBRUEsZUFBQSxDQURBLFVIb0JGLENHaEJBLDhDQUVFLGVBQUEsQ0FEQSxTSG9CRixDR2hCQSx3Q0FFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSw2QkFBQSxDQUNBLGdCSG1CRixDR2hCQSxtREFFRSxlQUFBLENBREEsU0hvQkYsQ0dkRSxzRkFDRSxVSG9CSixDR2pCRSxnQ0FDRSxpQkhtQkosQ0doQkUsK0JBQ0UsY0hrQkosQ0diRSxzQ0FFRSxjQUFBLENBQ0EsdUJBQUEsQ0FGQSxVSGtCSixDR2ZJLGtEQUNFLHVCSGlCTixDR2JFLG9DQUNFLHlCSGVKLENHTkUsc0VBTEUsbUNIc0JKLENHakJFLDRCQUVFLGlDQUFBLENBRUEscUNBQUEsQ0FDQSx3QkFBQSxDQUZBLHFCSGNKLENHVkUsd0RBRUUsOENBQUEsQ0FFQSxXQUFBLENBREEsZUhhSixDR1BFLG1HQUNFLHNCSFVKLENHUkUsdUdBQ0UsY0hVSixDSWxKQSwwQkFFRSxzRkFBQSxDQUdBLGNBQUEsQ0FKQSxVSnVKRixDSWpKRSxxQ0FQRiwwQkFRSSwyREpvSkYsQ0FDRixDSWxKRSxvQ0FYRiwwQkFZSSwyREFBQSxDQUdBLGVBQUEsQ0FEQSxjSnFKRixDQUNGLENJakpBLDRCQUNFLFlBQUEsQ0FDQSxXSm9KRixDSWxKRSxvQ0FKRiw0QkFNSSxXQUFBLENBREEsZUpzSkYsQ0FDRixDSWxKQSwwQkFNRSxtREFBQSxDQUpBLHNGQUFBLENBR0EsZUFBQSxDQUFBLHdDQUFBLENBSkEsV0FBQSxDQUFBLG9DSndKRixDSWxKRSxvQ0FQRiwwQkFRSSxXSnFKRixDQUNGLENJbEpBLGlDQUVFLFdBQUEsQ0FBQSwyQ0FBQSxDQURBLGlCSndKRixDSWxKQSxnRUFKRSxvREFBQSxDQUNBLHFESjRKRixDSXpKQSwrQkFDRSwyRkFBQSxDQUFBLHlLQUFBLENBS0EsZUptSkYsQ0k1SVEsNkZBQ0Usc0RKOElWLENJdklBLG9DQUdFLGtCQUFBLENBRkEsWUFBQSxDQUNBLDZCQUFBLENBR0EsZUFBQSxDQUFBLDZDQUFBLENBREEsaUJKMklGLENJeElFLG9GQUNFLGlEQUFBLENBQ0EsaUJKMElKLENJdklFLDBGQUNFLHNESnlJSixDSXRJRSwrQ0FDRSxrQkp3SUosQ0lwSUEsMEJBR0UsbURBQUEsQ0FGQSxXQUFBLENBQ0EsZUp3SUYsQ0lySUUsb0NBTEYsMEJBTUksZ0JBQUEsQ0FBQSxnQkp3SUYsQ0FDRixDSXJJQSx1QkFTRSxrQkFBQSxDQUVBLHFEQUFBLENBSkEsWUFBQSxDQUpBLFdBQUEsQ0FBQSx5Q0FBQSxDQUtBLHNCQUFBLENBSkEsZUFBQSxDQUFBLDZDQUFBLENBRkEsZUFBQSxDQUdBLGdCQUFBLENBSkEsVUpnSkYsQ0luSUEsd0NBRUUsV0FBQSxDQUVBLFdBQUEsQ0FIQSxpQkFBQSxDQUVBLFVBQUEsQ0FFQSxVSnNJRixDSW5JQSxnQ0FDRSxVSnNJRixDSW5JQSx5QkFFRSxrQkFBQSxDQURBLFlBQUEsQ0FFQSxlSnNJRixDSXBJRSxnREFDRSxXQUFBLENBQUEsMkNKc0lKLENJbklFLG9DQVRGLHlCQVVJLGdCQUFBLENBQUEsZ0JKc0lGLENBQ0YsQ0luSUEsd0NBR0Usa0JBQUEsQ0FGQSxZQUFBLENBQ0EsNkJBQUEsQ0FHQSxlQUFBLENBREEsVUp1SUYsQ0luSUEsa0NBRUUsYUFBQSxDQURBLFVKdUlGLENJbklBLG1DQUNFLGVBQUEsQ0FHQSxpQkFBQSxDQUZBLHNCQUFBLENBQ0Esa0JBQUEsQ0FFQSxVSnNJRixDSW5JQSx1QkFFRSwyRkFBQSxDQUFBLHlLQUFBLENBS0EsZUFBQSxDQ25LQSxvQkFBQSxDRDZKQSxVSnlJRixDS3BTRSwwQ0FFRSxRRGlLQSxDQ2xLQSxPTHVTSixDS25TRSxnREFDRSx3Q0Q4SkEsQ0M3SkEsa0JMcVNKLENLbFNFLHNEQUNFLGtCTG9TSixDS2pTRSxnREFDRSx3Q0xtU0osQ0l0SVUsOEZBQ0Usc0RKd0laLENJaElBLHNCQUVFLGtCQUFBLENBREEsWUpvSUYsQ0lqSUUsNkNBQ0UsZUFBQSxDQUNBLGlCSm1JSixDSWhJSSwrQ0FHRSxlQUFBLENBRkEsU0FBQSxDQUNBLFdKbUlOLENJN0hJLCtFQUNFLGlESitITixDSTFISSxxRkFDRSxzREo0SE4sQ0l2SEksd0RBQ0Usa0JKeUhOLENJcEhBLDJDQUNFLG1DQUFBLENBQ0EsY0p1SEYsQ0luSEUsMkJBQ0UsZUpzSEosQ0luSEUseUJBQ0UsWUFBQSxDQUNBLFNKcUhKLENJaEhFLHNCQUVFLG9CQUFBLENBREEsVUpvSEosQ0lqSEksa0NBQ0UsZUptSE4sQ0loSEksMEJBQ0UsaUJKa0hOLENJOUdFLHdCQUNFLFlBQUEsQ0FDQSxTSmdISixDSTNHRSwrQkFDRSxtQ0FBQSxDQUNBLHdCSjhHSixDSTNHRSw0QkFDRSwyQ0FBQSxDQUdBLFlBQUEsQ0FDQSxxQkFBQSxDQUNBLFVBQUEsQ0FDQSxlQUFBLENBTEEsaUJKaUhKLENJMUdJLGtDQUNFLDhDQUFBLENBQ0EsVUFBQSxDQUNBLFVBQUEsQ0FDQSxVQUFBLENBQ0EsaUJBQUEsQ0FDQSxRQUFBLENBQ0EsVUo0R04sQ0l6R0kseUNBQ0UsV0oyR04sQ0l4R0ksc0NBQ0UsZUowR04sQ0l2R0ksc0ZBQ0Usc0JKeUdOLENJdkdNLGlKQUVFLGtCQUFBLENBREEsVUowR1IsQ0lwR0Usa0NBQ0UsaUJKc0dKLENJcEdJLHlDQUNFLDhDQUFBLENBRUEsVUFBQSxDQUNBLHdCQUFBLENBQ0EsUUFBQSxDQUNBLGlCQUFBLENBSkEsS0FBQSxDQUtBLFNKc0dOLENJbkdJLHdDQUNFLFlKcUdOLENJaEdBLG9DQUdFLDhDQUFBLENBREEscUNBQUEsQ0FEQSxpQkpxR0YsQ0lqR0ksc0VBQ0UsWUptR04sQ0k5RkEsNEJBR0Usa0JBQUEsQ0FGQSxZQUFBLENBR0Esc0JBQUEsQ0FDQSxjQUFBLENBSEEsVUpvR0YiLCJzb3VyY2VzQ29udGVudCI6WyI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogMzk2cHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG4iLCI6cm9vdCB7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWRlZmF1bHQtc2Nyb2xsOiAxNXB4O1xuICAtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodDogNDhweDtcbiAgLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aDogMzk2cHg7XG4gIC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQ6IDcycHg7XG59XG5cbi5udG0tc2Nyb2xsYmFyX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwMHB4O1xufVxuLm50bS1zY3JvbGxiYXJfX291dGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDBweDtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogMTUwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm50bS1lbXB0eS1zdGF0ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubnRtLW1lbWJlcnMtcGFnZS1sb2FkZXIge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGdhcDogMC43NXJlbTtcbn1cbi5udG0tbWVtYmVycy10YWJsZV9fY29sdW1uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9faGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2JvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4ubnRtLW1lbWJlcnMtZm9ybV9fYm9keSA+ICogKyAqIHtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xufVxuLm50bS1tZW1iZXJzLWZvcm1fX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciA+ICogKyAqIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVyc19fYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtYXBwLXJvbGVzX19zZWxlY3Qtd3JhcHBlciB7XG4gIHdpZHRoOiA1MCU7XG4gIG1heC13aWR0aDogMjUwcHg7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzLWVmZmVjdGl2ZS1hcHAtcm9sZXNfX3JvbGUtbmFtZSB7XG4gIHdpZHRoOiA2NyU7XG4gIG1heC13aWR0aDogMzAwcHg7XG59XG5cbi5udG0tbWVtYmVycy1yYWRpby1ncm91cCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubnRtLW1lbWJlcnMtcmFkaW8tZ3JvdXBfX2xhYmVsIHtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwX19pY29uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ubnRtLW1lbWJlcnMtZm9ybS1yYWRpby1pdGVtX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogOHB4IDBweCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fd3JhcHBlcjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAwcHggIWltcG9ydGFudDtcbn1cbi5udG0tbWVtYmVycy1mb3JtLXJhZGlvLWl0ZW1fX2xhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbV9fZGVzY3JpcHRpb24ge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG59XG5cbi5udG0tcHJvZHVjdC1yb2xlcy10YWJsZSB0aCB7XG4gIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgZm9udC1zaXplOiB2YXIoLS1uZWV0by11aS10ZXh0LXhzKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGQsXG4ubnRtLXByb2R1Y3Qtcm9sZXMtdGFibGUgdGgge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogOHB4O1xufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19jaGVja2JveC1hbGlnbi1zdGFydC5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktY2hlY2tib3hfX2NvbnRhaW5lciB7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuLm50bS1tYW5hZ2UtbWVtYmVyc19fY2hlY2tib3gtYWxpZ24tc3RhcnQubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9Y2hlY2tib3hdIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX193cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyNHB4KTtcbiAgcGFkZGluZzogMCA0MHB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX3dyYXBwZXIge1xuICAgIC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0OiAyMTZweDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDE4NnB4O1xuICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5udG0tcm9sZXMtdGFibGVfX2NvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fc2lkZWJhciB7XG4gIHdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSAyOHB4KTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19zZWFyY2gge1xuICBwYWRkaW5nOiAyMHB4IDI0cHg7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xuICBib3JkZXItbGVmdDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgYm9yZGVyLXJpZ2h0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3Qge1xuICBtYXgtaGVpZ2h0OiBjYWxjKDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdCBkaXY6bGFzdC1jaGlsZCAubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgbWluLWhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWNlbGwtaGVpZ2h0KTtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktMTAwKSk7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOm5vdCgubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQpIHtcbiAgYm9yZGVyLWJvdHRvbTogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fbGlzdC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb2x1bW5zIHtcbiAgZmxleC1ncm93OiAxO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItdG9wOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9fY29sdW1ucyB7XG4gICAgb3ZlcmZsb3c6IHVuc2V0O1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBtaW4taGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtY2VsbC1oZWlnaHQpO1xuICBwYWRkaW5nOiAxMnB4IDhweDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4ubnRtLXJvbGVzLXRhYmxlX19oZWFkZXIgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLm50bS1yb2xlcy10YWJsZV9faGVhZGVyIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXItY2VsbF9fY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1oZWFkZXJfX2Ryb3Bkb3duIHtcbiAgbWFyZ2luOiAzcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fcm9sZS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3Mge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCkgLSB2YXIoLS1udG0tcm9sZXMtdGFibGUtZGVmYXVsdC1zY3JvbGwpIC0gMjhweCk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3M6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDBweDtcbiAgaGVpZ2h0OiAwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3dzOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gIGJhY2tncm91bmQ6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xufVxuLm50bS1yb2xlcy10YWJsZV9fcm93czo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvd3MgZGl2Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fcm93Omxhc3QtY2hpbGQgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3JvdyAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHAge1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMzQwcHg7XG4gIG1pbi13aWR0aDogMzQwcHg7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3cubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkIC5udG0tcm9sZXMtdGFibGVfX2NlbGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbn1cbi5udG0tcm9sZXMtdGFibGVfX3Jvdzpub3QoLm50bS1yb2xlcy10YWJsZV9fcm93LS1oaWdobGlnaHRlZCkgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG59XG4ubnRtLXJvbGVzLXRhYmxlX19yb3c6bGFzdC1jaGlsZCAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19kcm9wLWRvd24tYnV0dG9uIHtcbiAgY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTYwMCkpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5udG0tcm9sZXMtbW9kYWxfX2JvZHkgPiAqICsgKiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4ubnRtLXJvbGVzLW1vZGFsX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi5udG0tcm9sZXMtcGFuZV9fYm9keS13cmFwcGVyID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLm50bS1yb2xlcy1wYW5lX19ib2R5ID4gKiArICoge1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG59XG4ubnRtLXJvbGVzLXBhbmVfX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2hlYWRpbmcge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNTAwKSk7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktd2hpdGUpKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDAuNzVyZW07XG4gIHBhZGRpbmc6IDAuNHJlbSAwO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgbGVmdDogLTE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxNHB4O1xuICB3aWR0aDogMTBweDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZC0tZGVzY3JpcHRpb24ge1xuICBmbGV4LWdyb3c6IDE7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQtLWNoZWNrYm94IHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIC5uZWV0by11aS1jaGVja2JveFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCArIC5uZWV0by11aS1sYWJlbCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2Nrczo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIHRvcDogMDtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxNHB4KTtcbiAgbGVmdDogOHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxcHg7XG59XG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX3N1Yi1ibG9ja3M6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZCB7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tbmVldG8tdWktcm91bmRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTQwMCkpO1xufVxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy1oZWxwLXVybC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59IiwiLm50bS1zY3JvbGxiYXIge1xuICAmX19pbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcbiAgfVxuXG4gICZfX291dGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDE1MHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG59XG4iLCIubnRtLWVtcHR5LXN0YXRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4iLCIubnRtLW1lbWJlcnMge1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG5cbiAgJi13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG5cbiAgJi1wYWdlLWxvYWRlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgfVxuXG4gICYtdGFibGUge1xuICAgICZfX3dyYXBwZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZ2FwOiAwLjc1cmVtO1xuICAgIH1cbiAgICAmX19jb2x1bW4ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBnYXA6IDAuNXJlbTtcbiAgICB9XG4gIH1cblxuICAmLWZvcm0ge1xuICAgICZfX2hlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuXG4gICAgJl9fYm9keSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgJiA+ICogKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2Zvb3RlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICYgPiAqICsgKiB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLW1hbmFnZS1tZW1iZXJzX19hcHAtcm9sZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1hcHAtcm9sZXNfX3NlbGVjdC13cmFwcGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbn1cblxuLm50bS1tYW5hZ2UtbWVtYmVycy1lZmZlY3RpdmUtYXBwLXJvbGVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwLjI1cmVtIDA7XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnMtZWZmZWN0aXZlLWFwcC1yb2xlc19fcm9sZS1uYW1lIHtcbiAgd2lkdGg6IDY3JTtcbiAgbWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLm50bS1tZW1iZXJzLXJhZGlvLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIC5uZWV0by11aS1yYWRpb19fY29udGFpbmVyLS1zdGFja2VkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICZfX2xhYmVsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAmX19pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLm50bS1tZW1iZXJzLWZvcm0tcmFkaW8taXRlbSB7XG4gICZfX3dyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiA4cHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJl9fbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gICZfX2Rlc2NyaXB0aW9uIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNzAwKSk7XG4gIH1cbn1cblxuLm50bS1wcm9kdWN0LXJvbGVzLXRhYmxlIHtcbiAgdGgge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS03MDApKTtcbiAgICBmb250LXNpemU6IHZhcigtLW5lZXRvLXVpLXRleHQteHMpO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLW5lZXRvLXVpLWZvbnQtYm9sZCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogOHB4O1xuICB9XG59XG5cbi5udG0tbWFuYWdlLW1lbWJlcnNfX2NoZWNrYm94LWFsaWduLXN0YXJ0Lm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIHtcbiAgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uZWV0by11aS1jaGVja2JveFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxufVxuIiwiLm50bS1yb2xlcy10YWJsZV9fd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGNhbGMoXG4gICAgMTAwdmggLSB2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpIC0gMjRweFxuICApO1xuICBwYWRkaW5nOiAwIDQwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQ6IDIxNnB4O1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodDogMTg2cHg7XG5cbiAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDEwMCU7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlX19zaWRlYmFyIHtcbiAgd2lkdGg6IHZhcigtLW50bS1yb2xlcy1zaWRlYmFyLXdpZHRoKTtcbiAgaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gdmFyKC0tbmVldG8tbW9sZWN1bGVzLW1haW4taGVhZGVyLXdpdGgtYnJlYWRjcnVtYnMtaGVpZ2h0KSAtIDI4cHhcbiAgKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1udG0tcm9sZXMtc2lkZWJhci13aWR0aCk7XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGUtc2lkZWJhcl9fc2VhcmNoIHtcbiAgcGFkZGluZzogMjBweCAyNHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1oZWFkZXItaGVpZ2h0KTtcbiAgYm9yZGVyLWxlZnQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0IHtcbiAgbWF4LWhlaWdodDogY2FsYyhcbiAgICAxMDB2aCAtIHZhcigtLW5lZXRvLW1vbGVjdWxlcy1tYWluLWhlYWRlci13aXRoLWJyZWFkY3J1bWJzLWhlaWdodCkgLVxuICAgICAgdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWhlYWRlci1oZWlnaHQpIC1cbiAgICAgIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlci1sZWZ0OiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBib3JkZXItcmlnaHQ6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG5cbiAgZGl2IHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgbWluLWhlaWdodDogdmFyKC0tbnRtLXJvbGVzLXRhYmxlLWNlbGwtaGVpZ2h0KTtcblxuICAmLm50bS1yb2xlcy10YWJsZS1zaWRlYmFyX19saXN0LWl0ZW0tLWhpZ2hsaWdodGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbiAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIH1cblxuICAmOm5vdCgubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2xpc3QtaXRlbS0taGlnaGxpZ2h0ZWQpIHtcbiAgICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2NvbHVtbnMge1xuICBmbGV4LWdyb3c6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci10b3A6IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBvdmVyZmxvdzogdW5zZXQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIG1pbi1oZWlnaHQ6IHZhcigtLW50bS1yb2xlcy10YWJsZS1jZWxsLWhlaWdodCk7XG4gIHBhZGRpbmc6IDEycHggOHB4O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGJvcmRlci1yaWdodDogdGhpbiBzb2xpZCByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbn1cblxuLm50bS1yb2xlcy10YWJsZS1jZWxsX19jaGVja2JveC13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBtYXJnaW46IGF1dG87XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWNlbGxfX2NoZWNrYm94IHtcbiAgei1pbmRleDogMTA7XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX2hlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgaGVpZ2h0OiB2YXIoLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodCk7XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIG92ZXJmbG93OiB1bnNldDtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlci1jZWxsX19jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubnRtLXJvbGVzLXRhYmxlLWhlYWRlcl9fZHJvcGRvd24ge1xuICBtYXJnaW46IDNweDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5udG0tcm9sZXMtdGFibGUtaGVhZGVyX19yb2xlLW5hbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm50bS1yb2xlcy10YWJsZV9fcm93cyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiBjYWxjKFxuICAgIDEwMHZoIC0gI3t2YXIoLS1uZWV0by1tb2xlY3VsZXMtbWFpbi1oZWFkZXItd2l0aC1icmVhZGNydW1icy1oZWlnaHQpfSAtIHZhcihcbiAgICAgICAgLS1udG0tcm9sZXMtdGFibGUtaGVhZGVyLWhlaWdodFxuICAgICAgKSAtIHZhcigtLW50bS1yb2xlcy10YWJsZS1kZWZhdWx0LXNjcm9sbCkgLSAyOHB4XG4gICk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIEBpbmNsdWRlIHNjcm9sbGJhcnMoXG4gICAgMHB4LFxuICAgIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpLFxuICAgIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpXG4gICk7XG5cbiAgZGl2IHtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLm50bS1yb2xlcy10YWJsZV9fcm93IHtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAubnRtLXJvbGVzLXRhYmxlX19jZWxsIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IHRoaW4gc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMzAwKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtdGFibGVfX3JvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAvLyBIaWRkZW4gLSBKdXN0IGZvciBoZWlnaHQgcmVmZXJlbmNlXG4gICAgcCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgd2lkdGg6IDM0MHB4O1xuICAgICAgbWluLXdpZHRoOiAzNDBweDtcbiAgICB9XG4gIH1cblxuICAmLm50bS1yb2xlcy10YWJsZV9fcm93LS1oaWdobGlnaHRlZCB7XG4gICAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS0xMDApKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCgubnRtLXJvbGVzLXRhYmxlX19yb3ctLWhpZ2hsaWdodGVkKSB7XG4gICAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgICBib3JkZXItYm90dG9tOiB0aGluIHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgIH1cbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgLm50bS1yb2xlcy10YWJsZV9fY2VsbCB7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubnRtLXJvbGVzLXRhYmxlLXNpZGViYXJfX2Ryb3AtZG93bi1idXR0b24ge1xuICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNjAwKSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm50bS1yb2xlcy1tb2RhbCB7XG4gICZfX2JvZHkgPiAqICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxuXG4gICZfX2Zvb3RlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDAuNXJlbTtcbiAgfVxufVxuXG4ubnRtLXJvbGVzLXBhbmUge1xuICAmX19ib2R5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAmLXdyYXBwZXIgPiAqICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgICYgPiAqICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgfVxuICB9XG5cbiAgJl9fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbiB7XG4gICZfX2hlYWRpbmcge1xuICAgIGNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS01MDApKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgJl9fY2FyZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXdoaXRlKSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC43NXJlbTtcbiAgICBwYWRkaW5nOiAwLjRyZW0gMDtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgbGVmdDogLTE1cHg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDE0cHg7XG4gICAgICB3aWR0aDogMTBweDtcbiAgICB9XG5cbiAgICAmLS1kZXNjcmlwdGlvbiB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuXG4gICAgJi0tY2hlY2tib3gge1xuICAgICAgcGFkZGluZzogMCAwLjVyZW07XG4gICAgfVxuXG4gICAgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAubmVldG8tdWktY2hlY2tib3hbdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgLm5lZXRvLXVpLWxhYmVsIHtcbiAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICZfX3N1Yi1ibG9ja3Mge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDE0cHgpO1xuICAgICAgbGVmdDogOHB4O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDFweDtcbiAgICB9XG5cbiAgICAmOmVtcHR5IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbi1jYXRlZ29yeS1jYXJkIHtcbiAgcGFkZGluZzogMTBweCAyMHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1uZWV0by11aS1yb3VuZGVkKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktNDAwKSk7XG4gICYgPiAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5udG0tcm9sZXMtaGVscC11cmwtd3JhcHBlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuIiwiQG1peGluIHNjcm9sbGJhcnMoXG4gICRzaXplLFxuICAkZm9yZWdyb3VuZC1jb2xvcjogJG5lZXRvLXVpLWdyYXktMzAwLFxuICAkYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRcbikge1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJhY2tncm91bmQ6ICRmb3JlZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIH1cblxuICAmOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgfVxufVxuIl19 */";
9574
+ 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= */";
9490
9575
  n(css,{});
9491
9576
 
9492
9577
  var Profile = {