@homebound/beam 3.47.3 → 3.48.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/index.cjs +499 -432
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -1
- package/dist/index.d.ts +11 -1
- package/dist/index.js +336 -270
- package/dist/index.js.map +1 -1
- package/dist/truss.css +2 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -64,6 +64,7 @@ __export(index_exports, {
|
|
|
64
64
|
BoundTextField: () => BoundTextField,
|
|
65
65
|
BoundToggleChipGroupField: () => BoundToggleChipGroupField,
|
|
66
66
|
BoundTreeSelectField: () => BoundTreeSelectField,
|
|
67
|
+
Breadcrumbs: () => Breadcrumbs,
|
|
67
68
|
Breakpoints: () => Breakpoints,
|
|
68
69
|
Button: () => Button,
|
|
69
70
|
ButtonDatePicker: () => ButtonDatePicker,
|
|
@@ -22132,15 +22133,63 @@ function useBeamContext() {
|
|
|
22132
22133
|
return (0, import_react117.useContext)(BeamContext);
|
|
22133
22134
|
}
|
|
22134
22135
|
|
|
22135
|
-
// src/components/
|
|
22136
|
+
// src/components/Breadcrumbs.tsx
|
|
22136
22137
|
var import_react118 = require("react");
|
|
22138
|
+
var import_react_router_dom6 = require("react-router-dom");
|
|
22139
|
+
var import_runtime91 = require("@homebound/truss/runtime");
|
|
22140
|
+
var import_jsx_runtime167 = (
|
|
22141
|
+
// Index is added to the key to prevent rendering issues when multiple items have the same label
|
|
22142
|
+
require("react/jsx-runtime")
|
|
22143
|
+
);
|
|
22144
|
+
function Breadcrumbs({
|
|
22145
|
+
breadcrumbs
|
|
22146
|
+
}) {
|
|
22147
|
+
const tid = useTestIds({}, "breadcrumb");
|
|
22148
|
+
const items = Array.isArray(breadcrumbs) ? breadcrumbs : [breadcrumbs];
|
|
22149
|
+
const [collapsed, setCollapsed] = (0, import_react118.useState)(true);
|
|
22150
|
+
const {
|
|
22151
|
+
sm
|
|
22152
|
+
} = useBreakpoint();
|
|
22153
|
+
const leadCount = sm ? 1 : 2;
|
|
22154
|
+
const shouldCollapse = collapsed && items.length >= leadCount + 2;
|
|
22155
|
+
function renderBreadcrumb(bc, index, isLast) {
|
|
22156
|
+
return /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(import_react118.Fragment, { children: [
|
|
22157
|
+
index > 0 && /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
|
|
22158
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)(import_react_router_dom6.Link, { ...tid.link, to: bc.href, title: bc.label, ...(0, import_runtime91.trussProps)({
|
|
22159
|
+
...{
|
|
22160
|
+
fontWeight: "fw4",
|
|
22161
|
+
fontSize: "fz_12px",
|
|
22162
|
+
lineHeight: "lh_16px",
|
|
22163
|
+
color: "gray900 h_gray600"
|
|
22164
|
+
},
|
|
22165
|
+
...{
|
|
22166
|
+
...!!isLast ? {
|
|
22167
|
+
whiteSpace: "wsnw",
|
|
22168
|
+
overflow: "oh",
|
|
22169
|
+
textOverflow: "to_ellipsis",
|
|
22170
|
+
minWidth: "mw0"
|
|
22171
|
+
} : {}
|
|
22172
|
+
}
|
|
22173
|
+
}), children: bc.label })
|
|
22174
|
+
] }, `${bc.label}-${index}`);
|
|
22175
|
+
}
|
|
22176
|
+
return /* @__PURE__ */ (0, import_jsx_runtime167.jsx)("div", { className: "df aic gap_4px", children: shouldCollapse ? /* @__PURE__ */ (0, import_jsx_runtime167.jsxs)(import_jsx_runtime167.Fragment, { children: [
|
|
22177
|
+
items.slice(0, leadCount).map((bc, i) => renderBreadcrumb(bc, i)),
|
|
22178
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)("span", { className: "fs0 fw4 fz_12px lh_16px", children: "/" }),
|
|
22179
|
+
/* @__PURE__ */ (0, import_jsx_runtime167.jsx)("button", { ...tid.expand, className: "fw4 fz_12px lh_16px gray900 h_gray600", onClick: () => setCollapsed(false), children: "..." }),
|
|
22180
|
+
renderBreadcrumb(items[items.length - 1], items.length - 1, true)
|
|
22181
|
+
] }) : items.map((bc, i) => renderBreadcrumb(bc, i, i === items.length - 1)) });
|
|
22182
|
+
}
|
|
22183
|
+
|
|
22184
|
+
// src/components/ButtonDatePicker.tsx
|
|
22185
|
+
var import_react119 = require("react");
|
|
22137
22186
|
var import_react_aria54 = require("react-aria");
|
|
22138
22187
|
var import_react_stately19 = require("react-stately");
|
|
22139
|
-
var
|
|
22188
|
+
var import_jsx_runtime168 = require("react/jsx-runtime");
|
|
22140
22189
|
function ButtonDatePicker(props) {
|
|
22141
22190
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
22142
22191
|
const state = (0, import_react_stately19.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
22143
|
-
const buttonRef = (0,
|
|
22192
|
+
const buttonRef = (0, import_react119.useRef)(null);
|
|
22144
22193
|
const {
|
|
22145
22194
|
menuTriggerProps,
|
|
22146
22195
|
menuProps: { autoFocus: _af, ...menuProps }
|
|
@@ -22149,7 +22198,7 @@ function ButtonDatePicker(props) {
|
|
|
22149
22198
|
props,
|
|
22150
22199
|
isTextButton(trigger) ? defaultTestId(labelOr(trigger, "buttonDatePicker")) : isNavLinkButton(trigger) ? defaultTestId(trigger.navLabel) : isIconButton(trigger) ? trigger.icon : trigger.name
|
|
22151
22200
|
);
|
|
22152
|
-
return /* @__PURE__ */ (0,
|
|
22201
|
+
return /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(OverlayTrigger, { ...props, menuTriggerProps, state, buttonRef, ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(DatePickerOverlay, { overlayProps: menuProps, children: /* @__PURE__ */ (0, import_jsx_runtime168.jsx)(
|
|
22153
22202
|
DatePicker,
|
|
22154
22203
|
{
|
|
22155
22204
|
...datePickerProps,
|
|
@@ -22163,10 +22212,10 @@ function ButtonDatePicker(props) {
|
|
|
22163
22212
|
}
|
|
22164
22213
|
|
|
22165
22214
|
// src/components/ButtonGroup.tsx
|
|
22166
|
-
var
|
|
22215
|
+
var import_react120 = require("react");
|
|
22167
22216
|
var import_react_aria55 = require("react-aria");
|
|
22168
|
-
var
|
|
22169
|
-
var
|
|
22217
|
+
var import_runtime92 = require("@homebound/truss/runtime");
|
|
22218
|
+
var import_jsx_runtime169 = (
|
|
22170
22219
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
22171
22220
|
require("react/jsx-runtime")
|
|
22172
22221
|
);
|
|
@@ -22179,7 +22228,7 @@ function ButtonGroup(props) {
|
|
|
22179
22228
|
const tid = useTestIds(props, "buttonGroup");
|
|
22180
22229
|
return (
|
|
22181
22230
|
// Adding `line-height: 0` prevent inheriting line-heights that might throw off sizing within the button group.
|
|
22182
|
-
/* @__PURE__ */ (0,
|
|
22231
|
+
/* @__PURE__ */ (0, import_jsx_runtime169.jsx)("div", { ...tid, ...(0, import_runtime92.trussProps)({
|
|
22183
22232
|
...{
|
|
22184
22233
|
display: "df",
|
|
22185
22234
|
lineHeight: "lh_0"
|
|
@@ -22188,7 +22237,7 @@ function ButtonGroup(props) {
|
|
|
22188
22237
|
}), children: buttons.map(({
|
|
22189
22238
|
disabled: buttonDisabled,
|
|
22190
22239
|
...buttonProps
|
|
22191
|
-
}, i) => /* @__PURE__ */ (0,
|
|
22240
|
+
}, i) => /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(GroupButton, { ...buttonProps, disabled: disabled || buttonDisabled, size, isFirst: i === 0, isLast: i === buttons.length - 1, ...tid }, i)) })
|
|
22192
22241
|
);
|
|
22193
22242
|
}
|
|
22194
22243
|
function GroupButton(props) {
|
|
@@ -22211,7 +22260,7 @@ function GroupButton(props) {
|
|
|
22211
22260
|
isDisabled: !!disabled,
|
|
22212
22261
|
...otherProps
|
|
22213
22262
|
};
|
|
22214
|
-
const ref = (0,
|
|
22263
|
+
const ref = (0, import_react120.useRef)(null);
|
|
22215
22264
|
const {
|
|
22216
22265
|
buttonProps,
|
|
22217
22266
|
isPressed
|
|
@@ -22225,10 +22274,10 @@ function GroupButton(props) {
|
|
|
22225
22274
|
isHovered
|
|
22226
22275
|
} = (0, import_react_aria55.useHover)(ariaProps);
|
|
22227
22276
|
const tid = useTestIds(props);
|
|
22228
|
-
return /* @__PURE__ */ (0,
|
|
22277
|
+
return /* @__PURE__ */ (0, import_jsx_runtime169.jsx)("span", { ...(0, import_runtime92.trussProps)(getButtonStyles2(isFirst, isLast)), children: maybeTooltip({
|
|
22229
22278
|
title: resolveTooltip(disabled, tooltip),
|
|
22230
22279
|
placement: "top",
|
|
22231
|
-
children: /* @__PURE__ */ (0,
|
|
22280
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime169.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime92.trussProps)({
|
|
22232
22281
|
...{
|
|
22233
22282
|
fontWeight: "fw6",
|
|
22234
22283
|
fontSize: "fz_14px",
|
|
@@ -22251,7 +22300,7 @@ function GroupButton(props) {
|
|
|
22251
22300
|
...isPressed ? pressedStyles : isHovered ? hoverStyles3 : {},
|
|
22252
22301
|
...icon ? iconStyles2[size] : {}
|
|
22253
22302
|
}), ...tid[defaultTestId(typeof text === "string" && text || icon || "button")], children: [
|
|
22254
|
-
icon && /* @__PURE__ */ (0,
|
|
22303
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime169.jsx)(Icon, { xss: {
|
|
22255
22304
|
...!!text ? {
|
|
22256
22305
|
marginRight: "mr_4px"
|
|
22257
22306
|
} : {}
|
|
@@ -22329,14 +22378,14 @@ var iconStyles2 = {
|
|
|
22329
22378
|
};
|
|
22330
22379
|
|
|
22331
22380
|
// src/components/Card.tsx
|
|
22332
|
-
var
|
|
22381
|
+
var import_react122 = require("react");
|
|
22333
22382
|
var import_react_aria56 = require("react-aria");
|
|
22334
22383
|
|
|
22335
22384
|
// src/components/Tag.tsx
|
|
22336
|
-
var
|
|
22337
|
-
var
|
|
22338
|
-
var
|
|
22339
|
-
var
|
|
22385
|
+
var import_utils140 = require("@react-aria/utils");
|
|
22386
|
+
var import_react121 = require("react");
|
|
22387
|
+
var import_runtime93 = require("@homebound/truss/runtime");
|
|
22388
|
+
var import_jsx_runtime170 = require("react/jsx-runtime");
|
|
22340
22389
|
function Tag(props) {
|
|
22341
22390
|
const {
|
|
22342
22391
|
text,
|
|
@@ -22356,9 +22405,9 @@ function Tag(props) {
|
|
|
22356
22405
|
padding
|
|
22357
22406
|
} = getVariantStyles(variant, type);
|
|
22358
22407
|
const tid = useTestIds(otherProps);
|
|
22359
|
-
const [showTooltip, setShowTooltip] = (0,
|
|
22360
|
-
const ref = (0,
|
|
22361
|
-
(0,
|
|
22408
|
+
const [showTooltip, setShowTooltip] = (0, import_react121.useState)(false);
|
|
22409
|
+
const ref = (0, import_react121.useRef)(null);
|
|
22410
|
+
(0, import_utils140.useResizeObserver)({
|
|
22362
22411
|
ref,
|
|
22363
22412
|
onResize: () => {
|
|
22364
22413
|
if (!isIconOnly && ref.current) {
|
|
@@ -22369,7 +22418,7 @@ function Tag(props) {
|
|
|
22369
22418
|
const tooltipTitle = !preventTooltip ? isIconOnly ? text : showTooltip ? text : void 0 : void 0;
|
|
22370
22419
|
return maybeTooltip({
|
|
22371
22420
|
title: tooltipTitle,
|
|
22372
|
-
children: /* @__PURE__ */ (0,
|
|
22421
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime170.jsxs)("span", { ...tid, ...(0, import_runtime93.trussProps)({
|
|
22373
22422
|
...{
|
|
22374
22423
|
position: "relative",
|
|
22375
22424
|
display: "dif",
|
|
@@ -22388,8 +22437,8 @@ function Tag(props) {
|
|
|
22388
22437
|
...background,
|
|
22389
22438
|
...xss
|
|
22390
22439
|
}), children: [
|
|
22391
|
-
icon && /* @__PURE__ */ (0,
|
|
22392
|
-
isIconOnly ? /* @__PURE__ */ (0,
|
|
22440
|
+
icon && /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("span", { className: "fs0", children: /* @__PURE__ */ (0, import_jsx_runtime170.jsx)(Icon, { icon, inc: 1.75, color: iconColor }) }),
|
|
22441
|
+
isIconOnly ? /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("span", { className: "absolute oh cli_inset_50 clp_none bd_0 h_1px m_neg1px w_1px p_0 wsnw o0", children: text }) : /* @__PURE__ */ (0, import_jsx_runtime170.jsx)("span", { ref, className: "oh d_negwebkit_box wbo_vertical to_ellipsis wlc_1 wbba", children: text })
|
|
22393
22442
|
] })
|
|
22394
22443
|
});
|
|
22395
22444
|
}
|
|
@@ -22476,8 +22525,8 @@ function getPrimaryStyles(type) {
|
|
|
22476
22525
|
}
|
|
22477
22526
|
|
|
22478
22527
|
// src/components/Card.tsx
|
|
22479
|
-
var
|
|
22480
|
-
var
|
|
22528
|
+
var import_runtime94 = require("@homebound/truss/runtime");
|
|
22529
|
+
var import_jsx_runtime171 = require("react/jsx-runtime");
|
|
22481
22530
|
function Card(props) {
|
|
22482
22531
|
const {
|
|
22483
22532
|
title,
|
|
@@ -22500,15 +22549,15 @@ function Card(props) {
|
|
|
22500
22549
|
});
|
|
22501
22550
|
const isList = type === "list";
|
|
22502
22551
|
const imgHeight = isList ? 96 : bordered ? 224 : 256;
|
|
22503
|
-
const styles = (0,
|
|
22552
|
+
const styles = (0, import_react122.useMemo)(() => ({
|
|
22504
22553
|
...baseStyles3(type),
|
|
22505
22554
|
...isList && listStyles,
|
|
22506
22555
|
...bordered && borderedStyles,
|
|
22507
22556
|
...isHovered && cardHoverStyles,
|
|
22508
22557
|
...isDisabled && disabledStyles2
|
|
22509
22558
|
}), [isDisabled, isHovered, bordered, type, isList]);
|
|
22510
|
-
return /* @__PURE__ */ (0,
|
|
22511
|
-
/* @__PURE__ */ (0,
|
|
22559
|
+
return /* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { ...(0, import_runtime94.trussProps)(styles), ...hoverProps, ...tid, children: [
|
|
22560
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime94.trussProps)({
|
|
22512
22561
|
...{
|
|
22513
22562
|
height: ["h_var", {
|
|
22514
22563
|
"--height": `${imgHeight}px`
|
|
@@ -22525,14 +22574,14 @@ function Card(props) {
|
|
|
22525
22574
|
filter: "filter_brightness_1"
|
|
22526
22575
|
},
|
|
22527
22576
|
...isHovered && !isList && imageHoverStyles
|
|
22528
|
-
}), children: /* @__PURE__ */ (0,
|
|
22577
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("img", { ...(0, import_runtime94.trussProps)({
|
|
22529
22578
|
width: "w100",
|
|
22530
22579
|
height: "h100",
|
|
22531
22580
|
objectFit: ["objectFit_var", {
|
|
22532
|
-
"--objectFit": (0,
|
|
22581
|
+
"--objectFit": (0, import_runtime94.maybeCssVar)(imageFit)
|
|
22533
22582
|
}]
|
|
22534
22583
|
}), src: imgSrc, alt: title, ...tid.img }) }),
|
|
22535
|
-
isHovered && buttonMenuItems && /* @__PURE__ */ (0,
|
|
22584
|
+
isHovered && buttonMenuItems && /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime94.trussProps)({
|
|
22536
22585
|
position: "absolute",
|
|
22537
22586
|
right: "right1",
|
|
22538
22587
|
top: "top1",
|
|
@@ -22540,15 +22589,15 @@ function Card(props) {
|
|
|
22540
22589
|
right: "right3",
|
|
22541
22590
|
top: "top3"
|
|
22542
22591
|
} : {}
|
|
22543
|
-
}), children: /* @__PURE__ */ (0,
|
|
22592
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(ButtonMenu, { trigger: {
|
|
22544
22593
|
icon: "verticalDots",
|
|
22545
22594
|
color: isList ? "rgba(100, 100, 100, 1)" /* Gray700 */ : "rgba(255, 255, 255, 1)" /* White */
|
|
22546
22595
|
}, items: buttonMenuItems }) }),
|
|
22547
|
-
tag && /* @__PURE__ */ (0,
|
|
22548
|
-
/* @__PURE__ */ (0,
|
|
22549
|
-
/* @__PURE__ */ (0,
|
|
22550
|
-
/* @__PURE__ */ (0,
|
|
22551
|
-
/* @__PURE__ */ (0,
|
|
22596
|
+
tag && /* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { className: "absolute left1 top_4px", children: /* @__PURE__ */ (0, import_jsx_runtime171.jsx)(Tag, { type: tag?.type, text: tag?.text, ...tid.tag }) }),
|
|
22597
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { className: "df fdc aifs gap1", children: [
|
|
22598
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsxs)("div", { children: [
|
|
22599
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { className: "fw6 fz_12px lh_16px gray700", ...tid.subtitle, children: subtitle }),
|
|
22600
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...(0, import_runtime94.trussProps)({
|
|
22552
22601
|
fontWeight: "fw6",
|
|
22553
22602
|
fontSize: "fz_14px",
|
|
22554
22603
|
lineHeight: "lh_20px",
|
|
@@ -22558,7 +22607,7 @@ function Card(props) {
|
|
|
22558
22607
|
} : {}
|
|
22559
22608
|
}), ...tid.title, children: title })
|
|
22560
22609
|
] }),
|
|
22561
|
-
/* @__PURE__ */ (0,
|
|
22610
|
+
/* @__PURE__ */ (0, import_jsx_runtime171.jsx)("div", { ...tid.details, children: detailContent })
|
|
22562
22611
|
] })
|
|
22563
22612
|
] });
|
|
22564
22613
|
}
|
|
@@ -22606,10 +22655,10 @@ var imageHoverStyles = {
|
|
|
22606
22655
|
};
|
|
22607
22656
|
|
|
22608
22657
|
// src/components/Copy.tsx
|
|
22609
|
-
var
|
|
22610
|
-
var
|
|
22658
|
+
var import_runtime95 = require("@homebound/truss/runtime");
|
|
22659
|
+
var import_jsx_runtime172 = require("react/jsx-runtime");
|
|
22611
22660
|
function Copy(props) {
|
|
22612
|
-
return /* @__PURE__ */ (0,
|
|
22661
|
+
return /* @__PURE__ */ (0, import_jsx_runtime172.jsx)("div", { ...(0, import_runtime95.mergeProps)("beam-copy", void 0, {
|
|
22613
22662
|
...{
|
|
22614
22663
|
fontWeight: "fw4",
|
|
22615
22664
|
fontSize: "fz_14px",
|
|
@@ -22624,22 +22673,22 @@ function Copy(props) {
|
|
|
22624
22673
|
|
|
22625
22674
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
22626
22675
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
22627
|
-
var
|
|
22676
|
+
var import_react124 = require("react");
|
|
22628
22677
|
|
|
22629
22678
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
22630
|
-
var
|
|
22631
|
-
var DnDGridContext = (0,
|
|
22679
|
+
var import_react123 = require("react");
|
|
22680
|
+
var DnDGridContext = (0, import_react123.createContext)({
|
|
22632
22681
|
dragEl: { current: void 0 },
|
|
22633
22682
|
onDragHandleKeyDown: () => {
|
|
22634
22683
|
}
|
|
22635
22684
|
});
|
|
22636
22685
|
function useDnDGridContext() {
|
|
22637
|
-
return (0,
|
|
22686
|
+
return (0, import_react123.useContext)(DnDGridContext);
|
|
22638
22687
|
}
|
|
22639
22688
|
|
|
22640
22689
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
22641
|
-
var
|
|
22642
|
-
var
|
|
22690
|
+
var import_runtime96 = require("@homebound/truss/runtime");
|
|
22691
|
+
var import_jsx_runtime173 = require("react/jsx-runtime");
|
|
22643
22692
|
function DnDGrid(props) {
|
|
22644
22693
|
const {
|
|
22645
22694
|
children,
|
|
@@ -22647,12 +22696,12 @@ function DnDGrid(props) {
|
|
|
22647
22696
|
onReorder,
|
|
22648
22697
|
activeItemStyles
|
|
22649
22698
|
} = props;
|
|
22650
|
-
const gridEl = (0,
|
|
22651
|
-
const dragEl = (0,
|
|
22652
|
-
const cloneEl = (0,
|
|
22653
|
-
const initialOrder = (0,
|
|
22654
|
-
const reorderViaKeyboard = (0,
|
|
22655
|
-
const transformFrom = (0,
|
|
22699
|
+
const gridEl = (0, import_react124.useRef)(null);
|
|
22700
|
+
const dragEl = (0, import_react124.useRef)();
|
|
22701
|
+
const cloneEl = (0, import_react124.useRef)();
|
|
22702
|
+
const initialOrder = (0, import_react124.useRef)();
|
|
22703
|
+
const reorderViaKeyboard = (0, import_react124.useRef)(false);
|
|
22704
|
+
const transformFrom = (0, import_react124.useRef)({
|
|
22656
22705
|
x: 0,
|
|
22657
22706
|
y: 0
|
|
22658
22707
|
});
|
|
@@ -22660,19 +22709,19 @@ function DnDGrid(props) {
|
|
|
22660
22709
|
const activeStyles3 = activeItemStyles ?? {
|
|
22661
22710
|
boxShadow: "bshModal"
|
|
22662
22711
|
};
|
|
22663
|
-
const getGridItems = (0,
|
|
22712
|
+
const getGridItems = (0, import_react124.useCallback)(() => {
|
|
22664
22713
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
22665
22714
|
}, []);
|
|
22666
|
-
const getGridItemIdOrder = (0,
|
|
22715
|
+
const getGridItemIdOrder = (0, import_react124.useCallback)(() => {
|
|
22667
22716
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
22668
22717
|
}, [getGridItems]);
|
|
22669
|
-
const initReorder = (0,
|
|
22718
|
+
const initReorder = (0, import_react124.useCallback)(() => {
|
|
22670
22719
|
if (gridEl.current && dragEl.current) {
|
|
22671
22720
|
initialOrder.current = getGridItemIdOrder();
|
|
22672
22721
|
setInlineStyles(dragEl.current, activeStyles3);
|
|
22673
22722
|
}
|
|
22674
22723
|
}, [getGridItemIdOrder, activeStyles3]);
|
|
22675
|
-
const commitReorder = (0,
|
|
22724
|
+
const commitReorder = (0, import_react124.useCallback)(() => {
|
|
22676
22725
|
if (gridEl.current && dragEl.current) {
|
|
22677
22726
|
const currentOrder = getGridItemIdOrder();
|
|
22678
22727
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -22682,7 +22731,7 @@ function DnDGrid(props) {
|
|
|
22682
22731
|
initialOrder.current = currentOrder;
|
|
22683
22732
|
}
|
|
22684
22733
|
}, [onReorder, getGridItemIdOrder, activeStyles3]);
|
|
22685
|
-
const cancelReorder = (0,
|
|
22734
|
+
const cancelReorder = (0, import_react124.useCallback)(() => {
|
|
22686
22735
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
22687
22736
|
const currentOrder = getGridItemIdOrder();
|
|
22688
22737
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -22704,7 +22753,7 @@ function DnDGrid(props) {
|
|
|
22704
22753
|
reorderViaKeyboard.current = false;
|
|
22705
22754
|
}
|
|
22706
22755
|
}, [getGridItemIdOrder, getGridItems, activeStyles3]);
|
|
22707
|
-
const onMove = (0,
|
|
22756
|
+
const onMove = (0, import_react124.useCallback)((e) => {
|
|
22708
22757
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
22709
22758
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
22710
22759
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -22727,7 +22776,7 @@ function DnDGrid(props) {
|
|
|
22727
22776
|
}
|
|
22728
22777
|
}
|
|
22729
22778
|
}, []);
|
|
22730
|
-
const onDragStart = (0,
|
|
22779
|
+
const onDragStart = (0, import_react124.useCallback)((e) => {
|
|
22731
22780
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
22732
22781
|
initReorder();
|
|
22733
22782
|
const rect = dragEl.current.getBoundingClientRect();
|
|
@@ -22757,7 +22806,7 @@ function DnDGrid(props) {
|
|
|
22757
22806
|
gridEl.current.addEventListener("touchmove", onMove);
|
|
22758
22807
|
}
|
|
22759
22808
|
}, [initReorder, onMove, activeStyles3]);
|
|
22760
|
-
const onDragEnd = (0,
|
|
22809
|
+
const onDragEnd = (0, import_react124.useCallback)((e) => {
|
|
22761
22810
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
22762
22811
|
e.preventDefault();
|
|
22763
22812
|
cloneEl.current.replaceWith(dragEl.current);
|
|
@@ -22770,7 +22819,7 @@ function DnDGrid(props) {
|
|
|
22770
22819
|
gridEl.current.removeEventListener("touchmove", onMove);
|
|
22771
22820
|
}
|
|
22772
22821
|
}, [commitReorder, onMove]);
|
|
22773
|
-
const onDragHandleKeyDown = (0,
|
|
22822
|
+
const onDragHandleKeyDown = (0, import_react124.useCallback)((e) => {
|
|
22774
22823
|
const moveHandle = e.target;
|
|
22775
22824
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
22776
22825
|
const isSpaceKey = e.key === " ";
|
|
@@ -22818,10 +22867,10 @@ function DnDGrid(props) {
|
|
|
22818
22867
|
}
|
|
22819
22868
|
}
|
|
22820
22869
|
}, [cancelReorder, commitReorder, initReorder, getGridItems]);
|
|
22821
|
-
return /* @__PURE__ */ (0,
|
|
22870
|
+
return /* @__PURE__ */ (0, import_jsx_runtime173.jsx)(DnDGridContext.Provider, { value: {
|
|
22822
22871
|
dragEl,
|
|
22823
22872
|
onDragHandleKeyDown
|
|
22824
|
-
}, children: /* @__PURE__ */ (0,
|
|
22873
|
+
}, children: /* @__PURE__ */ (0, import_jsx_runtime173.jsx)("div", { ref: gridEl, ...(0, import_runtime96.trussProps)({
|
|
22825
22874
|
...{
|
|
22826
22875
|
containerType: "ctis",
|
|
22827
22876
|
display: "dg"
|
|
@@ -22834,8 +22883,8 @@ var gridCloneKey = "dndgrid-clone";
|
|
|
22834
22883
|
|
|
22835
22884
|
// src/components/DnDGrid/DnDGridItemHandle.tsx
|
|
22836
22885
|
var import_react_aria57 = require("react-aria");
|
|
22837
|
-
var
|
|
22838
|
-
var
|
|
22886
|
+
var import_runtime97 = require("@homebound/truss/runtime");
|
|
22887
|
+
var import_jsx_runtime174 = require("react/jsx-runtime");
|
|
22839
22888
|
function DnDGridItemHandle(props) {
|
|
22840
22889
|
const {
|
|
22841
22890
|
dragHandleProps,
|
|
@@ -22864,7 +22913,7 @@ function DnDGridItemHandle(props) {
|
|
|
22864
22913
|
borderRadius: "br4",
|
|
22865
22914
|
borderWidth: "bw1"
|
|
22866
22915
|
};
|
|
22867
|
-
return /* @__PURE__ */ (0,
|
|
22916
|
+
return /* @__PURE__ */ (0, import_jsx_runtime174.jsx)("button", { ...(0, import_runtime97.trussProps)({
|
|
22868
22917
|
...compact ? iconButtonCompact : iconButtonNormal,
|
|
22869
22918
|
...{
|
|
22870
22919
|
cursor: "cursor_grab",
|
|
@@ -22883,15 +22932,15 @@ function DnDGridItemHandle(props) {
|
|
|
22883
22932
|
...isHovered && {
|
|
22884
22933
|
backgroundColor: "bgGray200"
|
|
22885
22934
|
}
|
|
22886
|
-
}), ...(0, import_react_aria57.mergeProps)(dragHandleProps, focusProps, hoverProps), ...tid, children: /* @__PURE__ */ (0,
|
|
22935
|
+
}), ...(0, import_react_aria57.mergeProps)(dragHandleProps, focusProps, hoverProps), ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime174.jsx)(Icon, { icon, inc: compact ? 2 : void 0, color }) });
|
|
22887
22936
|
}
|
|
22888
22937
|
|
|
22889
22938
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
22890
|
-
var
|
|
22939
|
+
var import_react125 = require("react");
|
|
22891
22940
|
function useDnDGridItem(props) {
|
|
22892
22941
|
const { id, itemRef } = props;
|
|
22893
22942
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
22894
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
22943
|
+
const { dragItemProps, dragHandleProps } = (0, import_react125.useMemo)(
|
|
22895
22944
|
() => {
|
|
22896
22945
|
function initDraggable() {
|
|
22897
22946
|
if (itemRef.current) {
|
|
@@ -22918,8 +22967,8 @@ function useDnDGridItem(props) {
|
|
|
22918
22967
|
}
|
|
22919
22968
|
|
|
22920
22969
|
// src/components/EnvironmentBanner/EnvironmentBanner.tsx
|
|
22921
|
-
var
|
|
22922
|
-
var
|
|
22970
|
+
var import_runtime98 = require("@homebound/truss/runtime");
|
|
22971
|
+
var import_jsx_runtime175 = require("react/jsx-runtime");
|
|
22923
22972
|
function EnvironmentBanner(props) {
|
|
22924
22973
|
const {
|
|
22925
22974
|
env,
|
|
@@ -22938,14 +22987,14 @@ function EnvironmentBanner(props) {
|
|
|
22938
22987
|
tooltip
|
|
22939
22988
|
} = getEnvironmentBannerConfig(env, impersonating, showProdWarning);
|
|
22940
22989
|
const bgColorVar = maybeCssVar(bgColor);
|
|
22941
|
-
return /* @__PURE__ */ (0,
|
|
22990
|
+
return /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("div", { ...(0, import_runtime98.trussProps)({
|
|
22942
22991
|
flexShrink: "fs0",
|
|
22943
22992
|
position: "relative",
|
|
22944
22993
|
zIndex: ["z_var", {
|
|
22945
|
-
"--zIndex": (0,
|
|
22994
|
+
"--zIndex": (0, import_runtime98.maybeCssVar)(zIndices.environmentBanner)
|
|
22946
22995
|
}],
|
|
22947
22996
|
backgroundColor: ["bgColor_var", {
|
|
22948
|
-
"--backgroundColor": (0,
|
|
22997
|
+
"--backgroundColor": (0, import_runtime98.maybeCssVar)(bgColorVar)
|
|
22949
22998
|
}],
|
|
22950
22999
|
height: ["h_var", {
|
|
22951
23000
|
"--height": `${environmentBannerSizePx}px`
|
|
@@ -22954,12 +23003,12 @@ function EnvironmentBanner(props) {
|
|
|
22954
23003
|
}), role: "banner", ...tid, children: [
|
|
22955
23004
|
getInvertedCorner("left", bgColorVar),
|
|
22956
23005
|
getInvertedCorner("right", bgColorVar),
|
|
22957
|
-
/* @__PURE__ */ (0,
|
|
22958
|
-
/* @__PURE__ */ (0,
|
|
22959
|
-
/* @__PURE__ */ (0,
|
|
23006
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("div", { className: "relative z2 df aic jcsb h100 pl1 mdandup_pl5 pr1 mdandup_pr5", ...tid.content, children: [
|
|
23007
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("span", { className: "df aic gap2 fg1 mh0 oh", ...tid.left, children: [
|
|
23008
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)(Tag, { text: badgeLabel, xss: {
|
|
22960
23009
|
backgroundColor: "bgColor_FFFFFF90"
|
|
22961
23010
|
}, ...tid.badge }),
|
|
22962
|
-
/* @__PURE__ */ (0,
|
|
23011
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("span", { ...(0, import_runtime98.trussProps)({
|
|
22963
23012
|
...{
|
|
22964
23013
|
alignItems: "aic",
|
|
22965
23014
|
gap: "gap1",
|
|
@@ -22975,15 +23024,15 @@ function EnvironmentBanner(props) {
|
|
|
22975
23024
|
}
|
|
22976
23025
|
}), ...tid.message, children: [
|
|
22977
23026
|
message,
|
|
22978
|
-
/* @__PURE__ */ (0,
|
|
23027
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)("span", { className: "fs0", ...tid.info, children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(Icon, { icon: "infoCircle", tooltip, inc: 2, color: "rgba(255, 255, 255, 1)" /* White */ }) })
|
|
22979
23028
|
] })
|
|
22980
23029
|
] }),
|
|
22981
|
-
impersonating != null && /* @__PURE__ */ (0,
|
|
22982
|
-
(env !== "prod" || showProdWarning) && /* @__PURE__ */ (0,
|
|
22983
|
-
/* @__PURE__ */ (0,
|
|
23030
|
+
impersonating != null && /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("span", { className: "df aic gap2 fw6 fz_12px lh_16px white fs0", ...tid.impersonating, children: [
|
|
23031
|
+
(env !== "prod" || showProdWarning) && /* @__PURE__ */ (0, import_jsx_runtime175.jsxs)("span", { children: [
|
|
23032
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)("span", { className: "dn mdandup_dib", children: "Impersonating \xA0" }),
|
|
22984
23033
|
impersonating.name
|
|
22985
23034
|
] }),
|
|
22986
|
-
/* @__PURE__ */ (0,
|
|
23035
|
+
/* @__PURE__ */ (0, import_jsx_runtime175.jsx)("span", { className: "df fs0", ...tid.impersonatingIcon, children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)(Icon, { icon: "impersonate", inc: 2, color: "rgba(255, 255, 255, 1)" /* White */ }) })
|
|
22987
23036
|
] })
|
|
22988
23037
|
] })
|
|
22989
23038
|
] });
|
|
@@ -23056,16 +23105,16 @@ function getInvertedCorner(side, bgColorVar) {
|
|
|
23056
23105
|
right: "right0"
|
|
23057
23106
|
};
|
|
23058
23107
|
const shadowXOffset = side === "left" ? -invertedCornerRadiusPx : invertedCornerRadiusPx;
|
|
23059
|
-
return /* @__PURE__ */ (0,
|
|
23108
|
+
return /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { "aria-hidden": true, ...(0, import_runtime98.trussProps)({
|
|
23060
23109
|
...shell,
|
|
23061
23110
|
...outerPosition
|
|
23062
|
-
}), children: /* @__PURE__ */ (0,
|
|
23111
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime175.jsx)("div", { ...(0, import_runtime98.trussProps)({
|
|
23063
23112
|
height: "h_200",
|
|
23064
23113
|
width: "w_200",
|
|
23065
23114
|
position: "absolute",
|
|
23066
23115
|
borderRadius: "borderRadius_50",
|
|
23067
23116
|
boxShadow: ["boxShadow_var", {
|
|
23068
|
-
"--boxShadow": (0,
|
|
23117
|
+
"--boxShadow": (0, import_runtime98.maybeCssVar)(`${shadowXOffset}px -${invertedCornerRadiusPx}px 0 0 ${bgColorVar}`)
|
|
23069
23118
|
}],
|
|
23070
23119
|
...side === "right" ? {
|
|
23071
23120
|
right: "right0"
|
|
@@ -23090,16 +23139,16 @@ function setEnvironmentFavicon(env, favicons) {
|
|
|
23090
23139
|
}
|
|
23091
23140
|
|
|
23092
23141
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
23093
|
-
var
|
|
23142
|
+
var import_react127 = require("react");
|
|
23094
23143
|
|
|
23095
23144
|
// src/components/Grid/utils.ts
|
|
23096
|
-
var
|
|
23145
|
+
var import_react126 = require("react");
|
|
23097
23146
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
23098
|
-
var ResponsiveGridContext = (0,
|
|
23147
|
+
var ResponsiveGridContext = (0, import_react126.createContext)(void 0);
|
|
23099
23148
|
|
|
23100
23149
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
23101
|
-
var
|
|
23102
|
-
var
|
|
23150
|
+
var import_runtime99 = require("@homebound/truss/runtime");
|
|
23151
|
+
var import_jsx_runtime176 = require("react/jsx-runtime");
|
|
23103
23152
|
function ResponsiveGrid(props) {
|
|
23104
23153
|
const {
|
|
23105
23154
|
children,
|
|
@@ -23114,18 +23163,18 @@ function ResponsiveGrid(props) {
|
|
|
23114
23163
|
gap,
|
|
23115
23164
|
columns
|
|
23116
23165
|
});
|
|
23117
|
-
const config = (0,
|
|
23166
|
+
const config = (0, import_react127.useMemo)(() => ({
|
|
23118
23167
|
minColumnWidth,
|
|
23119
23168
|
gap,
|
|
23120
23169
|
columns
|
|
23121
23170
|
}), [minColumnWidth, gap, columns]);
|
|
23122
|
-
return /* @__PURE__ */ (0,
|
|
23171
|
+
return /* @__PURE__ */ (0, import_jsx_runtime176.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime176.jsx)("div", { ...(0, import_runtime99.trussProps)(gridStyles), children }) });
|
|
23123
23172
|
}
|
|
23124
23173
|
|
|
23125
23174
|
// src/components/Grid/ResponsiveGridItem.tsx
|
|
23126
23175
|
var import_react_aria58 = require("react-aria");
|
|
23127
|
-
var
|
|
23128
|
-
var
|
|
23176
|
+
var import_runtime100 = require("@homebound/truss/runtime");
|
|
23177
|
+
var import_jsx_runtime177 = require("react/jsx-runtime");
|
|
23129
23178
|
function ResponsiveGridItem(props) {
|
|
23130
23179
|
const {
|
|
23131
23180
|
colSpan,
|
|
@@ -23137,12 +23186,12 @@ function ResponsiveGridItem(props) {
|
|
|
23137
23186
|
} = useResponsiveGridItem({
|
|
23138
23187
|
colSpan
|
|
23139
23188
|
});
|
|
23140
|
-
return /* @__PURE__ */ (0,
|
|
23189
|
+
return /* @__PURE__ */ (0, import_jsx_runtime177.jsx)("div", { ...(0, import_react_aria58.mergeProps)(gridItemProps, (0, import_runtime100.trussProps)(gridItemStyles)), children });
|
|
23141
23190
|
}
|
|
23142
23191
|
|
|
23143
23192
|
// src/components/Grid/useResponsiveGrid.ts
|
|
23144
|
-
var
|
|
23145
|
-
var
|
|
23193
|
+
var import_react128 = require("react");
|
|
23194
|
+
var import_runtime101 = require("@homebound/truss/runtime");
|
|
23146
23195
|
var __maybeInc17 = (inc) => {
|
|
23147
23196
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23148
23197
|
};
|
|
@@ -23152,7 +23201,7 @@ function useResponsiveGrid(props) {
|
|
|
23152
23201
|
gap,
|
|
23153
23202
|
columns
|
|
23154
23203
|
} = props;
|
|
23155
|
-
const gridStyles = (0,
|
|
23204
|
+
const gridStyles = (0, import_react128.useMemo)(() => {
|
|
23156
23205
|
const gapCount = columns - 1;
|
|
23157
23206
|
const totalGapWidth = gap * gapCount;
|
|
23158
23207
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -23161,11 +23210,11 @@ function useResponsiveGrid(props) {
|
|
|
23161
23210
|
return {
|
|
23162
23211
|
display: "dg",
|
|
23163
23212
|
gridTemplateColumns: ["gtc_var", {
|
|
23164
|
-
"--gridTemplateColumns": (0,
|
|
23213
|
+
"--gridTemplateColumns": (0, import_runtime101.maybeCssVar)(gridTemplateColumns)
|
|
23165
23214
|
}],
|
|
23166
23215
|
containerType: "ctis",
|
|
23167
23216
|
gap: ["gap_var", {
|
|
23168
|
-
"--gap": (0,
|
|
23217
|
+
"--gap": (0, import_runtime101.maybeCssVar)(__maybeInc17(gridGap))
|
|
23169
23218
|
}]
|
|
23170
23219
|
};
|
|
23171
23220
|
}, [minColumnWidth, gap, columns]);
|
|
@@ -23175,14 +23224,14 @@ function useResponsiveGrid(props) {
|
|
|
23175
23224
|
}
|
|
23176
23225
|
|
|
23177
23226
|
// src/components/Grid/useResponsiveGridItem.ts
|
|
23178
|
-
var
|
|
23227
|
+
var import_react129 = require("react");
|
|
23179
23228
|
var injectedResponsiveGridClasses = /* @__PURE__ */ new Set();
|
|
23180
23229
|
var responsiveGridStyleEl;
|
|
23181
23230
|
function useResponsiveGridItem(props) {
|
|
23182
23231
|
const { colSpan = 1, gridConfig } = props;
|
|
23183
|
-
const contextConfig = (0,
|
|
23232
|
+
const contextConfig = (0, import_react129.useContext)(ResponsiveGridContext);
|
|
23184
23233
|
const config = gridConfig ?? contextConfig;
|
|
23185
|
-
const { className, cssText } = (0,
|
|
23234
|
+
const { className, cssText } = (0, import_react129.useMemo)(() => {
|
|
23186
23235
|
if (!config || colSpan <= 1) return { className: "", cssText: "" };
|
|
23187
23236
|
const { minColumnWidth, gap } = config;
|
|
23188
23237
|
const className2 = responsiveGridItemClassName(config, colSpan);
|
|
@@ -23205,7 +23254,7 @@ function useResponsiveGridItem(props) {
|
|
|
23205
23254
|
};
|
|
23206
23255
|
}
|
|
23207
23256
|
function useResponsiveGridItemStyle(className, cssText) {
|
|
23208
|
-
(0,
|
|
23257
|
+
(0, import_react129.useEffect)(
|
|
23209
23258
|
function() {
|
|
23210
23259
|
if (!className || !cssText || typeof document === "undefined") return;
|
|
23211
23260
|
if (!responsiveGridStyleEl) {
|
|
@@ -23227,29 +23276,29 @@ function responsiveGridItemClassName(config, colSpan) {
|
|
|
23227
23276
|
}
|
|
23228
23277
|
|
|
23229
23278
|
// src/components/HbLoadingSpinner.tsx
|
|
23230
|
-
var
|
|
23279
|
+
var import_react130 = __toESM(require("react"), 1);
|
|
23231
23280
|
|
|
23232
23281
|
// src/components/HbLoadingSpinner.base64.ts
|
|
23233
23282
|
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";
|
|
23234
23283
|
|
|
23235
23284
|
// src/components/HbLoadingSpinner.tsx
|
|
23236
|
-
var
|
|
23285
|
+
var import_jsx_runtime178 = require("react/jsx-runtime");
|
|
23237
23286
|
function HbLoadingSpinner({
|
|
23238
23287
|
noQuips,
|
|
23239
23288
|
extraQuips = [],
|
|
23240
23289
|
extraQuipsOnly,
|
|
23241
23290
|
iconOnly
|
|
23242
23291
|
}) {
|
|
23243
|
-
const ctx = (0,
|
|
23292
|
+
const ctx = (0, import_react130.useContext)(HbLoadingSpinnerContext);
|
|
23244
23293
|
const tid = useTestIds({}, "hbSpinner");
|
|
23245
|
-
const quip = (0,
|
|
23294
|
+
const quip = (0, import_react130.useMemo)(() => {
|
|
23246
23295
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
23247
23296
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
23248
23297
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
23249
23298
|
return allQuips[Math.floor(Math.random() * allQuips.length)];
|
|
23250
23299
|
}, [ctx.noQuips, ctx.quips, extraQuips, extraQuipsOnly, noQuips]);
|
|
23251
|
-
return /* @__PURE__ */ (0,
|
|
23252
|
-
/* @__PURE__ */ (0,
|
|
23300
|
+
return /* @__PURE__ */ (0, import_jsx_runtime178.jsxs)("div", { className: "df fdc jcc aic", ...tid, children: [
|
|
23301
|
+
/* @__PURE__ */ (0, import_jsx_runtime178.jsx)(
|
|
23253
23302
|
"img",
|
|
23254
23303
|
{
|
|
23255
23304
|
src: HbLoadingSpinner_base64_default,
|
|
@@ -23259,7 +23308,7 @@ function HbLoadingSpinner({
|
|
|
23259
23308
|
...tid.gif
|
|
23260
23309
|
}
|
|
23261
23310
|
),
|
|
23262
|
-
!iconOnly && /* @__PURE__ */ (0,
|
|
23311
|
+
!iconOnly && /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(
|
|
23263
23312
|
"div",
|
|
23264
23313
|
{
|
|
23265
23314
|
"data-chromatic": "ignore",
|
|
@@ -23272,7 +23321,7 @@ function HbLoadingSpinner({
|
|
|
23272
23321
|
var dotDotDot = (str) => str.concat("...");
|
|
23273
23322
|
var HB_QUIPS_MISSION = ["Loading", "One Team", "On a Mission", "Executing Relentlessly", "Building Better", "In Service of Our Customers"].map(dotDotDot);
|
|
23274
23323
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
23275
|
-
var HbLoadingSpinnerContext =
|
|
23324
|
+
var HbLoadingSpinnerContext = import_react130.default.createContext({
|
|
23276
23325
|
quips: ["Loading..."],
|
|
23277
23326
|
noQuips: false
|
|
23278
23327
|
});
|
|
@@ -23280,16 +23329,16 @@ function HbSpinnerProvider({
|
|
|
23280
23329
|
quips = [],
|
|
23281
23330
|
children
|
|
23282
23331
|
}) {
|
|
23283
|
-
const state = (0,
|
|
23332
|
+
const state = (0, import_react130.useMemo)(() => ({
|
|
23284
23333
|
quips,
|
|
23285
23334
|
noQuips: quips.length === 0
|
|
23286
23335
|
}), [quips]);
|
|
23287
|
-
return /* @__PURE__ */ (0,
|
|
23336
|
+
return /* @__PURE__ */ (0, import_jsx_runtime178.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
23288
23337
|
}
|
|
23289
23338
|
|
|
23290
23339
|
// src/components/HomeboundLogo.tsx
|
|
23291
|
-
var
|
|
23292
|
-
var
|
|
23340
|
+
var import_runtime102 = require("@homebound/truss/runtime");
|
|
23341
|
+
var import_jsx_runtime179 = require("react/jsx-runtime");
|
|
23293
23342
|
var __maybeInc18 = (inc) => {
|
|
23294
23343
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23295
23344
|
};
|
|
@@ -23299,51 +23348,51 @@ function HomeboundLogo(props) {
|
|
|
23299
23348
|
width: width2 = "auto",
|
|
23300
23349
|
height = "auto"
|
|
23301
23350
|
} = props;
|
|
23302
|
-
return /* @__PURE__ */ (0,
|
|
23351
|
+
return /* @__PURE__ */ (0, import_jsx_runtime179.jsx)("svg", { viewBox: "0 0 158.1 97.6", xmlns: "http://www.w3.org/2000/svg", ...(0, import_runtime102.trussProps)({
|
|
23303
23352
|
fill: ["fill_var", {
|
|
23304
|
-
"--fill": (0,
|
|
23353
|
+
"--fill": (0, import_runtime102.maybeCssVar)(fill)
|
|
23305
23354
|
}],
|
|
23306
23355
|
width: ["w_var", {
|
|
23307
|
-
"--width": (0,
|
|
23356
|
+
"--width": (0, import_runtime102.maybeCssVar)(__maybeInc18(width2))
|
|
23308
23357
|
}],
|
|
23309
23358
|
height: ["h_var", {
|
|
23310
|
-
"--height": (0,
|
|
23359
|
+
"--height": (0, import_runtime102.maybeCssVar)(__maybeInc18(height))
|
|
23311
23360
|
}]
|
|
23312
|
-
}), children: /* @__PURE__ */ (0,
|
|
23361
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime179.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" }) });
|
|
23313
23362
|
}
|
|
23314
23363
|
|
|
23315
23364
|
// src/components/MaxLines.tsx
|
|
23316
|
-
var
|
|
23317
|
-
var
|
|
23318
|
-
var
|
|
23319
|
-
var
|
|
23365
|
+
var import_utils149 = require("@react-aria/utils");
|
|
23366
|
+
var import_react131 = require("react");
|
|
23367
|
+
var import_runtime103 = require("@homebound/truss/runtime");
|
|
23368
|
+
var import_jsx_runtime180 = require("react/jsx-runtime");
|
|
23320
23369
|
function MaxLines({
|
|
23321
23370
|
maxLines,
|
|
23322
23371
|
children
|
|
23323
23372
|
}) {
|
|
23324
|
-
const elRef = (0,
|
|
23325
|
-
const [hasMore, setHasMore] = (0,
|
|
23326
|
-
const [expanded, setExpanded] = (0,
|
|
23327
|
-
(0,
|
|
23373
|
+
const elRef = (0, import_react131.useRef)(null);
|
|
23374
|
+
const [hasMore, setHasMore] = (0, import_react131.useState)(false);
|
|
23375
|
+
const [expanded, setExpanded] = (0, import_react131.useState)(false);
|
|
23376
|
+
(0, import_utils149.useLayoutEffect)(() => {
|
|
23328
23377
|
if (!elRef.current) return;
|
|
23329
23378
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
23330
23379
|
}, []);
|
|
23331
|
-
(0,
|
|
23380
|
+
(0, import_react131.useEffect)(() => {
|
|
23332
23381
|
setExpanded(false);
|
|
23333
23382
|
}, [children]);
|
|
23334
|
-
const onResize = (0,
|
|
23383
|
+
const onResize = (0, import_react131.useCallback)(() => {
|
|
23335
23384
|
if (!elRef.current) return;
|
|
23336
23385
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
23337
23386
|
}, [expanded]);
|
|
23338
|
-
(0,
|
|
23387
|
+
(0, import_utils149.useResizeObserver)({
|
|
23339
23388
|
ref: elRef,
|
|
23340
23389
|
onResize
|
|
23341
23390
|
});
|
|
23342
|
-
return /* @__PURE__ */ (0,
|
|
23343
|
-
/* @__PURE__ */ (0,
|
|
23391
|
+
return /* @__PURE__ */ (0, import_jsx_runtime180.jsxs)("div", { children: [
|
|
23392
|
+
/* @__PURE__ */ (0, import_jsx_runtime180.jsx)("div", { ref: elRef, ...(0, import_runtime103.trussProps)({
|
|
23344
23393
|
...!expanded ? {
|
|
23345
23394
|
WebkitLineClamp: ["lineClamp_var", {
|
|
23346
|
-
"--WebkitLineClamp": (0,
|
|
23395
|
+
"--WebkitLineClamp": (0, import_runtime103.maybeCssVar)(maxLines)
|
|
23347
23396
|
}],
|
|
23348
23397
|
overflow: "oh",
|
|
23349
23398
|
display: "d_negwebkit_box",
|
|
@@ -23351,7 +23400,7 @@ function MaxLines({
|
|
|
23351
23400
|
textOverflow: "to_ellipsis"
|
|
23352
23401
|
} : {}
|
|
23353
23402
|
}), children }),
|
|
23354
|
-
hasMore && /* @__PURE__ */ (0,
|
|
23403
|
+
hasMore && /* @__PURE__ */ (0, import_jsx_runtime180.jsx)("button", { className: "db fw4 fz_14px lh_20px", onClick: () => setExpanded((prev) => !prev), children: expanded ? "Show Less" : "Show More" })
|
|
23355
23404
|
] });
|
|
23356
23405
|
}
|
|
23357
23406
|
|
|
@@ -23359,15 +23408,15 @@ function MaxLines({
|
|
|
23359
23408
|
var import_change_case8 = require("change-case");
|
|
23360
23409
|
|
|
23361
23410
|
// src/components/AppNav/AppNavGroup.tsx
|
|
23362
|
-
var
|
|
23411
|
+
var import_utils151 = require("@react-aria/utils");
|
|
23363
23412
|
var import_change_case7 = require("change-case");
|
|
23364
|
-
var
|
|
23413
|
+
var import_react134 = require("react");
|
|
23365
23414
|
|
|
23366
23415
|
// src/components/AppNav/AppNavGroupTrigger.tsx
|
|
23367
|
-
var
|
|
23416
|
+
var import_react132 = require("react");
|
|
23368
23417
|
var import_react_aria59 = require("react-aria");
|
|
23369
|
-
var
|
|
23370
|
-
var
|
|
23418
|
+
var import_runtime104 = require("@homebound/truss/runtime");
|
|
23419
|
+
var import_jsx_runtime181 = require("react/jsx-runtime");
|
|
23371
23420
|
function AppNavGroupTrigger(props) {
|
|
23372
23421
|
const {
|
|
23373
23422
|
label,
|
|
@@ -23377,7 +23426,7 @@ function AppNavGroupTrigger(props) {
|
|
|
23377
23426
|
active = false
|
|
23378
23427
|
} = props;
|
|
23379
23428
|
const tid = useTestIds(props, "trigger");
|
|
23380
|
-
const ref = (0,
|
|
23429
|
+
const ref = (0, import_react132.useRef)(null);
|
|
23381
23430
|
const {
|
|
23382
23431
|
buttonProps,
|
|
23383
23432
|
isPressed
|
|
@@ -23398,12 +23447,12 @@ function AppNavGroupTrigger(props) {
|
|
|
23398
23447
|
focusRingStyles: focusRingStyles2,
|
|
23399
23448
|
hoverStyles: hoverStyles4,
|
|
23400
23449
|
pressedStyles: pressedStyles2
|
|
23401
|
-
} = (0,
|
|
23402
|
-
return /* @__PURE__ */ (0,
|
|
23450
|
+
} = (0, import_react132.useMemo)(() => getNavLinkStyles("side"), []);
|
|
23451
|
+
return /* @__PURE__ */ (0, import_jsx_runtime181.jsxs)("button", { type: "button", ...(0, import_react_aria59.mergeProps)(buttonProps, focusProps, hoverProps, tid.trigger, {
|
|
23403
23452
|
ref,
|
|
23404
23453
|
"aria-expanded": expanded,
|
|
23405
23454
|
"aria-controls": navGroupId,
|
|
23406
|
-
...(0,
|
|
23455
|
+
...(0, import_runtime104.mergeProps)(navLink, void 0, {
|
|
23407
23456
|
...baseStyles4,
|
|
23408
23457
|
...isFocusVisible && focusRingStyles2,
|
|
23409
23458
|
...isHovered && hoverStyles4,
|
|
@@ -23417,7 +23466,7 @@ function AppNavGroupTrigger(props) {
|
|
|
23417
23466
|
})
|
|
23418
23467
|
}), children: [
|
|
23419
23468
|
label,
|
|
23420
|
-
/* @__PURE__ */ (0,
|
|
23469
|
+
/* @__PURE__ */ (0, import_jsx_runtime181.jsx)("div", { ...(0, import_runtime104.trussProps)({
|
|
23421
23470
|
...{
|
|
23422
23471
|
display: "df",
|
|
23423
23472
|
alignItems: "aic",
|
|
@@ -23427,7 +23476,7 @@ function AppNavGroupTrigger(props) {
|
|
|
23427
23476
|
...props.expanded ? {
|
|
23428
23477
|
transform: "transform_rotate_180deg"
|
|
23429
23478
|
} : {}
|
|
23430
|
-
}), children: /* @__PURE__ */ (0,
|
|
23479
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime181.jsx)(Icon, { icon: "chevronDown" }) })
|
|
23431
23480
|
] });
|
|
23432
23481
|
}
|
|
23433
23482
|
|
|
@@ -23536,7 +23585,7 @@ function entryHasIcons(item) {
|
|
|
23536
23585
|
}
|
|
23537
23586
|
|
|
23538
23587
|
// src/components/AppNav/useAppNavGroupExpanded.ts
|
|
23539
|
-
var
|
|
23588
|
+
var import_react133 = require("react");
|
|
23540
23589
|
var APP_NAV_EXPANDED_LINK_GROUPS_STORAGE_KEY = "beam.appNav.expandedLinkGroups";
|
|
23541
23590
|
function loadStored() {
|
|
23542
23591
|
try {
|
|
@@ -23555,13 +23604,13 @@ function persistLabel(label, expanded) {
|
|
|
23555
23604
|
}
|
|
23556
23605
|
function useAppNavGroupExpanded(linkGroup) {
|
|
23557
23606
|
const { label } = linkGroup;
|
|
23558
|
-
const [userExpanded, setUserExpanded] = (0,
|
|
23607
|
+
const [userExpanded, setUserExpanded] = (0, import_react133.useState)(() => {
|
|
23559
23608
|
const stored = loadStored();
|
|
23560
23609
|
return label in stored ? stored[label] : null;
|
|
23561
23610
|
});
|
|
23562
23611
|
const hasActiveLink = appNavLinkGroupLinks(linkGroup).some((l) => l.active);
|
|
23563
23612
|
const expanded = userExpanded !== null ? userExpanded : hasActiveLink ? true : linkGroup.defaultExpanded ?? false;
|
|
23564
|
-
const onToggle = (0,
|
|
23613
|
+
const onToggle = (0, import_react133.useCallback)(() => {
|
|
23565
23614
|
const next = !expanded;
|
|
23566
23615
|
setUserExpanded(next);
|
|
23567
23616
|
persistLabel(label, next);
|
|
@@ -23570,8 +23619,8 @@ function useAppNavGroupExpanded(linkGroup) {
|
|
|
23570
23619
|
}
|
|
23571
23620
|
|
|
23572
23621
|
// src/components/AppNav/AppNavGroup.tsx
|
|
23573
|
-
var
|
|
23574
|
-
var
|
|
23622
|
+
var import_runtime105 = require("@homebound/truss/runtime");
|
|
23623
|
+
var import_jsx_runtime182 = require("react/jsx-runtime");
|
|
23575
23624
|
var __maybeInc19 = (inc) => {
|
|
23576
23625
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
23577
23626
|
};
|
|
@@ -23582,9 +23631,9 @@ function AppNavGroupView(props) {
|
|
|
23582
23631
|
} = props;
|
|
23583
23632
|
const tid = useTestIds(props, "linkGroup");
|
|
23584
23633
|
if (panelCollapsed) {
|
|
23585
|
-
return /* @__PURE__ */ (0,
|
|
23634
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(import_jsx_runtime182.Fragment, { children: appNavLinkGroupLinks(linkGroup).map((link) => /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(NavLink, { variant: "side", ...link, iconOnly: !!link.icon, ...tid[`link_${(0, import_change_case7.camelCase)(link.label)}`] }, link.label)) });
|
|
23586
23635
|
}
|
|
23587
|
-
return /* @__PURE__ */ (0,
|
|
23636
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(AppNavGroupDisclosure, { ...props });
|
|
23588
23637
|
}
|
|
23589
23638
|
function AppNavGroupDisclosure(props) {
|
|
23590
23639
|
const {
|
|
@@ -23596,44 +23645,44 @@ function AppNavGroupDisclosure(props) {
|
|
|
23596
23645
|
} = useAppNavGroupExpanded(linkGroup);
|
|
23597
23646
|
const tid = useTestIds(props, "linkGroup");
|
|
23598
23647
|
const navGroupId = `nav-group-${(0, import_change_case7.kebabCase)(linkGroup.label)}`;
|
|
23599
|
-
const [contentEl, setContentEl] = (0,
|
|
23600
|
-
const contentRef = (0,
|
|
23648
|
+
const [contentEl, setContentEl] = (0, import_react134.useState)(null);
|
|
23649
|
+
const contentRef = (0, import_react134.useMemo)(() => ({
|
|
23601
23650
|
current: contentEl
|
|
23602
23651
|
}), [contentEl]);
|
|
23603
|
-
const [contentHeight, setContentHeight] = (0,
|
|
23604
|
-
(0,
|
|
23652
|
+
const [contentHeight, setContentHeight] = (0, import_react134.useState)(expanded ? "auto" : "0");
|
|
23653
|
+
(0, import_react134.useEffect)(() => {
|
|
23605
23654
|
setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
|
|
23606
23655
|
}, [expanded, contentEl]);
|
|
23607
|
-
const onResize = (0,
|
|
23656
|
+
const onResize = (0, import_react134.useCallback)(() => {
|
|
23608
23657
|
if (contentEl && expanded) {
|
|
23609
23658
|
setContentHeight(`${contentEl.scrollHeight}px`);
|
|
23610
23659
|
}
|
|
23611
23660
|
}, [expanded, contentEl]);
|
|
23612
|
-
(0,
|
|
23661
|
+
(0, import_utils151.useResizeObserver)({
|
|
23613
23662
|
ref: contentRef,
|
|
23614
23663
|
onResize
|
|
23615
23664
|
});
|
|
23616
|
-
return /* @__PURE__ */ (0,
|
|
23617
|
-
/* @__PURE__ */ (0,
|
|
23618
|
-
/* @__PURE__ */ (0,
|
|
23665
|
+
return /* @__PURE__ */ (0, import_jsx_runtime182.jsxs)("div", { className: "df fdc", ...tid, children: [
|
|
23666
|
+
/* @__PURE__ */ (0, import_jsx_runtime182.jsx)(AppNavGroupTrigger, { label: linkGroup.label, navGroupId, expanded, active: linkGroupHasActiveLink(linkGroup), onClick: onToggle, ...tid }),
|
|
23667
|
+
/* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { id: navGroupId, role: "region", "aria-hidden": !expanded, ...(0, import_runtime105.trussProps)({
|
|
23619
23668
|
overflow: "oh",
|
|
23620
23669
|
transition: "transitionHeight",
|
|
23621
23670
|
height: ["h_var", {
|
|
23622
|
-
"--height": (0,
|
|
23671
|
+
"--height": (0, import_runtime105.maybeCssVar)(__maybeInc19(contentHeight))
|
|
23623
23672
|
}]
|
|
23624
23673
|
}), ...tid.panel, ...!expanded ? {
|
|
23625
23674
|
inert: "true"
|
|
23626
|
-
} : {}, children: /* @__PURE__ */ (0,
|
|
23675
|
+
} : {}, children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)("div", { ref: setContentEl, className: "df fdc", children: /* @__PURE__ */ (0, import_jsx_runtime182.jsx)(AppNavItems, { items: linkGroup.items, panelCollapsed: false, nested: true, ...tid }) }) })
|
|
23627
23676
|
] });
|
|
23628
23677
|
}
|
|
23629
23678
|
|
|
23630
23679
|
// src/components/AppNav/AppNavGroupMenu.tsx
|
|
23631
|
-
var
|
|
23680
|
+
var import_jsx_runtime183 = require("react/jsx-runtime");
|
|
23632
23681
|
function AppNavGroupMenu({
|
|
23633
23682
|
linkGroup,
|
|
23634
23683
|
...tid
|
|
23635
23684
|
}) {
|
|
23636
|
-
return /* @__PURE__ */ (0,
|
|
23685
|
+
return /* @__PURE__ */ (0, import_jsx_runtime183.jsx)(
|
|
23637
23686
|
ButtonMenu,
|
|
23638
23687
|
{
|
|
23639
23688
|
trigger: {
|
|
@@ -23649,8 +23698,8 @@ function AppNavGroupMenu({
|
|
|
23649
23698
|
}
|
|
23650
23699
|
|
|
23651
23700
|
// src/components/AppNav/AppNavSectionView.tsx
|
|
23652
|
-
var
|
|
23653
|
-
var
|
|
23701
|
+
var import_runtime106 = require("@homebound/truss/runtime");
|
|
23702
|
+
var import_jsx_runtime184 = require("react/jsx-runtime");
|
|
23654
23703
|
function AppNavSectionView(props) {
|
|
23655
23704
|
const {
|
|
23656
23705
|
section,
|
|
@@ -23676,7 +23725,7 @@ function AppNavSectionView(props) {
|
|
|
23676
23725
|
"--borderColor": "var(--b-surface-separator)"
|
|
23677
23726
|
}]
|
|
23678
23727
|
};
|
|
23679
|
-
return /* @__PURE__ */ (0,
|
|
23728
|
+
return /* @__PURE__ */ (0, import_jsx_runtime184.jsxs)("div", { ...(0, import_runtime106.trussProps)({
|
|
23680
23729
|
...{
|
|
23681
23730
|
display: "df",
|
|
23682
23731
|
flexDirection: "fdc",
|
|
@@ -23684,7 +23733,7 @@ function AppNavSectionView(props) {
|
|
|
23684
23733
|
},
|
|
23685
23734
|
...showDivider ? dividerStyles : {}
|
|
23686
23735
|
}), ...tid, children: [
|
|
23687
|
-
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0,
|
|
23736
|
+
section.label && !panelCollapsed && variant !== "global" && /* @__PURE__ */ (0, import_jsx_runtime184.jsx)("div", { ...(0, import_runtime106.trussProps)({
|
|
23688
23737
|
fontWeight: "fw6",
|
|
23689
23738
|
fontSize: "fz_10px",
|
|
23690
23739
|
lineHeight: "lh_14px",
|
|
@@ -23697,18 +23746,18 @@ function AppNavSectionView(props) {
|
|
|
23697
23746
|
paddingBottom: "pb1",
|
|
23698
23747
|
textTransform: "ttu"
|
|
23699
23748
|
}), ...tid.label, children: section.label }),
|
|
23700
|
-
/* @__PURE__ */ (0,
|
|
23749
|
+
/* @__PURE__ */ (0, import_jsx_runtime184.jsx)(AppNavItems, { ...scopeProps, items: section.items, variant, panelCollapsed, nested })
|
|
23701
23750
|
] });
|
|
23702
23751
|
}
|
|
23703
23752
|
|
|
23704
23753
|
// src/components/AppNav/AppNavItems.tsx
|
|
23705
|
-
var
|
|
23754
|
+
var import_jsx_runtime185 = require("react/jsx-runtime");
|
|
23706
23755
|
function AppNavItems(props) {
|
|
23707
23756
|
const { items, variant = "side", panelCollapsed = false, nested = false } = props;
|
|
23708
23757
|
const tid = useTestIds(props, "appNav");
|
|
23709
|
-
return /* @__PURE__ */ (0,
|
|
23758
|
+
return /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(import_jsx_runtime185.Fragment, { children: items.map((item, idx) => {
|
|
23710
23759
|
if (isAppNavLink(item)) {
|
|
23711
|
-
return /* @__PURE__ */ (0,
|
|
23760
|
+
return /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
23712
23761
|
NavLink,
|
|
23713
23762
|
{
|
|
23714
23763
|
variant,
|
|
@@ -23721,7 +23770,7 @@ function AppNavItems(props) {
|
|
|
23721
23770
|
);
|
|
23722
23771
|
}
|
|
23723
23772
|
if (isAppNavGroup(item)) {
|
|
23724
|
-
return variant === "global" ? /* @__PURE__ */ (0,
|
|
23773
|
+
return variant === "global" ? /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(AppNavGroupMenu, { linkGroup: item, ...tid.linkGroup }, appNavItemKey(item)) : /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
23725
23774
|
AppNavGroupView,
|
|
23726
23775
|
{
|
|
23727
23776
|
linkGroup: item,
|
|
@@ -23732,7 +23781,7 @@ function AppNavItems(props) {
|
|
|
23732
23781
|
);
|
|
23733
23782
|
}
|
|
23734
23783
|
if (isAppNavSection(item)) {
|
|
23735
|
-
return /* @__PURE__ */ (0,
|
|
23784
|
+
return /* @__PURE__ */ (0, import_jsx_runtime185.jsx)(
|
|
23736
23785
|
AppNavSectionView,
|
|
23737
23786
|
{
|
|
23738
23787
|
section: item,
|
|
@@ -23751,47 +23800,47 @@ function AppNavItems(props) {
|
|
|
23751
23800
|
|
|
23752
23801
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
23753
23802
|
var import_framer_motion5 = require("framer-motion");
|
|
23754
|
-
var
|
|
23803
|
+
var import_react136 = require("react");
|
|
23755
23804
|
var import_react_aria60 = require("react-aria");
|
|
23756
23805
|
var import_react_dom6 = require("react-dom");
|
|
23757
|
-
var
|
|
23806
|
+
var import_react_router_dom7 = require("react-router-dom");
|
|
23758
23807
|
|
|
23759
23808
|
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayoutHeightContext.tsx
|
|
23760
|
-
var
|
|
23761
|
-
var
|
|
23762
|
-
var EnvironmentBannerLayoutHeightContext = (0,
|
|
23809
|
+
var import_react135 = require("react");
|
|
23810
|
+
var import_jsx_runtime186 = require("react/jsx-runtime");
|
|
23811
|
+
var EnvironmentBannerLayoutHeightContext = (0, import_react135.createContext)(0);
|
|
23763
23812
|
function EnvironmentBannerLayoutHeightProvider({ value, children }) {
|
|
23764
|
-
return /* @__PURE__ */ (0,
|
|
23813
|
+
return /* @__PURE__ */ (0, import_jsx_runtime186.jsx)(EnvironmentBannerLayoutHeightContext.Provider, { value, children });
|
|
23765
23814
|
}
|
|
23766
23815
|
function useEnvironmentBannerLayoutHeight() {
|
|
23767
|
-
return (0,
|
|
23816
|
+
return (0, import_react135.useContext)(EnvironmentBannerLayoutHeightContext);
|
|
23768
23817
|
}
|
|
23769
23818
|
|
|
23770
23819
|
// src/components/Navbar/NavbarMobileMenu.tsx
|
|
23771
|
-
var
|
|
23772
|
-
var
|
|
23820
|
+
var import_runtime107 = require("@homebound/truss/runtime");
|
|
23821
|
+
var import_jsx_runtime187 = require("react/jsx-runtime");
|
|
23773
23822
|
function NavbarMobileMenu(props) {
|
|
23774
23823
|
const {
|
|
23775
23824
|
items
|
|
23776
23825
|
} = props;
|
|
23777
23826
|
const tid = useTestIds(props, "navbar");
|
|
23778
|
-
const [isOpen, setIsOpen] = (0,
|
|
23827
|
+
const [isOpen, setIsOpen] = (0, import_react136.useState)(false);
|
|
23779
23828
|
const {
|
|
23780
23829
|
pathname,
|
|
23781
23830
|
search
|
|
23782
|
-
} = (0,
|
|
23831
|
+
} = (0, import_react_router_dom7.useLocation)();
|
|
23783
23832
|
(0, import_react_aria60.usePreventScroll)({
|
|
23784
23833
|
isDisabled: !isOpen
|
|
23785
23834
|
});
|
|
23786
|
-
(0,
|
|
23835
|
+
(0, import_react136.useEffect)(() => {
|
|
23787
23836
|
setIsOpen(false);
|
|
23788
23837
|
}, [pathname, search]);
|
|
23789
23838
|
const close = () => setIsOpen(false);
|
|
23790
|
-
return /* @__PURE__ */ (0,
|
|
23791
|
-
/* @__PURE__ */ (0,
|
|
23839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)(import_jsx_runtime187.Fragment, { children: [
|
|
23840
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(IconButton, { icon: isOpen ? "menuClose" : "menu", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: isOpen ? "Close navigation" : "Open navigation", onClick: () => setIsOpen((open) => !open), ...tid.mobileMenu }),
|
|
23792
23841
|
(0, import_react_dom6.createPortal)(
|
|
23793
23842
|
/* AnimatePresence keeps the drawer mounted through its slide/fade-out before unmounting.*/
|
|
23794
|
-
/* @__PURE__ */ (0,
|
|
23843
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(import_framer_motion5.AnimatePresence, { children: isOpen && /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(NavbarMobileDrawer, { items, onClose: close, tid }) }),
|
|
23795
23844
|
document.body
|
|
23796
23845
|
)
|
|
23797
23846
|
] });
|
|
@@ -23805,14 +23854,14 @@ function NavbarMobileDrawer({
|
|
|
23805
23854
|
const overlayTopStyle = {
|
|
23806
23855
|
top: bannerHeightPx
|
|
23807
23856
|
};
|
|
23808
|
-
return /* @__PURE__ */ (0,
|
|
23809
|
-
/* @__PURE__ */ (0,
|
|
23857
|
+
return /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)(import_jsx_runtime187.Fragment, { children: [
|
|
23858
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(import_framer_motion5.motion.div, { ...(0, import_runtime107.mergeProps)(void 0, overlayTopStyle, {
|
|
23810
23859
|
position: "fixed",
|
|
23811
23860
|
right: "right0",
|
|
23812
23861
|
bottom: "bottom0",
|
|
23813
23862
|
left: "left0",
|
|
23814
23863
|
zIndex: ["z_var", {
|
|
23815
|
-
"--zIndex": (0,
|
|
23864
|
+
"--zIndex": (0, import_runtime107.maybeCssVar)(zIndices.navbarMobileMenuScrim)
|
|
23816
23865
|
}],
|
|
23817
23866
|
backgroundColor: "backgroundColor_rgba_36_36_36_0_2"
|
|
23818
23867
|
}), initial: {
|
|
@@ -23825,7 +23874,7 @@ function NavbarMobileDrawer({
|
|
|
23825
23874
|
ease: "linear",
|
|
23826
23875
|
duration: 0.2
|
|
23827
23876
|
}, onClick: onClose, ...tid.mobileMenuScrim }, "navbarMobileMenuScrim"),
|
|
23828
|
-
/* @__PURE__ */ (0,
|
|
23877
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(import_react_aria60.FocusScope, { autoFocus: true, contain: true, restoreFocus: true, children: /* @__PURE__ */ (0, import_jsx_runtime187.jsxs)(import_framer_motion5.motion.aside, { role: "dialog", "aria-modal": "true", "aria-label": "Navigation", ...(0, import_runtime107.mergeProps)(void 0, overlayTopStyle, {
|
|
23829
23878
|
position: "fixed",
|
|
23830
23879
|
bottom: "bottom0",
|
|
23831
23880
|
left: "left0",
|
|
@@ -23835,7 +23884,7 @@ function NavbarMobileDrawer({
|
|
|
23835
23884
|
width: "w_260px",
|
|
23836
23885
|
overflow: "oh",
|
|
23837
23886
|
zIndex: ["z_var", {
|
|
23838
|
-
"--zIndex": (0,
|
|
23887
|
+
"--zIndex": (0, import_runtime107.maybeCssVar)(zIndices.navbarMobileMenu)
|
|
23839
23888
|
}],
|
|
23840
23889
|
backgroundColor: ["bgColor_var", {
|
|
23841
23890
|
"--backgroundColor": "var(--b-surface)"
|
|
@@ -23850,7 +23899,7 @@ function NavbarMobileDrawer({
|
|
|
23850
23899
|
ease: "linear",
|
|
23851
23900
|
duration: 0.2
|
|
23852
23901
|
}, onClick: (e) => e.stopPropagation(), ...tid.mobileMenuDrawer, children: [
|
|
23853
|
-
/* @__PURE__ */ (0,
|
|
23902
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)("div", { ...(0, import_runtime107.trussProps)({
|
|
23854
23903
|
display: "df",
|
|
23855
23904
|
alignItems: "aic",
|
|
23856
23905
|
justifyContent: "jcfe",
|
|
@@ -23864,8 +23913,8 @@ function NavbarMobileDrawer({
|
|
|
23864
23913
|
borderColor: ["bc_var", {
|
|
23865
23914
|
"--borderColor": "var(--b-surface-separator)"
|
|
23866
23915
|
}]
|
|
23867
|
-
}), children: /* @__PURE__ */ (0,
|
|
23868
|
-
/* @__PURE__ */ (0,
|
|
23916
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(IconButton, { icon: "x", color: "--b-on-surface-muted" /* OnSurfaceMuted */, label: "Close navigation", onClick: onClose, ...tid.mobileMenuClose }) }),
|
|
23917
|
+
/* @__PURE__ */ (0, import_jsx_runtime187.jsx)(
|
|
23869
23918
|
"nav",
|
|
23870
23919
|
{
|
|
23871
23920
|
className: "fg1 oya pl3 pr3 pb3 pt2 df fdc gap_4px",
|
|
@@ -23875,7 +23924,7 @@ function NavbarMobileDrawer({
|
|
|
23875
23924
|
}
|
|
23876
23925
|
},
|
|
23877
23926
|
...tid.mobileMenuPanel,
|
|
23878
|
-
children: /* @__PURE__ */ (0,
|
|
23927
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime187.jsx)(AppNavItems, { items, panelCollapsed: false, ...tid })
|
|
23879
23928
|
}
|
|
23880
23929
|
)
|
|
23881
23930
|
] }, "navbarMobileMenuDrawer") })
|
|
@@ -23883,8 +23932,8 @@ function NavbarMobileDrawer({
|
|
|
23883
23932
|
}
|
|
23884
23933
|
|
|
23885
23934
|
// src/components/Navbar/Navbar.tsx
|
|
23886
|
-
var
|
|
23887
|
-
var
|
|
23935
|
+
var import_runtime108 = require("@homebound/truss/runtime");
|
|
23936
|
+
var import_jsx_runtime188 = require("react/jsx-runtime");
|
|
23888
23937
|
function Navbar(props) {
|
|
23889
23938
|
const {
|
|
23890
23939
|
brand,
|
|
@@ -23903,7 +23952,7 @@ function Navbar(props) {
|
|
|
23903
23952
|
overflows
|
|
23904
23953
|
} = useContentOverflow(!sm);
|
|
23905
23954
|
const showMobile = sm || overflows;
|
|
23906
|
-
return /* @__PURE__ */ (0,
|
|
23955
|
+
return /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(ContrastScope, { children: /* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("nav", { ...(0, import_runtime108.trussProps)({
|
|
23907
23956
|
backgroundColor: ["bgColor_var", {
|
|
23908
23957
|
"--backgroundColor": "var(--b-surface-raised)"
|
|
23909
23958
|
}],
|
|
@@ -23922,10 +23971,10 @@ function Navbar(props) {
|
|
|
23922
23971
|
paddingRight: "pr5"
|
|
23923
23972
|
} : {}
|
|
23924
23973
|
}), ...tid, children: [
|
|
23925
|
-
/* @__PURE__ */ (0,
|
|
23926
|
-
/* @__PURE__ */ (0,
|
|
23927
|
-
showMobile && /* @__PURE__ */ (0,
|
|
23928
|
-
/* @__PURE__ */ (0,
|
|
23974
|
+
/* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("div", { className: "df aic gap3 fg1 mw0", children: [
|
|
23975
|
+
/* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("div", { className: "df aic fs0 gap2", children: [
|
|
23976
|
+
showMobile && /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(NavbarMobileMenu, { items, ...tid }),
|
|
23977
|
+
/* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { ...(0, import_runtime108.trussProps)({
|
|
23929
23978
|
flexShrink: "fs0",
|
|
23930
23979
|
...hideBrandOnMobile && showMobile ? {
|
|
23931
23980
|
display: "dn"
|
|
@@ -23934,7 +23983,7 @@ function Navbar(props) {
|
|
|
23934
23983
|
] }),
|
|
23935
23984
|
!sm && // Stays mounted while overflowing (hidden) so the items remain measurable and the bar
|
|
23936
23985
|
// can expand again as space frees up.
|
|
23937
|
-
/* @__PURE__ */ (0,
|
|
23986
|
+
/* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { ref: containerRef, ...(0, import_runtime108.trussProps)({
|
|
23938
23987
|
display: "df",
|
|
23939
23988
|
alignItems: "aic",
|
|
23940
23989
|
flexGrow: "fg1",
|
|
@@ -23943,11 +23992,11 @@ function Navbar(props) {
|
|
|
23943
23992
|
...overflows ? {
|
|
23944
23993
|
visibility: "visibility_hidden"
|
|
23945
23994
|
} : {}
|
|
23946
|
-
}), ...tid.items, children: /* @__PURE__ */ (0,
|
|
23995
|
+
}), ...tid.items, children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { ref: contentRef, className: "df aic gap2 width_max_content", children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(AppNavItems, { variant: "global", items, ...tid }) }) })
|
|
23947
23996
|
] }),
|
|
23948
|
-
/* @__PURE__ */ (0,
|
|
23949
|
-
rightSlot && /* @__PURE__ */ (0,
|
|
23950
|
-
user && /* @__PURE__ */ (0,
|
|
23997
|
+
/* @__PURE__ */ (0, import_jsx_runtime188.jsxs)("div", { className: "df aic gap1", children: [
|
|
23998
|
+
rightSlot && /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { className: "df aic gap1", ...tid.rightSlot, children: rightSlot }),
|
|
23999
|
+
user && /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(NavbarUserMenu, { user, ...tid.userMenu })
|
|
23951
24000
|
] })
|
|
23952
24001
|
] }) });
|
|
23953
24002
|
}
|
|
@@ -23955,7 +24004,7 @@ function NavbarUserMenu({
|
|
|
23955
24004
|
user,
|
|
23956
24005
|
...tid
|
|
23957
24006
|
}) {
|
|
23958
|
-
return /* @__PURE__ */ (0,
|
|
24007
|
+
return /* @__PURE__ */ (0, import_jsx_runtime188.jsx)("div", { className: "df aic fs0 ml1", children: /* @__PURE__ */ (0, import_jsx_runtime188.jsx)(ButtonMenu, { items: user.menuItems, persistentItems: user.persistentItems, trigger: {
|
|
23959
24008
|
src: user.picture,
|
|
23960
24009
|
name: user.name,
|
|
23961
24010
|
size: "sm",
|
|
@@ -23965,19 +24014,19 @@ function NavbarUserMenu({
|
|
|
23965
24014
|
|
|
23966
24015
|
// src/components/Tabs.tsx
|
|
23967
24016
|
var import_change_case9 = require("change-case");
|
|
23968
|
-
var
|
|
24017
|
+
var import_react137 = require("react");
|
|
23969
24018
|
var import_react_aria61 = require("react-aria");
|
|
23970
24019
|
var import_react_router = require("react-router");
|
|
23971
|
-
var
|
|
23972
|
-
var
|
|
23973
|
-
var
|
|
24020
|
+
var import_react_router_dom8 = require("react-router-dom");
|
|
24021
|
+
var import_runtime109 = require("@homebound/truss/runtime");
|
|
24022
|
+
var import_jsx_runtime189 = require("react/jsx-runtime");
|
|
23974
24023
|
function TabsWithContent(props) {
|
|
23975
24024
|
const styles = hideTabs(props) ? {} : {
|
|
23976
24025
|
paddingTop: "pt3"
|
|
23977
24026
|
};
|
|
23978
|
-
return /* @__PURE__ */ (0,
|
|
23979
|
-
/* @__PURE__ */ (0,
|
|
23980
|
-
/* @__PURE__ */ (0,
|
|
24027
|
+
return /* @__PURE__ */ (0, import_jsx_runtime189.jsxs)(import_jsx_runtime189.Fragment, { children: [
|
|
24028
|
+
/* @__PURE__ */ (0, import_jsx_runtime189.jsx)(Tabs, { ...props }),
|
|
24029
|
+
/* @__PURE__ */ (0, import_jsx_runtime189.jsx)(TabContent, { ...props, contentXss: {
|
|
23981
24030
|
...styles,
|
|
23982
24031
|
...props.contentXss
|
|
23983
24032
|
} })
|
|
@@ -23990,7 +24039,7 @@ function TabContent(props) {
|
|
|
23990
24039
|
contentXss = {},
|
|
23991
24040
|
omitFullBleedPadding = false
|
|
23992
24041
|
} = props;
|
|
23993
|
-
const location = (0,
|
|
24042
|
+
const location = (0, import_react_router_dom8.useLocation)();
|
|
23994
24043
|
const selectedTab = isRouteTabs(props) ? props.tabs.find((t) => {
|
|
23995
24044
|
const paths = Array.isArray(t.path) ? t.path : [t.path];
|
|
23996
24045
|
return paths.some((p) => !!(0, import_react_router.matchPath)({
|
|
@@ -24002,7 +24051,7 @@ function TabContent(props) {
|
|
|
24002
24051
|
return (
|
|
24003
24052
|
// Using FullBleed to allow the tab's bgColor to extend to the edges of the <ScrollableContent /> element.
|
|
24004
24053
|
// Omit the padding from `FullBleed` if the caller passes in the `paddingLeft/Right` styles.
|
|
24005
|
-
/* @__PURE__ */ (0,
|
|
24054
|
+
/* @__PURE__ */ (0, import_jsx_runtime189.jsx)(FullBleed, { omitPadding: omitFullBleedPadding, children: /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("div", { "aria-labelledby": `${uniqueValue}-tab`, id: `${uniqueValue}-tabPanel`, role: "tabpanel", tabIndex: 0, ...tid.panel, ...(0, import_runtime109.trussProps)(contentXss), children: selectedTab.render() }) })
|
|
24006
24055
|
);
|
|
24007
24056
|
}
|
|
24008
24057
|
function Tabs(props) {
|
|
@@ -24013,7 +24062,7 @@ function Tabs(props) {
|
|
|
24013
24062
|
right,
|
|
24014
24063
|
...others
|
|
24015
24064
|
} = props;
|
|
24016
|
-
const location = (0,
|
|
24065
|
+
const location = (0, import_react_router_dom8.useLocation)();
|
|
24017
24066
|
const selected = isRouteTabs(props) ? uniqueTabValue(props.tabs.find((t) => {
|
|
24018
24067
|
const paths = Array.isArray(t.path) ? t.path : [t.path];
|
|
24019
24068
|
return paths.some((p) => !!(0, import_react_router.matchPath)({
|
|
@@ -24026,9 +24075,9 @@ function Tabs(props) {
|
|
|
24026
24075
|
focusProps
|
|
24027
24076
|
} = (0, import_react_aria61.useFocusRing)();
|
|
24028
24077
|
const tid = useTestIds(others, "tabs");
|
|
24029
|
-
const [active, setActive] = (0,
|
|
24030
|
-
const ref = (0,
|
|
24031
|
-
(0,
|
|
24078
|
+
const [active, setActive] = (0, import_react137.useState)(selected);
|
|
24079
|
+
const ref = (0, import_react137.useRef)(null);
|
|
24080
|
+
(0, import_react137.useEffect)(() => setActive(selected), [selected]);
|
|
24032
24081
|
function onKeyUp(e) {
|
|
24033
24082
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
24034
24083
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -24044,7 +24093,7 @@ function Tabs(props) {
|
|
|
24044
24093
|
setActive(selected);
|
|
24045
24094
|
}
|
|
24046
24095
|
}
|
|
24047
|
-
return /* @__PURE__ */ (0,
|
|
24096
|
+
return /* @__PURE__ */ (0, import_jsx_runtime189.jsxs)("div", { ...(0, import_runtime109.trussProps)({
|
|
24048
24097
|
...{
|
|
24049
24098
|
display: "df",
|
|
24050
24099
|
alignItems: "aic",
|
|
@@ -24060,11 +24109,11 @@ function Tabs(props) {
|
|
|
24060
24109
|
}
|
|
24061
24110
|
} : {}
|
|
24062
24111
|
}), children: [
|
|
24063
|
-
!hideTabs(props) && /* @__PURE__ */ (0,
|
|
24112
|
+
!hideTabs(props) && /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("div", { ref, className: "dif gap1 asfe", "aria-label": ariaLabel, role: "tablist", ...tid, children: tabs.map((tab) => {
|
|
24064
24113
|
const uniqueValue = uniqueTabValue(tab);
|
|
24065
|
-
return /* @__PURE__ */ (0,
|
|
24114
|
+
return /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(TabImpl, { active: active === uniqueValue, focusProps, isFocusVisible, onClick, onKeyUp, onBlur, tab, ...tid[defaultTestId(uniqueValue)] }, uniqueValue);
|
|
24066
24115
|
}) }),
|
|
24067
|
-
right && /* @__PURE__ */ (0,
|
|
24116
|
+
right && /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("div", { className: "mla df aic gap1 pb1", children: right })
|
|
24068
24117
|
] });
|
|
24069
24118
|
}
|
|
24070
24119
|
function TabImpl(props) {
|
|
@@ -24098,7 +24147,7 @@ function TabImpl(props) {
|
|
|
24098
24147
|
hoverStyles: hoverStyles4,
|
|
24099
24148
|
disabledStyles: disabledStyles3,
|
|
24100
24149
|
activeHoverStyles
|
|
24101
|
-
} = (0,
|
|
24150
|
+
} = (0, import_react137.useMemo)(() => getTabStyles(), []);
|
|
24102
24151
|
const uniqueValue = uniqueTabValue(tab);
|
|
24103
24152
|
const tabProps = {
|
|
24104
24153
|
"aria-controls": `${uniqueValue}-tabPanel`,
|
|
@@ -24108,7 +24157,7 @@ function TabImpl(props) {
|
|
|
24108
24157
|
role: "tab",
|
|
24109
24158
|
tabIndex: active ? 0 : -1,
|
|
24110
24159
|
...others,
|
|
24111
|
-
...(0,
|
|
24160
|
+
...(0, import_runtime109.trussProps)({
|
|
24112
24161
|
...baseStyles4,
|
|
24113
24162
|
...active && activeStyles3,
|
|
24114
24163
|
...isDisabled && disabledStyles3,
|
|
@@ -24124,17 +24173,17 @@ function TabImpl(props) {
|
|
|
24124
24173
|
onClick: () => onClick(tab.value)
|
|
24125
24174
|
}
|
|
24126
24175
|
});
|
|
24127
|
-
const tabLabel = /* @__PURE__ */ (0,
|
|
24176
|
+
const tabLabel = /* @__PURE__ */ (0, import_jsx_runtime189.jsxs)(import_jsx_runtime189.Fragment, { children: [
|
|
24128
24177
|
label,
|
|
24129
|
-
(icon || endAdornment) && /* @__PURE__ */ (0,
|
|
24178
|
+
(icon || endAdornment) && /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("span", { className: "ml1", children: icon ? /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(Icon, { icon }) : endAdornment })
|
|
24130
24179
|
] });
|
|
24131
24180
|
return isDisabled ? maybeTooltip({
|
|
24132
24181
|
title: resolveTooltip(disabled),
|
|
24133
24182
|
placement: "top",
|
|
24134
|
-
children: /* @__PURE__ */ (0,
|
|
24135
|
-
}) : isRouteTab(tab) ? /* @__PURE__ */ (0,
|
|
24183
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("div", { ...tabProps, children: tabLabel })
|
|
24184
|
+
}) : isRouteTab(tab) ? /* @__PURE__ */ (0, import_jsx_runtime189.jsx)(import_react_router_dom8.Link, { ...(0, import_react_aria61.mergeProps)(tabProps, interactiveProps, {
|
|
24136
24185
|
className: "navLink"
|
|
24137
|
-
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0,
|
|
24186
|
+
}), to: tab.href, children: tabLabel }) : /* @__PURE__ */ (0, import_jsx_runtime189.jsx)("button", { ...{
|
|
24138
24187
|
...tabProps,
|
|
24139
24188
|
...interactiveProps
|
|
24140
24189
|
}, children: tabLabel });
|
|
@@ -24145,7 +24194,7 @@ function getTabStyles() {
|
|
|
24145
24194
|
const borderBottomStyles = {
|
|
24146
24195
|
borderBottomStyle: "bbs_solid",
|
|
24147
24196
|
borderBottomWidth: ["borderBottomWidth_var", {
|
|
24148
|
-
"--borderBottomWidth": (0,
|
|
24197
|
+
"--borderBottomWidth": (0, import_runtime109.maybeCssVar)(`${borderBottomWidthPx}px`)
|
|
24149
24198
|
}],
|
|
24150
24199
|
paddingBottom: ["pb_var", {
|
|
24151
24200
|
"--paddingBottom": `${verticalPaddingPx - borderBottomWidthPx}px`
|
|
@@ -24229,26 +24278,28 @@ function hideTabs(props) {
|
|
|
24229
24278
|
}
|
|
24230
24279
|
|
|
24231
24280
|
// src/components/PageHeader.tsx
|
|
24232
|
-
var
|
|
24233
|
-
var
|
|
24281
|
+
var import_runtime110 = require("@homebound/truss/runtime");
|
|
24282
|
+
var import_jsx_runtime190 = require("react/jsx-runtime");
|
|
24234
24283
|
function PageHeader2(props) {
|
|
24235
24284
|
const {
|
|
24236
24285
|
title,
|
|
24237
24286
|
documentTitleSuffix,
|
|
24238
24287
|
rightSlot,
|
|
24239
24288
|
tabs,
|
|
24289
|
+
breadcrumbs,
|
|
24240
24290
|
...otherProps
|
|
24241
24291
|
} = props;
|
|
24242
24292
|
const tid = useTestIds(otherProps, "pageHeader");
|
|
24243
24293
|
useDocumentTitle(title, documentTitleSuffix);
|
|
24244
|
-
return /* @__PURE__ */ (0,
|
|
24294
|
+
return /* @__PURE__ */ (0, import_jsx_runtime190.jsxs)("header", { ...tid, ...(0, import_runtime110.trussProps)({
|
|
24245
24295
|
display: "df",
|
|
24246
24296
|
flexDirection: "fdc",
|
|
24247
24297
|
paddingTop: "pt3",
|
|
24248
|
-
paddingRight: "pr3",
|
|
24249
24298
|
paddingLeft: "pl3",
|
|
24299
|
+
paddingRight: "pr3",
|
|
24250
24300
|
borderBottomStyle: "bbs_solid",
|
|
24251
24301
|
borderBottomWidth: "bbw_1px",
|
|
24302
|
+
gap: "gap2",
|
|
24252
24303
|
borderColor: ["bc_var", {
|
|
24253
24304
|
"--borderColor": "var(--b-surface-separator)"
|
|
24254
24305
|
}],
|
|
@@ -24256,16 +24307,31 @@ function PageHeader2(props) {
|
|
|
24256
24307
|
"--backgroundColor": "var(--b-surface)"
|
|
24257
24308
|
}]
|
|
24258
24309
|
}), children: [
|
|
24259
|
-
/* @__PURE__ */ (0,
|
|
24260
|
-
|
|
24261
|
-
|
|
24310
|
+
/* @__PURE__ */ (0, import_jsx_runtime190.jsxs)("div", { ...(0, import_runtime110.trussProps)({
|
|
24311
|
+
...{
|
|
24312
|
+
display: "df",
|
|
24313
|
+
justifyContent: "jcsb",
|
|
24314
|
+
width: "w100",
|
|
24315
|
+
gap: "gap1"
|
|
24316
|
+
},
|
|
24317
|
+
...{
|
|
24318
|
+
...!tabs ? {
|
|
24319
|
+
marginBottom: "mb2"
|
|
24320
|
+
} : {}
|
|
24321
|
+
}
|
|
24322
|
+
}), children: [
|
|
24323
|
+
/* @__PURE__ */ (0, import_jsx_runtime190.jsxs)("div", { className: "mw0", children: [
|
|
24324
|
+
breadcrumbs && /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(Breadcrumbs, { ...breadcrumbs }),
|
|
24325
|
+
/* @__PURE__ */ (0, import_jsx_runtime190.jsx)("h1", { ...tid.title, className: "fw6 fz_20px lh_28px", children: title })
|
|
24326
|
+
] }),
|
|
24327
|
+
/* @__PURE__ */ (0, import_jsx_runtime190.jsx)("div", { className: "fs0", children: rightSlot })
|
|
24262
24328
|
] }),
|
|
24263
|
-
tabs && /* @__PURE__ */ (0,
|
|
24329
|
+
tabs && /* @__PURE__ */ (0, import_jsx_runtime190.jsx)(Tabs, { ...tabs })
|
|
24264
24330
|
] });
|
|
24265
24331
|
}
|
|
24266
24332
|
|
|
24267
24333
|
// src/components/Pagination.tsx
|
|
24268
|
-
var
|
|
24334
|
+
var import_jsx_runtime191 = require("react/jsx-runtime");
|
|
24269
24335
|
var defaultPage = {
|
|
24270
24336
|
offset: 0,
|
|
24271
24337
|
limit: 100
|
|
@@ -24297,25 +24363,25 @@ function Pagination(props) {
|
|
|
24297
24363
|
}
|
|
24298
24364
|
}
|
|
24299
24365
|
const tid = useTestIds(props, "pagination");
|
|
24300
|
-
return /* @__PURE__ */ (0,
|
|
24301
|
-
/* @__PURE__ */ (0,
|
|
24302
|
-
/* @__PURE__ */ (0,
|
|
24366
|
+
return /* @__PURE__ */ (0, import_jsx_runtime191.jsxs)("div", { className: "df bcGray200 bts_solid btw_1px fw4 fz_12px lh_16px gray500 pl2 pr2 pt2", ...tid, children: [
|
|
24367
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { className: "df mta mba mr2", ...tid.pageSizeLabel, children: "Page size:" }),
|
|
24368
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)("div", { className: "w_78px", children: /* @__PURE__ */ (0, import_jsx_runtime191.jsx)(SelectField, { compact: true, label: "Page Size", labelStyle: "hidden", options: pageOptions, value: pageSize, onSelect: (val) => set({
|
|
24303
24369
|
pageNumber: 1,
|
|
24304
24370
|
pageSize: val
|
|
24305
24371
|
}), autoSort: false, ...tid.pageSize }) }),
|
|
24306
|
-
/* @__PURE__ */ (0,
|
|
24307
|
-
/* @__PURE__ */ (0,
|
|
24372
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsxs)("div", { className: "mla mta mba df", children: [
|
|
24373
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsxs)("div", { className: "df mta mba mr2", ...tid.pageInfoLabel, children: [
|
|
24308
24374
|
first,
|
|
24309
24375
|
" ",
|
|
24310
24376
|
showLast ? `- ${last}` : "",
|
|
24311
24377
|
" of ",
|
|
24312
24378
|
totalCount
|
|
24313
24379
|
] }),
|
|
24314
|
-
/* @__PURE__ */ (0,
|
|
24380
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)(IconButton, { icon: "chevronLeft", color: hasPrevPage ? "rgba(29, 78, 216, 1)" /* Blue700 */ : "rgba(236, 235, 235, 1)" /* Gray200 */, onClick: () => set({
|
|
24315
24381
|
pageNumber: pageNumber - 1,
|
|
24316
24382
|
pageSize
|
|
24317
24383
|
}), disabled: !hasPrevPage, ...tid.previousIcon }),
|
|
24318
|
-
/* @__PURE__ */ (0,
|
|
24384
|
+
/* @__PURE__ */ (0, import_jsx_runtime191.jsx)(IconButton, { icon: "chevronRight", color: hasNextPage ? "rgba(29, 78, 216, 1)" /* Blue700 */ : "rgba(236, 235, 235, 1)" /* Gray200 */, onClick: () => set({
|
|
24319
24385
|
pageNumber: pageNumber + 1,
|
|
24320
24386
|
pageSize
|
|
24321
24387
|
}), disabled: !hasNextPage, ...tid.nextIcon })
|
|
@@ -24337,10 +24403,10 @@ function toPageNumberSize(page) {
|
|
|
24337
24403
|
}
|
|
24338
24404
|
|
|
24339
24405
|
// src/components/ScrollShadows.tsx
|
|
24340
|
-
var
|
|
24341
|
-
var
|
|
24342
|
-
var
|
|
24343
|
-
var
|
|
24406
|
+
var import_utils160 = require("@react-aria/utils");
|
|
24407
|
+
var import_react138 = require("react");
|
|
24408
|
+
var import_runtime111 = require("@homebound/truss/runtime");
|
|
24409
|
+
var import_jsx_runtime192 = require("react/jsx-runtime");
|
|
24344
24410
|
function ScrollShadows(props) {
|
|
24345
24411
|
const {
|
|
24346
24412
|
children,
|
|
@@ -24356,15 +24422,15 @@ function ScrollShadows(props) {
|
|
|
24356
24422
|
if (!bgColor.includes("rgba")) {
|
|
24357
24423
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
24358
24424
|
}
|
|
24359
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
24360
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
24361
|
-
const scrollRef = (0,
|
|
24362
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
24425
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react138.useState)(false);
|
|
24426
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react138.useState)(false);
|
|
24427
|
+
const scrollRef = (0, import_react138.useRef)(null);
|
|
24428
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react138.useMemo)(() => {
|
|
24363
24429
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
24364
24430
|
const commonStyles = {
|
|
24365
24431
|
position: "absolute",
|
|
24366
24432
|
zIndex: ["z_var", {
|
|
24367
|
-
"--zIndex": (0,
|
|
24433
|
+
"--zIndex": (0, import_runtime111.maybeCssVar)(zIndices.scrollShadow)
|
|
24368
24434
|
}],
|
|
24369
24435
|
pointerEvents: "pointerEvents_none"
|
|
24370
24436
|
};
|
|
@@ -24397,7 +24463,7 @@ function ScrollShadows(props) {
|
|
|
24397
24463
|
...startShadowStyles2,
|
|
24398
24464
|
...{
|
|
24399
24465
|
background: ["background_var", {
|
|
24400
|
-
"--background": (0,
|
|
24466
|
+
"--background": (0, import_runtime111.maybeCssVar)(startGradient)
|
|
24401
24467
|
}]
|
|
24402
24468
|
}
|
|
24403
24469
|
}, {
|
|
@@ -24405,12 +24471,12 @@ function ScrollShadows(props) {
|
|
|
24405
24471
|
...endShadowStyles2,
|
|
24406
24472
|
...{
|
|
24407
24473
|
background: ["background_var", {
|
|
24408
|
-
"--background": (0,
|
|
24474
|
+
"--background": (0, import_runtime111.maybeCssVar)(endGradient)
|
|
24409
24475
|
}]
|
|
24410
24476
|
}
|
|
24411
24477
|
}];
|
|
24412
24478
|
}, [horizontal, bgColor]);
|
|
24413
|
-
const updateScrollProps = (0,
|
|
24479
|
+
const updateScrollProps = (0, import_react138.useCallback)((el) => {
|
|
24414
24480
|
const {
|
|
24415
24481
|
scrollTop,
|
|
24416
24482
|
scrollHeight,
|
|
@@ -24425,15 +24491,15 @@ function ScrollShadows(props) {
|
|
|
24425
24491
|
setShowStartShadow(start > 0);
|
|
24426
24492
|
setShowEndShadow(start + boxSize < end);
|
|
24427
24493
|
}, [horizontal]);
|
|
24428
|
-
const onResize = (0,
|
|
24429
|
-
(0,
|
|
24494
|
+
const onResize = (0, import_react138.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
24495
|
+
(0, import_utils160.useResizeObserver)({
|
|
24430
24496
|
ref: scrollRef,
|
|
24431
24497
|
onResize
|
|
24432
24498
|
});
|
|
24433
|
-
return /* @__PURE__ */ (0,
|
|
24499
|
+
return /* @__PURE__ */ (0, import_jsx_runtime192.jsxs)("div", { ...(0, import_runtime111.trussProps)({
|
|
24434
24500
|
display: "df",
|
|
24435
24501
|
flexDirection: ["fd_var", {
|
|
24436
|
-
"--flexDirection": (0,
|
|
24502
|
+
"--flexDirection": (0, import_runtime111.maybeCssVar)(!horizontal ? "column" : "row")
|
|
24437
24503
|
}],
|
|
24438
24504
|
position: "relative",
|
|
24439
24505
|
overflow: "oh",
|
|
@@ -24446,23 +24512,23 @@ function ScrollShadows(props) {
|
|
|
24446
24512
|
width: width2
|
|
24447
24513
|
}
|
|
24448
24514
|
}), ...tid, children: [
|
|
24449
|
-
/* @__PURE__ */ (0,
|
|
24515
|
+
/* @__PURE__ */ (0, import_jsx_runtime192.jsx)("div", { ...(0, import_runtime111.trussProps)({
|
|
24450
24516
|
...startShadowStyles,
|
|
24451
24517
|
...{
|
|
24452
24518
|
opacity: ["o_var", {
|
|
24453
|
-
"--opacity": (0,
|
|
24519
|
+
"--opacity": (0, import_runtime111.maybeCssVar)(showStartShadow ? 1 : 0)
|
|
24454
24520
|
}]
|
|
24455
24521
|
}
|
|
24456
24522
|
}), "data-chromatic": "ignore" }),
|
|
24457
|
-
/* @__PURE__ */ (0,
|
|
24523
|
+
/* @__PURE__ */ (0, import_jsx_runtime192.jsx)("div", { ...(0, import_runtime111.trussProps)({
|
|
24458
24524
|
...endShadowStyles,
|
|
24459
24525
|
...{
|
|
24460
24526
|
opacity: ["o_var", {
|
|
24461
|
-
"--opacity": (0,
|
|
24527
|
+
"--opacity": (0, import_runtime111.maybeCssVar)(showEndShadow ? 1 : 0)
|
|
24462
24528
|
}]
|
|
24463
24529
|
}
|
|
24464
24530
|
}), "data-chromatic": "ignore" }),
|
|
24465
|
-
/* @__PURE__ */ (0,
|
|
24531
|
+
/* @__PURE__ */ (0, import_jsx_runtime192.jsx)("div", { ...(0, import_runtime111.trussProps)({
|
|
24466
24532
|
...xss,
|
|
24467
24533
|
...{
|
|
24468
24534
|
overflow: "oa",
|
|
@@ -24474,8 +24540,8 @@ function ScrollShadows(props) {
|
|
|
24474
24540
|
}
|
|
24475
24541
|
|
|
24476
24542
|
// src/layouts/SideNavLayout/SideNavLayoutContext.tsx
|
|
24477
|
-
var
|
|
24478
|
-
var
|
|
24543
|
+
var import_react139 = require("react");
|
|
24544
|
+
var import_jsx_runtime193 = require("react/jsx-runtime");
|
|
24479
24545
|
var SIDE_NAV_LAYOUT_STATE_STORAGE_KEY = "beam.sideNavLayout.navState";
|
|
24480
24546
|
function loadStoredNavState() {
|
|
24481
24547
|
try {
|
|
@@ -24497,20 +24563,20 @@ function resolveInitialNavState(defaultNavState) {
|
|
|
24497
24563
|
}
|
|
24498
24564
|
return loadStoredNavState() ?? defaultNavState ?? "expanded";
|
|
24499
24565
|
}
|
|
24500
|
-
var SideNavLayoutContext = (0,
|
|
24566
|
+
var SideNavLayoutContext = (0, import_react139.createContext)(void 0);
|
|
24501
24567
|
function SideNavLayoutProvider(props) {
|
|
24502
|
-
const [navState, setNavStateInternal] = (0,
|
|
24568
|
+
const [navState, setNavStateInternal] = (0, import_react139.useState)(
|
|
24503
24569
|
() => resolveInitialNavState(props.defaultNavState)
|
|
24504
24570
|
);
|
|
24505
24571
|
const bp = useBreakpoint();
|
|
24506
|
-
const prevMdAndUp = (0,
|
|
24507
|
-
(0,
|
|
24572
|
+
const prevMdAndUp = (0, import_react139.useRef)(bp.mdAndUp);
|
|
24573
|
+
(0, import_react139.useEffect)(() => {
|
|
24508
24574
|
if (prevMdAndUp.current && !bp.mdAndUp) {
|
|
24509
24575
|
setNavStateInternal((prev) => prev === "expanded" ? "collapse" : prev);
|
|
24510
24576
|
}
|
|
24511
24577
|
prevMdAndUp.current = bp.mdAndUp;
|
|
24512
24578
|
}, [bp.mdAndUp]);
|
|
24513
|
-
const setNavState = (0,
|
|
24579
|
+
const setNavState = (0, import_react139.useCallback)((value2) => {
|
|
24514
24580
|
setNavStateInternal((prev) => {
|
|
24515
24581
|
const next = typeof value2 === "function" ? value2(prev) : value2;
|
|
24516
24582
|
if (next === "expanded" || next === "collapse") {
|
|
@@ -24522,20 +24588,20 @@ function SideNavLayoutProvider(props) {
|
|
|
24522
24588
|
return next;
|
|
24523
24589
|
});
|
|
24524
24590
|
}, []);
|
|
24525
|
-
const value = (0,
|
|
24526
|
-
return /* @__PURE__ */ (0,
|
|
24591
|
+
const value = (0, import_react139.useMemo)(() => ({ navState, setNavState }), [navState, setNavState]);
|
|
24592
|
+
return /* @__PURE__ */ (0, import_jsx_runtime193.jsx)(SideNavLayoutContext.Provider, { value, children: props.children });
|
|
24527
24593
|
}
|
|
24528
24594
|
function useSideNavLayoutContext() {
|
|
24529
|
-
return (0,
|
|
24595
|
+
return (0, import_react139.useContext)(SideNavLayoutContext) ?? { navState: "expanded", setNavState: () => {
|
|
24530
24596
|
} };
|
|
24531
24597
|
}
|
|
24532
24598
|
function useHasSideNavLayoutProvider() {
|
|
24533
|
-
return (0,
|
|
24599
|
+
return (0, import_react139.useContext)(SideNavLayoutContext) !== void 0;
|
|
24534
24600
|
}
|
|
24535
24601
|
|
|
24536
24602
|
// src/components/SideNav/SideNav.tsx
|
|
24537
|
-
var
|
|
24538
|
-
var
|
|
24603
|
+
var import_runtime112 = require("@homebound/truss/runtime");
|
|
24604
|
+
var import_jsx_runtime194 = require("react/jsx-runtime");
|
|
24539
24605
|
function SideNav(props) {
|
|
24540
24606
|
const {
|
|
24541
24607
|
top,
|
|
@@ -24548,8 +24614,8 @@ function SideNav(props) {
|
|
|
24548
24614
|
const tid = useTestIds(props, "sideNav");
|
|
24549
24615
|
const panelCollapsed = navState === "collapse";
|
|
24550
24616
|
const hideOnCollapse = panelCollapsed && !allItemsHaveIcons(items);
|
|
24551
|
-
return /* @__PURE__ */ (0,
|
|
24552
|
-
top !== void 0 && /* @__PURE__ */ (0,
|
|
24617
|
+
return /* @__PURE__ */ (0, import_jsx_runtime194.jsxs)("nav", { className: "df fdc h100 fs0", ...tid, children: [
|
|
24618
|
+
top !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { ...(0, import_runtime112.trussProps)({
|
|
24553
24619
|
flexShrink: "fs0",
|
|
24554
24620
|
paddingLeft: "pl2",
|
|
24555
24621
|
paddingRight: "pr2",
|
|
@@ -24560,7 +24626,7 @@ function SideNav(props) {
|
|
|
24560
24626
|
paddingBottom: "pb4"
|
|
24561
24627
|
} : {}
|
|
24562
24628
|
}), ...tid.top, children: top }),
|
|
24563
|
-
/* @__PURE__ */ (0,
|
|
24629
|
+
/* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { ...(0, import_runtime112.trussProps)({
|
|
24564
24630
|
flexGrow: "fg1",
|
|
24565
24631
|
overflowY: "oya",
|
|
24566
24632
|
display: "df",
|
|
@@ -24572,8 +24638,8 @@ function SideNav(props) {
|
|
|
24572
24638
|
...top === void 0 ? {
|
|
24573
24639
|
paddingTop: "pt5"
|
|
24574
24640
|
} : {}
|
|
24575
|
-
}), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ (0,
|
|
24576
|
-
footer !== void 0 && /* @__PURE__ */ (0,
|
|
24641
|
+
}), ...tid.items, children: !hideOnCollapse && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)(AppNavItems, { items, panelCollapsed }) }),
|
|
24642
|
+
footer !== void 0 && /* @__PURE__ */ (0, import_jsx_runtime194.jsx)("div", { ...(0, import_runtime112.trussProps)({
|
|
24577
24643
|
flexShrink: "fs0",
|
|
24578
24644
|
paddingLeft: "pl2",
|
|
24579
24645
|
paddingRight: "pr2",
|
|
@@ -24589,10 +24655,10 @@ function SideNav(props) {
|
|
|
24589
24655
|
}
|
|
24590
24656
|
|
|
24591
24657
|
// src/components/Snackbar/useSnackbar.tsx
|
|
24592
|
-
var
|
|
24658
|
+
var import_react140 = require("react");
|
|
24593
24659
|
function useSnackbar() {
|
|
24594
24660
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
24595
|
-
const onClose = (0,
|
|
24661
|
+
const onClose = (0, import_react140.useCallback)(
|
|
24596
24662
|
(noticeId) => {
|
|
24597
24663
|
setNotices((prev) => {
|
|
24598
24664
|
let returnValue = prev;
|
|
@@ -24609,7 +24675,7 @@ function useSnackbar() {
|
|
|
24609
24675
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
24610
24676
|
[]
|
|
24611
24677
|
);
|
|
24612
|
-
const triggerNotice = (0,
|
|
24678
|
+
const triggerNotice = (0, import_react140.useCallback)(
|
|
24613
24679
|
(props) => {
|
|
24614
24680
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
24615
24681
|
let maybeTimeout;
|
|
@@ -24638,8 +24704,8 @@ function useSnackbar() {
|
|
|
24638
24704
|
},
|
|
24639
24705
|
[onClose, setNotices]
|
|
24640
24706
|
);
|
|
24641
|
-
const closeNotice = (0,
|
|
24642
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
24707
|
+
const closeNotice = (0, import_react140.useCallback)((id) => onClose(id), [onClose]);
|
|
24708
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react140.useEffect)(() => {
|
|
24643
24709
|
setOffset({ bottom });
|
|
24644
24710
|
return () => setOffset({});
|
|
24645
24711
|
}, [bottom]);
|
|
@@ -24648,11 +24714,11 @@ function useSnackbar() {
|
|
|
24648
24714
|
var snackbarId = 1;
|
|
24649
24715
|
|
|
24650
24716
|
// src/components/Stepper.tsx
|
|
24651
|
-
var import_react140 = require("react");
|
|
24652
|
-
var import_react_aria62 = require("react-aria");
|
|
24653
|
-
var import_runtime112 = require("@homebound/truss/runtime");
|
|
24654
|
-
var import_jsx_runtime194 = require("react/jsx-runtime");
|
|
24655
24717
|
var import_react141 = require("react");
|
|
24718
|
+
var import_react_aria62 = require("react-aria");
|
|
24719
|
+
var import_runtime113 = require("@homebound/truss/runtime");
|
|
24720
|
+
var import_jsx_runtime195 = require("react/jsx-runtime");
|
|
24721
|
+
var import_react142 = require("react");
|
|
24656
24722
|
var __maybeInc20 = (inc) => {
|
|
24657
24723
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
24658
24724
|
};
|
|
@@ -24670,8 +24736,8 @@ function Stepper(props) {
|
|
|
24670
24736
|
const maxStepWidth = 200;
|
|
24671
24737
|
const minStepWidth = 100;
|
|
24672
24738
|
const gap = 8;
|
|
24673
|
-
return /* @__PURE__ */ (0,
|
|
24674
|
-
/* @__PURE__ */ (0,
|
|
24739
|
+
return /* @__PURE__ */ (0, import_jsx_runtime195.jsxs)("nav", { "aria-label": "steps", className: "df fdc w100", ...tid, children: [
|
|
24740
|
+
/* @__PURE__ */ (0, import_jsx_runtime195.jsx)("ol", { ...(0, import_runtime113.trussProps)({
|
|
24675
24741
|
padding: "p_0",
|
|
24676
24742
|
margin: "m_0",
|
|
24677
24743
|
listStyle: "lis_none",
|
|
@@ -24681,7 +24747,7 @@ function Stepper(props) {
|
|
|
24681
24747
|
}]
|
|
24682
24748
|
}), children: steps.map((step) => {
|
|
24683
24749
|
const isCurrent = currentStep === step.value;
|
|
24684
|
-
return /* @__PURE__ */ (0,
|
|
24750
|
+
return /* @__PURE__ */ (0, import_react142.createElement)("li", { ...(0, import_runtime113.trussProps)({
|
|
24685
24751
|
display: "df",
|
|
24686
24752
|
flexGrow: "fg1",
|
|
24687
24753
|
flexDirection: "fdc",
|
|
@@ -24691,9 +24757,9 @@ function Stepper(props) {
|
|
|
24691
24757
|
minWidth: ["mw_var", {
|
|
24692
24758
|
"--minWidth": `${minStepWidth}px`
|
|
24693
24759
|
}]
|
|
24694
|
-
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0,
|
|
24760
|
+
}), key: step.label, "aria-current": isCurrent, ...tid.step }, /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(StepButton, { ...step, onClick: () => onChange(step.value), isCurrent, ...tid.stepButton }));
|
|
24695
24761
|
}) }),
|
|
24696
|
-
/* @__PURE__ */ (0,
|
|
24762
|
+
/* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { ...(0, import_runtime113.trussProps)({
|
|
24697
24763
|
marginTop: "mt1",
|
|
24698
24764
|
backgroundColor: "bgGray300",
|
|
24699
24765
|
height: "h_4px",
|
|
@@ -24704,12 +24770,12 @@ function Stepper(props) {
|
|
|
24704
24770
|
"--minWidth": `${steps.length * minStepWidth + (steps.length - 1) * gap}px`
|
|
24705
24771
|
}],
|
|
24706
24772
|
width: "w100"
|
|
24707
|
-
}), children: /* @__PURE__ */ (0,
|
|
24773
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { ...(0, import_runtime113.trussProps)({
|
|
24708
24774
|
backgroundColor: "bgBlue600",
|
|
24709
24775
|
transition: "transition_width_200ms",
|
|
24710
24776
|
height: "h100",
|
|
24711
24777
|
width: ["w_var", {
|
|
24712
|
-
"--width": (0,
|
|
24778
|
+
"--width": (0, import_runtime113.maybeCssVar)(__maybeInc20(`${(lastCompletedStep + 1) / steps.length * 100}%`))
|
|
24713
24779
|
}]
|
|
24714
24780
|
}) }) })
|
|
24715
24781
|
] });
|
|
@@ -24726,7 +24792,7 @@ function StepButton(props) {
|
|
|
24726
24792
|
onPress: onClick,
|
|
24727
24793
|
isDisabled: disabled
|
|
24728
24794
|
};
|
|
24729
|
-
const ref = (0,
|
|
24795
|
+
const ref = (0, import_react141.useRef)(null);
|
|
24730
24796
|
const {
|
|
24731
24797
|
buttonProps,
|
|
24732
24798
|
isPressed
|
|
@@ -24745,7 +24811,7 @@ function StepButton(props) {
|
|
|
24745
24811
|
boxShadow: "bshFocus"
|
|
24746
24812
|
};
|
|
24747
24813
|
const tid = useTestIds(props, "stepButton");
|
|
24748
|
-
return /* @__PURE__ */ (0,
|
|
24814
|
+
return /* @__PURE__ */ (0, import_jsx_runtime195.jsxs)("button", { ref, ...buttonProps, ...focusProps, ...hoverProps, ...(0, import_runtime113.trussProps)({
|
|
24749
24815
|
...{
|
|
24750
24816
|
fontWeight: "fw6",
|
|
24751
24817
|
fontSize: "fz_14px",
|
|
@@ -24797,7 +24863,7 @@ function StepButton(props) {
|
|
|
24797
24863
|
} : {},
|
|
24798
24864
|
...isFocusVisible ? focusRingStyles2 : {}
|
|
24799
24865
|
}), ...tid[defaultTestId(label)], children: [
|
|
24800
|
-
/* @__PURE__ */ (0,
|
|
24866
|
+
/* @__PURE__ */ (0, import_jsx_runtime195.jsx)("span", { className: "fs0 mr_4px", children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(StepIcon, { state, isHovered, isPressed, isCurrent }) }),
|
|
24801
24867
|
label
|
|
24802
24868
|
] });
|
|
24803
24869
|
}
|
|
@@ -24808,12 +24874,12 @@ function StepIcon({
|
|
|
24808
24874
|
isCurrent = false
|
|
24809
24875
|
}) {
|
|
24810
24876
|
if (state === "error") {
|
|
24811
|
-
return /* @__PURE__ */ (0,
|
|
24877
|
+
return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(Icon, { icon: "errorCircle" });
|
|
24812
24878
|
}
|
|
24813
24879
|
if (state === "complete") {
|
|
24814
|
-
return /* @__PURE__ */ (0,
|
|
24880
|
+
return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)(Icon, { icon: "check" });
|
|
24815
24881
|
}
|
|
24816
|
-
return /* @__PURE__ */ (0,
|
|
24882
|
+
return /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { className: "w_24px h_24px df aic jcc", children: /* @__PURE__ */ (0, import_jsx_runtime195.jsx)("div", { ...(0, import_runtime113.trussProps)({
|
|
24817
24883
|
width: "w_10px",
|
|
24818
24884
|
height: "h_10px",
|
|
24819
24885
|
borderStyle: "bss",
|
|
@@ -24828,8 +24894,8 @@ function StepIcon({
|
|
|
24828
24894
|
|
|
24829
24895
|
// src/components/SuperDrawer/components/SuperDrawerHeader.tsx
|
|
24830
24896
|
var import_react_dom7 = require("react-dom");
|
|
24831
|
-
var
|
|
24832
|
-
var
|
|
24897
|
+
var import_runtime114 = require("@homebound/truss/runtime");
|
|
24898
|
+
var import_jsx_runtime196 = require("react/jsx-runtime");
|
|
24833
24899
|
function SuperDrawerHeader(props) {
|
|
24834
24900
|
const {
|
|
24835
24901
|
hideControls
|
|
@@ -24846,20 +24912,20 @@ function SuperDrawerHeader(props) {
|
|
|
24846
24912
|
const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
|
|
24847
24913
|
const isDetail = currentContent !== firstContent;
|
|
24848
24914
|
const tid = useTestIds({}, "superDrawerHeader");
|
|
24849
|
-
return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0,
|
|
24850
|
-
isStructuredProps(props) ? /* @__PURE__ */ (0,
|
|
24851
|
-
/* @__PURE__ */ (0,
|
|
24852
|
-
/* @__PURE__ */ (0,
|
|
24915
|
+
return (0, import_react_dom7.createPortal)(/* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "df aic jcsb gap3", ...tid, children: [
|
|
24916
|
+
isStructuredProps(props) ? /* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "df jcsb aic gap2 fg1", children: [
|
|
24917
|
+
/* @__PURE__ */ (0, import_jsx_runtime196.jsxs)("div", { className: "fg1 df aic gap2", children: [
|
|
24918
|
+
/* @__PURE__ */ (0, import_jsx_runtime196.jsx)("h1", { className: "fw6 fz_30px lh_36px", children: props.title }),
|
|
24853
24919
|
props.left
|
|
24854
24920
|
] }),
|
|
24855
|
-
props.right && /* @__PURE__ */ (0,
|
|
24856
|
-
] }) : /* @__PURE__ */ (0,
|
|
24857
|
-
!hideControls && /* @__PURE__ */ (0,
|
|
24921
|
+
props.right && /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { className: "fs0", children: props.right })
|
|
24922
|
+
] }) : /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { className: "fg1", children: props.children }),
|
|
24923
|
+
!hideControls && /* @__PURE__ */ (0, import_jsx_runtime196.jsx)("div", { ...(0, import_runtime114.trussProps)({
|
|
24858
24924
|
flexShrink: "fs0",
|
|
24859
24925
|
...isDetail ? {
|
|
24860
24926
|
visibility: "vh"
|
|
24861
24927
|
} : {}
|
|
24862
|
-
}), children: /* @__PURE__ */ (0,
|
|
24928
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime196.jsx)(ButtonGroup, { buttons: [{
|
|
24863
24929
|
icon: "chevronLeft",
|
|
24864
24930
|
onClick: () => onPrevClick && onPrevClick(),
|
|
24865
24931
|
disabled: !onPrevClick
|
|
@@ -24875,18 +24941,18 @@ function isStructuredProps(props) {
|
|
|
24875
24941
|
}
|
|
24876
24942
|
|
|
24877
24943
|
// src/components/SuperDrawer/ConfirmCloseModal.tsx
|
|
24878
|
-
var
|
|
24944
|
+
var import_jsx_runtime197 = require("react/jsx-runtime");
|
|
24879
24945
|
function ConfirmCloseModal(props) {
|
|
24880
24946
|
const { onClose, discardText = "Discard Changes", continueText = "Continue Editing" } = props;
|
|
24881
24947
|
const { modalState } = useBeamContext();
|
|
24882
24948
|
function closeModal() {
|
|
24883
24949
|
modalState.current = void 0;
|
|
24884
24950
|
}
|
|
24885
|
-
return /* @__PURE__ */ (0,
|
|
24886
|
-
/* @__PURE__ */ (0,
|
|
24887
|
-
/* @__PURE__ */ (0,
|
|
24888
|
-
/* @__PURE__ */ (0,
|
|
24889
|
-
/* @__PURE__ */ (0,
|
|
24951
|
+
return /* @__PURE__ */ (0, import_jsx_runtime197.jsxs)(import_jsx_runtime197.Fragment, { children: [
|
|
24952
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(ModalHeader, { children: "Are you sure you want to cancel?" }),
|
|
24953
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime197.jsx)("p", { children: "Any changes you've made so far will be lost." }) }),
|
|
24954
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsxs)(ModalFooter, { children: [
|
|
24955
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(
|
|
24890
24956
|
Button,
|
|
24891
24957
|
{
|
|
24892
24958
|
variant: "quaternary",
|
|
@@ -24897,7 +24963,7 @@ function ConfirmCloseModal(props) {
|
|
|
24897
24963
|
}
|
|
24898
24964
|
}
|
|
24899
24965
|
),
|
|
24900
|
-
/* @__PURE__ */ (0,
|
|
24966
|
+
/* @__PURE__ */ (0, import_jsx_runtime197.jsx)(Button, { label: continueText, onClick: closeModal })
|
|
24901
24967
|
] })
|
|
24902
24968
|
] });
|
|
24903
24969
|
}
|
|
@@ -24906,8 +24972,8 @@ function ConfirmCloseModal(props) {
|
|
|
24906
24972
|
var import_framer_motion6 = require("framer-motion");
|
|
24907
24973
|
|
|
24908
24974
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
24909
|
-
var
|
|
24910
|
-
var
|
|
24975
|
+
var import_react143 = require("react");
|
|
24976
|
+
var import_jsx_runtime198 = require("react/jsx-runtime");
|
|
24911
24977
|
function useSuperDrawer() {
|
|
24912
24978
|
const {
|
|
24913
24979
|
drawerContentStack: contentStack,
|
|
@@ -24919,7 +24985,7 @@ function useSuperDrawer() {
|
|
|
24919
24985
|
function canCloseDrawerDetails(i, doChange) {
|
|
24920
24986
|
for (const canCloseDrawerDetail of canCloseDetailsChecks.current[i] ?? []) {
|
|
24921
24987
|
if (!canClose(canCloseDrawerDetail)) {
|
|
24922
|
-
openModal({ content: /* @__PURE__ */ (0,
|
|
24988
|
+
openModal({ content: /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawerDetail }) });
|
|
24923
24989
|
return false;
|
|
24924
24990
|
}
|
|
24925
24991
|
}
|
|
@@ -24939,14 +25005,14 @@ function useSuperDrawer() {
|
|
|
24939
25005
|
for (const canCloseDrawer of canCloseChecks.current) {
|
|
24940
25006
|
if (!canClose(canCloseDrawer)) {
|
|
24941
25007
|
openModal({
|
|
24942
|
-
content: /* @__PURE__ */ (0,
|
|
25008
|
+
content: /* @__PURE__ */ (0, import_jsx_runtime198.jsx)(ConfirmCloseModal, { onClose: doChange, ...canCloseDrawer })
|
|
24943
25009
|
});
|
|
24944
25010
|
return;
|
|
24945
25011
|
}
|
|
24946
25012
|
}
|
|
24947
25013
|
doChange();
|
|
24948
25014
|
}
|
|
24949
|
-
const closeActions = (0,
|
|
25015
|
+
const closeActions = (0, import_react143.useMemo)(
|
|
24950
25016
|
() => {
|
|
24951
25017
|
return {
|
|
24952
25018
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -24981,7 +25047,7 @@ function useSuperDrawer() {
|
|
|
24981
25047
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
24982
25048
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
24983
25049
|
);
|
|
24984
|
-
const actions = (0,
|
|
25050
|
+
const actions = (0, import_react143.useMemo)(
|
|
24985
25051
|
() => {
|
|
24986
25052
|
return {
|
|
24987
25053
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -25034,8 +25100,8 @@ function canClose(canCloseCheck) {
|
|
|
25034
25100
|
}
|
|
25035
25101
|
|
|
25036
25102
|
// src/components/SuperDrawer/SuperDrawerContent.tsx
|
|
25037
|
-
var
|
|
25038
|
-
var
|
|
25103
|
+
var import_runtime115 = require("@homebound/truss/runtime");
|
|
25104
|
+
var import_jsx_runtime199 = require("react/jsx-runtime");
|
|
25039
25105
|
var SuperDrawerContent = ({
|
|
25040
25106
|
children,
|
|
25041
25107
|
actions
|
|
@@ -25055,17 +25121,17 @@ var SuperDrawerContent = ({
|
|
|
25055
25121
|
} = firstContent ?? {};
|
|
25056
25122
|
function wrapWithMotionAndMaybeBack(children2) {
|
|
25057
25123
|
if (kind === "open") {
|
|
25058
|
-
return /* @__PURE__ */ (0,
|
|
25124
|
+
return /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(import_framer_motion6.motion.div, { className: "pt3 pb3 pr3 pl3 fg1 oa", children: children2 }, "content");
|
|
25059
25125
|
} else if (kind === "detail") {
|
|
25060
|
-
return /* @__PURE__ */ (0,
|
|
25126
|
+
return /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(import_framer_motion6.motion.div, { className: "pl3 pr3 pt2 pb3 fg1", animate: {
|
|
25061
25127
|
overflow: "auto"
|
|
25062
25128
|
}, transition: {
|
|
25063
25129
|
overflow: {
|
|
25064
25130
|
delay: 0.3
|
|
25065
25131
|
}
|
|
25066
25132
|
}, children: [
|
|
25067
|
-
/* @__PURE__ */ (0,
|
|
25068
|
-
/* @__PURE__ */ (0,
|
|
25133
|
+
/* @__PURE__ */ (0, import_jsx_runtime199.jsx)(Button, { label: "Back", icon: "chevronLeft", variant: "tertiary", onClick: closeDrawerDetail }),
|
|
25134
|
+
/* @__PURE__ */ (0, import_jsx_runtime199.jsx)(import_framer_motion6.motion.div, { initial: {
|
|
25069
25135
|
x: width2,
|
|
25070
25136
|
opacity: 0
|
|
25071
25137
|
}, animate: {
|
|
@@ -25083,7 +25149,7 @@ var SuperDrawerContent = ({
|
|
|
25083
25149
|
}, className: "pt2", children: children2 })
|
|
25084
25150
|
] }, "content");
|
|
25085
25151
|
} else {
|
|
25086
|
-
return /* @__PURE__ */ (0,
|
|
25152
|
+
return /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(import_framer_motion6.motion.div, { ...(0, import_runtime115.mergeProps)(void 0, {
|
|
25087
25153
|
overflow: "auto"
|
|
25088
25154
|
}, {
|
|
25089
25155
|
paddingTop: "pt3",
|
|
@@ -25094,9 +25160,9 @@ var SuperDrawerContent = ({
|
|
|
25094
25160
|
}) }, "content");
|
|
25095
25161
|
}
|
|
25096
25162
|
}
|
|
25097
|
-
return /* @__PURE__ */ (0,
|
|
25163
|
+
return /* @__PURE__ */ (0, import_jsx_runtime199.jsxs)(import_jsx_runtime199.Fragment, { children: [
|
|
25098
25164
|
wrapWithMotionAndMaybeBack(children),
|
|
25099
|
-
actions && /* @__PURE__ */ (0,
|
|
25165
|
+
actions && /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("footer", { className: "bts_solid btw_1px bcGray200 pt3 pb3 pr3 pl3 df aic jcfe", children: /* @__PURE__ */ (0, import_jsx_runtime199.jsx)("div", { className: "df gap1", children: actions.map((buttonProps, i) => /* @__PURE__ */ (0, import_jsx_runtime199.jsx)(Button, { ...buttonProps }, i)) }) })
|
|
25100
25166
|
] });
|
|
25101
25167
|
};
|
|
25102
25168
|
|
|
@@ -25139,7 +25205,7 @@ function visit(rows, fn) {
|
|
|
25139
25205
|
}
|
|
25140
25206
|
|
|
25141
25207
|
// src/components/TagGroup.tsx
|
|
25142
|
-
var
|
|
25208
|
+
var import_jsx_runtime200 = require("react/jsx-runtime");
|
|
25143
25209
|
function TagGroup(props) {
|
|
25144
25210
|
const {
|
|
25145
25211
|
tags,
|
|
@@ -25147,30 +25213,30 @@ function TagGroup(props) {
|
|
|
25147
25213
|
...otherProps
|
|
25148
25214
|
} = props;
|
|
25149
25215
|
const tid = useTestIds(otherProps, "tagGroup");
|
|
25150
|
-
return /* @__PURE__ */ (0,
|
|
25151
|
-
tags.map((tag) => /* @__PURE__ */ (0,
|
|
25152
|
-
onEdit && /* @__PURE__ */ (0,
|
|
25216
|
+
return /* @__PURE__ */ (0, import_jsx_runtime200.jsxs)("div", { ...tid, className: "df aic fww gap1", children: [
|
|
25217
|
+
tags.map((tag) => /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(Tag, { ...tag, variant: "secondary" }, tag.text)),
|
|
25218
|
+
onEdit && /* @__PURE__ */ (0, import_jsx_runtime200.jsx)("span", { className: "ml1 fw4 fz_14px lh_20px", children: /* @__PURE__ */ (0, import_jsx_runtime200.jsx)(Button, { label: "Edit", variant: "text", onClick: onEdit, ...tid.edit }) })
|
|
25153
25219
|
] });
|
|
25154
25220
|
}
|
|
25155
25221
|
|
|
25156
25222
|
// src/components/Toast/useToast.tsx
|
|
25157
|
-
var
|
|
25223
|
+
var import_react144 = require("react");
|
|
25158
25224
|
function useToast() {
|
|
25159
25225
|
const { setNotice, clear } = useToastContext();
|
|
25160
|
-
const showToast = (0,
|
|
25226
|
+
const showToast = (0, import_react144.useCallback)((props) => setNotice(props), [setNotice]);
|
|
25161
25227
|
return { showToast, clear };
|
|
25162
25228
|
}
|
|
25163
25229
|
|
|
25164
25230
|
// src/layouts/SideNavLayout/SideNavLayout.tsx
|
|
25165
|
-
var
|
|
25166
|
-
var
|
|
25231
|
+
var import_runtime116 = require("@homebound/truss/runtime");
|
|
25232
|
+
var import_jsx_runtime201 = require("react/jsx-runtime");
|
|
25167
25233
|
var __maybeInc21 = (inc) => {
|
|
25168
25234
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25169
25235
|
};
|
|
25170
25236
|
function SideNavLayout(props) {
|
|
25171
25237
|
const hasProvider = useHasSideNavLayoutProvider();
|
|
25172
|
-
if (hasProvider) return /* @__PURE__ */ (0,
|
|
25173
|
-
return /* @__PURE__ */ (0,
|
|
25238
|
+
if (hasProvider) return /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(SideNavLayoutContent, { ...props });
|
|
25239
|
+
return /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(SideNavLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(SideNavLayoutContent, { ...props }) });
|
|
25174
25240
|
}
|
|
25175
25241
|
function SideNavLayoutContent(props) {
|
|
25176
25242
|
const {
|
|
@@ -25192,7 +25258,7 @@ function SideNavLayoutContent(props) {
|
|
|
25192
25258
|
const railOffsetPx = !showRail ? 0 : !bp.mdAndUp || collapsed ? railCollapsedWidthPx : railWidthPx;
|
|
25193
25259
|
const navTop = bannerAndNavbarChromeTop();
|
|
25194
25260
|
const railViewportHeight = `calc(var(${beamLayoutViewportHeightVar}, 100vh) - var(${beamEnvironmentBannerLayoutHeightVar}, 0px) - var(${beamNavbarLayoutHeightVar}, 0px))`;
|
|
25195
|
-
const rail = showRail && /* @__PURE__ */ (0,
|
|
25261
|
+
const rail = showRail && /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("div", { ...(0, import_runtime116.trussProps)({
|
|
25196
25262
|
...{
|
|
25197
25263
|
display: "df",
|
|
25198
25264
|
flexDirection: "fdc",
|
|
@@ -25216,14 +25282,14 @@ function SideNavLayoutContent(props) {
|
|
|
25216
25282
|
position: "sticky",
|
|
25217
25283
|
left: "left0",
|
|
25218
25284
|
zIndex: ["z_var", {
|
|
25219
|
-
"--zIndex": (0,
|
|
25285
|
+
"--zIndex": (0, import_runtime116.maybeCssVar)(zIndices.sideNav)
|
|
25220
25286
|
}],
|
|
25221
25287
|
top: ["top_var", {
|
|
25222
|
-
"--top": (0,
|
|
25288
|
+
"--top": (0, import_runtime116.maybeCssVar)(__maybeInc21(navTop))
|
|
25223
25289
|
}],
|
|
25224
25290
|
alignSelf: "asfs",
|
|
25225
25291
|
height: ["h_var", {
|
|
25226
|
-
"--height": (0,
|
|
25292
|
+
"--height": (0, import_runtime116.maybeCssVar)(__maybeInc21(railViewportHeight))
|
|
25227
25293
|
}],
|
|
25228
25294
|
width: ["w_var", {
|
|
25229
25295
|
"--width": `${collapsed ? railCollapsedWidthPx : railWidthPx}px`
|
|
@@ -25233,11 +25299,11 @@ function SideNavLayoutContent(props) {
|
|
|
25233
25299
|
position: "fixed",
|
|
25234
25300
|
left: "left0",
|
|
25235
25301
|
top: ["top_var", {
|
|
25236
|
-
"--top": (0,
|
|
25302
|
+
"--top": (0, import_runtime116.maybeCssVar)(__maybeInc21(navTop))
|
|
25237
25303
|
}],
|
|
25238
25304
|
bottom: "bottom0",
|
|
25239
25305
|
zIndex: ["z_var", {
|
|
25240
|
-
"--zIndex": (0,
|
|
25306
|
+
"--zIndex": (0, import_runtime116.maybeCssVar)(zIndices.sideNav)
|
|
25241
25307
|
}]
|
|
25242
25308
|
},
|
|
25243
25309
|
...collapsed ? {
|
|
@@ -25249,18 +25315,18 @@ function SideNavLayoutContent(props) {
|
|
|
25249
25315
|
}
|
|
25250
25316
|
}
|
|
25251
25317
|
}), ...tid.sideNav, children: [
|
|
25252
|
-
showCollapseToggle && /* @__PURE__ */ (0,
|
|
25253
|
-
/* @__PURE__ */ (0,
|
|
25318
|
+
showCollapseToggle && /* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { className: "absolute right2 top2 z2", children: /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(IconButton, { icon: collapsed ? "menuOpen" : "menuClose", label: collapsed ? "Expand navigation" : "Collapse navigation", onClick: () => setNavState(collapsed ? "expanded" : "collapse"), ...tid.toggle }) }),
|
|
25319
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { className: "fg1 mh0 df fdc", ...tid.sideNavContent, children: /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(SideNav, { ...sideNav }) })
|
|
25254
25320
|
] });
|
|
25255
|
-
return /* @__PURE__ */ (0,
|
|
25321
|
+
return /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime201.jsxs)("div", { ...(0, import_runtime116.mergeProps)(void 0, {
|
|
25256
25322
|
[beamSideNavLayoutWidthVar]: `${railOffsetPx}px`
|
|
25257
25323
|
}, {
|
|
25258
25324
|
display: "df",
|
|
25259
25325
|
flexDirection: "fdr",
|
|
25260
25326
|
width: "w100"
|
|
25261
25327
|
}), ...tid, children: [
|
|
25262
|
-
contrastRail ? /* @__PURE__ */ (0,
|
|
25263
|
-
/* @__PURE__ */ (0,
|
|
25328
|
+
contrastRail ? /* @__PURE__ */ (0, import_jsx_runtime201.jsx)(ContrastScope, { children: rail }) : rail,
|
|
25329
|
+
/* @__PURE__ */ (0, import_jsx_runtime201.jsx)("div", { ...(0, import_runtime116.trussProps)({
|
|
25264
25330
|
display: "df",
|
|
25265
25331
|
flexDirection: "fdc",
|
|
25266
25332
|
flexGrow: "fg1",
|
|
@@ -25276,8 +25342,8 @@ function SideNavLayoutContent(props) {
|
|
|
25276
25342
|
}
|
|
25277
25343
|
|
|
25278
25344
|
// src/layouts/EnvironmentBannerLayout/EnvironmentBannerLayout.tsx
|
|
25279
|
-
var
|
|
25280
|
-
var
|
|
25345
|
+
var import_runtime117 = require("@homebound/truss/runtime");
|
|
25346
|
+
var import_jsx_runtime202 = require("react/jsx-runtime");
|
|
25281
25347
|
var __maybeInc22 = (inc) => {
|
|
25282
25348
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25283
25349
|
};
|
|
@@ -25293,38 +25359,38 @@ function EnvironmentBannerLayout(props) {
|
|
|
25293
25359
|
[beamEnvironmentBannerLayoutHeightVar]: `${bannerHeightPx}px`
|
|
25294
25360
|
};
|
|
25295
25361
|
const innerWidth = `var(${beamLayoutViewportWidthVar}, 100vw)`;
|
|
25296
|
-
return /* @__PURE__ */ (0,
|
|
25362
|
+
return /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(EnvironmentBannerLayoutHeightProvider, { value: bannerHeightPx, children: /* @__PURE__ */ (0, import_jsx_runtime202.jsxs)("div", { ...(0, import_runtime117.mergeProps)(void 0, style, {
|
|
25297
25363
|
display: "df",
|
|
25298
25364
|
flexDirection: "fdc",
|
|
25299
25365
|
width: "wfc",
|
|
25300
25366
|
minWidth: "mw100"
|
|
25301
25367
|
}), ...tid, children: [
|
|
25302
|
-
showBanner && environmentBanner && /* @__PURE__ */ (0,
|
|
25368
|
+
showBanner && environmentBanner && /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("div", { ...(0, import_runtime117.mergeProps)(void 0, {
|
|
25303
25369
|
height: environmentBannerSizePx
|
|
25304
25370
|
}, {
|
|
25305
25371
|
flexShrink: "fs0",
|
|
25306
25372
|
width: "w100"
|
|
25307
|
-
}), children: /* @__PURE__ */ (0,
|
|
25373
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)("div", { ...(0, import_runtime117.trussProps)({
|
|
25308
25374
|
position: "fixed",
|
|
25309
25375
|
top: "top0",
|
|
25310
25376
|
left: "left0",
|
|
25311
25377
|
zIndex: ["z_var", {
|
|
25312
|
-
"--zIndex": (0,
|
|
25378
|
+
"--zIndex": (0, import_runtime117.maybeCssVar)(zIndices.environmentBanner)
|
|
25313
25379
|
}],
|
|
25314
25380
|
width: ["w_var", {
|
|
25315
|
-
"--width": (0,
|
|
25381
|
+
"--width": (0, import_runtime117.maybeCssVar)(__maybeInc22(innerWidth))
|
|
25316
25382
|
}]
|
|
25317
|
-
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0,
|
|
25383
|
+
}), ...tid.bannerSticky, children: /* @__PURE__ */ (0, import_jsx_runtime202.jsx)(EnvironmentBanner, { ...environmentBanner, ...tid.environmentBanner }) }) }),
|
|
25318
25384
|
children
|
|
25319
25385
|
] }) }) });
|
|
25320
25386
|
}
|
|
25321
25387
|
|
|
25322
25388
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
25323
|
-
var
|
|
25324
|
-
var
|
|
25389
|
+
var import_react148 = require("react");
|
|
25390
|
+
var import_runtime118 = require("@homebound/truss/runtime");
|
|
25325
25391
|
|
|
25326
25392
|
// src/layouts/useAutoHideOnScroll.ts
|
|
25327
|
-
var
|
|
25393
|
+
var import_react145 = require("react");
|
|
25328
25394
|
var THRESHOLD = 80;
|
|
25329
25395
|
function getInitialAutoHideState() {
|
|
25330
25396
|
if (typeof window === "undefined" || window.scrollY <= 0) {
|
|
@@ -25334,15 +25400,15 @@ function getInitialAutoHideState() {
|
|
|
25334
25400
|
}
|
|
25335
25401
|
function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
25336
25402
|
const initial = getInitialAutoHideState();
|
|
25337
|
-
const [state, setState] = (0,
|
|
25338
|
-
const stateRef = (0,
|
|
25339
|
-
const [atTop, setAtTop] = (0,
|
|
25340
|
-
const atTopRef = (0,
|
|
25341
|
-
const getTopOffsetRef = (0,
|
|
25403
|
+
const [state, setState] = (0, import_react145.useState)(initial.state);
|
|
25404
|
+
const stateRef = (0, import_react145.useRef)(initial.state);
|
|
25405
|
+
const [atTop, setAtTop] = (0, import_react145.useState)(initial.atTop);
|
|
25406
|
+
const atTopRef = (0, import_react145.useRef)(initial.atTop);
|
|
25407
|
+
const getTopOffsetRef = (0, import_react145.useRef)(getTopOffset);
|
|
25342
25408
|
getTopOffsetRef.current = getTopOffset;
|
|
25343
|
-
const lastScrollY = (0,
|
|
25344
|
-
const lastScrollHeight = (0,
|
|
25345
|
-
(0,
|
|
25409
|
+
const lastScrollY = (0, import_react145.useRef)(Number.POSITIVE_INFINITY);
|
|
25410
|
+
const lastScrollHeight = (0, import_react145.useRef)(0);
|
|
25411
|
+
(0, import_react145.useLayoutEffect)(() => {
|
|
25346
25412
|
if (!enabled) {
|
|
25347
25413
|
stateRef.current = "static";
|
|
25348
25414
|
atTopRef.current = true;
|
|
@@ -25414,35 +25480,35 @@ function useAutoHideOnScroll(spacerRef, enabled, getTopOffset) {
|
|
|
25414
25480
|
}
|
|
25415
25481
|
|
|
25416
25482
|
// src/layouts/useMeasuredHeight.ts
|
|
25417
|
-
var
|
|
25418
|
-
var
|
|
25483
|
+
var import_utils169 = require("@react-aria/utils");
|
|
25484
|
+
var import_react146 = require("react");
|
|
25419
25485
|
function useMeasuredHeight(ref, enabled) {
|
|
25420
|
-
const [height, setHeight] = (0,
|
|
25421
|
-
const syncElementHeight = (0,
|
|
25486
|
+
const [height, setHeight] = (0, import_react146.useState)(0);
|
|
25487
|
+
const syncElementHeight = (0, import_react146.useCallback)(() => {
|
|
25422
25488
|
const el = ref.current;
|
|
25423
25489
|
const next = el ? Math.round(el.getBoundingClientRect().height) : 0;
|
|
25424
25490
|
setHeight((prev) => prev === next ? prev : next);
|
|
25425
25491
|
}, [ref]);
|
|
25426
|
-
(0,
|
|
25427
|
-
(0,
|
|
25492
|
+
(0, import_utils169.useResizeObserver)({ ref, onResize: syncElementHeight });
|
|
25493
|
+
(0, import_react146.useLayoutEffect)(() => {
|
|
25428
25494
|
syncElementHeight();
|
|
25429
25495
|
}, [enabled, syncElementHeight]);
|
|
25430
25496
|
return height;
|
|
25431
25497
|
}
|
|
25432
25498
|
|
|
25433
25499
|
// src/layouts/NavbarLayout/NavbarLayoutHeightContext.tsx
|
|
25434
|
-
var
|
|
25435
|
-
var
|
|
25436
|
-
var NavbarLayoutHeightContext = (0,
|
|
25500
|
+
var import_react147 = require("react");
|
|
25501
|
+
var import_jsx_runtime203 = require("react/jsx-runtime");
|
|
25502
|
+
var NavbarLayoutHeightContext = (0, import_react147.createContext)(0);
|
|
25437
25503
|
function NavbarLayoutHeightProvider({ value, children }) {
|
|
25438
|
-
return /* @__PURE__ */ (0,
|
|
25504
|
+
return /* @__PURE__ */ (0, import_jsx_runtime203.jsx)(NavbarLayoutHeightContext.Provider, { value, children });
|
|
25439
25505
|
}
|
|
25440
25506
|
function useNavbarLayoutHeight() {
|
|
25441
|
-
return (0,
|
|
25507
|
+
return (0, import_react147.useContext)(NavbarLayoutHeightContext);
|
|
25442
25508
|
}
|
|
25443
25509
|
|
|
25444
25510
|
// src/layouts/NavbarLayout/NavbarLayout.tsx
|
|
25445
|
-
var
|
|
25511
|
+
var import_jsx_runtime204 = require("react/jsx-runtime");
|
|
25446
25512
|
var __maybeInc23 = (inc) => {
|
|
25447
25513
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25448
25514
|
};
|
|
@@ -25452,8 +25518,8 @@ function NavbarLayout(props) {
|
|
|
25452
25518
|
children
|
|
25453
25519
|
} = props;
|
|
25454
25520
|
const tid = useTestIds(props, "navbarLayout");
|
|
25455
|
-
const navMetricsRef = (0,
|
|
25456
|
-
const spacerRef = (0,
|
|
25521
|
+
const navMetricsRef = (0, import_react148.useRef)(null);
|
|
25522
|
+
const spacerRef = (0, import_react148.useRef)(null);
|
|
25457
25523
|
const navHeight = useMeasuredHeight(navMetricsRef, true);
|
|
25458
25524
|
const {
|
|
25459
25525
|
state: autoHideState,
|
|
@@ -25471,10 +25537,10 @@ function NavbarLayout(props) {
|
|
|
25471
25537
|
position: "sticky",
|
|
25472
25538
|
left: "left0",
|
|
25473
25539
|
zIndex: ["z_var", {
|
|
25474
|
-
"--zIndex": (0,
|
|
25540
|
+
"--zIndex": (0, import_runtime118.maybeCssVar)(zIndices.navbar)
|
|
25475
25541
|
}],
|
|
25476
25542
|
width: ["w_var", {
|
|
25477
|
-
"--width": (0,
|
|
25543
|
+
"--width": (0, import_runtime118.maybeCssVar)(__maybeInc23(innerWidth))
|
|
25478
25544
|
}]
|
|
25479
25545
|
}
|
|
25480
25546
|
) : (
|
|
@@ -25483,10 +25549,10 @@ function NavbarLayout(props) {
|
|
|
25483
25549
|
position: "fixed",
|
|
25484
25550
|
left: "left0",
|
|
25485
25551
|
zIndex: ["z_var", {
|
|
25486
|
-
"--zIndex": (0,
|
|
25552
|
+
"--zIndex": (0, import_runtime118.maybeCssVar)(zIndices.navbar)
|
|
25487
25553
|
}],
|
|
25488
25554
|
width: ["w_var", {
|
|
25489
|
-
"--width": (0,
|
|
25555
|
+
"--width": (0, import_runtime118.maybeCssVar)(__maybeInc23(innerWidth))
|
|
25490
25556
|
}],
|
|
25491
25557
|
transition: "transitionTop"
|
|
25492
25558
|
}
|
|
@@ -25495,25 +25561,25 @@ function NavbarLayout(props) {
|
|
|
25495
25561
|
const innerStyle = autoHideState !== "static" ? {
|
|
25496
25562
|
top: autoHideState === "revealed" ? bannerTop : `calc(${bannerTop} - ${navHeight}px)`
|
|
25497
25563
|
} : void 0;
|
|
25498
|
-
const navbarEl = (0,
|
|
25499
|
-
return /* @__PURE__ */ (0,
|
|
25564
|
+
const navbarEl = (0, import_react148.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(Navbar, { ...navbar }), [navbar]);
|
|
25565
|
+
return /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)(NavbarLayoutHeightProvider, { value: navbarOffsetPx, children: /* @__PURE__ */ (0, import_jsx_runtime204.jsxs)("div", { ...(0, import_runtime118.mergeProps)(void 0, cssVars, {
|
|
25500
25566
|
display: "df",
|
|
25501
25567
|
flexDirection: "fdc",
|
|
25502
25568
|
width: "wfc",
|
|
25503
25569
|
minWidth: "mw100"
|
|
25504
25570
|
}), ...tid, children: [
|
|
25505
|
-
/* @__PURE__ */ (0,
|
|
25571
|
+
/* @__PURE__ */ (0, import_jsx_runtime204.jsx)("div", { ref: spacerRef, ...(0, import_runtime118.mergeProps)(void 0, {
|
|
25506
25572
|
height: navHeight
|
|
25507
25573
|
}, {
|
|
25508
25574
|
flexShrink: "fs0",
|
|
25509
25575
|
width: "w100"
|
|
25510
|
-
}), children: /* @__PURE__ */ (0,
|
|
25511
|
-
/* @__PURE__ */ (0,
|
|
25576
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime204.jsx)("div", { ref: navMetricsRef, ...(0, import_runtime118.mergeProps)(void 0, innerStyle, innerCss), ...tid.navbar, children: navbarEl }) }),
|
|
25577
|
+
/* @__PURE__ */ (0, import_jsx_runtime204.jsx)("div", { className: "df fdc mh0 mw100 w100", ...tid.body, children })
|
|
25512
25578
|
] }) }) });
|
|
25513
25579
|
}
|
|
25514
25580
|
|
|
25515
25581
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
25516
|
-
var
|
|
25582
|
+
var import_react149 = require("react");
|
|
25517
25583
|
|
|
25518
25584
|
// src/layouts/useBannerAndNavbarHeight.ts
|
|
25519
25585
|
function useBannerAndNavbarHeight() {
|
|
@@ -25521,8 +25587,8 @@ function useBannerAndNavbarHeight() {
|
|
|
25521
25587
|
}
|
|
25522
25588
|
|
|
25523
25589
|
// src/layouts/PageHeaderLayout/PageHeaderLayout.tsx
|
|
25524
|
-
var
|
|
25525
|
-
var
|
|
25590
|
+
var import_runtime119 = require("@homebound/truss/runtime");
|
|
25591
|
+
var import_jsx_runtime205 = require("react/jsx-runtime");
|
|
25526
25592
|
var __maybeInc24 = (inc) => {
|
|
25527
25593
|
return typeof inc === "string" ? inc : `calc(var(--t-spacing) * ${inc})`;
|
|
25528
25594
|
};
|
|
@@ -25533,11 +25599,11 @@ function PageHeaderLayout(props) {
|
|
|
25533
25599
|
} = props;
|
|
25534
25600
|
const tid = useTestIds(props, "pageHeaderLayout");
|
|
25535
25601
|
const bannerAndNavbarHeight = useBannerAndNavbarHeight();
|
|
25536
|
-
const bannerAndNavbarHeightRef = (0,
|
|
25602
|
+
const bannerAndNavbarHeightRef = (0, import_react149.useRef)(bannerAndNavbarHeight);
|
|
25537
25603
|
bannerAndNavbarHeightRef.current = bannerAndNavbarHeight;
|
|
25538
|
-
const getBannerAndNavbarHeight = (0,
|
|
25539
|
-
const headerMetricsRef = (0,
|
|
25540
|
-
const spacerRef = (0,
|
|
25604
|
+
const getBannerAndNavbarHeight = (0, import_react149.useCallback)(() => bannerAndNavbarHeightRef.current, []);
|
|
25605
|
+
const headerMetricsRef = (0, import_react149.useRef)(null);
|
|
25606
|
+
const spacerRef = (0, import_react149.useRef)(null);
|
|
25541
25607
|
const headerHeight = useMeasuredHeight(headerMetricsRef, true);
|
|
25542
25608
|
const {
|
|
25543
25609
|
state: autoHideState,
|
|
@@ -25553,43 +25619,43 @@ function PageHeaderLayout(props) {
|
|
|
25553
25619
|
const innerCss = autoHideState === "static" ? {
|
|
25554
25620
|
position: "sticky",
|
|
25555
25621
|
left: ["left_var", {
|
|
25556
|
-
"--left": (0,
|
|
25622
|
+
"--left": (0, import_runtime119.maybeCssVar)(__maybeInc24(headerLeft))
|
|
25557
25623
|
}],
|
|
25558
25624
|
width: ["w_var", {
|
|
25559
|
-
"--width": (0,
|
|
25625
|
+
"--width": (0, import_runtime119.maybeCssVar)(__maybeInc24(headerWidth))
|
|
25560
25626
|
}],
|
|
25561
25627
|
zIndex: ["z_var", {
|
|
25562
|
-
"--zIndex": (0,
|
|
25628
|
+
"--zIndex": (0, import_runtime119.maybeCssVar)(zIndices.pageStickyHeader)
|
|
25563
25629
|
}]
|
|
25564
25630
|
} : {
|
|
25565
25631
|
position: "fixed",
|
|
25566
25632
|
left: ["left_var", {
|
|
25567
|
-
"--left": (0,
|
|
25633
|
+
"--left": (0, import_runtime119.maybeCssVar)(__maybeInc24(headerLeft))
|
|
25568
25634
|
}],
|
|
25569
25635
|
width: ["w_var", {
|
|
25570
|
-
"--width": (0,
|
|
25636
|
+
"--width": (0, import_runtime119.maybeCssVar)(__maybeInc24(headerWidth))
|
|
25571
25637
|
}],
|
|
25572
25638
|
zIndex: ["z_var", {
|
|
25573
|
-
"--zIndex": (0,
|
|
25639
|
+
"--zIndex": (0, import_runtime119.maybeCssVar)(zIndices.pageStickyHeader)
|
|
25574
25640
|
}],
|
|
25575
25641
|
transition: "transitionTop"
|
|
25576
25642
|
};
|
|
25577
25643
|
const innerStyle = autoHideState !== "static" ? {
|
|
25578
25644
|
top: autoHideState === "revealed" ? outerTop : `calc(${outerTop} - ${headerHeight}px)`
|
|
25579
25645
|
} : void 0;
|
|
25580
|
-
const pageHeaderEl = (0,
|
|
25581
|
-
return /* @__PURE__ */ (0,
|
|
25646
|
+
const pageHeaderEl = (0, import_react149.useMemo)(() => /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(PageHeader2, { ...pageHeader }), [pageHeader]);
|
|
25647
|
+
return /* @__PURE__ */ (0, import_jsx_runtime205.jsx)(DocumentScrollLayoutProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime205.jsxs)("div", { ...(0, import_runtime119.mergeProps)(void 0, cssVars, {
|
|
25582
25648
|
display: "df",
|
|
25583
25649
|
flexDirection: "fdc",
|
|
25584
25650
|
width: "w100"
|
|
25585
25651
|
}), ...tid, children: [
|
|
25586
|
-
/* @__PURE__ */ (0,
|
|
25652
|
+
/* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { ref: spacerRef, ...(0, import_runtime119.mergeProps)(void 0, {
|
|
25587
25653
|
height: headerHeight
|
|
25588
25654
|
}, {
|
|
25589
25655
|
flexShrink: "fs0",
|
|
25590
25656
|
width: "w100"
|
|
25591
|
-
}), children: /* @__PURE__ */ (0,
|
|
25592
|
-
/* @__PURE__ */ (0,
|
|
25657
|
+
}), children: /* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { ref: headerMetricsRef, ...(0, import_runtime119.mergeProps)(void 0, innerStyle, innerCss), ...tid.pageHeader, children: pageHeaderEl }) }),
|
|
25658
|
+
/* @__PURE__ */ (0, import_jsx_runtime205.jsx)("div", { className: "df fdc fg1 mh0 w100", ...tid.body, children })
|
|
25593
25659
|
] }) });
|
|
25594
25660
|
}
|
|
25595
25661
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -25628,6 +25694,7 @@ function PageHeaderLayout(props) {
|
|
|
25628
25694
|
BoundTextField,
|
|
25629
25695
|
BoundToggleChipGroupField,
|
|
25630
25696
|
BoundTreeSelectField,
|
|
25697
|
+
Breadcrumbs,
|
|
25631
25698
|
Breakpoints,
|
|
25632
25699
|
Button,
|
|
25633
25700
|
ButtonDatePicker,
|