@homebound/beam 2.417.8 → 2.417.9
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 +272 -323
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +95 -0
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +0 -2
- package/dist/index.d.ts +0 -2
- package/dist/index.js +6 -57
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -5262,17 +5262,17 @@ function Chips(props) {
|
|
|
5262
5262
|
// src/components/Table/GridTable.tsx
|
|
5263
5263
|
var import_memoize_one = __toESM(require("memoize-one"), 1);
|
|
5264
5264
|
var import_mobx10 = require("mobx");
|
|
5265
|
-
var
|
|
5265
|
+
var import_react73 = __toESM(require("react"), 1);
|
|
5266
5266
|
var import_react_virtuoso2 = require("react-virtuoso");
|
|
5267
5267
|
|
|
5268
5268
|
// src/components/Table/GridTableApi.ts
|
|
5269
5269
|
var import_mobx9 = require("mobx");
|
|
5270
5270
|
var import_mobx_utils = require("mobx-utils");
|
|
5271
|
-
var
|
|
5271
|
+
var import_react69 = require("react");
|
|
5272
5272
|
|
|
5273
5273
|
// src/components/Table/utils/TableState.ts
|
|
5274
5274
|
var import_mobx8 = require("mobx");
|
|
5275
|
-
var
|
|
5275
|
+
var import_react68 = __toESM(require("react"), 1);
|
|
5276
5276
|
|
|
5277
5277
|
// src/components/Table/utils/ColumnStates.ts
|
|
5278
5278
|
var import_change_case5 = require("change-case");
|
|
@@ -5511,7 +5511,7 @@ function CollapseToggle(props) {
|
|
|
5511
5511
|
}
|
|
5512
5512
|
|
|
5513
5513
|
// src/components/Table/components/SelectToggle.tsx
|
|
5514
|
-
var
|
|
5514
|
+
var import_react67 = require("react");
|
|
5515
5515
|
|
|
5516
5516
|
// src/inputs/Autocomplete.tsx
|
|
5517
5517
|
var import_react50 = require("react");
|
|
@@ -8584,7 +8584,6 @@ function RowImpl(props) {
|
|
|
8584
8584
|
const rowStyle = rowStyles?.[row.kind];
|
|
8585
8585
|
const RowTag = as === "table" ? "tr" : "div";
|
|
8586
8586
|
const sortOn = tableState.sortConfig?.on;
|
|
8587
|
-
const revealOnRowHoverClass = "revealOnRowHover";
|
|
8588
8587
|
const showRowHoverColor = !reservedRowKinds.includes(row.kind) && !omitRowHover && style.rowHoverColor !== "none";
|
|
8589
8588
|
const rowStyleCellCss = maybeApplyFunction(row, rowStyle?.cellCss);
|
|
8590
8589
|
const levelStyle = style.levels && (typeof style.levels === "function" ? style.levels(level) : style.levels[level]);
|
|
@@ -8614,11 +8613,7 @@ function RowImpl(props) {
|
|
|
8614
8613
|
...isLastBodyRow && style.lastRowCss,
|
|
8615
8614
|
// Apply `cursorPointer` to the row if it has a link or `onClick` value.
|
|
8616
8615
|
...(rowStyle?.rowLink || rowStyle?.onClick) && { "&:hover": Css.cursorPointer.$ },
|
|
8617
|
-
...maybeApplyFunction(row, rowStyle?.rowCss)
|
|
8618
|
-
...{
|
|
8619
|
-
[`> .${revealOnRowHoverClass} > *`]: Css.vh.$,
|
|
8620
|
-
[`:hover > .${revealOnRowHoverClass} > *`]: Css.vv.$
|
|
8621
|
-
}
|
|
8616
|
+
...maybeApplyFunction(row, rowStyle?.rowCss)
|
|
8622
8617
|
// keptLastRowCss is now applied per-cell in cellCss below
|
|
8623
8618
|
};
|
|
8624
8619
|
let currentColspan = 1;
|
|
@@ -8680,7 +8675,6 @@ function RowImpl(props) {
|
|
|
8680
8675
|
};
|
|
8681
8676
|
const maybeContent = applyRowFn(column2, row, rowApi, level, isExpanded, dragData);
|
|
8682
8677
|
currentColspan = isGridCellContent(maybeContent) && typeof maybeContent.colspan === "number" ? maybeContent.colspan : isExpandableHeader ? numExpandedColumns + 1 : 1;
|
|
8683
|
-
const revealOnRowHover = isGridCellContent(maybeContent) ? maybeContent.revealOnRowHover : false;
|
|
8684
8678
|
const canSortColumn = sortOn === "client" && column2.clientSideSort !== false || sortOn === "server" && !!column2.serverSideSortKey;
|
|
8685
8679
|
const alignment = getAlignment(column2, maybeContent);
|
|
8686
8680
|
const justificationCss = getJustification(column2, maybeContent, as, alignment);
|
|
@@ -8770,20 +8764,10 @@ function RowImpl(props) {
|
|
|
8770
8764
|
// If we have a 'levelIndent' defined, then subtract that amount from the first content column's width to ensure all columns will still line up properly
|
|
8771
8765
|
width: `calc(${columnSizes.slice(columnIndex, columnIndex + currentColspan).join(" + ")}${applyFirstContentColumnStyles && levelIndent ? ` - ${levelIndent}px` : ""})`
|
|
8772
8766
|
};
|
|
8773
|
-
const cellClassNames = revealOnRowHover ? revealOnRowHoverClass : void 0;
|
|
8774
8767
|
const cellOnClick = applyCellHighlight ? () => api.setActiveCellId(cellId) : void 0;
|
|
8775
8768
|
const tooltip = isGridCellContent(maybeContent) ? maybeContent.tooltip : void 0;
|
|
8776
8769
|
const renderFn = (rowStyle?.renderCell || rowStyle?.rowLink) && wrapAction ? rowLinkRenderFn(as, currentColspan) : isHeader || isTotals || isExpandableHeader ? headerRenderFn(column2, as, currentColspan) : rowStyle?.onClick && wrapAction ? rowClickRenderFn(as, api, currentColspan) : defaultRenderFn(as, currentColspan);
|
|
8777
|
-
const cellElement = renderFn(
|
|
8778
|
-
columnIndex,
|
|
8779
|
-
cellCss,
|
|
8780
|
-
content,
|
|
8781
|
-
row,
|
|
8782
|
-
rowStyle,
|
|
8783
|
-
cellClassNames,
|
|
8784
|
-
cellOnClick,
|
|
8785
|
-
tooltip
|
|
8786
|
-
);
|
|
8770
|
+
const cellElement = renderFn(columnIndex, cellCss, content, row, rowStyle, void 0, cellOnClick, tooltip);
|
|
8787
8771
|
if (!disableColumnResizing && isHeader && columnIndex < columns.length - 1 && currentColspan === 1 && !column2.isAction) {
|
|
8788
8772
|
const currentSizeStr = columnSizes[columnIndex];
|
|
8789
8773
|
const minWidthPx = column2.mw ? parseInt(column2.mw.replace("px", ""), 10) : 100;
|
|
@@ -12325,9 +12309,8 @@ var radioDisabled = {
|
|
|
12325
12309
|
};
|
|
12326
12310
|
|
|
12327
12311
|
// src/inputs/RichTextField.tsx
|
|
12328
|
-
var import_react60 = require("@emotion/react");
|
|
12329
12312
|
var import_dompurify = __toESM(require("dompurify"), 1);
|
|
12330
|
-
var
|
|
12313
|
+
var import_react60 = require("react");
|
|
12331
12314
|
|
|
12332
12315
|
// src/inputs/RichTextField.mock.tsx
|
|
12333
12316
|
var import_change_case4 = require("change-case");
|
|
@@ -12379,16 +12362,16 @@ function RichTextFieldImpl(props) {
|
|
|
12379
12362
|
readOnly,
|
|
12380
12363
|
fullWidth = fieldProps?.fullWidth ?? false
|
|
12381
12364
|
} = props;
|
|
12382
|
-
const [editor, setEditor] = (0,
|
|
12383
|
-
const editorElement = (0,
|
|
12384
|
-
const currentHtml = (0,
|
|
12385
|
-
const onChangeRef = (0,
|
|
12365
|
+
const [editor, setEditor] = (0, import_react60.useState)();
|
|
12366
|
+
const editorElement = (0, import_react60.useRef)();
|
|
12367
|
+
const currentHtml = (0, import_react60.useRef)(void 0);
|
|
12368
|
+
const onChangeRef = (0, import_react60.useRef)(onChange);
|
|
12386
12369
|
onChangeRef.current = onChange;
|
|
12387
|
-
const onBlurRef = (0,
|
|
12370
|
+
const onBlurRef = (0, import_react60.useRef)(onBlur);
|
|
12388
12371
|
onBlurRef.current = onBlur;
|
|
12389
|
-
const onFocusRef = (0,
|
|
12372
|
+
const onFocusRef = (0, import_react60.useRef)(onFocus);
|
|
12390
12373
|
onFocusRef.current = onFocus;
|
|
12391
|
-
const id = (0,
|
|
12374
|
+
const id = (0, import_react60.useMemo)(() => {
|
|
12392
12375
|
if (readOnly) return;
|
|
12393
12376
|
const id2 = `trix-editor-${trixId}`;
|
|
12394
12377
|
trixId++;
|
|
@@ -12429,7 +12412,7 @@ function RichTextFieldImpl(props) {
|
|
|
12429
12412
|
window.addEventListener("trix-initialize", onEditorInit);
|
|
12430
12413
|
return id2;
|
|
12431
12414
|
}, [readOnly]);
|
|
12432
|
-
(0,
|
|
12415
|
+
(0, import_react60.useEffect)(() => {
|
|
12433
12416
|
if (!readOnly && editor && value !== currentHtml.current) {
|
|
12434
12417
|
editor.loadHTML(value || "");
|
|
12435
12418
|
}
|
|
@@ -12438,17 +12421,16 @@ function RichTextFieldImpl(props) {
|
|
|
12438
12421
|
if (!readOnly) {
|
|
12439
12422
|
return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { css: Css.w100.if(!fullWidth).maxw("550px").$, children: [
|
|
12440
12423
|
label && /* @__PURE__ */ (0, import_jsx_runtime72.jsx)(Label, { labelProps: {}, label }),
|
|
12441
|
-
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", {
|
|
12424
|
+
/* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { className: "beam-trix-editor", children: [
|
|
12442
12425
|
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)("input", { type: "hidden", id: `input-${id}`, value }),
|
|
12443
|
-
(0,
|
|
12426
|
+
(0, import_react60.createElement)("trix-editor", {
|
|
12444
12427
|
id,
|
|
12445
12428
|
input: `input-${id}`,
|
|
12446
12429
|
// Autofocus attribute is case sensitive since this is standard HTML
|
|
12447
12430
|
...autoFocus ? { autofocus: true } : {},
|
|
12448
12431
|
...placeholder ? { placeholder } : {}
|
|
12449
12432
|
})
|
|
12450
|
-
] })
|
|
12451
|
-
/* @__PURE__ */ (0, import_jsx_runtime72.jsx)(import_react60.Global, { styles: [tributeOverrides] })
|
|
12433
|
+
] })
|
|
12452
12434
|
] });
|
|
12453
12435
|
} else {
|
|
12454
12436
|
return /* @__PURE__ */ (0, import_jsx_runtime72.jsxs)("div", { css: Css.w100.if(!fullWidth).maxw("550px").$, children: [
|
|
@@ -12484,46 +12466,13 @@ function attachTributeJs(mergeTags, editorElement) {
|
|
|
12484
12466
|
} catch {
|
|
12485
12467
|
}
|
|
12486
12468
|
}
|
|
12487
|
-
var trixCssOverrides = {
|
|
12488
|
-
...Css.relative.add({ wordBreak: "break-word" }).br4.bcGray300.ba.$,
|
|
12489
|
-
// Put the toolbar on the bottom
|
|
12490
|
-
...Css.df.fdcr.gap1.$,
|
|
12491
|
-
// Some basic copy/paste from TextFieldBase
|
|
12492
|
-
"& trix-editor": Css.bgWhite.sm.gray900.bn.p1.$,
|
|
12493
|
-
// Highlight on focus
|
|
12494
|
-
"&:focus-within": Css.bcBlue700.$,
|
|
12495
|
-
"& trix-toolbar": Css.m1.$,
|
|
12496
|
-
// Make the buttons closer to ours
|
|
12497
|
-
"& .trix-button:not(:first-of-type)": Css.bn.$,
|
|
12498
|
-
"& .trix-button-group": Css.bn.m0.$,
|
|
12499
|
-
"& .trix-button": Css.bgWhite.sm.$,
|
|
12500
|
-
// Height is hard-coded to 1.6 in trix, and the default width is wider than we want
|
|
12501
|
-
"& .trix-button--icon": Css.w("1.6em").p0.mxPx(4).bn.$,
|
|
12502
|
-
// icons are hard-coded svg's, so this is a simpler way to get lighter gray for now
|
|
12503
|
-
"& .trix-button--icon::before": Css.add("opacity", "0.3").$,
|
|
12504
|
-
// trix defaults to is active = blue bg - turn that off + make icon darker
|
|
12505
|
-
"& .trix-button.trix-active": Css.bgWhite.add("opacity", "0.7").$,
|
|
12506
|
-
// We don't support file attachment yet, so hide that control for now.
|
|
12507
|
-
"& .trix-button-group--file-tools": Css.dn.$,
|
|
12508
|
-
// Other things that are unused and we want to hide
|
|
12509
|
-
"& .trix-button--icon-heading-1": Css.dn.$,
|
|
12510
|
-
"& .trix-button--icon-code": Css.dn.$,
|
|
12511
|
-
"& .trix-button--icon-quote": Css.dn.$,
|
|
12512
|
-
"& .trix-button--icon-increase-nesting-level": Css.dn.$,
|
|
12513
|
-
"& .trix-button--icon-decrease-nesting-level": Css.dn.$,
|
|
12514
|
-
"& .trix-button-group--history-tools": Css.dn.$
|
|
12515
|
-
};
|
|
12516
|
-
var tributeOverrides = {
|
|
12517
|
-
".tribute-container": Css.add({ minWidth: "300px" }).$,
|
|
12518
|
-
".tribute-container > ul": Css.sm.bgWhite.ba.br4.bcBlue700.oh.$
|
|
12519
|
-
};
|
|
12520
12469
|
function extractIdsFromMentions(mergeTags, content) {
|
|
12521
12470
|
return mergeTags.filter((tag) => content.includes(`@${tag}`));
|
|
12522
12471
|
}
|
|
12523
12472
|
var trixId = 1;
|
|
12524
12473
|
|
|
12525
12474
|
// src/inputs/SelectField.tsx
|
|
12526
|
-
var
|
|
12475
|
+
var import_react61 = require("react");
|
|
12527
12476
|
var import_jsx_runtime73 = require("@emotion/react/jsx-runtime");
|
|
12528
12477
|
function SelectField(props) {
|
|
12529
12478
|
const {
|
|
@@ -12534,7 +12483,7 @@ function SelectField(props) {
|
|
|
12534
12483
|
value,
|
|
12535
12484
|
...otherProps
|
|
12536
12485
|
} = props;
|
|
12537
|
-
const values = (0,
|
|
12486
|
+
const values = (0, import_react61.useMemo)(() => [value], [value]);
|
|
12538
12487
|
return /* @__PURE__ */ (0, import_jsx_runtime73.jsx)(
|
|
12539
12488
|
ComboBoxBase,
|
|
12540
12489
|
{
|
|
@@ -12554,7 +12503,7 @@ function SelectField(props) {
|
|
|
12554
12503
|
}
|
|
12555
12504
|
|
|
12556
12505
|
// src/inputs/Switch.tsx
|
|
12557
|
-
var
|
|
12506
|
+
var import_react62 = require("react");
|
|
12558
12507
|
var import_react_aria35 = require("react-aria");
|
|
12559
12508
|
var import_jsx_runtime74 = require("@emotion/react/jsx-runtime");
|
|
12560
12509
|
function Switch(props) {
|
|
@@ -12575,7 +12524,7 @@ function Switch(props) {
|
|
|
12575
12524
|
const isDisabled = !!disabled;
|
|
12576
12525
|
const ariaProps = { isSelected, isDisabled, ...otherProps };
|
|
12577
12526
|
const state = toToggleState(isSelected, onChange);
|
|
12578
|
-
const ref = (0,
|
|
12527
|
+
const ref = (0, import_react62.useRef)(null);
|
|
12579
12528
|
const { inputProps } = (0, import_react_aria35.useSwitch)({ ...ariaProps, "aria-label": label }, state, ref);
|
|
12580
12529
|
const { isFocusVisible: isFocusVisibleFromEvents, focusProps } = (0, import_react_aria35.useFocusRing)(otherProps);
|
|
12581
12530
|
const { hoverProps, isHovered: isHoveredFromEvents } = (0, import_react_aria35.useHover)(ariaProps);
|
|
@@ -12654,7 +12603,7 @@ function switchCircleSelectedStyles(isCompact) {
|
|
|
12654
12603
|
}
|
|
12655
12604
|
|
|
12656
12605
|
// src/inputs/TextAreaField.tsx
|
|
12657
|
-
var
|
|
12606
|
+
var import_react63 = require("react");
|
|
12658
12607
|
var import_react_aria36 = require("react-aria");
|
|
12659
12608
|
var import_jsx_runtime75 = require("@emotion/react/jsx-runtime");
|
|
12660
12609
|
function TextAreaField(props) {
|
|
@@ -12672,8 +12621,8 @@ function TextAreaField(props) {
|
|
|
12672
12621
|
const isDisabled = !!disabled;
|
|
12673
12622
|
const isReadOnly = !!readOnly;
|
|
12674
12623
|
const textFieldProps = { ...otherProps, value, isDisabled, isReadOnly };
|
|
12675
|
-
const inputRef = (0,
|
|
12676
|
-
const inputWrapRef = (0,
|
|
12624
|
+
const inputRef = (0, import_react63.useRef)(null);
|
|
12625
|
+
const inputWrapRef = (0, import_react63.useRef)(null);
|
|
12677
12626
|
useGrowingTextField({ inputRef, inputWrapRef, value, maxLines });
|
|
12678
12627
|
const { labelProps, inputProps } = (0, import_react_aria36.useTextField)(
|
|
12679
12628
|
{
|
|
@@ -12711,7 +12660,7 @@ function TextAreaField(props) {
|
|
|
12711
12660
|
}
|
|
12712
12661
|
|
|
12713
12662
|
// src/inputs/TextField.tsx
|
|
12714
|
-
var
|
|
12663
|
+
var import_react64 = require("react");
|
|
12715
12664
|
var import_react_aria37 = require("react-aria");
|
|
12716
12665
|
var import_jsx_runtime76 = require("@emotion/react/jsx-runtime");
|
|
12717
12666
|
function TextField(props) {
|
|
@@ -12739,7 +12688,7 @@ function TextField(props) {
|
|
|
12739
12688
|
validationState: errorMsg ? "invalid" : "valid",
|
|
12740
12689
|
value
|
|
12741
12690
|
};
|
|
12742
|
-
const inputRef = (0,
|
|
12691
|
+
const inputRef = (0, import_react64.useRef)(null);
|
|
12743
12692
|
const { labelProps, inputProps } = (0, import_react_aria37.useTextField)(
|
|
12744
12693
|
{
|
|
12745
12694
|
...textFieldProps,
|
|
@@ -12775,13 +12724,13 @@ function TextField(props) {
|
|
|
12775
12724
|
}
|
|
12776
12725
|
|
|
12777
12726
|
// src/inputs/ToggleButton.tsx
|
|
12778
|
-
var
|
|
12727
|
+
var import_react65 = require("react");
|
|
12779
12728
|
var import_react_aria38 = require("react-aria");
|
|
12780
12729
|
var import_react_stately15 = require("react-stately");
|
|
12781
12730
|
var import_jsx_runtime77 = require("@emotion/react/jsx-runtime");
|
|
12782
12731
|
function ToggleButton(props) {
|
|
12783
12732
|
const { selected: isSelected = false, disabled = false, label, onChange, icon, __storyState, ...otherProps } = props;
|
|
12784
|
-
const [asyncInProgress, setAsyncInProgress] = (0,
|
|
12733
|
+
const [asyncInProgress, setAsyncInProgress] = (0, import_react65.useState)(false);
|
|
12785
12734
|
const isDisabled = !!disabled || asyncInProgress;
|
|
12786
12735
|
const ariaProps = { "aria-label": label, isSelected, isDisabled, ...otherProps };
|
|
12787
12736
|
const state = (0, import_react_stately15.useToggleState)({
|
|
@@ -12795,8 +12744,8 @@ function ToggleButton(props) {
|
|
|
12795
12744
|
return result;
|
|
12796
12745
|
}
|
|
12797
12746
|
});
|
|
12798
|
-
const labelRef = (0,
|
|
12799
|
-
const ref = (0,
|
|
12747
|
+
const labelRef = (0, import_react65.useRef)(null);
|
|
12748
|
+
const ref = (0, import_react65.useRef)(null);
|
|
12800
12749
|
const tid = useTestIds(otherProps, label);
|
|
12801
12750
|
const { isPressed: isPressedFromEvents, pressProps } = (0, import_react_aria38.usePress)({ ref: labelRef, isDisabled });
|
|
12802
12751
|
const { inputProps } = (0, import_react_aria38.useSwitch)(ariaProps, state, ref);
|
|
@@ -12835,7 +12784,7 @@ var toggleFocusStyles = Css.bshFocus.$;
|
|
|
12835
12784
|
var togglePressStyles = Css.bgGray300.$;
|
|
12836
12785
|
|
|
12837
12786
|
// src/inputs/ToggleChipGroup.tsx
|
|
12838
|
-
var
|
|
12787
|
+
var import_react66 = require("react");
|
|
12839
12788
|
var import_react_aria39 = require("react-aria");
|
|
12840
12789
|
var import_react_stately16 = require("react-stately");
|
|
12841
12790
|
var import_jsx_runtime78 = require("@emotion/react/jsx-runtime");
|
|
@@ -12903,7 +12852,7 @@ function ToggleChip2(props) {
|
|
|
12903
12852
|
} = props;
|
|
12904
12853
|
const isDisabled = !!disabled;
|
|
12905
12854
|
const isReadOnly = !!readonly;
|
|
12906
|
-
const ref = (0,
|
|
12855
|
+
const ref = (0, import_react66.useRef)(null);
|
|
12907
12856
|
const { inputProps } = (0, import_react_aria39.useCheckboxGroupItem)({ value, "aria-label": label, isReadOnly, isDisabled }, groupState, ref);
|
|
12908
12857
|
const { isFocusVisible, focusProps } = (0, import_react_aria39.useFocusRing)();
|
|
12909
12858
|
const tooltip = resolveTooltip(disabled);
|
|
@@ -12938,7 +12887,7 @@ function ToggleChip2(props) {
|
|
|
12938
12887
|
// src/components/Table/components/SelectToggle.tsx
|
|
12939
12888
|
var import_jsx_runtime79 = require("@emotion/react/jsx-runtime");
|
|
12940
12889
|
function SelectToggle({ id, disabled }) {
|
|
12941
|
-
const { tableState } = (0,
|
|
12890
|
+
const { tableState } = (0, import_react67.useContext)(TableStateContext);
|
|
12942
12891
|
const state = useComputed(() => tableState.getSelected(id), [tableState]);
|
|
12943
12892
|
const selected = state === "checked" ? true : state === "unchecked" ? false : "indeterminate";
|
|
12944
12893
|
return /* @__PURE__ */ (0, import_jsx_runtime79.jsx)(
|
|
@@ -13677,7 +13626,7 @@ var TableState = class {
|
|
|
13677
13626
|
this.rowStates.maybeSetRowDraggedOver(id, draggedOver, requireSameParentRow);
|
|
13678
13627
|
}
|
|
13679
13628
|
};
|
|
13680
|
-
var TableStateContext =
|
|
13629
|
+
var TableStateContext = import_react68.default.createContext({
|
|
13681
13630
|
get tableState() {
|
|
13682
13631
|
throw new Error("No TableStateContext provider");
|
|
13683
13632
|
},
|
|
@@ -13707,7 +13656,7 @@ function deriveSortState(currentSortState, clickedKey, initialSortState) {
|
|
|
13707
13656
|
|
|
13708
13657
|
// src/components/Table/GridTableApi.ts
|
|
13709
13658
|
function useGridTableApi() {
|
|
13710
|
-
return (0,
|
|
13659
|
+
return (0, import_react69.useMemo)(() => new GridTableApiImpl(), []);
|
|
13711
13660
|
}
|
|
13712
13661
|
var GridTableApiImpl = class {
|
|
13713
13662
|
// This is public to GridTable but not exported outside of Beam
|
|
@@ -13861,10 +13810,10 @@ function maybeApply(maybeFn) {
|
|
|
13861
13810
|
}
|
|
13862
13811
|
|
|
13863
13812
|
// src/components/Table/hooks/useColumnResizeHandlers.ts
|
|
13864
|
-
var
|
|
13813
|
+
var import_react70 = require("react");
|
|
13865
13814
|
function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWidth, setResizedWidths) {
|
|
13866
|
-
const hasLockedColumnsRef = (0,
|
|
13867
|
-
const distributeAdjustment = (0,
|
|
13815
|
+
const hasLockedColumnsRef = (0, import_react70.useRef)(false);
|
|
13816
|
+
const distributeAdjustment = (0, import_react70.useCallback)(
|
|
13868
13817
|
(rightColumns, totalRightWidth, adjustment) => {
|
|
13869
13818
|
const updates = {};
|
|
13870
13819
|
let remainingAdjustment = adjustment;
|
|
@@ -13879,7 +13828,7 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13879
13828
|
},
|
|
13880
13829
|
[]
|
|
13881
13830
|
);
|
|
13882
|
-
const calculateResizeUpdates = (0,
|
|
13831
|
+
const calculateResizeUpdates = (0, import_react70.useCallback)(
|
|
13883
13832
|
(columnId, newWidth, columnIndex) => {
|
|
13884
13833
|
if (!tableWidth || !columnSizes || columnSizes.length === 0) {
|
|
13885
13834
|
return null;
|
|
@@ -13925,7 +13874,7 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13925
13874
|
},
|
|
13926
13875
|
[tableWidth, columnSizes, columns, distributeAdjustment]
|
|
13927
13876
|
);
|
|
13928
|
-
const calculatePreviewWidth = (0,
|
|
13877
|
+
const calculatePreviewWidth = (0, import_react70.useCallback)(
|
|
13929
13878
|
(columnId, newWidth, columnIndex) => {
|
|
13930
13879
|
const result = calculateResizeUpdates(columnId, newWidth, columnIndex);
|
|
13931
13880
|
if (!result) {
|
|
@@ -13935,7 +13884,7 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13935
13884
|
},
|
|
13936
13885
|
[calculateResizeUpdates]
|
|
13937
13886
|
);
|
|
13938
|
-
const handleColumnResize = (0,
|
|
13887
|
+
const handleColumnResize = (0, import_react70.useCallback)(
|
|
13939
13888
|
(columnId, newWidth, columnIndex) => {
|
|
13940
13889
|
const result = calculateResizeUpdates(columnId, newWidth, columnIndex);
|
|
13941
13890
|
if (!result) {
|
|
@@ -13972,10 +13921,10 @@ function useColumnResizeHandlers(columns, columnSizes, tableWidth, setResizedWid
|
|
|
13972
13921
|
}
|
|
13973
13922
|
|
|
13974
13923
|
// src/components/Table/hooks/useScrollStorage.ts
|
|
13975
|
-
var
|
|
13924
|
+
var import_react71 = require("react");
|
|
13976
13925
|
function useScrollStorage(tableId, enabled = true) {
|
|
13977
13926
|
const storageKey = `scrollPosition_${window.location.pathname}${window.location.search}_${tableId}`;
|
|
13978
|
-
return (0,
|
|
13927
|
+
return (0, import_react71.useMemo)(
|
|
13979
13928
|
() => ({
|
|
13980
13929
|
getScrollIndex: () => {
|
|
13981
13930
|
if (!enabled) return void 0;
|
|
@@ -13991,10 +13940,10 @@ function useScrollStorage(tableId, enabled = true) {
|
|
|
13991
13940
|
}
|
|
13992
13941
|
|
|
13993
13942
|
// src/hooks/useRenderCount.ts
|
|
13994
|
-
var
|
|
13943
|
+
var import_react72 = require("react");
|
|
13995
13944
|
function useRenderCount() {
|
|
13996
|
-
const ref = (0,
|
|
13997
|
-
const getCount = (0,
|
|
13945
|
+
const ref = (0, import_react72.useRef)(/* @__PURE__ */ new Map());
|
|
13946
|
+
const getCount = (0, import_react72.useCallback)((id) => {
|
|
13998
13947
|
const count = ref.current.get(id) || 1;
|
|
13999
13948
|
ref.current.set(id, count + 1);
|
|
14000
13949
|
return { "data-render": count };
|
|
@@ -14045,12 +13994,12 @@ function GridTable(props) {
|
|
|
14045
13994
|
csvPrefixRows,
|
|
14046
13995
|
disableColumnResizing = false
|
|
14047
13996
|
} = props;
|
|
14048
|
-
const columnsWithIds = (0,
|
|
14049
|
-
const virtuosoRef = (0,
|
|
14050
|
-
const virtuosoRangeRef = (0,
|
|
14051
|
-
const resizeRef = (0,
|
|
14052
|
-
const tableContainerRef = (0,
|
|
14053
|
-
const api = (0,
|
|
13997
|
+
const columnsWithIds = (0, import_react73.useMemo)(() => assignDefaultColumnIds(_columns), [_columns]);
|
|
13998
|
+
const virtuosoRef = (0, import_react73.useRef)(null);
|
|
13999
|
+
const virtuosoRangeRef = (0, import_react73.useRef)(null);
|
|
14000
|
+
const resizeRef = (0, import_react73.useRef)(null);
|
|
14001
|
+
const tableContainerRef = (0, import_react73.useRef)(null);
|
|
14002
|
+
const api = (0, import_react73.useMemo)(
|
|
14054
14003
|
() => {
|
|
14055
14004
|
const api2 = props.api ?? new GridTableApiImpl();
|
|
14056
14005
|
api2.init(persistCollapse, virtuosoRef, virtuosoRangeRef);
|
|
@@ -14063,8 +14012,8 @@ function GridTable(props) {
|
|
|
14063
14012
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
14064
14013
|
[props.api]
|
|
14065
14014
|
);
|
|
14066
|
-
const [draggedRow, _setDraggedRow] = (0,
|
|
14067
|
-
const draggedRowRef = (0,
|
|
14015
|
+
const [draggedRow, _setDraggedRow] = (0, import_react73.useState)(void 0);
|
|
14016
|
+
const draggedRowRef = (0, import_react73.useRef)(draggedRow);
|
|
14068
14017
|
const setDraggedRow = (row) => {
|
|
14069
14018
|
draggedRowRef.current = row;
|
|
14070
14019
|
_setDraggedRow(row);
|
|
@@ -14072,7 +14021,7 @@ function GridTable(props) {
|
|
|
14072
14021
|
const style = resolveStyles(maybeStyle);
|
|
14073
14022
|
const { tableState } = api;
|
|
14074
14023
|
tableState.onRowSelect = onRowSelect;
|
|
14075
|
-
(0,
|
|
14024
|
+
(0, import_react73.useEffect)(() => {
|
|
14076
14025
|
(0, import_mobx10.runInAction)(() => {
|
|
14077
14026
|
tableState.setRows(rows);
|
|
14078
14027
|
tableState.setColumns(columnsWithIds, visibleColumnsStorageKey);
|
|
@@ -14096,7 +14045,7 @@ function GridTable(props) {
|
|
|
14096
14045
|
visibleColumnsStorageKey,
|
|
14097
14046
|
disableColumnResizing
|
|
14098
14047
|
);
|
|
14099
|
-
(0,
|
|
14048
|
+
(0, import_react73.useEffect)(() => {
|
|
14100
14049
|
api.resetColumnWidthsFn = !disableColumnResizing ? resetColumnWidths : void 0;
|
|
14101
14050
|
}, [api, resetColumnWidths, disableColumnResizing]);
|
|
14102
14051
|
const { handleColumnResize, calculatePreviewWidth } = useColumnResizeHandlers(
|
|
@@ -14260,7 +14209,7 @@ function GridTable(props) {
|
|
|
14260
14209
|
const borderless = style?.presentationSettings?.borderless;
|
|
14261
14210
|
const typeScale = style?.presentationSettings?.typeScale;
|
|
14262
14211
|
const borderOnHover = style?.presentationSettings?.borderOnHover;
|
|
14263
|
-
const fieldProps = (0,
|
|
14212
|
+
const fieldProps = (0, import_react73.useMemo)(
|
|
14264
14213
|
() => ({
|
|
14265
14214
|
labelStyle: "hidden",
|
|
14266
14215
|
numberAlignment: "right",
|
|
@@ -14274,7 +14223,7 @@ function GridTable(props) {
|
|
|
14274
14223
|
[borderOnHover, borderless, typeScale]
|
|
14275
14224
|
);
|
|
14276
14225
|
const _as = as === "virtual" && runningInJest ? "div" : as;
|
|
14277
|
-
const rowStateContext = (0,
|
|
14226
|
+
const rowStateContext = (0, import_react73.useMemo)(
|
|
14278
14227
|
() => ({ tableState, tableContainerRef }),
|
|
14279
14228
|
[tableState, tableContainerRef]
|
|
14280
14229
|
);
|
|
@@ -14400,11 +14349,11 @@ function renderTable(style, id, columns, visibleDataRows, keptSelectedRows, firs
|
|
|
14400
14349
|
);
|
|
14401
14350
|
}
|
|
14402
14351
|
function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, firstRowMessage, stickyHeader, xss, virtuosoRef, virtuosoRangeRef, tableHeadRows, _stickyOffset, infiniteScroll, _tableContainerRef, persistScrollPosition = infiniteScroll === void 0) {
|
|
14403
|
-
const { footerStyle, listStyle } = (0,
|
|
14352
|
+
const { footerStyle, listStyle } = (0, import_react73.useMemo)(() => {
|
|
14404
14353
|
const { paddingBottom, ...otherRootStyles } = style.rootCss ?? {};
|
|
14405
14354
|
return { footerStyle: { paddingBottom }, listStyle: { ...style, rootCss: otherRootStyles } };
|
|
14406
14355
|
}, [style]);
|
|
14407
|
-
const [fetchMoreInProgress, setFetchMoreInProgress] = (0,
|
|
14356
|
+
const [fetchMoreInProgress, setFetchMoreInProgress] = (0, import_react73.useState)(false);
|
|
14408
14357
|
const { getScrollIndex, setScrollIndex } = useScrollStorage(id, persistScrollPosition);
|
|
14409
14358
|
const savedScrollIndex = getScrollIndex();
|
|
14410
14359
|
const topItemCount = stickyHeader ? tableHeadRows.length : 0;
|
|
@@ -14418,7 +14367,7 @@ function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, fi
|
|
|
14418
14367
|
...validatedScrollIndex !== void 0 ? { initialTopMostItemIndex: validatedScrollIndex } : {},
|
|
14419
14368
|
components: {
|
|
14420
14369
|
// Applying a zIndex: 2 to ensure it stays on top of sticky columns
|
|
14421
|
-
TopItemList:
|
|
14370
|
+
TopItemList: import_react73.default.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
14422
14371
|
"div",
|
|
14423
14372
|
{
|
|
14424
14373
|
...props,
|
|
@@ -14503,7 +14452,7 @@ function renderVirtual(style, id, columns, visibleDataRows, keptSelectedRows, fi
|
|
|
14503
14452
|
}
|
|
14504
14453
|
var VirtualRoot = (0, import_memoize_one.default)(
|
|
14505
14454
|
(gs, _columns, id, xss) => {
|
|
14506
|
-
return
|
|
14455
|
+
return import_react73.default.forwardRef(function VirtualRoot2({ style, children }, ref) {
|
|
14507
14456
|
return /* @__PURE__ */ (0, import_jsx_runtime81.jsx)(
|
|
14508
14457
|
"div",
|
|
14509
14458
|
{
|
|
@@ -14567,7 +14516,7 @@ function ToggleChips(props) {
|
|
|
14567
14516
|
|
|
14568
14517
|
// src/components/Accordion.tsx
|
|
14569
14518
|
var import_utils68 = require("@react-aria/utils");
|
|
14570
|
-
var
|
|
14519
|
+
var import_react74 = require("react");
|
|
14571
14520
|
var import_react_aria40 = require("react-aria");
|
|
14572
14521
|
var import_jsx_runtime84 = require("@emotion/react/jsx-runtime");
|
|
14573
14522
|
function Accordion(props) {
|
|
@@ -14589,29 +14538,29 @@ function Accordion(props) {
|
|
|
14589
14538
|
} = props;
|
|
14590
14539
|
const tid = useTestIds(props, "accordion");
|
|
14591
14540
|
const id = (0, import_utils68.useId)();
|
|
14592
|
-
const [expanded, setExpanded] = (0,
|
|
14541
|
+
const [expanded, setExpanded] = (0, import_react74.useState)(defaultExpanded && !disabled);
|
|
14593
14542
|
const { isFocusVisible, focusProps } = (0, import_react_aria40.useFocusRing)();
|
|
14594
|
-
const [contentEl, setContentEl] = (0,
|
|
14595
|
-
const contentRef = (0,
|
|
14596
|
-
const [contentHeight, setContentHeight] = (0,
|
|
14597
|
-
(0,
|
|
14543
|
+
const [contentEl, setContentEl] = (0, import_react74.useState)(null);
|
|
14544
|
+
const contentRef = (0, import_react74.useMemo)(() => ({ current: contentEl }), [contentEl]);
|
|
14545
|
+
const [contentHeight, setContentHeight] = (0, import_react74.useState)(expanded ? "auto" : "0");
|
|
14546
|
+
(0, import_react74.useEffect)(() => {
|
|
14598
14547
|
setExpanded(defaultExpanded && !disabled);
|
|
14599
14548
|
}, [defaultExpanded, disabled]);
|
|
14600
|
-
(0,
|
|
14549
|
+
(0, import_react74.useEffect)(() => {
|
|
14601
14550
|
setContentHeight(expanded && contentEl ? `${contentEl.scrollHeight}px` : "0");
|
|
14602
14551
|
}, [expanded, contentEl]);
|
|
14603
|
-
const onResize = (0,
|
|
14552
|
+
const onResize = (0, import_react74.useCallback)(() => {
|
|
14604
14553
|
if (contentEl && expanded) {
|
|
14605
14554
|
setContentHeight(`${contentEl.scrollHeight}px`);
|
|
14606
14555
|
}
|
|
14607
14556
|
}, [expanded, contentEl, setContentHeight]);
|
|
14608
14557
|
(0, import_utils68.useResizeObserver)({ ref: contentRef, onResize });
|
|
14609
|
-
const toggle = (0,
|
|
14558
|
+
const toggle = (0, import_react74.useCallback)(() => {
|
|
14610
14559
|
setExpanded((prev) => !prev);
|
|
14611
14560
|
if (setExpandedIndex) setExpandedIndex(index);
|
|
14612
14561
|
if (onToggle) onToggle();
|
|
14613
14562
|
}, [index, setExpandedIndex, onToggle]);
|
|
14614
|
-
const touchableStyle = (0,
|
|
14563
|
+
const touchableStyle = (0, import_react74.useMemo)(
|
|
14615
14564
|
() => ({
|
|
14616
14565
|
...Css.df.jcsb.gapPx(12).aic.p2.md.outline("none").onHover.bgGray100.if(!!titleOnClick).mdSb.$,
|
|
14617
14566
|
...compact && Css.sm.pl2.prPx(10).py1.bgGray100.mbPx(4).br8.onHover.bgGray200.$,
|
|
@@ -14694,11 +14643,11 @@ var accordionSizes = {
|
|
|
14694
14643
|
};
|
|
14695
14644
|
|
|
14696
14645
|
// src/components/AccordionList.tsx
|
|
14697
|
-
var
|
|
14646
|
+
var import_react75 = require("react");
|
|
14698
14647
|
var import_jsx_runtime85 = require("@emotion/react/jsx-runtime");
|
|
14699
14648
|
function AccordionList(props) {
|
|
14700
14649
|
const { accordions, size, allowMultipleExpanded = true, compact = false } = props;
|
|
14701
|
-
const [expandedIndex, setExpandedIndex] = (0,
|
|
14650
|
+
const [expandedIndex, setExpandedIndex] = (0, import_react75.useState)(
|
|
14702
14651
|
accordions.findIndex((a) => a.defaultExpanded)
|
|
14703
14652
|
);
|
|
14704
14653
|
const tid = useTestIds(props, "accordionList");
|
|
@@ -14719,7 +14668,7 @@ function AccordionList(props) {
|
|
|
14719
14668
|
}
|
|
14720
14669
|
|
|
14721
14670
|
// src/components/AutoSaveIndicator.tsx
|
|
14722
|
-
var
|
|
14671
|
+
var import_react76 = require("react");
|
|
14723
14672
|
|
|
14724
14673
|
// src/types.ts
|
|
14725
14674
|
function assertNever(x) {
|
|
@@ -14730,7 +14679,7 @@ function assertNever(x) {
|
|
|
14730
14679
|
var import_jsx_runtime86 = require("@emotion/react/jsx-runtime");
|
|
14731
14680
|
function AutoSaveIndicator({ hideOnIdle, doNotReset }) {
|
|
14732
14681
|
const { status, resetStatus, errors } = useAutoSaveStatus();
|
|
14733
|
-
(0,
|
|
14682
|
+
(0, import_react76.useEffect)(
|
|
14734
14683
|
() => {
|
|
14735
14684
|
if (doNotReset) return;
|
|
14736
14685
|
return () => resetStatus();
|
|
@@ -14793,42 +14742,42 @@ var variantStyles2 = {
|
|
|
14793
14742
|
};
|
|
14794
14743
|
|
|
14795
14744
|
// src/components/BeamContext.tsx
|
|
14796
|
-
var
|
|
14745
|
+
var import_react103 = require("react");
|
|
14797
14746
|
var import_react_aria45 = require("react-aria");
|
|
14798
14747
|
|
|
14799
14748
|
// src/components/Modal/Modal.tsx
|
|
14800
14749
|
var import_utils72 = require("@react-aria/utils");
|
|
14801
|
-
var
|
|
14750
|
+
var import_react79 = require("react");
|
|
14802
14751
|
var import_react_aria41 = require("react-aria");
|
|
14803
14752
|
var import_react_dom2 = require("react-dom");
|
|
14804
14753
|
|
|
14805
14754
|
// src/components/Modal/useModal.tsx
|
|
14806
|
-
var
|
|
14755
|
+
var import_react78 = require("react");
|
|
14807
14756
|
|
|
14808
14757
|
// src/components/Modal/ModalContext.tsx
|
|
14809
|
-
var
|
|
14758
|
+
var import_react77 = require("react");
|
|
14810
14759
|
var import_jsx_runtime88 = require("@emotion/react/jsx-runtime");
|
|
14811
|
-
var ModalContext = (0,
|
|
14760
|
+
var ModalContext = (0, import_react77.createContext)({ inModal: false });
|
|
14812
14761
|
function ModalProvider({ children }) {
|
|
14813
|
-
const value = (0,
|
|
14762
|
+
const value = (0, import_react77.useMemo)(() => ({ inModal: true }), []);
|
|
14814
14763
|
return /* @__PURE__ */ (0, import_jsx_runtime88.jsx)(ModalContext.Provider, { value, children });
|
|
14815
14764
|
}
|
|
14816
14765
|
function useModalContext() {
|
|
14817
|
-
return (0,
|
|
14766
|
+
return (0, import_react77.useContext)(ModalContext);
|
|
14818
14767
|
}
|
|
14819
14768
|
|
|
14820
14769
|
// src/components/Modal/useModal.tsx
|
|
14821
14770
|
function useModal() {
|
|
14822
14771
|
const { modalState, modalCanCloseChecks } = useBeamContext();
|
|
14823
14772
|
const { inModal } = useModalContext();
|
|
14824
|
-
const lastCanClose = (0,
|
|
14825
|
-
const api = (0,
|
|
14826
|
-
(0,
|
|
14773
|
+
const lastCanClose = (0, import_react78.useRef)();
|
|
14774
|
+
const api = (0, import_react78.useRef)();
|
|
14775
|
+
(0, import_react78.useEffect)(() => {
|
|
14827
14776
|
return () => {
|
|
14828
14777
|
modalCanCloseChecks.current = modalCanCloseChecks.current.filter((c) => c !== lastCanClose.current);
|
|
14829
14778
|
};
|
|
14830
14779
|
}, [modalCanCloseChecks]);
|
|
14831
|
-
return (0,
|
|
14780
|
+
return (0, import_react78.useMemo)(
|
|
14832
14781
|
() => ({
|
|
14833
14782
|
openModal(props) {
|
|
14834
14783
|
modalState.current = { ...props, api };
|
|
@@ -14867,7 +14816,7 @@ var import_jsx_runtime89 = require("@emotion/react/jsx-runtime");
|
|
|
14867
14816
|
function Modal(props) {
|
|
14868
14817
|
const { size = "md", content, forceScrolling, api, drawHeaderBorder = false, allowClosing = true } = props;
|
|
14869
14818
|
const isFixedHeight = typeof size !== "string";
|
|
14870
|
-
const ref = (0,
|
|
14819
|
+
const ref = (0, import_react79.useRef)(null);
|
|
14871
14820
|
const { modalBodyDiv, modalFooterDiv, modalHeaderDiv } = useBeamContext();
|
|
14872
14821
|
const { closeModal } = useModal();
|
|
14873
14822
|
const { overlayProps, underlayProps } = (0, import_react_aria41.useOverlay)(
|
|
@@ -14884,20 +14833,20 @@ function Modal(props) {
|
|
|
14884
14833
|
);
|
|
14885
14834
|
const { modalProps } = (0, import_react_aria41.useModal)();
|
|
14886
14835
|
const { dialogProps, titleProps } = (0, import_react_aria41.useDialog)({ role: "dialog" }, ref);
|
|
14887
|
-
const [[width2, height], setSize] = (0,
|
|
14888
|
-
const modalBodyRef = (0,
|
|
14889
|
-
const modalFooterRef = (0,
|
|
14890
|
-
const modalHeaderRef = (0,
|
|
14836
|
+
const [[width2, height], setSize] = (0, import_react79.useState)(getSize(size));
|
|
14837
|
+
const modalBodyRef = (0, import_react79.useRef)(null);
|
|
14838
|
+
const modalFooterRef = (0, import_react79.useRef)(null);
|
|
14839
|
+
const modalHeaderRef = (0, import_react79.useRef)(null);
|
|
14891
14840
|
const testId = useTestIds({}, testIdPrefix);
|
|
14892
14841
|
(0, import_react_aria41.usePreventScroll)();
|
|
14893
14842
|
const { sm } = useBreakpoint();
|
|
14894
14843
|
if (api) {
|
|
14895
14844
|
api.current = { setSize: (size2 = "md") => setSize(getSize(size2)) };
|
|
14896
14845
|
}
|
|
14897
|
-
const [hasScroll, setHasScroll] = (0,
|
|
14846
|
+
const [hasScroll, setHasScroll] = (0, import_react79.useState)(forceScrolling ?? false);
|
|
14898
14847
|
(0, import_utils72.useResizeObserver)({
|
|
14899
14848
|
ref: modalBodyRef,
|
|
14900
|
-
onResize: (0,
|
|
14849
|
+
onResize: (0, import_react79.useCallback)(
|
|
14901
14850
|
() => {
|
|
14902
14851
|
const target = modalBodyRef.current;
|
|
14903
14852
|
if (forceScrolling === void 0 && !isFixedHeight) {
|
|
@@ -14909,7 +14858,7 @@ function Modal(props) {
|
|
|
14909
14858
|
[]
|
|
14910
14859
|
)
|
|
14911
14860
|
});
|
|
14912
|
-
(0,
|
|
14861
|
+
(0, import_react79.useEffect)(
|
|
14913
14862
|
() => {
|
|
14914
14863
|
modalHeaderRef.current.appendChild(modalHeaderDiv);
|
|
14915
14864
|
modalBodyRef.current.appendChild(modalBodyDiv);
|
|
@@ -14984,7 +14933,7 @@ function getSize(size) {
|
|
|
14984
14933
|
}
|
|
14985
14934
|
|
|
14986
14935
|
// src/components/Snackbar/SnackbarContext.tsx
|
|
14987
|
-
var
|
|
14936
|
+
var import_react80 = require("react");
|
|
14988
14937
|
|
|
14989
14938
|
// src/components/Snackbar/SnackbarNotice.tsx
|
|
14990
14939
|
var import_jsx_runtime90 = require("@emotion/react/jsx-runtime");
|
|
@@ -15037,26 +14986,26 @@ var defaultOffset = {
|
|
|
15037
14986
|
|
|
15038
14987
|
// src/components/Snackbar/SnackbarContext.tsx
|
|
15039
14988
|
var import_jsx_runtime92 = require("@emotion/react/jsx-runtime");
|
|
15040
|
-
var SnackbarContext = (0,
|
|
14989
|
+
var SnackbarContext = (0, import_react80.createContext)({ setNotices: () => {
|
|
15041
14990
|
}, setOffset: () => {
|
|
15042
14991
|
} });
|
|
15043
14992
|
function SnackbarProvider(props) {
|
|
15044
|
-
const [notices, setNotices] = (0,
|
|
15045
|
-
const [offset, setOffset] = (0,
|
|
15046
|
-
const contextValue = (0,
|
|
14993
|
+
const [notices, setNotices] = (0, import_react80.useState)([]);
|
|
14994
|
+
const [offset, setOffset] = (0, import_react80.useState)({});
|
|
14995
|
+
const contextValue = (0, import_react80.useMemo)(() => ({ setNotices, setOffset }), []);
|
|
15047
14996
|
return /* @__PURE__ */ (0, import_jsx_runtime92.jsxs)(SnackbarContext.Provider, { value: contextValue, children: [
|
|
15048
14997
|
props.children,
|
|
15049
14998
|
/* @__PURE__ */ (0, import_jsx_runtime92.jsx)(Snackbar, { notices, offset })
|
|
15050
14999
|
] });
|
|
15051
15000
|
}
|
|
15052
15001
|
function useSnackbarContext() {
|
|
15053
|
-
return (0,
|
|
15002
|
+
return (0, import_react80.useContext)(SnackbarContext);
|
|
15054
15003
|
}
|
|
15055
15004
|
|
|
15056
15005
|
// src/components/SuperDrawer/SuperDrawer.tsx
|
|
15057
|
-
var
|
|
15006
|
+
var import_react81 = require("@emotion/react");
|
|
15058
15007
|
var import_framer_motion = require("framer-motion");
|
|
15059
|
-
var
|
|
15008
|
+
var import_react82 = require("react");
|
|
15060
15009
|
var import_react_dom3 = require("react-dom");
|
|
15061
15010
|
|
|
15062
15011
|
// src/components/SuperDrawer/utils.ts
|
|
@@ -15068,17 +15017,17 @@ var SuperDrawerWidth = /* @__PURE__ */ ((SuperDrawerWidth2) => {
|
|
|
15068
15017
|
|
|
15069
15018
|
// src/components/SuperDrawer/SuperDrawer.tsx
|
|
15070
15019
|
var import_jsx_runtime93 = require("@emotion/react/jsx-runtime");
|
|
15071
|
-
var
|
|
15020
|
+
var import_react83 = require("@emotion/react");
|
|
15072
15021
|
function SuperDrawer() {
|
|
15073
15022
|
const { drawerContentStack: contentStack, sdHeaderDiv } = useBeamContext();
|
|
15074
15023
|
const { closeDrawer } = useSuperDrawer();
|
|
15075
|
-
const headerRef = (0,
|
|
15024
|
+
const headerRef = (0, import_react82.useRef)(null);
|
|
15076
15025
|
const testId = useTestIds({}, "superDrawer");
|
|
15077
15026
|
const currentContent = contentStack.current[contentStack.current.length - 1]?.opts;
|
|
15078
15027
|
const { content } = currentContent ?? {};
|
|
15079
15028
|
const firstContent = contentStack.current[0]?.opts;
|
|
15080
15029
|
const { width: width2 = 1040 /* Normal */ } = firstContent ?? {};
|
|
15081
|
-
(0,
|
|
15030
|
+
(0, import_react82.useEffect)(
|
|
15082
15031
|
() => {
|
|
15083
15032
|
if (headerRef.current?.childNodes.length === 0 && content) {
|
|
15084
15033
|
headerRef.current.appendChild(sdHeaderDiv);
|
|
@@ -15090,8 +15039,8 @@ function SuperDrawer() {
|
|
|
15090
15039
|
);
|
|
15091
15040
|
return (0, import_react_dom3.createPortal)(
|
|
15092
15041
|
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_framer_motion.AnimatePresence, { children: content && /* @__PURE__ */ (0, import_jsx_runtime93.jsxs)(import_jsx_runtime93.Fragment, { children: [
|
|
15093
|
-
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(
|
|
15094
|
-
/* @__PURE__ */ (0,
|
|
15042
|
+
/* @__PURE__ */ (0, import_jsx_runtime93.jsx)(import_react81.Global, { styles: { body: Css.oh.$ } }),
|
|
15043
|
+
/* @__PURE__ */ (0, import_react83.createElement)(
|
|
15095
15044
|
import_framer_motion.motion.div,
|
|
15096
15045
|
{
|
|
15097
15046
|
...testId,
|
|
@@ -15128,7 +15077,7 @@ function SuperDrawer() {
|
|
|
15128
15077
|
}
|
|
15129
15078
|
|
|
15130
15079
|
// src/components/Layout/FormPageLayout.tsx
|
|
15131
|
-
var
|
|
15080
|
+
var import_react91 = __toESM(require("react"), 1);
|
|
15132
15081
|
var import_react_aria43 = require("react-aria");
|
|
15133
15082
|
|
|
15134
15083
|
// src/forms/BoundCheckboxField.tsx
|
|
@@ -15354,7 +15303,7 @@ function BoundDateRangeField(props) {
|
|
|
15354
15303
|
}
|
|
15355
15304
|
|
|
15356
15305
|
// src/forms/BoundForm.tsx
|
|
15357
|
-
var
|
|
15306
|
+
var import_react86 = require("react");
|
|
15358
15307
|
|
|
15359
15308
|
// src/forms/BoundIconCardField.tsx
|
|
15360
15309
|
var import_mobx_react7 = require("mobx-react");
|
|
@@ -15383,7 +15332,7 @@ function BoundIconCardField(props) {
|
|
|
15383
15332
|
var import_mobx_react8 = require("mobx-react");
|
|
15384
15333
|
|
|
15385
15334
|
// src/inputs/IconCardGroup.tsx
|
|
15386
|
-
var
|
|
15335
|
+
var import_react84 = require("react");
|
|
15387
15336
|
var import_react_aria42 = require("react-aria");
|
|
15388
15337
|
var import_jsx_runtime100 = require("@emotion/react/jsx-runtime");
|
|
15389
15338
|
function IconCardGroup(props) {
|
|
@@ -15398,9 +15347,9 @@ function IconCardGroup(props) {
|
|
|
15398
15347
|
disabled: isDisabled = false,
|
|
15399
15348
|
onChange
|
|
15400
15349
|
} = props;
|
|
15401
|
-
const [selected, setSelected] = (0,
|
|
15402
|
-
const exclusiveOptions = (0,
|
|
15403
|
-
const toggleValue = (0,
|
|
15350
|
+
const [selected, setSelected] = (0, import_react84.useState)(values);
|
|
15351
|
+
const exclusiveOptions = (0, import_react84.useMemo)(() => options.filter((o) => o.exclusive), [options]);
|
|
15352
|
+
const toggleValue = (0, import_react84.useCallback)(
|
|
15404
15353
|
(value) => {
|
|
15405
15354
|
if (isDisabled) return;
|
|
15406
15355
|
const option = options.find((o) => o.value === value);
|
|
@@ -15996,7 +15945,7 @@ function BoundTreeSelectField(props) {
|
|
|
15996
15945
|
}
|
|
15997
15946
|
|
|
15998
15947
|
// src/forms/FormLines.tsx
|
|
15999
|
-
var
|
|
15948
|
+
var import_react85 = require("react");
|
|
16000
15949
|
var import_jsx_runtime114 = require("@emotion/react/jsx-runtime");
|
|
16001
15950
|
function FormLines(props) {
|
|
16002
15951
|
const { inModal } = useModal();
|
|
@@ -16024,12 +15973,12 @@ function FormLines(props) {
|
|
|
16024
15973
|
// Note that we're purposefully not using display:flex so that our children's margins will collapse.
|
|
16025
15974
|
...Css.w(sizes[width2]).$
|
|
16026
15975
|
},
|
|
16027
|
-
children:
|
|
15976
|
+
children: import_react85.Children.map(children, (child) => {
|
|
16028
15977
|
if (child === null || child === void 0 || typeof child === "boolean") {
|
|
16029
15978
|
return child;
|
|
16030
15979
|
}
|
|
16031
15980
|
if (child && typeof child === "object" && "type" in child && child.type.isFormHeading) {
|
|
16032
|
-
const clone = (0,
|
|
15981
|
+
const clone = (0, import_react85.cloneElement)(child, { isFirst: firstFormHeading });
|
|
16033
15982
|
firstFormHeading = false;
|
|
16034
15983
|
return /* @__PURE__ */ (0, import_jsx_runtime114.jsx)("div", { css: Css.mb(gap).$, children: clone });
|
|
16035
15984
|
} else {
|
|
@@ -16064,7 +16013,7 @@ var listFieldPrefix = "listField";
|
|
|
16064
16013
|
function BoundForm(props) {
|
|
16065
16014
|
const { rows, formState } = props;
|
|
16066
16015
|
const tid = useTestIds({}, "boundForm");
|
|
16067
|
-
const getRowKey = (0,
|
|
16016
|
+
const getRowKey = (0, import_react86.useCallback)((row, rowType) => {
|
|
16068
16017
|
return `${rowType}-${Object.keys(row).join("-")}`;
|
|
16069
16018
|
}, []);
|
|
16070
16019
|
return /* @__PURE__ */ (0, import_jsx_runtime115.jsx)("div", { ...tid, children: /* @__PURE__ */ (0, import_jsx_runtime115.jsx)(FormLines, { width: "full", gap: 3.5, children: rows.map(
|
|
@@ -16073,7 +16022,7 @@ function BoundForm(props) {
|
|
|
16073
16022
|
}
|
|
16074
16023
|
function FormRow({ row, formState }) {
|
|
16075
16024
|
const tid = useTestIds({}, "boundFormRow");
|
|
16076
|
-
const componentsWithConfig = (0,
|
|
16025
|
+
const componentsWithConfig = (0, import_react86.useMemo)(() => {
|
|
16077
16026
|
return Object.entries(row).map(([key, fieldFnOrCustomNode]) => {
|
|
16078
16027
|
if (typeof fieldFnOrCustomNode === "function" && !isCustomReactNodeKey(key)) {
|
|
16079
16028
|
const field = formState[key] ?? fail(`Field ${key.toString()} not found in formState`);
|
|
@@ -16199,7 +16148,7 @@ function boundTreeSelectField(props) {
|
|
|
16199
16148
|
}
|
|
16200
16149
|
|
|
16201
16150
|
// src/components/internal/CompoundField.tsx
|
|
16202
|
-
var
|
|
16151
|
+
var import_react87 = require("react");
|
|
16203
16152
|
var import_jsx_runtime116 = require("@emotion/react/jsx-runtime");
|
|
16204
16153
|
function CompoundField({ children }) {
|
|
16205
16154
|
if (children?.length !== 2) {
|
|
@@ -16207,7 +16156,7 @@ function CompoundField({ children }) {
|
|
|
16207
16156
|
}
|
|
16208
16157
|
const commonStyles = Css.df.aic.fs1.maxwPx(550).bt.bb.bcGray300.$;
|
|
16209
16158
|
const internalProps = { compound: true };
|
|
16210
|
-
const [hasFocusWithin, setHasFocusWithin] = (0,
|
|
16159
|
+
const [hasFocusWithin, setHasFocusWithin] = (0, import_react87.useState)(false);
|
|
16211
16160
|
function onFocusCapture() {
|
|
16212
16161
|
setHasFocusWithin(true);
|
|
16213
16162
|
}
|
|
@@ -16227,7 +16176,7 @@ function CompoundField({ children }) {
|
|
|
16227
16176
|
...Css.bl.borderRadius("4px 0 0 4px").$,
|
|
16228
16177
|
"&:focus-within": Css.bcBlue700.$
|
|
16229
16178
|
},
|
|
16230
|
-
children: (0,
|
|
16179
|
+
children: (0, import_react87.cloneElement)(children[0], {
|
|
16231
16180
|
internalProps
|
|
16232
16181
|
})
|
|
16233
16182
|
}
|
|
@@ -16241,7 +16190,7 @@ function CompoundField({ children }) {
|
|
|
16241
16190
|
...Css.fg1.br.borderRadius("0 4px 4px 0").$,
|
|
16242
16191
|
"&:focus-within": Css.bcBlue700.$
|
|
16243
16192
|
},
|
|
16244
|
-
children: (0,
|
|
16193
|
+
children: (0, import_react87.cloneElement)(children[1], {
|
|
16245
16194
|
internalProps
|
|
16246
16195
|
})
|
|
16247
16196
|
}
|
|
@@ -16342,11 +16291,11 @@ var import_use_debounce6 = require("use-debounce");
|
|
|
16342
16291
|
|
|
16343
16292
|
// src/components/RightSidebar.tsx
|
|
16344
16293
|
var import_framer_motion2 = require("framer-motion");
|
|
16345
|
-
var
|
|
16294
|
+
var import_react88 = require("react");
|
|
16346
16295
|
var import_jsx_runtime121 = require("@emotion/react/jsx-runtime");
|
|
16347
16296
|
var RIGHT_SIDEBAR_MIN_WIDTH = "250px";
|
|
16348
16297
|
function RightSidebar({ content, headerHeightPx: headerHeightPx2 }) {
|
|
16349
|
-
const [selectedIcon, setSelectedIcon] = (0,
|
|
16298
|
+
const [selectedIcon, setSelectedIcon] = (0, import_react88.useState)(void 0);
|
|
16350
16299
|
const tid = useTestIds({}, "rightSidebar");
|
|
16351
16300
|
return /* @__PURE__ */ (0, import_jsx_runtime121.jsxs)(import_jsx_runtime121.Fragment, { children: [
|
|
16352
16301
|
/* @__PURE__ */ (0, import_jsx_runtime121.jsx)("div", { css: Css.df.jcfe.absolute.right0.pr3.$, children: /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(import_framer_motion2.AnimatePresence, { children: !selectedIcon && /* @__PURE__ */ (0, import_jsx_runtime121.jsx)(
|
|
@@ -16407,9 +16356,9 @@ function IconButtonList({ content, selectedIcon, onIconClick }) {
|
|
|
16407
16356
|
}
|
|
16408
16357
|
|
|
16409
16358
|
// src/components/Toast/ToastContext.tsx
|
|
16410
|
-
var
|
|
16359
|
+
var import_react89 = require("react");
|
|
16411
16360
|
var import_jsx_runtime122 = require("@emotion/react/jsx-runtime");
|
|
16412
|
-
var ToastContext = (0,
|
|
16361
|
+
var ToastContext = (0, import_react89.createContext)({
|
|
16413
16362
|
setNotice: () => {
|
|
16414
16363
|
throw new Error("Missing ToastProvider");
|
|
16415
16364
|
},
|
|
@@ -16418,13 +16367,13 @@ var ToastContext = (0, import_react90.createContext)({
|
|
|
16418
16367
|
notice: void 0
|
|
16419
16368
|
});
|
|
16420
16369
|
function ToastProvider(props) {
|
|
16421
|
-
const [notice, setNotice] = (0,
|
|
16422
|
-
const clear = (0,
|
|
16423
|
-
const contextValue = (0,
|
|
16370
|
+
const [notice, setNotice] = (0, import_react89.useState)();
|
|
16371
|
+
const clear = (0, import_react89.useCallback)(() => setNotice(void 0), [setNotice]);
|
|
16372
|
+
const contextValue = (0, import_react89.useMemo)(() => ({ setNotice, notice, clear }), [notice, clear]);
|
|
16424
16373
|
return /* @__PURE__ */ (0, import_jsx_runtime122.jsx)(ToastContext.Provider, { value: contextValue, children: props.children });
|
|
16425
16374
|
}
|
|
16426
16375
|
function useToastContext() {
|
|
16427
|
-
return (0,
|
|
16376
|
+
return (0, import_react89.useContext)(ToastContext);
|
|
16428
16377
|
}
|
|
16429
16378
|
|
|
16430
16379
|
// src/components/Toast/Toast.tsx
|
|
@@ -16436,7 +16385,7 @@ function Toast() {
|
|
|
16436
16385
|
}
|
|
16437
16386
|
|
|
16438
16387
|
// src/components/Layout/PageHeaderBreadcrumbs.tsx
|
|
16439
|
-
var
|
|
16388
|
+
var import_react90 = require("react");
|
|
16440
16389
|
var import_react_router_dom4 = require("react-router-dom");
|
|
16441
16390
|
var import_jsx_runtime124 = (
|
|
16442
16391
|
// Adding index to key to prevent rendering issues when multiple items have the same label
|
|
@@ -16444,10 +16393,10 @@ var import_jsx_runtime124 = (
|
|
|
16444
16393
|
);
|
|
16445
16394
|
function PageHeaderBreadcrumbs({ breadcrumb }) {
|
|
16446
16395
|
const tids = useTestIds({}, "pageHeaderBreadcrumbs");
|
|
16447
|
-
const breadcrumbs = (0,
|
|
16448
|
-
const [collapsed, setCollapsed] = (0,
|
|
16396
|
+
const breadcrumbs = (0, import_react90.useMemo)(() => Array.isArray(breadcrumb) ? breadcrumb : [breadcrumb], [breadcrumb]);
|
|
16397
|
+
const [collapsed, setCollapsed] = (0, import_react90.useState)(true);
|
|
16449
16398
|
function renderBreadcrumb(bc, index, hideDivisor) {
|
|
16450
|
-
return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(
|
|
16399
|
+
return /* @__PURE__ */ (0, import_jsx_runtime124.jsxs)(import_react90.Fragment, { children: [
|
|
16451
16400
|
index > 0 && !hideDivisor && /* @__PURE__ */ (0, import_jsx_runtime124.jsx)("span", { css: Css.smSb.gray700.mx1.myPx(2).$, children: "/" }),
|
|
16452
16401
|
/* @__PURE__ */ (0, import_jsx_runtime124.jsx)(import_react_router_dom4.Link, { to: bc.href, css: Css.smSb.gray700.onHover.gray900.$, className: "navLink", ...tids.navLink, children: bc.label }),
|
|
16453
16402
|
bc.right
|
|
@@ -16468,10 +16417,10 @@ var maxContentWidthPx = 1600;
|
|
|
16468
16417
|
function FormPageLayoutComponent(props) {
|
|
16469
16418
|
const { formSections, formState, rightSideBar } = props;
|
|
16470
16419
|
const tids = useTestIds(props, "formPageLayout");
|
|
16471
|
-
const sectionsWithRefs = (0,
|
|
16420
|
+
const sectionsWithRefs = (0, import_react91.useMemo)(
|
|
16472
16421
|
() => formSections.map((section, id) => ({
|
|
16473
16422
|
section,
|
|
16474
|
-
ref: (0,
|
|
16423
|
+
ref: (0, import_react91.createRef)(),
|
|
16475
16424
|
// Unique key for each section to use in the observer
|
|
16476
16425
|
sectionKey: `section-${section.title ?? id}`
|
|
16477
16426
|
})),
|
|
@@ -16491,7 +16440,7 @@ function FormPageLayoutComponent(props) {
|
|
|
16491
16440
|
] }) })
|
|
16492
16441
|
);
|
|
16493
16442
|
}
|
|
16494
|
-
var FormPageLayout =
|
|
16443
|
+
var FormPageLayout = import_react91.default.memo(FormPageLayoutComponent);
|
|
16495
16444
|
function PageHeader(props) {
|
|
16496
16445
|
const { pageTitle, breadCrumb, submitAction, cancelAction, tertiaryAction, formState } = props;
|
|
16497
16446
|
const { notice } = useToastContext();
|
|
@@ -16557,7 +16506,7 @@ function FormSections(props) {
|
|
|
16557
16506
|
function LeftNav(props) {
|
|
16558
16507
|
const { sectionsWithRefs } = props;
|
|
16559
16508
|
const tids = useTestIds(props);
|
|
16560
|
-
const sectionWithTitles = (0,
|
|
16509
|
+
const sectionWithTitles = (0, import_react91.useMemo)(
|
|
16561
16510
|
() => sectionsWithRefs.filter(({ section }) => !!section.title),
|
|
16562
16511
|
[sectionsWithRefs]
|
|
16563
16512
|
);
|
|
@@ -16579,11 +16528,11 @@ function SectionNavLink(props) {
|
|
|
16579
16528
|
const { sectionWithRef, activeSection } = props;
|
|
16580
16529
|
const { section, ref: sectionRef } = sectionWithRef;
|
|
16581
16530
|
const active = activeSection === sectionWithRef.sectionKey;
|
|
16582
|
-
const handleNavClick = (0,
|
|
16531
|
+
const handleNavClick = (0, import_react91.useCallback)(() => {
|
|
16583
16532
|
sectionRef.current?.scrollIntoView({ behavior: "smooth", block: "start" });
|
|
16584
16533
|
}, [sectionRef]);
|
|
16585
16534
|
const tids = useTestIds(props);
|
|
16586
|
-
const buttonRef = (0,
|
|
16535
|
+
const buttonRef = (0, import_react91.useRef)(null);
|
|
16587
16536
|
const { buttonProps, isPressed } = (0, import_react_aria43.useButton)({ onPress: handleNavClick }, buttonRef);
|
|
16588
16537
|
const { isFocusVisible, focusProps } = (0, import_react_aria43.useFocusRing)();
|
|
16589
16538
|
const { hoverProps, isHovered } = useHover({});
|
|
@@ -16606,7 +16555,7 @@ function SectionNavLink(props) {
|
|
|
16606
16555
|
);
|
|
16607
16556
|
}
|
|
16608
16557
|
function useActiveSection(sectionsWithRefs) {
|
|
16609
|
-
const [activeSection, setActiveSection] = (0,
|
|
16558
|
+
const [activeSection, setActiveSection] = (0, import_react91.useState)(null);
|
|
16610
16559
|
const debouncedIntersectionCallback = (0, import_use_debounce6.useDebouncedCallback)(
|
|
16611
16560
|
(entries) => {
|
|
16612
16561
|
const sectionsInView = entries.filter((entry) => entry.isIntersecting && entry.intersectionRatio > 0.2).sort((a, b) => {
|
|
@@ -16623,7 +16572,7 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
16623
16572
|
200,
|
|
16624
16573
|
{ maxWait: 500 }
|
|
16625
16574
|
);
|
|
16626
|
-
(0,
|
|
16575
|
+
(0, import_react91.useEffect)(() => {
|
|
16627
16576
|
if (!("IntersectionObserver" in window)) return;
|
|
16628
16577
|
const observer2 = new IntersectionObserver((entries) => debouncedIntersectionCallback(entries), {
|
|
16629
16578
|
/**
|
|
@@ -16654,19 +16603,19 @@ function useActiveSection(sectionsWithRefs) {
|
|
|
16654
16603
|
}
|
|
16655
16604
|
|
|
16656
16605
|
// src/components/Layout/FullBleed.tsx
|
|
16657
|
-
var
|
|
16606
|
+
var import_react92 = require("react");
|
|
16658
16607
|
function FullBleed({ children, omitPadding = false }) {
|
|
16659
16608
|
const { pr, pl } = useScrollableParent();
|
|
16660
|
-
return !pr && !pl ? children : (0,
|
|
16609
|
+
return !pr && !pl ? children : (0, import_react92.cloneElement)(children, {
|
|
16661
16610
|
style: Css.ml(`-${pl}`).mr(`-${pr}`).if(!omitPadding).pl(pl).pr(pr).$
|
|
16662
16611
|
});
|
|
16663
16612
|
}
|
|
16664
16613
|
|
|
16665
16614
|
// src/components/Layout/GridTableLayout/GridTableLayout.tsx
|
|
16666
|
-
var
|
|
16615
|
+
var import_react100 = __toESM(require("react"), 1);
|
|
16667
16616
|
|
|
16668
16617
|
// src/components/ButtonMenu.tsx
|
|
16669
|
-
var
|
|
16618
|
+
var import_react93 = require("react");
|
|
16670
16619
|
var import_react_aria44 = require("react-aria");
|
|
16671
16620
|
var import_react_stately17 = require("react-stately");
|
|
16672
16621
|
var import_jsx_runtime126 = require("@emotion/react/jsx-runtime");
|
|
@@ -16678,7 +16627,7 @@ function ButtonMenu(props) {
|
|
|
16678
16627
|
onChange = props.onChange;
|
|
16679
16628
|
}
|
|
16680
16629
|
const state = (0, import_react_stately17.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
16681
|
-
const buttonRef = (0,
|
|
16630
|
+
const buttonRef = (0, import_react93.useRef)(null);
|
|
16682
16631
|
const { menuTriggerProps, menuProps } = (0, import_react_aria44.useMenuTrigger)({ isDisabled: !!disabled }, state, buttonRef);
|
|
16683
16632
|
const tid = useTestIds(
|
|
16684
16633
|
props,
|
|
@@ -16715,7 +16664,7 @@ function isSelectionButtonMenuProps(props) {
|
|
|
16715
16664
|
}
|
|
16716
16665
|
|
|
16717
16666
|
// src/components/Filters/FilterDropdownMenu.tsx
|
|
16718
|
-
var
|
|
16667
|
+
var import_react97 = require("react");
|
|
16719
16668
|
|
|
16720
16669
|
// src/components/CountBadge.tsx
|
|
16721
16670
|
var import_jsx_runtime127 = require("@emotion/react/jsx-runtime");
|
|
@@ -17100,15 +17049,15 @@ var CheckboxFilter = class extends BaseFilter {
|
|
|
17100
17049
|
};
|
|
17101
17050
|
|
|
17102
17051
|
// src/components/Filters/FilterModal.tsx
|
|
17103
|
-
var
|
|
17052
|
+
var import_react95 = require("react");
|
|
17104
17053
|
|
|
17105
17054
|
// src/components/Modal/OpenModal.tsx
|
|
17106
|
-
var
|
|
17055
|
+
var import_react94 = require("react");
|
|
17107
17056
|
var import_jsx_runtime136 = require("@emotion/react/jsx-runtime");
|
|
17108
17057
|
function OpenModal(props) {
|
|
17109
17058
|
const { openModal } = useModal();
|
|
17110
17059
|
const { size, children, keepOpen } = props;
|
|
17111
|
-
(0,
|
|
17060
|
+
(0, import_react94.useEffect)(() => {
|
|
17112
17061
|
if (!keepOpen) {
|
|
17113
17062
|
openModal({ size, content: children });
|
|
17114
17063
|
}
|
|
@@ -17126,7 +17075,7 @@ function FilterModal(props) {
|
|
|
17126
17075
|
const { filter, filters, onApply } = props;
|
|
17127
17076
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
17128
17077
|
const { closeModal } = useModal();
|
|
17129
|
-
const [modalFilter, setModalFilter] = (0,
|
|
17078
|
+
const [modalFilter, setModalFilter] = (0, import_react95.useState)(filter);
|
|
17130
17079
|
return /* @__PURE__ */ (0, import_jsx_runtime137.jsxs)(import_jsx_runtime137.Fragment, { children: [
|
|
17131
17080
|
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ModalHeader, { children: "More Filters" }),
|
|
17132
17081
|
/* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ModalBody, { children: /* @__PURE__ */ (0, import_jsx_runtime137.jsx)("div", { css: Css.df.fdc.$, children: safeEntries(filters).map(([key, f]) => /* @__PURE__ */ (0, import_jsx_runtime137.jsx)(ModalFilterItem, { label: f.hideLabelInModal ? void 0 : f.label, children: f.render(
|
|
@@ -17175,13 +17124,13 @@ function ModalFilterItem({ label, children }) {
|
|
|
17175
17124
|
}
|
|
17176
17125
|
|
|
17177
17126
|
// src/components/Filters/Filters.tsx
|
|
17178
|
-
var
|
|
17127
|
+
var import_react96 = require("react");
|
|
17179
17128
|
var import_jsx_runtime138 = require("@emotion/react/jsx-runtime");
|
|
17180
17129
|
function Filters(props) {
|
|
17181
17130
|
const { filter, onChange, filterDefs, groupBy, vertical = false, numberOfInlineFilters = groupBy ? 3 : 4 } = props;
|
|
17182
17131
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
17183
17132
|
const { openModal } = useModal();
|
|
17184
|
-
const [pageFilters, modalFilters] = (0,
|
|
17133
|
+
const [pageFilters, modalFilters] = (0, import_react96.useMemo)(() => {
|
|
17185
17134
|
const impls = safeEntries(filterDefs).map(([key, fn]) => [key, fn(key)]);
|
|
17186
17135
|
if (!vertical && impls.length > numberOfInlineFilters) {
|
|
17187
17136
|
return [
|
|
@@ -17233,7 +17182,7 @@ function Filters(props) {
|
|
|
17233
17182
|
}
|
|
17234
17183
|
);
|
|
17235
17184
|
}
|
|
17236
|
-
var _Filters = (0,
|
|
17185
|
+
var _Filters = (0, import_react96.memo)(Filters);
|
|
17237
17186
|
|
|
17238
17187
|
// src/components/Filters/ToggleFilter.tsx
|
|
17239
17188
|
var import_jsx_runtime139 = require("@emotion/react/jsx-runtime");
|
|
@@ -17281,9 +17230,9 @@ var import_jsx_runtime140 = require("@emotion/react/jsx-runtime");
|
|
|
17281
17230
|
function FilterDropdownMenu(props) {
|
|
17282
17231
|
const { filter, onChange, filterDefs, groupBy } = props;
|
|
17283
17232
|
const testId = useTestIds(props, filterTestIdPrefix);
|
|
17284
|
-
const [isOpen, setIsOpen] = (0,
|
|
17285
|
-
const activeFilterCount = (0,
|
|
17286
|
-
const filterImpls = (0,
|
|
17233
|
+
const [isOpen, setIsOpen] = (0, import_react97.useState)(false);
|
|
17234
|
+
const activeFilterCount = (0, import_react97.useMemo)(() => getActiveFilterCount(filter), [filter]);
|
|
17235
|
+
const filterImpls = (0, import_react97.useMemo)(() => buildFilterImpls(filterDefs), [filterDefs]);
|
|
17287
17236
|
const renderFilters = () => {
|
|
17288
17237
|
const entries = safeEntries(filterImpls);
|
|
17289
17238
|
const nonCheckbox = entries.filter(([_, f]) => !f.hideLabelInModal);
|
|
@@ -17386,7 +17335,7 @@ function titleCase(str) {
|
|
|
17386
17335
|
function getActiveFilterCount(filter) {
|
|
17387
17336
|
return safeKeys(filter).filter((key) => filter[key] !== void 0).length;
|
|
17388
17337
|
}
|
|
17389
|
-
var _FilterDropdownMenu = (0,
|
|
17338
|
+
var _FilterDropdownMenu = (0, import_react97.memo)(FilterDropdownMenu);
|
|
17390
17339
|
|
|
17391
17340
|
// src/components/Pagination.tsx
|
|
17392
17341
|
var import_jsx_runtime141 = require("@emotion/react/jsx-runtime");
|
|
@@ -17484,13 +17433,13 @@ var import_use_debounce7 = require("use-debounce");
|
|
|
17484
17433
|
var import_use_query_params3 = require("use-query-params");
|
|
17485
17434
|
|
|
17486
17435
|
// src/components/Layout/ScrollableContent.tsx
|
|
17487
|
-
var
|
|
17436
|
+
var import_react98 = require("react");
|
|
17488
17437
|
var import_react_dom4 = require("react-dom");
|
|
17489
17438
|
var import_jsx_runtime143 = require("@emotion/react/jsx-runtime");
|
|
17490
17439
|
function ScrollableContent(props) {
|
|
17491
17440
|
const { children, virtualized = false, omitBottomPadding, bgColor } = props;
|
|
17492
17441
|
const { scrollableEl, setPortalTick, pl, pr } = useScrollableParent();
|
|
17493
|
-
(0,
|
|
17442
|
+
(0, import_react98.useEffect)(() => {
|
|
17494
17443
|
setPortalTick((prev) => prev + 1);
|
|
17495
17444
|
return () => setPortalTick((prev) => prev + 1);
|
|
17496
17445
|
}, [setPortalTick]);
|
|
@@ -17517,7 +17466,7 @@ function ScrollableContent(props) {
|
|
|
17517
17466
|
}
|
|
17518
17467
|
|
|
17519
17468
|
// src/components/Layout/GridTableLayout/QueryTable.tsx
|
|
17520
|
-
var
|
|
17469
|
+
var import_react99 = require("react");
|
|
17521
17470
|
|
|
17522
17471
|
// src/components/LoadingSkeleton.tsx
|
|
17523
17472
|
var import_jsx_runtime144 = require("@emotion/react/jsx-runtime");
|
|
@@ -17559,7 +17508,7 @@ var import_jsx_runtime145 = require("@emotion/react/jsx-runtime");
|
|
|
17559
17508
|
function QueryTable(props) {
|
|
17560
17509
|
const { emptyFallback, query, createRows, getPageInfo, columns, keepHeaderWhenLoading, ...others } = props;
|
|
17561
17510
|
const data = query.loading || query.error ? void 0 : query.data;
|
|
17562
|
-
const rows = (0,
|
|
17511
|
+
const rows = (0, import_react99.useMemo)(() => createRows(data), [createRows, data]);
|
|
17563
17512
|
const hasNextPage = data && getPageInfo && getPageInfo(data).hasNextPage;
|
|
17564
17513
|
const infoMessage = hasNextPage ? "Too many rows" : void 0;
|
|
17565
17514
|
const fallbackMessage = query.loading ? "Loading\u2026" : query.error ? `Error: ${query.error.message}` : emptyFallback;
|
|
@@ -17594,12 +17543,12 @@ function GridTableLayoutComponent(props) {
|
|
|
17594
17543
|
} = props;
|
|
17595
17544
|
const tid = useTestIds(props);
|
|
17596
17545
|
const columns = tableProps.columns;
|
|
17597
|
-
const hasHideableColumns = (0,
|
|
17546
|
+
const hasHideableColumns = (0, import_react100.useMemo)(() => {
|
|
17598
17547
|
if (hideEditColumns) return false;
|
|
17599
17548
|
validateColumns(columns);
|
|
17600
17549
|
return columns.some((c) => c.canHide);
|
|
17601
17550
|
}, [columns, hideEditColumns]);
|
|
17602
|
-
const api = (0,
|
|
17551
|
+
const api = (0, import_react100.useMemo)(
|
|
17603
17552
|
() => tableProps.api ?? new GridTableApiImpl(),
|
|
17604
17553
|
[tableProps.api]
|
|
17605
17554
|
);
|
|
@@ -17607,7 +17556,7 @@ function GridTableLayoutComponent(props) {
|
|
|
17607
17556
|
const showTableActions = layoutState?.filterDefs || layoutState?.search || hasHideableColumns;
|
|
17608
17557
|
const isVirtualized = tableProps.as === "virtual";
|
|
17609
17558
|
const visibleColumnIds = useComputed(() => api.getVisibleColumnIds(), [api]);
|
|
17610
|
-
(0,
|
|
17559
|
+
(0, import_react100.useEffect)(() => {
|
|
17611
17560
|
if (layoutState?.setVisibleColumnIds) {
|
|
17612
17561
|
layoutState.setVisibleColumnIds(visibleColumnIds);
|
|
17613
17562
|
}
|
|
@@ -17688,7 +17637,7 @@ function GridTableLayoutComponent(props) {
|
|
|
17688
17637
|
] })
|
|
17689
17638
|
] });
|
|
17690
17639
|
}
|
|
17691
|
-
var GridTableLayout =
|
|
17640
|
+
var GridTableLayout = import_react100.default.memo(GridTableLayoutComponent);
|
|
17692
17641
|
function validateColumns(columns) {
|
|
17693
17642
|
for (const col of columns) {
|
|
17694
17643
|
if (!col.id || !col.name) {
|
|
@@ -17706,7 +17655,7 @@ function useGridTableLayoutState({
|
|
|
17706
17655
|
const filterFallback = { filterDefs: {}, storageKey: "unset-filter" };
|
|
17707
17656
|
const { filter, setFilter } = usePersistedFilter(persistedFilter ?? filterFallback);
|
|
17708
17657
|
const groupBy = useGroupBy(maybeGroupBy ?? { none: "none" });
|
|
17709
|
-
const [searchString, setSearchString] = (0,
|
|
17658
|
+
const [searchString, setSearchString] = (0, import_react100.useState)("");
|
|
17710
17659
|
const columnsFallback = "unset-columns";
|
|
17711
17660
|
const [visibleColumnIds, setVisibleColumnIds] = useSessionStorage(
|
|
17712
17661
|
persistedColumns?.storageKey ?? columnsFallback,
|
|
@@ -17719,11 +17668,11 @@ function useGridTableLayoutState({
|
|
|
17719
17668
|
100
|
|
17720
17669
|
// default page size
|
|
17721
17670
|
);
|
|
17722
|
-
const [page, setPage] = (0,
|
|
17671
|
+
const [page, setPage] = (0, import_react100.useState)({
|
|
17723
17672
|
offset: 0,
|
|
17724
17673
|
limit: persistedPageSize
|
|
17725
17674
|
});
|
|
17726
|
-
(0,
|
|
17675
|
+
(0, import_react100.useEffect)(() => {
|
|
17727
17676
|
if (page.limit !== persistedPageSize) setPersistedPageSize(page.limit);
|
|
17728
17677
|
setPage((prev) => ({ ...prev, offset: 0 }));
|
|
17729
17678
|
}, [page.limit, persistedPageSize, setPersistedPageSize, filter, searchString]);
|
|
@@ -17762,9 +17711,9 @@ function Header2(props) {
|
|
|
17762
17711
|
}
|
|
17763
17712
|
function SearchBox({ onSearch }) {
|
|
17764
17713
|
const [{ search: initialValue }, setQueryParams] = (0, import_use_query_params3.useQueryParams)({ search: import_use_query_params3.StringParam });
|
|
17765
|
-
const [value, setValue] = (0,
|
|
17714
|
+
const [value, setValue] = (0, import_react100.useState)(initialValue || "");
|
|
17766
17715
|
const [debouncedSearch] = (0, import_use_debounce7.useDebounce)(value, 300);
|
|
17767
|
-
(0,
|
|
17716
|
+
(0, import_react100.useEffect)(() => {
|
|
17768
17717
|
onSearch(debouncedSearch);
|
|
17769
17718
|
setQueryParams({ search: debouncedSearch || void 0 }, "replaceIn");
|
|
17770
17719
|
}, [debouncedSearch, onSearch, setQueryParams]);
|
|
@@ -17794,9 +17743,9 @@ function PreventBrowserScroll({ children }) {
|
|
|
17794
17743
|
}
|
|
17795
17744
|
|
|
17796
17745
|
// src/components/Layout/RightPaneLayout/RightPaneContext.tsx
|
|
17797
|
-
var
|
|
17746
|
+
var import_react101 = __toESM(require("react"), 1);
|
|
17798
17747
|
var import_jsx_runtime148 = require("@emotion/react/jsx-runtime");
|
|
17799
|
-
var RightPaneContext =
|
|
17748
|
+
var RightPaneContext = import_react101.default.createContext({
|
|
17800
17749
|
openInPane: () => {
|
|
17801
17750
|
},
|
|
17802
17751
|
closePane: () => {
|
|
@@ -17807,35 +17756,35 @@ var RightPaneContext = import_react102.default.createContext({
|
|
|
17807
17756
|
rightPaneContent: null
|
|
17808
17757
|
});
|
|
17809
17758
|
function RightPaneProvider({ children }) {
|
|
17810
|
-
const [rightPaneContent, setRightPaneContent] = (0,
|
|
17811
|
-
const [isRightPaneOpen, setIsRightPaneOpen] = (0,
|
|
17812
|
-
const openInPane = (0,
|
|
17759
|
+
const [rightPaneContent, setRightPaneContent] = (0, import_react101.useState)(void 0);
|
|
17760
|
+
const [isRightPaneOpen, setIsRightPaneOpen] = (0, import_react101.useState)(false);
|
|
17761
|
+
const openInPane = (0, import_react101.useCallback)(
|
|
17813
17762
|
(opts) => {
|
|
17814
17763
|
setRightPaneContent(opts?.content);
|
|
17815
17764
|
setIsRightPaneOpen(true);
|
|
17816
17765
|
},
|
|
17817
17766
|
[setRightPaneContent]
|
|
17818
17767
|
);
|
|
17819
|
-
const closePane = (0,
|
|
17820
|
-
const clearPane = (0,
|
|
17821
|
-
const context = (0,
|
|
17768
|
+
const closePane = (0, import_react101.useCallback)(() => setIsRightPaneOpen(false), []);
|
|
17769
|
+
const clearPane = (0, import_react101.useCallback)(() => setRightPaneContent(void 0), [setRightPaneContent]);
|
|
17770
|
+
const context = (0, import_react101.useMemo)(
|
|
17822
17771
|
() => ({ openInPane, closePane, clearPane, rightPaneContent, isRightPaneOpen }),
|
|
17823
17772
|
[openInPane, closePane, rightPaneContent, clearPane, isRightPaneOpen]
|
|
17824
17773
|
);
|
|
17825
17774
|
return /* @__PURE__ */ (0, import_jsx_runtime148.jsx)(RightPaneContext.Provider, { value: context, children });
|
|
17826
17775
|
}
|
|
17827
17776
|
function useRightPaneContext() {
|
|
17828
|
-
return (0,
|
|
17777
|
+
return (0, import_react101.useContext)(RightPaneContext);
|
|
17829
17778
|
}
|
|
17830
17779
|
|
|
17831
17780
|
// src/components/Layout/RightPaneLayout/RightPaneLayout.tsx
|
|
17832
17781
|
var import_framer_motion3 = require("framer-motion");
|
|
17833
|
-
var
|
|
17782
|
+
var import_react102 = require("react");
|
|
17834
17783
|
var import_jsx_runtime149 = require("@emotion/react/jsx-runtime");
|
|
17835
17784
|
function RightPaneLayout(props) {
|
|
17836
17785
|
const { children, paneBgColor = "rgba(255,255,255,1)" /* White */, paneWidth = 450, defaultPaneContent } = props;
|
|
17837
17786
|
const { isRightPaneOpen, rightPaneContent, clearPane, closePane } = useRightPaneContext();
|
|
17838
|
-
(0,
|
|
17787
|
+
(0, import_react102.useEffect)(() => closePane, [closePane]);
|
|
17839
17788
|
return /* @__PURE__ */ (0, import_jsx_runtime149.jsx)("div", { css: Css.h100.df.oxh.$, children: /* @__PURE__ */ (0, import_jsx_runtime149.jsxs)(import_jsx_runtime149.Fragment, { children: [
|
|
17840
17789
|
/* @__PURE__ */ (0, import_jsx_runtime149.jsx)(
|
|
17841
17790
|
"div",
|
|
@@ -17886,7 +17835,7 @@ function useRightPane() {
|
|
|
17886
17835
|
|
|
17887
17836
|
// src/components/BeamContext.tsx
|
|
17888
17837
|
var import_jsx_runtime150 = require("@emotion/react/jsx-runtime");
|
|
17889
|
-
var BeamContext = (0,
|
|
17838
|
+
var BeamContext = (0, import_react103.createContext)({
|
|
17890
17839
|
modalState: new EmptyRef(),
|
|
17891
17840
|
modalCanCloseChecks: new EmptyRef(),
|
|
17892
17841
|
modalHeaderDiv: void 0,
|
|
@@ -17898,21 +17847,21 @@ var BeamContext = (0, import_react104.createContext)({
|
|
|
17898
17847
|
sdHeaderDiv: void 0
|
|
17899
17848
|
});
|
|
17900
17849
|
function BeamProvider({ children, ...presentationProps }) {
|
|
17901
|
-
const [, tick] = (0,
|
|
17902
|
-
const modalRef = (0,
|
|
17903
|
-
const modalHeaderDiv = (0,
|
|
17904
|
-
const modalBodyDiv = (0,
|
|
17850
|
+
const [, tick] = (0, import_react103.useReducer)((prev) => prev + 1, 0);
|
|
17851
|
+
const modalRef = (0, import_react103.useRef)();
|
|
17852
|
+
const modalHeaderDiv = (0, import_react103.useMemo)(() => document.createElement("div"), []);
|
|
17853
|
+
const modalBodyDiv = (0, import_react103.useMemo)(() => {
|
|
17905
17854
|
const el = document.createElement("div");
|
|
17906
17855
|
el.style.height = "100%";
|
|
17907
17856
|
return el;
|
|
17908
17857
|
}, []);
|
|
17909
|
-
const modalCanCloseChecksRef = (0,
|
|
17910
|
-
const modalFooterDiv = (0,
|
|
17911
|
-
const drawerContentStackRef = (0,
|
|
17912
|
-
const drawerCanCloseChecks = (0,
|
|
17913
|
-
const drawerCanCloseDetailsChecks = (0,
|
|
17914
|
-
const sdHeaderDiv = (0,
|
|
17915
|
-
const context = (0,
|
|
17858
|
+
const modalCanCloseChecksRef = (0, import_react103.useRef)([]);
|
|
17859
|
+
const modalFooterDiv = (0, import_react103.useMemo)(() => document.createElement("div"), []);
|
|
17860
|
+
const drawerContentStackRef = (0, import_react103.useRef)([]);
|
|
17861
|
+
const drawerCanCloseChecks = (0, import_react103.useRef)([]);
|
|
17862
|
+
const drawerCanCloseDetailsChecks = (0, import_react103.useRef)([]);
|
|
17863
|
+
const sdHeaderDiv = (0, import_react103.useMemo)(() => document.createElement("div"), []);
|
|
17864
|
+
const context = (0, import_react103.useMemo)(() => {
|
|
17916
17865
|
return {
|
|
17917
17866
|
// These two keys need to trigger re-renders on change
|
|
17918
17867
|
modalState: new PretendRefThatTicks(modalRef, tick),
|
|
@@ -17949,18 +17898,18 @@ var PretendRefThatTicks = class {
|
|
|
17949
17898
|
}
|
|
17950
17899
|
};
|
|
17951
17900
|
function useBeamContext() {
|
|
17952
|
-
return (0,
|
|
17901
|
+
return (0, import_react103.useContext)(BeamContext);
|
|
17953
17902
|
}
|
|
17954
17903
|
|
|
17955
17904
|
// src/components/ButtonDatePicker.tsx
|
|
17956
|
-
var
|
|
17905
|
+
var import_react104 = require("react");
|
|
17957
17906
|
var import_react_aria46 = require("react-aria");
|
|
17958
17907
|
var import_react_stately18 = require("react-stately");
|
|
17959
17908
|
var import_jsx_runtime151 = require("@emotion/react/jsx-runtime");
|
|
17960
17909
|
function ButtonDatePicker(props) {
|
|
17961
17910
|
const { defaultOpen, disabled, trigger, onSelect, ...datePickerProps } = props;
|
|
17962
17911
|
const state = (0, import_react_stately18.useMenuTriggerState)({ isOpen: defaultOpen });
|
|
17963
|
-
const buttonRef = (0,
|
|
17912
|
+
const buttonRef = (0, import_react104.useRef)(null);
|
|
17964
17913
|
const {
|
|
17965
17914
|
menuTriggerProps,
|
|
17966
17915
|
menuProps: { autoFocus: _af, ...menuProps }
|
|
@@ -17983,7 +17932,7 @@ function ButtonDatePicker(props) {
|
|
|
17983
17932
|
}
|
|
17984
17933
|
|
|
17985
17934
|
// src/components/ButtonGroup.tsx
|
|
17986
|
-
var
|
|
17935
|
+
var import_react105 = require("react");
|
|
17987
17936
|
var import_react_aria47 = require("react-aria");
|
|
17988
17937
|
var import_jsx_runtime152 = (
|
|
17989
17938
|
// Disable the button if the ButtonGroup is disabled or if the current button is disabled.
|
|
@@ -18024,7 +17973,7 @@ function GroupButton(props) {
|
|
|
18024
17973
|
...otherProps
|
|
18025
17974
|
} = props;
|
|
18026
17975
|
const ariaProps = { onPress, isDisabled: !!disabled, ...otherProps };
|
|
18027
|
-
const ref = (0,
|
|
17976
|
+
const ref = (0, import_react105.useRef)(null);
|
|
18028
17977
|
const { buttonProps, isPressed } = (0, import_react_aria47.useButton)(ariaProps, ref);
|
|
18029
17978
|
const { isFocusVisible, focusProps } = (0, import_react_aria47.useFocusRing)();
|
|
18030
17979
|
const { hoverProps, isHovered } = (0, import_react_aria47.useHover)(ariaProps);
|
|
@@ -18083,19 +18032,19 @@ var iconStyles2 = {
|
|
|
18083
18032
|
};
|
|
18084
18033
|
|
|
18085
18034
|
// src/components/Card.tsx
|
|
18086
|
-
var
|
|
18035
|
+
var import_react107 = require("react");
|
|
18087
18036
|
var import_react_aria48 = require("react-aria");
|
|
18088
18037
|
|
|
18089
18038
|
// src/components/Tag.tsx
|
|
18090
18039
|
var import_utils116 = require("@react-aria/utils");
|
|
18091
|
-
var
|
|
18040
|
+
var import_react106 = require("react");
|
|
18092
18041
|
var import_jsx_runtime153 = require("@emotion/react/jsx-runtime");
|
|
18093
18042
|
function Tag(props) {
|
|
18094
18043
|
const { text, type, xss, preventTooltip = false, ...otherProps } = props;
|
|
18095
18044
|
const typeStyles2 = getStyles(type);
|
|
18096
18045
|
const tid = useTestIds(otherProps);
|
|
18097
|
-
const [showTooltip, setShowTooltip] = (0,
|
|
18098
|
-
const ref = (0,
|
|
18046
|
+
const [showTooltip, setShowTooltip] = (0, import_react106.useState)(false);
|
|
18047
|
+
const ref = (0, import_react106.useRef)(null);
|
|
18099
18048
|
(0, import_utils116.useResizeObserver)({
|
|
18100
18049
|
ref,
|
|
18101
18050
|
onResize: () => {
|
|
@@ -18146,7 +18095,7 @@ function Card(props) {
|
|
|
18146
18095
|
const { hoverProps, isHovered } = (0, import_react_aria48.useHover)({ isDisabled });
|
|
18147
18096
|
const isList = type === "list";
|
|
18148
18097
|
const imgHeight = isList ? 96 : bordered ? 224 : 256;
|
|
18149
|
-
const styles = (0,
|
|
18098
|
+
const styles = (0, import_react107.useMemo)(
|
|
18150
18099
|
() => ({
|
|
18151
18100
|
...baseStyles4(type),
|
|
18152
18101
|
...isList && listStyles,
|
|
@@ -18209,44 +18158,44 @@ function Copy(props) {
|
|
|
18209
18158
|
|
|
18210
18159
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
18211
18160
|
var import_fast_deep_equal2 = __toESM(require("fast-deep-equal"), 1);
|
|
18212
|
-
var
|
|
18161
|
+
var import_react109 = require("react");
|
|
18213
18162
|
|
|
18214
18163
|
// src/components/DnDGrid/DnDGridContext.tsx
|
|
18215
|
-
var
|
|
18216
|
-
var DnDGridContext = (0,
|
|
18164
|
+
var import_react108 = require("react");
|
|
18165
|
+
var DnDGridContext = (0, import_react108.createContext)({
|
|
18217
18166
|
dragEl: { current: void 0 },
|
|
18218
18167
|
onDragHandleKeyDown: () => {
|
|
18219
18168
|
}
|
|
18220
18169
|
});
|
|
18221
18170
|
function useDnDGridContext() {
|
|
18222
|
-
return (0,
|
|
18171
|
+
return (0, import_react108.useContext)(DnDGridContext);
|
|
18223
18172
|
}
|
|
18224
18173
|
|
|
18225
18174
|
// src/components/DnDGrid/DnDGrid.tsx
|
|
18226
18175
|
var import_jsx_runtime156 = require("@emotion/react/jsx-runtime");
|
|
18227
18176
|
function DnDGrid(props) {
|
|
18228
18177
|
const { children, gridStyles, onReorder, activeItemStyles } = props;
|
|
18229
|
-
const gridEl = (0,
|
|
18230
|
-
const dragEl = (0,
|
|
18231
|
-
const cloneEl = (0,
|
|
18232
|
-
const initialOrder = (0,
|
|
18233
|
-
const reorderViaKeyboard = (0,
|
|
18234
|
-
const transformFrom = (0,
|
|
18178
|
+
const gridEl = (0, import_react109.useRef)(null);
|
|
18179
|
+
const dragEl = (0, import_react109.useRef)();
|
|
18180
|
+
const cloneEl = (0, import_react109.useRef)();
|
|
18181
|
+
const initialOrder = (0, import_react109.useRef)();
|
|
18182
|
+
const reorderViaKeyboard = (0, import_react109.useRef)(false);
|
|
18183
|
+
const transformFrom = (0, import_react109.useRef)({ x: 0, y: 0 });
|
|
18235
18184
|
const tid = useTestIds(props, "dndGrid");
|
|
18236
18185
|
const activeStyles4 = activeItemStyles ?? Css.bshModal.$;
|
|
18237
|
-
const getGridItems = (0,
|
|
18186
|
+
const getGridItems = (0, import_react109.useCallback)(() => {
|
|
18238
18187
|
return gridEl.current ? Array.from(gridEl.current.querySelectorAll(`[${gridItemIdKey}]`)) : [];
|
|
18239
18188
|
}, []);
|
|
18240
|
-
const getGridItemIdOrder = (0,
|
|
18189
|
+
const getGridItemIdOrder = (0, import_react109.useCallback)(() => {
|
|
18241
18190
|
return getGridItems().map((child) => child.getAttribute(gridItemIdKey)).filter(isDefined);
|
|
18242
18191
|
}, [getGridItems]);
|
|
18243
|
-
const initReorder = (0,
|
|
18192
|
+
const initReorder = (0, import_react109.useCallback)(() => {
|
|
18244
18193
|
if (gridEl.current && dragEl.current) {
|
|
18245
18194
|
initialOrder.current = getGridItemIdOrder();
|
|
18246
18195
|
setInlineStyles(dragEl.current, activeStyles4);
|
|
18247
18196
|
}
|
|
18248
18197
|
}, [getGridItemIdOrder, activeStyles4]);
|
|
18249
|
-
const commitReorder = (0,
|
|
18198
|
+
const commitReorder = (0, import_react109.useCallback)(() => {
|
|
18250
18199
|
if (gridEl.current && dragEl.current) {
|
|
18251
18200
|
const currentOrder = getGridItemIdOrder();
|
|
18252
18201
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) onReorder(currentOrder);
|
|
@@ -18256,7 +18205,7 @@ function DnDGrid(props) {
|
|
|
18256
18205
|
initialOrder.current = currentOrder;
|
|
18257
18206
|
}
|
|
18258
18207
|
}, [onReorder, getGridItemIdOrder, activeStyles4]);
|
|
18259
|
-
const cancelReorder = (0,
|
|
18208
|
+
const cancelReorder = (0, import_react109.useCallback)(() => {
|
|
18260
18209
|
if (gridEl.current && dragEl.current && initialOrder.current) {
|
|
18261
18210
|
const currentOrder = getGridItemIdOrder();
|
|
18262
18211
|
if (!(0, import_fast_deep_equal2.default)(currentOrder, initialOrder.current)) {
|
|
@@ -18278,7 +18227,7 @@ function DnDGrid(props) {
|
|
|
18278
18227
|
reorderViaKeyboard.current = false;
|
|
18279
18228
|
}
|
|
18280
18229
|
}, [getGridItemIdOrder, getGridItems, activeStyles4]);
|
|
18281
|
-
const onMove = (0,
|
|
18230
|
+
const onMove = (0, import_react109.useCallback)((e) => {
|
|
18282
18231
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
18283
18232
|
const clientX = "clientX" in e ? e.clientX : e.touches[0].clientX;
|
|
18284
18233
|
const clientY = "clientY" in e ? e.clientY : e.touches[0].clientY;
|
|
@@ -18299,7 +18248,7 @@ function DnDGrid(props) {
|
|
|
18299
18248
|
}
|
|
18300
18249
|
}
|
|
18301
18250
|
}, []);
|
|
18302
|
-
const onDragStart = (0,
|
|
18251
|
+
const onDragStart = (0, import_react109.useCallback)(
|
|
18303
18252
|
(e) => {
|
|
18304
18253
|
if (!reorderViaKeyboard.current && dragEl.current && gridEl.current) {
|
|
18305
18254
|
initReorder();
|
|
@@ -18332,7 +18281,7 @@ function DnDGrid(props) {
|
|
|
18332
18281
|
},
|
|
18333
18282
|
[initReorder, onMove, activeStyles4]
|
|
18334
18283
|
);
|
|
18335
|
-
const onDragEnd = (0,
|
|
18284
|
+
const onDragEnd = (0, import_react109.useCallback)(
|
|
18336
18285
|
(e) => {
|
|
18337
18286
|
if (!reorderViaKeyboard.current && dragEl.current && cloneEl.current && gridEl.current) {
|
|
18338
18287
|
e.preventDefault();
|
|
@@ -18348,7 +18297,7 @@ function DnDGrid(props) {
|
|
|
18348
18297
|
},
|
|
18349
18298
|
[commitReorder, onMove]
|
|
18350
18299
|
);
|
|
18351
|
-
const onDragHandleKeyDown = (0,
|
|
18300
|
+
const onDragHandleKeyDown = (0, import_react109.useCallback)(
|
|
18352
18301
|
(e) => {
|
|
18353
18302
|
const moveHandle = e.target;
|
|
18354
18303
|
if (dragEl.current instanceof HTMLElement && moveHandle instanceof HTMLElement && gridEl.current) {
|
|
@@ -18445,11 +18394,11 @@ function DnDGridItemHandle(props) {
|
|
|
18445
18394
|
}
|
|
18446
18395
|
|
|
18447
18396
|
// src/components/DnDGrid/useDnDGridItem.tsx
|
|
18448
|
-
var
|
|
18397
|
+
var import_react110 = require("react");
|
|
18449
18398
|
function useDnDGridItem(props) {
|
|
18450
18399
|
const { id, itemRef } = props;
|
|
18451
18400
|
const { dragEl, onDragHandleKeyDown } = useDnDGridContext();
|
|
18452
|
-
const { dragItemProps, dragHandleProps } = (0,
|
|
18401
|
+
const { dragItemProps, dragHandleProps } = (0, import_react110.useMemo)(
|
|
18453
18402
|
() => {
|
|
18454
18403
|
function initDraggable() {
|
|
18455
18404
|
if (itemRef.current) {
|
|
@@ -18476,19 +18425,19 @@ function useDnDGridItem(props) {
|
|
|
18476
18425
|
}
|
|
18477
18426
|
|
|
18478
18427
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
18479
|
-
var
|
|
18428
|
+
var import_react112 = require("react");
|
|
18480
18429
|
|
|
18481
18430
|
// src/components/Grid/utils.ts
|
|
18482
|
-
var
|
|
18431
|
+
var import_react111 = require("react");
|
|
18483
18432
|
var gridItemDataAttribute = "data-grid-item-span";
|
|
18484
|
-
var ResponsiveGridContext = (0,
|
|
18433
|
+
var ResponsiveGridContext = (0, import_react111.createContext)(void 0);
|
|
18485
18434
|
|
|
18486
18435
|
// src/components/Grid/ResponsiveGrid.tsx
|
|
18487
18436
|
var import_jsx_runtime158 = require("@emotion/react/jsx-runtime");
|
|
18488
18437
|
function ResponsiveGrid(props) {
|
|
18489
18438
|
const { children, minColumnWidth, gap, columns } = props;
|
|
18490
18439
|
const { gridStyles } = useResponsiveGrid({ minColumnWidth, gap, columns });
|
|
18491
|
-
const config = (0,
|
|
18440
|
+
const config = (0, import_react112.useMemo)(() => ({ minColumnWidth, gap, columns }), [minColumnWidth, gap, columns]);
|
|
18492
18441
|
return /* @__PURE__ */ (0, import_jsx_runtime158.jsx)(ResponsiveGridContext.Provider, { value: config, children: /* @__PURE__ */ (0, import_jsx_runtime158.jsx)("div", { css: { ...gridStyles }, children }) });
|
|
18493
18442
|
}
|
|
18494
18443
|
|
|
@@ -18501,10 +18450,10 @@ function ResponsiveGridItem(props) {
|
|
|
18501
18450
|
}
|
|
18502
18451
|
|
|
18503
18452
|
// src/components/Grid/useResponsiveGrid.ts
|
|
18504
|
-
var
|
|
18453
|
+
var import_react113 = require("react");
|
|
18505
18454
|
function useResponsiveGrid(props) {
|
|
18506
18455
|
const { minColumnWidth, gap, columns } = props;
|
|
18507
|
-
const gridStyles = (0,
|
|
18456
|
+
const gridStyles = (0, import_react113.useMemo)(() => {
|
|
18508
18457
|
const gapCount = columns - 1;
|
|
18509
18458
|
const totalGapWidth = gap * gapCount;
|
|
18510
18459
|
const maxColumnWidth = `calc((100% - ${totalGapWidth}px) / ${columns})`;
|
|
@@ -18516,12 +18465,12 @@ function useResponsiveGrid(props) {
|
|
|
18516
18465
|
}
|
|
18517
18466
|
|
|
18518
18467
|
// src/components/Grid/useResponsiveGridItem.ts
|
|
18519
|
-
var
|
|
18468
|
+
var import_react114 = require("react");
|
|
18520
18469
|
function useResponsiveGridItem(props) {
|
|
18521
18470
|
const { colSpan = 1, gridConfig } = props;
|
|
18522
|
-
const contextConfig = (0,
|
|
18471
|
+
const contextConfig = (0, import_react114.useContext)(ResponsiveGridContext);
|
|
18523
18472
|
const config = gridConfig ?? contextConfig;
|
|
18524
|
-
const gridItemStyles = (0,
|
|
18473
|
+
const gridItemStyles = (0, import_react114.useMemo)(() => {
|
|
18525
18474
|
if (!config || colSpan <= 1) return {};
|
|
18526
18475
|
const { minColumnWidth, gap } = config;
|
|
18527
18476
|
let styles = {};
|
|
@@ -18541,7 +18490,7 @@ function useResponsiveGridItem(props) {
|
|
|
18541
18490
|
}
|
|
18542
18491
|
|
|
18543
18492
|
// src/components/HbLoadingSpinner.tsx
|
|
18544
|
-
var
|
|
18493
|
+
var import_react115 = __toESM(require("react"), 1);
|
|
18545
18494
|
|
|
18546
18495
|
// src/components/HbLoadingSpinner.base64.ts
|
|
18547
18496
|
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";
|
|
@@ -18549,9 +18498,9 @@ var HbLoadingSpinner_base64_default = "data:image/gif,GIF89a%80%00%80%00%E7%00%0
|
|
|
18549
18498
|
// src/components/HbLoadingSpinner.tsx
|
|
18550
18499
|
var import_jsx_runtime160 = require("@emotion/react/jsx-runtime");
|
|
18551
18500
|
function HbLoadingSpinner({ noQuips, extraQuips = [], extraQuipsOnly, iconOnly }) {
|
|
18552
|
-
const ctx = (0,
|
|
18501
|
+
const ctx = (0, import_react115.useContext)(HbLoadingSpinnerContext);
|
|
18553
18502
|
const tid = useTestIds({}, "hbSpinner");
|
|
18554
|
-
const quip = (0,
|
|
18503
|
+
const quip = (0, import_react115.useMemo)(() => {
|
|
18555
18504
|
const allQuips = extraQuipsOnly && extraQuips.length !== 0 ? extraQuips : [...ctx.quips, ...extraQuips];
|
|
18556
18505
|
const forceQuips = extraQuips.length !== 0 || noQuips === false;
|
|
18557
18506
|
if (ctx.noQuips && !forceQuips || noQuips || allQuips.length === 0) return "Loading...";
|
|
@@ -18591,31 +18540,31 @@ var HB_QUIPS_MISSION = [
|
|
|
18591
18540
|
"In Service of Our Customers"
|
|
18592
18541
|
].map(dotDotDot);
|
|
18593
18542
|
var HB_QUIPS_FLAVOR = ["HOM is HOW", "Scaling Massively", "#LoveIt"].map(dotDotDot);
|
|
18594
|
-
var HbLoadingSpinnerContext =
|
|
18543
|
+
var HbLoadingSpinnerContext = import_react115.default.createContext({
|
|
18595
18544
|
quips: ["Loading..."],
|
|
18596
18545
|
noQuips: false
|
|
18597
18546
|
});
|
|
18598
18547
|
function HbSpinnerProvider({ quips = [], children }) {
|
|
18599
|
-
const state = (0,
|
|
18548
|
+
const state = (0, import_react115.useMemo)(() => ({ quips, noQuips: quips.length === 0 }), [quips]);
|
|
18600
18549
|
return /* @__PURE__ */ (0, import_jsx_runtime160.jsx)(HbLoadingSpinnerContext.Provider, { value: state, children });
|
|
18601
18550
|
}
|
|
18602
18551
|
|
|
18603
18552
|
// src/components/MaxLines.tsx
|
|
18604
18553
|
var import_utils124 = require("@react-aria/utils");
|
|
18605
|
-
var
|
|
18554
|
+
var import_react116 = require("react");
|
|
18606
18555
|
var import_jsx_runtime161 = require("@emotion/react/jsx-runtime");
|
|
18607
18556
|
function MaxLines({ maxLines, children }) {
|
|
18608
|
-
const elRef = (0,
|
|
18609
|
-
const [hasMore, setHasMore] = (0,
|
|
18610
|
-
const [expanded, setExpanded] = (0,
|
|
18557
|
+
const elRef = (0, import_react116.useRef)(null);
|
|
18558
|
+
const [hasMore, setHasMore] = (0, import_react116.useState)(false);
|
|
18559
|
+
const [expanded, setExpanded] = (0, import_react116.useState)(false);
|
|
18611
18560
|
(0, import_utils124.useLayoutEffect)(() => {
|
|
18612
18561
|
if (!elRef.current) return;
|
|
18613
18562
|
setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
18614
18563
|
}, []);
|
|
18615
|
-
(0,
|
|
18564
|
+
(0, import_react116.useEffect)(() => {
|
|
18616
18565
|
setExpanded(false);
|
|
18617
18566
|
}, [children]);
|
|
18618
|
-
const onResize = (0,
|
|
18567
|
+
const onResize = (0, import_react116.useCallback)(() => {
|
|
18619
18568
|
if (!elRef.current) return;
|
|
18620
18569
|
!expanded && setHasMore(elRef.current.scrollHeight > elRef.current.clientHeight);
|
|
18621
18570
|
}, [expanded]);
|
|
@@ -18628,7 +18577,7 @@ function MaxLines({ maxLines, children }) {
|
|
|
18628
18577
|
|
|
18629
18578
|
// src/components/ScrollShadows.tsx
|
|
18630
18579
|
var import_utils125 = require("@react-aria/utils");
|
|
18631
|
-
var
|
|
18580
|
+
var import_react117 = require("react");
|
|
18632
18581
|
var import_jsx_runtime162 = require("@emotion/react/jsx-runtime");
|
|
18633
18582
|
function ScrollShadows(props) {
|
|
18634
18583
|
const { children, xss, horizontal = false, bgColor = "rgba(255,255,255,1)" /* White */ } = props;
|
|
@@ -18637,10 +18586,10 @@ function ScrollShadows(props) {
|
|
|
18637
18586
|
if (!bgColor.includes("rgba")) {
|
|
18638
18587
|
throw new Error("ScrollShadows: bgColor prop must be in the format 'rgba(255, 255, 255, 1)'");
|
|
18639
18588
|
}
|
|
18640
|
-
const [showStartShadow, setShowStartShadow] = (0,
|
|
18641
|
-
const [showEndShadow, setShowEndShadow] = (0,
|
|
18642
|
-
const scrollRef = (0,
|
|
18643
|
-
const [startShadowStyles, endShadowStyles] = (0,
|
|
18589
|
+
const [showStartShadow, setShowStartShadow] = (0, import_react117.useState)(false);
|
|
18590
|
+
const [showEndShadow, setShowEndShadow] = (0, import_react117.useState)(false);
|
|
18591
|
+
const scrollRef = (0, import_react117.useRef)(null);
|
|
18592
|
+
const [startShadowStyles, endShadowStyles] = (0, import_react117.useMemo)(() => {
|
|
18644
18593
|
const transparentBgColor = bgColor.replace(/,1\)$/, ",0)");
|
|
18645
18594
|
const commonStyles = Css.absolute.z3.add({ pointerEvents: "none" }).$;
|
|
18646
18595
|
const startShadowStyles2 = !horizontal ? Css.top0.left0.right0.hPx(40).$ : Css.left0.top0.bottom0.wPx(25).$;
|
|
@@ -18652,7 +18601,7 @@ function ScrollShadows(props) {
|
|
|
18652
18601
|
{ ...commonStyles, ...endShadowStyles2, ...Css.add("background", endGradient).$ }
|
|
18653
18602
|
];
|
|
18654
18603
|
}, [horizontal, bgColor]);
|
|
18655
|
-
const updateScrollProps = (0,
|
|
18604
|
+
const updateScrollProps = (0, import_react117.useCallback)(
|
|
18656
18605
|
(el) => {
|
|
18657
18606
|
const { scrollTop, scrollHeight, clientHeight, scrollWidth, scrollLeft, clientWidth } = el;
|
|
18658
18607
|
const start = horizontal ? scrollLeft : scrollTop;
|
|
@@ -18663,7 +18612,7 @@ function ScrollShadows(props) {
|
|
|
18663
18612
|
},
|
|
18664
18613
|
[horizontal]
|
|
18665
18614
|
);
|
|
18666
|
-
const onResize = (0,
|
|
18615
|
+
const onResize = (0, import_react117.useCallback)(() => scrollRef.current && updateScrollProps(scrollRef.current), [updateScrollProps]);
|
|
18667
18616
|
(0, import_utils125.useResizeObserver)({ ref: scrollRef, onResize });
|
|
18668
18617
|
return /* @__PURE__ */ (0, import_jsx_runtime162.jsxs)(
|
|
18669
18618
|
"div",
|
|
@@ -18691,10 +18640,10 @@ function ScrollShadows(props) {
|
|
|
18691
18640
|
}
|
|
18692
18641
|
|
|
18693
18642
|
// src/components/Snackbar/useSnackbar.tsx
|
|
18694
|
-
var
|
|
18643
|
+
var import_react118 = require("react");
|
|
18695
18644
|
function useSnackbar() {
|
|
18696
18645
|
const { setNotices, setOffset } = useSnackbarContext();
|
|
18697
|
-
const onClose = (0,
|
|
18646
|
+
const onClose = (0, import_react118.useCallback)(
|
|
18698
18647
|
(noticeId) => {
|
|
18699
18648
|
setNotices((prev) => {
|
|
18700
18649
|
let returnValue = prev;
|
|
@@ -18711,7 +18660,7 @@ function useSnackbar() {
|
|
|
18711
18660
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
18712
18661
|
[]
|
|
18713
18662
|
);
|
|
18714
|
-
const triggerNotice = (0,
|
|
18663
|
+
const triggerNotice = (0, import_react118.useCallback)(
|
|
18715
18664
|
(props) => {
|
|
18716
18665
|
const noticeId = props.id ?? `beamSnackbar:${snackbarId++}`;
|
|
18717
18666
|
let maybeTimeout;
|
|
@@ -18740,8 +18689,8 @@ function useSnackbar() {
|
|
|
18740
18689
|
},
|
|
18741
18690
|
[onClose, setNotices]
|
|
18742
18691
|
);
|
|
18743
|
-
const closeNotice = (0,
|
|
18744
|
-
const useSnackbarOffset = ({ bottom }) => (0,
|
|
18692
|
+
const closeNotice = (0, import_react118.useCallback)((id) => onClose(id), [onClose]);
|
|
18693
|
+
const useSnackbarOffset = ({ bottom }) => (0, import_react118.useEffect)(() => {
|
|
18745
18694
|
setOffset({ bottom });
|
|
18746
18695
|
return () => setOffset({});
|
|
18747
18696
|
}, [bottom]);
|
|
@@ -18750,7 +18699,7 @@ function useSnackbar() {
|
|
|
18750
18699
|
var snackbarId = 1;
|
|
18751
18700
|
|
|
18752
18701
|
// src/components/Stepper.tsx
|
|
18753
|
-
var
|
|
18702
|
+
var import_react119 = require("react");
|
|
18754
18703
|
var import_react_aria50 = require("react-aria");
|
|
18755
18704
|
var import_jsx_runtime163 = require("@emotion/react/jsx-runtime");
|
|
18756
18705
|
function Stepper(props) {
|
|
@@ -18794,7 +18743,7 @@ function Stepper(props) {
|
|
|
18794
18743
|
function StepButton(props) {
|
|
18795
18744
|
const { label, disabled, state, isCurrent, onClick } = props;
|
|
18796
18745
|
const ariaProps = { onPress: onClick, isDisabled: disabled };
|
|
18797
|
-
const ref = (0,
|
|
18746
|
+
const ref = (0, import_react119.useRef)(null);
|
|
18798
18747
|
const { buttonProps, isPressed } = (0, import_react_aria50.useButton)(ariaProps, ref);
|
|
18799
18748
|
const { isFocusVisible, focusProps } = (0, import_react_aria50.useFocusRing)();
|
|
18800
18749
|
const { hoverProps, isHovered } = (0, import_react_aria50.useHover)(ariaProps);
|
|
@@ -18909,7 +18858,7 @@ function ConfirmCloseModal(props) {
|
|
|
18909
18858
|
var import_framer_motion4 = require("framer-motion");
|
|
18910
18859
|
|
|
18911
18860
|
// src/components/SuperDrawer/useSuperDrawer.tsx
|
|
18912
|
-
var
|
|
18861
|
+
var import_react120 = require("react");
|
|
18913
18862
|
var import_jsx_runtime166 = require("@emotion/react/jsx-runtime");
|
|
18914
18863
|
function useSuperDrawer() {
|
|
18915
18864
|
const {
|
|
@@ -18949,7 +18898,7 @@ function useSuperDrawer() {
|
|
|
18949
18898
|
}
|
|
18950
18899
|
doChange();
|
|
18951
18900
|
}
|
|
18952
|
-
const closeActions = (0,
|
|
18901
|
+
const closeActions = (0, import_react120.useMemo)(
|
|
18953
18902
|
() => {
|
|
18954
18903
|
return {
|
|
18955
18904
|
/** Attempts to close the drawer. If any checks fail, a confirmation modal will appear */
|
|
@@ -18984,7 +18933,7 @@ function useSuperDrawer() {
|
|
|
18984
18933
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
18985
18934
|
[canCloseChecks, canCloseDetailsChecks, contentStack, modalState, openModal]
|
|
18986
18935
|
);
|
|
18987
|
-
const actions = (0,
|
|
18936
|
+
const actions = (0, import_react120.useMemo)(
|
|
18988
18937
|
() => {
|
|
18989
18938
|
return {
|
|
18990
18939
|
// TODO: Maybe we should rename to openDrawer as a breaking change (to match openDrawerDetail)
|
|
@@ -19083,7 +19032,7 @@ var SuperDrawerContent = ({ children, actions }) => {
|
|
|
19083
19032
|
|
|
19084
19033
|
// src/components/Tabs.tsx
|
|
19085
19034
|
var import_change_case7 = require("change-case");
|
|
19086
|
-
var
|
|
19035
|
+
var import_react121 = require("react");
|
|
19087
19036
|
var import_react_aria51 = require("react-aria");
|
|
19088
19037
|
var import_react_router2 = require("react-router");
|
|
19089
19038
|
var import_react_router_dom5 = require("react-router-dom");
|
|
@@ -19129,9 +19078,9 @@ function Tabs(props) {
|
|
|
19129
19078
|
) : props.selected;
|
|
19130
19079
|
const { isFocusVisible, focusProps } = (0, import_react_aria51.useFocusRing)();
|
|
19131
19080
|
const tid = useTestIds(others, "tabs");
|
|
19132
|
-
const [active, setActive] = (0,
|
|
19133
|
-
const ref = (0,
|
|
19134
|
-
(0,
|
|
19081
|
+
const [active, setActive] = (0, import_react121.useState)(selected);
|
|
19082
|
+
const ref = (0, import_react121.useRef)(null);
|
|
19083
|
+
(0, import_react121.useEffect)(() => setActive(selected), [selected]);
|
|
19135
19084
|
function onKeyUp(e) {
|
|
19136
19085
|
if (e.key === "ArrowLeft" || e.key === "ArrowRight") {
|
|
19137
19086
|
const nextTabValue = getNextTabValue(active, e.key, tabs);
|
|
@@ -19173,7 +19122,7 @@ function TabImpl(props) {
|
|
|
19173
19122
|
const { disabled = false, name: label, icon, endAdornment } = tab;
|
|
19174
19123
|
const isDisabled = !!disabled;
|
|
19175
19124
|
const { hoverProps, isHovered } = (0, import_react_aria51.useHover)({ isDisabled });
|
|
19176
|
-
const { baseStyles: baseStyles5, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles4, activeHoverStyles } = (0,
|
|
19125
|
+
const { baseStyles: baseStyles5, activeStyles: activeStyles4, focusRingStyles: focusRingStyles2, hoverStyles: hoverStyles4, disabledStyles: disabledStyles4, activeHoverStyles } = (0, import_react121.useMemo)(
|
|
19177
19126
|
() => getTabStyles(),
|
|
19178
19127
|
[]
|
|
19179
19128
|
);
|
|
@@ -19245,10 +19194,10 @@ function hideTabs(props) {
|
|
|
19245
19194
|
}
|
|
19246
19195
|
|
|
19247
19196
|
// src/components/Toast/useToast.tsx
|
|
19248
|
-
var
|
|
19197
|
+
var import_react122 = require("react");
|
|
19249
19198
|
function useToast() {
|
|
19250
19199
|
const { setNotice, clear } = useToastContext();
|
|
19251
|
-
const showToast = (0,
|
|
19200
|
+
const showToast = (0, import_react122.useCallback)((props) => setNotice(props), [setNotice]);
|
|
19252
19201
|
return { showToast, clear };
|
|
19253
19202
|
}
|
|
19254
19203
|
// Annotate the CommonJS export names for ESM import in node:
|