@ultraviolet/plus 3.0.0-beta.8 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/CodeEditor/CodeEditor.d.ts +3 -2
- package/dist/components/CodeEditor/CodeEditor.js +44 -13
- package/dist/components/ContentCard/Skeleton.d.ts +1 -1
- package/dist/components/ContentCard/Skeleton.js +13 -8
- package/dist/components/ContentCard/index.d.ts +2 -1
- package/dist/components/ContentCard/index.js +131 -50
- package/dist/components/ContentCardGroup/Card.d.ts +2 -1
- package/dist/components/ContentCardGroup/Card.js +65 -86
- package/dist/components/ContentCardGroup/SkeletonCard.d.ts +1 -1
- package/dist/components/ContentCardGroup/SkeletonCard.js +4 -22
- package/dist/components/ContentCardGroup/index.d.ts +3 -1
- package/dist/components/ContentCardGroup/index.js +12 -18
- package/dist/components/ContentCardGroup/styles.css.d.ts +7 -0
- package/dist/components/ContentCardGroup/styles.css.js +18 -0
- package/dist/components/Conversation/index.d.ts +25 -17
- package/dist/components/Conversation/index.js +37 -103
- package/dist/components/Conversation/styles.css.d.ts +7 -0
- package/dist/components/Conversation/styles.css.js +17 -0
- package/dist/components/CustomerSatisfaction/index.d.ts +3 -1
- package/dist/components/CustomerSatisfaction/index.js +70 -96
- package/dist/components/CustomerSatisfaction/styles.css.d.ts +17 -0
- package/dist/components/CustomerSatisfaction/styles.css.js +6 -0
- package/dist/components/EstimateCost/Components/CustomUnitInput.d.ts +1 -1
- package/dist/components/EstimateCost/Components/CustomUnitInput.js +47 -27
- package/dist/components/EstimateCost/Components/Item.d.ts +3 -2
- package/dist/components/EstimateCost/Components/Item.js +308 -288
- package/dist/components/EstimateCost/Components/LineThrough.d.ts +3 -5
- package/dist/components/EstimateCost/Components/LineThrough.js +12 -12
- package/dist/components/EstimateCost/Components/NumberInput.d.ts +1 -1
- package/dist/components/EstimateCost/Components/NumberInput.js +18 -10
- package/dist/components/EstimateCost/Components/Region.d.ts +2 -2
- package/dist/components/EstimateCost/Components/Region.js +44 -33
- package/dist/components/EstimateCost/Components/Regular.d.ts +3 -2
- package/dist/components/EstimateCost/Components/Regular.js +21 -29
- package/dist/components/EstimateCost/Components/Strong.d.ts +3 -10
- package/dist/components/EstimateCost/Components/Strong.js +13 -24
- package/dist/components/EstimateCost/Components/Unit.d.ts +3 -1
- package/dist/components/EstimateCost/Components/Unit.js +23 -31
- package/dist/components/EstimateCost/Components/Zone.d.ts +3 -1
- package/dist/components/EstimateCost/Components/Zone.js +42 -32
- package/dist/components/EstimateCost/Components/components.css.d.ts +77 -0
- package/dist/components/EstimateCost/Components/components.css.js +124 -0
- package/dist/components/EstimateCost/EstimateCost.d.ts +29 -29
- package/dist/components/EstimateCost/EstimateCost.js +74 -25
- package/dist/components/EstimateCost/EstimateCostContent.d.ts +1 -1
- package/dist/components/EstimateCost/EstimateCostContent.js +270 -174
- package/dist/components/EstimateCost/EstimateCostProvider.d.ts +1 -1
- package/dist/components/EstimateCost/EstimateCostProvider.js +24 -21
- package/dist/components/EstimateCost/OverlayComponent.d.ts +1 -1
- package/dist/components/EstimateCost/OverlayComponent.js +57 -81
- package/dist/components/EstimateCost/OverlayContext.d.ts +1 -1
- package/dist/components/EstimateCost/OverlayContext.js +2 -4
- package/dist/components/EstimateCost/constants.js +0 -4
- package/dist/components/EstimateCost/styles.css.d.ts +76 -0
- package/dist/components/EstimateCost/styles.css.js +50 -0
- package/dist/components/EstimateCost/types.d.ts +2 -1
- package/dist/components/FAQ/index.d.ts +3 -1
- package/dist/components/FAQ/index.js +4 -3
- package/dist/components/FAQ/styles.css.js +0 -1
- package/dist/components/InfoTable/InfoTable.d.ts +9 -6
- package/dist/components/InfoTable/InfoTable.js +14 -18
- package/dist/components/InfoTable/components/Cell.d.ts +3 -6
- package/dist/components/InfoTable/components/Cell.js +28 -34
- package/dist/components/InfoTable/components/Row.d.ts +3 -14
- package/dist/components/InfoTable/components/Row.js +25 -18
- package/dist/components/InfoTable/context.d.ts +3 -0
- package/dist/components/InfoTable/context.js +5 -0
- package/dist/components/InfoTable/styles.css.d.ts +6 -0
- package/dist/components/InfoTable/styles.css.js +15 -0
- package/dist/components/Navigation/Footer.d.ts +1 -1
- package/dist/components/Navigation/Footer.js +35 -33
- package/dist/components/Navigation/Header.d.ts +1 -1
- package/dist/components/Navigation/Header.js +13 -26
- package/dist/components/Navigation/Navigation.d.ts +11 -8
- package/dist/components/Navigation/Navigation.js +2 -5
- package/dist/components/Navigation/NavigationContent.d.ts +1 -1
- package/dist/components/Navigation/NavigationContent.js +60 -71
- package/dist/components/Navigation/NavigationProvider.d.ts +1 -1
- package/dist/components/Navigation/NavigationProvider.js +108 -70
- package/dist/components/Navigation/animations.css.d.ts +6 -0
- package/dist/components/Navigation/components/Group.d.ts +3 -2
- package/dist/components/Navigation/components/Group.js +21 -43
- package/dist/components/Navigation/components/Item.d.ts +3 -2
- package/dist/components/Navigation/components/Item.js +552 -405
- package/dist/components/Navigation/components/ItemProvider.d.ts +1 -1
- package/dist/components/Navigation/components/ItemProvider.js +2 -4
- package/dist/components/Navigation/components/PinnedItems.d.ts +3 -2
- package/dist/components/Navigation/components/PinnedItems.js +95 -75
- package/dist/components/Navigation/components/Separator.d.ts +1 -1
- package/dist/components/Navigation/components/Separator.js +3 -11
- package/dist/components/Navigation/components/items.css.d.ts +70 -0
- package/dist/components/Navigation/components/items.css.js +47 -0
- package/dist/components/Navigation/components/styles.css.d.ts +23 -0
- package/dist/components/Navigation/components/styles.css.js +17 -0
- package/dist/components/Navigation/constants.d.ts +0 -12
- package/dist/components/Navigation/constants.js +1 -28
- package/dist/components/Navigation/styles.css.d.ts +33 -0
- package/dist/components/Navigation/styles.css.js +22 -0
- package/dist/components/Navigation/types.d.ts +2 -1
- package/dist/components/Navigation/variables.css.d.ts +1 -0
- package/dist/components/Navigation/variables.css.js +5 -0
- package/dist/components/OfferList/OfferList.d.ts +9 -6
- package/dist/components/OfferList/OfferList.js +43 -22
- package/dist/components/OfferList/OfferListProvider.d.ts +1 -1
- package/dist/components/OfferList/OfferListProvider.js +25 -15
- package/dist/components/OfferList/components/Banner.d.ts +1 -1
- package/dist/components/OfferList/components/Banner.js +32 -95
- package/dist/components/OfferList/components/Cell.d.ts +1 -1
- package/dist/components/OfferList/components/Cell.js +16 -37
- package/dist/components/OfferList/components/Row.d.ts +4 -2
- package/dist/components/OfferList/components/Row.js +141 -125
- package/dist/components/OfferList/styles.css.d.ts +42 -0
- package/dist/components/OfferList/styles.css.js +38 -0
- package/dist/components/OrderSummary/NonScrollableContent.d.ts +1 -1
- package/dist/components/OrderSummary/NonScrollableContent.js +70 -34
- package/dist/components/OrderSummary/Provider.js +1 -4
- package/dist/components/OrderSummary/ScrollableContent.d.ts +1 -1
- package/dist/components/OrderSummary/ScrollableContent.js +177 -67
- package/dist/components/OrderSummary/constants.js +7 -1
- package/dist/components/OrderSummary/helpers.js +39 -21
- package/dist/components/OrderSummary/index.d.ts +1 -1
- package/dist/components/OrderSummary/index.js +139 -83
- package/dist/components/OrderSummary/styles.css.d.ts +8 -0
- package/dist/components/OrderSummary/styles.css.js +19 -0
- package/dist/components/OrderSummary/types.d.ts +3 -1
- package/dist/components/Plans/FeatureHint.d.ts +1 -1
- package/dist/components/Plans/FeatureHint.js +27 -25
- package/dist/components/Plans/PlanHeader.d.ts +1 -1
- package/dist/components/Plans/PlanHeader.js +80 -84
- package/dist/components/Plans/index.d.ts +3 -1
- package/dist/components/Plans/index.js +150 -109
- package/dist/components/Plans/styles.css.d.ts +61 -0
- package/dist/components/Plans/styles.css.js +26 -0
- package/dist/components/SteppedListCard/Step.d.ts +6 -1
- package/dist/components/SteppedListCard/Step.js +44 -32
- package/dist/components/SteppedListCard/SteppedListCard.d.ts +9 -5
- package/dist/components/SteppedListCard/SteppedListCard.js +70 -45
- package/dist/components/SteppedListCard/SteppedListContent.d.ts +4 -3
- package/dist/components/SteppedListCard/SteppedListContent.js +20 -51
- package/dist/components/SteppedListCard/helper.d.ts +1 -1
- package/dist/components/SteppedListCard/helper.js +4 -1
- package/dist/components/SteppedListCard/styles.css.d.ts +8 -0
- package/dist/components/SteppedListCard/styles.css.js +19 -0
- package/dist/plus.css +1 -1
- package/package.json +13 -16
- package/dist/components/CodeEditor/CodeEditor.cjs +0 -49
- package/dist/components/CodeEditor/styles.css.cjs +0 -9
- package/dist/components/ContentCard/Skeleton.cjs +0 -23
- package/dist/components/ContentCard/index.cjs +0 -61
- package/dist/components/ContentCard/styles.css.cjs +0 -27
- package/dist/components/ContentCardGroup/Card.cjs +0 -94
- package/dist/components/ContentCardGroup/SkeletonCard.cjs +0 -35
- package/dist/components/ContentCardGroup/index.cjs +0 -31
- package/dist/components/Conversation/index.cjs +0 -127
- package/dist/components/CustomerSatisfaction/assets/1-5.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/1-5NB.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/2-5.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/2-5NB.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/3-5.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/3-5NB.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/4-5.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/4-5NB.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/5-5.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/assets/5-5NB.svg.cjs +0 -3
- package/dist/components/CustomerSatisfaction/index.cjs +0 -123
- package/dist/components/EstimateCost/Components/CustomUnitInput.cjs +0 -34
- package/dist/components/EstimateCost/Components/Item.cjs +0 -303
- package/dist/components/EstimateCost/Components/LineThrough.cjs +0 -19
- package/dist/components/EstimateCost/Components/NumberInput.cjs +0 -31
- package/dist/components/EstimateCost/Components/Region.cjs +0 -43
- package/dist/components/EstimateCost/Components/Regular.cjs +0 -37
- package/dist/components/EstimateCost/Components/Strong.cjs +0 -30
- package/dist/components/EstimateCost/Components/Unit.cjs +0 -53
- package/dist/components/EstimateCost/Components/Zone.cjs +0 -42
- package/dist/components/EstimateCost/EstimateCost.cjs +0 -90
- package/dist/components/EstimateCost/EstimateCostContent.cjs +0 -256
- package/dist/components/EstimateCost/EstimateCostProvider.cjs +0 -37
- package/dist/components/EstimateCost/OverlayComponent.cjs +0 -123
- package/dist/components/EstimateCost/OverlayContext.cjs +0 -15
- package/dist/components/EstimateCost/componentStyle.cjs +0 -221
- package/dist/components/EstimateCost/componentStyle.d.ts +0 -106
- package/dist/components/EstimateCost/componentStyle.js +0 -219
- package/dist/components/EstimateCost/constants.cjs +0 -32
- package/dist/components/EstimateCost/helper.cjs +0 -16
- package/dist/components/EstimateCost/locales/en.cjs +0 -23
- package/dist/components/FAQ/index.cjs +0 -48
- package/dist/components/FAQ/styles.css.cjs +0 -6
- package/dist/components/InfoTable/InfoTable.cjs +0 -32
- package/dist/components/InfoTable/components/Cell.cjs +0 -44
- package/dist/components/InfoTable/components/Row.cjs +0 -26
- package/dist/components/Navigation/Footer.cjs +0 -71
- package/dist/components/Navigation/Header.cjs +0 -36
- package/dist/components/Navigation/Navigation.cjs +0 -18
- package/dist/components/Navigation/NavigationContent.cjs +0 -163
- package/dist/components/Navigation/NavigationProvider.cjs +0 -129
- package/dist/components/Navigation/components/Group.cjs +0 -62
- package/dist/components/Navigation/components/Item.cjs +0 -429
- package/dist/components/Navigation/components/ItemProvider.cjs +0 -14
- package/dist/components/Navigation/components/PinnedItems.cjs +0 -116
- package/dist/components/Navigation/components/Separator.cjs +0 -18
- package/dist/components/Navigation/constants.cjs +0 -37
- package/dist/components/Navigation/locales/en.cjs +0 -11
- package/dist/components/OfferList/OfferList.cjs +0 -58
- package/dist/components/OfferList/OfferListProvider.cjs +0 -38
- package/dist/components/OfferList/components/Banner.cjs +0 -108
- package/dist/components/OfferList/components/Cell.cjs +0 -50
- package/dist/components/OfferList/components/Row.cjs +0 -192
- package/dist/components/OrderSummary/NonScrollableContent.cjs +0 -68
- package/dist/components/OrderSummary/Provider.cjs +0 -18
- package/dist/components/OrderSummary/ScrollableContent.cjs +0 -106
- package/dist/components/OrderSummary/constants.cjs +0 -12
- package/dist/components/OrderSummary/helpers.cjs +0 -91
- package/dist/components/OrderSummary/index.cjs +0 -135
- package/dist/components/OrderSummary/locales/en.cjs +0 -11
- package/dist/components/Plans/FeatureHint.cjs +0 -42
- package/dist/components/Plans/PlanHeader.cjs +0 -102
- package/dist/components/Plans/index.cjs +0 -152
- package/dist/components/Plans/locales/en.cjs +0 -7
- package/dist/components/SteppedListCard/Step.cjs +0 -51
- package/dist/components/SteppedListCard/SteppedListCard.cjs +0 -82
- package/dist/components/SteppedListCard/SteppedListContent.cjs +0 -86
- package/dist/components/SteppedListCard/helper.cjs +0 -38
- package/dist/index.cjs +0 -33
|
@@ -1,85 +1,42 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsxs, jsx, Fragment } from "
|
|
3
|
-
import _styled from "@emotion/styled/base";
|
|
2
|
+
import { jsxs, jsx, Fragment } from "react/jsx-runtime";
|
|
4
3
|
import { CalculatorIcon } from "@ultraviolet/icons";
|
|
5
|
-
import { Stack, Alert, Text } from "@ultraviolet/ui";
|
|
4
|
+
import { Stack, Alert, Badge, Text } from "@ultraviolet/ui";
|
|
5
|
+
import { assignInlineVars } from "@vanilla-extract/dynamic";
|
|
6
6
|
import { useState, useMemo, useEffect, memo, Children, cloneElement, isValidElement } from "react";
|
|
7
7
|
import { useInView } from "react-intersection-observer";
|
|
8
8
|
import { CustomUnitInput } from "./Components/CustomUnitInput.js";
|
|
9
9
|
import { Item } from "./Components/Item.js";
|
|
10
10
|
import { LineThrough } from "./Components/LineThrough.js";
|
|
11
|
-
import { StyledTable, PriceCol, TimeCell, EmptyTable, EmptyCell, TotalPriceCell, BadgeBeta, StyledFeesTable, Title, Cell, priceCell } from "./componentStyle.js";
|
|
12
11
|
import { maximumFractionDigitsLong, maximumFractionDigits } from "./constants.js";
|
|
13
12
|
import { useEstimateCost } from "./EstimateCostProvider.js";
|
|
14
13
|
import { calculatePrice } from "./helper.js";
|
|
15
14
|
import EstimateCostLocales from "./locales/en.js";
|
|
16
15
|
import { OverlayComponent } from "./OverlayComponent.js";
|
|
17
16
|
import { OverlayContextProvider } from "./OverlayContext.js";
|
|
18
|
-
|
|
19
|
-
return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).";
|
|
20
|
-
}
|
|
21
|
-
const FeesText = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
|
|
22
|
-
target: "excc3v74"
|
|
23
|
-
} : {
|
|
24
|
-
target: "excc3v74",
|
|
25
|
-
label: "FeesText"
|
|
26
|
-
})("margin-top:", ({
|
|
27
|
-
theme
|
|
28
|
-
}) => theme.space["3"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThDNkIiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */"));
|
|
29
|
-
const StyledText = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
|
|
30
|
-
target: "excc3v73"
|
|
31
|
-
} : {
|
|
32
|
-
target: "excc3v73",
|
|
33
|
-
label: "StyledText"
|
|
34
|
-
})("text-align:right;", ({
|
|
35
|
-
isBeta,
|
|
36
|
-
theme
|
|
37
|
-
}) => isBeta ? `margin-left: ${theme.space["2"]};` : null, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQW9ERSIsImZpbGUiOiIvaG9tZS9ydW5uZXIvd29yay91bHRyYXZpb2xldC91bHRyYXZpb2xldC9wYWNrYWdlcy9wbHVzL3NyYy9jb21wb25lbnRzL0VzdGltYXRlQ29zdC9Fc3RpbWF0ZUNvc3RDb250ZW50LnRzeCIsInNvdXJjZXNDb250ZW50IjpbIid1c2UgY2xpZW50J1xuXG5pbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCdcbmltcG9ydCB7IENhbGN1bGF0b3JJY29uIH0gZnJvbSAnQHVsdHJhdmlvbGV0L2ljb25zJ1xuaW1wb3J0IHsgQWxlcnQsIFN0YWNrLCBUZXh0IH0gZnJvbSAnQHVsdHJhdmlvbGV0L3VpJ1xuaW1wb3J0IHR5cGUgeyBDb21wb25lbnRQcm9wcywgUmVhY3ROb2RlIH0gZnJvbSAncmVhY3QnXG5pbXBvcnQge1xuICBDaGlsZHJlbixcbiAgY2xvbmVFbGVtZW50LFxuICBpc1ZhbGlkRWxlbWVudCxcbiAgbWVtbyxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSAncmVhY3QnXG5pbXBvcnQgeyB1c2VJblZpZXcgfSBmcm9tICdyZWFjdC1pbnRlcnNlY3Rpb24tb2JzZXJ2ZXInXG5pbXBvcnQgeyBDdXN0b21Vbml0SW5wdXQgfSBmcm9tICcuL0NvbXBvbmVudHMvQ3VzdG9tVW5pdElucHV0J1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4vQ29tcG9uZW50cy9JdGVtJ1xuaW1wb3J0IHsgTGluZVRocm91Z2ggfSBmcm9tICcuL0NvbXBvbmVudHMvTGluZVRocm91Z2gnXG5pbXBvcnQge1xuICBCYWRnZUJldGEsXG4gIENlbGwsXG4gIEVtcHR5Q2VsbCxcbiAgRW1wdHlUYWJsZSxcbiAgUHJpY2VDb2wsXG4gIHByaWNlQ2VsbCxcbiAgU3R5bGVkRmVlc1RhYmxlLFxuICBTdHlsZWRUYWJsZSxcbiAgVGltZUNlbGwsXG4gIFRpdGxlLFxuICBUb3RhbFByaWNlQ2VsbCxcbn0gZnJvbSAnLi9jb21wb25lbnRTdHlsZSdcbmltcG9ydCB7IG1heGltdW1GcmFjdGlvbkRpZ2l0cywgbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZyB9IGZyb20gJy4vY29uc3RhbnRzJ1xuaW1wb3J0IHsgdXNlRXN0aW1hdGVDb3N0IH0gZnJvbSAnLi9Fc3RpbWF0ZUNvc3RQcm92aWRlcidcbmltcG9ydCB7IGNhbGN1bGF0ZVByaWNlIH0gZnJvbSAnLi9oZWxwZXInXG5pbXBvcnQgRXN0aW1hdGVDb3N0TG9jYWxlcyBmcm9tICcuL2xvY2FsZXMvZW4nXG5pbXBvcnQgeyBPdmVybGF5Q29tcG9uZW50IH0gZnJvbSAnLi9PdmVybGF5Q29tcG9uZW50J1xuaW1wb3J0IHsgT3ZlcmxheUNvbnRleHRQcm92aWRlciB9IGZyb20gJy4vT3ZlcmxheUNvbnRleHQnXG5pbXBvcnQgdHlwZSB7XG4gIEJhcmVFc3RpbWF0ZVByb2R1Y3QsXG4gIEVzdGltYXRlQ29zdFByb3BzLFxuICBFc3RpbWF0ZVByb2R1Y3QsXG4gIEl0ZXJhdGlvbixcbiAgVW5pdHMsXG59IGZyb20gJy4vdHlwZXMnXG5cbmNvbnN0IEZlZXNUZXh0ID0gc3R5bGVkKFRleHQpYFxuICBtYXJnaW4tdG9wOiAkeyh7IHRoZW1lIH0pID0+IHRoZW1lLnNwYWNlWyczJ119O1xuYFxuXG5jb25zdCBTdHlsZWRUZXh0ID0gc3R5bGVkKFRleHQpPHtcbiAgaXNCZXRhPzogYm9vbGVhblxufT5gXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICAkeyh7IGlzQmV0YSwgdGhlbWUgfSkgPT5cbiAgICBpc0JldGEgPyBgbWFyZ2luLWxlZnQ6ICR7dGhlbWUuc3BhY2VbJzInXX07YCA6IG51bGx9XG5gXG5cbmNvbnN0IFJpZ2h0QWxpZ25lZFRleHQgPSBzdHlsZWQoVGV4dClgXG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuYFxuXG5jb25zdCBTdHlsZWRDYWxjdWxhdG9ySWNvbiA9IHN0eWxlZChDYWxjdWxhdG9ySWNvbilgXG4gIG1hcmdpbi1yaWdodDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMSddfTtcbmBcblxuY29uc3QgU3R5bGVkUHJpY2VDZWxsID0gc3R5bGVkKENlbGwud2l0aENvbXBvbmVudCgndGgnKSlgXG4gICR7KHsgdGhlbWUgfSkgPT4gcHJpY2VDZWxsKHRoZW1lKX1cbiAgcGFkZGluZzogMDtcbmBcblxuY29uc3QgREVGQVVMVF9VTklUX0xJU1Q6IFVuaXRzW10gPSBbJ2hvdXJzJywgJ2RheXMnLCAnbW9udGhzJ11cblxudHlwZSBFeHRyYVByb3BzID0ge1xuICBpc0xhc3RFbGVtZW50PzogYm9vbGVhblxuICBwcm9kdWN0c0NhbGxiYWNrPzoge1xuICAgIGFkZDogKHByb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4gdm9pZFxuICAgIHJlbW92ZTogKHByb2R1Y3Q6IEJhcmVFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgfVxuICBpdGVyYXRpb24/OiBJdGVyYXRpb25cbiAgZGlzY291bnQ/OiBudW1iZXJcbn1cblxuY29uc3QgRGVzY3JpcHRpb25Db21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGRlc2NyaXB0aW9uLFxuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBkZXNjcmlwdGlvbjogUmVhY3ROb2RlXG4gICAgbG9jYWxlczogUmVjb3JkPGtleW9mIHR5cGVvZiBFc3RpbWF0ZUNvc3RMb2NhbGVzLCBzdHJpbmc+XG4gIH0pID0+XG4gICAgZGVzY3JpcHRpb24gPT09IHVuZGVmaW5lZCB8fCB0eXBlb2YgZGVzY3JpcHRpb24gPT09ICdzdHJpbmcnID8gKFxuICAgICAgPFRleHQgYXM9XCJzcGFuXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAge2Rlc2NyaXB0aW9uIHx8IGxvY2FsZXNbJ2VzdGltYXRlLmNvc3QuZGVzY3JpcHRpb24nXX1cbiAgICAgIDwvVGV4dD5cbiAgICApIDogKFxuICAgICAgZGVzY3JpcHRpb25cbiAgICApLFxuKVxuXG5jb25zdCBUaXRsZUNvbXBvbmVudCA9IG1lbW8oXG4gICh7XG4gICAgbG9jYWxlcyxcbiAgfToge1xuICAgIGxvY2FsZXM6IFJlcXVpcmVkPENvbXBvbmVudFByb3BzPHR5cGVvZiBFc3RpbWF0ZUNvc3RDb250ZW50PlsnbG9jYWxlcyddPlxuICB9KSA9PiAoXG4gICAgPFRpdGxlPlxuICAgICAgPFN0eWxlZENhbGN1bGF0b3JJY29uIHNlbnRpbWVudD1cInByaW1hcnlcIiBzaXplPVwibWVkaXVtXCIgLz5cbiAgICAgIHtsb2NhbGVzPy5bJ2VzdGltYXRlLmNvc3QubGFiZWwnXX1cbiAgICA8L1RpdGxlPlxuICApLFxuKVxuXG5leHBvcnQgY29uc3QgRXN0aW1hdGVDb3N0Q29udGVudCA9ICh7XG4gIGRlc2NyaXB0aW9uLFxuICBhbGVydCxcbiAgYWxlcnRUaXRsZSxcbiAgYWxlcnRWYXJpYW50ID0gJ3dhcm5pbmcnLFxuICBkZWZhdWx0VGltZVVuaXQgPSAnaG91cnMnLFxuICB0aW1lVW5pdHMgPSBERUZBVUxUX1VOSVRfTElTVCxcbiAgaGlkZU92ZXJsYXkgPSBmYWxzZSxcbiAgZGlzYWJsZU92ZXJsYXlMZWZ0ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5UmlnaHQgPSBmYWxzZSxcbiAgaGlkZVRpbWVVbml0ID0gZmFsc2UsXG4gIGhpZGVUb3RhbCA9IGZhbHNlLFxuICBoaWRlSG91cmx5UHJpY2VPblRvdGFsID0gZmFsc2UsXG4gIGRpc2NvdW50ID0gMCxcbiAgT3ZlcmxheVJpZ2h0LFxuICBPdmVybGF5TGVmdCxcbiAgaXNCZXRhID0gZmFsc2UsXG4gIGNvbW1pdG1lbnRGZWVzLFxuICBjb21taXRtZW50RmVlc0NvbnRlbnQsXG4gIG1vbnRobHlGZWVzLFxuICBtb250aGx5RmVlc0xhYmVsLFxuICBtb250aGx5RmVlc0NvbnRlbnQsXG4gIG92ZXJsYXlVbml0ID0gJ2hvdXJzJyxcbiAgY2hpbGRyZW4gPSBudWxsLFxuICBsb2NhbGVzID0gRXN0aW1hdGVDb3N0TG9jYWxlcyxcbiAgb3ZlcmxheU1hcmdpbixcbiAgb25Ub3RhbFByaWNlQ2hhbmdlLFxufTogRXN0aW1hdGVDb3N0UHJvcHMpID0+IHtcbiAgY29uc3QgeyBmb3JtYXROdW1iZXIgfSA9IHVzZUVzdGltYXRlQ29zdCgpXG4gIGNvbnN0IFtyZWYsIGluVmlld10gPSB1c2VJblZpZXcoKVxuICBjb25zdCBbcHJvZHVjdHMsIHNldFByb2R1Y3RzXSA9IHVzZVN0YXRlPEVzdGltYXRlUHJvZHVjdFtdPihbXSkgLy8gcHJvZHVjdCBpcyB1c2VkIHRvIHN0b3JlIGVhY2ggaXRlbXMgd2l0aCB0aGVpciBwcmljZSBhbmQgYW1vdW50XG4gIGNvbnN0IFt0b3RhbFByaWNlLCBzZXRUb3RhbFByaWNlXSA9IHVzZVN0YXRlKHtcbiAgICBob3VybHk6IDAsXG4gICAgbWF4SG91cmx5OiAwLFxuICAgIG1heE92ZXJsYXlIb3VybHk6IDAsXG4gICAgbWF4VG90YWw6IDAsXG4gICAgb3ZlcmxheUhvdXJseTogMCxcbiAgICB0b3RhbDogMCxcbiAgfSlcbiAgY29uc3QgW2l0ZXJhdGlvbiwgc2V0SXRlcmF0aW9uXSA9IHVzZVN0YXRlPEl0ZXJhdGlvbj4oe1xuICAgIHVuaXQ6IGRlZmF1bHRUaW1lVW5pdCA/PyAnaG91cnMnLFxuICAgIHZhbHVlOiAxLFxuICB9KVxuXG4gIGNvbnN0IFtpc0xvbmdGcmFjdGlvbkRpZ2l0cywgc2V0SXNMb25nRnJhY3Rpb25EaWdpdHNdID0gdXNlU3RhdGUoZmFsc2UpXG4gIGNvbnN0IHByb3ZpZGVyVmFsdWUgPSB1c2VNZW1vKCgpID0+ICh7IGlzT3ZlcmxheTogZmFsc2UgfSksIFtdKVxuXG4gIGNvbnN0IHRvdGFsVmFsdWUgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICBmb3JtYXROdW1iZXIodG90YWxQcmljZS50b3RhbCA8IDAgPyAwIDogdG90YWxQcmljZS50b3RhbCwge1xuICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGlzTG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nW2l0ZXJhdGlvbi51bml0XVxuICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzW2l0ZXJhdGlvbi51bml0XSxcbiAgICAgIH0pLFxuICAgIFtmb3JtYXROdW1iZXIsIGlzTG9uZ0ZyYWN0aW9uRGlnaXRzLCBpdGVyYXRpb24udW5pdCwgdG90YWxQcmljZS50b3RhbF0sXG4gIClcblxuICBjb25zdCB0b3RhbE1heFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UubWF4VG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UubWF4VG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UubWF4VG90YWxdLFxuICApXG5cbiAgY29uc3QgcHJvZHVjdHNDYWxsYmFjayA9IHVzZU1lbW8oXG4gICAgKCkgPT4gKHtcbiAgICAgIGFkZDogKG5ld1Byb2R1Y3Q6IEVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB7XG4gICAgICAgICAgaWYgKHRvdGFsLmZpbmQocHJvZHVjdCA9PiBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkKSkge1xuICAgICAgICAgICAgcmV0dXJuIHRvdGFsLm1hcChwcm9kdWN0ID0+XG4gICAgICAgICAgICAgIHByb2R1Y3QuaWQgPT09IG5ld1Byb2R1Y3QuaWQgPyBuZXdQcm9kdWN0IDogcHJvZHVjdCxcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gWy4uLnRvdGFsLCBuZXdQcm9kdWN0XVxuICAgICAgICB9KVxuICAgICAgfSxcblxuICAgICAgcmVtb3ZlOiAoeyBpZCB9OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB7XG4gICAgICAgIHNldFByb2R1Y3RzKHRvdGFsID0+IHRvdGFsLmZpbHRlcihwcm9kdWN0ID0+IHByb2R1Y3QuaWQgIT09IGlkKSlcbiAgICAgIH0sXG4gICAgfSksXG4gICAgW3NldFByb2R1Y3RzXSxcbiAgKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgLy8gdGhpcyB2YXJpYWJsZSBjaGVjayBpZiB0aGVyZSBpcyBhIG1heEFtb3VudCBpbiBlYWNoIHByb2R1Y3RcbiAgICAvLyBpZiBub3Qgd2UgZG8gbm90IG5lZWQgdG8gY2FsY3VsYXRlIG1heFRvdGFsLCBtYXhIb3VybHksIG1heE92ZXJsYXlIb3VybHlcbiAgICBjb25zdCBpc01heEFtb3VudEluUHJvZHVjdHMgPSBwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5tYXhBbW91bnQpXG4gICAgc2V0SXNMb25nRnJhY3Rpb25EaWdpdHMoXG4gICAgICAhIXByb2R1Y3RzLmZpbmQocHJvZHVjdCA9PiBwcm9kdWN0LmxvbmdGcmFjdGlvbkRpZ2l0cyksXG4gICAgKVxuICAgIHNldFRvdGFsUHJpY2Uoe1xuICAgICAgaG91cmx5OiBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgYWNjICtcbiAgICAgICAgICAocHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5hbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApKSxcbiAgICAgICAgMCxcbiAgICAgICksXG4gICAgICBtYXhIb3VybHk6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyAmJiBwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICAgICAgPyAwXG4gICAgICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0Lm1heEFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCksXG5cbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgICBtYXhPdmVybGF5SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgK1xuICAgICAgICAgICAgICAocHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApKSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgICBtYXhUb3RhbDogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5tYXhBbW91bnQgfHwgcHJvZHVjdC5hbW91bnQsIC8vIE5vdCBhbGwgcHJvZHVjdHMgaGF2ZSBtYXhBbW91bnQsIHNvIHdlIG5lZWQgdG8gY2hlY2sgYm90aFxuICAgICAgICAgICAgICAgIGFtb3VudEZyZWU6IHByb2R1Y3QuYW1vdW50RnJlZSxcbiAgICAgICAgICAgICAgICBkaXNjb3VudDogcHJvZHVjdC5kaXNjb3VudCxcbiAgICAgICAgICAgICAgICBwcmljZTogcHJvZHVjdC5wcmljZSxcbiAgICAgICAgICAgICAgICB0aW1lQW1vdW50OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gMSA6IGl0ZXJhdGlvbi52YWx1ZSxcbiAgICAgICAgICAgICAgICB0aW1lVW5pdDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/ICdob3VycycgOiBpdGVyYXRpb24udW5pdCxcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgb3ZlcmxheUhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgdG90YWw6ICFoaWRlVG90YWxcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgK1xuICAgICAgICAgICAgICBjYWxjdWxhdGVQcmljZSh7XG4gICAgICAgICAgICAgICAgYW1vdW50OiBwcm9kdWN0LmFtb3VudCxcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICB9KVxuICAgIG9uVG90YWxQcmljZUNoYW5nZT8uKHtcbiAgICAgIHRvdGFsOiB0b3RhbFByaWNlLnRvdGFsLFxuICAgICAgdG90YWxNYXg6IHRvdGFsUHJpY2UubWF4VG90YWwgPiAwID8gdG90YWxQcmljZS5tYXhUb3RhbCA6IHVuZGVmaW5lZCxcbiAgICB9KVxuICB9LCBbXG4gICAgaGlkZVRvdGFsLFxuICAgIHByb2R1Y3RzLFxuICAgIGl0ZXJhdGlvbixcbiAgICBzZXRUb3RhbFByaWNlLFxuICAgIG9uVG90YWxQcmljZUNoYW5nZSxcbiAgICB0b3RhbFByaWNlLnRvdGFsLFxuICAgIHRvdGFsUHJpY2UubWF4VG90YWwsXG4gICAgdG90YWxWYWx1ZSxcbiAgICB0b3RhbE1heFZhbHVlLFxuICBdKVxuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKFxuICAgICAgaGlkZVRpbWVVbml0ICYmXG4gICAgICAoaXRlcmF0aW9uLnZhbHVlID4gMSB8fCBpdGVyYXRpb24udW5pdCAhPT0gKGRlZmF1bHRUaW1lVW5pdCA/PyAnaG91cnMnKSlcbiAgICApIHtcbiAgICAgIHNldEl0ZXJhdGlvbih7IHVuaXQ6IGRlZmF1bHRUaW1lVW5pdCA/PyAnaG91cnMnLCB2YWx1ZTogMSB9KVxuICAgIH1cbiAgfSwgW2hpZGVUaW1lVW5pdCwgaXRlcmF0aW9uLCBkZWZhdWx0VGltZVVuaXRdKVxuXG4gIHJldHVybiAoXG4gICAgPFN0YWNrIGdhcD17Mn0+XG4gICAgICB7IWhpZGVPdmVybGF5ID8gKFxuICAgICAgICA8T3ZlcmxheUNvbXBvbmVudFxuICAgICAgICAgIGRpc2FibGVPdmVybGF5TGVmdD17ZGlzYWJsZU92ZXJsYXlMZWZ0fVxuICAgICAgICAgIGRpc2FibGVPdmVybGF5UmlnaHQ9e2Rpc2FibGVPdmVybGF5UmlnaHR9XG4gICAgICAgICAgZGlzY291bnQ9e2Rpc2NvdW50fVxuICAgICAgICAgIGluVmlldz17aW5WaWV3fVxuICAgICAgICAgIGlzQmV0YT17aXNCZXRhfVxuICAgICAgICAgIE92ZXJsYXlMZWZ0PXtPdmVybGF5TGVmdH1cbiAgICAgICAgICBPdmVybGF5UmlnaHQ9e092ZXJsYXlSaWdodH1cbiAgICAgICAgICBvdmVybGF5TWFyZ2luPXtvdmVybGF5TWFyZ2lufVxuICAgICAgICAgIHRvdGFsUHJpY2U9e3RvdGFsUHJpY2V9XG4gICAgICAgICAgdW5pdD17b3ZlcmxheVVuaXQgPz8gJ2hvdXJzJ31cbiAgICAgICAgPlxuICAgICAgICAgIHtjaGlsZHJlbn1cbiAgICAgICAgPC9PdmVybGF5Q29tcG9uZW50PlxuICAgICAgKSA6IG51bGx9XG4gICAgICB7ZGVzY3JpcHRpb24gPT09IGZhbHNlID8gbnVsbCA6IChcbiAgICAgICAgPERlc2NyaXB0aW9uQ29tcG9uZW50IGRlc2NyaXB0aW9uPXtkZXNjcmlwdGlvbn0gbG9jYWxlcz17bG9jYWxlc30gLz5cbiAgICAgICl9XG4gICAgICB7YWxlcnQgPyAoXG4gICAgICAgIDxBbGVydCBzZW50aW1lbnQ9e2FsZXJ0VmFyaWFudH0gdGl0bGU9e2FsZXJ0VGl0bGV9PlxuICAgICAgICAgIHthbGVydH1cbiAgICAgICAgPC9BbGVydD5cbiAgICAgICkgOiBudWxsfVxuICAgICAgPE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgdmFsdWU9e3Byb3ZpZGVyVmFsdWV9PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIHtjaGlsZHJlbiA/IChcbiAgICAgICAgICAgIDxTdHlsZWRUYWJsZVxuICAgICAgICAgICAgICBjZWxsUGFkZGluZz1cIjBcIlxuICAgICAgICAgICAgICBjZWxsU3BhY2luZz1cIjBcIlxuICAgICAgICAgICAgICBkYXRhLXRlc3RpZD1cInN1bW1hcnlcIlxuICAgICAgICAgICAgICBub1RvdGFsPXtoaWRlVG90YWx9XG4gICAgICAgICAgICAgIHJlZj17cmVmfVxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8Y29sZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGNvbCAvPlxuICAgICAgICAgICAgICAgIDxQcmljZUNvbCAvPlxuICAgICAgICAgICAgICA8L2NvbGdyb3VwPlxuICAgICAgICAgICAgICB7IWhpZGVUaW1lVW5pdCA/IChcbiAgICAgICAgICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgICAgICAgICAgICA8VGl0bGVDb21wb25lbnQgbG9jYWxlcz17bG9jYWxlc30gLz5cbiAgICAgICAgICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgICA8VGltZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgICA8Q3VzdG9tVW5pdElucHV0XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRUaW1lVW5pdD17ZGVmYXVsdFRpbWVVbml0fVxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb249e2l0ZXJhdGlvbn1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgc2V0SXRlcmF0aW9uPXtzZXRJdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVVbml0cz17dGltZVVuaXRzfVxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICA8L1RpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgICAgPC90aGVhZD5cbiAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgICB7Q2hpbGRyZW4ubWFwKGNoaWxkcmVuLCAoY2hpbGQsIGluZGV4KSA9PlxuICAgICAgICAgICAgICAgICAgaXNWYWxpZEVsZW1lbnQ8RXh0cmFQcm9wcz4oY2hpbGQpXG4gICAgICAgICAgICAgICAgICAgID8gY2xvbmVFbGVtZW50KGNoaWxkLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudDpcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZCBhcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3BzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkucHJvcHMgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ/OiBudW1iZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICkuZGlzY291bnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZCBhcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkucHJvcHMgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0xhc3RFbGVtZW50OiBpbmRleCA9PT0gQ2hpbGRyZW4uY291bnQoY2hpbGRyZW4pIC0gMSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZXJhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzQ2FsbGJhY2ssXG4gICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgOiBjaGlsZCxcbiAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9TdHlsZWRUYWJsZT5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICB7IWhpZGVUb3RhbCA/IChcbiAgICAgICAgICAgIDxFbXB0eVRhYmxlIGNlbGxQYWRkaW5nPVwiMFwiIGNlbGxTcGFjaW5nPVwiMFwiPlxuICAgICAgICAgICAgICA8Y29sZ3JvdXA+XG4gICAgICAgICAgICAgICAgPGNvbCAvPlxuICAgICAgICAgICAgICAgIDxQcmljZUNvbCAvPlxuICAgICAgICAgICAgICA8L2NvbGdyb3VwPlxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgPEVtcHR5Q2VsbCBhcmlhLWxhYmVsPVwiY29udHJvbFwiIC8+XG4gICAgICAgICAgICAgICAgICA8VG90YWxQcmljZUNlbGwgaGFzQm9yZGVyPXtmYWxzZX0+XG4gICAgICAgICAgICAgICAgICAgIHtpc0JldGEgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPEJhZGdlQmV0YVxuICAgICAgICAgICAgICAgICAgICAgICAgbG9uZz17XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYGVzdGltYXRlLmNvc3QuYmV0YS4ke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQgPiAwID8gJ2Rpc2NvdW50JyA6ICdmcmVlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgIF0ubGVuZ3RoID4gMjVcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIHByb21pbmVuY2U9XCJzdHJvbmdcIlxuICAgICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwid2FybmluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge2Ake2Rpc2NvdW50ID4gMCA/IGRpc2NvdW50ICogMTAwIDogJyd9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQgPiAwID8gJ2Rpc2NvdW50JyA6ICdmcmVlJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfWBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH1gfVxuICAgICAgICAgICAgICAgICAgICAgIDwvQmFkZ2VCZXRhPlxuICAgICAgICAgICAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgPFN0eWxlZFRleHRcbiAgICAgICAgICAgICAgICAgICAgICBhcz1cImgzXCJcbiAgICAgICAgICAgICAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICAgICAgICAgICAgICBzZW50aW1lbnQ9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAgICAgICB2YXJpYW50PVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8TGluZVRocm91Z2hcbiAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtpc0JldGEgJiYgKGRpc2NvdW50ID09PSAwIHx8IGRpc2NvdW50ID49IDEpfVxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFZhbHVlfVxuICAgICAgICAgICAgICAgICAgICAgICAge3RvdGFsUHJpY2UubWF4VG90YWwgPiAwID8gYCAtICR7dG90YWxNYXhWYWx1ZX1gIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0xpbmVUaHJvdWdoPlxuICAgICAgICAgICAgICAgICAgICA8L1N0eWxlZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgIHtoaWRlSG91cmx5UHJpY2VPblRvdGFsICYmXG4gICAgICAgICAgICAgICAgICAgIHRvdGFsUHJpY2UuaG91cmx5ID4gMCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSAhPT0gdG90YWxQcmljZS50b3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLnRvdGFsID4gMCA/IChcbiAgICAgICAgICAgICAgICAgICAgICA8UmlnaHRBbGlnbmVkVGV4dCBhcz1cInBcIiB2YXJpYW50PVwiYm9keVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGlzQWN0aXZlPXtpc0JldGEgJiYgKGRpc2NvdW50ID09PSAwIHx8IGRpc2NvdW50ID49IDEpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICB7Zm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UuaG91cmx5LCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nLmhvdXJzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0cy5ob3VycyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heEhvdXJseSA+IDBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IGAgLSAke2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heEhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGlzTG9uZ0ZyYWN0aW9uRGlnaXRzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBtYXhpbXVtRnJhY3Rpb25EaWdpdHNMb25nLmhvdXJzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KX1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAvXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHtsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LnVuaXRzLmhvdXJzLmxhYmVsYFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLnRvTG93ZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0xpbmVUaHJvdWdoPlxuICAgICAgICAgICAgICAgICAgICAgIDwvUmlnaHRBbGlnbmVkVGV4dD5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICA8L1RvdGFsUHJpY2VDZWxsPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICA8L0VtcHR5VGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAge2NvbW1pdG1lbnRGZWVzICE9PSB1bmRlZmluZWQgfHwgbW9udGhseUZlZXMgIT09IHVuZGVmaW5lZCA/IChcbiAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgIDxGZWVzVGV4dCBhcz1cImgzXCIgdmFyaWFudD1cImhlYWRpbmdTbWFsbFwiPlxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmZlZXMuJHtcbiAgICAgICAgICAgICAgICAgICAgICBjb21taXRtZW50RmVlcyA/ICdvbmVUaW1lJyA6ICdtb250aGx5J1xuICAgICAgICAgICAgICAgICAgICB9LnRpdGxlYFxuICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPC9GZWVzVGV4dD5cbiAgICAgICAgICAgICAgPFN0eWxlZEZlZXNUYWJsZT5cbiAgICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAgICA8SXRlbVxuICAgICAgICAgICAgICAgICAgICBpc0xhc3RFbGVtZW50XG4gICAgICAgICAgICAgICAgICAgIGxhYmVsPXtcbiAgICAgICAgICAgICAgICAgICAgICBjb21taXRtZW50RmVlc1xuICAgICAgICAgICAgICAgICAgICAgICAgPyBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmZlZXMuY29tbWl0bWVudCddXG4gICAgICAgICAgICAgICAgICAgICAgICA6IG1vbnRobHlGZWVzTGFiZWxcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgICAgICBwcmljZT17Y29tbWl0bWVudEZlZXMgfHwgbW9udGhseUZlZXN9XG4gICAgICAgICAgICAgICAgICAgIHByb2R1Y3RzQ2FsbGJhY2s9e3tcbiAgICAgICAgICAgICAgICAgICAgICBhZGQ6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICAgIHJlbW92ZTogKCkgPT4ge30sXG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHtjb21taXRtZW50RmVlc1xuICAgICAgICAgICAgICAgICAgICAgID8gY29tbWl0bWVudEZlZXNDb250ZW50XG4gICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0NvbnRlbnR9XG4gICAgICAgICAgICAgICAgICA8L0l0ZW0+XG4gICAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgICAgPC9TdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICA8Lz5cbiAgICAgICAgICApIDogbnVsbH1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L092ZXJsYXlDb250ZXh0UHJvdmlkZXI+XG4gICAgPC9TdGFjaz5cbiAgKVxufVxuIl19 */"));
|
|
38
|
-
const RightAlignedText = /* @__PURE__ */ _styled(Text, process.env.NODE_ENV === "production" ? {
|
|
39
|
-
target: "excc3v72"
|
|
40
|
-
} : {
|
|
41
|
-
target: "excc3v72",
|
|
42
|
-
label: "RightAlignedText"
|
|
43
|
-
})(process.env.NODE_ENV === "production" ? {
|
|
44
|
-
name: "2qga7i",
|
|
45
|
-
styles: "text-align:right"
|
|
46
|
-
} : {
|
|
47
|
-
name: "2qga7i",
|
|
48
|
-
styles: "text-align:right/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBEcUMiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */",
|
|
49
|
-
toString: _EMOTION_STRINGIFIED_CSS_ERROR__
|
|
50
|
-
});
|
|
51
|
-
const StyledCalculatorIcon = /* @__PURE__ */ _styled(CalculatorIcon, process.env.NODE_ENV === "production" ? {
|
|
52
|
-
target: "excc3v71"
|
|
53
|
-
} : {
|
|
54
|
-
target: "excc3v71",
|
|
55
|
-
label: "StyledCalculatorIcon"
|
|
56
|
-
})("margin-right:", ({
|
|
57
|
-
theme
|
|
58
|
-
}) => theme.space["1"], ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQThEbUQiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */"));
|
|
59
|
-
const StyledPriceCell = /* @__PURE__ */ _styled(Cell.withComponent("th", process.env.NODE_ENV === "production" ? {
|
|
60
|
-
target: "excc3v75"
|
|
61
|
-
} : {
|
|
62
|
-
target: "excc3v75",
|
|
63
|
-
label: "StyledPriceCell"
|
|
64
|
-
}), process.env.NODE_ENV === "production" ? {
|
|
65
|
-
target: "excc3v70"
|
|
66
|
-
} : {
|
|
67
|
-
target: "excc3v70",
|
|
68
|
-
label: "StyledPriceCell"
|
|
69
|
-
})(({
|
|
70
|
-
theme
|
|
71
|
-
}) => priceCell(theme), " padding:0;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9ob21lL3J1bm5lci93b3JrL3VsdHJhdmlvbGV0L3VsdHJhdmlvbGV0L3BhY2thZ2VzL3BsdXMvc3JjL2NvbXBvbmVudHMvRXN0aW1hdGVDb3N0L0VzdGltYXRlQ29zdENvbnRlbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtFd0QiLCJmaWxlIjoiL2hvbWUvcnVubmVyL3dvcmsvdWx0cmF2aW9sZXQvdWx0cmF2aW9sZXQvcGFja2FnZXMvcGx1cy9zcmMvY29tcG9uZW50cy9Fc3RpbWF0ZUNvc3QvRXN0aW1hdGVDb3N0Q29udGVudC50c3giLCJzb3VyY2VzQ29udGVudCI6WyIndXNlIGNsaWVudCdcblxuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnXG5pbXBvcnQgeyBDYWxjdWxhdG9ySWNvbiB9IGZyb20gJ0B1bHRyYXZpb2xldC9pY29ucydcbmltcG9ydCB7IEFsZXJ0LCBTdGFjaywgVGV4dCB9IGZyb20gJ0B1bHRyYXZpb2xldC91aSdcbmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMsIFJlYWN0Tm9kZSB9IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHtcbiAgQ2hpbGRyZW4sXG4gIGNsb25lRWxlbWVudCxcbiAgaXNWYWxpZEVsZW1lbnQsXG4gIG1lbW8sXG4gIHVzZUVmZmVjdCxcbiAgdXNlTWVtbyxcbiAgdXNlU3RhdGUsXG59IGZyb20gJ3JlYWN0J1xuaW1wb3J0IHsgdXNlSW5WaWV3IH0gZnJvbSAncmVhY3QtaW50ZXJzZWN0aW9uLW9ic2VydmVyJ1xuaW1wb3J0IHsgQ3VzdG9tVW5pdElucHV0IH0gZnJvbSAnLi9Db21wb25lbnRzL0N1c3RvbVVuaXRJbnB1dCdcbmltcG9ydCB7IEl0ZW0gfSBmcm9tICcuL0NvbXBvbmVudHMvSXRlbSdcbmltcG9ydCB7IExpbmVUaHJvdWdoIH0gZnJvbSAnLi9Db21wb25lbnRzL0xpbmVUaHJvdWdoJ1xuaW1wb3J0IHtcbiAgQmFkZ2VCZXRhLFxuICBDZWxsLFxuICBFbXB0eUNlbGwsXG4gIEVtcHR5VGFibGUsXG4gIFByaWNlQ29sLFxuICBwcmljZUNlbGwsXG4gIFN0eWxlZEZlZXNUYWJsZSxcbiAgU3R5bGVkVGFibGUsXG4gIFRpbWVDZWxsLFxuICBUaXRsZSxcbiAgVG90YWxQcmljZUNlbGwsXG59IGZyb20gJy4vY29tcG9uZW50U3R5bGUnXG5pbXBvcnQgeyBtYXhpbXVtRnJhY3Rpb25EaWdpdHMsIG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmcgfSBmcm9tICcuL2NvbnN0YW50cydcbmltcG9ydCB7IHVzZUVzdGltYXRlQ29zdCB9IGZyb20gJy4vRXN0aW1hdGVDb3N0UHJvdmlkZXInXG5pbXBvcnQgeyBjYWxjdWxhdGVQcmljZSB9IGZyb20gJy4vaGVscGVyJ1xuaW1wb3J0IEVzdGltYXRlQ29zdExvY2FsZXMgZnJvbSAnLi9sb2NhbGVzL2VuJ1xuaW1wb3J0IHsgT3ZlcmxheUNvbXBvbmVudCB9IGZyb20gJy4vT3ZlcmxheUNvbXBvbmVudCdcbmltcG9ydCB7IE92ZXJsYXlDb250ZXh0UHJvdmlkZXIgfSBmcm9tICcuL092ZXJsYXlDb250ZXh0J1xuaW1wb3J0IHR5cGUge1xuICBCYXJlRXN0aW1hdGVQcm9kdWN0LFxuICBFc3RpbWF0ZUNvc3RQcm9wcyxcbiAgRXN0aW1hdGVQcm9kdWN0LFxuICBJdGVyYXRpb24sXG4gIFVuaXRzLFxufSBmcm9tICcuL3R5cGVzJ1xuXG5jb25zdCBGZWVzVGV4dCA9IHN0eWxlZChUZXh0KWBcbiAgbWFyZ2luLXRvcDogJHsoeyB0aGVtZSB9KSA9PiB0aGVtZS5zcGFjZVsnMyddfTtcbmBcblxuY29uc3QgU3R5bGVkVGV4dCA9IHN0eWxlZChUZXh0KTx7XG4gIGlzQmV0YT86IGJvb2xlYW5cbn0+YFxuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgJHsoeyBpc0JldGEsIHRoZW1lIH0pID0+XG4gICAgaXNCZXRhID8gYG1hcmdpbi1sZWZ0OiAke3RoZW1lLnNwYWNlWycyJ119O2AgOiBudWxsfVxuYFxuXG5jb25zdCBSaWdodEFsaWduZWRUZXh0ID0gc3R5bGVkKFRleHQpYFxuICB0ZXh0LWFsaWduOiByaWdodDtcbmBcblxuY29uc3QgU3R5bGVkQ2FsY3VsYXRvckljb24gPSBzdHlsZWQoQ2FsY3VsYXRvckljb24pYFxuICBtYXJnaW4tcmlnaHQ6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUuc3BhY2VbJzEnXX07XG5gXG5cbmNvbnN0IFN0eWxlZFByaWNlQ2VsbCA9IHN0eWxlZChDZWxsLndpdGhDb21wb25lbnQoJ3RoJykpYFxuICAkeyh7IHRoZW1lIH0pID0+IHByaWNlQ2VsbCh0aGVtZSl9XG4gIHBhZGRpbmc6IDA7XG5gXG5cbmNvbnN0IERFRkFVTFRfVU5JVF9MSVNUOiBVbml0c1tdID0gWydob3VycycsICdkYXlzJywgJ21vbnRocyddXG5cbnR5cGUgRXh0cmFQcm9wcyA9IHtcbiAgaXNMYXN0RWxlbWVudD86IGJvb2xlYW5cbiAgcHJvZHVjdHNDYWxsYmFjaz86IHtcbiAgICBhZGQ6IChwcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHZvaWRcbiAgICByZW1vdmU6IChwcm9kdWN0OiBCYXJlRXN0aW1hdGVQcm9kdWN0KSA9PiB2b2lkXG4gIH1cbiAgaXRlcmF0aW9uPzogSXRlcmF0aW9uXG4gIGRpc2NvdW50PzogbnVtYmVyXG59XG5cbmNvbnN0IERlc2NyaXB0aW9uQ29tcG9uZW50ID0gbWVtbyhcbiAgKHtcbiAgICBkZXNjcmlwdGlvbixcbiAgICBsb2NhbGVzLFxuICB9OiB7XG4gICAgZGVzY3JpcHRpb246IFJlYWN0Tm9kZVxuICAgIGxvY2FsZXM6IFJlY29yZDxrZXlvZiB0eXBlb2YgRXN0aW1hdGVDb3N0TG9jYWxlcywgc3RyaW5nPlxuICB9KSA9PlxuICAgIGRlc2NyaXB0aW9uID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIGRlc2NyaXB0aW9uID09PSAnc3RyaW5nJyA/IChcbiAgICAgIDxUZXh0IGFzPVwic3BhblwiIHZhcmlhbnQ9XCJib2R5XCI+XG4gICAgICAgIHtkZXNjcmlwdGlvbiB8fCBsb2NhbGVzWydlc3RpbWF0ZS5jb3N0LmRlc2NyaXB0aW9uJ119XG4gICAgICA8L1RleHQ+XG4gICAgKSA6IChcbiAgICAgIGRlc2NyaXB0aW9uXG4gICAgKSxcbilcblxuY29uc3QgVGl0bGVDb21wb25lbnQgPSBtZW1vKFxuICAoe1xuICAgIGxvY2FsZXMsXG4gIH06IHtcbiAgICBsb2NhbGVzOiBSZXF1aXJlZDxDb21wb25lbnRQcm9wczx0eXBlb2YgRXN0aW1hdGVDb3N0Q29udGVudD5bJ2xvY2FsZXMnXT5cbiAgfSkgPT4gKFxuICAgIDxUaXRsZT5cbiAgICAgIDxTdHlsZWRDYWxjdWxhdG9ySWNvbiBzZW50aW1lbnQ9XCJwcmltYXJ5XCIgc2l6ZT1cIm1lZGl1bVwiIC8+XG4gICAgICB7bG9jYWxlcz8uWydlc3RpbWF0ZS5jb3N0LmxhYmVsJ119XG4gICAgPC9UaXRsZT5cbiAgKSxcbilcblxuZXhwb3J0IGNvbnN0IEVzdGltYXRlQ29zdENvbnRlbnQgPSAoe1xuICBkZXNjcmlwdGlvbixcbiAgYWxlcnQsXG4gIGFsZXJ0VGl0bGUsXG4gIGFsZXJ0VmFyaWFudCA9ICd3YXJuaW5nJyxcbiAgZGVmYXVsdFRpbWVVbml0ID0gJ2hvdXJzJyxcbiAgdGltZVVuaXRzID0gREVGQVVMVF9VTklUX0xJU1QsXG4gIGhpZGVPdmVybGF5ID0gZmFsc2UsXG4gIGRpc2FibGVPdmVybGF5TGVmdCA9IGZhbHNlLFxuICBkaXNhYmxlT3ZlcmxheVJpZ2h0ID0gZmFsc2UsXG4gIGhpZGVUaW1lVW5pdCA9IGZhbHNlLFxuICBoaWRlVG90YWwgPSBmYWxzZSxcbiAgaGlkZUhvdXJseVByaWNlT25Ub3RhbCA9IGZhbHNlLFxuICBkaXNjb3VudCA9IDAsXG4gIE92ZXJsYXlSaWdodCxcbiAgT3ZlcmxheUxlZnQsXG4gIGlzQmV0YSA9IGZhbHNlLFxuICBjb21taXRtZW50RmVlcyxcbiAgY29tbWl0bWVudEZlZXNDb250ZW50LFxuICBtb250aGx5RmVlcyxcbiAgbW9udGhseUZlZXNMYWJlbCxcbiAgbW9udGhseUZlZXNDb250ZW50LFxuICBvdmVybGF5VW5pdCA9ICdob3VycycsXG4gIGNoaWxkcmVuID0gbnVsbCxcbiAgbG9jYWxlcyA9IEVzdGltYXRlQ29zdExvY2FsZXMsXG4gIG92ZXJsYXlNYXJnaW4sXG4gIG9uVG90YWxQcmljZUNoYW5nZSxcbn06IEVzdGltYXRlQ29zdFByb3BzKSA9PiB7XG4gIGNvbnN0IHsgZm9ybWF0TnVtYmVyIH0gPSB1c2VFc3RpbWF0ZUNvc3QoKVxuICBjb25zdCBbcmVmLCBpblZpZXddID0gdXNlSW5WaWV3KClcbiAgY29uc3QgW3Byb2R1Y3RzLCBzZXRQcm9kdWN0c10gPSB1c2VTdGF0ZTxFc3RpbWF0ZVByb2R1Y3RbXT4oW10pIC8vIHByb2R1Y3QgaXMgdXNlZCB0byBzdG9yZSBlYWNoIGl0ZW1zIHdpdGggdGhlaXIgcHJpY2UgYW5kIGFtb3VudFxuICBjb25zdCBbdG90YWxQcmljZSwgc2V0VG90YWxQcmljZV0gPSB1c2VTdGF0ZSh7XG4gICAgaG91cmx5OiAwLFxuICAgIG1heEhvdXJseTogMCxcbiAgICBtYXhPdmVybGF5SG91cmx5OiAwLFxuICAgIG1heFRvdGFsOiAwLFxuICAgIG92ZXJsYXlIb3VybHk6IDAsXG4gICAgdG90YWw6IDAsXG4gIH0pXG4gIGNvbnN0IFtpdGVyYXRpb24sIHNldEl0ZXJhdGlvbl0gPSB1c2VTdGF0ZTxJdGVyYXRpb24+KHtcbiAgICB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJyxcbiAgICB2YWx1ZTogMSxcbiAgfSlcblxuICBjb25zdCBbaXNMb25nRnJhY3Rpb25EaWdpdHMsIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzXSA9IHVzZVN0YXRlKGZhbHNlKVxuICBjb25zdCBwcm92aWRlclZhbHVlID0gdXNlTWVtbygoKSA9PiAoeyBpc092ZXJsYXk6IGZhbHNlIH0pLCBbXSlcblxuICBjb25zdCB0b3RhbFZhbHVlID0gdXNlTWVtbyhcbiAgICAoKSA9PlxuICAgICAgZm9ybWF0TnVtYmVyKHRvdGFsUHJpY2UudG90YWwgPCAwID8gMCA6IHRvdGFsUHJpY2UudG90YWwsIHtcbiAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZ1tpdGVyYXRpb24udW5pdF1cbiAgICAgICAgICA6IG1heGltdW1GcmFjdGlvbkRpZ2l0c1tpdGVyYXRpb24udW5pdF0sXG4gICAgICB9KSxcbiAgICBbZm9ybWF0TnVtYmVyLCBpc0xvbmdGcmFjdGlvbkRpZ2l0cywgaXRlcmF0aW9uLnVuaXQsIHRvdGFsUHJpY2UudG90YWxdLFxuICApXG5cbiAgY29uc3QgdG90YWxNYXhWYWx1ZSA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIGZvcm1hdE51bWJlcih0b3RhbFByaWNlLm1heFRvdGFsIDwgMCA/IDAgOiB0b3RhbFByaWNlLm1heFRvdGFsLCB7XG4gICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICA/IG1heGltdW1GcmFjdGlvbkRpZ2l0c0xvbmdbaXRlcmF0aW9uLnVuaXRdXG4gICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHNbaXRlcmF0aW9uLnVuaXRdLFxuICAgICAgfSksXG4gICAgW2Zvcm1hdE51bWJlciwgaXNMb25nRnJhY3Rpb25EaWdpdHMsIGl0ZXJhdGlvbi51bml0LCB0b3RhbFByaWNlLm1heFRvdGFsXSxcbiAgKVxuXG4gIGNvbnN0IHByb2R1Y3RzQ2FsbGJhY2sgPSB1c2VNZW1vKFxuICAgICgpID0+ICh7XG4gICAgICBhZGQ6IChuZXdQcm9kdWN0OiBFc3RpbWF0ZVByb2R1Y3QpID0+IHtcbiAgICAgICAgc2V0UHJvZHVjdHModG90YWwgPT4ge1xuICAgICAgICAgIGlmICh0b3RhbC5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5pZCA9PT0gbmV3UHJvZHVjdC5pZCkpIHtcbiAgICAgICAgICAgIHJldHVybiB0b3RhbC5tYXAocHJvZHVjdCA9PlxuICAgICAgICAgICAgICBwcm9kdWN0LmlkID09PSBuZXdQcm9kdWN0LmlkID8gbmV3UHJvZHVjdCA6IHByb2R1Y3QsXG4gICAgICAgICAgICApXG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIFsuLi50b3RhbCwgbmV3UHJvZHVjdF1cbiAgICAgICAgfSlcbiAgICAgIH0sXG5cbiAgICAgIHJlbW92ZTogKHsgaWQgfTogQmFyZUVzdGltYXRlUHJvZHVjdCkgPT4ge1xuICAgICAgICBzZXRQcm9kdWN0cyh0b3RhbCA9PiB0b3RhbC5maWx0ZXIocHJvZHVjdCA9PiBwcm9kdWN0LmlkICE9PSBpZCkpXG4gICAgICB9LFxuICAgIH0pLFxuICAgIFtzZXRQcm9kdWN0c10sXG4gIClcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIC8vIHRoaXMgdmFyaWFibGUgY2hlY2sgaWYgdGhlcmUgaXMgYSBtYXhBbW91bnQgaW4gZWFjaCBwcm9kdWN0XG4gICAgLy8gaWYgbm90IHdlIGRvIG5vdCBuZWVkIHRvIGNhbGN1bGF0ZSBtYXhUb3RhbCwgbWF4SG91cmx5LCBtYXhPdmVybGF5SG91cmx5XG4gICAgY29uc3QgaXNNYXhBbW91bnRJblByb2R1Y3RzID0gcHJvZHVjdHMuZmluZChwcm9kdWN0ID0+IHByb2R1Y3QubWF4QW1vdW50KVxuICAgIHNldElzTG9uZ0ZyYWN0aW9uRGlnaXRzKFxuICAgICAgISFwcm9kdWN0cy5maW5kKHByb2R1Y3QgPT4gcHJvZHVjdC5sb25nRnJhY3Rpb25EaWdpdHMpLFxuICAgIClcbiAgICBzZXRUb3RhbFByaWNlKHtcbiAgICAgIGhvdXJseTogcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgIGFjYyArXG4gICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgOiAocHJvZHVjdC5wcmljZSAtIHByb2R1Y3QucHJpY2UgKiBwcm9kdWN0LmRpc2NvdW50KSAqXG4gICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QuYW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgIDAsXG4gICAgICApLFxuICAgICAgbWF4SG91cmx5OiBpc01heEFtb3VudEluUHJvZHVjdHNcbiAgICAgICAgPyBwcm9kdWN0cy5yZWR1Y2UoXG4gICAgICAgICAgICAoYWNjLCBwcm9kdWN0KSA9PlxuICAgICAgICAgICAgICBhY2MgJiYgcHJvZHVjdC5ub0l0ZXJhdGlvblxuICAgICAgICAgICAgICAgID8gMFxuICAgICAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICAgICAgTWF0aC5tYXgocHJvZHVjdC5tYXhBbW91bnQgLSBwcm9kdWN0LmFtb3VudEZyZWUsIDApLFxuXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4T3ZlcmxheUhvdXJseTogaXNNYXhBbW91bnRJblByb2R1Y3RzXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgKHByb2R1Y3Qubm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICA/IDBcbiAgICAgICAgICAgICAgICA6IChwcm9kdWN0LnByaWNlIC0gcHJvZHVjdC5wcmljZSAqIHByb2R1Y3QuZGlzY291bnQpICpcbiAgICAgICAgICAgICAgICAgIE1hdGgubWF4KHByb2R1Y3QubWF4QW1vdW50IC0gcHJvZHVjdC5hbW91bnRGcmVlLCAwKSksXG4gICAgICAgICAgICAwLFxuICAgICAgICAgIClcbiAgICAgICAgOiAwLFxuICAgICAgbWF4VG90YWw6IGlzTWF4QW1vdW50SW5Qcm9kdWN0c1xuICAgICAgICA/IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgICAgIChhY2MsIHByb2R1Y3QpID0+XG4gICAgICAgICAgICAgIGFjYyArXG4gICAgICAgICAgICAgIGNhbGN1bGF0ZVByaWNlKHtcbiAgICAgICAgICAgICAgICBhbW91bnQ6IHByb2R1Y3QubWF4QW1vdW50IHx8IHByb2R1Y3QuYW1vdW50LCAvLyBOb3QgYWxsIHByb2R1Y3RzIGhhdmUgbWF4QW1vdW50LCBzbyB3ZSBuZWVkIHRvIGNoZWNrIGJvdGhcbiAgICAgICAgICAgICAgICBhbW91bnRGcmVlOiBwcm9kdWN0LmFtb3VudEZyZWUsXG4gICAgICAgICAgICAgICAgZGlzY291bnQ6IHByb2R1Y3QuZGlzY291bnQsXG4gICAgICAgICAgICAgICAgcHJpY2U6IHByb2R1Y3QucHJpY2UsXG4gICAgICAgICAgICAgICAgdGltZUFtb3VudDogcHJvZHVjdC5ub0l0ZXJhdGlvbiA/IDEgOiBpdGVyYXRpb24udmFsdWUsXG4gICAgICAgICAgICAgICAgdGltZVVuaXQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAnaG91cnMnIDogaXRlcmF0aW9uLnVuaXQsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgMCxcbiAgICAgICAgICApXG4gICAgICAgIDogMCxcbiAgICAgIG92ZXJsYXlIb3VybHk6IHByb2R1Y3RzLnJlZHVjZShcbiAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICBhY2MgK1xuICAgICAgICAgIChwcm9kdWN0Lm5vSXRlcmF0aW9uXG4gICAgICAgICAgICA/IDBcbiAgICAgICAgICAgIDogKHByb2R1Y3QucHJpY2UgLSBwcm9kdWN0LnByaWNlICogcHJvZHVjdC5kaXNjb3VudCkgKlxuICAgICAgICAgICAgICBNYXRoLm1heChwcm9kdWN0LmFtb3VudCAtIHByb2R1Y3QuYW1vdW50RnJlZSwgMCkpLFxuICAgICAgICAwLFxuICAgICAgKSxcbiAgICAgIHRvdGFsOiAhaGlkZVRvdGFsXG4gICAgICAgID8gcHJvZHVjdHMucmVkdWNlKFxuICAgICAgICAgICAgKGFjYywgcHJvZHVjdCkgPT5cbiAgICAgICAgICAgICAgYWNjICtcbiAgICAgICAgICAgICAgY2FsY3VsYXRlUHJpY2Uoe1xuICAgICAgICAgICAgICAgIGFtb3VudDogcHJvZHVjdC5hbW91bnQsXG4gICAgICAgICAgICAgICAgYW1vdW50RnJlZTogcHJvZHVjdC5hbW91bnRGcmVlLFxuICAgICAgICAgICAgICAgIGRpc2NvdW50OiBwcm9kdWN0LmRpc2NvdW50LFxuICAgICAgICAgICAgICAgIHByaWNlOiBwcm9kdWN0LnByaWNlLFxuICAgICAgICAgICAgICAgIHRpbWVBbW91bnQ6IHByb2R1Y3Qubm9JdGVyYXRpb24gPyAxIDogaXRlcmF0aW9uLnZhbHVlLFxuICAgICAgICAgICAgICAgIHRpbWVVbml0OiBwcm9kdWN0Lm5vSXRlcmF0aW9uID8gJ2hvdXJzJyA6IGl0ZXJhdGlvbi51bml0LFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIDAsXG4gICAgICAgICAgKVxuICAgICAgICA6IDAsXG4gICAgfSlcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2U/Lih7XG4gICAgICB0b3RhbDogdG90YWxQcmljZS50b3RhbCxcbiAgICAgIHRvdGFsTWF4OiB0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IHRvdGFsUHJpY2UubWF4VG90YWwgOiB1bmRlZmluZWQsXG4gICAgfSlcbiAgfSwgW1xuICAgIGhpZGVUb3RhbCxcbiAgICBwcm9kdWN0cyxcbiAgICBpdGVyYXRpb24sXG4gICAgc2V0VG90YWxQcmljZSxcbiAgICBvblRvdGFsUHJpY2VDaGFuZ2UsXG4gICAgdG90YWxQcmljZS50b3RhbCxcbiAgICB0b3RhbFByaWNlLm1heFRvdGFsLFxuICAgIHRvdGFsVmFsdWUsXG4gICAgdG90YWxNYXhWYWx1ZSxcbiAgXSlcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChcbiAgICAgIGhpZGVUaW1lVW5pdCAmJlxuICAgICAgKGl0ZXJhdGlvbi52YWx1ZSA+IDEgfHwgaXRlcmF0aW9uLnVuaXQgIT09IChkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJykpXG4gICAgKSB7XG4gICAgICBzZXRJdGVyYXRpb24oeyB1bml0OiBkZWZhdWx0VGltZVVuaXQgPz8gJ2hvdXJzJywgdmFsdWU6IDEgfSlcbiAgICB9XG4gIH0sIFtoaWRlVGltZVVuaXQsIGl0ZXJhdGlvbiwgZGVmYXVsdFRpbWVVbml0XSlcblxuICByZXR1cm4gKFxuICAgIDxTdGFjayBnYXA9ezJ9PlxuICAgICAgeyFoaWRlT3ZlcmxheSA/IChcbiAgICAgICAgPE92ZXJsYXlDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheUxlZnQ9e2Rpc2FibGVPdmVybGF5TGVmdH1cbiAgICAgICAgICBkaXNhYmxlT3ZlcmxheVJpZ2h0PXtkaXNhYmxlT3ZlcmxheVJpZ2h0fVxuICAgICAgICAgIGRpc2NvdW50PXtkaXNjb3VudH1cbiAgICAgICAgICBpblZpZXc9e2luVmlld31cbiAgICAgICAgICBpc0JldGE9e2lzQmV0YX1cbiAgICAgICAgICBPdmVybGF5TGVmdD17T3ZlcmxheUxlZnR9XG4gICAgICAgICAgT3ZlcmxheVJpZ2h0PXtPdmVybGF5UmlnaHR9XG4gICAgICAgICAgb3ZlcmxheU1hcmdpbj17b3ZlcmxheU1hcmdpbn1cbiAgICAgICAgICB0b3RhbFByaWNlPXt0b3RhbFByaWNlfVxuICAgICAgICAgIHVuaXQ9e292ZXJsYXlVbml0ID8/ICdob3Vycyd9XG4gICAgICAgID5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvT3ZlcmxheUNvbXBvbmVudD5cbiAgICAgICkgOiBudWxsfVxuICAgICAge2Rlc2NyaXB0aW9uID09PSBmYWxzZSA/IG51bGwgOiAoXG4gICAgICAgIDxEZXNjcmlwdGlvbkNvbXBvbmVudCBkZXNjcmlwdGlvbj17ZGVzY3JpcHRpb259IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICApfVxuICAgICAge2FsZXJ0ID8gKFxuICAgICAgICA8QWxlcnQgc2VudGltZW50PXthbGVydFZhcmlhbnR9IHRpdGxlPXthbGVydFRpdGxlfT5cbiAgICAgICAgICB7YWxlcnR9XG4gICAgICAgIDwvQWxlcnQ+XG4gICAgICApIDogbnVsbH1cbiAgICAgIDxPdmVybGF5Q29udGV4dFByb3ZpZGVyIHZhbHVlPXtwcm92aWRlclZhbHVlfT5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICB7Y2hpbGRyZW4gPyAoXG4gICAgICAgICAgICA8U3R5bGVkVGFibGVcbiAgICAgICAgICAgICAgY2VsbFBhZGRpbmc9XCIwXCJcbiAgICAgICAgICAgICAgY2VsbFNwYWNpbmc9XCIwXCJcbiAgICAgICAgICAgICAgZGF0YS10ZXN0aWQ9XCJzdW1tYXJ5XCJcbiAgICAgICAgICAgICAgbm9Ub3RhbD17aGlkZVRvdGFsfVxuICAgICAgICAgICAgICByZWY9e3JlZn1cbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgeyFoaWRlVGltZVVuaXQgPyAoXG4gICAgICAgICAgICAgICAgPHRoZWFkPlxuICAgICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpdGxlQ29tcG9uZW50IGxvY2FsZXM9e2xvY2FsZXN9IC8+XG4gICAgICAgICAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICAgICAgPFRpbWVDZWxsPlxuICAgICAgICAgICAgICAgICAgICAgICAgPEN1c3RvbVVuaXRJbnB1dFxuICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0VGltZVVuaXQ9e2RlZmF1bHRUaW1lVW5pdH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXRlcmF0aW9uPXtpdGVyYXRpb259XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHNldEl0ZXJhdGlvbj17c2V0SXRlcmF0aW9ufVxuICAgICAgICAgICAgICAgICAgICAgICAgICB0aW1lVW5pdHM9e3RpbWVVbml0c31cbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgPC9UaW1lQ2VsbD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRQcmljZUNlbGw+XG4gICAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICAgIDwvdGhlYWQ+XG4gICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgICAgICAge0NoaWxkcmVuLm1hcChjaGlsZHJlbiwgKGNoaWxkLCBpbmRleCkgPT5cbiAgICAgICAgICAgICAgICAgIGlzVmFsaWRFbGVtZW50PEV4dHJhUHJvcHM+KGNoaWxkKVxuICAgICAgICAgICAgICAgICAgICA/IGNsb25lRWxlbWVudChjaGlsZCwge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzY291bnQ6XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICEoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wczogUmVjb3JkPHN0cmluZywgdW5rbm93bj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50PzogbnVtYmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBkaXNjb3VudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGQgYXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvcHM6IFJlY29yZDxzdHJpbmcsIHVua25vd24+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLnByb3BzIGFzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNjb3VudD86IG51bWJlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLmRpc2NvdW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudDogaW5kZXggPT09IENoaWxkcmVuLmNvdW50KGNoaWxkcmVuKSAtIDEsXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrLFxuICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgIDogY2hpbGQsXG4gICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICAgIDwvU3R5bGVkVGFibGU+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgeyFoaWRlVG90YWwgPyAoXG4gICAgICAgICAgICA8RW1wdHlUYWJsZSBjZWxsUGFkZGluZz1cIjBcIiBjZWxsU3BhY2luZz1cIjBcIj5cbiAgICAgICAgICAgICAgPGNvbGdyb3VwPlxuICAgICAgICAgICAgICAgIDxjb2wgLz5cbiAgICAgICAgICAgICAgICA8UHJpY2VDb2wgLz5cbiAgICAgICAgICAgICAgPC9jb2xncm91cD5cbiAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDxFbXB0eUNlbGwgYXJpYS1sYWJlbD1cImNvbnRyb2xcIiAvPlxuICAgICAgICAgICAgICAgICAgPFRvdGFsUHJpY2VDZWxsIGhhc0JvcmRlcj17ZmFsc2V9PlxuICAgICAgICAgICAgICAgICAgICB7aXNCZXRhID8gKFxuICAgICAgICAgICAgICAgICAgICAgIDxCYWRnZUJldGFcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvbmc9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGBlc3RpbWF0ZS5jb3N0LmJldGEuJHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICBdLmxlbmd0aCA+IDI1XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taW5lbmNlPVwic3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIHNlbnRpbWVudD1cIndhcm5pbmdcIlxuICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgIHtgJHtkaXNjb3VudCA+IDAgPyBkaXNjb3VudCAqIDEwMCA6ICcnfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAke1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsZXNbXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5iZXRhLiR7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2NvdW50ID4gMCA/ICdkaXNjb3VudCcgOiAnZnJlZSdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9YH1cbiAgICAgICAgICAgICAgICAgICAgICA8L0JhZGdlQmV0YT5cbiAgICAgICAgICAgICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgIDxTdHlsZWRUZXh0XG4gICAgICAgICAgICAgICAgICAgICAgYXM9XCJoM1wiXG4gICAgICAgICAgICAgICAgICAgICAgaXNCZXRhPXtpc0JldGF9XG4gICAgICAgICAgICAgICAgICAgICAgc2VudGltZW50PVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgICAgICAgICAgdmFyaWFudD1cImhlYWRpbmdcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPExpbmVUaHJvdWdoXG4gICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxWYWx1ZX1cbiAgICAgICAgICAgICAgICAgICAgICAgIHt0b3RhbFByaWNlLm1heFRvdGFsID4gMCA/IGAgLSAke3RvdGFsTWF4VmFsdWV9YCA6IG51bGx9XG4gICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgPC9TdHlsZWRUZXh0PlxuICAgICAgICAgICAgICAgICAgICB7aGlkZUhvdXJseVByaWNlT25Ub3RhbCAmJlxuICAgICAgICAgICAgICAgICAgICB0b3RhbFByaWNlLmhvdXJseSA+IDAgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS5ob3VybHkgIT09IHRvdGFsUHJpY2UudG90YWwgJiZcbiAgICAgICAgICAgICAgICAgICAgdG90YWxQcmljZS50b3RhbCA+IDAgPyAoXG4gICAgICAgICAgICAgICAgICAgICAgPFJpZ2h0QWxpZ25lZFRleHQgYXM9XCJwXCIgdmFyaWFudD1cImJvZHlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxMaW5lVGhyb3VnaFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZT17aXNCZXRhICYmIChkaXNjb3VudCA9PT0gMCB8fCBkaXNjb3VudCA+PSAxKX1cbiAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAge2Zvcm1hdE51bWJlcih0b3RhbFByaWNlLmhvdXJseSwge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGltdW1GcmFjdGlvbkRpZ2l0czogaXNMb25nRnJhY3Rpb25EaWdpdHNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBtYXhpbXVtRnJhY3Rpb25EaWdpdHMuaG91cnMsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIH0pfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB7dG90YWxQcmljZS5tYXhIb3VybHkgPiAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyBgIC0gJHtmb3JtYXROdW1iZXIodG90YWxQcmljZS5tYXhIb3VybHksIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4aW11bUZyYWN0aW9uRGlnaXRzOiBpc0xvbmdGcmFjdGlvbkRpZ2l0c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gbWF4aW11bUZyYWN0aW9uRGlnaXRzTG9uZy5ob3Vyc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbWF4aW11bUZyYWN0aW9uRGlnaXRzLmhvdXJzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSl9YFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogbnVsbH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgL1xuICAgICAgICAgICAgICAgICAgICAgICAgICB7bG9jYWxlc1tcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC51bml0cy5ob3Vycy5sYWJlbGBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgXS50b0xvd2VyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC9MaW5lVGhyb3VnaD5cbiAgICAgICAgICAgICAgICAgICAgICA8L1JpZ2h0QWxpZ25lZFRleHQ+XG4gICAgICAgICAgICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgICAgICAgICAgPC9Ub3RhbFByaWNlQ2VsbD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgICAgPC9FbXB0eVRhYmxlPlxuICAgICAgICAgICkgOiBudWxsfVxuICAgICAgICAgIHtjb21taXRtZW50RmVlcyAhPT0gdW5kZWZpbmVkIHx8IG1vbnRobHlGZWVzICE9PSB1bmRlZmluZWQgPyAoXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8RmVlc1RleHQgYXM9XCJoM1wiIHZhcmlhbnQ9XCJoZWFkaW5nU21hbGxcIj5cbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBsb2NhbGVzW1xuICAgICAgICAgICAgICAgICAgICBgZXN0aW1hdGUuY29zdC5mZWVzLiR7XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXMgPyAnb25lVGltZScgOiAnbW9udGhseSdcbiAgICAgICAgICAgICAgICAgICAgfS50aXRsZWBcbiAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvRmVlc1RleHQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRGZWVzVGFibGU+XG4gICAgICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICAgICAgPEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgaXNMYXN0RWxlbWVudFxuICAgICAgICAgICAgICAgICAgICBsYWJlbD17XG4gICAgICAgICAgICAgICAgICAgICAgY29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICAgID8gbG9jYWxlc1snZXN0aW1hdGUuY29zdC5mZWVzLmNvbW1pdG1lbnQnXVxuICAgICAgICAgICAgICAgICAgICAgICAgOiBtb250aGx5RmVlc0xhYmVsXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbm9JdGVyYXRpb25cbiAgICAgICAgICAgICAgICAgICAgcHJpY2U9e2NvbW1pdG1lbnRGZWVzIHx8IG1vbnRobHlGZWVzfVxuICAgICAgICAgICAgICAgICAgICBwcm9kdWN0c0NhbGxiYWNrPXt7XG4gICAgICAgICAgICAgICAgICAgICAgYWRkOiAoKSA9PiB7fSxcbiAgICAgICAgICAgICAgICAgICAgICByZW1vdmU6ICgpID0+IHt9LFxuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICB7Y29tbWl0bWVudEZlZXNcbiAgICAgICAgICAgICAgICAgICAgICA/IGNvbW1pdG1lbnRGZWVzQ29udGVudFxuICAgICAgICAgICAgICAgICAgICAgIDogbW9udGhseUZlZXNDb250ZW50fVxuICAgICAgICAgICAgICAgICAgPC9JdGVtPlxuICAgICAgICAgICAgICAgIDwvdGJvZHk+XG4gICAgICAgICAgICAgIDwvU3R5bGVkRmVlc1RhYmxlPlxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgKSA6IG51bGx9XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9PdmVybGF5Q29udGV4dFByb3ZpZGVyPlxuICAgIDwvU3RhY2s+XG4gIClcbn1cbiJdfQ== */"));
|
|
17
|
+
import { estimateCostTable, estimateCostPriceColumn, estimateCostPriceCellContent, estimateCostPriceCell, estimateCostTimeCell, estimateCostEmptyTable, estimateCostEmptyCell, estimateCostCell, estimateCostTotalPriceCell, estimateCostBadgeBeta, estimateCostText, paddingLeftCell, estimatecostFeesText, estimateCostFeesTable, estimateCostTitle, estimateCostCalculatorIcon } from "./styles.css.js";
|
|
72
18
|
const DEFAULT_UNIT_LIST = ["hours", "days", "months"];
|
|
73
|
-
const DescriptionComponent = memo(
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
19
|
+
const DescriptionComponent = memo(
|
|
20
|
+
({
|
|
21
|
+
description,
|
|
22
|
+
locales
|
|
23
|
+
}) => description === void 0 || typeof description === "string" ? /* @__PURE__ */ jsx(Text, { as: "span", variant: "body", children: description || locales["estimate.cost.description"] }) : description
|
|
24
|
+
);
|
|
25
|
+
const TitleComponent = memo(
|
|
26
|
+
({
|
|
27
|
+
locales
|
|
28
|
+
}) => /* @__PURE__ */ jsxs("h3", { className: estimateCostTitle, children: [
|
|
29
|
+
/* @__PURE__ */ jsx(
|
|
30
|
+
CalculatorIcon,
|
|
31
|
+
{
|
|
32
|
+
className: estimateCostCalculatorIcon,
|
|
33
|
+
sentiment: "primary",
|
|
34
|
+
size: "medium"
|
|
35
|
+
}
|
|
36
|
+
),
|
|
37
|
+
locales?.["estimate.cost.label"]
|
|
38
|
+
] })
|
|
39
|
+
);
|
|
83
40
|
const EstimateCostContent = ({
|
|
84
41
|
description,
|
|
85
42
|
alert,
|
|
@@ -106,11 +63,10 @@ const EstimateCostContent = ({
|
|
|
106
63
|
children = null,
|
|
107
64
|
locales = EstimateCostLocales,
|
|
108
65
|
overlayMargin,
|
|
109
|
-
onTotalPriceChange
|
|
66
|
+
onTotalPriceChange,
|
|
67
|
+
style
|
|
110
68
|
}) => {
|
|
111
|
-
const {
|
|
112
|
-
formatNumber
|
|
113
|
-
} = useEstimateCost();
|
|
69
|
+
const { formatNumber } = useEstimateCost();
|
|
114
70
|
const [ref, inView] = useInView();
|
|
115
71
|
const [products, setProducts] = useState([]);
|
|
116
72
|
const [totalPrice, setTotalPrice] = useState({
|
|
@@ -126,125 +82,265 @@ const EstimateCostContent = ({
|
|
|
126
82
|
value: 1
|
|
127
83
|
});
|
|
128
84
|
const [isLongFractionDigits, setIsLongFractionDigits] = useState(false);
|
|
129
|
-
const providerValue = useMemo(() => ({
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
85
|
+
const providerValue = useMemo(() => ({ isOverlay: false }), []);
|
|
86
|
+
const totalValue = useMemo(
|
|
87
|
+
() => formatNumber(totalPrice.total < 0 ? 0 : totalPrice.total, {
|
|
88
|
+
maximumFractionDigits: isLongFractionDigits ? maximumFractionDigitsLong[iteration.unit] : maximumFractionDigits[iteration.unit]
|
|
89
|
+
}),
|
|
90
|
+
[formatNumber, isLongFractionDigits, iteration.unit, totalPrice.total]
|
|
91
|
+
);
|
|
92
|
+
const totalMaxValue = useMemo(
|
|
93
|
+
() => formatNumber(totalPrice.maxTotal < 0 ? 0 : totalPrice.maxTotal, {
|
|
94
|
+
maximumFractionDigits: isLongFractionDigits ? maximumFractionDigitsLong[iteration.unit] : maximumFractionDigits[iteration.unit]
|
|
95
|
+
}),
|
|
96
|
+
[formatNumber, isLongFractionDigits, iteration.unit, totalPrice.maxTotal]
|
|
97
|
+
);
|
|
98
|
+
const productsCallback = useMemo(
|
|
99
|
+
() => ({
|
|
100
|
+
add: (newProduct) => {
|
|
101
|
+
setProducts((total) => {
|
|
102
|
+
if (total.find((product) => product.id === newProduct.id)) {
|
|
103
|
+
return total.map(
|
|
104
|
+
(product) => product.id === newProduct.id ? newProduct : product
|
|
105
|
+
);
|
|
106
|
+
}
|
|
107
|
+
return [...total, newProduct];
|
|
108
|
+
});
|
|
109
|
+
},
|
|
110
|
+
remove: ({ id }) => {
|
|
111
|
+
setProducts((total) => total.filter((product) => product.id !== id));
|
|
112
|
+
}
|
|
113
|
+
}),
|
|
114
|
+
[setProducts]
|
|
115
|
+
);
|
|
153
116
|
useEffect(() => {
|
|
154
117
|
const isMaxAmountInProducts = products.find((product) => product.maxAmount);
|
|
155
|
-
setIsLongFractionDigits(
|
|
118
|
+
setIsLongFractionDigits(
|
|
119
|
+
!!products.find((product) => product.longFractionDigits)
|
|
120
|
+
);
|
|
156
121
|
setTotalPrice({
|
|
157
|
-
hourly: products.reduce(
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
122
|
+
hourly: products.reduce(
|
|
123
|
+
(acc, product) => acc + (product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.amount - product.amountFree, 0)),
|
|
124
|
+
0
|
|
125
|
+
),
|
|
126
|
+
maxHourly: isMaxAmountInProducts ? products.reduce(
|
|
127
|
+
(acc, product) => acc && product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.maxAmount - product.amountFree, 0),
|
|
128
|
+
0
|
|
129
|
+
) : 0,
|
|
130
|
+
maxOverlayHourly: isMaxAmountInProducts ? products.reduce(
|
|
131
|
+
(acc, product) => acc + (product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.maxAmount - product.amountFree, 0)),
|
|
132
|
+
0
|
|
133
|
+
) : 0,
|
|
134
|
+
maxTotal: isMaxAmountInProducts ? products.reduce(
|
|
135
|
+
(acc, product) => acc + calculatePrice({
|
|
136
|
+
amount: product.maxAmount || product.amount,
|
|
137
|
+
// Not all products have maxAmount, so we need to check both
|
|
138
|
+
amountFree: product.amountFree,
|
|
139
|
+
discount: product.discount,
|
|
140
|
+
price: product.price,
|
|
141
|
+
timeAmount: product.noIteration ? 1 : iteration.value,
|
|
142
|
+
timeUnit: product.noIteration ? "hours" : iteration.unit
|
|
143
|
+
}),
|
|
144
|
+
0
|
|
145
|
+
) : 0,
|
|
146
|
+
overlayHourly: products.reduce(
|
|
147
|
+
(acc, product) => acc + (product.noIteration ? 0 : (product.price - product.price * product.discount) * Math.max(product.amount - product.amountFree, 0)),
|
|
148
|
+
0
|
|
149
|
+
),
|
|
150
|
+
total: !hideTotal ? products.reduce(
|
|
151
|
+
(acc, product) => acc + calculatePrice({
|
|
152
|
+
amount: product.amount,
|
|
153
|
+
amountFree: product.amountFree,
|
|
154
|
+
discount: product.discount,
|
|
155
|
+
price: product.price,
|
|
156
|
+
timeAmount: product.noIteration ? 1 : iteration.value,
|
|
157
|
+
timeUnit: product.noIteration ? "hours" : iteration.unit
|
|
158
|
+
}),
|
|
159
|
+
0
|
|
160
|
+
) : 0
|
|
178
161
|
});
|
|
179
162
|
onTotalPriceChange?.({
|
|
180
163
|
total: totalPrice.total,
|
|
181
164
|
totalMax: totalPrice.maxTotal > 0 ? totalPrice.maxTotal : void 0
|
|
182
165
|
});
|
|
183
|
-
}, [
|
|
166
|
+
}, [
|
|
167
|
+
hideTotal,
|
|
168
|
+
products,
|
|
169
|
+
iteration,
|
|
170
|
+
setTotalPrice,
|
|
171
|
+
onTotalPriceChange,
|
|
172
|
+
totalPrice.total,
|
|
173
|
+
totalPrice.maxTotal,
|
|
174
|
+
totalValue,
|
|
175
|
+
totalMaxValue
|
|
176
|
+
]);
|
|
184
177
|
useEffect(() => {
|
|
185
178
|
if (hideTimeUnit && (iteration.value > 1 || iteration.unit !== (defaultTimeUnit ?? "hours"))) {
|
|
186
|
-
setIteration({
|
|
187
|
-
unit: defaultTimeUnit ?? "hours",
|
|
188
|
-
value: 1
|
|
189
|
-
});
|
|
179
|
+
setIteration({ unit: defaultTimeUnit ?? "hours", value: 1 });
|
|
190
180
|
}
|
|
191
181
|
}, [hideTimeUnit, iteration, defaultTimeUnit]);
|
|
192
|
-
return /* @__PURE__ */ jsxs(Stack, { gap: 2, children: [
|
|
193
|
-
!hideOverlay ? /* @__PURE__ */ jsx(
|
|
182
|
+
return /* @__PURE__ */ jsxs(Stack, { gap: 2, style, children: [
|
|
183
|
+
!hideOverlay ? /* @__PURE__ */ jsx(
|
|
184
|
+
OverlayComponent,
|
|
185
|
+
{
|
|
186
|
+
disableOverlayLeft,
|
|
187
|
+
disableOverlayRight,
|
|
188
|
+
discount,
|
|
189
|
+
inView,
|
|
190
|
+
isBeta,
|
|
191
|
+
OverlayLeft,
|
|
192
|
+
OverlayRight,
|
|
193
|
+
overlayMargin,
|
|
194
|
+
totalPrice,
|
|
195
|
+
unit: overlayUnit ?? "hours",
|
|
196
|
+
children
|
|
197
|
+
}
|
|
198
|
+
) : null,
|
|
194
199
|
description === false ? null : /* @__PURE__ */ jsx(DescriptionComponent, { description, locales }),
|
|
195
200
|
alert ? /* @__PURE__ */ jsx(Alert, { sentiment: alertVariant, title: alertTitle, children: alert }) : null,
|
|
196
201
|
/* @__PURE__ */ jsx(OverlayContextProvider, { value: providerValue, children: /* @__PURE__ */ jsxs("div", { children: [
|
|
197
|
-
children ? /* @__PURE__ */ jsxs(
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
]
|
|
238
|
-
|
|
239
|
-
|
|
202
|
+
children ? /* @__PURE__ */ jsxs(
|
|
203
|
+
"table",
|
|
204
|
+
{
|
|
205
|
+
cellPadding: "0",
|
|
206
|
+
cellSpacing: "0",
|
|
207
|
+
className: estimateCostTable[hideTotal ? "noTotal" : "total"],
|
|
208
|
+
"data-testid": "summary",
|
|
209
|
+
ref,
|
|
210
|
+
children: [
|
|
211
|
+
/* @__PURE__ */ jsxs("colgroup", { children: [
|
|
212
|
+
/* @__PURE__ */ jsx("col", {}),
|
|
213
|
+
/* @__PURE__ */ jsx("col", { className: estimateCostPriceColumn })
|
|
214
|
+
] }),
|
|
215
|
+
!hideTimeUnit ? /* @__PURE__ */ jsx("thead", { children: /* @__PURE__ */ jsxs("tr", { children: [
|
|
216
|
+
/* @__PURE__ */ jsx("th", { children: /* @__PURE__ */ jsx(TitleComponent, { locales }) }),
|
|
217
|
+
/* @__PURE__ */ jsx(
|
|
218
|
+
"th",
|
|
219
|
+
{
|
|
220
|
+
className: `${estimateCostPriceCellContent} ${estimateCostPriceCell}`,
|
|
221
|
+
children: /* @__PURE__ */ jsx("div", { className: estimateCostTimeCell, children: /* @__PURE__ */ jsx(
|
|
222
|
+
CustomUnitInput,
|
|
223
|
+
{
|
|
224
|
+
defaultTimeUnit,
|
|
225
|
+
iteration,
|
|
226
|
+
setIteration,
|
|
227
|
+
timeUnits
|
|
228
|
+
}
|
|
229
|
+
) })
|
|
230
|
+
}
|
|
231
|
+
)
|
|
232
|
+
] }) }) : null,
|
|
233
|
+
/* @__PURE__ */ jsx("tbody", { children: Children.map(
|
|
234
|
+
children,
|
|
235
|
+
(child, index) => isValidElement(child) ? cloneElement(child, {
|
|
236
|
+
discount: discount && !child.props.discount ? discount : child.props.discount,
|
|
237
|
+
isLastElement: index === Children.count(children) - 1,
|
|
238
|
+
iteration,
|
|
239
|
+
productsCallback
|
|
240
|
+
}) : child
|
|
241
|
+
) })
|
|
242
|
+
]
|
|
243
|
+
}
|
|
244
|
+
) : null,
|
|
245
|
+
!hideTotal ? /* @__PURE__ */ jsxs(
|
|
246
|
+
"table",
|
|
247
|
+
{
|
|
248
|
+
cellPadding: "0",
|
|
249
|
+
cellSpacing: "0",
|
|
250
|
+
className: estimateCostEmptyTable,
|
|
251
|
+
children: [
|
|
252
|
+
/* @__PURE__ */ jsxs("colgroup", { children: [
|
|
253
|
+
/* @__PURE__ */ jsx("col", {}),
|
|
254
|
+
/* @__PURE__ */ jsx("col", { className: estimateCostPriceColumn })
|
|
255
|
+
] }),
|
|
256
|
+
/* @__PURE__ */ jsx("tbody", { children: /* @__PURE__ */ jsxs("tr", { children: [
|
|
257
|
+
/* @__PURE__ */ jsx("td", { "aria-label": "control", className: estimateCostEmptyCell }),
|
|
258
|
+
/* @__PURE__ */ jsxs(
|
|
259
|
+
"td",
|
|
260
|
+
{
|
|
261
|
+
className: `${estimateCostCell({ hasBorder: false, primary: false })} ${estimateCostTotalPriceCell}`,
|
|
262
|
+
style: assignInlineVars({
|
|
263
|
+
[paddingLeftCell]: `16px`
|
|
264
|
+
}),
|
|
265
|
+
children: [
|
|
266
|
+
isBeta ? /* @__PURE__ */ jsx(
|
|
267
|
+
Badge,
|
|
268
|
+
{
|
|
269
|
+
className: estimateCostBadgeBeta[locales[`estimate.cost.beta.${discount > 0 ? "discount" : "free"}`].length > 25 ? "long" : "short"],
|
|
270
|
+
prominence: "strong",
|
|
271
|
+
sentiment: "warning",
|
|
272
|
+
children: `${discount > 0 ? discount * 100 : ""}
|
|
273
|
+
${locales[`estimate.cost.beta.${discount > 0 ? "discount" : "free"}`]}`
|
|
274
|
+
}
|
|
275
|
+
) : null,
|
|
276
|
+
/* @__PURE__ */ jsx(
|
|
277
|
+
Text,
|
|
278
|
+
{
|
|
279
|
+
as: "h3",
|
|
280
|
+
className: estimateCostText[isBeta ? "beta" : "notBeta"],
|
|
281
|
+
sentiment: "primary",
|
|
282
|
+
variant: "heading",
|
|
283
|
+
children: /* @__PURE__ */ jsxs(
|
|
284
|
+
LineThrough,
|
|
285
|
+
{
|
|
286
|
+
isActive: isBeta && (discount === 0 || discount >= 1),
|
|
287
|
+
children: [
|
|
288
|
+
totalValue,
|
|
289
|
+
totalPrice.maxTotal > 0 ? ` - ${totalMaxValue}` : null
|
|
290
|
+
]
|
|
291
|
+
}
|
|
292
|
+
)
|
|
293
|
+
}
|
|
294
|
+
),
|
|
295
|
+
hideHourlyPriceOnTotal && totalPrice.hourly > 0 && totalPrice.hourly !== totalPrice.total && totalPrice.total > 0 ? /* @__PURE__ */ jsx(Text, { as: "p", placement: "right", variant: "body", children: /* @__PURE__ */ jsxs(
|
|
296
|
+
LineThrough,
|
|
297
|
+
{
|
|
298
|
+
isActive: isBeta && (discount === 0 || discount >= 1),
|
|
299
|
+
children: [
|
|
300
|
+
formatNumber(totalPrice.hourly, {
|
|
301
|
+
maximumFractionDigits: isLongFractionDigits ? maximumFractionDigitsLong.hours : maximumFractionDigits.hours
|
|
302
|
+
}),
|
|
303
|
+
totalPrice.maxHourly > 0 ? ` - ${formatNumber(totalPrice.maxHourly, {
|
|
304
|
+
maximumFractionDigits: isLongFractionDigits ? maximumFractionDigitsLong.hours : maximumFractionDigits.hours
|
|
305
|
+
})}` : null,
|
|
306
|
+
"/",
|
|
307
|
+
locales[`estimate.cost.units.hours.label`].toLowerCase()
|
|
308
|
+
]
|
|
309
|
+
}
|
|
310
|
+
) }) : null
|
|
311
|
+
]
|
|
312
|
+
}
|
|
313
|
+
)
|
|
314
|
+
] }) })
|
|
315
|
+
]
|
|
316
|
+
}
|
|
317
|
+
) : null,
|
|
240
318
|
commitmentFees !== void 0 || monthlyFees !== void 0 ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
241
|
-
/* @__PURE__ */ jsx(
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
319
|
+
/* @__PURE__ */ jsx(
|
|
320
|
+
Text,
|
|
321
|
+
{
|
|
322
|
+
as: "h3",
|
|
323
|
+
className: estimatecostFeesText,
|
|
324
|
+
variant: "headingSmall",
|
|
325
|
+
children: locales[`estimate.cost.fees.${commitmentFees ? "oneTime" : "monthly"}.title`]
|
|
326
|
+
}
|
|
327
|
+
),
|
|
328
|
+
/* @__PURE__ */ jsx("table", { className: estimateCostFeesTable, children: /* @__PURE__ */ jsx("tbody", { children: /* @__PURE__ */ jsx(
|
|
329
|
+
Item,
|
|
330
|
+
{
|
|
331
|
+
isLastElement: true,
|
|
332
|
+
label: commitmentFees ? locales["estimate.cost.fees.commitment"] : monthlyFeesLabel,
|
|
333
|
+
noIteration: true,
|
|
334
|
+
price: commitmentFees || monthlyFees,
|
|
335
|
+
productsCallback: {
|
|
336
|
+
add: () => {
|
|
337
|
+
},
|
|
338
|
+
remove: () => {
|
|
339
|
+
}
|
|
340
|
+
},
|
|
341
|
+
children: commitmentFees ? commitmentFeesContent : monthlyFeesContent
|
|
246
342
|
}
|
|
247
|
-
|
|
343
|
+
) }) })
|
|
248
344
|
] }) : null
|
|
249
345
|
] }) })
|
|
250
346
|
] });
|