@homebound/beam 3.24.0 → 3.25.0
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/Css.json +1 -1
- package/dist/index.cjs +557 -301
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +4 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +44 -3
- package/dist/index.d.ts +44 -3
- package/dist/index.js +461 -212
- package/dist/index.js.map +1 -1
- package/dist/truss.css +16 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -92,6 +92,8 @@ __export(index_exports, {
|
|
|
92
92
|
DnDGridItemHandle: () => DnDGridItemHandle,
|
|
93
93
|
EXPANDABLE_HEADER: () => EXPANDABLE_HEADER,
|
|
94
94
|
EditColumnsButton: () => EditColumnsButton,
|
|
95
|
+
EnvironmentBanner: () => EnvironmentBanner,
|
|
96
|
+
EnvironmentBannerLayout: () => EnvironmentBannerLayout,
|
|
95
97
|
ErrorMessage: () => ErrorMessage,
|
|
96
98
|
FieldGroup: () => FieldGroup,
|
|
97
99
|
FilterDropdownMenu: () => _FilterDropdownMenu,
|
|
@@ -190,6 +192,8 @@ __export(index_exports, {
|
|
|
190
192
|
actionColumn: () => actionColumn,
|
|
191
193
|
applyRowFn: () => applyRowFn,
|
|
192
194
|
assignDefaultColumnIds: () => assignDefaultColumnIds,
|
|
195
|
+
bannerAndNavbarChromeTop: () => bannerAndNavbarChromeTop,
|
|
196
|
+
beamEnvironmentBannerLayoutHeightVar: () => beamEnvironmentBannerLayoutHeightVar,
|
|
193
197
|
beamLayoutViewportHeightVar: () => beamLayoutViewportHeightVar,
|
|
194
198
|
beamLayoutViewportWidthVar: () => beamLayoutViewportWidthVar,
|
|
195
199
|
beamNavbarLayoutHeightVar: () => beamNavbarLayoutHeightVar,
|
|
@@ -240,6 +244,7 @@ __export(index_exports, {
|
|
|
240
244
|
dragHandleColumn: () => dragHandleColumn,
|
|
241
245
|
emptyCell: () => emptyCell,
|
|
242
246
|
ensureClientSideSortValueIsSortable: () => ensureClientSideSortValueIsSortable,
|
|
247
|
+
environmentBannerSizePx: () => environmentBannerSizePx,
|
|
243
248
|
filterTestIdPrefix: () => filterTestIdPrefix,
|
|
244
249
|
formatDate: () => formatDate,
|
|
245
250
|
formatDateRange: () => formatDateRange,
|
|
@@ -301,8 +306,10 @@ __export(index_exports, {
|
|
|
301
306
|
selectColumn: () => selectColumn,
|
|
302
307
|
selectedStyles: () => selectedStyles,
|
|
303
308
|
setDefaultStyle: () => setDefaultStyle,
|
|
309
|
+
setEnvironmentFavicon: () => setEnvironmentFavicon,
|
|
304
310
|
setGridTableDefaults: () => setGridTableDefaults,
|
|
305
311
|
setRunningInJest: () => setRunningInJest,
|
|
312
|
+
shouldShowEnvironmentBanner: () => shouldShowEnvironmentBanner,
|
|
306
313
|
shouldSkipScrollTo: () => shouldSkipScrollTo,
|
|
307
314
|
simpleDataRows: () => simpleDataRows,
|
|
308
315
|
simpleHeader: () => simpleHeader,
|
|
@@ -375,6 +382,10 @@ var Tokens = /* @__PURE__ */ ((Tokens2) => {
|
|
|
375
382
|
Tokens2["ButtonTertiaryFgPressed"] = "--b-button-tertiary-fg-pressed";
|
|
376
383
|
Tokens2["Danger"] = "--b-danger";
|
|
377
384
|
Tokens2["DangerPressed"] = "--b-danger-pressed";
|
|
385
|
+
Tokens2["EnvBrandDev"] = "--b-env-brand-dev";
|
|
386
|
+
Tokens2["EnvBrandLocalProd"] = "--b-env-brand-local-prod";
|
|
387
|
+
Tokens2["EnvBrandProd"] = "--b-env-brand-prod";
|
|
388
|
+
Tokens2["EnvBrandQa"] = "--b-env-brand-qa";
|
|
378
389
|
Tokens2["FieldBgDefault"] = "--b-field-bg-default";
|
|
379
390
|
Tokens2["FieldBgDisabled"] = "--b-field-bg-disabled";
|
|
380
391
|
Tokens2["FieldBgHover"] = "--b-field-bg-hover";
|
|
@@ -4703,7 +4714,7 @@ function Tooltip(props) {
|
|
|
4703
4714
|
children,
|
|
4704
4715
|
title,
|
|
4705
4716
|
disabled,
|
|
4706
|
-
delay =
|
|
4717
|
+
delay = 150,
|
|
4707
4718
|
bgColor,
|
|
4708
4719
|
xss
|
|
4709
4720
|
} = props;
|
|
@@ -6241,6 +6252,7 @@ function getParsedStorage(key) {
|
|
|
6241
6252
|
}
|
|
6242
6253
|
|
|
6243
6254
|
// src/layouts/layoutVars.ts
|
|
6255
|
+
var beamEnvironmentBannerLayoutHeightVar = "--beam-environment-banner-height";
|
|
6244
6256
|
var beamNavbarLayoutHeightVar = "--beam-navbar-layout-height";
|
|
6245
6257
|
var beamPageHeaderLayoutHeightVar = "--beam-page-header-layout-height";
|
|
6246
6258
|
var beamLayoutViewportWidthVar = "--beam-layout-viewport-width";
|
|
@@ -6253,11 +6265,14 @@ function documentScrollChromeLeft() {
|
|
|
6253
6265
|
function documentScrollChromeWidth() {
|
|
6254
6266
|
return `calc(var(${beamLayoutViewportWidthVar}, 100vw) - var(${beamSideNavLayoutWidthVar}, 0px))`;
|
|
6255
6267
|
}
|
|
6268
|
+
function bannerAndNavbarChromeTop() {
|
|
6269
|
+
return `calc(var(${beamEnvironmentBannerLayoutHeightVar}, 0px) + var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
6270
|
+
}
|
|
6256
6271
|
function stickyNavAndHeaderOffset(basePx = 0) {
|
|
6257
|
-
return `calc(${basePx}px + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px))`;
|
|
6272
|
+
return `calc(${basePx}px + var(${beamEnvironmentBannerLayoutHeightVar}, 0px) + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px))`;
|
|
6258
6273
|
}
|
|
6259
6274
|
function stickyTableHeaderOffset(basePx = 0) {
|
|
6260
|
-
return `calc(${basePx}px + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px) + var(${beamTableActionsHeightVar}, 0px))`;
|
|
6275
|
+
return `calc(${basePx}px + var(${beamEnvironmentBannerLayoutHeightVar}, 0px) + var(${beamNavbarLayoutHeightVar}, 0px) + var(${beamPageHeaderLayoutHeightVar}, 0px) + var(${beamTableActionsHeightVar}, 0px))`;
|
|
6261
6276
|
}
|
|
6262
6277
|
|
|
6263
6278
|
// src/utils/zIndices.ts
|
|
@@ -6280,6 +6295,11 @@ var zIndices = {
|
|
|
6280
6295
|
// App navbar (NavbarLayout) — above the side nav and page sticky headers; full-page overlays and
|
|
6281
6296
|
// toasts still clear it.
|
|
6282
6297
|
navbar: 120,
|
|
6298
|
+
// Navbar mobile drawer + scrim — above navbar; below environment banner.
|
|
6299
|
+
navbarMobileMenuScrim: 124,
|
|
6300
|
+
navbarMobileMenu: 125,
|
|
6301
|
+
// Environment banner (EnvironmentBannerLayout) — above navbar mobile menu; below snackbar.
|
|
6302
|
+
environmentBanner: 130,
|
|
6283
6303
|
// Full-page overlays — high enough to clear consuming-app nav bars (~999).
|
|
6284
6304
|
// Both layouts own their Toast internally so it renders inside the overlay header.
|
|
6285
6305
|
pageOverlay: 1e3,
|
|
@@ -21760,6 +21780,168 @@ function useDnDGridItem(props) {
|
|
|
21760
21780
|
return { dragHandleProps, dragItemProps };
|
|
21761
21781
|
}
|
|
21762
21782
|
|
|
21783
|
+
// src/components/EnvironmentBanner/EnvironmentBanner.tsx
|
|
21784
|
+
var import_runtime88 = require("@homebound/truss/runtime");
|
|
21785
|
+
var import_jsx_runtime162 = require("react/jsx-runtime");
|
|
21786
|
+
function EnvironmentBanner(props) {
|
|
21787
|
+
const {
|
|
21788
|
+
env,
|
|
21789
|
+
impersonating,
|
|
21790
|
+
...others
|
|
21791
|
+
} = props;
|
|
21792
|
+
const tid = useTestIds(others, "environmentBanner");
|
|
21793
|
+
if (!shouldShowEnvironmentBanner(env, impersonating)) {
|
|
21794
|
+
return null;
|
|
21795
|
+
}
|
|
21796
|
+
const {
|
|
21797
|
+
bgColor,
|
|
21798
|
+
badgeLabel,
|
|
21799
|
+
message,
|
|
21800
|
+
tooltip
|
|
21801
|
+
} = getEnvironmentBannerConfig(env, impersonating);
|
|
21802
|
+
const bgColorVar = maybeCssVar(bgColor);
|
|
21803
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { ...(0, import_runtime88.trussProps)({
|
|
21804
|
+
flexShrink: "fs0",
|
|
21805
|
+
position: "relative",
|
|
21806
|
+
zIndex: ["z_var", {
|
|
21807
|
+
"--zIndex": (0, import_runtime88.maybeCssVar)(zIndices.environmentBanner)
|
|
21808
|
+
}],
|
|
21809
|
+
backgroundColor: ["bgColor_var", {
|
|
21810
|
+
"--backgroundColor": (0, import_runtime88.maybeCssVar)(bgColorVar)
|
|
21811
|
+
}],
|
|
21812
|
+
height: ["h_var", {
|
|
21813
|
+
"--height": `${environmentBannerSizePx}px`
|
|
21814
|
+
}],
|
|
21815
|
+
width: "w100"
|
|
21816
|
+
}), role: "banner", ...tid, children: [
|
|
21817
|
+
getInvertedCorner("left", bgColorVar),
|
|
21818
|
+
getInvertedCorner("right", bgColorVar),
|
|
21819
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("div", { className: "relative z2 df aic jcsb h100 pl2 mdandup_pl6 pr2 mdandup_pr6", ...tid.content, children: [
|
|
21820
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("span", { className: "df aic gap2 fg1 mh0 oh", ...tid.left, children: [
|
|
21821
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Tag, { text: badgeLabel, xss: {
|
|
21822
|
+
backgroundColor: "bgColor_FFFFFF90"
|
|
21823
|
+
}, ...tid.badge }),
|
|
21824
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("span", { ...(0, import_runtime88.trussProps)({
|
|
21825
|
+
...{
|
|
21826
|
+
alignItems: "aic",
|
|
21827
|
+
gap: "gap1",
|
|
21828
|
+
fontWeight: "fw6",
|
|
21829
|
+
fontSize: "fz_12px",
|
|
21830
|
+
lineHeight: "lh_16px",
|
|
21831
|
+
color: "white"
|
|
21832
|
+
},
|
|
21833
|
+
...impersonating ? {
|
|
21834
|
+
display: "dn mdandup_df"
|
|
21835
|
+
} : {
|
|
21836
|
+
display: "df"
|
|
21837
|
+
}
|
|
21838
|
+
}), ...tid.message, children: [
|
|
21839
|
+
message,
|
|
21840
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "rgba(255, 255, 255, 1)" /* White */ }) })
|
|
21841
|
+
] })
|
|
21842
|
+
] }),
|
|
21843
|
+
impersonating != null && /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("span", { className: "df aic gap2 fw6 fz_12px lh_16px white fs0", ...tid.impersonating, children: [
|
|
21844
|
+
env !== "prod" && /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)("span", { children: [
|
|
21845
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
|
|
21846
|
+
impersonating.name
|
|
21847
|
+
] }),
|
|
21848
|
+
/* @__PURE__ */ (0, import_jsx_runtime162.jsx)("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)(Icon, { icon: "impersonate", inc: 2, color: "rgba(255, 255, 255, 1)" /* White */ }) })
|
|
21849
|
+
] })
|
|
21850
|
+
] })
|
|
21851
|
+
] });
|
|
21852
|
+
}
|
|
21853
|
+
function shouldShowEnvironmentBanner(env, impersonating) {
|
|
21854
|
+
return env === "dev" || env === "qa" || env === "local-prod" || env === "prod" && isDefined(impersonating);
|
|
21855
|
+
}
|
|
21856
|
+
function getEnvironmentBannerConfig(env, impersonating) {
|
|
21857
|
+
switch (env) {
|
|
21858
|
+
case "dev":
|
|
21859
|
+
return {
|
|
21860
|
+
bgColor: "--b-env-brand-dev" /* EnvBrandDev */,
|
|
21861
|
+
badgeLabel: "DEV",
|
|
21862
|
+
message: "You are in the Dev Environment",
|
|
21863
|
+
tooltip: "You are in the Dev Environment. Any changes here will not be reflected in live production data."
|
|
21864
|
+
};
|
|
21865
|
+
case "qa":
|
|
21866
|
+
return {
|
|
21867
|
+
bgColor: "--b-env-brand-qa" /* EnvBrandQa */,
|
|
21868
|
+
badgeLabel: "QA",
|
|
21869
|
+
message: "You are in the QA Environment",
|
|
21870
|
+
tooltip: "You are in the QA Environment. Any changes here will not be reflected in live production data."
|
|
21871
|
+
};
|
|
21872
|
+
// Prod env banner should only be displayed when impersonating
|
|
21873
|
+
case "prod":
|
|
21874
|
+
return {
|
|
21875
|
+
bgColor: "--b-env-brand-prod" /* EnvBrandProd */,
|
|
21876
|
+
badgeLabel: "PROD",
|
|
21877
|
+
message: `You are impersonating ${impersonating?.name}`,
|
|
21878
|
+
tooltip: "You are currently viewing the application as another user in Production. Any changes here WILL be reflected in live production data."
|
|
21879
|
+
};
|
|
21880
|
+
case "local-prod":
|
|
21881
|
+
return {
|
|
21882
|
+
bgColor: "--b-env-brand-local-prod" /* EnvBrandLocalProd */,
|
|
21883
|
+
badgeLabel: "LOCAL-PROD",
|
|
21884
|
+
message: `You are in the Local Prod Environment`,
|
|
21885
|
+
tooltip: "You are connected to live production data from a local environment. Any changes made here WILL immediately affect production."
|
|
21886
|
+
};
|
|
21887
|
+
default:
|
|
21888
|
+
throw new Error(`Invalid environment: ${env}`);
|
|
21889
|
+
}
|
|
21890
|
+
}
|
|
21891
|
+
function getInvertedCorner(side, bgColorVar) {
|
|
21892
|
+
const invertedCornerRadiusPx = 12;
|
|
21893
|
+
const shell = {
|
|
21894
|
+
position: "absolute",
|
|
21895
|
+
bottom: ["bottom_var", {
|
|
21896
|
+
"--bottom": `${-invertedCornerRadiusPx}px`
|
|
21897
|
+
}],
|
|
21898
|
+
height: ["sq_var", {
|
|
21899
|
+
"--height": `${invertedCornerRadiusPx}px`
|
|
21900
|
+
}],
|
|
21901
|
+
width: ["sq_var", {
|
|
21902
|
+
"--width": `${invertedCornerRadiusPx}px`
|
|
21903
|
+
}],
|
|
21904
|
+
pointerEvents: "pointerEvents_none",
|
|
21905
|
+
zIndex: "z1"
|
|
21906
|
+
};
|
|
21907
|
+
const outerPosition = side === "left" ? {
|
|
21908
|
+
left: "left0"
|
|
21909
|
+
} : {
|
|
21910
|
+
right: ["right_var", {
|
|
21911
|
+
"--right": `${invertedCornerRadiusPx}px`
|
|
21912
|
+
}]
|
|
21913
|
+
};
|
|
21914
|
+
const shadowXOffset = side === "left" ? -invertedCornerRadiusPx : invertedCornerRadiusPx;
|
|
21915
|
+
return /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { "aria-hidden": true, ...(0, import_runtime88.trussProps)({
|
|
21916
|
+
...shell,
|
|
21917
|
+
...outerPosition
|
|
21918
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime162.jsx)("div", { ...(0, import_runtime88.trussProps)({
|
|
21919
|
+
height: "h_200",
|
|
21920
|
+
width: "w_200",
|
|
21921
|
+
position: "absolute",
|
|
21922
|
+
borderRadius: "borderRadius_50",
|
|
21923
|
+
boxShadow: ["boxShadow_var", {
|
|
21924
|
+
"--boxShadow": (0, import_runtime88.maybeCssVar)(`${shadowXOffset}px -${invertedCornerRadiusPx}px 0 0 ${bgColorVar}`)
|
|
21925
|
+
}]
|
|
21926
|
+
}) }) });
|
|
21927
|
+
}
|
|
21928
|
+
var environmentBannerSizePx = 32;
|
|
21929
|
+
|
|
21930
|
+
// src/components/EnvironmentBanner/setEnvironmentFavicon.ts
|
|
21931
|
+
function setEnvironmentFavicon(env, favicons) {
|
|
21932
|
+
if (favicons == null) {
|
|
21933
|
+
return;
|
|
21934
|
+
}
|
|
21935
|
+
const href = favicons[env] ?? favicons.default;
|
|
21936
|
+
let link = document.querySelector('link[rel~="icon"]');
|
|
21937
|
+
if (link == null) {
|
|
21938
|
+
link = document.createElement("link");
|
|
21939
|
+
link.rel = "icon";
|
|
21940
|
+
document.head.appendChild(link);
|
|
21941
|
+
}
|
|
21942
|
+
link.href = href;
|
|
21943
|
+
}
|
|
21944
|
+
|
|
21763
21945
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
21764
21946
|
var import_react116 = require("react");
|
|
21765
21947
|
|
|
@@ -21769,8 +21951,8 @@ var gridItemDataAttribute = "data-grid-item-span";
|
|
|
21769
21951
|
var ResponsiveGridContext = (0, import_react115.createContext)(void 0);
|
|
21770
21952
|
|
|
21771
21953
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
21772
|
-
var
|
|
21773
|
-
var
|
|
21954
|
+
var import_runtime89 = require("@homebound/truss/runtime");
|
|
21955
|
+
var import_jsx_runtime163 = require("react/jsx-runtime");
|
|
21774
21956
|
function ResponsiveGrid(props) {
|
|
21775
21957
|
const {
|
|
21776
21958
|
children,
|
|
@@ -21790,13 +21972,13 @@ function ResponsiveGrid(props) {
|
|
|
21790
21972
|
gap,
|
|
21791
21973
|
columns
|
|
21792
21974
|
}), [minColumnWidth, gap, columns]);
|
|
21793
|
-
return /* @__PURE__ */ (0,
|
|
21975
|
+
return /* @__PURE__ */ (0, import_jsx_runtime163.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime163.jsx)("div", { ...(0, import_runtime89.trussProps)(gridStyles), children }) });
|
|
21794
21976
|
}
|
|
21795
21977
|
|
|
21796
21978
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
21797
21979
|
var import_react_aria51 = require("react-aria");
|
|
21798
|
-
var
|
|
21799
|
-
var
|
|
21980
|
+
var import_runtime90 = require("@homebound/truss/runtime");
|
|
21981
|
+
var import_jsx_runtime164 = require("react/jsx-runtime");
|
|
21800
21982
|
function ResponsiveGridItem(props) {
|
|
21801
21983
|
const {
|
|
21802
21984
|
colSpan,
|
|
@@ -21808,12 +21990,12 @@ function ResponsiveGridItem(props) {
|
|
|
21808
21990
|
} = useResponsiveGridItem({
|
|
21809
21991
|
colSpan
|
|
21810
21992
|
});
|
|
21811
|
-
return /* @__PURE__ */ (0,
|
|
21993
|
+
return /* @__PURE__ */ (0, import_jsx_runtime164.jsx)("div", { ...(0, import_react_aria51.mergeProps)(gridItemProps, (0, import_runtime90.trussProps)(gridItemStyles)), children });
|
|
21812
21994
|
}
|
|
21813
21995
|
|
|
21814
21996
|
// src/components/Grid/useResponsiveGrid.ts
|
|
21815
21997
|
var import_react117 = require("react");
|
|
21816
|
-
var
|
|
21998
|
+
var import_runtime91 = require("@homebound/truss/runtime");
|
|
21817
21999
|
var __maybeInc16 = (inc) => {
|
|
21818
22000
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21819
22001
|
};
|
|
@@ -21832,11 +22014,11 @@ function useResponsiveGrid(props) {
|
|
|
21832
22014
|
return {
|
|
21833
22015
|
display: "dg",
|
|
21834
22016
|
gridTemplateColumns: ["gtc_var", {
|
|
21835
|
-
"--gridTemplateColumns": (0,
|
|
22017
|
+
"--gridTemplateColumns": (0, import_runtime91.maybeCssVar)(gridTemplateColumns)
|
|
21836
22018
|
}],
|
|
21837
22019
|
containerType: "ctis",
|
|
21838
22020
|
gap: ["gap_var", {
|
|
21839
|
-
"--gap": (0,
|
|
22021
|
+
"--gap": (0, import_runtime91.maybeCssVar)(__maybeInc16(gridGap))
|
|
21840
22022
|
}]
|
|
21841
22023
|
};
|
|
21842
22024
|
}, [minColumnWidth, gap, columns]);
|
|
@@ -21904,7 +22086,7 @@ var import_react119 = __toESM(require("react"), 1);
|
|
|
21904
22086
|
var HbLoadingSpinner_base64_default = "data:image/gif,GIF89a%80%00%80%00%E7%00%00%00%00%00%0D%0D%0D%16%16%16%1C%1C%1C%22%22%22%26%26%26%2A%2A%2A...222555888%3B%3B%3B%3D%3D%3D%40%40%40BBBEEEGGGIIIKKKMMMOOOQQQSSSUUUVVVXXXZZZ%5C%5C%5C%5D%5D%5D___%60%60%60bbbccceeefffhhhiiijjjlllmmmnnnpppqqqrrrsssuuuvvvwwwxxxyyyzzz%7C%7C%7C%7D%7D%7D~~~%7F%7F%7F%80%80%80%81%81%81%82%82%82%83%83%83%84%84%84%85%85%85%86%86%86%87%87%87%88%88%88%89%89%89%8A%8A%8A%8B%8B%8B%8C%8C%8C%8D%8D%8D%8E%8E%8E%8F%8F%8F%90%90%90%91%91%91%92%92%92%93%93%93%94%94%94%95%95%95%96%96%96%97%97%97%98%98%98%99%99%99%9A%9A%9A%9B%9B%9B%9C%9C%9C%9D%9D%9D%9E%9E%9E%9F%9F%9F%A0%A0%A0%A1%A1%A1%A2%A2%A2%A3%A3%A3%A4%A4%A4%A5%A5%A5%A6%A6%A6%A7%A7%A7%A8%A8%A8%A9%A9%A9%AA%AA%AA%AB%AB%AB%AC%AC%AC%AD%AD%AD%AE%AE%AE%AF%AF%AF%B0%B0%B0%B1%B1%B1%B2%B2%B2%B3%B3%B3%B4%B4%B4%B5%B5%B5%B6%B6%B6%B7%B7%B7%B8%B8%B8%B9%B9%B9%BA%BA%BA%BB%BB%BB%BC%BC%BC%BD%BD%BD%BE%BE%BE%BF%BF%BF%C0%C0%C0%C1%C1%C1%C2%C2%C2%C3%C3%C3%C4%C4%C4%C5%C5%C5%C6%C6%C6%C7%C7%C7%C8%C8%C8%C9%C9%C9%CA%CA%CA%CB%CB%CB%CC%CC%CC%CD%CD%CD%CE%CE%CE%CF%CF%CF%D0%D0%D0%D1%D1%D1%D2%D2%D2%D3%D3%D3%D4%D4%D4%D5%D5%D5%D6%D6%D6%D7%D7%D7%D8%D8%D8%D9%D9%D9%DA%DA%DA%DB%DB%DB%DC%DC%DC%DD%DD%DD%DE%DE%DE%DF%DF%DF%E0%E0%E0%E1%E1%E1%E2%E2%E2%E3%E3%E3%E4%E4%E4%E5%E5%E5%E6%E6%E6%E7%E7%E7%E8%E8%E8%E9%E9%E9%EA%EA%EA%EB%EB%EB%EC%EC%EC%ED%ED%ED%EE%EE%EE%EF%EF%EF%F0%F0%F0%F1%F1%F1%F2%F2%F2%F3%F3%F3%F4%F4%F4%F5%F5%F5%F6%F6%F6%F7%F7%F7%F8%F8%F8%F9%F9%F9%FA%FA%FA%FB%FB%FB%FC%FC%FC%FD%FD%FD%FE%FE%FE%FF%FF%FF%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%00%21%FF%0BNETSCAPE2.0%03%01%00%00%00%21%FE%11Created%20with%20GIMP%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%DD%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%EC7%80%80%C7%02%02%EC%0D%40%99%F2%E4%CA%92%2F%5B%E6%5B%99%B1%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%BB%B6%ED%DB%B8s%EB%DE%CD%BB%B7%EF%DF%C0%83%D7%0E%08%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FC%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF7%03%88%1E-Z%80%E9%01%04%0A%188p%00A%82%05%0D%1EH%A8%C0%964i%D3%02P%ABn%FD%9A%01%5C%DB%A3O%EB%5EM%17x%00%DC%A8%EF%1A%3F%0E%BA%B9%F3%E7%D0%A3K%9FN%BD%BA%F5%EB%D8%B3k%DF%CE%BD%3B%CA%80%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%20%03%88%160%80%40%81%03%09%16%40%B0%D0%A1%04%8C%1EK%B0%90%89%B3%87%D0%A2H%966y%0A5%AAT%29S%A7P%A5J%A5J%D5%AA%E3%C8Y%B1Z%15U%F4h%D2%04%0C%20X%F0%80B%06%11%2Cp%14%A1%22%06%0E%9FB%8D%2A%B7m%02E%EAT%AAU%AD%5C%BD%82%05%2B%96%AC%F7%B2f%C9%9FO%D5y%00%E8%A8%19%3C%60%5D%C2%05%8F%25Y%981%87%1F%88DrI%27%A2%94%82%8A%2A%E9%AD%D7%1E%7C%F1%CD7KU%F6A%27%9D%02%0EH%80%C1%07%29%D0%10%84%13%5D%ACq%C7%20%8CL%A2%09y%A7%A8%C2J%2B%EB%C5%E2%DE%7B%12NhU%85%A5I%B7%80%03%13l%20%C2%0A7%18AE%18o%ECQ%88%23%96p%12%8A%82%E8%B5%F8b%84%F2%7D%E5%9C%00%D0%15p%A1~%11P%60%01%06%1Al%D0A%07%1E%7C%00%C2%97%21%84%29f%08%A0%95i%E6%99h%A6%A9%E6%9Al%B6%E9%E6%9Bp%C6%29%E7%9Ctf%15%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%14%03%88%160%80%80%01%04%0D%26p%40%81C%89%965w%02%25z4%C9R%A6M%9D%3C%7D%FA%04%2AT%28Q%A3F%91%22U%AAxqS%A6N%9DB%C5%1CU%AA%E7%AA%A2%ABZE%FD%E8%E8%D2%06%124%A8%00%82%05%8F%27a%E4%D6%FCI%14%E9%12%A7O%A1%88%27_%0E%9D%3A%2BV%AD%E2%BB%9A%FF%EA%15%AC%FB%B0b%E9%8F%25%AB%BF%7F%A4%A2%05%20%80i%0A%3C%60%01%08-%F8%10%05%19t%00%B2%C8%24%99t%02%CA%28%A5%24%E7%5C%2A%D3%AD%F2%5E%7C%F2%D5g%1F~%FB%F1%E7%DF%7F%00%8A%86%5D%81%07%BA%F0%83%14%0C%06%C2%08%25%9Ax%22%0A%29%16b%E8%1E%7C%1C%D2W%1F%88%FB%8D%D8%DF%2C%B2%285%DA%80%D99%60A%08.%001E%19u%0C%D2H%25%9BLX%0A%7B%D3m%98%A3%2B%3B%F2%28%A2%8F%B3%00%F9T%80%A4%99%96%00%03%0FHP%C1%05%19l%C0A%07%1Dx%E0%C1%07p%C6%F9%01%08t%D6i%27%08%21%E4%A9%E7%9E%21%80%E6%E7%9F%80%06%2A%E8%A0%84%16j%E8%A1%88%26%AA%E8%A2%8C6%9AU%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%0E%03%88%1EP%E0%00%83%0A%20%60%0C%C1%82%A6%CE%9FC%8C%1EE%9AD%A9%92%25K%970e%CA%A4I%D3%A6M%9C8u%F2D%FC%D3%27P%A0B%29%17%25j%94sR%A4JI%9F%5E%CA%94%F5S%D8%7F%8A%0E0%80%80%01%05%116%EF%A4%E0%21%A5L%1DA%8B%22U%CA%04%7C%B8%F1%E4%A1%98%3F%9F~%1D%3B%2AT%A9R%A9%DA%BF%AA%3F%AB%FF%AD%04%18%A0%2B%04%BE%F2%8A%2BA%05%20%00i%08%9C%16%02%0CFl%E1%06%1F%88%3C%B2%1Ep%9E%1C%97%9C%7C%A3%40%27%5D%7D%F7%DD%A7%1F%7F%FE%01%28%60%2B%04%BAb%E0%2B%B0%BC%92%A0%82%DE%29%00%81%06%27%E8%10E%19v%0C%D2%C8%24%98l%D2%89%86%F1%3D%17%DD%87%D8%9D%22b~%24%AE%F2%1F%2B%27%A6X%E0%8A-%0A%25%9A%00%04%98FAjFh%E1%86%1F%89Dr%89%8F%C7q%E8au%A6%D8w%E4~%AA%94%C8%E4%89%28%3E%C9%22%2Cp%C2b%D4%94%0C.%E0%80%04%15%5C%90%81%06%1Bp%E0g%07%80%06%DA%81%07%84%16Z%E8%07%88%26%AA%28%A2%204%EA%E8%A3%8E%82%26%E9%A4%94Vj%E9%A5%98f%AA%E9%A6%9Cv%EA%E9%A7%A0%86%9AU%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%08%03%88%1EP%00%C1%03%0C%26t%40%19%23%87%8F%A0C%8A%185r%F4%A86%A4H%B8%25%E9%9E4%89%92%EFJ%C0%2BY%1An%E9%92qL%982e%D2%C4%5C%D3%A6%E7%9C6q%9A%DE%A9%BA%A7%EB%D8u%8E.%DD%E0B%89%1CQ%CC%F2%D4%09%94%C8%91%24J%C2%8D_J%BE%9C9t%EA%D5%3Ba%FFD%FF%13%28P%A1%F2%87%12%C5%7F%94%FFQ%A4%04X%CA%80%03%9Ab%E0%29%A6h%17%C0%00%04%1C%C0%40%05%22%D4%B0D%18s%FC%91%C8%23%93Tb%9Cr%ED9%27%1D%7C%D8yR%DF%7D%F8%E9%C7_%7F%FE%05%28%20%81%06%1Ex%CA%8B%A7%28%28%00%01%06%28%20%C1%070%18%D1%05%1C~%20%82aq%ED%3D%F7a%7C%F2%898%E2%7D%26%A2%F8%9F%8A%04%B2%E8%E2%8B%A8D%89%CAN%DB%25%00%C1%06%2A%00%81%05%1B%7C%F8H%89%25%CB%7D%C8I%7C%F3%D9%87d%89%FB%9D%B8%E4%8AN%3E%09%A5%94R%FA%24%9A%00%A4%21%B0%C0%03%12TpA%06%19h%A0%C1%06%80%06%1A%28%07%84%16j%28%A1%1D%24%AA%E8%A2%8Bz%E0%E8%A3%90F%EA%01h%94Vj%E9%A5%98f%AA%E9%A6%9Cv%EA%E9%A7%A0%86%2A%EA%A8Y%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%03%03%04%18P%E0%40%83%0B%25r%3C%11%03gO%A0B%87%10%25%9A%AD%A86%ED%DA%B8%15%CDN%A4%BB7%EE%DD%BAy%E7%BE%1D%5C%B8%EF%E0%BF%13%D1%0C%20%80t%82%07%1AR%F8%B0%92%06%8F%A0D%8D%1EE%92%C4%BD%BB%F7%EF%E0%C3%A7%8B%1FO%DE%FB%F2%D1%05%9EkX%01%C4%CA%9A%3C%83%149%8A4i%12%A5%FB%F8%F3%EB%DF%CF%1F%BF%FD%FE%00%F27%C9y%A4%21%F0%C0%06%ECa%B1%C6%1E%850%02%89%7D%95D%18%A1%25%14JXI%85%17Z%22%21%86%16%5E8%A1%86%19n%D8%21%85%20~%18%E1y%02%10%A0%9E%0A%40d%D1%06%1F%874%22%09%25%17%5Eb%E3%8D8%E6%A8%E3%8E%3C%F6%E8%E3%8D8%89%D6%1C%01%06%400%81%05%17%60%90A%06%1A4%E9%E4%93PF%29%E5%94TV%F9%24hXf%A9%E5%96%5Cv%E9%E5%97%60%86%29%E6%98d%96i%E6%99Y%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CD%01%02%08%20%60%40A%84%0E%2C~P13%87O%A0B%87b%CB%8Em%A8P%21B%84%06%09%DA%1D%A8%F7%9F%DF%7F%FC%F4%E9%C3%87%CF%9E%3Dz%F2%E0%C1s%E7%8E%9D%E7u%EA%D0%A13G%8E%9C8p%E0%BCq%D3%A6%3B%9B5%E0%D3%FE%88Gs%C6%8C%992%2CC%8B%1Ep%80%81%85%115%96%80%81%C3%A7%90%A2F%8F%20Az%C4%FF%91%23G%8D%04%C8%08%23%8B%2C%A2%88%22%89%24%82%C8%82%87%D4f%5Bn%BC%05%02%08%20%C1%F9a%21q%C7%21%97%87r%CDE7%1Du%D6e%97%DD%1B%DD%B5%14%DA%00%05%24%E0%00%06%27%EC%20%85%19u%00%82%08~%91Hbc%248%EE%E7%DF%7F%0062%20%81%08%2A%88%88l%0E%E2F%C8n%82%F4Fa%85%C3%19%A7%21%87%CEy%08%A2u%D8%C1a%A2%00%03%94%26%01%07%2C%04%91%C5%1Az%10%B2%C8%23%92L2%09%25fNrc%8E%FD%FD%17%A0%8F%05%1A%98%A0%82%B4%15%09%21oK%06G%9C%93%7Bl%98Gs%D0IG%5Du%E9%89F%40%7B%15%880%83%12_%C4%F1%07%22%8EHB%09%25%95T%3A%29%9Aj%AE%19%89%8En%0A8%A0%9C%092H%DB%83%10%2A%B9%E4%85%C5e%98%1Cs%80z%08ShNX%12P%C0%01%09%28%B0%00%03%0C4%D0%40%06%BC%F6%EA%2B%06%C0%06%8B%C1%05%C4%16k%EC%05%16%24%ABl%B2%154%EBl%B3%14D%2Bm%B4%13Tkm%B5%12d%AB%EDg%DCv%EB%ED%B7%E0%86%2B%EE%B8%E4%96k%EE%B9%E8%A6%AB%EE%BAj%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%C9%01%02%08%20%60%40%01%84%0C%25j%24%D1%92%A6N%1FA%87%10%25%9A%8D%08%D1%A1C%85%0A%0D%12%14%28%D0%9F%3F~%F8%F0%D9%93%07%CF%1D%3Bu%E8%CC%91%03%E7%8D%9B6m%D6%A8I%83%C6L%192c%C2%84%F9%E2e%8B%96%2CX%AC%FET%A1%22%25%0A%94%27M%98%2CY%92%C4H%91%21A%80%FC%F8%D1c%87%8E%1C7j%94%14%3D%A0%00%02%07%16%8C0%83%11Z%A8q%87%20%894%F2H%24%92H%12I%24%90%3C%E2H%23%8C0%B2%08m%B8%11B%08o%80%00%D7%C7py%E4q%5Crr0%F7%06t%D2Qg%1D%19bl%E7%05%17%DEeq%85%15TLQ%1E%14N%A8%97%04%12%EE%11%21%84%7C%3E%F00Rh%A2%11p%C0%02%12p%B0%82%0FR%94A%C7%1F%884%12%C9%24TR%E9%60%24%12Nh%E1%85%B6e%B8%5B%20%1D%06%07%A2q%C9-%17Gsm%B0%91%E2%19%2B%8A%01%06w%5Ch%F1%DD%8C5Jq%5Ez%EC%F1H%C4%10%3F%FE%20Rh%02%08%D0_%02%A7%95p%C3%12%5E%C0%D1%C7%21RRR%C9%A3%95Pb%25%84YR%B8%88%22%89%D8fH%21%84%7C%19%A6pz%14wG%99r%9C%F9%9C%9A%D3%B1%89%5D%18%60x%F1%E2w%B4%E1%D1xc%8EK%28%91%C4%11F%EC%19%C4%90%82%1A%C9%40%05%20%C0%40%04%16j%E4A%08%23%91Pb%C9%25%CC%5EbI%A4%92%3A%18%A1%23Z%5E%9A%E9%21%9Bn%D8%1Bp%C1%ED%11%EA%88%CA%99x%EA%1A%2A%5E%97%5D%AB%5D%C4%18%5E%156F%F1%04%AD%EC%E1J%C4I%80%0E%40%40%01%07%24%A0%C0%02%0C0%D0%C0%BF%00%03%DC%2F%06%04%13%7C%C1%C1%07%5B%A0%B0%05%154%5C%01%05%10S0%C1%C4%13K%60q%04%18G%00%C1%C6%1B%3F%E0%F1%03%0E%84%EC%40%C0%FD%96%BC%C0%C9%27%2B%A0%B2%02%09%7C%E6%F2%CB0%C7%2C%F3%CC4%D7l%F3%CD8%E7%AC%F3%CE%3C%F7%ACV%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%C3%01%02%0C%20%60%00A%83%09%1AH%C8%10%22%25L%9B%3B%7F%0A%25b%E4%E8%91mG%8E%1A1R%94%08%D1%A1B%84%06%05%02%F4%C7%0F%9F%3Dy%EE%D8%A13%27%CE%9B6m%D6%A49c%86%8C%980%5E%BAh%C1r%A5%CA%94%28P%9A%FE0Y%92%C4%08%91%20%40%7C%F0%D0%81%C3%06%0D%191%5E%B8%60%A1%02%C5%89%12%25F%8C%00%01%C2C%87%0D%1Ah%90%C1%05%16T%80Qh%02%90%A6%80%03%14t%90%C2%0DH%60qF%1D%7F%20%E2%88%24%95Xr%C9%86%97XR%09%25%93H%12%C9%23%B91%B2Ho%86%00%27%08q%7D%EC%A1Gru%D0%21%87s%D1MW%9D%18%60x%C1%C5vVP%21E%14O4%B1%04%12F%14%21Dz%EB%B5%F7%5E%7C-%AC%A0B%0A%27%98%40%C2%08%21%F4%E7%1F%07%01bPQh%01%080%9A%01%098PA%07%28%DC%90%84%16h%D4%11H%22%8FPrI%26%9A%C4%99I%26%1D~%18%E2%88%25%9E%E8%5B%21%83%08%12%C8%1F-%EA%81%C7%1D1%CA%01%C7s%D2%A1qc%8E%3Bb%D1%E3%8FN%8CW%1E%11G%AA%C7%9E%7B3%C47%DF%93QN%29%02%08%1F%5C%B9A%06%5B%22HZ%98%15x%90%02%0Eg%AAq%87%20%EB%8BDR%09%26%9Al%C2%C9%26%9B%C8%B9%A1%87w%92%A8%9B%9E%BF%11%B2%22%A0%7C%08J%A8%8C%87F%A7%86%A2%D61%CA%A3%8FPD%3A%A4y%95%26%89i%0C04%C9%A9%94T%82%EA%1F%80%14%21%F8%E5%82%A9%AA%80%83%12%5B%AC%91%07%21%8CHr%89%26%9Ct%22o%27%9C%DC%AAI%26%98%D4y%27%24y%F6%16%EC%B0%C6%BDx%AC%A1%88%DA%D8%AC%8E%CF%FE%18%E4%90G%18%89%E4%A54d%FA%82%B6Pr%FBi%A8%1Dp%90%11%97%5E%12P%40i%09%28%B0%00%03%0D%94%EC%C0%C9%27%97%AC%F2%CA%0C%B4%EC%F2%02%16%C4%5C%60%05%15P%60%F3%048K%A0s%04%3CC%E0%F3%03%40%A7%5C%F2%CB%0B%14%AD%C0%D1%09%24%9D%00%02L%1F%E0%B4%D3%06Dm%40%01TWM%C0%D5%04%7C%A6%F5%D6%5Cw%ED%F5%D7%60%87-%F6%D8d%97m%F6%D9h%A7%ADV%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9s%C4%00%01%F6%82%0E%20%20%B4%5E%D2%A4%09%188%80%80%01%84%0A%1AD%A8%A0%01%84%09%961m%EE%FC1%B4%E8%D1%24K%972i%D2%B4i%93%A6L%99.Y%B2T%89%D2%24I%90%1E9b%B4%28%11%A2C%85%06%05%FA%E3%87%CF%9E%3Cw%EA%FE%CC%89%F3%A6%CD%9A4f%C8%8C%09%E3%85K%96%2BU%A4%40q%C2D%C9%11%22B~%F4%D8%91%C3%06%8D%180%B8%C0%82%0A%28%98%40%C2%08%21%7C%E0A%07%1Ch%90%01%06%16T%40%C1%04%12D%00%C1%03%0F4%D0%C0%02%0B%28%E0a%02%08%20%20P%00%03%0CP%C0%01%09%B8F%81%06%21%AC%60%C3%10Pla%86%1C%7B%10%B2%88%24%97h%D2%09%28%A2%8C2%0A%29%3E%8E%22%8A%28%A0%80%F2I%27%9Cpr%1C%26%974%27I%24%D2Q%97%08v%84l%D7%9D%1Ex%D8A%87%1Cp%98%97%C6%19e%88%01%86%17%5BdaE%7CP4%B1D%12F%0C%01%84%0F%3C%E4p%03%0D3%048%60%81%07%86%00%C2%82%0DfpA%84%13Vx%A1%03%1A2%D0%E1%87%00%90%A8%1A%02%0B%3C%40A%06%20%A4%20%C3%0FKdA%06%1Cz%0C%B2H%24%96l%F2I%28%A2%90R%CA%A8%A3%92%02%A4%28%A1%18%E9%09%92%C6%25g%89s%FE%D09%D2%08%23%D6%19B%88%20%DBy%07%9Ex%E4y%99%5E%18_t%A1%05%16VL%21%05%7D%F6%E1%A7%9F%0E8%D80C%0C%2F%B4%B0B%0Ax%22%A8%60%07%1B%3C%F8g%A0%12%400h%03%86r%E8a%A2%27%26%D0%40%04%17x%60B%0C%3D%24aE%18m%E0%11H%22%9Cn%E2I%A8%A3%9Ar%8A%29%FC%9AR%AA%90%A9~%B2%AA%92%99%60%C2%1C%25OJ%D7Hu%88%14r%2B%20Wf%B9%25%1Cn%B0%A1%06%98c%8C%B9%85%16%F0%C9%E7%C4%9Am%02%D1%03%0F%CC%D6%20%83%9D%2A%A4pB%09%23%88%00%C2%07%0C%3A%08%A1%84%14Z%08%01%A1%E0%8A%AB%00%00%02%A4%F8%DA%06%23%B4%90%83%11S%7C%A1F%1D%7F%20%F2H%25%9E%E2%7B%CA%29%A8D%8D%CA%D3%FC%96r%2A%AAF%B2%BA%E4%AB%CFE%B7%B0%22%D7e%B7%5D%1F%DF%857%B1%AFd%00%DBE%99%C5J%F1D%13%C9%06%A1%DF%0E%CD%D2p%B2%B4%04%9AP%82w%08%09.%B8%81%06%18l%3BA%CD%DF%86%DB%E1%88%A4%090%00%01%04%14%B0Z%02%0A%2C%C0%00%03%0D8%E0%00%86%98g%AE9%86%96wn%B9%86%A0%83%3B%F9%E8%1C%96%EE%E1%E0%83KPa%046c%FE%B9%E8%86%7F%98%00%88%21%1E%60%FB%01%06%E4%5E%C0%EE%BB3%CEx%89%C0%03%2F%C0%F0%C4%97%06%9Ag%C8%27%AF%FC%F2%CC7%EF%FC%F3%D0G%2F%FD%F4%D4Wo%FD%F5%7B%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1c%AD%01%FAF%0E%40yo%00%01%98%23%E7%0D0%A03%01%02z%03%140p%E0%80%01%BD%02%12%28%60%E0%80%81%5E%02%0F%24P%B80A%EF%81%0C%1CB%94%F0%A0w%01%8A%163t%B8%D0%1B%C1%07%91%25R%84%E8%D5p%C5%0B%994V%F4%8ExC%27%8F%1F4z%5B%0CB%B4%E8Q%1D%BD6%26%FEY%CA%B4%E9%8F%5E%1F%9EB%89%22eH%AF%10S%A7R%A9Z%A4%D7%08%2BV%ADZ5%D2%9B%C4%D5%AB%FF%8E%E8%A5D%2C%04%C6%F2%88%80%B2%24%28%CB%2B%AA%A8%92%CA%83%A8%A0r%CA%84%A6%94ba%29%A4%8C2%8A%28%A1%80%02%8A%27%9Et%C2%89%26%99%60r%89%25%95L%22I%24%8F8%C2%C8%22%89%1Cb%08%21%82%FC%E1%07%1Fz%DCa%07%1Dr%C0%D1%C6%1Ai%98A%86%18_p%A1%05%16UH%F1%04%13K%20a%C4%10%40%F4%A0%03%0E5%CC%10%83%0B%2C%A4%80B%09%24%8C%10%C2%07%1Dp%A0A%06%17TP%01%05%13D%00%C1%03%0E%B4%C6%C0%02%0A%24%90%00%02%08%94V%9A%01%05%E4%F9%D9g%00%2C%A1%E0%9F%05%C2%02%CB%7F%AE%E4%97%1F%2B%AB4%98J%84%A7T%98%21%87%A0%7C%22%E2%26%99%9CH%C9%24%91%40%E2%22%8C%87%14%22H%207%EA%81%87%1Ds%C4%F1%06%1Bj%9C%21d%18%5E%1C%99%24%14%FEM4Y%84%10%3F%F0%A0%C3%0D4%C8%00C%0B%2B%A4p%82%09%24%7C%E9A%07%1Bh%80%81%05%15L%20%81%9A%0F%B0%D9%C0%9B%0AD%3Bg%9D%A6%E5Y%C0%9E%A0-1%CB%2C%7F%CA%12%A8%A0%AF%B8Rh%2B%F7%AD%92%28%84%8Db%B8a%87%9Fx%C2%C9%26%24%A2%A8%22%8B%8DpZ%08%21%81%FC%C1%C7%1E%A3%F2%E8%23%90%AB%B6%8A%85%15SD%E1%C4%12I%3C%19%E5%94U%C6%F0%02%0B%2A%FCJ%82%08%20%80%B9A%06%18%94%89%A6%9Ak%3A%F0%2C%B4q%D2Y%27%9Ez%EE%D9%E7%B6%DC%2A%F8%ED%A0%E1%8E%5B%AE%83%8B%A6%FB%28%BB%21%8EX%A9%25%94%AC%F8H%23%8C%28%82%C8%8C%F9%F6%B1G%1Ew%D4%D1%A3%1B%00%93%C1%2A%17YXA%85%92%08%1BAD%10%3E%EC%80%83%0D3%C8%F0B%0B%2A%A0%00%AC%08_%86i%EC%05%C8%A6%19A%04%CE2%00%B2%02t%DAi%ED%B5%7Cj%8B2%A0%04%82%DB%B2%A1%88%2A%2Aa%A0%85%18%8A%02i%CD%94Z%8Ai%8B%2F%C6%E8%29%207%12%5D%07%1D%A6%A2z%C6%90_t%A1%C5%15%AF2%A1%C4%11%B3%D6%9A%83%0D4%C4%00%83%0B%BD%9EP%82%97%1F%0C%7B1%D9%C9.%DBq%03%CF.%00%27%DBmW%5B2h%05%9C%CD1%04%B8%E7%AE%FB%EE%CD%F6%EE%3B%9Bm%06%EF1%EB%AC%ABm%BC%EB%AEG%AB%BC%9Cr%E6%DEl%9B%C4%AB%9D%BC%B4%D3Rk%9A%01%D8%BF%8Dmg%DC%0F%80%D9%F7%99Q%26%FE%F8%E4k%F6%D8%F9%E8%A7%AF%FE%FA%EC%B7%EF%FE%FB%F0%C7%2F%FF%FC%F4%D7o%FF%FD%F8%DF%14%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%85%06%000xo%80%C3%87%F5%06%18%C0X%40a%BC%02%0AH.%40%40%EF%80%04%98%13%18%D0%5B%00%82g%08%0C%F4%22%D0%B0%A1%F4%04%BD%0DV%B0%60%B1%E2%83%5E%0AB%86%C8%86%A1%D7%03%97%DB%5C%8A%E8EAg%8E%EF%2Czg%1C%1A~%28%8D%5E%1E%95%2AY%B2tG%AF%10P%D0A%01%D2k%E4%94%F5S%86%F4%26a%C5%9D%95%22%BDK%5E%FE%B9%1A%DF%08%3C%2CX%AF%5E9%D2%CB%24%96%7BX%EB%F32%91%25%CB%FD%23%F6%F4%EB%DF%97%9F%3F%D6~%BC%F3%D5%E7%1F~%F4%0D%C8_%81%FF%DD%15%A0~%04%DAG%20%83%07B%08%60%7F%09%DA%B5%04%85%E0a%98%D7%85%08f%D8%E1%86%05%C6%E2J%2A%A9%A0%82%8Au%A6%94%A2b%29%A4%8C%22J%28%A1%80%F2%89%27%9Dp%B2I%26%98%5CbI%25%94H%12%C9%23%8D0%A2%08%22%87%14BH%20%7F%F8%B1G%1Ev%D4%21%07%1Cm%AC%91%86%19d%88%01F%17Z%60Q%85%14O0%B1D%12E%08%F1C%0F%3A%D8%40C%0C0%B8%B0B%0A%26%900B%08%1Ft%C0%81%06%19%5C%60A%05%14H%10%81g%0E4%C0%C0%02%0B%28%A0%40%02%08%1C%60%E8%01%06%18%20%19%01%8C%12%C0%D8%A3%02D%0A%00%87%EE%BD%87%9Ex%ADd%CA%CA%2A%AB%A8R%E2%89%29%B6%F8%E2%8C5%DE%A8c%8F%3F%069%A4%21G%FE%D1%C7%1E%FEx%D8AG%1Co%B0%A1%C6%19f%8Cq%A5%16WP%21%05%14M%28q%04%11A%F4%B0%03%0E6%CC%10%83%9A%29%9CP%C2%08%22%80%E0%01%07%1Bh%80%C1%9D%13%E8%19%C1%03%0E%FC%09%A8%A0%98%15%8A%E8d%8D%3A%FA%E8%00%91%0A0i%7F%96%A6%E7J%A6%ADl%DA%E9%A7%A7%84%EAb%8C4r%A2I%26%A7%FA%08%24%23%89%20b%24%92%AF%C6J%87%1Co%B4%A1%06%1Ae%E8%8Ae%AF%5C2%21%2C%11%40%90%89C%0D%CA2%7B%82%09oJ%DB%C1%06%19%60pA%05%D9J%00%01%B7%0Cx%0B.%02%E2%2A%BAh%B9%E7%A6%BBn%88%B1%9C%E7.%BC%DC%CDkb%BD%2C%DEK%AA%BE%FCZ%82%EA%BFC%0E%EC%2A%AC%B2%3E%A90%C3b%7C%C1%85%16V%F8%DA%E5%C4%15%EBp%F1%0Ci%AE%E9%2C%B4%1E%83%7C-%C9z%9E%DC%A7%9F%81%0E%CA%B2%A1.S%D6h%CC2s%28%E0y%97%8E%A7%29%A7%9E%96%C8%B3%A8%A1%7C%F2I%87%A9A%0F%DD%C8%22%01%1B%5Dp%1D%07C%B9%C6%19e4%8De%D4%11%0B%3BD%C5%C7%26%9Bu%0A%28%3C%1BB%D7%21%8F%9C%ED%9E%DC%F6%A92%A1-%93%BB6%DB%EAv%F6%D9%E9%A8%7B%F6%C0%EA%AC%B3%EE%C0%EB%B07%20%FB%EC%29%A7%0C%E8%ED%82%82%9B%19%CBg%1B%2A%BB%ED%DF%0E%1A%AE%B8%88%26%3A%99%DA%A3C%9An%BA%885%EF%BC%F3%81E%2F%FD%F4%D4Wo%FD%F5%D8g%AF%FD%F6%DCw%EF%FD%F7%E0%87%2F%FE%F8%E4%8B%14%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%9F%06%0007nB%01%02%02%E8%B5k0%C0%00%02%80%07%E0%D5%5B7n%80%03%0A%10%208%60%A0%00%81%01%03%0A%C7%3DPA%C2%03%07%0C%16%24%40%60%40r%DC%05%23%3Ch%B8P%B9A%01%BE%04%25%D8%80%A1%A2%04%08%07%9E%F9jx%82%04%88%0E%13%A8%0D%8E0%03%26%8B%14%1C%B9%0B%B6%D8S%07N%9A%25%C1%09%D6%60%84h%90%1F%2F%C9%07%F2%D0tI%92%237%D1%05%0A%19%15%AA%D3%26%3D%D9%01%FE%14Iu%AA%D4%28A%E1%91%B4b%B5%2A%15%A2%F0J%5E%B9j%D5j%11%7CX%B0%E47%0A%BF%24V%2C%FC%8E%F0%27%8B%2C%FF%05%98%DD%12%03%FA%F7HxL%24%18%CB%82%07%3A%08at%08%12%F8%A0%80%16N%98%5C%83%192h%21%2C%1A%06%D7%A0%7F%17f7%A2%82%1E%92%18bnL%F8%07%20%83.%C2b%60t-%FE%27%23%8C.%CE%98%5C%7F6%EA%28b%8C%3E%B2%08%24%7FC%1Eh%E3%2B%FB%1D%88_~IR%B8%24%92%FC%3D%D9%E4%8E%F8%BD%02%A5%92%F9%5D%E9d%96S%06%B7D%96%AEt%99%5B%7CV%BA%C2%08%7CV%CAwfvd%BA%12%26%9A%F2%99%19%5E%12e%B6%B2J%29x%922%8A%28%A2%84%02%CA%27%9Ex%D2%09%27%9Bh%82%C9%25%96TB%89%24%91%3C%D2%08%23%8A%24r%88%21%84%04%F2%87%1F%7C%E8%81%87%1Dt%C8%01G%1Bk%A4a%06%19b%80%E1%85%16XT%21%C5%13L%2C%91%84%11%FEC%FC%D0%83%0E7%D4%20C%0C%2F%B0%A0%C2%09%25%8C%20B%08%1Ft%C0%81%06%19%90V%01%05%12D%00%C1e%0Dd%A6%80%02%9B%29%B6%18c%05T%EB%18%60%8FA%06%19%5E%DC%E2%05%40%9B%F4%AD%C7%9E%2A%A9%A0%82%CA%29%A6%E4%D9%E7%9F%82%16%9A%C9%25%95L%C2%A8%A3%8C%24%82H%21%84%08r%E9%1Ey%DC%D1%29%1Cn%84%3Aj%18_p%91%85%15SH%01E%13J%1CA%04%10%B3%E2P%C3%0C%B8%EA%8A%82%09%24%88%00B%B0%C3bp%81%05%15L%90%EC%B2%0E4%BB%C0%02%D0J%CBXc%D6b%9B%AD%B6%DDr%FBm%9C%E1%B22n%B9%A7%A0%5B%8A%9E%EB%02%EA%9D%A1%89%CA%0B%89%A3%8BH%8A%AF%A5%7D%F0%CB%A9%A7%A0%A2a%C6%18ax%B1%05%16%08G%C1%EA%ABC%40%AC%83%C42%C0%E0%C2%0A%29%F0%3AB%08%1Bw%B0%81%06%18X%60%01%05%22%2B%CB%AC%C9%29%2Bv%00%B5%D5b%AB%ED%DD%82%C5%0C%00%FE%9D%F3%D1g%F3%2A%AB%90%7B%AE%CE%3C%FB%F9%C9%A0%85b%12t%24%908%C2H%D1%87%14%22H%20%98jZG%A7o%80zF%19%A5v%A1%C5%15%AA.%BC%04%12E%08%F1%03%0F%B4%D2%D0%F5%D7a%F7J%F6%07%1Cl%90A%DA%21%27%ABl%C9%26%A3%1C%F7%DC%2C%D7m%F7%DD1%7B%CBw%CD%E3%0A%AE%F3%CE%3D%0BJ%E8%BB%96%2C%DA%A8%E3%8A%20rH%BE%80%60%DAo%1Ds%C4%E1%06%1B%A2%92A%B0%E7VP%B1%2A%13J%90%1E%84%0F%3B%E4p%83%EA%2F%B4%B0%C2%C5%19%03%EB%81%D9%C5%AE%DD%F6%B2%0F4%D0%C0%C9%28G%3B-%CB.%7B%D9%B6%82%27%00%00%14%00%02%08L%E0%03%16%C8%40%06%3A%E0%81%10%C4%9D%FE%F4%C7%80%0Af%86%7F%BA%7BV%026%E8%3F%B9%CDme%06%60%99%067%E8A%DE%85%D0Z%D7%0A%0C%DE%F2%D6-%C2%B8%F0%850%0C%8F%0CgH%C3%1A%DA%F0%868%CC%A1%0Ew%C8%C3%1E%FA%F0%87%0D%40%0C%A2%10%87H%C4%22%1Aq%25%01%01%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%ACY%89%01%02%9C%AD%18%40%40Z%B5%00%E0%AE%5D%18%A0%80%01%02%04%06%08p%9Bv%AE%C2%00%0B%228Pp%E0%EE%00%BDr%FD%16%0CP%21%C5%08%0E%15%200Hp%20%AFb%84%1D%964%09RC%05%88%0C%13%1E%28%18p%D9%A0%860x%DA%88%B1%B2%A4G%8C%13%1E%1A%24.%0D%21%8D%25H%88%FC%D0Q%F3EJ%11%12%05J%13%2C%E0%25%14%29P%9A%285%2A%C4G%0E%94%08%C2%07%06x%02%AA%D5%AAT%A5Du%C2%24i%8F%8C%E8%03k%FEX%82%05%EBU%2BV%AAN%91%CAD%854%F8%0E%85d%C9%8AE%FE%95%ABV%A8%E64%00%0F%E0A%1EX%F2%C9G_y%84t%C0%9F%40J%CC2K%80%F3%C5rI%0E%07%0E%94%C4%82%0C%8A%22%C5l%FC%25%C1%20%2Bi%1C%10aAJ0%08%C9%87%06%85%18%E0%88%24%12%B4%84%88%29%AA%18%60%2C%8F%B48%D0%8A%02%C6%28%23%00%26%CEg%A3%8C%26%C6%02%E3%8D%00%AC%E8%23%2C%8E%00%29%24%7DE%DE%B8%84%8F%F4%ED%D8%E2%92C%3A%99%22%94%E4%25%29%23%95D%1A9d%96J%0E%08K%23F%D6%F7%0A%98J%8AI%E6%95f%86%F9%8A%7Dg%3E%B9%A6%2B%AE0b%E4%9Bq%CE%09g%2Br%2Ay%27%9EF%DE%D7%0A%9Fz%FE%D9%CA%22%7D%0AJ%E8%8DJ%08%CA%CA%A1%3C%FE%C9%CA%A2%40%26z%1E%2B%8AD%EA%E8%2A%95%DE%88%C4%A3%AC%AC%92%08%90%9Bv%EA%29%A8%8F%AE%A2%CA%A7%9A%AEb%AA%2A%88%80%AA%AA%2A%FE%A9%B4%9A%AA%2A%B0%CA%2A%23%12%A6%A6%12%2B%90G%D0%9A%0A%2A%87%00i%84%AE%A8%00%2B%EC%AF%A8%9Cb%C8%B1%C5%2A%0Bd%11%BF%9EbJ%21%CF6k%0A%29%9Dp%B2%C9%26%9Adr%89%25%95P2%89%24%91%3C%E2H%23%8B%24%82%C8%21%86%10%22%08%20%7F%F4%B1G%1Ew%D8A%87%1Cp%B4%C1%86%1Ah%981F%18_p%A1%05%16VL%11%85%13L%2C%91%84%11C%00%E1%C3%0E9%DCP%83%0C1%BC%C0%82%0A%28%98P%C2%08%22%80%F0A%07%1Ch%90%01%06%17TP%C1%04%12D%00%C1%03%0E8%D0%C0%02%0A%24%90%00%02%07%14V%00%5Ez%F1%F5%16DE%24kJ%29%A5%902%8A%28%A1%80%F2%89%27%D9n%92%09%26%E0RB.%24%8E0%92.%22%ED%0A%F2%87%1F%7C%CCk%2F%BEn%EC%7BF%19%FFz%C1E%16VP%21%05%14O0%91%C4%11D8%0C%F1%0D4%C8%00%83%0B%17g%BCq%08%20x%00%B2%FE%C8%24W%40%01%CA%2A%B3%DC%00%030%2B%10%B3%CD7%E7%95%B3%CE%0F%15q%8A%B4%40%93Bt%D1%9F%24%DD%ED%B7%95%8C%5B.%BA%EA%1ER%88%20%81%F8%21%2F%BDu%CC%01%C7%1Bm%AC%91%86%19d%00%DC%85%16WTa0%C2J%1CQ%84%10%3F%F0%A0%03%0E5%C4%FDB%0B%2B%A4pB%09%24t%AC7%07%1Bh%40%B2%05%7F%A7%1C%B8%CB%2F%1B~%B8%01%D4%27%9E%D7%5E%D8c%88%90%E3%3F%07%3D4%E5Hk%AB%09%D3%E1%92k.%23%8A%24%E29%21%81%5C%CD%87%1Exl%0DG%D7i%A0%016%18%5DlA%B6%D9O4%A10%C3n%8BX%DC%E6%C6%82%14d%8C%04%23%08%C1%07%3C%80%BC%E4a%C0%02~s%DE%CAZ68%98%CD%8Cf53%40%016%A88%EC%F1%A5%21D%80%9C%D0D%21%0A%A3UN%7C%DE%0A%D7%24%CAu%AE%A9%19%E2s%A1%CB%1A%E9%E6%10%07%D4%A9%8Eu%00%13X%ECf%C7%04%25%20%A1%08%84A%C8%DD%EEj0%83%8A%01Ox%1B%EB%D8%02%917%B2%0B0%0Fp%13t%19%E1%2Cx%C1%0Cn%F0f%87Y%DC%CE%16B%80%07%B0%ACe%60%A4%60%03%C68F%06%98%D1%8C%0BHc%1A%A5g8%99%B9%11%01p%84c%CD%E6H%BD%3A%5E%91%83x%21%C0%1C%0BS%BD%3B%E6%11gY%CC%A2%07%B3%F7%96B%1A%B2%2F%40J%A4%22%17%C9%C8F%3A%F2%91%90%8C%A4%24%27I%C9JZ%F2%92%98%CC%A4%267%C9%C9N%C6%24%20%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%2B%C4%00%5E%3F%0A%18%1B%A0l%D8%8C%04%0E%14%180%40%80%D9%B3%15%0FP%90%C0%00%C1Z%B2p%27%2AX%21%A3%84%86%08u%0B%10%18%006%EF%C3%03A%C6P%19%22%83D%06%BA%07%06%18~8%60%C9%A0%40t%C8P%11%12%83%84%06%07%92%277%1C%22%89S%25F%81%E6%90%91%12D%C5%02%D1%0DO%28JeJ%94iF%7F%E4x9%21%00%F6%C2%0C%7DZ%B5Z%95%AA%94mJ%89%AC%28%F0%AD0%01%1AU%AF%5C%B5b%B5%0AU%29Py40O%28%C0J%29X%AF%A2%FE%0Bg%A5%2AR%8D%ED%09%81h%82%05%3E%BC%F4V%A0%B2%F4Fo%B0%04%22%F6%EC%DD%BBJ%15%E75%FD%82%12%E8%F1J%2C%F8%85%F7J%2B%81%5C%F0_A%06%90%A1J%2C%10%E6%17%DD%23%2B%2CHP%00Q%88B%20~%EDu%E2%84%85%04%D5%60%09%84%1B%B6w%8A%18%04%80%28P%07%84%90%18%21%7B%AD%E0%E1%80%8A%008%80%C7%2B%B2%90X%60%21%1E%D0%28P%12%B2%E4%A8%23%2C%97%E0%E0%E3%40H%08I%A2%28Q%14v%24%00H%E8%B8%0A%1A%07%3CIP%12%2F%3AbeAQn%A8%E5%96%03%25%C1%E1%97%60%02%20f~%8D%94%F9%A3%84i%AA%29%A6%81m%96%89%84~q%82%99Dt%D21%A2%A6%99%AE%BC%A7%A7%9B%7D%0A%F7%A7%9C%EF%B5%B2%C8%9EH%087%DD%A1n%8E%C7%0A%A3e%26%E1%A8%22%88%B2b%E9%2A%89T%BA%CA%A6%99%AA%89%04u%AB%A8%D2%A9%9C%A1%AA%A2%0A%22%88%86%9AJ%2A%A8z%AA%CA%AA%FE%A8%B4%2A%27%AC%A8%1C%B2%E7%11%A9%A0%82%CA%29%86%DC%AA%EB%29%A6%F4%AA%E6%11%BB%9AbJ%21%7B%1A%01%AC%29%A5%20%AB%A6%11%C6%96B%0A%21%7B%16%C1%2C%29%A4%0CR%AD%B4%A4%8C%22%C8%B6%DD%8A%F2%AD%9AD%84%1BJ%20%7B%0E1%CA%28%A1%9C%BB%A7%10%A2%88%12%0A%28%80%EC%19D%BB%A0%7C%F2%87%BD%F9~%E2%89%1F%7B%02%91%AF%27%9D%00%AC%26%10%FEz%C2%09%1F%01%7BB%F0%26%0C%AB%F9C%27%9Dp%B2%C9%1E%7B%F6%C0%89%C5%9A%E8%91%F1%26%9Bh%82I%1E%1Fk%92%C9%25x%EC%C9%83%C9%97Xr%C7%9E%3B%9ClI%25%920%B2H%22%88%1CbH%21%84%08%12%C8%1F~%F0%B1%87%1Ex%D8Q%C7%1Cr%C0%E1F%1Bk%A8%91%86%19d%8C%11%06%18%5El%A1%05%16VP%21%05%14N0%B1D%12G%14%21D%10%3F%F0%A0%03%0E7%D40C%0C0%BC%D0%C2%0A%29%9C%60B%09%24%8C%10%02%08%1Et%C0%81%FE%06%19%60%60A%05%15L%00A%03%0A%24p%80%01%83%B55%D2%0E-WB%C9%24%92%40%F2H%236%E3%7C%08%CF%3E%03%DD%C7%1Ey%DCQ%07%1DI%C3%D1%06%1BN%9F%11u%18%5ET%9D%C5%15UL%21%C5%13M%2C%A1%04%12E%0C%11%84%0Ff%A3M%C3%DA%2F%B8%C0%02%DC%28%CCM%82%08%20%7C%90%F7%06%7C%FB%1Dx%04%0F4%B0%80%E1%82%B5%E5%E4G%3A%CC%FCx%24%91%3C%E2%88%CD%8A%E4%8C%F9%CFAs%EE9%E8q%BC1%BA%D3f%94%21%F5%17%5Dh%B1z%EB%AF%7B%3D%BB%11%B6%E3%AEC%0Ei%F3%EE%BB%0A%29%04_%C2%08%22%08%C1%07%F4%B6%B7%BE%5D%A0%02%14%98%80%04%20%E0%00%06%28%00%01%06%88%9E%5BB%A2%03%C7ANr%8Eh%C4%CD%BC%D73%F0%09%ADs%9F%93C%1CDG%3A4%40m%7D%ED%C3%9A%15%A6%10%85%27x%0DlF%18%9B%FD%F0%A76%B6%ED%2Fns%03%A0%00%F3%C6%01%E4a%E0%02%B5%7FK%E0%02%1F%C0%80%E7A0q%13%FCH%0E%28%21%89HH%AE%11%1A%B4%DC%F7%80%264%3D%8CO%84%24%5C%C3%D3N%E7%85%14Z%A1u-%8C%1D%D8jw%3B%B3%D1pm0%B8%A1%DC%FEG%3C%E3%E9%0Dy%7D%0B%E2%04%26%10%01%066%80%01%09%40%C0%E1%06%E3%96%B7p%84%00%0C%08d%20%17%40%C8B%2A%E0%90%88L%80%22%15%89%80F%3A%F2%00%90%8C%A4%01%26I%C9%08%16%E0%92%98%24%80%267%998%B6%0C%C0%92%98%14%0C%27%3B%E9I%B6%8C%E5%94%7D%2C%CB%F4%F6%C4%CAV%BA%F2%95%B0%8C%A5%2CgI%CBZ%DA%F2%96%B8%CC%A5.w%C9%CB%5E%FA%F2%97%C0%E4I%40%00%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%95g%80%00UO%0E%18%20%00kV%91%01%10%280%40%80%EB%D5%AF%1F%1Dt%B8%E0%20A%01%B3%5E%D1j%BC%10%E4%07%8B%0E%12%16%1C%20%20%40%80%5C%8D%14%BA%C8%F9%B2%C4%06%09%0C%0F%DC%FA%FD%7B%D1A%99I%8A%F6%A4%B1%12%C4%C5%07%0A%08%E22%9EX%00%0B%A7P%9A%20%0D%A2%13%86%09%0E%0F%066W%0C%D0%A4%93%AAS%A3%3AUR%C4gM%93%0A%AA%2B%C6%90%D4%8A%D5%2AT%A5%40G%F2%E3c%40%EE%89%1B%02%B5Z%EE%3B%95%A9Q%9B%C8%2C8.qA%1BU%CB%7B77%D5g%03%F5%88%04%B6%FE%90%CA%CE%7C%95%2AH3%BEGD%D2%C9%15y%ED%9A%8E%A8%87x%82%91%2B%F7%E4Y%91%2A%93z~C%0C%7C%B4%82_v%AC%A4%A2%C7%04%FE5%94%C0%19%A8%BC%C7%CA%83%88%84%90%20C%02X1%CA%80%CC%B1BI%0E%132%F4C%26%18j%07J%16%8Bu%88%10%09%86%DC%97%1F%2B%A7%C01%9D%89%08Ip%87%80%2B%AE%F2%C7%050%22d%80%18%A7%84%F8%20%23%2B%E4xP%00N%7C%F2%9Ev%9B0%21%E4A3L%A2%22%81%FA%81A%C0%92%05q%A0%1C%86%0F%A6R%87%03T%12%E4%80%1D%AB%F8%B8%8A%20%1DtY%D0%11%3Ejh%83%99%06%19q%A4%27Nh%C6%A6%40Edh%0A%19%FD%CDY%90%9B%0F%B2%B2%88%9E%08%15%D1%E7%2A%8A%00z%90%11%AB%24%BAJ%22%86%B6i%9E%2A%AA0%DA%28AE%3C%9A%0A%22%93R%AAJ%2A%A9%A0%82i%A6tr%8A%8A%A7%A0%D29%2A%2A%A7%18R%2A%00E%A0z%8A%29%FE%AA%96J%C4%AB%A6%94R%C8%AAD%D4ZJ%29%84%AC%3A%C4%AE%A4%902%08%AE%A5%902%CA%28%82%F8j%AC%28%A2%24%5B%AA%10%A3%88%12J%28%81%AC%2A%84%B4%A1%80%02%C8%AAAd%0B%CA%27%7Fp%FB%C9%B8%9E%F8%21%AE%27%9Et%D2%C7%AA%40%A4%DB%09%27%7C%B0%FB%EE%26%9B%EC%B1%EA%0F%9Cl%A2%89%26z%AC%EA%83%BE%99%60%92%C7%AA%3D%04%7C%89%25w%10%7C%B0%25%95%D8%B1%2A%0F%0CSBI%1D%AB%EEP%09%25%93HB%C7%AA%3AL%92q%24s%AC%9A%83%24%91%40%F2%88%1C%AB%E2%10%C9%23%8F8%02%C7%AA7%B4%DC%08%23n%ACjC%233%2F%D2%C6%AA50%B2%88%22%89%AC%B1%2A%0D%40%23r%88%1A%AB%CE%60%F4%21%85%A4%B1%AA%0CL%13B%88%19%AB%C6P%08%21%82%08R%C6%AA0%0C%22H%20%80%90%B1%EA%0B%60%FF%E1%87%18%AB%BA%60%B6%1F%7C%80%B1j%0Bl%EF%A1%87%17%AB%B2%B0%C7%1Ey%E0%D1%C5%FE%AA%2A%E4%91%C7%1Dv%CC%D1F%1Bl%AC%91%06%1Af%94A%06%19c%84%01%86%17%5El%A1E%16X%5Ca%05%15RD%01%85%13M0%B1%84%12H%1CQ%C4%10A%00%F1%83%0F%3C%EC%90%03%0E6%D4%40%C3%0C1%C0%00%83%0B-%B0%B0%82%0A%28%A0p%82%09%24%8C0%82%08%20%7C%E0%01%07%1A%60P%81%04%0F%2C%80%C0%5E%5D%C9y%92%0A%80%D7A%C7%1Cr%C4%01%C7%1Bm%ACa8%E2f0%EE%B8%17%5Dp%219%16VT%81%B9%14P%3C%D1%C4%12K%24%81D%11D%90%0E%04%EA%3B%E8%80%C3%0D6%BC.%03%0C%2F%D0n%7B%0A%29%D0%9D%09J%F0%BB%10%80%C0%03%1D%D8%80%06.%40%81%084%40yo%B9%CAYR%92%02%E9Q%CFzopC%F6%D4%90%863t%8F%0Cbx%5C%F8%B4%A0%85%CA%5DN%0A%E8S%9F%E7%92p%04%23%10A%08B%A8%0B%0Fx%60%3F%FC%D5%60%062%88%DD%0Bjw%BB%00%EE%AE%04%F1%BD%03%9E%F0%3A%C0%81%0Dd%80%81%11p%80%F2%C82%80%09%A6%04%05t%A8%DE%F5%06%B7%06%0E%22nqb%08%C3%17%C0GB%13Va%0A%29%EC%DC%E7%90%60%84%D1%09%C1t%A8%D3%C1%EAn%E0%3A%1C%F2%CF%05%B6S%81%0F%07%18D%03%0E%B1%88%19%C0%00%12%1F%C0%00%04%18%E0-%5DY%C9%09%E4p%3D%0Dj%EFp%89%03%E1%F7%BA%20%B9%2CX%EE%8B%99%7B%82%13%3C%07%3A%D1%0D%21%86%F3%EBA%FDX%D7%3A%1C%C6%A0%7F-X%C1%0A%E6%08%C4%DF%89%20%04C%24%A2%02%8Fh%01%0A%20%8F%01%098%00%20%9DW%12%01%20%E0%96%B8%5C%DE%01v%C9%CB%03%18%E0%97%C0%FCe%01%86I%CCb%12%E0%98%C8L%E6V%96%C9Lf%F6%A5%2F%C9Tf3%B9%D2%17%09%D2rU%D8%CC%A66%B7%C9%CDnz%F3%9B%E0%0C%A78%C7I%CEr%9A%F3%9C%E8L%A7%3A%D7%C9%CE%A1%04%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5Dj1%80S%A6%2F%05%14%280%20%00T%96%02%1CDP%40%D5%EAU%94%02%3C%B8%F8%40%81%C1%01%02%02%9E~%25Y%E2%0A%14%1C%24.8%40%405%EDZ%91%27%E4%F8Yc%C5G%0A%0D%10%12%14%10p7%24%869%9A%22%09%82%B3%85%88%0B%0F%12%0Ex-%DCq%81%1AR%A4%3AQ2D%07%8C%92%19%18%08P%F6X%E0%0B%A9U%A8Hy%AA%94%28O%99%1E%0CF%7B%FC%A1%A9%15%2B%D4%A5%40%5Db%04%C7%84%EC%8E1%22%B5%B2%7D%3BU%A9P%93%A2%88%FE%ADqC%A0%E1%C3o%ABB5%AAMl%E6%19%21%C4Q%05%9D%D5%EDU%A9%02%FEu%C0%9E%B1%80%96Q%D1%BD%7F%8FT%83%3C%C6%00M%3A%A9%9F%BFJ%13%12%F7%18a%40R%BF%AA%7F%FFQd%18%80%9FE%1A%FC%E1%DF%81%A8%D1%E1%C0%80%15-%B0%06%2A%07%AA%22a%2A%82x%C0%20E%04d%11%8A%7F%12N%08%C9%0C%17RTD%26%1DN%98J%2A%98%18%11%E2D%26%20R%E2%89%27%862%86%80%2BBtA%1E%A8%A8%92%8A%89%A8%98r%87%045B%94%00%19%A4%C0%08%23%2A%A8%14%F2A%90%0F%09%20%C5%27G%22%89d%2470%F9%10%0F%93H%29%E5%29%A7pb%05aV24B%20Hri%E6%29%A2%B0%A1%40%98%0CE0%87%29eri%8A%29%A5%ECQ%01%9B%0B%15%E0E%28g%CE9%E7%21%28%E0%A9P%00Jd%22%A7%9FtR%92%84%A0%0A%C1%D0%08%A2t%96RJ%27Z%0C%C0%28B%1A%EC%E1%A7%A4%9C%8A%02G%03%97%1E%D4%00%1C%A4pZ%0Af%A4%8C%B2%C7%06%A1%22%14%84%A9%FE%98%8D2%0A%232%B4%9A%10%10%A8%A6%3A%0A%25HLf%ABA%3F%C8%2Ak%27%5E%D0%F8%2BB%3F%88%12J%28%A2%08r%ECB%3F%84%02%CA%B4%80%3C%AB%D0%0F%D3~%F2%C9%1F%D6%26%E4%83%B6%9Ex%E2G%B7%08%F9%10n%27%9D%8CK%AEA%3Dp%E2%EE%26%7C%ACk%10%0F%9B%D4%AB%C9%1E%F2%16%C4%83%26%9Ad%92%89%1E%F9%12%B4C%26%98%5Cr%09%1E%01%0F%A4%C3%25%96XR%C9%1D%09%0B%A4C%25%95PBI%1D%11%03%90%03%25%93L%22%09%1D%19%E3%20%89%24%91D2G%C67D%02%C9%23%8F%C8%91%B1%0D%8F8%E2H%23pd%5CC%23%8D0%B2%88%1B%19%D3%B0%C8%22%8A%24%D2F%CF%89%24%82%08%22kd%3C%C3%21L%1B%92F%C62%14R%08%21%84%A0%91q%0C%83%0C%22%88%20fd%0CC%20%81%00%F2%07%19%19%BF%F0%C7%1F~%F8%21F%C6.%F8%C1%07%1F%7B%80%91q%0B%7B%E8%A1G%1E%5Ed%BCB%FE%1Ex%DCq%07%17%19%AB%60G%1D%84k%91q%0At%D01%87%1CXd%8C%82%1Cr%C4%01%87%15%19%9F%00%C7%1Bo%B8QE%C6%25%B4%D1%06%1BlH%911%09k%AC%A1F%1AQd%3CB%1Ai%9Ca%86%13%19%8B%60F%19d%90%B1D%C6%21%901%86%18a%2C%1A1%08a%80%F1%85%17Gd%FC%81%17%5Et%C1E%11%19%7B%C0%C5%16Zh%21D%C6%1Cd%81%C5%15W%FC%40%BD%15VTAE%0F%19k0%85%14%E4%EF%90q%06Q%40%F1%C4%139d%8C%81%13M4%C1%C4%12F%14Q%C4%10C%08%11D%10%3F%F4%EFC%0F%3C%E0%C1%0Ev%A0%83%1C%E4%00%077%B0A%0Dh%C0%C0%19%C8%20%06%10%84%C1%0B%5E%E0%02%17%B4%80%05%2CX%81%0AT%90%02%14x%F0%04%26%08a%09H0%82%12%8A%20%04%1F%E8%00%070P%81%084%00%01%06%40%8BZb%82%81%25%D8P%09I%40%C2%11%EAW%04%22%E4O%7F%FE%40%F8%C1%FF%00%28%40%02%1E%F0%06%09%B4A%03g%E0%40%09R%D0%82%17%5C%81%069%D8A%14%9C%E0%8A%22%24%E1%09A%E0%01%0Eh%C0%02%13p%80%02b%98%16_%BD%E4%02I%C8%E1%0E%7B%F8%C3%20%00%21%88%3F%00%E0%00uP%40%1C%20P%81%0Bd%A2%0C%1E%18%03%09B%11%83R%A4%A2%15%B1h%82%12%8C%90%84%238a%08%40%90B%0Ed%C0%02%12%10%E3Y%CA8%13%0B%F0%D0%87%40%F4%DF%FF%04X%40%03%DE%11%8F5p%60%04%9DH%C1%28n0%05%A8%FC%60%21%0F%89%C8D%86%60%91%1F%F0%80%07T%B8%81GFR%01t%29%A3%19%5BR%816%BEq%88%014b%0E%90%98%C0%1A%2C%90%06%7B%7C%A0%13%2B%D8%82%28j0%95W%04%A1%21%5B%29%02E%C22%96%B3%E4%00%076%A0%01%16Fr%010%AC%CA%0C_%12%00%02%98%F3%9C%E8L%27%01%06%C0%CEv%BA%F3%9D%F0%7C%A7%00%E6I%CFz%DA%93%9E%E8%27t%E7%3C%9D%B2%CB%8C%F9%F3%9F%00%0D%A8%40%07J%D0%82%1A%F4%A0%08M%A8B%17%CA%D0%86%3A%F4%A1%10%8D%A8D%A1%12%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05%28%29%94%85%01R%99A%24u%8A%24h%8D%0B%01O%5B%9EH%94%8A%D4TAo%B2%E8%80%905e%06%3E%ACX%A1%1A%C5%89%EA%1B-AVP%18P%96%24%038%AB%5C%B5Z%B5v%13%A4%40o%E3j%80P%A0.H%02%5EJ%B9Z%BC%B7o%A2%3Fn%B2%C4%DD%00%21A%81%00%869%FE%D0%B4Xo%2BV%AANy%22%B3%C0%82%15%C9%2B%28%5B%1E%809%F3%C5%17%90Z%B5%F2%2C%5B%AD%1D%0A%04%3D%E8P%A1%BA%C0%00%01%AD%5DK%D4%C0G%B6q%E3%AB%06%7D8H%00C%EF%DF%C1%85%3B%5C%B0%26%D5%F1%E3%8CV%2C%2C%C0%605p%E9%0E%0B%FE%7C%21%95%B6%7CyH2%1E%12%F0%1D%20%3Ax%84%3E0%ADZ%C5j%3E%7DV%9B%98%B8o%18%E0%FB%7B%8408b%DF%80%AB%8CB%86%01%16%ED%F7%9F%06~%A8%E2%E0%83%0E%A2B%87%03%FFu%F4%C0%1B%A6%A4%A2%E1%86%1A%06%E2A%85%1C%11p%05%28%1A%A2%82%0A%87%8F%D0%00%E2F%01%2C%91%89%89%26%9E%02%E3%25F%AC%B8%91%0B%8C%9C%A2%E3%8E%3A%82%22%06%826b%94%C1%1E%A5%98b%E4%91%A6%90%22%07%85A%5E%A4%80%19%A2%94%22%E5%94R%FA%C1A%93%17%0D%40%C5%26%A4t%E9e%97%8C%C4%80%E5E%40H2%CA%99h%8EB%CA%24B%8Ci%D1%08%81%88%22%E7%9Crn%E2%05%90nJT%81%1C%A0%84%E2%E7%9F%A1%7C%22G%04yN%84%40%17%9B%80%A2%E8%A2%8A%FA%D1A%A1%12%09%B0%04%25%9FTji%A5%89%CC%00%A9D5%24%D2%C9%A7%9E%84%1A%AA%24P%60%B5%E9C%1F%D8%C1%C9%AA%AC%AE%8A%09%19%FE%09%9C%FA%D0%03hd%B2%C9%AD%B8n%A2%89%1C%13%C8%1A%DE%14%94h%22l%26%C4%0A%CB%07%09%BE%F2%07%C4%22%97%5C%82%89%B3%CF%5E%82%08%10%C96%94%82%1F%96d%ABm%B6%8EDAW%B5%0AY%C0%06%25%95%94K%C9%B9%94LB%1A%B8%0A-%00F%24%93%C4%2B%EF%24%92%B4q%01%BB%0B%D5%10%C9%BE%91H%C2%2F%1F%2A%E0%CB%10%0D%8F%14l%B0%20%3C%28%28pA34%E2%C8%C3%89%3CQ%D8%C2%0C%C9%C0%C8%C5%8C%C0A%B1C1%28%E2%B1%22ml%DCP%0C%88%94%8C%08%1B%223%04%83%21%85%18b%88%1A%29%2F%F4%02%214%13%82F%CC%0A%B9%20%C8%CE%82%98%81sB-%00%22%F4%1Fd%FC%8C%10%0B~%24%ED%C7%18F%1F%B4%02%1F%7BD%1DF%D3%06%A9%90%C7%D5yxAuA%29%D8%E1%F5%1D%5DlM%10%0At%94M%87%16b%0Ft%82%1Cl%CB%81E%DA%02%99%00%C7%DCpX%017%00%25%B4%A1w%FE%1BU%DCM%C2%1A%80%AF%21%C5%DD%23%A4ax%1AQ%DC-%82%19e%98a%86%13w%870%C6%18b%88%B1%C4%DD%20%80%A1%F9%17I%DC%FD%81%17%5Et%D1%C5%11w%7B%B0%85%16%A8%13qw%07X%5C%81%05%16m%C2%BD%81%15UTa%C5%0Fwk%20%C5%EER%F4pw%06P%04%0F%85%0Ewc%D0D%13L4%81C%F1K%28%A1%C4%125%DC%7D%C1%11%D4%1F%A1%29%DC%16%10%A1%3D%11b%C2MA%10%E0%07%F1%C2%DD%13%FC%E0%C3%F9-%DC-%01%0F%3B%B4%AF%1D%DC%12%E4%80C%0E9%A4pw%046%E4o%C3%09wC0%C3%FF30%C1%DD%1E%10%83%02%C6%60%04ws%80%0B%5C%F0%02%17%84%E0n%0D%60%81%04Y%00%02%08%AA%E0%82%29%F8%10%DC%18%80%82%0E%9E%E0Q%1B%2C%81%09LP%82%0D%DCm%01%24%18%81%0AE%C0B%16%86%E0%85%2F%14A%0C%5B%28%C3%19%CE%D0%854%8C%21%0CuH%C3%1A%86%00%04%F5%1F%E8%00%070P%81%084%20%01%07%20%00p%14%16%13%05%C8%B0%87-%84%A1%0BC%20%82%11D%91%8AP%CC%21%14m%B8%C5%17%02%D1%03%1C%C8%80%05%24pD%03%10%805L%84%89%02%40%C0%C6%1F%FE%90%8D%40%04%E2%07%E0%E8E8%CE%11%8Ex%CC%23%08%DE%18G6%DE%B1%8F%1F%08%E4%07%3C%D0%81%0D%10%D1%88%080%E3%12s%92%80Az%C0%91%81%F4%80%24%1F9IAF%B2%92%8E%AC%24%26%059IIv%A0%93%93%EC%80%289%B0%01%0D%5C%60%02%10%60%00%02%7C%B3H%9C%24%60%94B%14%A5%2Cg%09KZ%8A%92%90%1C%C8%E5%2C9%60KX%E6%92%97%B5%24%25%295%20F%09%3C%60%01%ABD%A3N%FA%23%80f%3A%F3%99%D0%8C%A64%A7I%CDj%3E%F37KL%E3%DD%B6%C9%CDnz%F3%9B%E0%0C%A78%C7I%CEr%9A%F3%9C%E8L%A7%3A%D7%C9%CEv%BA%F3%9D%C2%09%08%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05X%19%E5%07%03R%99E8%C1%9A%CA%AAM%82%A7-O0z%C5%F5%D5TX%A4%AC%04%C0%8A2%03%9FV%AE%5Cu%5D%FBJ%D2%0A%B2%24%19%BCI%856%AD%5D%B5k%5B%E1y%00%F7%23%01.%A3Z%09%1E%9C%D6%14%AB%BBi%5B%8D%922%B6%AFF%1F%97XIf5%B8U%2A9%0FF8r%85v%F0%AAT%89H8%BE%E8%A2%D1%AAU%93%27%AB%DAc%81%A0%13R%83Y%A9%3A5JS%18%04%A3%25f%C8%93J%95%AA%D3%C0U%11%02q%F0%81%1D%D4%9FK%85%CA%E4%A8%0E%8B%DC%0E%17%A4%29%95%AA%BA%EF%EB%8CT%2Cl1i6%29O%95%14%FE%E99%F3%E3%2At%84%04%B6%7CB%C5%BE%BA%7BG1%1C%0E%E8%02J%14%27I%85%E8%84YBCB%E3%F3%03%ED%40%89%29%A7%14%C8%DE%29%A8%60%B2%C4%7F%0EQ%60G%26%8F%04%F2%86%16E%C0%F0%01%04%03%00%08%40%0B%89%94%E2%A1%29%04%16%F8%89%18%06T%E4%C2%1E%7C%A4A%85%0F%2Ah%00A%02%04%40%87A%1E%A3%90B%8A%87%1F%92%22%87%03%18%0D%B0C%18O%E0P%C2%05%0E%20P%C0%00%0C%3E%E5%40%1A%9F%8C%E2d%8D6%92%E2G%07%1C5%40%C3%0C%22T%C0%C0%01%04%08%10%40%92E%11%20%C5%25%A1%84%22%CA%99%A28%B9%88%0C%209%90%81%04%0B%180%80%97O%05%40%04%24%9F%7C%02%CA%9Ee%86%12%89%10%23%05%90%40%02G%D2y%94%0A%83x%A2%A8%27y%E6%89I%17%25%96%14%C0%9C_%1Ae%81%1C%9Bp%A2i%27%9Cz%B2%C9%1A%0D%A8T%29Q%09ta%89%26%9Al%A2j%A6%9C%D8%A1%81%86%FE%1D%0D%B0%84%23%97%60%92%C9%AD%99%A0%3AH%0B%B0v%84%03%21%95Tb%C9%B0%97%D4%8A%08%0F%BDr%D4%C1%1C%92L2%09%25%D0%0A%FB%88%15%05%24%AB%91%04d%3C%12%C9%B6%92t%3B%89%24g%F0e-F%07%3C%81%88%23%8E%3C%A2.%24%90D%22%C7%AB%E3%5E%14%40%0F%81%2C%C2%08%23%8D%E4%8B%EE%1Eo%C5%7B%91%0Au%20%82H%22%8A%2Cb0%23%82%10%01%A6%BF%10a0F%21%86%18r%C8%21%02%27R%88%15%B81L%D1%02T%04%22%C8%20%84%10R%08%C4%86%84%01%81%C6%14%0D%00D%1E%7F%00%12%88%C7%82%7C%9C%06%95%28K%14%C0%0Bp%F0%D1%87%1F%3C%FF%D1%B2%1Cl%D6%2CQ%07c%E4%91%87%1E%7B%A0%C8%07%1Fv%FC%20%80%D0%11%3D%20E%1Du%D8q%C7%1Dx%18%8D%C7%13%19C%ED%D0%01F%C0%21%C7%1Ct%D0A%B5%1DuX%11%81%D7%11%91%F0%06%1Cp%C71%F6%1Ca%7C%C0%B6D%22%B0%D1%86%FE%1Bo%BC%5DF%BFwG%24B%1Ak%AC%C1F%1A8d%18%B8D%21%9C%81F%1AjH%B18E%20%94a%86%19g%401%F9D%1F%8CA%C6%E7Ml.%91%07%60%84%11%86%18K%88%1EQ%07%5E%B4%FEE%12%AAC%C4%C1%16%5Cp%D1%85%11%B1%3F%B4%01%16Yh%A1%05%11%B9%3B%B4A%15VXq%05%A0%C13%94%81%14SPQ%C5%0F%C93%84%01%14QH%21E%0F%D1%2F%84A%13N%3C%01%C5%0E%D9%2Bt%C1%12%E47%91C%F8%09Y%80%04%12I%2Ca%03%FA%08UP%84%11F%1CA%03%FC%07Q%20%C4%10C%10%114%FE%04%A1%C0%0F%80%10%84%20%C0%00%80%05%99%00%0Fz%E0%03%1F%F0%0A%81%03%91%80%0Et%B0%03%1E%3C%07%82%02%89%C0%0Dp%90%03%1Dh%07%83%00%80%00%0Dj%60%83%1B%A0%00%84%00x%80%0Cf0B%13%A0%F0%010%80A%0Cd%20%1A%10%3A%A0%05.p%01%0CF%80%C2%06%AC%80%05%FE%2ChA%08z%98%02%15%A8%60%05%C4%01%21%03N%80%02%14%A4%C0%03%28%5C%00%09L%60%82%13p%20%8A%23%20A%09J%B0%01%14%2A%40%04%22%18%C1%082%E0E%10%84%E0%8Cd%04a%02%3C%F0%816%5E%00%85%09%E8%40%07%3C%E0%81%D6%80%10%01%1B%E0%80%1E%2B%80B%04h%E0%8F%1B%98%00%0A%0F%80%01%0Cd%20%03%82%04%E1%01%2Cp%81%0B%60%40%02%83%AC%40%05%18%B96%10%1A%80%02%98%AC%80%B80h%80%09L%80%02%13%E0%11%08%0B%10%01%09x2T%A3%84%40%04V%89J%0C%16%E0%01%0F%80%00%04%18%80%C2%028%00%96%B8%C4%A5%2Ce%B9%CAR%9A%D2%93%99%94%A4%24-%40LF%16%B2%90%87%CC%00%207%90G%3Dr%40%8E%1C%D8%40%06.P%81%084%20%01%07%28%D4%C2pB%00%07x%D3%9B%B9%DC%A5%2A%7B%29%81r~2%98%C3ld%23%91y%C8e6S%8E%F0%EC%80%1E5p%01%0A%CC%12%01%06%B1%E8%D2%A8zB%00%064%E0%9F%0D%F8f.c%B9Kr%9A%F3%93%C0%1Cf1%D7%89%CC%3Fj%80%99%10%8D%E6%064%80%81%0AH%C0%01%0A%C8%26%A5%B6y%93%01%2C%80%01%FE%04%E87Gz%CB%82%1A%B4%9C%BF%3Cg%26%17zLej%C0%A5%7F%3C%A4%05%260%CB%04%E4%13I%1C%ED%E8GA%CA%D3%90%8A%14%9C%B0%14g%2FW%89RO%26T%A1%EA%3C%A6R%2F%60%01%0AD%C0%01%0B0%D2F%83%F2%A5%AAZ%F5%AAX%CD%AAV%B7%EA%A5%00%08%A0%ABXE%A1X%C7J%D6%B2%9A%F5%AChM%ABZ%D7%CA%D6%B6%BA%F5%ADp%8D%AB%5C%E7J%D7%BA%DA%95m%01%01%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05T%01%C5%E7%02R%99C2%B5%9A%9A%8A%0D%82%A7-M%20Z%C5%8A%D5%D4%A9%A1%AA%04%C0%8A%12C%9ET%AB%D2v%F5%FA%15%D2%0A%B2%24%17%AC%29%95J%95%DD%B4%5C%BB~eu%E7%01%DC%8F%03%B0%7CB%85%2A%95%E1%BB%A4R%AD%FD%DA%AA%94%D8%BF%1BuH2u%EA%14%E1%C2%AAJ%BDq%20%82%D1Z%B6S%25%A9%80%7Cq%C5%A1R%A8MQ%B6l%0AO%05%82LD%E5%05%CD%B7%01i%89%17%E4%88%1AE%8A%14%EAR%A6J%01%FAp%D0A%1DU%8B%BF%8A%AAr%DB%A1%021%9DB%89%DA%CD%DB%F7%A1%14%0B%5BH%9A%CD%F8%91%89%E6%09%09%FET%B1%F4%09%14%28%E9%D4%11%BDp8%C0%0B%A9%BC%8CU%B5%B9%0A%9E%60%8DE%9D%3Ay%F2T%FE%BC%A4%23cAd%81%1Fj%81%D6J%27D%D4%07%00%0A%7Fh%B2%09%27%9C%E8%C7%DF%25%5D%18PQ%0E%99%7C%B6%D6%2A%86pp%5B%05m%5C%92I%26%9A8%08%A1%26j%D8v%11%01_%98%82%D7%2A%AA%A4r%0A%28a%14%00%17%03%5EDR%89%25%97%88H%A2%26ul%C0%D1%07%88%D8%15%E3%29%A5%84%B2%09%21%2C%3C5%C0%11%89H2%C9%24%94X%C2%E3%25%81%B4%00R%11%9C%C8X%8A%28%9DT%B2%88%1FS%2CPT%009%00%F2%C8%23%90D%22%25%25%95%14%B2%C3H%0B%BCA%CA%28%9Fd%02%09%21u%90%C1%84%06%01%02%25%82%1C%8C0%D2%88%23l%BA%C9%C8%146%96%04%82%20%9AL%92%08%1Fk%60Q%84%0C%1C4%DA%93%04a%1C%92%88%22%8B%18%8Ah%23%60%98%89R%00E%10%12%88%1Ca4%91%03%0A%FE%1AD%60%E1N%070%11H%21%86%1C%82%C8%A7%8B%2C%92%86%05-%29%C0%C4%19V%08%F1%02%08%144%80%40%01%81%D6%24%C0%0Ew%04%22%C8%20%84%14r%88%AEt%7C%07%D3%04%3A%D8%60%82%06%10%28%60%00%01%034%2B%93%0Am%F8%E1%C7%1F%80H%5B%ED%1D2%D0%14%C0%04%1BL%C0%C0%01%E4%0A%60%EEK%16p%91%87%1E%7B%F0%D1%C7%BA%81%EC%81%04%017%09%A0%40%02%05%0C%A0%EF%BE%2C5%C0%C4%1Cu%DC%81%C7%BF%01%F3a%05%03%3B%090%80%C3%10%ABT%40%0Ek%C4%21%07%1Du%D8aq%1E%5EP%00T%C8%A7%AE%40F%1Bn%C0%01%87%1C%27%F7%19%82%82%1Eup%05%1Ai%A8%B1%06%CD6%A71%03%CC%3CO%F4%00%11c%90a%C6%19i%A4%B1%06%1Bi%041k%D2%19%1Dp%03%17_%84%21%06%19e%98%01t%12%A6b%8D%91%00%27T%A1%C5%16%5Dx%D1%F5%D7O%B8lvF%1C%2CQ%85%15Xd%A1%05%FE%17%5ExA%C5%08sg%14A%0FPH1%05%15V%5C%81%85%16V%A8%20%40%E0%17%21%F0%C2%12L4%F1D%14%86SA%C5%0C%9AB%3E%11%01%26%10%81D%12KP%EE%04%14Q%D8P%B6%E7%14M%10%C4%10E%18q%04%12J0%E1%C3%04%ACc%24%C1%0F%40%BC%1E%BB%0F%19%E4.8%0F%3E%F0%FE%C3%07%8F%0B%8FQ%04%3A%EC%D0%83%0FZ%2A%9F%11%048%E4%D0%7C%93%D2c%04A%0D6T%3FZ%F6%17%3D0%03%0D5%DC%80%1D%F8%169%10%83%0C%E3%9F%80~%FA.%C0%10%C3%0C%DA%BE%3FQ%03-%B8%F0%02%0C%24%D8OQ%03%2B%60A%FE%00%E7%3F%890%00%05%2A%08%20%08%0Ah%C0%13%A0%20%05%2AX%20%03%21%B2%00%12%98%C0%81%1E%98%20D%140%82%12%5C%D0C%1At%8E%08F%40%82%12%08%29%84%0DQ%40%08F8%02%0D%A0%B0%21%09%F8%00%08V%18%BC%17.%24%01%1E%F8%80%0C1%60%C3%85%20%80%03%FE%1D%F0%80%07%80%D5%C3%84%20%60%03%1B%00%22%11%8Bx%10%04d%40%03H%94%1B%13%0Dr%00%0C%3CQ%03%B8%9B%22%15%2F%60%C5%0CdQ%8B%041%80%05.%C0%C5%08%80%B1%20%06%A0%40%05%2C%60%013%9Eq%20%06%98%00%05%D4%08%817%C2Q%02%12%90%A3_%EC%08%80%02D%00%8F%13p%00%1F%FB%08%81%08%18REv%24%C0%03%20PH%8E%F1%91%00%0Ex%C0%22%1D%99%C8%068%20%92%AB%3B%23%01%1A%60I%07d%12%8C%04%60%00%03%2C%A9%80A%0E%60%01%0B%18e%02L%89%CAT%AE%92%8F%03P%80%02RI%1F%3B%0E%20%01%09%40e-%DFxKY.%60%97g%BC%25.%15p%80A%0A%00%01%B8L%401%F9xLd%26%E0jo%14%C0%01%0E%80%00%04%40%F3%8C%D2%9C%A65%8Di%00m%22%60%9A%DEL%E60%5B%99%CAQF2%92%8C%8C%40%21%F3%28%C7%0A%B8s%8Dc%24%A3%05%2A0%01%084%40%99%E3%C3%12%80%BE%8A%22%00%03t%13%9C%D4%AC%A63e9Kr%8A%B2%93%E8d%24%04%F0%98G5%BA3%9E%F2%A4g%04%3Ci%CD%7C%05%00i%1D%2B%40%01%FC%F9%CF%80%3A3%99%045%28%27-%29%C9E%1A%F2%8F%13H%E9%1A%DFY%01%0A%D4%D3%01%0Cx%A6E%2F%CAO%8D%DA%D4%9F%00%15%E8%40%7D%D9%CAQr%F2%92%095%24%20%E7%D8R%97J%00%020Uf%C3%1Ev%94%00%D8T%A3%1C%ED%A8GA%8A%CA%82%A2%D2%A7%24%5Dd%21%85%9A%D2%09H%40%9D0U%805AFS%05%5D%F4%AChM%ABZ%D7%CAV%8C%0E%F2%ADp%8D%AB%5C%E7J%D7%BA%DA%F5%AEx%CD%AB%5E%F7%CA%D7%BE%FA%F5%AF%80%0D%AC%60%07%AB%BC%80%00%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05D%D1t%C7%02R%99%3E%26%99%3Auj%14%1A%04O%5B%8E%08D%AA%94%A9%A9%A7Pq%92%12%20%2BJ%0BqB%89%1A%D5%D5%EBTT%A8%18%A50KR%01%99M%A0%D4%AEm%FB5%2C%AASt%1C%D0%FD8%20%0A%25O%9F%40%E5%5D%3B%AA%D3%28%AFT%E1%A6%02Ev%F0F%1A%876q%EA%84Xq%A8Ni%1A%800%04%D9o%2AU%8E%E6Z%B6Xb%0F%A6L%9A4s%FE%E4%29%0E%05%82H8%81E%95%EA4%AA%3A%0DVK%A4%60%86R%25K%AFcs%E2t%87%C3A%07qJ%99%3E%AD%0A%D4%14%E1%0E%11Xi%24i%92%F1K%C9%FB%FE%94X%B8%C2Q%E4%DE%AAT%ADj4%1E%3B%C2%01I%0C9z%14%A9%3B%25K%97%FC%A8p8%60K%28%D3%E9%AD%82%CA%1AX%B9G%D0%0Ax%2C%C2H%23%F3%D57%89%21%3E%94%05Q%05%7B%98%C2%1Bz%AB%AC%D2%09%11%06%02%00%02%1B%86%20%92%88%82%0CB%A2%88%14%05TtC%25%17%06%98a%22%1D%08%17%C1%16%81%0CR%C8%21%22%2A%C2%C8%22%5E%2C%80%11%01%5D%8C%82%5E%80%AC%9C%B2%86%01t%25%B0%84%1E~%00%22%08%217%22%82%C8%19%17p%E4%81%21C%AA%B7%0A%2B%9C%04%F1%D4%006%C0%A1%C7%1E%7D%FC%11%C8%93%85%C0%D1%9EGDl%82%E1%96%AC%B4%92%C8%06F%A9%60F%1Dw%E0%A1%07%1F~%98IG%0C%23-%00%C7%29%E9%A9%C7J%9C%A6%7C1%80P%19d%01%87%1Ct%E0%99%C7%1E%7C%DCQ%04%01%26%89%B0%88%8B%87%1Ez%C9%0C%3F5%80%C4%1Al%B8%F1%E8%1Ct%D8q%87%13%09%A4%14%80%14%FE%A0h%09%27%2B%AB%FC%11%C1N%05%D4%40%C6%19i%90j%AA%1CrTq%2BK%0E%D0qZ%86%19%AA%92%8A%27P%E0%24%C0%09Y%84A%86%19%BC%AE%D1%86%1B%5C%C4%08S%0B%91%14%9A%CA_%A5%88%12%C8%075m%D0%04%17%5E%80%21-%B5ix%B1fL%04x%21%24%2A%A6%90%12%0A%27%960%D2%04%A609%D0%83%15Xh%81%EE%17%D2~A%C3%A26Y%B0G%29%A3%80%C2I%25%8E%10%92%07%18t%B6%84%00%0CPHA%05%C0Yl%E1%85%17%3E%B4%AAS%0D%8DlRI%23%83%DC%A1%06%17L%A4%90bJ%03%88pD%13Od%BC%F1%15Z%0C%21XO%04%3C%91H%CAih%B1%04%0F-%7C%A0%00J%18%F4%60D%12K0%E1D%14%1A%1B%E1TP%14p%11%F4%12%3B%B4%10%C2%05%10%24%20%00I%10%C8%00%84%10D%1C%C1%B4%D3H%84%20%E1P%1C%08%A1%03%0B%20p%BD%C0%01%05%7C%0D%12%02%26%E8%C0%83%FE%0Fc%97%9D%04%12%29%F0k%94%00%16%7C%60%C1%03%0A%D0%3D%80%00koD%40%074%DC%80%83%DE%7C%0B%21%04%0B%07%D0E%00%03s%17%B0x%E3%19%05%40%01%0B1%CC%40%83%0D%93%F3%D0%83%0B%0C%087%40%01%040%DEQ%03%25%B0%D0%C2%0B1%C8p%3A%0E1%DCf%A0%00%B2k%84%00%07%27%A0%A0%82%ED%B8%CB%00%C3%05%A0w%F8%A3%05%22%8CPB%F1%C7%BB%E0%02%07%08%3B%AF%91%00%11x%00B%08%D2%9BP%7C%0A%1C%20%A9%3DG%08t%E0%C1%07%20DO%82%09%1F%88%7C%3E%FA%1C%A8%FFA%08%22x%D0%FA%FC%1E%1D%B0A%FD%1E%E8%C0%03%9A%C7%BF%8C%1C%40%03%1B%D8%40%07%A6V%C0%FEe%00%81%1C%A8%40%03%3Fr%80%0B%60%E0%81%13%98%A0G%0C%60%01%0Bf%20%83%1A%E4%88%01%2A%D0%C1%0F%86P%84%14%A8%80%05%25p%C2%8D%14%80%02%29%B4%C0%B0Z%88%11%03L%60%02%29%84%00%0D3R%00%09H%00%87%FE%0F%D8%21F%0A%00%01%1FN%60gB%AC%08%11%23%E0C%24%26q%22%04x%00%04%22%10%81%E0%3C%91%22%04p%80%14%23%B0%BF%2BJ%24%8BZ%84%40%17%BD%08%11%024%C0%01Z%1C%23%19%1D%B2%B93%3E%C0Gk%84%C8%00%16pF%07%1C-%8E%0F%99%23%03%1A%D0%00%F9%E1%91%21zd%00%03%FC%F8G%85%E8q%01%0B%20d%21%DF%83HD%2Ar%91%06%19%80%02%1AY%20H%26d%00%09%98%E4%02%2Ai%C9%83%60R%01%A0%CC%5C%27%DF%83%80%04dR%94%A3%8C%24%02J%99%00T%A6%92%20%03X%E5%2A%CD%F7J%82%08%40%96%08%A0e-%05%22%80%03%F82%97%BB%B4%A5%01~%A9%CB%5D%0A%C0%00%C3%3C%401kyLd%D2-%98%03%11%40%01%0A%80%CC%97AS%9A%D4%7C%264%01%80Md%0A.%98%01%20%00%01%A8%F9%CD%5D%86s%9C%B0%DB%26%00%CE9%CEr%D6%92%9D%E2T%27%3C%B3%07Nq%8A%93%9E%E6%BF%24%C0%00%EE%29%CF%01%EC%D3%9E%E8%9C%A63%7DI%D0%03%AC%D2%94%A0D%E4%1E%D1%A8%C5%07%A0%B1%01%9CS%40%02%10%407%7D2.%00%185K%00%FC%09Pq%C2n%9A%D94%E8AM%99IM%EE%B1%8E%0DEcD%27j%00%CF%5D%94%80G%D9%A8%3F%FF%09P%90%86%D4%A0%24E%E8%24%05%29H%3E%F2q%A5%14m%E9%E70%0AS%A3%C8%94%A3%1D%0D%285%939%D2%92%26T%A1%9C%5B%80Dg%09%BB%A1%165%A63EjRm%9AL%91%96T%A7%9A%9C%AA2%ABj%D5%ABj%90%A8hM%ABY%D5%C9%D6%B6%BA%F5%ADp%8D%AB%5C%E7J%D7%BA%DA%F5%AEx%CD%AB%5E%F7%CA%D7%BE%FA%F5%AF%80%5Dd%40%00%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%05%20i%D4%86%02R%996%0Aa%CA%B4%E9%12%98%03O%5Bz%98S%C9%D2%A5L%9A6q%92%B4%24%40V%94%12%C8%3C%92D%A9%2B%A6%B0%9C%3Ay%22d%E2%2CI%04U%129%82%14i%12%25%AF%60%C5z%FA%E4%A9M%03%BB%1F%05%08%09%B4%88%91%A3G%91%D8Vzd%09%AE%DCO%A0.51%8BXc%8A9%87%10%25Z%D4ho%24G%5E%18p%E0c%193%A8P%87%EAv%B6%D8%C1L%A0A%85B7v%D4%88L%04%82A%24%C5%1D%FCZT%A87%0CfK%7C%20%85%CF%1F%40%82%08%15%12%BD%28%0D%86%83%0C%D2l%BA%5C%7CT%A6%27%CA%1D%FE%1A%10B%27%0F%9F%3E%7Fn%E7n%F3a%E1%89B%C4C%89%1AE%8A%14%A2%11%E1%13%0A%A8%B1%86%8E%1D%3Cz%F0%E1%07tm%88%E0%90%00U%60%82%99%7C%F4%952%0A%1A%08%E4W%D0%07%5E%BC%11%C7%1Cu%DC%91%C7%1E~%C8%21%03g%0FM%40%C7%27%0C6h%0A%26BH%08%80%05R%A4%B1F%1Bp%C8AG%1Dx%D01%04%01%15%CD%E0%08%83%A4%94R%8A%29%A7%14%C2%81r%0B%04A%86%19h%A8%C1%86%85r%C8%B1D%02%18%11%80%05%27%F3%F5%08%E4%29%A4%A4a%80%5D%06%CC%B0%05%18b%94q%86%8Bm%BC%21%C5o%1Bq%10H%83%3F%9E%82%0A%2A%99%FC%F0%94%00%23D%91%05%17%5E%84AF%19If1%E4G%40Xb%E5%29n%A6%92%CA%21%1A%18%B5%01%12TX%81%85%16%5D%7C%A1%A7%16%24%8C%A4%C0%1A%A3%B4Yh%2A%A4x1%80P%0F%E8%D0%04%14RTq%85%16xj%11%C3%A7%25%81pH%9B%FE%A8%18%AA%CA%2A%96%CC%F0%13%02%2B%1C%A1%04%13ND1%85%A3Z%DC%B0%25J%01%3C%D1%09%A1%B1%AA2%AB%2A%7F%A0%99%D3%00%1F%F80%84%11I%2C%C1%C4%13RP%B1Cr%2C9%20G%29o%A6%A2%EC%2A%AB%88B%05N%01XP%03%0F%3F%08A%84%AEK8%01%C4%041%B1%F0H%AC%E2%CE%CA%0A%2B%8F%C86%D3%03%2C%DC%90%C3%0E%3D%001m%12%40%5C7%D3%00%5D%8C%22%2B%B9%AC%B4%A2%0A%1BX%C1t%80%080%CCP%03%0E%3A%B0%1B%C4%0F%21%08p%93%05%7C%88%0Bq%2B%28%7B%92bK%04d%A0B%0B%2F%C4%40%83%0D%03%F3%60B%01%3B%E5p%89%BE%11%A3%EC%CA%22%89%A6%14%40%04%24%A0%A0%02%0B.%C0%20C%0D7%A4%10aO%04xa%CA%2A%FB%A2%8C%F2%29b%B0Z%12%03%1F%90P%C2%09%29%AC%D0%82%0B1%A8%E0%80P%1F%20Bu%CF%3E_%22%C3%5D%18%80%00%82%08%24%98%604%0B%29%D0%5BT%FE%11%9E%EC%CBv%2B%AB%E8q%D8G%04D%C0%81%07%1F%80%10%C2%08_%9Fp%81%C8G%25%A0F%2AT%93%BBJ%2A%A8l%E2DG%028%90%81%06%1Bt%80x%08tc%80%E3Y%230%A2%8A%A1%A7%982%0A%28%9D%F0%F1%27F%09P%60%01%06%19l%C0%81%E8%20%600%2Cb%01H%D1I%29%A4%84%D2I%26%948B%88%12%A7Sd%00%04%13T%60%C1%05%B8%87%9E%81%02%12%3A%C0F%27%9A%24%8FH%20x%BC%91E%D0%11%0D%C0%40%04%12L%40%81%F4%17d%80%01%B7%2A%02P%C2%1E%89%08%A2G%1Cgp%21%C5%11%274%CF%90%00%09p%C0%03%20%20%81%F4%D9%CE%02%0E%00Q%FC%00%20%00%1F%B8%21%0D_%A8B%12x0%83%14%7C%00~%09%09%C0%01%1A%D0%00%01B%20%02%E8%A3%80%03%B4%B6%40%82%2C%60%07K%00%82%0DV0%02%0E%5C%E0%01%0C1%1F%03%3A%E8%C1%088%C0%7F%254%88%03LP%02%0F%60%40%02%FE%23%8C%E1%02fHC%07%FC.%87%19d%C0%04%1E%C0%80%23%26d%00Cd%80%14%9D%88D%85%08%C0%00TD%C8%00%14%B0%80%21B%A9%8A%1F%D9%22%17%17%F0E0vD%8C%5D%2C%A3%1972%80%04%24%C0%8Bk%3Cc%02%B8%C8%80%A7%C5Q%23m%7C%E3%02%ECxG%8C%00p%8E%7B%EC%A3F%FE%C8E%3E%0A%B2%22%02%40%00%02%14%A0%80%8A%1D%D2%22%89D%80%1B%1D%F9H%8ADR%92%94%AC%A4D.%89%80%2Cj%F2%40%078%80%22%3D%F9%C9%FF%85R%94%A4%2C%A5%15%0D%10%CAN%AAr%93XD%E5%2B%23%22%80%02%B0%F2%008%9B%E5Cj%19%CB%5C%EA%B2%21W%BC%A5%2F%7F%B9%90%00%D8%12%8B%C3%24f%06%8Fi%00%1C%2A%F3%20%C6%2C%80-%9D%F9%CC%82%04%80%00%D2%2C%005%AB9%90kfs%9B%DC%04%C05%B1%A9%CDp%22d%9C%D2%04%277%C7%89MuV%93%9D%E54%A7A%E0%E9%CEg%B2%93%00%24%C1%94%A7%40%EE%99O%7D%F2S%9F%D6%1C%00%01%06%DAOy%06%60%00%02%C5%27%40%09r%D0%84%16%D4%9C%0D%15%E8C%C3%19Q%85.t%9F%08%CD%E8E1%9AQ%C8%5D4%A2%03%F0%E8B%03%20%80%8EnT%9C%25E%A8H%01J%D2%8C%BAt%A0%03%CD%A64%B1h%80c%CA%14%9F%2A%15%40%00v%AA%C0%05%924%A5%2F%85%299e%AAM%98%22%14%9F%02H%2AO%C5%C9%D4%1C%FE4%A9.M%A8P%C9i%D4%A4ZU%A7%3B%ED%E3S%A3%9AQ%82J%15%A9%21U%AAY%B2%AA%D5%ABv%94%ABQ%D5%A9Z%B1z%D2%B6%BA%F5%ADp%8D%AB%5C%E7J%D7%BA%DA%F5%AEx%CD%AB%5E%F7%CA%D7%BE%FA%F5%AF%80%0D%AC%60%B9%19%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%03%DC%B8%A3%05%02R%99%28%DA%FC%11D%28%10%14%03O%5BZ%E0%B2%87%8F%9F%40%82%0A%1D%F2%E3%23%40V%94%0D%98%D0%B9%93%C7%2BXB%86%10%29%92%F3%E1%2CI%03%3F%DA%C8%A9%C3v%8F%1F%40T%E3%2Ab%C4%E8%CB%02%BB%1F%05%BC%20%D3%06%8E%9C%B5y%F6%F4%C9%F3g%90%D8D%8B%1A%3DB%24%C4%2Cb%8D%1C%AE%A0Q%D3%E6%CDc%3Bx%EC0I%60%01%8DXD%99%1DA%8A%A4%27%C4%E7%8B%13%96%88%21s%26%CD%1A7%8E%E7%40i%40%90%86%1F%D8%8C%1C%3D%8A4i%12%19%05%B7%25%2A%C0%B1%C5K%182f%7C%97%9E%22%E1%A0%82%2C%88%18%FEi%8E%24%89R%A5FG%A2%3B%24%B0b%0A%96%EAa%C6%98%19%5D%E5%C2B%10u%1A%C9%964%A9%D2%A5L~%80%A0%5EB%01%84%B0%C4%14U%5C%A1E%17%60%88Q%C6%14%198%24%40%12%88%2C7%09%25%96%60%A2%09%26%60%1C0%60A%13%F8%C0%C4%13R%24%A8%05%17%5EXA%82D%10%A0%C1%1C%86%FFm%C2%C9%23%3C%7C%08%40%032%1C%A1%C4%12NDA%85%15YX%E1%C2%00%15%B1%10%88y%FFi%22%A3%27%7Dh%10%DD%01%26%001D%11I%2C%D1%04%14RPA%03V%17%11%F0%04%24%19%2A%C9I%27%9Fp2%06%97Y%0D%D0%01%0E%3C%FC%20D%11HX%09%05%0E%0Cp%94%81%1D%97%88%D9%89%27%A0%84%22%89%0EO%05%40%C1%0B6%E4%C0%83%0FA%10%A1%23%0F%13%80%A4%03%23%9Bl%B2%E7%27%A0%882J%20%11%16%F5%00%0A0%CC%60%03%0E%3B%F8%20%E5%0E%F6%89%94%00%19%99p%E2%09%A5%A1X%EA%89%16%FED%06%85%C0%07%2B%B8%D0%E9%A7%3A%F4%B0%C3%07%02%98%E4%C1%1F%7B%F6i%29%29%A5D%12%C3O%04%5CpB%0A%B5%C2%20C%0D7%E0%20%02%01%29%05%A0D%25%AC%8EBl%29%A5%F0%11%C1N%01%40%10%02%09%26%A0%B0B%0B%2F%C40%03%09%1E%B2%D4%C0%1A%9F%B4%3A%0A%B7%A6%9C%E2%89%1491%C0A%08%22%90%8B%82%0A%2C%B8%60B%9D0%A5%A0%C8%B0%A5%D4%7B%0A%2A%8C%94P%13%02%17p%F0%01%BF%23%94p%82%0A%258%40%D3%00YtB%AC%C2%A8%A4b%8A%1Ah%BAD%40%04%19l%D0%81%07%20%88P1%09%13xVS%05x%24%7C%CA%C2%A9%A8%A2%0A%27A%B8%24%40%03%17%5C%80%81%06%1C%B0%CC%AF%05%B1%E6d%03%25%F5%86%9C%F3%2A%AC%24%E2d%B5%08H%40A%05Bk%A0%F2%07%16%14%E0%13%01%5C%88%E2%B4%2A%AB%40%5DJ%18I%DF%E5%40%04V%5B%20t%06%1AX%D0.P%1E%1426%D4%AC%B4r%89%FE%0C%24%0D%B0%C0%03%10%B0%7D%B5%D0%16%40W%14%11%9C%E8%8Cw%2B%8C%F3A%5Cb%070%D0%80%03%10%40%20%C1%04%15T%C0%80%CCE%25%90%06%2Ae%B3%92w%2B%AE%90bEG%01%18%B0%C0%02%92%3B%008%DB%0D%F4z%D6%08%8C%2CN%BA%2B%AFD%E2pF%04%28%B0%BA%E4%93%BB%DE%40%DAg%050%85%28%A3%BB%82%FB%2B%AC%B81%F7D%03%1C%A0%80%EF%AC%B7%DE%80%D7%03%3EPG%DE%CA%BF%F2%0A%2C%B0%80%22%C4D%02%18%80%00%02%09L%EF%3B%03%0C%94%FC%E1%0B%95%90%EE%FD%F7%B0%C4%82H%05%0F%05%40%C0%01%E7%A3%9F%BE%EF%07%E0%9C%8D%00%40%800%A0by%E0%8BE%2CTA%06%E2%1Dd%00%050%80%01%F8w%BE%F4%05p%80%08%C9%40%21%BC%07%BE%FA%C5%02%14%CF%3BH%00%0A%40%C2%09R%F0%00%B2%C3%60Bz%D0%09%FA%D5%0F%08%0C%19a%09%0Fp%00%038P%85%079%40%1BX%01%3E%404D%86%FE%12%B4%21%0E%21%22%82F%84%E2q%0B%91%21%09%A95%C4%88P%C0%21J%2C%00%13%9B%E8%11%FD%95p%8AT%E4%88%FE%08%10A%ECeQ%8B%04%E0%A2%01%B0%F8%C5%8Cl1%82d%2C%E3E%CE%28E5n%84%8Dit%23E%B6%C8%C58%CAQ%22tl%E3%1D%D7%18%C6%3A%EE%91%8Fa%D4%E3%1F%E7%D8GA%0E%12%8F%85%B4%E3%21c%D8G%02%DCp%91%8Cl%24%24%11%D9%C7GN%92%40%8D%B4%E4%25E%98%C9M%E6o%00%95%F4%24%14A%19FM%8Ar%20%01%20%A5%23O%19%C3%01%90%D2%94%ACL%E5%2BY%99DW%82%12%96%A7%94%A5-i%A9%10%5D%BA%92%97%04%B2%E5%2F%81%29Ba%E2R%94%BE%3C%A6%27%7D%99Bb%12D%96%02%18%403%9D%29%90%00%08%E0%9A%D2%A4fA%ACyM%01%08%90%9A%DC%BC%E67%9D%19Noj%F3%99%DD4%E79%AB%E9%CD%00%B8s%9D%A8t%E78%C1YMx%DA%F3%9E%F8%27%CC%A7%3E%F7%C9%CF~%FA%F3%9F%00%0D%A8%40%07J%D0%82%1A%F4%A0%08M%A8B%17%CA%D0%86%3A%F4%A1%10%8D%A8D5%12%10%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%3F%03%8C%A8%D2C%01R%99%19%96p%F1%12%06%CC%0D%02O%5B%3A%E0a%25%CB%16%AAd%CC%80Y%915%25%02%18Q%A6t%FD%1A%86%CC%994k%B0X%28K%92%80%89%24N%D2%AE%05%FBv%8D%9B7I%10%D0%FD%18%60%C3%8F%24K%F2%AA%CD%C2%25%0B%98%B0p%DB%C0%91%D3FF%80%C1%1B%21%CC%10R%04Ib%BDVf%18x%D0%C4%0C%5C7p%E6%D4%B9C%26%03%E6%8B%0BV%F0%F8%C1%D9s%5E%295%12%10%2C%11f%8Dd9%AB%F3%EC%91%22%F8u%C4%02%1Fn%E8%98-%C4%08b%267%18%1C%3C%20%E4wp%3E~%EE%E00%EEP%00%86%174%94%FE%CF%1ER%24%C9%0D%07%0B1x%01~%27%0Fv%40%82%D6h%E0%9E0%80%84%14%2Fb%84%D7%D1%83v%0D%08%0E%05p%C3%1Bw%E8%81%5D%20%82%14B%88%14%06%D0W%90%02%22%AC%D0%C2%0B2%D4%A0%5C%0F6%CC%15%11%03T%B8%F7G%20%83%14rH%22~%C8%E0%20%00%07l%60%02%0A%2B%B8%00C%858%D8%C0%81%00%15%89%D0%C6%87%21%8E%B8H%23oh%88%19%01%15%8CP%C2%09%29HH%E1%0C%1F%60u%D1%00%40%F0%91%23%22%3B%3A%C2%C8%15%05%D0%25%00%04%1F%880%02%09%26%14%D9%02%0C%21%1C%C0%11%05f%88%88%88%22%8C8%02%89%24%84%CC%90%95%02%1Ax%00B%08B%9E%80%82%0A%23%2C%00%D2%0B%7B%40%D9%88%9A%92LR%89%1D%3E%0E%85%40%05%1Al%D0%C1%07tr%29B%03%23%21%60E%22%7F%AEII%25%97L%22%05%8DA%11%10%C1%05%19%24%BA%28%08%23%84%20%C1e%25e%20%07%A0%97%5E%92%89%26%FE%87%B0%F0%93%00%0BP%60%01%A8%1Ap%D0%81%07%1FL%C0%E9I%01%00%81H%A0%98%BE%BA%C9%26t%3C%B0S%00%08%400%81%AD%B8%EAZ%81%92%2B-%10%86%24%95Xb%2C%27%9ET%C2DN%A3E%20%C1%B3%15%E0j%81%980%91%F0%87%AB%9Al%D2%89%27%9F%80R%88%085%11%B0%C0%03%10D%10%C1%B3%B7VP%9CL%03H1I%BB%EF%C6%1B%CA%27d4%08%93%00%094%E0%80%03%10%E4%FB%2C%05%0B%A0Z%D3%04pl%C2m%BC%A2%8CBJ%25%3D%B8%14%C0%01%0B0%C0%80%03%F8%8A%3B%01%03%BF%E2%24%03%23%F0%82%D21%29%A5%94B%08%06%2B%11%90%C0%02%25%9F%9Cr%03%03%F8D%80%15%9A%80%12%8A%C75%9B%12%8A%17A%9B4%00%02%09%28%C0%B3%C9%0D%3C%C0%00%B5%3Fm%F0G%28%A2%D0%5C%8A%29%A7%A02%09%0C%24%09%60%40%02h%2B%205%03%0D0%A00Q%3FT%E25%D8%A8%A4%82J%1E%90%12F%C0%FE%01%07%40%1D5%CF%0B%1C%60qQ%08%90%21%CA%D7a%A7%A2%8A%2A%A0P%E1%D1%00%06%18%C07%02P%AB-8%5D%21%1CB%B7%E2%AA%AC%C2%8A%23%24h%24%40%01%05D.9%E5%09%1C%D0rY%01%40%E1I%DD%8B%7B%CEJ%2Al%A0KQ%00%03%10%40%BA%E4%7DS%DE4w%0F%C8%81J%E7%B2%B7%D2%8A%27%40L%84%3B%01%CC%93%5E%3A%DF%BF%9F%D8%82%24%AB%14%DF%8A%2B%AE%1CR%01D%020%EF%BD%F3%06%60%7D%A2%40%04%7CQ%0A%2B%AC%18%EF%CA%2B%AF%A42F%F4%08%090%40%EE%DF%93N%C0%E0%E3%13%84%C1%20%E9%AB%FF%0A%2C%9F%B0%1DBp7%3F%EF%E9%EE~%F9%5B%08%0F6%E1%BFW%FC%80%21%04%A4%1F%01%06%B0%BA%04%22%E4%00kX%C5%FA%00%D1%10%02z%AF%82%16TH%08%1A%11%8A%BC-%24%82%13%0C%A1D%B6%D7%C1%F9%E5%0E~%2A%DC%08%0Aa%18%C3%8C%CC%B0%86%1E%B9%21%0E9%A2%C3%1Dj%A4%87%A7%3E%C4%08%10%83h%91%21%12%F1v.%9C%DF%11%85%98D%10.%11%22%11T%E2%13%2B%12E%1AN1%40I%B4%E2%15%21%98%C5-%2A%AF%8B%5E%8CH%00%04%20%3F%0A%86Q%8Cd%9C%9F%13%CF8%402%CAo%8Dl4%C8%18%DD%88%BF8%D6%C7%8D%02%A8%A3%1D%DBHF%3D%EEQ%8E%01%18%A3%1F%FFH%90%CB%04r%90%84%2CH%20%13%C9%C8F%3A%F2%91%90%8C%A4%24%27I%C9JZ%F2%92%98%CC%A4%267%C9%C9Nz%F2%93%A0%0C%A5%28GI%CAR%9A%F2%94%A8L%A5%2AW%C9%CAV%BA%F2%95%B0%8C%A5%2CgI%CBZ%DA%B2%86%01%01%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%40%27%BC%10a%00%A9%CC%06%29f%D8%C8%81%E3%83%00%A7-%0F%80x%11%83%C6%0D%1D%3C%7C%E8%C8%805%25%81%0C%2A%5C%C0%90Q%E3%2B%8F%1FB%8A%DCpP%96%A4%80%09%25R%B0P%3B%A3%06%0E%1D%3D%80%0C1%A2dI%8B%02u%3F%06p%10%C2%04%0A%15-%B8J%AD%01%18%08%91%23J%98%3CY%02%221G%04%1BF%940%91bE%E4%182%3A%10H%E0%22%C8%E5%25M%A0H%A9B%24%82%E7%8B%06.%84%08%21%FA%F1%0A%17%2F%3C%20%1Eh%01H%92%25N%A2L%B1%82E%0B%8E%A6%B7%23%0E%88%E0%01D%08%11%24L%9C%80%FC%E1%C0A%02%2A%90%FEK%A1%C2%7C%8B%97%2C%27%A2%3B%0C%D0%20%03%87%EA%22D%9FH%01%02%C1%C2%07%3E%C6%5B%C9%C2%E5K%182QH%A0%9EB%0AX%90%C1%06%EF%81%80%5D%09%1E%24%B0%1E%09Q4%D7%C5%17b%94q%C6%19%3B%100%60A%05HpA%06%1A%20%08%DF%07%0DH%84%80%0E%E6%811%86%19h%A8%C1%06%19%25l%08%00%01%0EP%60%C1%87%1Ap%D0%C1%07%1E%40%10%40E%18H%F1%9F%19i%AC%D1%06%1Cr%60a%DBm%02%2C%20%C1%04%15X%80%C1%81%1Cp%20%C1U%17%09%D0%02%18D%B2%E1%06%92u%D0Q%84%86e%05%90%C0%03%11L%40A%05%17%60%10%E2%04dj%E4%80%13F%BE%11%C7%1Cu%E0%A1%C7%1B%28%60e%80%03%10D%F0%A4%8D%1FR%E0%DDG%23%8C%81%24%1Dv%E4%B1G%1F%7F%90%21%60Q%04%2C%E0%C0%03%81%0EZ%C1%04%F6%89d%C0%10p0%9A%07%1F~%00%22%C8%1FD%60%09%94%00%094%D0%C0%A5%FE%99R%40%81%02%3F%964A%17w%E8Aj%20%83%14rH%1D%24%FC%14%80%01%0B0%F0%EA%03%98%A6%C9%40%AD%27%05%20%C3%1C%90%F2%EAk%22%8A%98Q%E2N%05%28%B0%40%B1%C7%06%CA%C0%00-%25%10%85%1F%82%102%ED%22%8D%18%12DN%04%20%A0-%B7%C72%10%A7K%1D%B4A%88%21%88%24%82%EE%23%91%E0%E1AM%02%1C%80%40%02%0Ahk%AC%03%0D%0C%27%93%00D%04%82%88%22%8C8%C2%EF%24%91h%A1%B0K%01%14%80%C0%C6%04%1B%CC%C0%A16A%20%06%BA%8E%40%22%C9%24%95X%A2%88%0D%18%13%20%F0%C0%04o%BB%C0%01%CC%E2%A4B%1F%FCJBI%25%97d%A2%89%1E%16%AC%24%80%01%06%1C%20p%021%23%A0%EAN%030%C1%C8%24%94X%D2%F3%26%9CXb%C5%D2%23eL%B4%D1G%2B%80%00%B8Aa%40G%CA%98hBu%27%9F%2C%C2%02I%01%0CP%C0%DBE%BF%8C%C0%BCB%E1%A0%88%CFT%7B%F2%09%FE%28%A0%C8%C1%00Hm%13%40%C0%DB%05p%3D%B7S%07tqI%DE%7B%87%22J%26Ox%24%80%E0%82%C3m4%015%23%E5%C1%1F%9D%E8%0D%8A%E3%A3%94%82%88%08%1A%05%40y%E5p%17%909V%01%28Q%C9%E7%A2%8CBJ%29%A6%8C%82%06t%14%B5%3D%C0%E9%84%13%80%B5g%0E%B0%01J%EC%B3%9Br%0A%2A%98%F40Q%00%02%0C%E0%3C%EF%05%FC%AE%9E%0A%8C%CCN%FB%F1%A8%A4%22%08%05%10%E9%EE%FC%F3%82%83-%23A%03h%F1%C9%F5%D9%AB%A2J%29%60%88%9F%10%F3%DF%C7O%C0%00%AB%8F%2F%D0%05~%18%9F%7D%2A%AA%AC%B2%09%EE%08a%5E%F3%E2%E7%BC%FA%D9%8F%209%B0D%FAV%B1%0A%E5-D%80%03%2C%E0%01%1Br%804%98%A2%7F%7Ch%88%00%BFg%C0%09%22%04%04%89%E8%C4%B5%1E%28%80%12%96%D0%83%12%E1%9E%06M%28%80%0E%A2%F0%22%10l%E1%0B%15%C3B%17%CE0w5%BC%A1G%02%C0C%19%EA%90%23i%3Cd%9E%0D%7F%28%91%20%0E%91%88E%3C%22%12%23%A2%C4%25%3A%F1%89P%8C%A2%14%A7H%C5%2AZ%F1%8AX%CC%A2%16%B7%C8%C5.z%F1%8B%60%0C%A3%18%C7H%C62%9A%F1%8ChL%A3%1A%D7%C8%C66%BA%F1%8Dp%8C%A3%1C%E7H%C7%3A%DA%F1%8Ex%CC%A3%1E%F7%C8%C7%3E%FA%F1%8F%80%0C%A4%20%07I%C8B%1A%F2%90%88L%E4%15%03%02%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3%40%3Bdy%02%01%A9%CC%05%2F%9A%8C%B9CH%CB%01%A7-%07H0%81C%EA%1DD%95%28E%09%80%15e%00%03%102p%F5%0A%16%D4%A9G%2C%CA%96%14%60%40A%DA%B5S%DB%9Ej%E5jOS%B9%1F%03%0C%20P%F7nW%2Fu%F4%B6%82%25K%95%16%B2%807%06%100%B8%B0Z%1B%2A%0EPhS%C9%EDbY%B4jaj%11%19c%80%D3%94%09%DB%CDp%A1%00A%1F%97%F62%0E%5D%8BV%1F%07%A5%2B%9E%9E%5CY%C1%82%01%07%1B%C8Y5%BBV-%5B%B6%1C%E7%9E%B8%3B5%01%01%0B%5D%5C%02m%1C9%F2K%29%96Cl.%002%C3%01dZ%FEU%B7nk%16%9D%04%DA%1B%EE%F6%FE%10%C3%A1%E3%E4%91%9BZ%92~%21%FB%89%3FD%C5%B7%1E%09D%FD%90%05%9C%01%CB~%B6%C82%C7U%FF%7D%24%82%24%04%DAR%8A%11%09%82%C4%04%2A%0DF%D2A%84%1E1%A0%07-%04%BEb%06p%18rd%82%25%0D%82%82C%88%1C%05%A0%05%2B%04%D6%82%C8%04%28n%04%81%1F%F0%C5%B7%8A%161n%24C%27%0Db%97cF%04%08H%A0%2Cr%20%F8%A3E%19%20%D2%A0%29G%1C%89%11%10%A3T%C8%81%93%16%05%18K%87g%80H%E5D%0B6%F8%89%0D%5BV4a%8B%82%E0%16%A6D%0A%CC1%0B%817%9E9%D1%09%24%12h%C9%09nF%A4%22%8B%FB%19hd%9D%0DE%40%23%81%A5%14%C1%27D3%F0H%20%23%16%0C%EAP%90%03%EE%F7J%96%8A6%B4%01%23%04%92%B2g%A4%0A%05%11%25yC%60%FA%10%02r%C8%82%5C%21%9EFD%02%25%A8%98Y%2AD%89%AE%EA%EA%ABN%B0%C6%2A%EB%AC%B4%D6j%EB%AD%B8%E6%AA%EB%AE%BC%F6%EA%EB%AF%C0%06%2B%EC%B0%C4%16k%EC%B1%C8%26%AB%EC%B2%CC6%EB%EC%B3%D0F%2B%ED%B4%D4Vk%ED%B5%D8f%AB%ED%B6%DCv%EB%ED%B7%E0%86%2B%EE%B8%E4%96k%EE%B9%E8%A6%AB%EE%BA%D9%06%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9D%CA2%00%D5%95%01%AC%5E%3D%99%B5%EB%D6%92%5D%05%0C%200%E0k%C8%B0b%09%18%40%40%C0%EC%C7%ACi%0B%20%60%20AB%01%B7%1D%03%0C%18P%E0%80%82%07%17B%B0%00%21%00%2F%C7%01%06%124%98%C0%01%C5%0D%25RB%18%DE%28%40%01%04%0C%22b%08%A9r%06%0F%9A%0A%933%06X%D0A%85%0E%26_%E2%04r4%E9J%D9%D0%17%0B%98%28rE%8D%1ED%94%3C%95%AAD%036F%0F%5B%E8%08z%A4I%14%AAV%AF%08M%F0m%F1%00%94D%96%3E%99Z%E5%2A%D6%ACTZ%98%5B%1CQhT%AAV%B0d%FE%CD%A2U%EBR%0A%ED%14%07t%29%F5J%3C%F9Z%B6d%C99%80~%E2%85A%B2%DE%C3%B7e%CB%D4%91%FA%13%F9%20J-%FB%F1%C7_%24%1C%00%18Q%01f%C4b%E0%83%AF%9C%F1%9A%82%0E%89%20%C9%83%0F~b%03%85%101%81%0A%86%FC%D5%22%88%03%1C%3A%A4%C0%1C%B3%80h%CB%2A%D9%95%D8%D0%09%96%A8h%8B%25%27%B8%C8P%00Z%B0%A2%A2%2Cs%D0g%A3B%11%F8Q%E0%83%A5%14%F1%E3B3t%22%23%23%16%1C%99%10%01g%C0%A2b%84%13%3AY%D0%06%8C%A8H%8A%8FV%1E%14%C4%28%18%0E%D1%A5B%08%C8%21%0B%7F%85%8C%C9%10%09%94%A0B%A2%9A%0C5%09%E7%9Ct%D6i%E7%9Dx%E6%A9%E7%9E%7C%F6%E9%E7%9F%80%06%2A%E8%A0%84%16j%E8%A1%88%26%AA%E8%A2%8C6%EA%E8%A3%90F%2A%E9%A4%94Vj%E9%A5%98f%AA%E9%A6%9Cv%EA%E9%A7%A0%86%2A%EA%A8%A4%96j%EA%A9%A8%A6%AA%EA%AA%AC%B6%EA%EA%AB%03%0E%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%FE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%ACY%AD%01%02%9C%B5%98%B6%AD%DA%B5%0F%DD%A6%15%40%17n%DC%B9%02%06%0C%20P%60%80%DD%86%01%F2%EA%E5%7B%00A%02%BF%7F%15%06%D8%5B%C0%00%02%05%0D%20Pp%20%20%B1%C2%01%07%120x0%01C%07%12%28%28XN%28%40%81%04%0B%1CD%A8%90%C1%E3%88%8F%07%A3%11%2A%E8p%02F%0E%22O%B2%90YC%84%40l%83%03%3E%00Yb%25%CC%9A%3A~%0C%FD%91%F1%DB%60%84%26i%E4%EC%21%C4H%12%26O%7B%264%27%28%80G%9FD%91%2C%84q%0AU%0A%15%A90%88%B7%03%90%00g%13%28R%A7T%B1r%F5%E9%80z%826%28%A5%9A%0F%2BV%90%FB%05%1D%C0%06%2B%B1%C82%08%80%07%8D%10I%29%0E%20%88%90%05%0EF%28%E1%84%14Vh%E1%85%18f%A8%E1%86%1Cv%E8%E1%87%20%86%28%E2%88%24%96h%E2%89%28%A6%A8%E2%8A%2C%B6%E8%E2%8B0%C6%28%E3%8C4%D6h%E3%8D8%E6%A8%E3%8E%3C%F6%E8%E3%8F%40%06%29%E4%90D%16i%E4%91H%26%A9%E4%92%40%05%04%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%CE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%DBk%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%CE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%DBk%40%00%21%F9%04%01%04%00%FF%00%2C%00%00%00%00%80%00%80%00%00%08%CE%00%01%08%1CH%B0%A0%C1%83%08%13%2A%5C%C8%B0%A1%C3%87%10%23J%9CH%B1%A2%C5%8B%183j%DC%C8%B1%A3%C7%8F%20C%8A%1CI%B2%A4%C9%93%28S%AA%5C%C9%B2%A5%CB%970c%CA%9CI%B3%A6%CD%9B8s%EA%DC%C9%B3%A7%CF%9F%40%83%0A%1DJ%B4%A8%D1%A3H%93%2A%5D%CA%B4%A9%D3%A7P%A3J%9DJ%B5%AA%D5%ABX%B3j%DD%CA%B5%AB%D7%AF%60%C3%8A%1DK%B6%AC%D9%B3h%D3%AA%5D%CB%B6%AD%DB%B7p%E3%CA%9DK%B7%AE%DD%BBx%F3%EA%DD%CB%B7%AF%DF%BF%80%03%0B%1EL%B8%B0%E1%C3%88%13%2B%5E%CC%B8%B1%E3%C7%90%23K%9EL%B9%B2%E5%CB%983k%DE%CC%B9%B3%E7%CF%A0C%8B%1EM%BA%B4%E9%D3%A8S%AB%5E%CD%BA%B5%EB%D7%B0c%CB%9EM%DBk%40%00%3B";
|
|
21905
22087
|
|
|
21906
22088
|
// src/components/HbLoadingSpinner.tsx
|
|
21907
|
-
var
|
|
22089
|
+
var import_jsx_runtime165 = require("react/jsx-runtime");
|
|
21908
22090
|
function HbLoadingSpinner({
|
|
21909
22091
|
noQuips,
|
|
21910
22092
|
extraQuips = [],
|
|
@@ -21919,8 +22101,8 @@ function HbLoadingSpinner({
|
|
|
21919
22101
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
21920
22102
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
21921
22103
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
21922
|
-
return /* @__PURE__ */ (0,
|
|
21923
|
-
/* @__PURE__ */ (0,
|
|
22104
|
+
return /* @__PURE__ */ (0, import_jsx_runtime165.jsxs)("div", { className: "df fdc jcc aic", ...tid, children: [
|
|
22105
|
+
/* @__PURE__ */ (0, import_jsx_runtime165.jsx)(
|
|
21924
22106
|
"img",
|
|
21925
22107
|
{
|
|
21926
22108
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -21930,7 +22112,7 @@ function HbLoadingSpinner({
|
|
|
21930
22112
|
...tid.gif
|
|
21931
22113
|
}
|
|
21932
22114
|
),
|
|
21933
|
-
!iconOnly && /* @__PURE__ */ (0,
|
|
22115
|
+
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(
|
|
21934
22116
|
"div",
|
|
21935
22117
|
{
|
|
21936
22118
|
"data-chromatic": "ignore",
|
|
@@ -21955,12 +22137,12 @@ function HbSpinnerProvider({
|
|
|
21955
22137
|
quips,
|
|
21956
22138
|
noQuips: quips.length === 0
|
|
21957
22139
|
}), [quips]);
|
|
21958
|
-
return /* @__PURE__ */ (0,
|
|
22140
|
+
return /* @__PURE__ */ (0, import_jsx_runtime165.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
21959
22141
|
}
|
|
21960
22142
|
|
|
21961
22143
|
// src/components/HomeboundLogo.tsx
|
|
21962
|
-
var
|
|
21963
|
-
var
|
|
22144
|
+
var import_runtime92 = require("@homebound/truss/runtime");
|
|
22145
|
+
var import_jsx_runtime166 = require("react/jsx-runtime");
|
|
21964
22146
|
var __maybeInc17 = (inc) => {
|
|
21965
22147
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
21966
22148
|
};
|
|
@@ -21970,24 +22152,24 @@ function HomeboundLogo(props) {
|
|
|
21970
22152
|
width: width2 = "auto",
|
|
21971
22153
|
height = "auto"
|
|
21972
22154
|
} = props;
|
|
21973
|
-
return /* @__PURE__ */ (0,
|
|
22155
|
+
return /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("svg", { viewBox: "0 0 158.1 97.6", xmlns: "http://www.w3.org/2000/svg", ...(0, import_runtime92.trussProps)({
|
|
21974
22156
|
fill: ["fill_var", {
|
|
21975
|
-
"--fill": (0,
|
|
22157
|
+
"--fill": (0, import_runtime92.maybeCssVar)(fill)
|
|
21976
22158
|
}],
|
|
21977
22159
|
width: ["w_var", {
|
|
21978
|
-
"--width": (0,
|
|
22160
|
+
"--width": (0, import_runtime92.maybeCssVar)(__maybeInc17(width2))
|
|
21979
22161
|
}],
|
|
21980
22162
|
height: ["h_var", {
|
|
21981
|
-
"--height": (0,
|
|
22163
|
+
"--height": (0, import_runtime92.maybeCssVar)(__maybeInc17(height))
|
|
21982
22164
|
}]
|
|
21983
|
-
}), children: /* @__PURE__ */ (0,
|
|
22165
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime166.jsx)("path", { d: "M158.1,97.6H0.2L0,39.7L76.8,0l68,38.7l-3.1,5.3l-65-37L6.2,43.4l0.2,48h151.7V97.6z" }) });
|
|
21984
22166
|
}
|
|
21985
22167
|
|
|
21986
22168
|
// src/components/MaxLines.tsx
|
|
21987
|
-
var
|
|
22169
|
+
var import_utils135 = require("@react-aria/utils");
|
|
21988
22170
|
var import_react120 = require("react");
|
|
21989
|
-
var
|
|
21990
|
-
var
|
|
22171
|
+
var import_runtime93 = require("@homebound/truss/runtime");
|
|
22172
|
+
var import_jsx_runtime167 = require("react/jsx-runtime");
|
|
21991
22173
|
function MaxLines({
|
|
21992
22174
|
maxLines,
|
|
21993
22175
|
children
|
|
@@ -21995,7 +22177,7 @@ function MaxLines({
|
|
|
21995
22177
|
const elRef = (0, import_react120.useRef)(null);
|
|
21996
22178
|
const [hasMore, setHasMore] = (0, import_react120.useState)(false);
|
|
21997
22179
|
const [expanded, setExpanded] = (0, import_react120.useState)(false);
|
|
21998
|
-
(0,
|
|
22180
|
+
(0, import_utils135.useLayoutEffect)(() => {
|
|
21999
22181
|
if (!elRef.current) return;
|
|
22000
22182
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
22001
22183
|
}, []);
|
|
@@ -22006,15 +22188,15 @@ function MaxLines({
|
|
|
22006
22188
|
if (!elRef.current) return;
|
|
22007
22189
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
22008
22190
|
}, [expanded]);
|
|
22009
|
-
(0,
|
|
22191
|
+
(0, import_utils135.useResizeObserver)({
|
|
22010
22192
|
ref: elRef,
|
|
22011
22193
|
onResize
|
|
22012
22194
|
});
|
|
22013
|
-
return /* @__PURE__ */ (0,
|
|
22014
|
-
/* @__PURE__ */ (0,
|
|
22195
|
+
return /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)("div", { children: [
|
|
22196
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { ref: elRef, ...(0, import_runtime93.trussProps)({
|
|
22015
22197
|
...!expanded ? {
|
|
22016
22198
|
WebkitLineClamp: ["lineClamp_var", {
|
|
22017
|
-
"--WebkitLineClamp": (0,
|
|
22199
|
+
"--WebkitLineClamp": (0, import_runtime93.maybeCssVar)(maxLines)
|
|
22018
22200
|
}],
|
|
22019
22201
|
overflow: "oh",
|
|
22020
22202
|
display: "d_negwebkit_box",
|
|
@@ -22022,7 +22204,7 @@ function MaxLines({
|
|
|
22022
22204
|
textOverflow: "to_ellipsis"
|
|
22023
22205
|
} : {}
|
|
22024
22206
|
}), children }),
|
|
22025
|
-
hasMore && /* @__PURE__ */ (0,
|
|
22207
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("button", { className: "db fw4 fz_14px lh_20px", onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
22026
22208
|
] });
|
|
22027
22209
|
}
|
|
22028
22210
|
|
|
@@ -22030,15 +22212,15 @@ function MaxLines({
|
|
|
22030
22212
|
var import_change_case8 = require("change-case");
|
|
22031
22213
|
|
|
22032
22214
|
// src/components/AppNav/AppNavGroup.tsx
|
|
22033
|
-
var
|
|
22215
|
+
var import_utils137 = require("@react-aria/utils");
|
|
22034
22216
|
var import_change_case7 = require("change-case");
|
|
22035
22217
|
var import_react123 = require("react");
|
|
22036
22218
|
|
|
22037
22219
|
// src/components/AppNav/AppNavGroupTrigger.tsx
|
|
22038
22220
|
var import_react121 = require("react");
|
|
22039
22221
|
var import_react_aria52 = require("react-aria");
|
|
22040
|
-
var
|
|
22041
|
-
var
|
|
22222
|
+
var import_runtime94 = require("@homebound/truss/runtime");
|
|
22223
|
+
var import_jsx_runtime168 = require("react/jsx-runtime");
|
|
22042
22224
|
function AppNavGroupTrigger(props) {
|
|
22043
22225
|
const {
|
|
22044
22226
|
label,
|
|
@@ -22069,11 +22251,11 @@ function AppNavGroupTrigger(props) {
|
|
|
22069
22251
|
hoverStyles: hoverStyles4,
|
|
22070
22252
|
pressedStyles: pressedStyles2
|
|
22071
22253
|
} = (0, import_react121.useMemo)(() => getNavLinkStyles("side"), []);
|
|
22072
|
-
return /* @__PURE__ */ (0,
|
|
22254
|
+
return /* @__PURE__ */ (0, import_jsx_runtime168.jsxs)("button", { type: "button", ...(0, import_react_aria52.mergeProps)(buttonProps, focusProps, hoverProps, tid.trigger, {
|
|
22073
22255
|
ref,
|
|
22074
22256
|
"aria-expanded": expanded,
|
|
22075
22257
|
"aria-controls": navGroupId,
|
|
22076
|
-
...(0,
|
|
22258
|
+
...(0, import_runtime94.mergeProps)(navLink, void 0, {
|
|
22077
22259
|
...baseStyles5,
|
|
22078
22260
|
...isFocusVisible && focusRingStyles2,
|
|
22079
22261
|
...isHovered && hoverStyles4,
|
|
@@ -22081,7 +22263,7 @@ function AppNavGroupTrigger(props) {
|
|
|
22081
22263
|
})
|
|
22082
22264
|
}), children: [
|
|
22083
22265
|
label,
|
|
22084
|
-
/* @__PURE__ */ (0,
|
|
22266
|
+
/* @__PURE__ */ (0, import_jsx_runtime168.jsx)("span", { ...(0, import_runtime94.trussProps)({
|
|
22085
22267
|
...{
|
|
22086
22268
|
display: "df",
|
|
22087
22269
|
alignItems: "aic",
|
|
@@ -22091,7 +22273,7 @@ function AppNavGroupTrigger(props) {
|
|
|
22091
22273
|
...props.expanded ? {
|
|
22092
22274
|
transform: "transform_rotate_180deg"
|
|
22093
22275
|
} : {}
|
|
22094
|
-
}), children: /* @__PURE__ */ (0,
|
|
22276
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(Icon, { icon: "chevronDown" }) })
|
|
22095
22277
|
] });
|
|
22096
22278
|
}
|
|
22097
22279
|
|
|
@@ -22234,8 +22416,8 @@ function useAppNavGroupExpanded(linkGroup) {
|
|
|
22234
22416
|
}
|
|
22235
22417
|
|
|
22236
22418
|
// src/components/AppNav/AppNavGroup.tsx
|
|
22237
|
-
var
|
|
22238
|
-
var
|
|
22419
|
+
var import_runtime95 = require("@homebound/truss/runtime");
|
|
22420
|
+
var import_jsx_runtime169 = require("react/jsx-runtime");
|
|
22239
22421
|
var __maybeInc18 = (inc) => {
|
|
22240
22422
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
22241
22423
|
};
|
|
@@ -22246,9 +22428,9 @@ function AppNavGroupView(props) {
|
|
|
22246
22428
|
} = props;
|
|
22247
22429
|
const tid = useTestIds(props, "linkGroup");
|
|
22248
22430
|
if (panelCollapsed) {
|
|
22249
|
-
return /* @__PURE__ */ (0,
|
|
22431
|
+
return /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(import_jsx_runtime169.Fragment, { children: appNavLinkGroupLinks(linkGroup).map((link) => /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(NavLink, { variant: "side", ...link, iconOnly: !!link.icon, ...tid[`link_${(0, import_change_case7.camelCase)(link.label)}`] }, link.label)) });
|
|
22250
22432
|
}
|
|
22251
|
-
return /* @__PURE__ */ (0,
|
|
22433
|
+
return /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(AppNavGroupDisclosure, { ...props });
|
|
22252
22434
|
}
|
|
22253
22435
|
function AppNavGroupDisclosure(props) {
|
|
22254
22436
|
const {
|
|
@@ -22273,29 +22455,29 @@ function AppNavGroupDisclosure(props) {
|
|
|
22273
22455
|
setContentHeight(`${contentEl.scrollHeight}px`);
|
|
22274
22456
|
}
|
|
22275
22457
|
}, [expanded, contentEl]);
|
|
22276
|
-
(0,
|
|
22458
|
+
(0, import_utils137.useResizeObserver)({
|
|
22277
22459
|
ref: contentRef,
|
|
22278
22460
|
onResize
|
|
22279
22461
|
});
|
|
22280
|
-
return /* @__PURE__ */ (0,
|
|
22281
|
-
/* @__PURE__ */ (0,
|
|
22282
|
-
/* @__PURE__ */ (0,
|
|
22462
|
+
return /* @__PURE__ */ (0, import_jsx_runtime169.jsxs)("div", { className: "df fdc", ...tid, children: [
|
|
22463
|
+
/* @__PURE__ */ (0, import_jsx_runtime169.jsx)(AppNavGroupTrigger, { label: linkGroup.label, navGroupId, expanded, onClick: onToggle, ...tid }),
|
|
22464
|
+
/* @__PURE__ */ (0, import_jsx_runtime169.jsx)("div", { id: navGroupId, role: "region", "aria-hidden": !expanded, ...(0, import_runtime95.trussProps)({
|
|
22283
22465
|
overflow: "oh",
|
|
22284
22466
|
transition: "transitionHeight",
|
|
22285
22467
|
height: ["h_var", {
|
|
22286
|
-
"--height": (0,
|
|
22468
|
+
"--height": (0, import_runtime95.maybeCssVar)(__maybeInc18(contentHeight))
|
|
22287
22469
|
}]
|
|
22288
|
-
}), ...tid.panel, children: /* @__PURE__ */ (0,
|
|
22470
|
+
}), ...tid.panel, children: /* @__PURE__ */ (0, import_jsx_runtime169.jsx)("div", { ref: setContentEl, className: "df fdc pl2", children: /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(AppNavItems, { items: linkGroup.items, panelCollapsed: false, ...tid }) }) })
|
|
22289
22471
|
] });
|
|
22290
22472
|
}
|
|
22291
22473
|
|
|
22292
22474
|
// src/components/AppNav/AppNavGroupMenu.tsx
|
|
22293
|
-
var
|
|
22475
|
+
var import_jsx_runtime170 = require("react/jsx-runtime");
|
|
22294
22476
|
function AppNavGroupMenu({
|
|
22295
22477
|
linkGroup,
|
|
22296
22478
|
...tid
|
|
22297
22479
|
}) {
|
|
22298
|
-
return /* @__PURE__ */ (0,
|
|
22480
|
+
return /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(
|
|
22299
22481
|
ButtonMenu,
|
|
22300
22482
|
{
|
|
22301
22483
|
trigger: {
|
|
@@ -22311,8 +22493,8 @@ function AppNavGroupMenu({
|
|
|
22311
22493
|
}
|
|
22312
22494
|
|
|
22313
22495
|
// src/components/AppNav/AppNavSectionView.tsx
|
|
22314
|
-
var
|
|
22315
|
-
var
|
|
22496
|
+
var import_runtime96 = require("@homebound/truss/runtime");
|
|
22497
|
+
var import_jsx_runtime171 = require("react/jsx-runtime");
|
|
22316
22498
|
function AppNavSectionView(props) {
|
|
22317
22499
|
const {
|
|
22318
22500
|
section,
|
|
@@ -22337,7 +22519,7 @@ function AppNavSectionView(props) {
|
|
|
22337
22519
|
"--borderColor": "var(--b-surface-separator)"
|
|
22338
22520
|
}]
|
|
22339
22521
|
};
|
|
22340
|
-
return /* @__PURE__ */ (0,
|
|
22522
|
+
return /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { ...(0, import_runtime96.trussProps)({
|
|
22341
22523
|
...{
|
|
22342
22524
|
display: "df",
|
|
22343
22525
|
flexDirection: "fdc",
|
|
@@ -22345,7 +22527,7 @@ function AppNavSectionView(props) {
|
|
|
22345
22527
|
},
|
|
22346
22528
|
...showDivider ? dividerStyles : {}
|
|
22347
22529
|
}), ...tid, children: [
|
|
22348
|
-
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0,
|
|
22530
|
+
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime96.trussProps)({
|
|
22349
22531
|
fontWeight: "fw6",
|
|
22350
22532
|
fontSize: "fz_10px",
|
|
22351
22533
|
lineHeight: "lh_14px",
|
|
@@ -22357,18 +22539,18 @@ function AppNavSectionView(props) {
|
|
|
22357
22539
|
paddingBottom: "pb1",
|
|
22358
22540
|
textTransform: "ttu"
|
|
22359
22541
|
}), ...tid.label, children: section.label }),
|
|
22360
|
-
/* @__PURE__ */ (0,
|
|
22542
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsx)(AppNavItems, { ...scopeProps, items: section.items, variant, panelCollapsed })
|
|
22361
22543
|
] });
|
|
22362
22544
|
}
|
|
22363
22545
|
|
|
22364
22546
|
// src/components/AppNav/AppNavItems.tsx
|
|
22365
|
-
var
|
|
22547
|
+
var import_jsx_runtime172 = require("react/jsx-runtime");
|
|
22366
22548
|
function AppNavItems(props) {
|
|
22367
22549
|
const { items, variant = "side", panelCollapsed = false } = props;
|
|
22368
22550
|
const tid = useTestIds(props, "appNav");
|
|
22369
|
-
return /* @__PURE__ */ (0,
|
|
22551
|
+
return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(import_jsx_runtime172.Fragment, { children: items.map((item, idx) => {
|
|
22370
22552
|
if (isAppNavLink(item)) {
|
|
22371
|
-
return /* @__PURE__ */ (0,
|
|
22553
|
+
return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
|
|
22372
22554
|
NavLink,
|
|
22373
22555
|
{
|
|
22374
22556
|
variant,
|
|
@@ -22380,7 +22562,7 @@ function AppNavItems(props) {
|
|
|
22380
22562
|
);
|
|
22381
22563
|
}
|
|
22382
22564
|
if (isAppNavGroup(item)) {
|
|
22383
|
-
return variant === "global" ? /* @__PURE__ */ (0,
|
|
22565
|
+
return variant === "global" ? /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(AppNavGroupMenu, { linkGroup: item, ...tid.linkGroup }, appNavItemKey(item)) : /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
|
|
22384
22566
|
AppNavGroupView,
|
|
22385
22567
|
{
|
|
22386
22568
|
linkGroup: item,
|
|
@@ -22391,7 +22573,7 @@ function AppNavItems(props) {
|
|
|
22391
22573
|
);
|
|
22392
22574
|
}
|
|
22393
22575
|
if (isAppNavSection(item)) {
|
|
22394
|
-
return /* @__PURE__ */ (0,
|
|
22576
|
+
return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)(
|
|
22395
22577
|
AppNavSectionView,
|
|
22396
22578
|
{
|
|
22397
22579
|
section: item,
|
|
@@ -22409,18 +22591,31 @@ function AppNavItems(props) {
|
|
|
22409
22591
|
|
|
22410
22592
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
22411
22593
|
var import_framer_motion5 = require("framer-motion");
|
|
22412
|
-
var
|
|
22594
|
+
var import_react125 = require("react");
|
|
22413
22595
|
var import_react_aria53 = require("react-aria");
|
|
22414
22596
|
var import_react_dom6 = require("react-dom");
|
|
22415
22597
|
var import_react_router_dom5 = require("react-router-dom");
|
|
22416
|
-
|
|
22417
|
-
|
|
22598
|
+
|
|
22599
|
+
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayoutHeightContext.tsx
|
|
22600
|
+
var import_react124 = require("react");
|
|
22601
|
+
var import_jsx_runtime173 = require("react/jsx-runtime");
|
|
22602
|
+
var EnvironmentBannerLayoutHeightContext = (0, import_react124.createContext)(0);
|
|
22603
|
+
function EnvironmentBannerLayoutHeightProvider({ value, children }) {
|
|
22604
|
+
return /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(EnvironmentBannerLayoutHeightContext.Provider, { value, children });
|
|
22605
|
+
}
|
|
22606
|
+
function useEnvironmentBannerLayoutHeight() {
|
|
22607
|
+
return (0, import_react124.useContext)(EnvironmentBannerLayoutHeightContext);
|
|
22608
|
+
}
|
|
22609
|
+
|
|
22610
|
+
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
22611
|
+
var import_runtime97 = require("@homebound/truss/runtime");
|
|
22612
|
+
var import_jsx_runtime174 = require("react/jsx-runtime");
|
|
22418
22613
|
function NavbarMobileMenu(props) {
|
|
22419
22614
|
const {
|
|
22420
22615
|
items
|
|
22421
22616
|
} = props;
|
|
22422
22617
|
const tid = useTestIds(props, "navbar");
|
|
22423
|
-
const [isOpen, setIsOpen] = (0,
|
|
22618
|
+
const [isOpen, setIsOpen] = (0, import_react125.useState)(false);
|
|
22424
22619
|
const {
|
|
22425
22620
|
pathname,
|
|
22426
22621
|
search
|
|
@@ -22428,13 +22623,13 @@ function NavbarMobileMenu(props) {
|
|
|
22428
22623
|
(0, import_react_aria53.usePreventScroll)({
|
|
22429
22624
|
isDisabled: !isOpen
|
|
22430
22625
|
});
|
|
22431
|
-
(0,
|
|
22626
|
+
(0, import_react125.useEffect)(() => {
|
|
22432
22627
|
setIsOpen(false);
|
|
22433
22628
|
}, [pathname, search]);
|
|
22434
22629
|
const close = () => setIsOpen(false);
|
|
22435
|
-
return /* @__PURE__ */ (0,
|
|
22436
|
-
/* @__PURE__ */ (0,
|
|
22437
|
-
(0, import_react_dom6.createPortal)(/* @__PURE__ */ (0,
|
|
22630
|
+
return /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(import_jsx_runtime174.Fragment, { children: [
|
|
22631
|
+
/* @__PURE__ */ (0, import_jsx_runtime174.jsx)(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => setIsOpen((open) => !open), ...tid.mobileMenu }),
|
|
22632
|
+
(0, import_react_dom6.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime174.jsx)(ContrastScope, { children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_framer_motion5.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(NavbarMobileDrawer, { items, onClose: close, tid }) }) }), document.body)
|
|
22438
22633
|
] });
|
|
22439
22634
|
}
|
|
22440
22635
|
function NavbarMobileDrawer({
|
|
@@ -22442,15 +22637,18 @@ function NavbarMobileDrawer({
|
|
|
22442
22637
|
onClose,
|
|
22443
22638
|
tid
|
|
22444
22639
|
}) {
|
|
22445
|
-
|
|
22446
|
-
|
|
22640
|
+
const bannerHeightPx = useEnvironmentBannerLayoutHeight();
|
|
22641
|
+
const overlayTopStyle = {
|
|
22642
|
+
top: bannerHeightPx
|
|
22643
|
+
};
|
|
22644
|
+
return /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(import_jsx_runtime174.Fragment, { children: [
|
|
22645
|
+
/* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_framer_motion5.motion.div, { ...(0, import_runtime97.mergeProps)(void 0, overlayTopStyle, {
|
|
22447
22646
|
position: "fixed",
|
|
22448
|
-
top: "top0",
|
|
22449
22647
|
right: "right0",
|
|
22450
22648
|
bottom: "bottom0",
|
|
22451
22649
|
left: "left0",
|
|
22452
22650
|
zIndex: ["z_var", {
|
|
22453
|
-
"--zIndex": (0,
|
|
22651
|
+
"--zIndex": (0, import_runtime97.maybeCssVar)(zIndices.navbarMobileMenuScrim)
|
|
22454
22652
|
}],
|
|
22455
22653
|
backgroundColor: "backgroundColor_rgba_36_36_36_0_2"
|
|
22456
22654
|
}), initial: {
|
|
@@ -22463,9 +22661,8 @@ function NavbarMobileDrawer({
|
|
|
22463
22661
|
ease: "linear",
|
|
22464
22662
|
duration: 0.2
|
|
22465
22663
|
}, onClick: onClose, ...tid.mobileMenuScrim }, "navbarMobileMenuScrim"),
|
|
22466
|
-
/* @__PURE__ */ (0,
|
|
22664
|
+
/* @__PURE__ */ (0, import_jsx_runtime174.jsx)(import_react_aria53.FocusScope, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsxs)(import_framer_motion5.motion.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...(0, import_runtime97.mergeProps)(void 0, overlayTopStyle, {
|
|
22467
22665
|
position: "fixed",
|
|
22468
|
-
top: "top0",
|
|
22469
22666
|
bottom: "bottom0",
|
|
22470
22667
|
left: "left0",
|
|
22471
22668
|
display: "df",
|
|
@@ -22474,7 +22671,7 @@ function NavbarMobileDrawer({
|
|
|
22474
22671
|
width: "w100",
|
|
22475
22672
|
overflow: "oh",
|
|
22476
22673
|
zIndex: ["z_var", {
|
|
22477
|
-
"--zIndex": (0,
|
|
22674
|
+
"--zIndex": (0, import_runtime97.maybeCssVar)(zIndices.navbarMobileMenu)
|
|
22478
22675
|
}],
|
|
22479
22676
|
backgroundColor: ["bgColor_var", {
|
|
22480
22677
|
"--backgroundColor": "var(--b-surface)"
|
|
@@ -22489,8 +22686,8 @@ function NavbarMobileDrawer({
|
|
|
22489
22686
|
ease: "linear",
|
|
22490
22687
|
duration: 0.2
|
|
22491
22688
|
}, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
|
|
22492
|
-
/* @__PURE__ */ (0,
|
|
22493
|
-
/* @__PURE__ */ (0,
|
|
22689
|
+
/* @__PURE__ */ (0, import_jsx_runtime174.jsx)("div", { className: "df aic jcfe pt2 pb2 pr2 pl2 fs0", children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(IconButton, { icon: "menuClose", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
|
|
22690
|
+
/* @__PURE__ */ (0, import_jsx_runtime174.jsx)(
|
|
22494
22691
|
"nav",
|
|
22495
22692
|
{
|
|
22496
22693
|
className: "fg1 oya pl2 pr2 pb3 df fdc gap1",
|
|
@@ -22500,7 +22697,7 @@ function NavbarMobileDrawer({
|
|
|
22500
22697
|
}
|
|
22501
22698
|
},
|
|
22502
22699
|
...tid.mobileMenuPanel,
|
|
22503
|
-
children: /* @__PURE__ */ (0,
|
|
22700
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(AppNavItems, { items, panelCollapsed: false, ...tid })
|
|
22504
22701
|
}
|
|
22505
22702
|
)
|
|
22506
22703
|
] }, "navbarMobileMenuDrawer") })
|
|
@@ -22508,8 +22705,8 @@ function NavbarMobileDrawer({
|
|
|
22508
22705
|
}
|
|
22509
22706
|
|
|
22510
22707
|
// src/components/Navbar/Navbar.tsx
|
|
22511
|
-
var
|
|
22512
|
-
var
|
|
22708
|
+
var import_runtime98 = require("@homebound/truss/runtime");
|
|
22709
|
+
var import_jsx_runtime175 = require("react/jsx-runtime");
|
|
22513
22710
|
function Navbar(props) {
|
|
22514
22711
|
const {
|
|
22515
22712
|
brand,
|
|
@@ -22528,7 +22725,7 @@ function Navbar(props) {
|
|
|
22528
22725
|
overflows
|
|
22529
22726
|
} = useContentOverflow(!sm);
|
|
22530
22727
|
const showMobile = sm || overflows;
|
|
22531
|
-
return /* @__PURE__ */ (0,
|
|
22728
|
+
return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(ContrastScope, { children: /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("nav", { ...(0, import_runtime98.trussProps)({
|
|
22532
22729
|
backgroundColor: "bgGray800",
|
|
22533
22730
|
flexShrink: "fs0",
|
|
22534
22731
|
display: "df",
|
|
@@ -22545,10 +22742,10 @@ function Navbar(props) {
|
|
|
22545
22742
|
paddingRight: "pr5"
|
|
22546
22743
|
} : {}
|
|
22547
22744
|
}), ...tid, children: [
|
|
22548
|
-
/* @__PURE__ */ (0,
|
|
22549
|
-
/* @__PURE__ */ (0,
|
|
22550
|
-
showMobile && /* @__PURE__ */ (0,
|
|
22551
|
-
/* @__PURE__ */ (0,
|
|
22745
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("div", { className: "df aic gap3 fg1 mw0", children: [
|
|
22746
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("div", { className: "df aic fs0 gap2", children: [
|
|
22747
|
+
showMobile && /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(NavbarMobileMenu, { items, ...tid }),
|
|
22748
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { ...(0, import_runtime98.trussProps)({
|
|
22552
22749
|
flexShrink: "fs0",
|
|
22553
22750
|
...hideBrandOnMobile && showMobile ? {
|
|
22554
22751
|
display: "dn"
|
|
@@ -22557,7 +22754,7 @@ function Navbar(props) {
|
|
|
22557
22754
|
] }),
|
|
22558
22755
|
!sm && // Stays mounted while overflowing (hidden) so the items remain measurable and the bar
|
|
22559
22756
|
// can expand again as space frees up.
|
|
22560
|
-
/* @__PURE__ */ (0,
|
|
22757
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { ref: containerRef, ...(0, import_runtime98.trussProps)({
|
|
22561
22758
|
display: "df",
|
|
22562
22759
|
alignItems: "aic",
|
|
22563
22760
|
flexGrow: "fg1",
|
|
@@ -22566,11 +22763,11 @@ function Navbar(props) {
|
|
|
22566
22763
|
...overflows ? {
|
|
22567
22764
|
visibility: "visibility_hidden"
|
|
22568
22765
|
} : {}
|
|
22569
|
-
}), ...tid.items, children: /* @__PURE__ */ (0,
|
|
22766
|
+
}), ...tid.items, children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(AppNavItems, { variant: "global", items, ...tid }) }) })
|
|
22570
22767
|
] }),
|
|
22571
|
-
/* @__PURE__ */ (0,
|
|
22572
|
-
rightSlot && /* @__PURE__ */ (0,
|
|
22573
|
-
user && /* @__PURE__ */ (0,
|
|
22768
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("div", { className: "df aic gap1", children: [
|
|
22769
|
+
rightSlot && /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
|
|
22770
|
+
user && /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(NavbarUserMenu, { user, ...tid.userMenu })
|
|
22574
22771
|
] })
|
|
22575
22772
|
] }) });
|
|
22576
22773
|
}
|
|
@@ -22578,7 +22775,7 @@ function NavbarUserMenu({
|
|
|
22578
22775
|
user,
|
|
22579
22776
|
...tid
|
|
22580
22777
|
}) {
|
|
22581
|
-
return /* @__PURE__ */ (0,
|
|
22778
|
+
return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
|
|
22582
22779
|
src: user.picture,
|
|
22583
22780
|
name: user.name,
|
|
22584
22781
|
size: "sm",
|
|
@@ -22588,19 +22785,19 @@ function NavbarUserMenu({
|
|
|
22588
22785
|
|
|
22589
22786
|
// src/components/Tabs.tsx
|
|
22590
22787
|
var import_change_case9 = require("change-case");
|
|
22591
|
-
var
|
|
22788
|
+
var import_react126 = require("react");
|
|
22592
22789
|
var import_react_aria54 = require("react-aria");
|
|
22593
22790
|
var import_react_router = require("react-router");
|
|
22594
22791
|
var import_react_router_dom6 = require("react-router-dom");
|
|
22595
|
-
var
|
|
22596
|
-
var
|
|
22792
|
+
var import_runtime99 = require("@homebound/truss/runtime");
|
|
22793
|
+
var import_jsx_runtime176 = require("react/jsx-runtime");
|
|
22597
22794
|
function TabsWithContent(props) {
|
|
22598
22795
|
const styles = hideTabs(props) ? {} : {
|
|
22599
22796
|
paddingTop: "pt3"
|
|
22600
22797
|
};
|
|
22601
|
-
return /* @__PURE__ */ (0,
|
|
22602
|
-
/* @__PURE__ */ (0,
|
|
22603
|
-
/* @__PURE__ */ (0,
|
|
22798
|
+
return /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)(import_jsx_runtime176.Fragment, { children: [
|
|
22799
|
+
/* @__PURE__ */ (0, import_jsx_runtime176.jsx)(Tabs, { ...props }),
|
|
22800
|
+
/* @__PURE__ */ (0, import_jsx_runtime176.jsx)(TabContent, { ...props, contentXss: {
|
|
22604
22801
|
...styles,
|
|
22605
22802
|
...props.contentXss
|
|
22606
22803
|
} })
|
|
@@ -22625,7 +22822,7 @@ function TabContent(props) {
|
|
|
22625
22822
|
return (
|
|
22626
22823
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
22627
22824
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
22628
|
-
/* @__PURE__ */ (0,
|
|
22825
|
+
/* @__PURE__ */ (0, import_jsx_runtime176.jsx)(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...(0, import_runtime99.trussProps)(contentXss), children: selectedTab.render() }) })
|
|
22629
22826
|
);
|
|
22630
22827
|
}
|
|
22631
22828
|
function Tabs(props) {
|
|
@@ -22649,9 +22846,9 @@ function Tabs(props) {
|
|
|
22649
22846
|
focusProps
|
|
22650
22847
|
} = (0, import_react_aria54.useFocusRing)();
|
|
22651
22848
|
const tid = useTestIds(others, "tabs");
|
|
22652
|
-
const [active, setActive] = (0,
|
|
22653
|
-
const ref = (0,
|
|
22654
|
-
(0,
|
|
22849
|
+
const [active, setActive] = (0, import_react126.useState)(selected);
|
|
22850
|
+
const ref = (0, import_react126.useRef)(null);
|
|
22851
|
+
(0, import_react126.useEffect)(() => setActive(selected), [selected]);
|
|
22655
22852
|
function onKeyUp(e) {
|
|
22656
22853
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
22657
22854
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -22667,7 +22864,7 @@ function Tabs(props) {
|
|
|
22667
22864
|
setActive(selected);
|
|
22668
22865
|
}
|
|
22669
22866
|
}
|
|
22670
|
-
return /* @__PURE__ */ (0,
|
|
22867
|
+
return /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)("div", { ...(0, import_runtime99.trussProps)({
|
|
22671
22868
|
...{
|
|
22672
22869
|
display: "df",
|
|
22673
22870
|
alignItems: "aic",
|
|
@@ -22683,11 +22880,11 @@ function Tabs(props) {
|
|
|
22683
22880
|
}
|
|
22684
22881
|
} : {}
|
|
22685
22882
|
}), children: [
|
|
22686
|
-
!hideTabs(props) && /* @__PURE__ */ (0,
|
|
22883
|
+
!hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
22687
22884
|
const uniqueValue = uniqueTabValue(tab);
|
|
22688
|
-
return /* @__PURE__ */ (0,
|
|
22885
|
+
return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
|
|
22689
22886
|
}) }),
|
|
22690
|
-
right && /* @__PURE__ */ (0,
|
|
22887
|
+
right && /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("div", { className: "mla df aic gap1 pb1", children: right })
|
|
22691
22888
|
] });
|
|
22692
22889
|
}
|
|
22693
22890
|
function TabImpl(props) {
|
|
@@ -22721,7 +22918,7 @@ function TabImpl(props) {
|
|
|
22721
22918
|
hoverStyles: hoverStyles4,
|
|
22722
22919
|
disabledStyles: disabledStyles4,
|
|
22723
22920
|
activeHoverStyles
|
|
22724
|
-
} = (0,
|
|
22921
|
+
} = (0, import_react126.useMemo)(() => getTabStyles(), []);
|
|
22725
22922
|
const uniqueValue = uniqueTabValue(tab);
|
|
22726
22923
|
const tabProps = {
|
|
22727
22924
|
"aria-controls": `${uniqueValue}-tabPanel`,
|
|
@@ -22731,7 +22928,7 @@ function TabImpl(props) {
|
|
|
22731
22928
|
role: "tab",
|
|
22732
22929
|
tabIndex: active ? 0 : -1,
|
|
22733
22930
|
...others,
|
|
22734
|
-
...(0,
|
|
22931
|
+
...(0, import_runtime99.trussProps)({
|
|
22735
22932
|
...baseStyles5,
|
|
22736
22933
|
...active && activeStyles3,
|
|
22737
22934
|
...isDisabled && disabledStyles4,
|
|
@@ -22747,17 +22944,17 @@ function TabImpl(props) {
|
|
|
22747
22944
|
onClick: () => onClick(tab.value)
|
|
22748
22945
|
}
|
|
22749
22946
|
});
|
|
22750
|
-
const tabLabel = /* @__PURE__ */ (0,
|
|
22947
|
+
const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime176.jsxs)(import_jsx_runtime176.Fragment, { children: [
|
|
22751
22948
|
label,
|
|
22752
|
-
(icon || endAdornment) && /* @__PURE__ */ (0,
|
|
22949
|
+
(icon || endAdornment) && /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("span", { className: "ml1", children: icon ? /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(Icon, { icon }) : endAdornment })
|
|
22753
22950
|
] });
|
|
22754
22951
|
return isDisabled ? maybeTooltip({
|
|
22755
22952
|
title: resolveTooltip(disabled),
|
|
22756
22953
|
placement: "top",
|
|
22757
|
-
children: /* @__PURE__ */ (0,
|
|
22758
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */ (0,
|
|
22954
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("div", { ...tabProps, children: tabLabel })
|
|
22955
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(import_react_router_dom6.Link, { ...(0, import_react_aria54.mergeProps)(tabProps, interactiveProps, {
|
|
22759
22956
|
className: "navLink"
|
|
22760
|
-
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0,
|
|
22957
|
+
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("button", { ...{
|
|
22761
22958
|
...tabProps,
|
|
22762
22959
|
...interactiveProps
|
|
22763
22960
|
}, children: tabLabel });
|
|
@@ -22768,7 +22965,7 @@ function getTabStyles() {
|
|
|
22768
22965
|
const borderBottomStyles = {
|
|
22769
22966
|
borderBottomStyle: "bbs_solid",
|
|
22770
22967
|
borderBottomWidth: ["borderBottomWidth_var", {
|
|
22771
|
-
"--borderBottomWidth": (0,
|
|
22968
|
+
"--borderBottomWidth": (0, import_runtime99.maybeCssVar)(`${borderBottomWidthPx}px`)
|
|
22772
22969
|
}],
|
|
22773
22970
|
paddingBottom: ["pb_var", {
|
|
22774
22971
|
"--paddingBottom": `${verticalPaddingPx - borderBottomWidthPx}px`
|
|
@@ -22852,8 +23049,8 @@ function hideTabs(props) {
|
|
|
22852
23049
|
}
|
|
22853
23050
|
|
|
22854
23051
|
// src/components/PageHeader.tsx
|
|
22855
|
-
var
|
|
22856
|
-
var
|
|
23052
|
+
var import_runtime100 = require("@homebound/truss/runtime");
|
|
23053
|
+
var import_jsx_runtime177 = require("react/jsx-runtime");
|
|
22857
23054
|
function PageHeader2(props) {
|
|
22858
23055
|
const {
|
|
22859
23056
|
title,
|
|
@@ -22862,7 +23059,7 @@ function PageHeader2(props) {
|
|
|
22862
23059
|
...otherProps
|
|
22863
23060
|
} = props;
|
|
22864
23061
|
const tid = useTestIds(otherProps, "pageHeader");
|
|
22865
|
-
return /* @__PURE__ */ (0,
|
|
23062
|
+
return /* @__PURE__ */ (0, import_jsx_runtime177.jsxs)("header", { ...tid, ...(0, import_runtime100.trussProps)({
|
|
22866
23063
|
display: "df",
|
|
22867
23064
|
flexDirection: "fdc",
|
|
22868
23065
|
paddingTop: "pt3",
|
|
@@ -22877,16 +23074,16 @@ function PageHeader2(props) {
|
|
|
22877
23074
|
"--backgroundColor": "var(--b-surface)"
|
|
22878
23075
|
}]
|
|
22879
23076
|
}), children: [
|
|
22880
|
-
/* @__PURE__ */ (0,
|
|
22881
|
-
/* @__PURE__ */ (0,
|
|
22882
|
-
/* @__PURE__ */ (0,
|
|
23077
|
+
/* @__PURE__ */ (0, import_jsx_runtime177.jsxs)("div", { className: "df jcsb mb2 w100 gap1", children: [
|
|
23078
|
+
/* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("h1", { ...tid.title, className: "fw6 fz_20px lh_28px", children: title }) }),
|
|
23079
|
+
/* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { children: rightSlot })
|
|
22883
23080
|
] }),
|
|
22884
|
-
tabs && /* @__PURE__ */ (0,
|
|
23081
|
+
tabs && /* @__PURE__ */ (0, import_jsx_runtime177.jsx)(Tabs, { ...tabs })
|
|
22885
23082
|
] });
|
|
22886
23083
|
}
|
|
22887
23084
|
|
|
22888
23085
|
// src/components/Pagination.tsx
|
|
22889
|
-
var
|
|
23086
|
+
var import_jsx_runtime178 = require("react/jsx-runtime");
|
|
22890
23087
|
var defaultPage = {
|
|
22891
23088
|
offset: 0,
|
|
22892
23089
|
limit: 100
|
|
@@ -22918,25 +23115,25 @@ function Pagination(props) {
|
|
|
22918
23115
|
}
|
|
22919
23116
|
}
|
|
22920
23117
|
const tid = useTestIds(props, "pagination");
|
|
22921
|
-
return /* @__PURE__ */ (0,
|
|
22922
|
-
/* @__PURE__ */ (0,
|
|
22923
|
-
/* @__PURE__ */ (0,
|
|
23118
|
+
return /* @__PURE__ */ (0, import_jsx_runtime178.jsxs)("div", { className: "df bcGray200 bts_solid btw_1px fw4 fz_12px lh_16px gray500 pl2 pr2 pt2", ...tid, children: [
|
|
23119
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsx)("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
|
|
23120
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsx)("div", { className: "w_78px", children: /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
|
|
22924
23121
|
pageNumber: 1,
|
|
22925
23122
|
pageSize: val
|
|
22926
23123
|
}), autoSort: false, ...tid.pageSize }) }),
|
|
22927
|
-
/* @__PURE__ */ (0,
|
|
22928
|
-
/* @__PURE__ */ (0,
|
|
23124
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsxs)("div", { className: "mla mta mba df", children: [
|
|
23125
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsxs)("div", { className: "df mta mba mr2", ...tid.pageInfoLabel, children: [
|
|
22929
23126
|
first,
|
|
22930
23127
|
" ",
|
|
22931
23128
|
showLast ? `- ${last}` : "",
|
|
22932
23129
|
" of ",
|
|
22933
23130
|
totalCount
|
|
22934
23131
|
] }),
|
|
22935
|
-
/* @__PURE__ */ (0,
|
|
23132
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsx)(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "rgba(29, 78, 216, 1)" /* Blue700 */ : "rgba(236, 235, 235, 1)" /* Gray200 */, onClick: () => set({
|
|
22936
23133
|
pageNumber: pageNumber - 1,
|
|
22937
23134
|
pageSize
|
|
22938
23135
|
}), disabled: !hasPrevPage, ...tid.previousIcon }),
|
|
22939
|
-
/* @__PURE__ */ (0,
|
|
23136
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsx)(IconButton, { icon: "chevronRight", color: hasNextPage ? "rgba(29, 78, 216, 1)" /* Blue700 */ : "rgba(236, 235, 235, 1)" /* Gray200 */, onClick: () => set({
|
|
22940
23137
|
pageNumber: pageNumber + 1,
|
|
22941
23138
|
pageSize
|
|
22942
23139
|
}), disabled: !hasNextPage, ...tid.nextIcon })
|
|
@@ -22958,10 +23155,10 @@ function toPageNumberSize(page) {
|
|
|
22958
23155
|
}
|
|
22959
23156
|
|
|
22960
23157
|
// src/components/ScrollShadows.tsx
|
|
22961
|
-
var
|
|
22962
|
-
var
|
|
22963
|
-
var
|
|
22964
|
-
var
|
|
23158
|
+
var import_utils146 = require("@react-aria/utils");
|
|
23159
|
+
var import_react127 = require("react");
|
|
23160
|
+
var import_runtime101 = require("@homebound/truss/runtime");
|
|
23161
|
+
var import_jsx_runtime179 = require("react/jsx-runtime");
|
|
22965
23162
|
function ScrollShadows(props) {
|
|
22966
23163
|
const {
|
|
22967
23164
|
children,
|
|
@@ -22977,15 +23174,15 @@ function ScrollShadows(props) {
|
|
|
22977
23174
|
if (!bgColor.includes("rgba")) {
|
|
22978
23175
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
22979
23176
|
}
|
|
22980
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
22981
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
22982
|
-
const scrollRef = (0,
|
|
22983
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
23177
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react127.useState)(false);
|
|
23178
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react127.useState)(false);
|
|
23179
|
+
const scrollRef = (0, import_react127.useRef)(null);
|
|
23180
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react127.useMemo)(() => {
|
|
22984
23181
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
22985
23182
|
const commonStyles = {
|
|
22986
23183
|
position: "absolute",
|
|
22987
23184
|
zIndex: ["z_var", {
|
|
22988
|
-
"--zIndex": (0,
|
|
23185
|
+
"--zIndex": (0, import_runtime101.maybeCssVar)(zIndices.scrollShadow)
|
|
22989
23186
|
}],
|
|
22990
23187
|
pointerEvents: "pointerEvents_none"
|
|
22991
23188
|
};
|
|
@@ -23018,7 +23215,7 @@ function ScrollShadows(props) {
|
|
|
23018
23215
|
...startShadowStyles2,
|
|
23019
23216
|
...{
|
|
23020
23217
|
background: ["background_var", {
|
|
23021
|
-
"--background": (0,
|
|
23218
|
+
"--background": (0, import_runtime101.maybeCssVar)(startGradient)
|
|
23022
23219
|
}]
|
|
23023
23220
|
}
|
|
23024
23221
|
}, {
|
|
@@ -23026,12 +23223,12 @@ function ScrollShadows(props) {
|
|
|
23026
23223
|
...endShadowStyles2,
|
|
23027
23224
|
...{
|
|
23028
23225
|
background: ["background_var", {
|
|
23029
|
-
"--background": (0,
|
|
23226
|
+
"--background": (0, import_runtime101.maybeCssVar)(endGradient)
|
|
23030
23227
|
}]
|
|
23031
23228
|
}
|
|
23032
23229
|
}];
|
|
23033
23230
|
}, [horizontal, bgColor]);
|
|
23034
|
-
const updateScrollProps = (0,
|
|
23231
|
+
const updateScrollProps = (0, import_react127.useCallback)((el) => {
|
|
23035
23232
|
const {
|
|
23036
23233
|
scrollTop,
|
|
23037
23234
|
scrollHeight,
|
|
@@ -23046,15 +23243,15 @@ function ScrollShadows(props) {
|
|
|
23046
23243
|
setShowStartShadow(start > 0);
|
|
23047
23244
|
setShowEndShadow(start + boxSize < end);
|
|
23048
23245
|
}, [horizontal]);
|
|
23049
|
-
const onResize = (0,
|
|
23050
|
-
(0,
|
|
23246
|
+
const onResize = (0, import_react127.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
23247
|
+
(0, import_utils146.useResizeObserver)({
|
|
23051
23248
|
ref: scrollRef,
|
|
23052
23249
|
onResize
|
|
23053
23250
|
});
|
|
23054
|
-
return /* @__PURE__ */ (0,
|
|
23251
|
+
return /* @__PURE__ */ (0, import_jsx_runtime179.jsxs)("div", { ...(0, import_runtime101.trussProps)({
|
|
23055
23252
|
display: "df",
|
|
23056
23253
|
flexDirection: ["fd_var", {
|
|
23057
|
-
"--flexDirection": (0,
|
|
23254
|
+
"--flexDirection": (0, import_runtime101.maybeCssVar)(!horizontal ? "column" : "row")
|
|
23058
23255
|
}],
|
|
23059
23256
|
position: "relative",
|
|
23060
23257
|
overflow: "oh",
|
|
@@ -23067,23 +23264,23 @@ function ScrollShadows(props) {
|
|
|
23067
23264
|
width: width2
|
|
23068
23265
|
}
|
|
23069
23266
|
}), ...tid, children: [
|
|
23070
|
-
/* @__PURE__ */ (0,
|
|
23267
|
+
/* @__PURE__ */ (0, import_jsx_runtime179.jsx)("div", { ...(0, import_runtime101.trussProps)({
|
|
23071
23268
|
...startShadowStyles,
|
|
23072
23269
|
...{
|
|
23073
23270
|
opacity: ["o_var", {
|
|
23074
|
-
"--opacity": (0,
|
|
23271
|
+
"--opacity": (0, import_runtime101.maybeCssVar)(showStartShadow ? 1 : 0)
|
|
23075
23272
|
}]
|
|
23076
23273
|
}
|
|
23077
23274
|
}), "data-chromatic": "ignore" }),
|
|
23078
|
-
/* @__PURE__ */ (0,
|
|
23275
|
+
/* @__PURE__ */ (0, import_jsx_runtime179.jsx)("div", { ...(0, import_runtime101.trussProps)({
|
|
23079
23276
|
...endShadowStyles,
|
|
23080
23277
|
...{
|
|
23081
23278
|
opacity: ["o_var", {
|
|
23082
|
-
"--opacity": (0,
|
|
23279
|
+
"--opacity": (0, import_runtime101.maybeCssVar)(showEndShadow ? 1 : 0)
|
|
23083
23280
|
}]
|
|
23084
23281
|
}
|
|
23085
23282
|
}), "data-chromatic": "ignore" }),
|
|
23086
|
-
/* @__PURE__ */ (0,
|
|
23283
|
+
/* @__PURE__ */ (0, import_jsx_runtime179.jsx)("div", { ...(0, import_runtime101.trussProps)({
|
|
23087
23284
|
...xss,
|
|
23088
23285
|
...{
|
|
23089
23286
|
overflow: "oa",
|
|
@@ -23095,8 +23292,8 @@ function ScrollShadows(props) {
|
|
|
23095
23292
|
}
|
|
23096
23293
|
|
|
23097
23294
|
// src/layouts/SideNavLayout/SideNavLayoutContext.tsx
|
|
23098
|
-
var
|
|
23099
|
-
var
|
|
23295
|
+
var import_react128 = require("react");
|
|
23296
|
+
var import_jsx_runtime180 = require("react/jsx-runtime");
|
|
23100
23297
|
var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
|
|
23101
23298
|
function loadStoredNavState() {
|
|
23102
23299
|
try {
|
|
@@ -23118,20 +23315,20 @@ function resolveInitialNavState(defaultNavState) {
|
|
|
23118
23315
|
}
|
|
23119
23316
|
return loadStoredNavState() ?? defaultNavState ?? "expanded";
|
|
23120
23317
|
}
|
|
23121
|
-
var SideNavLayoutContext = (0,
|
|
23318
|
+
var SideNavLayoutContext = (0, import_react128.createContext)(void 0);
|
|
23122
23319
|
function SideNavLayoutProvider(props) {
|
|
23123
|
-
const [navState, setNavStateInternal] = (0,
|
|
23320
|
+
const [navState, setNavStateInternal] = (0, import_react128.useState)(
|
|
23124
23321
|
() => resolveInitialNavState(props.defaultNavState)
|
|
23125
23322
|
);
|
|
23126
23323
|
const bp = useBreakpoint();
|
|
23127
|
-
const prevMdAndUp = (0,
|
|
23128
|
-
(0,
|
|
23324
|
+
const prevMdAndUp = (0, import_react128.useRef)(bp.mdAndUp);
|
|
23325
|
+
(0, import_react128.useEffect)(() => {
|
|
23129
23326
|
if (prevMdAndUp.current && !bp.mdAndUp) {
|
|
23130
23327
|
setNavStateInternal((prev) => prev === "expanded" ? "collapse" : prev);
|
|
23131
23328
|
}
|
|
23132
23329
|
prevMdAndUp.current = bp.mdAndUp;
|
|
23133
23330
|
}, [bp.mdAndUp]);
|
|
23134
|
-
const setNavState = (0,
|
|
23331
|
+
const setNavState = (0, import_react128.useCallback)((value2) => {
|
|
23135
23332
|
setNavStateInternal((prev) => {
|
|
23136
23333
|
const next = typeof value2 === "function" ? value2(prev) : value2;
|
|
23137
23334
|
if (next === "expanded" || next === "collapse") {
|
|
@@ -23143,20 +23340,20 @@ function SideNavLayoutProvider(props) {
|
|
|
23143
23340
|
return next;
|
|
23144
23341
|
});
|
|
23145
23342
|
}, []);
|
|
23146
|
-
const value = (0,
|
|
23147
|
-
return /* @__PURE__ */ (0,
|
|
23343
|
+
const value = (0, import_react128.useMemo)(() => ({ navState, setNavState }), [navState, setNavState]);
|
|
23344
|
+
return /* @__PURE__ */ (0, import_jsx_runtime180.jsx)(SideNavLayoutContext.Provider, { value, children: props.children });
|
|
23148
23345
|
}
|
|
23149
23346
|
function useSideNavLayoutContext() {
|
|
23150
|
-
return (0,
|
|
23347
|
+
return (0, import_react128.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
|
|
23151
23348
|
} };
|
|
23152
23349
|
}
|
|
23153
23350
|
function useHasSideNavLayoutProvider() {
|
|
23154
|
-
return (0,
|
|
23351
|
+
return (0, import_react128.useContext)(SideNavLayoutContext) !== void 0;
|
|
23155
23352
|
}
|
|
23156
23353
|
|
|
23157
23354
|
// src/components/SideNav/SideNav.tsx
|
|
23158
|
-
var
|
|
23159
|
-
var
|
|
23355
|
+
var import_runtime102 = require("@homebound/truss/runtime");
|
|
23356
|
+
var import_jsx_runtime181 = require("react/jsx-runtime");
|
|
23160
23357
|
function SideNav(props) {
|
|
23161
23358
|
const {
|
|
23162
23359
|
top,
|
|
@@ -23169,8 +23366,8 @@ function SideNav(props) {
|
|
|
23169
23366
|
const tid = useTestIds(props, "sideNav");
|
|
23170
23367
|
const panelCollapsed = navState === "collapse";
|
|
23171
23368
|
const hideOnCollapse = panelCollapsed && !allItemsHaveIcons(items);
|
|
23172
|
-
return /* @__PURE__ */ (0,
|
|
23173
|
-
top !== void 0 && /* @__PURE__ */ (0,
|
|
23369
|
+
return /* @__PURE__ */ (0, import_jsx_runtime181.jsxs)("nav", { className: "df fdc h100 fs0", ...tid, children: [
|
|
23370
|
+
top !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime181.jsx)("div", { ...(0, import_runtime102.trussProps)({
|
|
23174
23371
|
flexShrink: "fs0",
|
|
23175
23372
|
paddingLeft: "pl2",
|
|
23176
23373
|
paddingRight: "pr2",
|
|
@@ -23181,7 +23378,7 @@ function SideNav(props) {
|
|
|
23181
23378
|
paddingBottom: "pb4"
|
|
23182
23379
|
} : {}
|
|
23183
23380
|
}), ...tid.top, children: top }),
|
|
23184
|
-
/* @__PURE__ */ (0,
|
|
23381
|
+
/* @__PURE__ */ (0, import_jsx_runtime181.jsx)("div", { ...(0, import_runtime102.trussProps)({
|
|
23185
23382
|
flexGrow: "fg1",
|
|
23186
23383
|
overflowY: "oya",
|
|
23187
23384
|
display: "df",
|
|
@@ -23193,8 +23390,8 @@ function SideNav(props) {
|
|
|
23193
23390
|
...top === void 0 ? {
|
|
23194
23391
|
paddingTop: "pt5"
|
|
23195
23392
|
} : {}
|
|
23196
|
-
}), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ (0,
|
|
23197
|
-
footer !== void 0 && /* @__PURE__ */ (0,
|
|
23393
|
+
}), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(AppNavItems, { items, panelCollapsed }) }),
|
|
23394
|
+
footer !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime181.jsx)("div", { ...(0, import_runtime102.trussProps)({
|
|
23198
23395
|
flexShrink: "fs0",
|
|
23199
23396
|
paddingLeft: "pl2",
|
|
23200
23397
|
paddingRight: "pr2",
|
|
@@ -23210,10 +23407,10 @@ function SideNav(props) {
|
|
|
23210
23407
|
}
|
|
23211
23408
|
|
|
23212
23409
|
// src/components/Snackbar/useSnackbar.tsx
|
|
23213
|
-
var
|
|
23410
|
+
var import_react129 = require("react");
|
|
23214
23411
|
function useSnackbar() {
|
|
23215
23412
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
23216
|
-
const onClose = (0,
|
|
23413
|
+
const onClose = (0, import_react129.useCallback)(
|
|
23217
23414
|
(noticeId) => {
|
|
23218
23415
|
setNotices((prev) => {
|
|
23219
23416
|
let returnValue = prev;
|
|
@@ -23230,7 +23427,7 @@ function useSnackbar() {
|
|
|
23230
23427
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
23231
23428
|
[]
|
|
23232
23429
|
);
|
|
23233
|
-
const triggerNotice = (0,
|
|
23430
|
+
const triggerNotice = (0, import_react129.useCallback)(
|
|
23234
23431
|
(props) => {
|
|
23235
23432
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
23236
23433
|
let maybeTimeout;
|
|
@@ -23259,8 +23456,8 @@ function useSnackbar() {
|
|
|
23259
23456
|
},
|
|
23260
23457
|
[onClose, setNotices]
|
|
23261
23458
|
);
|
|
23262
|
-
const closeNotice = (0,
|
|
23263
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
23459
|
+
const closeNotice = (0, import_react129.useCallback)((id) => onClose(id), [onClose]);
|
|
23460
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react129.useEffect)(() => {
|
|
23264
23461
|
setOffset({ bottom });
|
|
23265
23462
|
return () => setOffset({});
|
|
23266
23463
|
}, [bottom]);
|
|
@@ -23269,11 +23466,11 @@ function useSnackbar() {
|
|
|
23269
23466
|
var snackbarId = 1;
|
|
23270
23467
|
|
|
23271
23468
|
// src/components/Stepper.tsx
|
|
23272
|
-
var import_react129 = require("react");
|
|
23273
|
-
var import_react_aria55 = require("react-aria");
|
|
23274
|
-
var import_runtime102 = require("@homebound/truss/runtime");
|
|
23275
|
-
var import_jsx_runtime180 = require("react/jsx-runtime");
|
|
23276
23469
|
var import_react130 = require("react");
|
|
23470
|
+
var import_react_aria55 = require("react-aria");
|
|
23471
|
+
var import_runtime103 = require("@homebound/truss/runtime");
|
|
23472
|
+
var import_jsx_runtime182 = require("react/jsx-runtime");
|
|
23473
|
+
var import_react131 = require("react");
|
|
23277
23474
|
var __maybeInc19 = (inc) => {
|
|
23278
23475
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23279
23476
|
};
|
|
@@ -23291,8 +23488,8 @@ function Stepper(props) {
|
|
|
23291
23488
|
const maxStepWidth = 200;
|
|
23292
23489
|
const minStepWidth = 100;
|
|
23293
23490
|
const gap = 8;
|
|
23294
|
-
return /* @__PURE__ */ (0,
|
|
23295
|
-
/* @__PURE__ */ (0,
|
|
23491
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
|
|
23492
|
+
/* @__PURE__ */ (0, import_jsx_runtime182.jsx)("ol", { ...(0, import_runtime103.trussProps)({
|
|
23296
23493
|
padding: "p_0",
|
|
23297
23494
|
margin: "m_0",
|
|
23298
23495
|
listStyle: "lis_none",
|
|
@@ -23302,7 +23499,7 @@ function Stepper(props) {
|
|
|
23302
23499
|
}]
|
|
23303
23500
|
}), children: steps.map((step) => {
|
|
23304
23501
|
const isCurrent = currentStep === step.value;
|
|
23305
|
-
return /* @__PURE__ */ (0,
|
|
23502
|
+
return /* @__PURE__ */ (0, import_react131.createElement)("li", { ...(0, import_runtime103.trussProps)({
|
|
23306
23503
|
display: "df",
|
|
23307
23504
|
flexGrow: "fg1",
|
|
23308
23505
|
flexDirection: "fdc",
|
|
@@ -23312,9 +23509,9 @@ function Stepper(props) {
|
|
|
23312
23509
|
minWidth: ["mw_var", {
|
|
23313
23510
|
"--minWidth": `${minStepWidth}px`
|
|
23314
23511
|
}]
|
|
23315
|
-
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0,
|
|
23512
|
+
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
|
|
23316
23513
|
}) }),
|
|
23317
|
-
/* @__PURE__ */ (0,
|
|
23514
|
+
/* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { ...(0, import_runtime103.trussProps)({
|
|
23318
23515
|
marginTop: "mt1",
|
|
23319
23516
|
backgroundColor: "bgGray300",
|
|
23320
23517
|
height: "h_4px",
|
|
@@ -23325,12 +23522,12 @@ function Stepper(props) {
|
|
|
23325
23522
|
"--minWidth": `${steps.length * minStepWidth + (steps.length - 1) * gap}px`
|
|
23326
23523
|
}],
|
|
23327
23524
|
width: "w100"
|
|
23328
|
-
}), children: /* @__PURE__ */ (0,
|
|
23525
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { ...(0, import_runtime103.trussProps)({
|
|
23329
23526
|
backgroundColor: "bgBlue600",
|
|
23330
23527
|
transition: "transition_width_200ms",
|
|
23331
23528
|
height: "h100",
|
|
23332
23529
|
width: ["w_var", {
|
|
23333
|
-
"--width": (0,
|
|
23530
|
+
"--width": (0, import_runtime103.maybeCssVar)(__maybeInc19(`${(lastCompletedStep + 1) / steps.length * 100}%`))
|
|
23334
23531
|
}]
|
|
23335
23532
|
}) }) })
|
|
23336
23533
|
] });
|
|
@@ -23347,7 +23544,7 @@ function StepButton(props) {
|
|
|
23347
23544
|
onPress: onClick,
|
|
23348
23545
|
isDisabled: disabled
|
|
23349
23546
|
};
|
|
23350
|
-
const ref = (0,
|
|
23547
|
+
const ref = (0, import_react130.useRef)(null);
|
|
23351
23548
|
const {
|
|
23352
23549
|
buttonProps,
|
|
23353
23550
|
isPressed
|
|
@@ -23366,7 +23563,7 @@ function StepButton(props) {
|
|
|
23366
23563
|
boxShadow: "bshFocus"
|
|
23367
23564
|
};
|
|
23368
23565
|
const tid = useTestIds(props, "stepButton");
|
|
23369
|
-
return /* @__PURE__ */ (0,
|
|
23566
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime103.trussProps)({
|
|
23370
23567
|
...{
|
|
23371
23568
|
fontWeight: "fw6",
|
|
23372
23569
|
fontSize: "fz_14px",
|
|
@@ -23418,7 +23615,7 @@ function StepButton(props) {
|
|
|
23418
23615
|
} : {},
|
|
23419
23616
|
...isFocusVisible ? focusRingStyles2 : {}
|
|
23420
23617
|
}), ...tid[defaultTestId(label)], children: [
|
|
23421
|
-
/* @__PURE__ */ (0,
|
|
23618
|
+
/* @__PURE__ */ (0, import_jsx_runtime182.jsx)("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
23422
23619
|
label
|
|
23423
23620
|
] });
|
|
23424
23621
|
}
|
|
@@ -23429,12 +23626,12 @@ function StepIcon({
|
|
|
23429
23626
|
isCurrent = false
|
|
23430
23627
|
}) {
|
|
23431
23628
|
if (state === "error") {
|
|
23432
|
-
return /* @__PURE__ */ (0,
|
|
23629
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(Icon, { icon: "errorCircle" });
|
|
23433
23630
|
}
|
|
23434
23631
|
if (state === "complete") {
|
|
23435
|
-
return /* @__PURE__ */ (0,
|
|
23632
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(Icon, { icon: "check" });
|
|
23436
23633
|
}
|
|
23437
|
-
return /* @__PURE__ */ (0,
|
|
23634
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { ...(0, import_runtime103.trussProps)({
|
|
23438
23635
|
width: "w_10px",
|
|
23439
23636
|
height: "h_10px",
|
|
23440
23637
|
borderStyle: "bss",
|
|
@@ -23449,8 +23646,8 @@ function StepIcon({
|
|
|
23449
23646
|
|
|
23450
23647
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
23451
23648
|
var import_react_dom7 = require("react-dom");
|
|
23452
|
-
var
|
|
23453
|
-
var
|
|
23649
|
+
var import_runtime104 = require("@homebound/truss/runtime");
|
|
23650
|
+
var import_jsx_runtime183 = require("react/jsx-runtime");
|
|
23454
23651
|
function SuperDrawerHeader(props) {
|
|
23455
23652
|
const {
|
|
23456
23653
|
hideControls
|
|
@@ -23467,20 +23664,20 @@ function SuperDrawerHeader(props) {
|
|
|
23467
23664
|
const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
|
|
23468
23665
|
const isDetail = currentContent !== firstContent;
|
|
23469
23666
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
23470
|
-
return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0,
|
|
23471
|
-
isStructuredProps(props) ? /* @__PURE__ */ (0,
|
|
23472
|
-
/* @__PURE__ */ (0,
|
|
23473
|
-
/* @__PURE__ */ (0,
|
|
23667
|
+
return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime183.jsxs)("div", { className: "df aic jcsb gap3", ...tid, children: [
|
|
23668
|
+
isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime183.jsxs)("div", { className: "df jcsb aic gap2 fg1", children: [
|
|
23669
|
+
/* @__PURE__ */ (0, import_jsx_runtime183.jsxs)("div", { className: "fg1 df aic gap2", children: [
|
|
23670
|
+
/* @__PURE__ */ (0, import_jsx_runtime183.jsx)("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
|
|
23474
23671
|
props.left
|
|
23475
23672
|
] }),
|
|
23476
|
-
props.right && /* @__PURE__ */ (0,
|
|
23477
|
-
] }) : /* @__PURE__ */ (0,
|
|
23478
|
-
!hideControls && /* @__PURE__ */ (0,
|
|
23673
|
+
props.right && /* @__PURE__ */ (0, import_jsx_runtime183.jsx)("div", { className: "fs0", children: props.right })
|
|
23674
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime183.jsx)("div", { className: "fg1", children: props.children }),
|
|
23675
|
+
!hideControls && /* @__PURE__ */ (0, import_jsx_runtime183.jsx)("div", { ...(0, import_runtime104.trussProps)({
|
|
23479
23676
|
flexShrink: "fs0",
|
|
23480
23677
|
...isDetail ? {
|
|
23481
23678
|
visibility: "vh"
|
|
23482
23679
|
} : {}
|
|
23483
|
-
}), children: /* @__PURE__ */ (0,
|
|
23680
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(ButtonGroup, { buttons: [{
|
|
23484
23681
|
icon: "chevronLeft",
|
|
23485
23682
|
onClick: () => onPrevClick && onPrevClick(),
|
|
23486
23683
|
disabled: !onPrevClick
|
|
@@ -23496,18 +23693,18 @@ function isStructuredProps(props) {
|
|
|
23496
23693
|
}
|
|
23497
23694
|
|
|
23498
23695
|
// src/components/SuperDrawer/ConfirmCloseModal.tsx
|
|
23499
|
-
var
|
|
23696
|
+
var import_jsx_runtime184 = require("react/jsx-runtime");
|
|
23500
23697
|
function ConfirmCloseModal(props) {
|
|
23501
23698
|
const { onClose, discardText = "Discard Changes", continueText = "Continue Editing" } = props;
|
|
23502
23699
|
const { modalState } = useBeamContext();
|
|
23503
23700
|
function closeModal() {
|
|
23504
23701
|
modalState.current = void 0;
|
|
23505
23702
|
}
|
|
23506
|
-
return /* @__PURE__ */ (0,
|
|
23507
|
-
/* @__PURE__ */ (0,
|
|
23508
|
-
/* @__PURE__ */ (0,
|
|
23509
|
-
/* @__PURE__ */ (0,
|
|
23510
|
-
/* @__PURE__ */ (0,
|
|
23703
|
+
return /* @__PURE__ */ (0, import_jsx_runtime184.jsxs)(import_jsx_runtime184.Fragment, { children: [
|
|
23704
|
+
/* @__PURE__ */ (0, import_jsx_runtime184.jsx)(ModalHeader, { children: "Are you sure you want to cancel?" }),
|
|
23705
|
+
/* @__PURE__ */ (0, import_jsx_runtime184.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime184.jsx)("p", { children: "Any changes you've made so far will be lost." }) }),
|
|
23706
|
+
/* @__PURE__ */ (0, import_jsx_runtime184.jsxs)(ModalFooter, { children: [
|
|
23707
|
+
/* @__PURE__ */ (0, import_jsx_runtime184.jsx)(
|
|
23511
23708
|
Button,
|
|
23512
23709
|
{
|
|
23513
23710
|
variant: "quaternary",
|
|
@@ -23518,7 +23715,7 @@ function ConfirmCloseModal(props) {
|
|
|
23518
23715
|
}
|
|
23519
23716
|
}
|
|
23520
23717
|
),
|
|
23521
|
-
/* @__PURE__ */ (0,
|
|
23718
|
+
/* @__PURE__ */ (0, import_jsx_runtime184.jsx)(Button, { label: continueText, onClick: closeModal })
|
|
23522
23719
|
] })
|
|
23523
23720
|
] });
|
|
23524
23721
|
}
|
|
@@ -23527,8 +23724,8 @@ function ConfirmCloseModal(props) {
|
|
|
23527
23724
|
var import_framer_motion6 = require("framer-motion");
|
|
23528
23725
|
|
|
23529
23726
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
23530
|
-
var
|
|
23531
|
-
var
|
|
23727
|
+
var import_react132 = require("react");
|
|
23728
|
+
var import_jsx_runtime185 = require("react/jsx-runtime");
|
|
23532
23729
|
function useSuperDrawer() {
|
|
23533
23730
|
const {
|
|
23534
23731
|
drawerContentStack: contentStack,
|
|
@@ -23540,7 +23737,7 @@ function useSuperDrawer() {
|
|
|
23540
23737
|
function canCloseDrawerDetails(i, doChange) {
|
|
23541
23738
|
for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
|
|
23542
23739
|
if (!canClose(canCloseDrawerDetail)) {
|
|
23543
|
-
openModal({ content: /* @__PURE__ */ (0,
|
|
23740
|
+
openModal({ content: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
|
|
23544
23741
|
return false;
|
|
23545
23742
|
}
|
|
23546
23743
|
}
|
|
@@ -23560,14 +23757,14 @@ function useSuperDrawer() {
|
|
|
23560
23757
|
for (const canCloseDrawer of canCloseChecks.current) {
|
|
23561
23758
|
if (!canClose(canCloseDrawer)) {
|
|
23562
23759
|
openModal({
|
|
23563
|
-
content: /* @__PURE__ */ (0,
|
|
23760
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
|
|
23564
23761
|
});
|
|
23565
23762
|
return;
|
|
23566
23763
|
}
|
|
23567
23764
|
}
|
|
23568
23765
|
doChange();
|
|
23569
23766
|
}
|
|
23570
|
-
const closeActions = (0,
|
|
23767
|
+
const closeActions = (0, import_react132.useMemo)(
|
|
23571
23768
|
() => {
|
|
23572
23769
|
return {
|
|
23573
23770
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -23602,7 +23799,7 @@ function useSuperDrawer() {
|
|
|
23602
23799
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
23603
23800
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
23604
23801
|
);
|
|
23605
|
-
const actions = (0,
|
|
23802
|
+
const actions = (0, import_react132.useMemo)(
|
|
23606
23803
|
() => {
|
|
23607
23804
|
return {
|
|
23608
23805
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -23655,8 +23852,8 @@ function canClose(canCloseCheck) {
|
|
|
23655
23852
|
}
|
|
23656
23853
|
|
|
23657
23854
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
23658
|
-
var
|
|
23659
|
-
var
|
|
23855
|
+
var import_runtime105 = require("@homebound/truss/runtime");
|
|
23856
|
+
var import_jsx_runtime186 = require("react/jsx-runtime");
|
|
23660
23857
|
var SuperDrawerContent = ({
|
|
23661
23858
|
children,
|
|
23662
23859
|
actions
|
|
@@ -23676,17 +23873,17 @@ var SuperDrawerContent = ({
|
|
|
23676
23873
|
} = firstContent ?? {};
|
|
23677
23874
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
23678
23875
|
if (kind === "open") {
|
|
23679
|
-
return /* @__PURE__ */ (0,
|
|
23876
|
+
return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(import_framer_motion6.motion.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
|
|
23680
23877
|
} else if (kind === "detail") {
|
|
23681
|
-
return /* @__PURE__ */ (0,
|
|
23878
|
+
return /* @__PURE__ */ (0, import_jsx_runtime186.jsxs)(import_framer_motion6.motion.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
|
|
23682
23879
|
overflow: "auto"
|
|
23683
23880
|
}, transition: {
|
|
23684
23881
|
overflow: {
|
|
23685
23882
|
delay: 0.3
|
|
23686
23883
|
}
|
|
23687
23884
|
}, children: [
|
|
23688
|
-
/* @__PURE__ */ (0,
|
|
23689
|
-
/* @__PURE__ */ (0,
|
|
23885
|
+
/* @__PURE__ */ (0, import_jsx_runtime186.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
23886
|
+
/* @__PURE__ */ (0, import_jsx_runtime186.jsx)(import_framer_motion6.motion.div, { initial: {
|
|
23690
23887
|
x: width2,
|
|
23691
23888
|
opacity: 0
|
|
23692
23889
|
}, animate: {
|
|
@@ -23704,7 +23901,7 @@ var SuperDrawerContent = ({
|
|
|
23704
23901
|
}, className: "pt2", children: children2 })
|
|
23705
23902
|
] }, "content");
|
|
23706
23903
|
} else {
|
|
23707
|
-
return /* @__PURE__ */ (0,
|
|
23904
|
+
return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(import_framer_motion6.motion.div, { ...(0, import_runtime105.mergeProps)(void 0, {
|
|
23708
23905
|
overflow: "auto"
|
|
23709
23906
|
}, {
|
|
23710
23907
|
paddingTop: "pt3",
|
|
@@ -23715,9 +23912,9 @@ var SuperDrawerContent = ({
|
|
|
23715
23912
|
}) }, "content");
|
|
23716
23913
|
}
|
|
23717
23914
|
}
|
|
23718
|
-
return /* @__PURE__ */ (0,
|
|
23915
|
+
return /* @__PURE__ */ (0, import_jsx_runtime186.jsxs)(import_jsx_runtime186.Fragment, { children: [
|
|
23719
23916
|
wrapWithMotionAndMaybeBack(children),
|
|
23720
|
-
actions && /* @__PURE__ */ (0,
|
|
23917
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime186.jsx)("footer", { className: "bts_solid btw_1px bcGray200 pt3 pb3 pr3 pl3 df aic jcfe", children: /* @__PURE__ */ (0, import_jsx_runtime186.jsx)("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(Button, { ...buttonProps }, i)) }) })
|
|
23721
23918
|
] });
|
|
23722
23919
|
};
|
|
23723
23920
|
|
|
@@ -23740,23 +23937,23 @@ function visit(rows, fn) {
|
|
|
23740
23937
|
}
|
|
23741
23938
|
|
|
23742
23939
|
// src/components/Toast/useToast.tsx
|
|
23743
|
-
var
|
|
23940
|
+
var import_react133 = require("react");
|
|
23744
23941
|
function useToast() {
|
|
23745
23942
|
const { setNotice, clear } = useToastContext();
|
|
23746
|
-
const showToast = (0,
|
|
23943
|
+
const showToast = (0, import_react133.useCallback)((props) => setNotice(props), [setNotice]);
|
|
23747
23944
|
return { showToast, clear };
|
|
23748
23945
|
}
|
|
23749
23946
|
|
|
23750
23947
|
// src/layouts/SideNavLayout/SideNavLayout.tsx
|
|
23751
|
-
var
|
|
23752
|
-
var
|
|
23948
|
+
var import_runtime106 = require("@homebound/truss/runtime");
|
|
23949
|
+
var import_jsx_runtime187 = require("react/jsx-runtime");
|
|
23753
23950
|
var __maybeInc20 = (inc) => {
|
|
23754
23951
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23755
23952
|
};
|
|
23756
23953
|
function SideNavLayout(props) {
|
|
23757
23954
|
const hasProvider = useHasSideNavLayoutProvider();
|
|
23758
|
-
if (hasProvider) return /* @__PURE__ */ (0,
|
|
23759
|
-
return /* @__PURE__ */ (0,
|
|
23955
|
+
if (hasProvider) return /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(SideNavLayoutContent, { ...props });
|
|
23956
|
+
return /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(SideNavLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(SideNavLayoutContent, { ...props }) });
|
|
23760
23957
|
}
|
|
23761
23958
|
function SideNavLayoutContent(props) {
|
|
23762
23959
|
const {
|
|
@@ -23776,9 +23973,9 @@ function SideNavLayoutContent(props) {
|
|
|
23776
23973
|
const collapsed = navState === "collapse";
|
|
23777
23974
|
const showRail = navState !== "hidden";
|
|
23778
23975
|
const railOffsetPx = !showRail ? 0 : !bp.mdAndUp || collapsed ? railCollapsedWidthPx : railWidthPx;
|
|
23779
|
-
const navTop =
|
|
23780
|
-
const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
23781
|
-
const rail = showRail && /* @__PURE__ */ (0,
|
|
23976
|
+
const navTop = bannerAndNavbarChromeTop();
|
|
23977
|
+
const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamEnvironmentBannerLayoutHeightVar}, 0px) - var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
23978
|
+
const rail = showRail && /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)("div", { ...(0, import_runtime106.trussProps)({
|
|
23782
23979
|
...{
|
|
23783
23980
|
display: "df",
|
|
23784
23981
|
flexDirection: "fdc",
|
|
@@ -23802,14 +23999,14 @@ function SideNavLayoutContent(props) {
|
|
|
23802
23999
|
position: "sticky",
|
|
23803
24000
|
left: "left0",
|
|
23804
24001
|
zIndex: ["z_var", {
|
|
23805
|
-
"--zIndex": (0,
|
|
24002
|
+
"--zIndex": (0, import_runtime106.maybeCssVar)(zIndices.sideNav)
|
|
23806
24003
|
}],
|
|
23807
24004
|
top: ["top_var", {
|
|
23808
|
-
"--top": (0,
|
|
24005
|
+
"--top": (0, import_runtime106.maybeCssVar)(__maybeInc20(navTop))
|
|
23809
24006
|
}],
|
|
23810
24007
|
alignSelf: "asfs",
|
|
23811
24008
|
height: ["h_var", {
|
|
23812
|
-
"--height": (0,
|
|
24009
|
+
"--height": (0, import_runtime106.maybeCssVar)(__maybeInc20(railViewportHeight))
|
|
23813
24010
|
}],
|
|
23814
24011
|
width: ["w_var", {
|
|
23815
24012
|
"--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
|
|
@@ -23819,11 +24016,11 @@ function SideNavLayoutContent(props) {
|
|
|
23819
24016
|
position: "fixed",
|
|
23820
24017
|
left: "left0",
|
|
23821
24018
|
top: ["top_var", {
|
|
23822
|
-
"--top": (0,
|
|
24019
|
+
"--top": (0, import_runtime106.maybeCssVar)(__maybeInc20(navTop))
|
|
23823
24020
|
}],
|
|
23824
24021
|
bottom: "bottom0",
|
|
23825
24022
|
zIndex: ["z_var", {
|
|
23826
|
-
"--zIndex": (0,
|
|
24023
|
+
"--zIndex": (0, import_runtime106.maybeCssVar)(zIndices.sideNav)
|
|
23827
24024
|
}]
|
|
23828
24025
|
},
|
|
23829
24026
|
...collapsed ? {
|
|
@@ -23835,18 +24032,18 @@ function SideNavLayoutContent(props) {
|
|
|
23835
24032
|
}
|
|
23836
24033
|
}
|
|
23837
24034
|
}), ...tid.sideNav, children: [
|
|
23838
|
-
showCollapseToggle && /* @__PURE__ */ (0,
|
|
23839
|
-
/* @__PURE__ */ (0,
|
|
24035
|
+
showCollapseToggle && /* @__PURE__ */ (0, import_jsx_runtime187.jsx)("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
|
|
24036
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(SideNav, { ...sideNav }) })
|
|
23840
24037
|
] });
|
|
23841
|
-
return /* @__PURE__ */ (0,
|
|
24038
|
+
return /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)("div", { ...(0, import_runtime106.mergeProps)(void 0, {
|
|
23842
24039
|
[beamSideNavLayoutWidthVar]: `${railOffsetPx}px`
|
|
23843
24040
|
}, {
|
|
23844
24041
|
display: "df",
|
|
23845
24042
|
flexDirection: "fdr",
|
|
23846
24043
|
width: "w100"
|
|
23847
24044
|
}), ...tid, children: [
|
|
23848
|
-
contrastRail ? /* @__PURE__ */ (0,
|
|
23849
|
-
/* @__PURE__ */ (0,
|
|
24045
|
+
contrastRail ? /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(ContrastScope, { children: rail }) : rail,
|
|
24046
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)("div", { ...(0, import_runtime106.trussProps)({
|
|
23850
24047
|
display: "df",
|
|
23851
24048
|
flexDirection: "fdc",
|
|
23852
24049
|
flexGrow: "fg1",
|
|
@@ -23861,12 +24058,56 @@ function SideNavLayoutContent(props) {
|
|
|
23861
24058
|
] }) });
|
|
23862
24059
|
}
|
|
23863
24060
|
|
|
24061
|
+
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
|
|
24062
|
+
var import_runtime107 = require("@homebound/truss/runtime");
|
|
24063
|
+
var import_jsx_runtime188 = require("react/jsx-runtime");
|
|
24064
|
+
var __maybeInc21 = (inc) => {
|
|
24065
|
+
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
24066
|
+
};
|
|
24067
|
+
function EnvironmentBannerLayout(props) {
|
|
24068
|
+
const {
|
|
24069
|
+
environmentBanner,
|
|
24070
|
+
children
|
|
24071
|
+
} = props;
|
|
24072
|
+
const tid = useTestIds(props, "environmentBannerLayout");
|
|
24073
|
+
const showBanner = environmentBanner != null && shouldShowEnvironmentBanner(environmentBanner.env, environmentBanner.impersonating);
|
|
24074
|
+
const bannerHeightPx = showBanner ? environmentBannerSizePx : 0;
|
|
24075
|
+
const style = {
|
|
24076
|
+
[beamEnvironmentBannerLayoutHeightVar]: `${bannerHeightPx}px`
|
|
24077
|
+
};
|
|
24078
|
+
const innerWidth = `var(${beamLayoutViewportWidthVar}, 100vw)`;
|
|
24079
|
+
return /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("div", { ...(0, import_runtime107.mergeProps)(void 0, style, {
|
|
24080
|
+
display: "df",
|
|
24081
|
+
flexDirection: "fdc",
|
|
24082
|
+
width: "wfc",
|
|
24083
|
+
minWidth: "mw100"
|
|
24084
|
+
}), ...tid, children: [
|
|
24085
|
+
showBanner && environmentBanner && /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { ...(0, import_runtime107.mergeProps)(void 0, {
|
|
24086
|
+
height: environmentBannerSizePx
|
|
24087
|
+
}, {
|
|
24088
|
+
flexShrink: "fs0",
|
|
24089
|
+
width: "w100"
|
|
24090
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { ...(0, import_runtime107.trussProps)({
|
|
24091
|
+
position: "fixed",
|
|
24092
|
+
top: "top0",
|
|
24093
|
+
left: "left0",
|
|
24094
|
+
zIndex: ["z_var", {
|
|
24095
|
+
"--zIndex": (0, import_runtime107.maybeCssVar)(zIndices.environmentBanner)
|
|
24096
|
+
}],
|
|
24097
|
+
width: ["w_var", {
|
|
24098
|
+
"--width": (0, import_runtime107.maybeCssVar)(__maybeInc21(innerWidth))
|
|
24099
|
+
}]
|
|
24100
|
+
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
|
|
24101
|
+
children
|
|
24102
|
+
] }) }) });
|
|
24103
|
+
}
|
|
24104
|
+
|
|
23864
24105
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
23865
|
-
var
|
|
23866
|
-
var
|
|
24106
|
+
var import_react137 = require("react");
|
|
24107
|
+
var import_runtime108 = require("@homebound/truss/runtime");
|
|
23867
24108
|
|
|
23868
24109
|
// src/layouts/useAutoHideOnScroll.ts
|
|
23869
|
-
var
|
|
24110
|
+
var import_react134 = require("react");
|
|
23870
24111
|
var THRESHOLD = 80;
|
|
23871
24112
|
function getInitialAutoHideState() {
|
|
23872
24113
|
if (typeof window === "undefined" || window.scrollY <= 0) {
|
|
@@ -23876,15 +24117,15 @@ function getInitialAutoHideState() {
|
|
|
23876
24117
|
}
|
|
23877
24118
|
function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
23878
24119
|
const initial = getInitialAutoHideState();
|
|
23879
|
-
const [state, setState] = (0,
|
|
23880
|
-
const stateRef = (0,
|
|
23881
|
-
const [atTop, setAtTop] = (0,
|
|
23882
|
-
const atTopRef = (0,
|
|
23883
|
-
const getTopOffsetRef = (0,
|
|
24120
|
+
const [state, setState] = (0, import_react134.useState)(initial.state);
|
|
24121
|
+
const stateRef = (0, import_react134.useRef)(initial.state);
|
|
24122
|
+
const [atTop, setAtTop] = (0, import_react134.useState)(initial.atTop);
|
|
24123
|
+
const atTopRef = (0, import_react134.useRef)(initial.atTop);
|
|
24124
|
+
const getTopOffsetRef = (0, import_react134.useRef)(getTopOffset);
|
|
23884
24125
|
getTopOffsetRef.current = getTopOffset;
|
|
23885
|
-
const lastScrollY = (0,
|
|
23886
|
-
const lastScrollHeight = (0,
|
|
23887
|
-
(0,
|
|
24126
|
+
const lastScrollY = (0, import_react134.useRef)(Number.POSITIVE_INFINITY);
|
|
24127
|
+
const lastScrollHeight = (0, import_react134.useRef)(0);
|
|
24128
|
+
(0, import_react134.useLayoutEffect)(() => {
|
|
23888
24129
|
if (!enabled) {
|
|
23889
24130
|
stateRef.current = "static";
|
|
23890
24131
|
atTopRef.current = true;
|
|
@@ -23956,36 +24197,36 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
23956
24197
|
}
|
|
23957
24198
|
|
|
23958
24199
|
// src/layouts/useMeasuredHeight.ts
|
|
23959
|
-
var
|
|
23960
|
-
var
|
|
24200
|
+
var import_utils154 = require("@react-aria/utils");
|
|
24201
|
+
var import_react135 = require("react");
|
|
23961
24202
|
function useMeasuredHeight(ref, enabled) {
|
|
23962
|
-
const [height, setHeight] = (0,
|
|
23963
|
-
const syncElementHeight = (0,
|
|
24203
|
+
const [height, setHeight] = (0, import_react135.useState)(0);
|
|
24204
|
+
const syncElementHeight = (0, import_react135.useCallback)(() => {
|
|
23964
24205
|
const el = ref.current;
|
|
23965
24206
|
const next = el ? Math.round(el.getBoundingClientRect().height) : 0;
|
|
23966
24207
|
setHeight((prev) => prev === next ? prev : next);
|
|
23967
24208
|
}, [ref]);
|
|
23968
|
-
(0,
|
|
23969
|
-
(0,
|
|
24209
|
+
(0, import_utils154.useResizeObserver)({ ref, onResize: syncElementHeight });
|
|
24210
|
+
(0, import_react135.useLayoutEffect)(() => {
|
|
23970
24211
|
syncElementHeight();
|
|
23971
24212
|
}, [enabled, syncElementHeight]);
|
|
23972
24213
|
return height;
|
|
23973
24214
|
}
|
|
23974
24215
|
|
|
23975
24216
|
// src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
|
|
23976
|
-
var
|
|
23977
|
-
var
|
|
23978
|
-
var NavbarLayoutHeightContext = (0,
|
|
24217
|
+
var import_react136 = require("react");
|
|
24218
|
+
var import_jsx_runtime189 = require("react/jsx-runtime");
|
|
24219
|
+
var NavbarLayoutHeightContext = (0, import_react136.createContext)(0);
|
|
23979
24220
|
function NavbarLayoutHeightProvider({ value, children }) {
|
|
23980
|
-
return /* @__PURE__ */ (0,
|
|
24221
|
+
return /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
|
|
23981
24222
|
}
|
|
23982
24223
|
function useNavbarLayoutHeight() {
|
|
23983
|
-
return (0,
|
|
24224
|
+
return (0, import_react136.useContext)(NavbarLayoutHeightContext);
|
|
23984
24225
|
}
|
|
23985
24226
|
|
|
23986
24227
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
23987
|
-
var
|
|
23988
|
-
var
|
|
24228
|
+
var import_jsx_runtime190 = require("react/jsx-runtime");
|
|
24229
|
+
var __maybeInc22 = (inc) => {
|
|
23989
24230
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23990
24231
|
};
|
|
23991
24232
|
function NavbarLayout(props) {
|
|
@@ -23994,8 +24235,8 @@ function NavbarLayout(props) {
|
|
|
23994
24235
|
children
|
|
23995
24236
|
} = props;
|
|
23996
24237
|
const tid = useTestIds(props, "navbarLayout");
|
|
23997
|
-
const navMetricsRef = (0,
|
|
23998
|
-
const spacerRef = (0,
|
|
24238
|
+
const navMetricsRef = (0, import_react137.useRef)(null);
|
|
24239
|
+
const spacerRef = (0, import_react137.useRef)(null);
|
|
23999
24240
|
const navHeight = useMeasuredHeight(navMetricsRef, true);
|
|
24000
24241
|
const {
|
|
24001
24242
|
state: autoHideState,
|
|
@@ -24013,10 +24254,10 @@ function NavbarLayout(props) {
|
|
|
24013
24254
|
position: "sticky",
|
|
24014
24255
|
left: "left0",
|
|
24015
24256
|
zIndex: ["z_var", {
|
|
24016
|
-
"--zIndex": (0,
|
|
24257
|
+
"--zIndex": (0, import_runtime108.maybeCssVar)(zIndices.navbar)
|
|
24017
24258
|
}],
|
|
24018
24259
|
width: ["w_var", {
|
|
24019
|
-
"--width": (0,
|
|
24260
|
+
"--width": (0, import_runtime108.maybeCssVar)(__maybeInc22(innerWidth))
|
|
24020
24261
|
}]
|
|
24021
24262
|
}
|
|
24022
24263
|
) : (
|
|
@@ -24025,39 +24266,47 @@ function NavbarLayout(props) {
|
|
|
24025
24266
|
position: "fixed",
|
|
24026
24267
|
left: "left0",
|
|
24027
24268
|
zIndex: ["z_var", {
|
|
24028
|
-
"--zIndex": (0,
|
|
24269
|
+
"--zIndex": (0, import_runtime108.maybeCssVar)(zIndices.navbar)
|
|
24029
24270
|
}],
|
|
24030
24271
|
width: ["w_var", {
|
|
24031
|
-
"--width": (0,
|
|
24272
|
+
"--width": (0, import_runtime108.maybeCssVar)(__maybeInc22(innerWidth))
|
|
24032
24273
|
}],
|
|
24033
24274
|
transition: "transitionTop"
|
|
24034
24275
|
}
|
|
24035
24276
|
);
|
|
24277
|
+
const bannerTop = `var(${beamEnvironmentBannerLayoutHeightVar}, 0px)`;
|
|
24036
24278
|
const innerStyle = autoHideState !== "static" ? {
|
|
24037
|
-
top: autoHideState === "revealed" ?
|
|
24279
|
+
top: autoHideState === "revealed" ? bannerTop : `calc(${bannerTop} - ${navHeight}px)`
|
|
24038
24280
|
} : void 0;
|
|
24039
|
-
const navbarEl = (0,
|
|
24040
|
-
return /* @__PURE__ */ (0,
|
|
24281
|
+
const navbarEl = (0, import_react137.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(Navbar, { ...navbar }), [navbar]);
|
|
24282
|
+
return /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ (0, import_jsx_runtime190.jsxs)("div", { ...(0, import_runtime108.mergeProps)(void 0, cssVars, {
|
|
24041
24283
|
display: "df",
|
|
24042
24284
|
flexDirection: "fdc",
|
|
24043
24285
|
width: "wfc",
|
|
24044
24286
|
minWidth: "mw100"
|
|
24045
24287
|
}), ...tid, children: [
|
|
24046
|
-
/* @__PURE__ */ (0,
|
|
24288
|
+
/* @__PURE__ */ (0, import_jsx_runtime190.jsx)("div", { ref: spacerRef, ...(0, import_runtime108.mergeProps)(void 0, {
|
|
24047
24289
|
height: navHeight
|
|
24048
24290
|
}, {
|
|
24049
24291
|
flexShrink: "fs0",
|
|
24050
24292
|
width: "w100"
|
|
24051
|
-
}), children: /* @__PURE__ */ (0,
|
|
24052
|
-
/* @__PURE__ */ (0,
|
|
24293
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime190.jsx)("div", { ref: navMetricsRef, ...(0, import_runtime108.mergeProps)(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
|
|
24294
|
+
/* @__PURE__ */ (0, import_jsx_runtime190.jsx)("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
|
|
24053
24295
|
] }) }) });
|
|
24054
24296
|
}
|
|
24055
24297
|
|
|
24056
24298
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
24057
|
-
var
|
|
24058
|
-
|
|
24059
|
-
|
|
24060
|
-
|
|
24299
|
+
var import_react138 = require("react");
|
|
24300
|
+
|
|
24301
|
+
// src/layouts/useBannerAndNavbarHeight.ts
|
|
24302
|
+
function useBannerAndNavbarHeight() {
|
|
24303
|
+
return useEnvironmentBannerLayoutHeight() + useNavbarLayoutHeight();
|
|
24304
|
+
}
|
|
24305
|
+
|
|
24306
|
+
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
24307
|
+
var import_runtime109 = require("@homebound/truss/runtime");
|
|
24308
|
+
var import_jsx_runtime191 = require("react/jsx-runtime");
|
|
24309
|
+
var __maybeInc23 = (inc) => {
|
|
24061
24310
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
24062
24311
|
};
|
|
24063
24312
|
function PageHeaderLayout(props) {
|
|
@@ -24066,64 +24315,64 @@ function PageHeaderLayout(props) {
|
|
|
24066
24315
|
children
|
|
24067
24316
|
} = props;
|
|
24068
24317
|
const tid = useTestIds(props, "pageHeaderLayout");
|
|
24069
|
-
const
|
|
24070
|
-
const
|
|
24071
|
-
|
|
24072
|
-
const
|
|
24073
|
-
const headerMetricsRef = (0,
|
|
24074
|
-
const spacerRef = (0,
|
|
24318
|
+
const bannerAndNavbarHeight = useBannerAndNavbarHeight();
|
|
24319
|
+
const bannerAndNavbarHeightRef = (0, import_react138.useRef)(bannerAndNavbarHeight);
|
|
24320
|
+
bannerAndNavbarHeightRef.current = bannerAndNavbarHeight;
|
|
24321
|
+
const getBannerAndNavbarHeight = (0, import_react138.useCallback)(() => bannerAndNavbarHeightRef.current, []);
|
|
24322
|
+
const headerMetricsRef = (0, import_react138.useRef)(null);
|
|
24323
|
+
const spacerRef = (0, import_react138.useRef)(null);
|
|
24075
24324
|
const headerHeight = useMeasuredHeight(headerMetricsRef, true);
|
|
24076
24325
|
const {
|
|
24077
24326
|
state: autoHideState,
|
|
24078
24327
|
atTop
|
|
24079
|
-
} = useAutoHideOnScroll(spacerRef, true,
|
|
24328
|
+
} = useAutoHideOnScroll(spacerRef, true, getBannerAndNavbarHeight);
|
|
24080
24329
|
const headerOccupiesPosition = autoHideState === "revealed" || atTop;
|
|
24081
24330
|
const cssVars = headerHeight > 0 && headerOccupiesPosition ? {
|
|
24082
24331
|
[beamPageHeaderLayoutHeightVar]: `${headerHeight}px`
|
|
24083
24332
|
} : void 0;
|
|
24084
24333
|
const headerLeft = documentScrollChromeLeft();
|
|
24085
24334
|
const headerWidth = documentScrollChromeWidth();
|
|
24086
|
-
const outerTop =
|
|
24335
|
+
const outerTop = bannerAndNavbarChromeTop();
|
|
24087
24336
|
const innerCss = autoHideState === "static" ? {
|
|
24088
24337
|
position: "sticky",
|
|
24089
24338
|
left: ["left_var", {
|
|
24090
|
-
"--left": (0,
|
|
24339
|
+
"--left": (0, import_runtime109.maybeCssVar)(__maybeInc23(headerLeft))
|
|
24091
24340
|
}],
|
|
24092
24341
|
width: ["w_var", {
|
|
24093
|
-
"--width": (0,
|
|
24342
|
+
"--width": (0, import_runtime109.maybeCssVar)(__maybeInc23(headerWidth))
|
|
24094
24343
|
}],
|
|
24095
24344
|
zIndex: ["z_var", {
|
|
24096
|
-
"--zIndex": (0,
|
|
24345
|
+
"--zIndex": (0, import_runtime109.maybeCssVar)(zIndices.pageStickyHeader)
|
|
24097
24346
|
}]
|
|
24098
24347
|
} : {
|
|
24099
24348
|
position: "fixed",
|
|
24100
24349
|
left: ["left_var", {
|
|
24101
|
-
"--left": (0,
|
|
24350
|
+
"--left": (0, import_runtime109.maybeCssVar)(__maybeInc23(headerLeft))
|
|
24102
24351
|
}],
|
|
24103
24352
|
width: ["w_var", {
|
|
24104
|
-
"--width": (0,
|
|
24353
|
+
"--width": (0, import_runtime109.maybeCssVar)(__maybeInc23(headerWidth))
|
|
24105
24354
|
}],
|
|
24106
24355
|
zIndex: ["z_var", {
|
|
24107
|
-
"--zIndex": (0,
|
|
24356
|
+
"--zIndex": (0, import_runtime109.maybeCssVar)(zIndices.pageStickyHeader)
|
|
24108
24357
|
}],
|
|
24109
24358
|
transition: "transitionTop"
|
|
24110
24359
|
};
|
|
24111
24360
|
const innerStyle = autoHideState !== "static" ? {
|
|
24112
24361
|
top: autoHideState === "revealed" ? outerTop : `calc(${outerTop} - ${headerHeight}px)`
|
|
24113
24362
|
} : void 0;
|
|
24114
|
-
const pageHeaderEl = (0,
|
|
24115
|
-
return /* @__PURE__ */ (0,
|
|
24363
|
+
const pageHeaderEl = (0, import_react138.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(PageHeader2, { ...pageHeader }), [pageHeader]);
|
|
24364
|
+
return /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime191.jsxs)("div", { ...(0, import_runtime109.mergeProps)(void 0, cssVars, {
|
|
24116
24365
|
display: "df",
|
|
24117
24366
|
flexDirection: "fdc",
|
|
24118
24367
|
width: "w100"
|
|
24119
24368
|
}), ...tid, children: [
|
|
24120
|
-
/* @__PURE__ */ (0,
|
|
24369
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { ref: spacerRef, ...(0, import_runtime109.mergeProps)(void 0, {
|
|
24121
24370
|
height: headerHeight
|
|
24122
24371
|
}, {
|
|
24123
24372
|
flexShrink: "fs0",
|
|
24124
24373
|
width: "w100"
|
|
24125
|
-
}), children: /* @__PURE__ */ (0,
|
|
24126
|
-
/* @__PURE__ */ (0,
|
|
24374
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime109.mergeProps)(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
|
|
24375
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
|
|
24127
24376
|
] }) });
|
|
24128
24377
|
}
|
|
24129
24378
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -24190,6 +24439,8 @@ function PageHeaderLayout(props) {
|
|
|
24190
24439
|
DnDGridItemHandle,
|
|
24191
24440
|
EXPANDABLE_HEADER,
|
|
24192
24441
|
EditColumnsButton,
|
|
24442
|
+
EnvironmentBanner,
|
|
24443
|
+
EnvironmentBannerLayout,
|
|
24193
24444
|
ErrorMessage,
|
|
24194
24445
|
FieldGroup,
|
|
24195
24446
|
FilterDropdownMenu,
|
|
@@ -24288,6 +24539,8 @@ function PageHeaderLayout(props) {
|
|
|
24288
24539
|
actionColumn,
|
|
24289
24540
|
applyRowFn,
|
|
24290
24541
|
assignDefaultColumnIds,
|
|
24542
|
+
bannerAndNavbarChromeTop,
|
|
24543
|
+
beamEnvironmentBannerLayoutHeightVar,
|
|
24291
24544
|
beamLayoutViewportHeightVar,
|
|
24292
24545
|
beamLayoutViewportWidthVar,
|
|
24293
24546
|
beamNavbarLayoutHeightVar,
|
|
@@ -24338,6 +24591,7 @@ function PageHeaderLayout(props) {
|
|
|
24338
24591
|
dragHandleColumn,
|
|
24339
24592
|
emptyCell,
|
|
24340
24593
|
ensureClientSideSortValueIsSortable,
|
|
24594
|
+
environmentBannerSizePx,
|
|
24341
24595
|
filterTestIdPrefix,
|
|
24342
24596
|
formatDate,
|
|
24343
24597
|
formatDateRange,
|
|
@@ -24399,8 +24653,10 @@ function PageHeaderLayout(props) {
|
|
|
24399
24653
|
selectColumn,
|
|
24400
24654
|
selectedStyles,
|
|
24401
24655
|
setDefaultStyle,
|
|
24656
|
+
setEnvironmentFavicon,
|
|
24402
24657
|
setGridTableDefaults,
|
|
24403
24658
|
setRunningInJest,
|
|
24659
|
+
shouldShowEnvironmentBanner,
|
|
24404
24660
|
shouldSkipScrollTo,
|
|
24405
24661
|
simpleDataRows,
|
|
24406
24662
|
simpleHeader,
|