@kepler.gl/styles 3.1.0-alpha.0 → 3.1.0-alpha.2

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/base.js ADDED
@@ -0,0 +1,1405 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.inputBorderActiveColorLT = exports.inputBorderActiveColor = exports.inputBgdHover = exports.inputBgdActiveLT = exports.inputBgdActive = exports.inputBgd = exports.histogramOverlayColor = exports.histogramFillOutRange = exports.histogramFillInRange = exports.histogramBreakLineColor = exports.geocoderWidth = exports.geocoderTop = exports.geocoderRight = exports.geocoderInputHeight = exports.fontWhiteColor = exports.fontWeight = exports.fontSize = exports.fontFamily = exports.floatingBtnColor = exports.floatingBtnBorderHover = exports.floatingBtnBorder = exports.floatingBtnBgdHover = exports.floatingBtnBgd = exports.floatingBtnActColor = exports.floatingBtnActBgd = exports.fieldTokenWidth = exports.fieldTokenRightMargin = exports.fieldTokenHeight = exports.errorColor = exports.effectTypeIconSizeL = exports.effectTypeIconMarginSide = exports.effectTypeIconBgHoverColor = exports.effectPanelWidth = exports.effectPanelTextSecondary3 = exports.effectPanelTextSecondary2 = exports.effectPanelTextSecondary1 = exports.effectPanelTextMain = exports.effectPanelPaddingTop = exports.effectPanelPaddingSide = exports.effectPanelHeight = exports.effectPanelElementColorSun = exports.effectPanelElementColorSelected = exports.effectPanelElementColorHovered = exports.effectPanelElementColorActive = exports.effectPanelElementColor = exports.effectPanelAddEffectFontFamily = exports.effectConfiguratorPadding = exports.effectConfiguratorMargin = exports.dropdownWrapperZ = exports.dropdownWapperMargin = exports.dropdownSelectHeight = exports.dropdownListShadow = exports.dropdownListLineHeight = exports.dropdownListHighlightBgLT = exports.dropdownListHighlightBg = exports.dropdownListBorderTopLT = exports.dropdownListBorderTop = exports.dropdownListBgdLT = exports.dropdownListBgd = exports.dndOverBackgroundColor = exports.dataTableTextColor = exports.ctaBtnColor = exports.ctaBtnBgdHover = exports.ctaBtnBgd = exports.ctaBtnActColor = exports.ctaBtnActBgd = exports.chickletBgdLT = exports.chickletBgd = exports.checkboxWidth = exports.checkboxMargin = exports.checkboxHeight = exports.checkboxBoxBgdChecked = exports.checkboxBoxBgd = exports.checkboxBorderRadius = exports.checkboxBorderColorLT = exports.checkboxBorderColor = exports.btnFontFamily = exports.breakPoints = exports.boxSizing = exports.boxShadow = exports.bottomWidgetPaddingTop = exports.bottomWidgetPaddingRight = exports.bottomWidgetPaddingLeft = exports.bottomWidgetPaddingBottom = exports.bottomWidgetBgd = exports.bottomPanelGapPalm = exports.bottomPanelGap = exports.bottomInnerPdVert = exports.bottomInnerPdSide = exports.borderRadius = exports.borderColorLT = exports.borderColor = exports.axisFontSize = exports.axisFontColor = exports.aiAssistantPanelWidth = exports.activeColorLT = exports.activeColorHover = exports.activeColor = exports.actionPanelWidth = exports.actionPanelHeight = void 0;
8
+ exports.primaryBtnActBgd = exports.panelToggleMarginRight = exports.panelToggleBottomPadding = exports.panelToggleBorderColor = exports.panelTabWidth = exports.panelTabColor = exports.panelHeaderIconHover = exports.panelHeaderIconActive = exports.panelHeaderIcon = exports.panelHeaderHeight = exports.panelHeaderBorderRadius = exports.panelContentBackground = exports.panelBoxShadow = exports.panelBorderRadius = exports.panelBorderLT = exports.panelBorderColor = exports.panelBorder = exports.panelBackgroundLT = exports.panelBackgroundHover = exports.panelBackground = exports.notificationPanelWidth = exports.notificationPanelItemWidth = exports.notificationPanelItemHeight = exports.notificationColors = exports.negativeBtnColor = exports.negativeBtnBorder = exports.negativeBtnBgdHover = exports.negativeBtnBgd = exports.negativeBtnActColor = exports.negativeBtnActBgd = exports.modalTitleZ = exports.modalTitleFontSizeSmaller = exports.modalTitleFontSize = exports.modalTitleColor = exports.modalScrollBar = exports.modalPortableLateralPadding = exports.modalPadding = exports.modalOverlayBgd = exports.modalOverLayZ = exports.modalLateralPadding = exports.modalImagePlaceHolder = exports.modalFooterZ = exports.modalFooterBgd = exports.modalDropdownBackground = exports.modalDialogColor = exports.modalDialogBgd = exports.modalContentZ = exports.modalButtonZ = exports.mapPanelHeaderBackgroundColor = exports.mapPanelBackgroundColor = exports.mapControlTop = exports.logoColor = exports.linkBtnColor = exports.linkBtnBorder = exports.linkBtnBgd = exports.linkBtnActColor = exports.linkBtnActBgdHover = exports.linkBtnActBgd = exports.lineHeight = exports.layerTypeIconSizeSM = exports.layerTypeIconSizeL = exports.layerTypeIconPdL = exports.layerPanelToggleOptionColorActive = exports.layerPanelToggleOptionColor = exports.layerPanelHeaderHeight = exports.layerConfiguratorPadding = exports.layerConfiguratorMargin = exports.layerConfiguratorBorderColor = exports.layerConfiguratorBorder = exports.layerConfigGroupPaddingLeft = exports.layerConfigGroupMarginBottom = exports.layerConfigGroupLabelPadding = exports.layerConfigGroupLabelMargin = exports.layerConfigGroupLabelLabelMargin = exports.layerConfigGroupLabelLabelFontSize = exports.layerConfigGroupLabelBorderLeft = exports.layerConfigGroupColor = exports.labelHoverColor = exports.labelColorLT = exports.labelColor = exports.inputPlaceholderFontWeight = exports.inputPlaceholderColorLT = exports.inputPlaceholderColor = exports.inputPaddingTiny = exports.inputPaddingSmall = exports.inputPadding = exports.inputFontWeight = exports.inputFontSizeSmall = exports.inputFontSize = exports.inputColor = exports.inputBoxShadowActiveLT = exports.inputBoxShadowActive = exports.inputBoxShadow = exports.inputBoxHeightTiny = exports.inputBoxHeightSmall = exports.inputBoxHeight = exports.inputBorderRadius = exports.inputBorderHoverColorLT = exports.inputBorderHoverColor = exports.inputBorderColor = void 0;
9
+ exports.sliderMarginBottom = exports.sliderInputWidth = exports.sliderInputPadding = exports.sliderInputHeight = exports.sliderInputFontSize = exports.sliderInactiveBorderColor = exports.sliderHandleWidth = exports.sliderHandleTextColor = exports.sliderHandleShadow = exports.sliderHandleHoverColor = exports.sliderHandleHeight = exports.sliderHandleColor = exports.sliderHandleAfterContent = exports.sliderBorderRadius = exports.sliderBarRadius = exports.sliderBarHoverColor = exports.sliderBarHeight = exports.sliderBarColor = exports.sliderBarBgd = exports.sidepanelDividerMargin = exports.sidepanelDividerHeight = exports.sidepanelDividerBorder = exports.sidePanelTitleLineHeight = exports.sidePanelTitleFontsize = exports.sidePanelScrollBarWidth = exports.sidePanelScrollBarHeight = exports.sidePanelInnerPadding = exports.sidePanelHeaderBorder = exports.sidePanelHeaderBg = exports.sidePanelBorderColor = exports.sidePanelBorder = exports.sidePanelBg = exports.sideBarCloseBtnColor = exports.sideBarCloseBtnBgdHover = exports.sideBarCloseBtnBgd = exports.selectionBtnColor = exports.selectionBtnBorderColor = exports.selectionBtnBorderActColor = exports.selectionBtnBorder = exports.selectionBtnBgdHover = exports.selectionBtnBgd = exports.selectionBtnActColor = exports.selectionBtnActBgd = exports.selectFontWeightBold = exports.selectFontWeight = exports.selectFontSize = exports.selectColorPlaceHolderLT = exports.selectColorPlaceHolder = exports.selectColorLT = exports.selectColor = exports.selectBorderRadius = exports.selectBorderColorLT = exports.selectBorderColor = exports.selectBorder = exports.selectBackgroundLT = exports.selectBackgroundHoverLT = exports.selectBackgroundHover = exports.selectBackground = exports.selectActiveBorderColor = exports.secondarySwitchTrackBgd = exports.secondarySwitchBtnBgd = exports.secondaryInputColor = exports.secondaryInputBorderColor = exports.secondaryInputBorderActiveColor = exports.secondaryInputBgdHover = exports.secondaryInputBgdActive = exports.secondaryInputBgd = exports.secondaryBtnColor = exports.secondaryBtnBorder = exports.secondaryBtnBgdHover = exports.secondaryBtnBgd = exports.secondaryBtnActColor = exports.secondaryBtnActBgd = exports.scrollbarThumbColorLT = exports.scrollbarThumbColorHoverLT = exports.rightPanelMarginTop = exports.rightPanelMarginRight = exports.rangePlotMarginLarge = exports.rangePlotMargin = exports.rangePlotHLargePalm = exports.rangePlotHLarge = exports.rangePlotH = exports.rangePlotContainerHLargePalm = exports.rangePlotContainerHLarge = exports.rangePlotContainerH = exports.rangeBrushBgd = exports.radioRadius = exports.radioButtonRadius = exports.radioButtonBgdColor = exports.radioBorderRadius = exports.radioBorderColor = exports.primaryBtnRadius = exports.primaryBtnFontSizeSmall = exports.primaryBtnFontSizeLarge = exports.primaryBtnFontSizeDefault = exports.primaryBtnColor = exports.primaryBtnBorder = exports.primaryBtnBgdHover = exports.primaryBtnBgd = exports.primaryBtnActColor = void 0;
10
+ exports.transitionSlow = exports.transitionFast = exports.transition = exports.tooltipFontSize = exports.tooltipColorLT = exports.tooltipColor = exports.tooltipBoxShadow = exports.tooltipBgLT = exports.tooltipBg = exports.toolbarItemIconHover = exports.toolbarItemBorderRaddius = exports.toolbarItemBorderHover = exports.toolbarItemBgdHover = exports.titleTextColor = exports.titleColorLT = exports.timeTitleFontSize = exports.themeLT = exports.themeBS = exports.theme = exports.textTruncate = exports.textColorLT = exports.textColorHlLT = exports.textColorHl = exports.textColor = exports.switchWidth = exports.switchTrackBorderRadius = exports.switchTrackBgdActive = exports.switchTrackBgd = exports.switchLabelMargin = exports.switchHeight = exports.switchBtnWidth = exports.switchBtnHeight = exports.switchBtnBoxShadow = exports.switchBtnBorderRadius = exports.switchBtnBgdActive = exports.switchBtnBgd = exports.subtextColorLT = exports.subtextColorActive = exports.subtextColor = exports.styledConfigGroupHeaderBorder = exports.sliderMarginTopIsTime = exports.sliderMarginTop = void 0;
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
13
+ var _styledComponents = require("styled-components");
14
+ var _constants = require("@kepler.gl/constants");
15
+ var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27, _templateObject28, _templateObject29, _templateObject30, _templateObject31, _templateObject32, _templateObject33, _templateObject34; // SPDX-License-Identifier: MIT
16
+ // Copyright contributors to the kepler.gl project
17
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
18
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
19
+ var transition = exports.transition = 'all .4s ease';
20
+ var transitionFast = exports.transitionFast = 'all .2s ease';
21
+ var transitionSlow = exports.transitionSlow = 'all .8s ease';
22
+ var boxShadow = exports.boxShadow = '0 1px 2px 0 rgba(0,0,0,0.10)';
23
+ var boxSizing = exports.boxSizing = 'border-box';
24
+ var borderRadius = exports.borderRadius = '1px';
25
+ var borderColor = exports.borderColor = '#3A414C';
26
+ var borderColorLT = exports.borderColorLT = '#F1F1F1';
27
+
28
+ // TEXT
29
+ var fontFamily = exports.fontFamily = "ff-clan-web-pro, 'Helvetica Neue', Helvetica, sans-serif";
30
+ var fontWeight = exports.fontWeight = 400;
31
+ var fontSize = exports.fontSize = '0.875em';
32
+ var lineHeight = exports.lineHeight = 1.71429;
33
+ var labelColor = exports.labelColor = '#6A7485';
34
+ var labelHoverColor = exports.labelHoverColor = '#C6C6C6';
35
+ var labelColorLT = exports.labelColorLT = '#6A7485';
36
+ var textColor = exports.textColor = '#A0A7B4';
37
+ var textColorLT = exports.textColorLT = '#3A414C';
38
+ var dataTableTextColor = exports.dataTableTextColor = textColorLT;
39
+ var titleColorLT = exports.titleColorLT = '#29323C';
40
+ var subtextColor = exports.subtextColor = '#6A7485';
41
+ var subtextColorLT = exports.subtextColorLT = '#A0A7B4';
42
+ var subtextColorActive = exports.subtextColorActive = '#FFFFFF';
43
+ var fontWhiteColor = exports.fontWhiteColor = '#54638c';
44
+ var panelToggleBorderColor = exports.panelToggleBorderColor = '#FFFFFF';
45
+ var panelTabWidth = exports.panelTabWidth = '30px';
46
+ var titleTextColor = exports.titleTextColor = '#FFFFFF';
47
+ var textColorHl = exports.textColorHl = '#F0F0F0';
48
+ var textColorHlLT = exports.textColorHlLT = '#000000';
49
+ var activeColor = exports.activeColor = '#1FBAD6';
50
+ var activeColorLT = exports.activeColorLT = '#2473BD';
51
+ var activeColorHover = exports.activeColorHover = '#108188';
52
+ var errorColor = exports.errorColor = '#F9042C';
53
+ var logoColor = exports.logoColor = activeColor;
54
+
55
+ // Button
56
+ var btnFontFamily = exports.btnFontFamily = fontFamily;
57
+ var primaryBtnBgd = exports.primaryBtnBgd = '#0F9668';
58
+ var primaryBtnActBgd = exports.primaryBtnActBgd = '#13B17B';
59
+ var primaryBtnColor = exports.primaryBtnColor = '#FFFFFF';
60
+ var primaryBtnActColor = exports.primaryBtnActColor = '#FFFFFF';
61
+ var primaryBtnBgdHover = exports.primaryBtnBgdHover = '#13B17B';
62
+ var primaryBtnRadius = exports.primaryBtnRadius = '2px';
63
+ var primaryBtnFontSizeDefault = exports.primaryBtnFontSizeDefault = '11px';
64
+ var primaryBtnFontSizeSmall = exports.primaryBtnFontSizeSmall = '10px';
65
+ var primaryBtnFontSizeLarge = exports.primaryBtnFontSizeLarge = '14px';
66
+ var primaryBtnBorder = exports.primaryBtnBorder = '0';
67
+ var secondaryBtnBgd = exports.secondaryBtnBgd = '#6A7485';
68
+ var secondaryBtnActBgd = exports.secondaryBtnActBgd = '#A0A7B4';
69
+ var secondaryBtnColor = exports.secondaryBtnColor = '#FFFFFF';
70
+ var secondaryBtnActColor = exports.secondaryBtnActColor = '#FFFFFF';
71
+ var secondaryBtnBgdHover = exports.secondaryBtnBgdHover = '#A0A7B4';
72
+ var secondaryBtnBorder = exports.secondaryBtnBorder = '0';
73
+ var ctaBtnBgd = exports.ctaBtnBgd = '#0F9668';
74
+ var ctaBtnBgdHover = exports.ctaBtnBgdHover = '#13B17B';
75
+ var ctaBtnActBgd = exports.ctaBtnActBgd = '#13B17B';
76
+ var ctaBtnColor = exports.ctaBtnColor = '#FFFFFF';
77
+ var ctaBtnActColor = exports.ctaBtnActColor = '#FFFFFF';
78
+ var linkBtnBgd = exports.linkBtnBgd = 'transparent';
79
+ var linkBtnActBgd = exports.linkBtnActBgd = linkBtnBgd;
80
+ var linkBtnColor = exports.linkBtnColor = '#A0A7B4';
81
+ var linkBtnActColor = exports.linkBtnActColor = '#F1F1F1';
82
+ var linkBtnActBgdHover = exports.linkBtnActBgdHover = linkBtnBgd;
83
+ var linkBtnBorder = exports.linkBtnBorder = '0';
84
+ var negativeBtnBgd = exports.negativeBtnBgd = errorColor;
85
+ var negativeBtnActBgd = exports.negativeBtnActBgd = '#FF193E';
86
+ var negativeBtnBgdHover = exports.negativeBtnBgdHover = '#FF193E';
87
+ var negativeBtnBorder = exports.negativeBtnBorder = '0';
88
+ var negativeBtnColor = exports.negativeBtnColor = '#FFFFFF';
89
+ var negativeBtnActColor = exports.negativeBtnActColor = '#FFFFFF';
90
+ var floatingBtnBgd = exports.floatingBtnBgd = '#29323C';
91
+ var floatingBtnActBgd = exports.floatingBtnActBgd = '#3A4552';
92
+ var floatingBtnBgdHover = exports.floatingBtnBgdHover = '#3A4552';
93
+ var floatingBtnBorder = exports.floatingBtnBorder = '0';
94
+ var floatingBtnBorderHover = exports.floatingBtnBorderHover = '0';
95
+ var floatingBtnColor = exports.floatingBtnColor = subtextColor;
96
+ var floatingBtnActColor = exports.floatingBtnActColor = subtextColorActive;
97
+ var selectionBtnBgd = exports.selectionBtnBgd = 'transparent';
98
+ var selectionBtnActBgd = exports.selectionBtnActBgd = 'transparent';
99
+ var selectionBtnColor = exports.selectionBtnColor = '#D3D8E0';
100
+ var selectionBtnActColor = exports.selectionBtnActColor = '#0F9668';
101
+ var selectionBtnBgdHover = exports.selectionBtnBgdHover = '#0F9668';
102
+ var selectionBtnBorder = exports.selectionBtnBorder = '1';
103
+ var selectionBtnBorderColor = exports.selectionBtnBorderColor = '#D3D8E0';
104
+ var selectionBtnBorderActColor = exports.selectionBtnBorderActColor = '#0F9668';
105
+ // Scrollbar
106
+ var scrollbarThumbColorLT = exports.scrollbarThumbColorLT = labelColorLT;
107
+ var scrollbarThumbColorHoverLT = exports.scrollbarThumbColorHoverLT = textColorHlLT;
108
+ // Input
109
+ var inputBoxHeight = exports.inputBoxHeight = '34px';
110
+ var inputBoxHeightSmall = exports.inputBoxHeightSmall = '24px';
111
+ var inputBoxHeightTiny = exports.inputBoxHeightTiny = '18px';
112
+ var inputPadding = exports.inputPadding = '4px 10px';
113
+ var inputPaddingSmall = exports.inputPaddingSmall = '4px 6px';
114
+ var inputPaddingTiny = exports.inputPaddingTiny = '2px 4px';
115
+ var inputFontSize = exports.inputFontSize = '11px';
116
+ var inputFontSizeSmall = exports.inputFontSizeSmall = '10px';
117
+ var inputFontWeight = exports.inputFontWeight = 500;
118
+ var inputBgd = exports.inputBgd = '#29323C';
119
+ var inputBgdHover = exports.inputBgdHover = '#3A414C';
120
+ var inputBgdActive = exports.inputBgdActive = '#3A414C';
121
+ var inputBgdActiveLT = exports.inputBgdActiveLT = '#FFFFFF';
122
+ var inputBorderColor = exports.inputBorderColor = '#29323C';
123
+ var inputBorderHoverColor = exports.inputBorderHoverColor = '#3A414C';
124
+ var inputBorderHoverColorLT = exports.inputBorderHoverColorLT = subtextColor;
125
+ var inputBorderActiveColor = exports.inputBorderActiveColor = '#3A414C';
126
+ var inputBorderActiveColorLT = exports.inputBorderActiveColorLT = textColorLT;
127
+ var inputColor = exports.inputColor = '#A0A7B4';
128
+ var inputBorderRadius = exports.inputBorderRadius = '1px';
129
+ var inputPlaceholderColor = exports.inputPlaceholderColor = '#6A7485';
130
+ var inputPlaceholderColorLT = exports.inputPlaceholderColorLT = subtextColorLT;
131
+ var inputPlaceholderFontWeight = exports.inputPlaceholderFontWeight = 400;
132
+ var inputBoxShadow = exports.inputBoxShadow = 'none';
133
+ var inputBoxShadowActive = exports.inputBoxShadowActive = 'none';
134
+ var inputBoxShadowActiveLT = exports.inputBoxShadowActiveLT = 'none';
135
+ var secondaryInputBgd = exports.secondaryInputBgd = '#242730';
136
+ var secondaryInputBgdHover = exports.secondaryInputBgdHover = '#3A414C';
137
+ var secondaryInputBgdActive = exports.secondaryInputBgdActive = '#3A414C';
138
+ var secondaryInputColor = exports.secondaryInputColor = '#A0A7B4';
139
+ var secondaryInputBorderColor = exports.secondaryInputBorderColor = '#242730';
140
+ var secondaryInputBorderActiveColor = exports.secondaryInputBorderActiveColor = '#D3D8E0';
141
+ var dropdownSelectHeight = exports.dropdownSelectHeight = 30;
142
+
143
+ // Select
144
+ var selectColor = exports.selectColor = inputColor;
145
+ var selectColorLT = exports.selectColorLT = titleColorLT;
146
+ var selectActiveBorderColor = exports.selectActiveBorderColor = '#D3D8E0';
147
+ var selectFontSize = exports.selectFontSize = '11px';
148
+ var selectFontWeight = exports.selectFontWeight = '400';
149
+ var selectFontWeightBold = exports.selectFontWeightBold = '500';
150
+ var selectColorPlaceHolder = exports.selectColorPlaceHolder = '#6A7485';
151
+ var selectColorPlaceHolderLT = exports.selectColorPlaceHolderLT = selectColorLT;
152
+ var selectBackground = exports.selectBackground = inputBgd;
153
+ var selectBackgroundHover = exports.selectBackgroundHover = inputBgdHover;
154
+ var selectBackgroundLT = exports.selectBackgroundLT = '#FFFFFF';
155
+ var selectBackgroundHoverLT = exports.selectBackgroundHoverLT = '#F8F8F9';
156
+ var selectBorderColor = exports.selectBorderColor = '#D3D8E0';
157
+ var selectBorderColorLT = exports.selectBorderColorLT = '#D3D8E0';
158
+ var selectBorderRadius = exports.selectBorderRadius = '1px';
159
+ var selectBorder = exports.selectBorder = 0;
160
+ var panelTabColor = exports.panelTabColor = subtextColor;
161
+ var dropdownListHighlightBg = exports.dropdownListHighlightBg = '#6A7485';
162
+ var dropdownListHighlightBgLT = exports.dropdownListHighlightBgLT = '#F8F8F9';
163
+ var dropdownListShadow = exports.dropdownListShadow = '0 6px 12px 0 rgba(0,0,0,0.16)';
164
+ var dropdownListBgd = exports.dropdownListBgd = '#29323C';
165
+ var toolbarItemBgdHover = exports.toolbarItemBgdHover = '#3A4552';
166
+ var toolbarItemIconHover = exports.toolbarItemIconHover = textColorHl;
167
+ var toolbarItemBorderHover = exports.toolbarItemBorderHover = 'transparent';
168
+ var toolbarItemBorderRaddius = exports.toolbarItemBorderRaddius = '0px';
169
+ var dropdownListBgdLT = exports.dropdownListBgdLT = '#FFFFFF';
170
+ var dropdownListBorderTop = exports.dropdownListBorderTop = '#242730';
171
+ var dropdownListBorderTopLT = exports.dropdownListBorderTopLT = '#D3D8E0';
172
+ var dropdownListLineHeight = exports.dropdownListLineHeight = 20;
173
+ var dropdownWrapperZ = exports.dropdownWrapperZ = 100;
174
+ var dropdownWapperMargin = exports.dropdownWapperMargin = 4;
175
+ var dndOverBackgroundColor = exports.dndOverBackgroundColor = 'rgba(128, 128, 128, 0.2)';
176
+
177
+ // Switch
178
+ var switchWidth = exports.switchWidth = 24;
179
+ var switchHeight = exports.switchHeight = 12;
180
+ var switchLabelMargin = exports.switchLabelMargin = 12;
181
+ var switchTrackBgd = exports.switchTrackBgd = '#29323C';
182
+ var switchTrackBgdActive = exports.switchTrackBgdActive = activeColor;
183
+ var switchTrackBorderRadius = exports.switchTrackBorderRadius = '1px';
184
+ var switchBtnBgd = exports.switchBtnBgd = '#6A7485';
185
+ var switchBtnBgdActive = exports.switchBtnBgdActive = '#D3D8E0';
186
+ var switchBtnBoxShadow = exports.switchBtnBoxShadow = '0 2px 4px 0 rgba(0,0,0,0.40)';
187
+ var switchBtnBorderRadius = exports.switchBtnBorderRadius = '0';
188
+ var switchBtnWidth = exports.switchBtnWidth = 12;
189
+ var switchBtnHeight = exports.switchBtnHeight = 12;
190
+ var secondarySwitchTrackBgd = exports.secondarySwitchTrackBgd = '#242730';
191
+ var secondarySwitchBtnBgd = exports.secondarySwitchBtnBgd = '#3A414C';
192
+
193
+ // Checkbox
194
+ var checkboxWidth = exports.checkboxWidth = 16;
195
+ var checkboxHeight = exports.checkboxHeight = 16;
196
+ var checkboxMargin = exports.checkboxMargin = 12;
197
+ var checkboxBorderColor = exports.checkboxBorderColor = selectBorderColor;
198
+ var checkboxBorderRadius = exports.checkboxBorderRadius = '2px';
199
+ var checkboxBorderColorLT = exports.checkboxBorderColorLT = selectBorderColorLT;
200
+ var checkboxBoxBgd = exports.checkboxBoxBgd = 'white';
201
+ var checkboxBoxBgdChecked = exports.checkboxBoxBgdChecked = primaryBtnBgd;
202
+
203
+ // Radio
204
+ var radioRadius = exports.radioRadius = 8;
205
+ var radioBorderRadius = exports.radioBorderRadius = 100;
206
+ var radioBorderColor = exports.radioBorderColor = 'transparent';
207
+ var radioButtonRadius = exports.radioButtonRadius = 4;
208
+ var radioButtonBgdColor = exports.radioButtonBgdColor = switchBtnBgdActive;
209
+
210
+ // Side Panel
211
+ var sidePanelHeaderBg = exports.sidePanelHeaderBg = '#29323C';
212
+ var sidePanelHeaderBorder = exports.sidePanelHeaderBorder = 'transparent';
213
+ var layerConfigGroupMarginBottom = exports.layerConfigGroupMarginBottom = 12;
214
+ var layerConfigGroupPaddingLeft = exports.layerConfigGroupPaddingLeft = 18;
215
+ var sidePanelInnerPadding = exports.sidePanelInnerPadding = 16;
216
+ var sidePanelBorder = exports.sidePanelBorder = 0;
217
+ var sidePanelBorderColor = exports.sidePanelBorderColor = 'transparent';
218
+ var sidePanelBg = exports.sidePanelBg = '#242730';
219
+ var sidePanelScrollBarWidth = exports.sidePanelScrollBarWidth = 10;
220
+ var sidePanelScrollBarHeight = exports.sidePanelScrollBarHeight = 10;
221
+ var sideBarCloseBtnBgd = exports.sideBarCloseBtnBgd = secondaryBtnBgd;
222
+ var sideBarCloseBtnColor = exports.sideBarCloseBtnColor = '#29323C';
223
+ var sideBarCloseBtnBgdHover = exports.sideBarCloseBtnBgdHover = secondaryBtnActBgd;
224
+ var sidePanelTitleFontsize = exports.sidePanelTitleFontsize = '20px';
225
+ var sidePanelTitleLineHeight = exports.sidePanelTitleLineHeight = '1.71429';
226
+ var panelBackground = exports.panelBackground = '#29323C';
227
+ var panelContentBackground = exports.panelContentBackground = '#292E36';
228
+ var panelBackgroundHover = exports.panelBackgroundHover = '#3A4552';
229
+ var panelHeaderBorderRadius = exports.panelHeaderBorderRadius = '0px';
230
+ var chickletBgd = exports.chickletBgd = '#3A4552';
231
+ var chickletBgdLT = exports.chickletBgdLT = '#D3D8E0';
232
+ var panelHeaderIcon = exports.panelHeaderIcon = '#6A7485';
233
+ var panelHeaderIconActive = exports.panelHeaderIconActive = '#A0A7B4';
234
+ var panelHeaderIconHover = exports.panelHeaderIconHover = textColorHl;
235
+ var panelHeaderHeight = exports.panelHeaderHeight = 48;
236
+ var layerPanelHeaderHeight = exports.layerPanelHeaderHeight = 48;
237
+ var panelBoxShadow = exports.panelBoxShadow = '0 6px 12px 0 rgba(0,0,0,0.16)';
238
+ var panelBorderRadius = exports.panelBorderRadius = '2px';
239
+ var panelBackgroundLT = exports.panelBackgroundLT = '#F8F8F9';
240
+ var panelToggleMarginRight = exports.panelToggleMarginRight = 12;
241
+ var panelToggleBottomPadding = exports.panelToggleBottomPadding = 6;
242
+ var panelBorderColor = exports.panelBorderColor = '#3A414C';
243
+ var panelBorder = exports.panelBorder = "1px solid ".concat(borderColor);
244
+ var panelBorderLT = exports.panelBorderLT = "1px solid ".concat(borderColorLT);
245
+ var mapPanelBackgroundColor = exports.mapPanelBackgroundColor = '#242730';
246
+ var mapPanelHeaderBackgroundColor = exports.mapPanelHeaderBackgroundColor = '#29323C';
247
+ var tooltipBg = exports.tooltipBg = '#3A414C';
248
+ var tooltipBgLT = exports.tooltipBgLT = '#1869B5';
249
+ var tooltipColor = exports.tooltipColor = textColorHl;
250
+ var tooltipColorLT = exports.tooltipColorLT = '#FFFFFF';
251
+ var tooltipBoxShadow = exports.tooltipBoxShadow = boxShadow;
252
+ var tooltipFontSize = exports.tooltipFontSize = '10px';
253
+ var layerTypeIconSizeL = exports.layerTypeIconSizeL = 50;
254
+ var layerTypeIconPdL = exports.layerTypeIconPdL = 12;
255
+ var layerTypeIconSizeSM = exports.layerTypeIconSizeSM = 28;
256
+ var layerPanelToggleOptionColor = exports.layerPanelToggleOptionColor = '#6A7485';
257
+ var layerPanelToggleOptionColorActive = exports.layerPanelToggleOptionColorActive = '#F0F0F0';
258
+
259
+ // Sidepanel divider
260
+ var sidepanelDividerBorder = exports.sidepanelDividerBorder = '1px';
261
+ var sidepanelDividerMargin = exports.sidepanelDividerMargin = 12;
262
+ var sidepanelDividerHeight = exports.sidepanelDividerHeight = 12;
263
+
264
+ // Bottom Panel
265
+ var bottomInnerPdSide = exports.bottomInnerPdSide = 32;
266
+ var bottomInnerPdVert = exports.bottomInnerPdVert = 6;
267
+ var bottomPanelGap = exports.bottomPanelGap = 20;
268
+ var bottomPanelGapPalm = exports.bottomPanelGapPalm = 20;
269
+ var bottomWidgetPaddingTop = exports.bottomWidgetPaddingTop = 20;
270
+ var bottomWidgetPaddingRight = exports.bottomWidgetPaddingRight = 20;
271
+ var bottomWidgetPaddingBottom = exports.bottomWidgetPaddingBottom = 30;
272
+ var bottomWidgetPaddingLeft = exports.bottomWidgetPaddingLeft = 20;
273
+ var bottomWidgetBgd = exports.bottomWidgetBgd = '#29323C';
274
+ // Modal
275
+ var modalTitleColor = exports.modalTitleColor = '#3A414C';
276
+ var modalTitleFontSize = exports.modalTitleFontSize = '24px';
277
+ var modalTitleFontSizeSmaller = exports.modalTitleFontSizeSmaller = '18px';
278
+ var modalFooterBgd = exports.modalFooterBgd = '#F8F8F9';
279
+ var modalImagePlaceHolder = exports.modalImagePlaceHolder = '#DDDFE3';
280
+ var modalPadding = exports.modalPadding = '10px 0';
281
+ var modalLateralPadding = exports.modalLateralPadding = '72px';
282
+ var modalPortableLateralPadding = exports.modalPortableLateralPadding = '36px';
283
+ var modalOverLayZ = exports.modalOverLayZ = 1001;
284
+ var modalOverlayBgd = exports.modalOverlayBgd = 'rgba(0, 0, 0, 0.5)';
285
+ var modalContentZ = exports.modalContentZ = 10002;
286
+ var modalFooterZ = exports.modalFooterZ = 10001;
287
+ var modalTitleZ = exports.modalTitleZ = 10003;
288
+ var modalButtonZ = exports.modalButtonZ = 10005;
289
+ var modalDropdownBackground = exports.modalDropdownBackground = '#FFFFFF';
290
+
291
+ // Modal Dialog (Dark)
292
+ var modalDialogBgd = exports.modalDialogBgd = '#3A414C';
293
+ var modalDialogColor = exports.modalDialogColor = textColorHl;
294
+
295
+ // Slider
296
+ var sliderBarColor = exports.sliderBarColor = '#6A7485';
297
+ var sliderBarBgd = exports.sliderBarBgd = '#3A414C';
298
+ var sliderBarHoverColor = exports.sliderBarHoverColor = '#D3D8E0';
299
+ var sliderBarRadius = exports.sliderBarRadius = '1px';
300
+ var sliderBarHeight = exports.sliderBarHeight = 4;
301
+ var sliderHandleHeight = exports.sliderHandleHeight = 12;
302
+ var sliderHandleWidth = exports.sliderHandleWidth = 12;
303
+ var sliderHandleColor = exports.sliderHandleColor = '#D3D8E0';
304
+ var sliderHandleTextColor = exports.sliderHandleTextColor = sliderHandleColor;
305
+ var sliderInactiveBorderColor = exports.sliderInactiveBorderColor = sliderHandleColor;
306
+ var sliderBorderRadius = exports.sliderBorderRadius = '0';
307
+ var sliderHandleHoverColor = exports.sliderHandleHoverColor = '#FFFFFF';
308
+ var sliderHandleAfterContent = exports.sliderHandleAfterContent = '';
309
+ var sliderHandleShadow = exports.sliderHandleShadow = '0 2px 4px 0 rgba(0,0,0,0.40)';
310
+ var sliderInputHeight = exports.sliderInputHeight = 24;
311
+ var sliderInputWidth = exports.sliderInputWidth = 56;
312
+ var sliderInputFontSize = exports.sliderInputFontSize = '10px';
313
+ var sliderInputPadding = exports.sliderInputPadding = '4px 6px';
314
+ var sliderMarginTopIsTime = exports.sliderMarginTopIsTime = -12;
315
+ var sliderMarginTop = exports.sliderMarginTop = 12;
316
+ var sliderMarginBottom = exports.sliderMarginBottom = 12;
317
+
318
+ // Geocoder
319
+ var geocoderWidth = exports.geocoderWidth = 360;
320
+ var geocoderTop = exports.geocoderTop = 20;
321
+ var geocoderRight = exports.geocoderRight = 12;
322
+ var geocoderInputHeight = exports.geocoderInputHeight = 36;
323
+
324
+ // Map Control
325
+ var mapControlTop = exports.mapControlTop = 52;
326
+
327
+ // Plot
328
+ var rangeBrushBgd = exports.rangeBrushBgd = '#3A414C';
329
+ var histogramFillInRange = exports.histogramFillInRange = activeColor;
330
+ var histogramFillOutRange = exports.histogramFillOutRange = sliderBarColor;
331
+ var histogramOverlayColor = exports.histogramOverlayColor = '#999999';
332
+ var histogramBreakLineColor = exports.histogramBreakLineColor = '#505b7c';
333
+ var axisFontSize = exports.axisFontSize = '10px';
334
+ var axisFontColor = exports.axisFontColor = textColor;
335
+ var timeTitleFontSize = exports.timeTitleFontSize = '10px';
336
+ var rangePlotMargin = exports.rangePlotMargin = {
337
+ top: 12,
338
+ bottom: 0,
339
+ left: 0,
340
+ right: 0
341
+ };
342
+ var rangePlotMarginLarge = exports.rangePlotMarginLarge = {
343
+ top: 18,
344
+ bottom: 0,
345
+ left: 0,
346
+ right: 0
347
+ };
348
+ var rangePlotH = exports.rangePlotH = 62;
349
+ var rangePlotContainerH = exports.rangePlotContainerH = 78;
350
+ var rangePlotHLarge = exports.rangePlotHLarge = 102;
351
+ var rangePlotHLargePalm = exports.rangePlotHLargePalm = 102;
352
+ var rangePlotContainerHLarge = exports.rangePlotContainerHLarge = 120;
353
+ var rangePlotContainerHLargePalm = exports.rangePlotContainerHLargePalm = 120;
354
+
355
+ // Notification
356
+ var notificationColors = exports.notificationColors = {
357
+ info: '#276ef1',
358
+ error: '#f25138',
359
+ success: '#47b275',
360
+ warning: '#ffc043'
361
+ };
362
+ var notificationPanelWidth = exports.notificationPanelWidth = 240;
363
+ var notificationPanelItemWidth = exports.notificationPanelItemWidth = notificationPanelWidth - 60;
364
+ var notificationPanelItemHeight = exports.notificationPanelItemHeight = 60;
365
+
366
+ // Data Table
367
+ var headerRowHeight = 70;
368
+ var headerStatsControlHeight = 32;
369
+ var headerRowWStatsHeight = 364;
370
+ var rowHeight = 32;
371
+ var headerPaddingTop = 6;
372
+ var headerPaddingBottom = 8;
373
+ var cellPaddingSide = 10;
374
+ var edgeCellPaddingSide = 10;
375
+ var cellFontSize = 10;
376
+ var gridPaddingSide = 24;
377
+ var headerCellBackground = '#FFFFFF';
378
+ var headerCellBorderColor = '#E0E0E0';
379
+ var headerCellStatsBackground = '#F8FAFF';
380
+ var headerCellStatsControlBackground = '#EAF0FF';
381
+ var headerCellIconColor = '#666666';
382
+ var cellBorderColor = '#E0E0E0';
383
+ var evenRowBackground = '#FFFFFF';
384
+ var oddRowBackground = '#F7F7F7';
385
+ var optionButtonColor = '#6A7485';
386
+ var pinnedGridBorderColor = '#E0E0E0';
387
+
388
+ // Floating Time display
389
+ var timeDisplayBorderRadius = 32;
390
+ var timeDisplayHeight = 64;
391
+ var timeDisplayMinWidth = 176;
392
+ var timeDisplayOpacity = 0.8;
393
+ var timeDisplayPadding = '0 24px';
394
+
395
+ // Export map modal
396
+ var exportIntraSectionMargin = '8';
397
+
398
+ // progress bar
399
+ var progressBarColor = primaryBtnBgd;
400
+ var progressBarTrackColor = '#E8E8E8';
401
+ // Action Panel
402
+ var actionPanelWidth = exports.actionPanelWidth = 110;
403
+ var actionPanelHeight = exports.actionPanelHeight = 32;
404
+
405
+ // Styled Token
406
+ var fieldTokenRightMargin = exports.fieldTokenRightMargin = 4;
407
+ var fieldTokenHeight = exports.fieldTokenHeight = 20;
408
+ var fieldTokenWidth = exports.fieldTokenWidth = 40;
409
+ var textTruncate = exports.textTruncate = {
410
+ maxWidth: '100%',
411
+ overflow: 'hidden',
412
+ textOverflow: 'ellipsis',
413
+ whiteSpace: 'nowrap',
414
+ wordWrap: 'normal'
415
+ };
416
+
417
+ // layerConfigGroupLabel
418
+ var layerConfigGroupLabelBorderLeft = exports.layerConfigGroupLabelBorderLeft = '2px';
419
+ var layerConfigGroupLabelMargin = exports.layerConfigGroupLabelMargin = '-12px';
420
+ var layerConfigGroupLabelPadding = exports.layerConfigGroupLabelPadding = '10px';
421
+ var layerConfigGroupColor = exports.layerConfigGroupColor = 'transparent';
422
+
423
+ // layerConfigGroupLabel label
424
+ var layerConfigGroupLabelLabelMargin = exports.layerConfigGroupLabelLabelMargin = '0';
425
+ var layerConfigGroupLabelLabelFontSize = exports.layerConfigGroupLabelLabelFontSize = '12px';
426
+
427
+ // styledConfigGroupHeader
428
+ var styledConfigGroupHeaderBorder = exports.styledConfigGroupHeaderBorder = '2px';
429
+
430
+ // layerConfigurator
431
+
432
+ var layerConfiguratorBorder = exports.layerConfiguratorBorder = '0';
433
+ var layerConfiguratorBorderColor = exports.layerConfiguratorBorderColor = '';
434
+ var layerConfiguratorMargin = exports.layerConfiguratorMargin = '12px';
435
+ var layerConfiguratorPadding = exports.layerConfiguratorPadding = '12px 0 8px 0';
436
+ // This breakpoints are used for responsive design
437
+ var breakPoints = exports.breakPoints = {
438
+ palm: 588,
439
+ desk: 768
440
+ };
441
+ var aiAssistantPanelWidth = exports.aiAssistantPanelWidth = 415;
442
+
443
+ // effect manager
444
+ var effectConfiguratorMargin = exports.effectConfiguratorMargin = '18px 0 18px 0';
445
+ var effectConfiguratorPadding = exports.effectConfiguratorPadding = '0 0 0 18px';
446
+ var effectPanelWidth = exports.effectPanelWidth = 345;
447
+ var effectPanelHeight = exports.effectPanelHeight = 180;
448
+ var effectPanelPaddingSide = exports.effectPanelPaddingSide = 16;
449
+ var effectPanelPaddingTop = exports.effectPanelPaddingTop = 16;
450
+ var effectPanelAddEffectFontFamily = exports.effectPanelAddEffectFontFamily = btnFontFamily;
451
+ var effectTypeIconMarginSide = exports.effectTypeIconMarginSide = 6;
452
+ var effectTypeIconSizeL = exports.effectTypeIconSizeL = 56;
453
+ var effectTypeIconBgHoverColor = exports.effectTypeIconBgHoverColor = '#262D40';
454
+ var effectPanelTextMain = exports.effectPanelTextMain = '#F7F7F7';
455
+ var effectPanelTextSecondary1 = exports.effectPanelTextSecondary1 = '#A0A7B4';
456
+ var effectPanelTextSecondary2 = exports.effectPanelTextSecondary2 = '#6A7485';
457
+ var effectPanelTextSecondary3 = exports.effectPanelTextSecondary3 = '#5A6475';
458
+ var effectPanelElementColor = exports.effectPanelElementColor = inputBgd;
459
+ var effectPanelElementColorActive = exports.effectPanelElementColorActive = '#323843';
460
+ var effectPanelElementColorHovered = exports.effectPanelElementColorHovered = inputBgdHover;
461
+ var effectPanelElementColorSelected = exports.effectPanelElementColorSelected = '#454e5d';
462
+ var effectPanelElementColorSun = exports.effectPanelElementColorSun = '#F7B26B';
463
+
464
+ // right panel
465
+ var rightPanelMarginTop = exports.rightPanelMarginTop = 12;
466
+ var rightPanelMarginRight = exports.rightPanelMarginRight = 12;
467
+
468
+ // theme is passed to kepler.gl when it's mounted,
469
+ // it is used by styled-components to pass along to
470
+ // all child components
471
+
472
+ var input = (0, _styledComponents.css)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n ::placeholder {\n color: ", ";\n font-weight: ", ";\n }\n\n /* Disable Arrows on Number Inputs */\n ::-webkit-inner-spin-button,\n ::-webkit-outer-spin-button {\n -webkit-appearance: none;\n margin: 0;\n }\n\n align-items: center;\n background-color: ", ";\n border: 1px solid\n ", ";\n border-radius: 2px;\n caret-color: ", ";\n color: ", ";\n display: flex;\n font-size: ", ";\n font-weight: ", ";\n font-family: ", ";\n height: ", ";\n justify-content: space-between;\n outline: none;\n overflow: hidden;\n padding: ", ";\n text-overflow: ellipsis;\n transition: ", ";\n white-space: nowrap;\n width: 100%;\n word-wrap: normal;\n pointer-events: ", ";\n opacity: ", ";\n box-shadow: ", ";\n\n :hover {\n cursor: ", ";\n background-color: ", ";\n border-color: ", ";\n }\n\n :active,\n :focus,\n &.focus,\n &.active {\n background-color: ", ";\n border-color: ", ";\n box-shadow: ", ";\n }\n"])), function (props) {
473
+ return props.theme.inputPlaceholderColor;
474
+ }, function (props) {
475
+ return props.theme.inputPlaceholderFontWeight;
476
+ }, function (props) {
477
+ return props.theme.inputBgd;
478
+ }, function (props) {
479
+ return props.active ? props.theme.inputBorderActiveColor : props.error ? props.theme.errorColor : props.theme.inputBgd;
480
+ }, function (props) {
481
+ return props.theme.inputBorderActiveColor;
482
+ }, function (props) {
483
+ return props.theme.inputColor;
484
+ }, function (props) {
485
+ return ['small', 'tiny'].includes(props.size) ? props.theme.inputFontSizeSmall : props.theme.inputFontSize;
486
+ }, function (props) {
487
+ return props.theme.inputFontWeight;
488
+ }, function (props) {
489
+ return props.theme.fontFamily;
490
+ }, function (props) {
491
+ return props.size === 'small' ? props.theme.inputBoxHeightSmall : props.size === 'tiny' ? props.theme.inputBoxHeightTiny : props.theme.inputBoxHeight;
492
+ }, function (props) {
493
+ return props.size === 'small' ? props.theme.inputPaddingSmall : props.size === 'tiny' ? props.theme.inputPaddingTiny : props.theme.inputPadding;
494
+ }, function (props) {
495
+ return props.theme.transition;
496
+ }, function (props) {
497
+ return props.disabled ? 'none' : 'all';
498
+ }, function (props) {
499
+ return props.disabled ? 0.5 : 1;
500
+ }, function (props) {
501
+ return props.theme.inputBoxShadow;
502
+ }, function (props) {
503
+ return props.type === 'number' || props.type === 'text' ? 'text' : 'pointer';
504
+ }, function (props) {
505
+ return props.active ? props.theme.inputBgdActive : props.theme.inputBgdHover;
506
+ }, function (props) {
507
+ return props.active ? props.theme.inputBorderActiveColor : props.theme.inputBorderHoverColor;
508
+ }, function (props) {
509
+ return props.theme.inputBgdActive;
510
+ }, function (props) {
511
+ return props.theme.inputBorderActiveColor;
512
+ }, function (props) {
513
+ return props.theme.inputBoxShadowActive;
514
+ });
515
+ var inputLT = (0, _styledComponents.css)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n ::placeholder {\n color: ", ";\n font-weight: 400;\n }\n ", "\n\n background-color: ", ";\n border: 1px solid\n ", ";\n color: ", ";\n caret-color: ", ";\n\n :hover {\n background-color: ", ";\n cursor: ", ";\n border-color: ", ";\n }\n\n :active,\n :focus,\n &.focus,\n &.active {\n background-color: ", ";\n border-color: ", ";\n box-shadow: ", ";\n }\n"])), function (props) {
516
+ return props.theme.inputPlaceholderColorLT;
517
+ }, input, function (props) {
518
+ return props.theme.selectBackgroundLT;
519
+ }, function (props) {
520
+ return props.active ? props.theme.selectActiveBorderColor : props.error ? props.theme.errorColor : props.theme.selectBorderColorLT;
521
+ }, function (props) {
522
+ return props.theme.selectColorLT;
523
+ }, function (props) {
524
+ return props.theme.inputBorderActiveColorLT;
525
+ }, function (props) {
526
+ return props.theme.inputBgdActiveLT;
527
+ }, function (props) {
528
+ return ['number', 'text'].includes(props.type) ? 'text' : 'pointer';
529
+ }, function (props) {
530
+ return props.active ? props.theme.inputBorderActiveColorLT : props.theme.inputBorderHoverColorLT;
531
+ }, function (props) {
532
+ return props.theme.inputBgdActiveLT;
533
+ }, function (props) {
534
+ return props.theme.inputBorderActiveColorLT;
535
+ }, function (props) {
536
+ return props.theme.inputBoxShadowActiveLT;
537
+ });
538
+ var secondaryInput = (0, _styledComponents.css)(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n color: ", ";\n background-color: ", ";\n border: 1px solid\n ", ";\n\n :hover {\n cursor: pointer;\n background-color: ", ";\n border-color: ", ";\n }\n\n :active,\n :focus,\n &.focus,\n &.active {\n background-color: ", ";\n border-color: ", ";\n }\n"])), function (props) {
539
+ return props.theme.input;
540
+ }, function (props) {
541
+ return props.theme.secondaryInputColor;
542
+ }, function (props) {
543
+ return props.theme.secondaryInputBgd;
544
+ }, function (props) {
545
+ return props.error ? props.theme.errorColor : props.theme.secondaryInputBorderColor;
546
+ }, function (props) {
547
+ return props.theme.secondaryInputBgdHover;
548
+ }, function (props) {
549
+ return props.theme.secondaryInputBgdHover;
550
+ }, function (props) {
551
+ return props.theme.secondaryInputBgdActive;
552
+ }, function (props) {
553
+ return props.theme.secondaryInputBorderActiveColor;
554
+ });
555
+ var chickletedInputContainer = (0, _styledComponents.css)(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteral2["default"])(["\n cursor: pointer;\n flex-wrap: wrap;\n height: auto;\n justify-content: start;\n margin-bottom: 2px;\n padding: 0px 7px 0px 4px;\n white-space: normal;\n\n .chickleted-input__placeholder {\n line-height: 24px;\n margin: 4px;\n }\n"])));
556
+ var chickletedInput = (0, _styledComponents.css)(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteral2["default"])(["\n ", " ", ";\n"])), function (props) {
557
+ return props.theme.input;
558
+ }, function (props) {
559
+ return props.theme.chickletedInputContainer;
560
+ });
561
+ var chickletedInputLT = (0, _styledComponents.css)(_templateObject6 || (_templateObject6 = (0, _taggedTemplateLiteral2["default"])(["\n ", " ", ";\n"])), function (props) {
562
+ return props.theme.inputLT;
563
+ }, function (props) {
564
+ return props.theme.chickletedInputContainer;
565
+ });
566
+ var secondaryChickletedInput = (0, _styledComponents.css)(_templateObject7 || (_templateObject7 = (0, _taggedTemplateLiteral2["default"])(["\n ", " ", ";\n"])), function (props) {
567
+ return props.theme.secondaryInput;
568
+ }, function (props) {
569
+ return props.theme.chickletedInputContainer;
570
+ });
571
+ var inlineInput = (0, _styledComponents.css)(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n ", " color: ", ";\n font-size: 13px;\n letter-spacing: 0.43px;\n line-height: 18px;\n height: 24px;\n font-weight: 400;\n padding-left: 4px;\n margin-left: -4px;\n background-color: transparent;\n border: 1px solid transparent;\n\n :hover {\n height: 24px;\n cursor: text;\n background-color: transparent;\n border: 1px solid ", ";\n }\n\n :active,\n .active,\n :focus {\n background-color: transparent;\n border: 1px solid ", ";\n }\n"])), function (props) {
572
+ return props.theme.input;
573
+ }, function (props) {
574
+ return props.theme.textColor;
575
+ }, function (props) {
576
+ return props.theme.labelColor;
577
+ }, function (props) {
578
+ return props.theme.inputBorderActiveColor;
579
+ });
580
+ var switchTrack = (0, _styledComponents.css)(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n background: ", ";\n position: absolute;\n top: 0;\n left: ", "px;\n content: '';\n display: block;\n width: ", "px;\n height: ", "px;\n border-radius: ", ";\n"])), function (props) {
581
+ return props.checked ? props.theme.switchTrackBgdActive : props.theme.switchTrackBgd;
582
+ }, function (props) {
583
+ return -props.theme.switchLabelMargin;
584
+ }, function (props) {
585
+ return props.theme.switchWidth;
586
+ }, function (props) {
587
+ return props.theme.switchHeight;
588
+ }, function (props) {
589
+ return props.theme.switchTrackBorderRadius;
590
+ });
591
+ var switchButton = (0, _styledComponents.css)(_templateObject10 || (_templateObject10 = (0, _taggedTemplateLiteral2["default"])(["\n transition: ", ";\n position: absolute;\n top: ", "px;\n left: ", "px;\n content: '';\n display: block;\n height: ", "px;\n width: ", "px;\n background: ", ";\n box-shadow: ", ";\n border-radius: ", ";\n"])), function (props) {
592
+ return props.theme.transition;
593
+ }, function (props) {
594
+ return (props.theme.switchHeight - props.theme.switchBtnHeight) / 2;
595
+ }, function (props) {
596
+ return (props.checked ? props.theme.switchWidth / 2 : (props.theme.switchHeight - props.theme.switchBtnHeight) / 2) - props.theme.switchLabelMargin;
597
+ }, function (props) {
598
+ return props.theme.switchBtnHeight;
599
+ }, function (props) {
600
+ return props.theme.switchBtnWidth;
601
+ }, function (props) {
602
+ return props.checked ? props.theme.switchBtnBgdActive : props.theme.switchBtnBgd;
603
+ }, function (props) {
604
+ return props.theme.switchBtnBoxShadow;
605
+ }, function (props) {
606
+ return props.theme.switchBtnBorderRadius;
607
+ });
608
+ var inputSwitch = (0, _styledComponents.css)(_templateObject11 || (_templateObject11 = (0, _taggedTemplateLiteral2["default"])(["\n user-select: none;\n cursor: pointer;\n line-height: ", "px;\n font-weight: 500;\n font-size: 12px;\n color: ", ";\n position: relative;\n display: inline-block;\n padding-top: 0;\n padding-right: 0;\n padding-bottom: 0;\n padding-left: ", "px;\n\n :before {\n ", ";\n }\n\n :after {\n ", ";\n }\n"])), function (props) {
609
+ return props.theme.switchHeight;
610
+ }, function (props) {
611
+ return props.theme.labelColor;
612
+ }, function (props) {
613
+ return props.theme.switchWidth;
614
+ }, function (props) {
615
+ return props.theme.switchTrack;
616
+ }, function (props) {
617
+ return props.theme.switchButton;
618
+ });
619
+
620
+ // This is a light version checkbox
621
+ var checkboxBox = (0, _styledComponents.css)(_templateObject12 || (_templateObject12 = (0, _taggedTemplateLiteral2["default"])(["\n display: block;\n position: absolute;\n top: 0;\n left: 0;\n width: ", "px;\n height: ", "px;\n background: ", ";\n border: 1px solid\n ", ";\n border-radius: 2px;\n content: '';\n"])), function (props) {
622
+ return props.theme.checkboxWidth;
623
+ }, function (props) {
624
+ return props.theme.checkboxHeight;
625
+ }, function (props) {
626
+ return props.checked ? props.theme.checkboxBoxBgdChecked : props.theme.checkboxBoxBgd;
627
+ }, function (props) {
628
+ return props.checked ? props.theme.checkboxBoxBgdChecked : props.theme.checkboxBorderColor;
629
+ });
630
+ var checkboxCheck = (0, _styledComponents.css)(_templateObject13 || (_templateObject13 = (0, _taggedTemplateLiteral2["default"])(["\n width: 10px;\n height: 5px;\n border-bottom: 2px solid white;\n border-left: 2px solid white;\n top: 4px;\n left: 3px;\n transform: rotate(-45deg);\n display: block;\n position: absolute;\n opacity: ", ";\n content: '';\n"])), function (props) {
631
+ return props.checked ? 1 : 0;
632
+ });
633
+ var inputCheckbox = (0, _styledComponents.css)(_templateObject14 || (_templateObject14 = (0, _taggedTemplateLiteral2["default"])(["\n display: inline-block;\n position: relative;\n padding-left: 32px;\n margin-bottom: 24px;\n line-height: 20px;\n vertical-align: middle;\n cursor: pointer;\n font-size: 12px;\n color: ", ";\n margin-left: -", "px;\n\n :before {\n ", ";\n }\n\n :after {\n ", ";\n }\n"])), function (props) {
634
+ return props.theme.labelColor;
635
+ }, function (props) {
636
+ return props.theme.switchLabelMargin;
637
+ }, function (props) {
638
+ return props.theme.checkboxBox;
639
+ }, function (props) {
640
+ return props.theme.checkboxCheck;
641
+ });
642
+ var radioTrack = (0, _styledComponents.css)(_templateObject15 || (_templateObject15 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n width: ", "px;\n height: ", "px;\n border-radius: ", "px;\n background-color: ", ";\n border-color: ", ";\n"])), function (props) {
643
+ return props.theme.checkboxBox;
644
+ }, function (props) {
645
+ return props.theme.radioRadius * 2;
646
+ }, function (props) {
647
+ return props.theme.radioRadius * 2;
648
+ }, function (props) {
649
+ return props.theme.radioBorderRadius;
650
+ }, function (props) {
651
+ return props.theme.switchTrackBgd;
652
+ }, function (props) {
653
+ return props.theme.radioBorderColor;
654
+ });
655
+ var radioButton = (0, _styledComponents.css)(_templateObject16 || (_templateObject16 = (0, _taggedTemplateLiteral2["default"])(["\n border: 0;\n display: table;\n top: ", "px;\n left: ", "px;\n width: ", "px;\n height: ", "px;\n border-radius: ", "px;\n background-color: ", ";\n"])), function (props) {
656
+ return props.theme.radioRadius - props.theme.radioButtonRadius;
657
+ }, function (props) {
658
+ return props.theme.radioRadius - props.theme.radioButtonRadius;
659
+ }, function (props) {
660
+ return props.theme.radioButtonRadius * 2;
661
+ }, function (props) {
662
+ return props.theme.radioButtonRadius * 2;
663
+ }, function (props) {
664
+ return props.theme.radioButtonRadius * 2;
665
+ }, function (props) {
666
+ return props.theme.radioButtonBgdColor;
667
+ });
668
+ var inputRadio = (0, _styledComponents.css)(_templateObject17 || (_templateObject17 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n padding-left: ", "px;\n margin-bottom: 0;\n margin-left: 0;\n line-height: ", "px;\n color: ", ";\n cursor: pointer;\n\n :before {\n ", "\n }\n\n :after {\n ", "\n }\n"])), function (props) {
669
+ return props.theme.inputCheckbox;
670
+ }, function (props) {
671
+ return props.theme.radioRadius * 2 + 8;
672
+ }, function (props) {
673
+ return props.theme.radioRadius * 2;
674
+ }, function (props) {
675
+ return props.theme.textColorHl;
676
+ }, function (props) {
677
+ return props.theme.radioTrack;
678
+ }, function (props) {
679
+ return props.theme.radioButton;
680
+ });
681
+ var secondaryRadio = (0, _styledComponents.css)(_templateObject18 || (_templateObject18 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n\n :before {\n ", " background: ", ";\n }\n\n :after {\n ", "\n background: ", ";\n }\n"])), function (props) {
682
+ return props.theme.inputRadio;
683
+ }, function (props) {
684
+ return props.theme.radioTrack;
685
+ }, function (props) {
686
+ return props.theme.secondarySwitchTrackBgd;
687
+ }, function (props) {
688
+ return props.theme.radioButton;
689
+ }, function (props) {
690
+ return props.checked ? props.theme.switchBtnBgdActive : props.theme.secondarySwitchBtnBgd;
691
+ });
692
+ var secondarySwitch = (0, _styledComponents.css)(_templateObject19 || (_templateObject19 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n\n :before {\n ", " background: ", ";\n }\n\n :after {\n ", "\n background: ", ";\n }\n"])), function (props) {
693
+ return props.theme.inputSwitch;
694
+ }, function (props) {
695
+ return props.theme.switchTrack;
696
+ }, function (props) {
697
+ return props.checked ? props.theme.switchTrackBgdActive : props.theme.secondarySwitchTrackBgd;
698
+ }, function (props) {
699
+ return props.theme.switchButton;
700
+ }, function (props) {
701
+ return props.checked ? props.theme.switchBtnBgdActive : props.theme.secondarySwitchBtnBgd;
702
+ });
703
+ var dropdownScrollBar = (0, _styledComponents.css)(_templateObject20 || (_templateObject20 = (0, _taggedTemplateLiteral2["default"])(["\n ::-webkit-scrollbar {\n height: 10px;\n width: 10px;\n }\n\n ::-webkit-scrollbar-corner {\n background: ", ";\n }\n\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 10px;\n background: ", ";\n border: 3px solid ", ";\n }\n\n :vertical:hover {\n background: ", ";\n cursor: pointer;\n }\n"])), function (props) {
704
+ return props.theme.dropdownListBgd;
705
+ }, function (props) {
706
+ return props.theme.dropdownListBgd;
707
+ }, function (props) {
708
+ return props.theme.labelColor;
709
+ }, function (props) {
710
+ return props.theme.dropdownListBgd;
711
+ }, function (props) {
712
+ return props.theme.textColorHl;
713
+ });
714
+ var dropdownScrollBarLT = (0, _styledComponents.css)(_templateObject21 || (_templateObject21 = (0, _taggedTemplateLiteral2["default"])(["\n ", " ::-webkit-scrollbar-corner {\n background: ", ";\n }\n\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 10px;\n background: ", ";\n border: 3px solid ", ";\n }\n\n :vertical:hover {\n background: ", ";\n cursor: pointer;\n }\n"])), dropdownScrollBar, function (props) {
715
+ return props.theme.dropdownListBgdLT;
716
+ }, function (props) {
717
+ return props.theme.dropdownListBgdLT;
718
+ }, function (props) {
719
+ return props.theme.scrollbarThumbColorLT;
720
+ }, function (props) {
721
+ return props.theme.dropdownListBgdLT;
722
+ }, function (props) {
723
+ return props.theme.scrollbarThumbColorHoverLT;
724
+ });
725
+ var dropdownListAnchor = (0, _styledComponents.css)(_templateObject22 || (_templateObject22 = (0, _taggedTemplateLiteral2["default"])(["\n color: ", ";\n padding-left: 3px;\n font-size: ", ";\n line-height: ", "px;\n overflow: hidden;\n text-overflow: ellipsis;\n\n &.disabled {\n color: ", ";\n }\n"])), function (props) {
726
+ return props.theme.selectColor;
727
+ }, function (props) {
728
+ return props.theme.selectFontSize;
729
+ }, function (props) {
730
+ return props.theme.dropdownListLineHeight;
731
+ }, function (props) {
732
+ return props.theme.subtextColor;
733
+ });
734
+ var dropdownListAnchorLT = (0, _styledComponents.css)(_templateObject23 || (_templateObject23 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n color: ", ";\n"])), dropdownListAnchor, function (props) {
735
+ return props.theme.selectColorLT;
736
+ });
737
+ var dropdownListSize = (0, _styledComponents.css)(_templateObject24 || (_templateObject24 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: 11px;\n padding: 3px 9px;\n font-weight: 500;\n white-space: nowrap;\n"])));
738
+ var dropdownListItem = (0, _styledComponents.css)(_templateObject25 || (_templateObject25 = (0, _taggedTemplateLiteral2["default"])(["\n ", " &.hover,\n &:hover {\n cursor: pointer;\n background-color: ", ";\n\n .list__item__anchor {\n color: ", ";\n }\n }\n &.selected {\n background-color: ", ";\n }\n"])), dropdownListSize, function (props) {
739
+ return props.theme.dropdownListHighlightBg;
740
+ }, function (props) {
741
+ return props.theme.textColorHl;
742
+ }, function (props) {
743
+ return props.theme.dropdownListHighlightBg;
744
+ });
745
+ var dropdownListItemLT = (0, _styledComponents.css)(_templateObject26 || (_templateObject26 = (0, _taggedTemplateLiteral2["default"])(["\n ", "\n color: ", ";\n\n &.hover,\n &:hover {\n cursor: pointer;\n color: ", ";\n background-color: ", ";\n\n .list__item__anchor {\n color: ", ";\n }\n }\n &.selected {\n background-color: ", ";\n }\n"])), dropdownListSize, function (props) {
746
+ return props.theme.textColorLT;
747
+ }, function (props) {
748
+ return props.theme.textColorHlLT;
749
+ }, function (props) {
750
+ return props.theme.dropdownListHighlightBgLT;
751
+ }, function (props) {
752
+ return props.theme.selectColorLT;
753
+ }, function (props) {
754
+ return props.theme.dropdownListHighlightBgLT;
755
+ });
756
+ var dropdownListHeader = (0, _styledComponents.css)(_templateObject27 || (_templateObject27 = (0, _taggedTemplateLiteral2["default"])(["\n font-size: 11px;\n padding: 5px 9px;\n color: ", ";\n"])), function (props) {
757
+ return props.theme.labelColor;
758
+ });
759
+ var dropdownListSection = (0, _styledComponents.css)(_templateObject28 || (_templateObject28 = (0, _taggedTemplateLiteral2["default"])(["\n padding: 0 0 4px 0;\n margin-bottom: 4px;\n border-bottom: 1px solid ", ";\n"])), function (props) {
760
+ return props.theme.labelColor;
761
+ });
762
+ var dropdownList = (0, _styledComponents.css)(_templateObject29 || (_templateObject29 = (0, _taggedTemplateLiteral2["default"])(["\n overflow-y: auto;\n max-height: 280px;\n box-shadow: ", ";\n border-radius: 2px;\n\n .list__section {\n ", ";\n }\n .list__header {\n ", ";\n }\n\n .list__item {\n ", ";\n }\n\n .list__item__anchor {\n ", ";\n }\n\n ", ";\n"])), function (props) {
763
+ return props.theme.dropdownListShadow;
764
+ }, function (props) {
765
+ return props.theme.dropdownListSection;
766
+ }, function (props) {
767
+ return props.theme.dropdownListHeader;
768
+ }, function (props) {
769
+ return props.theme.dropdownListItem;
770
+ }, function (props) {
771
+ return props.theme.dropdownListAnchor;
772
+ }, function (props) {
773
+ return props.theme.dropdownScrollBar;
774
+ });
775
+ var dropdownListLT = (0, _styledComponents.css)(_templateObject30 || (_templateObject30 = (0, _taggedTemplateLiteral2["default"])(["\n ", " .list__item {\n ", ";\n }\n\n .list__item__anchor {\n ", ";\n }\n\n ", ";\n"])), dropdownList, function (props) {
776
+ return props.theme.dropdownListItemLT;
777
+ }, function (props) {
778
+ return props.theme.dropdownListAnchorLT;
779
+ }, function (props) {
780
+ return props.theme.dropdownScrollBarLT;
781
+ });
782
+ var sidePanelScrollBar = (0, _styledComponents.css)(_templateObject31 || (_templateObject31 = (0, _taggedTemplateLiteral2["default"])(["\n ::-webkit-scrollbar {\n height: ", "px;\n width: ", "px;\n }\n\n ::-webkit-scrollbar-corner {\n background: ", ";\n }\n\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 10px;\n background: ", ";\n border: 3px solid ", ";\n\n :hover {\n background: ", ";\n cursor: pointer;\n }\n }\n"])), function (props) {
783
+ return props.theme.sidePanelScrollBarHeight;
784
+ }, function (props) {
785
+ return props.theme.sidePanelScrollBarWidth;
786
+ }, function (props) {
787
+ return props.theme.sidePanelBg;
788
+ }, function (props) {
789
+ return props.theme.sidePanelBg;
790
+ }, function (props) {
791
+ return props.theme.panelBackgroundHover;
792
+ }, function (props) {
793
+ return props.theme.sidePanelBg;
794
+ }, function (props) {
795
+ return props.theme.labelColor;
796
+ });
797
+ var panelDropdownScrollBar = (0, _styledComponents.css)(_templateObject32 || (_templateObject32 = (0, _taggedTemplateLiteral2["default"])(["\n ::-webkit-scrollbar {\n height: 10px;\n width: 10px;\n }\n\n ::-webkit-scrollbar-corner {\n background: ", ";\n }\n\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 10px;\n background: ", ";\n border: 3px solid ", ";\n :hover {\n background: ", ";\n cursor: pointer;\n }\n }\n"])), function (props) {
798
+ return props.theme.panelBackground;
799
+ }, function (props) {
800
+ return props.theme.panelBackground;
801
+ }, function (props) {
802
+ return props.theme.panelBackgroundHover;
803
+ }, function (props) {
804
+ return props.theme.panelBackground;
805
+ }, function (props) {
806
+ return props.theme.labelColor;
807
+ });
808
+ var scrollBar = (0, _styledComponents.css)(_templateObject33 || (_templateObject33 = (0, _taggedTemplateLiteral2["default"])(["\n ::-webkit-scrollbar {\n height: 10px;\n width: 10px;\n }\n\n ::-webkit-scrollbar-corner {\n background: ", ";\n }\n\n ::-webkit-scrollbar-track {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb {\n border-radius: 10px;\n background: ", ";\n border: 3px solid ", ";\n\n :vertical:hover {\n background: ", ";\n cursor: pointer;\n }\n\n :horizontal:hover {\n background: ", ";\n cursor: pointer;\n }\n }\n"])), function (props) {
809
+ return props.theme.panelBackground;
810
+ }, function (props) {
811
+ return props.theme.panelBackground;
812
+ }, function (props) {
813
+ return props.theme.labelColor;
814
+ }, function (props) {
815
+ return props.theme.panelBackground;
816
+ }, function (props) {
817
+ return props.theme.textColorHl;
818
+ }, function (props) {
819
+ return props.theme.textColorHl;
820
+ });
821
+ var modalScrollBar = exports.modalScrollBar = (0, _styledComponents.css)(_templateObject34 || (_templateObject34 = (0, _taggedTemplateLiteral2["default"])(["\n ::-webkit-scrollbar {\n width: 14px;\n height: 16px;\n }\n\n ::-webkit-scrollbar-track {\n background: white;\n }\n ::-webkit-scrollbar-track:horizontal {\n background: ", ";\n }\n ::-webkit-scrollbar-thumb {\n background: ", ";\n border: 4px solid white;\n }\n\n ::-webkit-scrollbar-corner {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb:hover {\n background: ", ";\n }\n\n ::-webkit-scrollbar-thumb:vertical {\n border-radius: 7px;\n }\n\n ::-webkit-scrollbar-thumb:horizontal {\n border-radius: 9px;\n border: 4px solid ", ";\n }\n"])), function (props) {
822
+ return props.theme.textColorHl;
823
+ }, function (props) {
824
+ return props.theme.scrollbarThumbColorLT;
825
+ }, function (props) {
826
+ return props.theme.textColorHl;
827
+ }, function (props) {
828
+ return props.theme.scrollbarThumbColorHoverLT;
829
+ }, function (props) {
830
+ return props.theme.textColorHl;
831
+ });
832
+ var theme = exports.theme = _objectSpread(_objectSpread({}, _constants.DIMENSIONS), {}, {
833
+ // templates
834
+ input: input,
835
+ inputLT: inputLT,
836
+ inlineInput: inlineInput,
837
+ chickletedInput: chickletedInput,
838
+ chickletedInputLT: chickletedInputLT,
839
+ chickletedInputContainer: chickletedInputContainer,
840
+ secondaryChickletedInput: secondaryChickletedInput,
841
+ borderColor: borderColor,
842
+ borderColorLT: borderColorLT,
843
+ secondaryInput: secondaryInput,
844
+ dropdownScrollBar: dropdownScrollBar,
845
+ dropdownScrollBarLT: dropdownScrollBarLT,
846
+ dropdownList: dropdownList,
847
+ dropdownListLT: dropdownListLT,
848
+ dropdownListItem: dropdownListItem,
849
+ dropdownListItemLT: dropdownListItemLT,
850
+ dropdownListAnchor: dropdownListAnchor,
851
+ dropdownListAnchorLT: dropdownListAnchorLT,
852
+ dropdownListHeader: dropdownListHeader,
853
+ dropdownListSection: dropdownListSection,
854
+ dropdownListShadow: dropdownListShadow,
855
+ dropdownWrapperZ: dropdownWrapperZ,
856
+ dropdownWapperMargin: dropdownWapperMargin,
857
+ dndOverBackgroundColor: dndOverBackgroundColor,
858
+ modalScrollBar: modalScrollBar,
859
+ scrollBar: scrollBar,
860
+ sidePanelScrollBar: sidePanelScrollBar,
861
+ inputSwitch: inputSwitch,
862
+ secondarySwitch: secondarySwitch,
863
+ switchTrack: switchTrack,
864
+ switchButton: switchButton,
865
+ inputCheckbox: inputCheckbox,
866
+ inputRadio: inputRadio,
867
+ checkboxBox: checkboxBox,
868
+ checkboxCheck: checkboxCheck,
869
+ // Transitions
870
+ transition: transition,
871
+ transitionFast: transitionFast,
872
+ transitionSlow: transitionSlow,
873
+ // styles
874
+ activeColor: activeColor,
875
+ activeColorHover: activeColorHover,
876
+ borderRadius: borderRadius,
877
+ boxShadow: boxShadow,
878
+ errorColor: errorColor,
879
+ dropdownListHighlightBg: dropdownListHighlightBg,
880
+ dropdownListHighlightBgLT: dropdownListHighlightBgLT,
881
+ dropdownListBgd: dropdownListBgd,
882
+ toolbarItemBgdHover: toolbarItemBgdHover,
883
+ toolbarItemBorderHover: toolbarItemBorderHover,
884
+ toolbarItemIconHover: toolbarItemIconHover,
885
+ toolbarItemBorderRaddius: toolbarItemBorderRaddius,
886
+ dropdownListBgdLT: dropdownListBgdLT,
887
+ dropdownListBorderTop: dropdownListBorderTop,
888
+ dropdownListBorderTopLT: dropdownListBorderTopLT,
889
+ dropdownListLineHeight: dropdownListLineHeight,
890
+ labelColor: labelColor,
891
+ labelColorLT: labelColorLT,
892
+ labelHoverColor: labelHoverColor,
893
+ mapPanelBackgroundColor: mapPanelBackgroundColor,
894
+ mapPanelHeaderBackgroundColor: mapPanelHeaderBackgroundColor,
895
+ // Select
896
+ selectActiveBorderColor: selectActiveBorderColor,
897
+ selectBackground: selectBackground,
898
+ selectBackgroundLT: selectBackgroundLT,
899
+ selectBackgroundHover: selectBackgroundHover,
900
+ selectBackgroundHoverLT: selectBackgroundHoverLT,
901
+ selectBorder: selectBorder,
902
+ selectBorderColor: selectBorderColor,
903
+ selectBorderRadius: selectBorderRadius,
904
+ selectBorderColorLT: selectBorderColorLT,
905
+ selectColor: selectColor,
906
+ selectColorPlaceHolder: selectColorPlaceHolder,
907
+ selectColorPlaceHolderLT: selectColorPlaceHolderLT,
908
+ selectFontSize: selectFontSize,
909
+ selectFontWeight: selectFontWeight,
910
+ selectColorLT: selectColorLT,
911
+ selectFontWeightBold: selectFontWeightBold,
912
+ panelTabColor: panelTabColor,
913
+ // Input
914
+ inputBgd: inputBgd,
915
+ inputBgdHover: inputBgdHover,
916
+ inputBgdActive: inputBgdActive,
917
+ inputBgdActiveLT: inputBgdActiveLT,
918
+ inputBoxHeight: inputBoxHeight,
919
+ inputBoxHeightSmall: inputBoxHeightSmall,
920
+ inputBoxHeightTiny: inputBoxHeightTiny,
921
+ inputBorderColor: inputBorderColor,
922
+ inputBorderActiveColor: inputBorderActiveColor,
923
+ inputBorderHoverColor: inputBorderHoverColor,
924
+ inputBorderRadius: inputBorderRadius,
925
+ inputColor: inputColor,
926
+ inputPadding: inputPadding,
927
+ inputPaddingSmall: inputPaddingSmall,
928
+ inputPaddingTiny: inputPaddingTiny,
929
+ inputFontSize: inputFontSize,
930
+ inputFontSizeSmall: inputFontSizeSmall,
931
+ inputFontWeight: inputFontWeight,
932
+ inputPlaceholderColor: inputPlaceholderColor,
933
+ inputPlaceholderColorLT: inputPlaceholderColorLT,
934
+ inputPlaceholderFontWeight: inputPlaceholderFontWeight,
935
+ inputBoxShadow: inputBoxShadow,
936
+ inputBoxShadowActive: inputBoxShadowActive,
937
+ inputBoxShadowActiveLT: inputBoxShadowActiveLT,
938
+ secondaryInputBgd: secondaryInputBgd,
939
+ secondaryInputBgdHover: secondaryInputBgdHover,
940
+ secondaryInputBgdActive: secondaryInputBgdActive,
941
+ secondaryInputColor: secondaryInputColor,
942
+ secondaryInputBorderColor: secondaryInputBorderColor,
943
+ secondaryInputBorderActiveColor: secondaryInputBorderActiveColor,
944
+ dropdownSelectHeight: dropdownSelectHeight,
945
+ // Switch
946
+ switchWidth: switchWidth,
947
+ switchHeight: switchHeight,
948
+ switchTrackBgd: switchTrackBgd,
949
+ switchTrackBgdActive: switchTrackBgdActive,
950
+ switchTrackBorderRadius: switchTrackBorderRadius,
951
+ switchBtnBgd: switchBtnBgd,
952
+ switchBtnBgdActive: switchBtnBgdActive,
953
+ switchBtnBoxShadow: switchBtnBoxShadow,
954
+ switchBtnBorderRadius: switchBtnBorderRadius,
955
+ switchBtnWidth: switchBtnWidth,
956
+ switchBtnHeight: switchBtnHeight,
957
+ switchLabelMargin: switchLabelMargin,
958
+ secondarySwitchTrackBgd: secondarySwitchTrackBgd,
959
+ secondarySwitchBtnBgd: secondarySwitchBtnBgd,
960
+ // Checkbox
961
+ checkboxWidth: checkboxWidth,
962
+ checkboxHeight: checkboxHeight,
963
+ checkboxMargin: checkboxMargin,
964
+ checkboxBorderColor: checkboxBorderColor,
965
+ checkboxBorderRadius: checkboxBorderRadius,
966
+ checkboxBorderColorLT: checkboxBorderColorLT,
967
+ checkboxBoxBgd: checkboxBoxBgd,
968
+ checkboxBoxBgdChecked: checkboxBoxBgdChecked,
969
+ // Radio
970
+ radioRadius: radioRadius,
971
+ radioBorderRadius: radioBorderRadius,
972
+ radioBorderColor: radioBorderColor,
973
+ radioButtonRadius: radioButtonRadius,
974
+ radioButtonBgdColor: radioButtonBgdColor,
975
+ radioTrack: radioTrack,
976
+ radioButton: radioButton,
977
+ secondaryRadio: secondaryRadio,
978
+ // Button
979
+ btnFontFamily: btnFontFamily,
980
+ primaryBtnBgd: primaryBtnBgd,
981
+ primaryBtnActBgd: primaryBtnActBgd,
982
+ primaryBtnColor: primaryBtnColor,
983
+ primaryBtnActColor: primaryBtnActColor,
984
+ primaryBtnBgdHover: primaryBtnBgdHover,
985
+ primaryBtnRadius: primaryBtnRadius,
986
+ primaryBtnFontSizeDefault: primaryBtnFontSizeDefault,
987
+ primaryBtnFontSizeSmall: primaryBtnFontSizeSmall,
988
+ primaryBtnFontSizeLarge: primaryBtnFontSizeLarge,
989
+ primaryBtnBorder: primaryBtnBorder,
990
+ secondaryBtnBgd: secondaryBtnBgd,
991
+ secondaryBtnActBgd: secondaryBtnActBgd,
992
+ secondaryBtnBgdHover: secondaryBtnBgdHover,
993
+ secondaryBtnColor: secondaryBtnColor,
994
+ secondaryBtnActColor: secondaryBtnActColor,
995
+ secondaryBtnBorder: secondaryBtnBorder,
996
+ negativeBtnBgd: negativeBtnBgd,
997
+ negativeBtnActBgd: negativeBtnActBgd,
998
+ negativeBtnBgdHover: negativeBtnBgdHover,
999
+ negativeBtnBorder: negativeBtnBorder,
1000
+ negativeBtnColor: negativeBtnColor,
1001
+ negativeBtnActColor: negativeBtnActColor,
1002
+ linkBtnBgd: linkBtnBgd,
1003
+ linkBtnActBgd: linkBtnActBgd,
1004
+ linkBtnColor: linkBtnColor,
1005
+ linkBtnActColor: linkBtnActColor,
1006
+ linkBtnActBgdHover: linkBtnActBgdHover,
1007
+ linkBtnBorder: linkBtnBorder,
1008
+ floatingBtnBgd: floatingBtnBgd,
1009
+ floatingBtnActBgd: floatingBtnActBgd,
1010
+ floatingBtnBgdHover: floatingBtnBgdHover,
1011
+ floatingBtnBorder: floatingBtnBorder,
1012
+ floatingBtnBorderHover: floatingBtnBorderHover,
1013
+ floatingBtnColor: floatingBtnColor,
1014
+ floatingBtnActColor: floatingBtnActColor,
1015
+ ctaBtnBgd: ctaBtnBgd,
1016
+ ctaBtnBgdHover: ctaBtnBgdHover,
1017
+ ctaBtnActBgd: ctaBtnActBgd,
1018
+ ctaBtnColor: ctaBtnColor,
1019
+ ctaBtnActColor: ctaBtnActColor,
1020
+ selectionBtnBgd: selectionBtnBgd,
1021
+ selectionBtnActBgd: selectionBtnActBgd,
1022
+ selectionBtnColor: selectionBtnColor,
1023
+ selectionBtnActColor: selectionBtnActColor,
1024
+ selectionBtnBgdHover: selectionBtnBgdHover,
1025
+ selectionBtnBorder: selectionBtnBorder,
1026
+ selectionBtnBorderColor: selectionBtnBorderColor,
1027
+ selectionBtnBorderActColor: selectionBtnBorderActColor,
1028
+ scrollbarThumbColorLT: scrollbarThumbColorLT,
1029
+ scrollbarThumbColorHoverLT: scrollbarThumbColorHoverLT,
1030
+ // Modal
1031
+ modalTitleColor: modalTitleColor,
1032
+ modalTitleFontSize: modalTitleFontSize,
1033
+ modalTitleFontSizeSmaller: modalTitleFontSizeSmaller,
1034
+ modalFooterBgd: modalFooterBgd,
1035
+ modalImagePlaceHolder: modalImagePlaceHolder,
1036
+ modalPadding: modalPadding,
1037
+ modalDialogBgd: modalDialogBgd,
1038
+ modalDialogColor: modalDialogColor,
1039
+ modalLateralPadding: modalLateralPadding,
1040
+ modalPortableLateralPadding: modalPortableLateralPadding,
1041
+ modalOverLayZ: modalOverLayZ,
1042
+ modalOverlayBgd: modalOverlayBgd,
1043
+ modalContentZ: modalContentZ,
1044
+ modalFooterZ: modalFooterZ,
1045
+ modalTitleZ: modalTitleZ,
1046
+ modalButtonZ: modalButtonZ,
1047
+ modalDropdownBackground: modalDropdownBackground,
1048
+ // Side Panel
1049
+ sidePanelBg: sidePanelBg,
1050
+ sidePanelInnerPadding: sidePanelInnerPadding,
1051
+ sideBarCloseBtnBgd: sideBarCloseBtnBgd,
1052
+ sideBarCloseBtnColor: sideBarCloseBtnColor,
1053
+ sideBarCloseBtnBgdHover: sideBarCloseBtnBgdHover,
1054
+ sidePanelHeaderBg: sidePanelHeaderBg,
1055
+ sidePanelHeaderBorder: sidePanelHeaderBorder,
1056
+ sidePanelScrollBarWidth: sidePanelScrollBarWidth,
1057
+ sidePanelScrollBarHeight: sidePanelScrollBarHeight,
1058
+ sidePanelTitleFontsize: sidePanelTitleFontsize,
1059
+ sidePanelTitleLineHeight: sidePanelTitleLineHeight,
1060
+ panelHeaderBorderRadius: panelHeaderBorderRadius,
1061
+ sidePanelBorder: sidePanelBorder,
1062
+ sidePanelBorderColor: sidePanelBorderColor,
1063
+ layerConfigGroupLabelLabelFontSize: layerConfigGroupLabelLabelFontSize,
1064
+ layerConfigGroupMarginBottom: layerConfigGroupMarginBottom,
1065
+ layerConfigGroupPaddingLeft: layerConfigGroupPaddingLeft,
1066
+ // Side Panel Panel
1067
+ chickletBgd: chickletBgd,
1068
+ chickletBgdLT: chickletBgdLT,
1069
+ panelBackground: panelBackground,
1070
+ panelContentBackground: panelContentBackground,
1071
+ panelBackgroundHover: panelBackgroundHover,
1072
+ panelBackgroundLT: panelBackgroundLT,
1073
+ panelToggleMarginRight: panelToggleMarginRight,
1074
+ panelToggleBottomPadding: panelToggleBottomPadding,
1075
+ panelBoxShadow: panelBoxShadow,
1076
+ panelBorderRadius: panelBorderRadius,
1077
+ panelBorder: panelBorder,
1078
+ panelBorderColor: panelBorderColor,
1079
+ panelBorderLT: panelBorderLT,
1080
+ panelHeaderIcon: panelHeaderIcon,
1081
+ panelHeaderIconActive: panelHeaderIconActive,
1082
+ panelHeaderIconHover: panelHeaderIconHover,
1083
+ panelHeaderHeight: panelHeaderHeight,
1084
+ layerPanelHeaderHeight: layerPanelHeaderHeight,
1085
+ panelDropdownScrollBar: panelDropdownScrollBar,
1086
+ layerTypeIconSizeL: layerTypeIconSizeL,
1087
+ layerTypeIconPdL: layerTypeIconPdL,
1088
+ layerTypeIconSizeSM: layerTypeIconSizeSM,
1089
+ layerPanelToggleOptionColor: layerPanelToggleOptionColor,
1090
+ layerPanelToggleOptionColorActive: layerPanelToggleOptionColorActive,
1091
+ // Text
1092
+ fontFamily: fontFamily,
1093
+ fontWeight: fontWeight,
1094
+ fontSize: fontSize,
1095
+ lineHeight: lineHeight,
1096
+ textColor: textColor,
1097
+ textColorLT: textColorLT,
1098
+ dataTableTextColor: dataTableTextColor,
1099
+ textColorHl: textColorHl,
1100
+ titleTextColor: titleTextColor,
1101
+ subtextColor: subtextColor,
1102
+ subtextColorLT: subtextColorLT,
1103
+ subtextColorActive: subtextColorActive,
1104
+ fontWhiteColor: fontWhiteColor,
1105
+ panelToggleBorderColor: panelToggleBorderColor,
1106
+ panelTabWidth: panelTabWidth,
1107
+ textTruncate: textTruncate,
1108
+ titleColorLT: titleColorLT,
1109
+ tooltipBg: tooltipBg,
1110
+ tooltipBgLT: tooltipBgLT,
1111
+ tooltipColor: tooltipColor,
1112
+ tooltipColorLT: tooltipColorLT,
1113
+ tooltipBoxShadow: tooltipBoxShadow,
1114
+ tooltipFontSize: tooltipFontSize,
1115
+ logoColor: logoColor,
1116
+ // Sidepanel divider
1117
+ sidepanelDividerBorder: sidepanelDividerBorder,
1118
+ sidepanelDividerMargin: sidepanelDividerMargin,
1119
+ sidepanelDividerHeight: sidepanelDividerHeight,
1120
+ // Bottom Panel
1121
+ bottomInnerPdSide: bottomInnerPdSide,
1122
+ bottomInnerPdVert: bottomInnerPdVert,
1123
+ bottomPanelGap: bottomPanelGap,
1124
+ bottomPanelGapPalm: bottomPanelGapPalm,
1125
+ bottomWidgetPaddingTop: bottomWidgetPaddingTop,
1126
+ bottomWidgetPaddingRight: bottomWidgetPaddingRight,
1127
+ bottomWidgetPaddingBottom: bottomWidgetPaddingBottom,
1128
+ bottomWidgetPaddingLeft: bottomWidgetPaddingLeft,
1129
+ bottomWidgetBgd: bottomWidgetBgd,
1130
+ // Slider
1131
+ sliderBarColor: sliderBarColor,
1132
+ sliderBarBgd: sliderBarBgd,
1133
+ sliderBarHoverColor: sliderBarHoverColor,
1134
+ sliderBarRadius: sliderBarRadius,
1135
+ sliderBarHeight: sliderBarHeight,
1136
+ sliderHandleHeight: sliderHandleHeight,
1137
+ sliderHandleWidth: sliderHandleWidth,
1138
+ sliderHandleColor: sliderHandleColor,
1139
+ sliderHandleTextColor: sliderHandleTextColor,
1140
+ sliderInactiveBorderColor: sliderInactiveBorderColor,
1141
+ sliderBorderRadius: sliderBorderRadius,
1142
+ sliderHandleHoverColor: sliderHandleHoverColor,
1143
+ sliderHandleAfterContent: sliderHandleAfterContent,
1144
+ sliderHandleShadow: sliderHandleShadow,
1145
+ sliderInputHeight: sliderInputHeight,
1146
+ sliderInputWidth: sliderInputWidth,
1147
+ sliderMarginTopIsTime: sliderMarginTopIsTime,
1148
+ sliderMarginTop: sliderMarginTop,
1149
+ sliderMarginBottom: sliderMarginBottom,
1150
+ // Geocoder
1151
+ geocoderWidth: geocoderWidth,
1152
+ geocoderTop: geocoderTop,
1153
+ geocoderRight: geocoderRight,
1154
+ geocoderInputHeight: geocoderInputHeight,
1155
+ // Map Control
1156
+ mapControlTop: mapControlTop,
1157
+ // Plot
1158
+ rangeBrushBgd: rangeBrushBgd,
1159
+ histogramFillInRange: histogramFillInRange,
1160
+ histogramFillOutRange: histogramFillOutRange,
1161
+ histogramOverlayColor: histogramOverlayColor,
1162
+ histogramBreakLineColor: histogramBreakLineColor,
1163
+ axisFontSize: axisFontSize,
1164
+ axisFontColor: axisFontColor,
1165
+ timeTitleFontSize: timeTitleFontSize,
1166
+ rangePlotMargin: rangePlotMargin,
1167
+ rangePlotMarginLarge: rangePlotMarginLarge,
1168
+ rangePlotH: rangePlotH,
1169
+ rangePlotHLarge: rangePlotHLarge,
1170
+ rangePlotHLargePalm: rangePlotHLargePalm,
1171
+ rangePlotContainerH: rangePlotContainerH,
1172
+ rangePlotContainerHLarge: rangePlotContainerHLarge,
1173
+ rangePlotContainerHLargePalm: rangePlotContainerHLargePalm,
1174
+ // Notifications
1175
+ notificationColors: notificationColors,
1176
+ notificationPanelWidth: notificationPanelWidth,
1177
+ notificationPanelItemWidth: notificationPanelItemWidth,
1178
+ notificationPanelItemHeight: notificationPanelItemHeight,
1179
+ // Data Table
1180
+ headerRowHeight: headerRowHeight,
1181
+ headerRowWStatsHeight: headerRowWStatsHeight,
1182
+ headerStatsControlHeight: headerStatsControlHeight,
1183
+ rowHeight: rowHeight,
1184
+ headerPaddingTop: headerPaddingTop,
1185
+ headerPaddingBottom: headerPaddingBottom,
1186
+ cellPaddingSide: cellPaddingSide,
1187
+ edgeCellPaddingSide: edgeCellPaddingSide,
1188
+ cellFontSize: cellFontSize,
1189
+ gridPaddingSide: gridPaddingSide,
1190
+ optionButtonColor: optionButtonColor,
1191
+ headerCellBackground: headerCellBackground,
1192
+ headerCellBorderColor: headerCellBorderColor,
1193
+ headerCellStatsBackground: headerCellStatsBackground,
1194
+ headerCellStatsControlBackground: headerCellStatsControlBackground,
1195
+ headerCellIconColor: headerCellIconColor,
1196
+ cellBorderColor: cellBorderColor,
1197
+ evenRowBackground: evenRowBackground,
1198
+ oddRowBackground: oddRowBackground,
1199
+ pinnedGridBorderColor: pinnedGridBorderColor,
1200
+ // time display
1201
+ timeDisplayBorderRadius: timeDisplayBorderRadius,
1202
+ timeDisplayHeight: timeDisplayHeight,
1203
+ timeDisplayMinWidth: timeDisplayMinWidth,
1204
+ timeDisplayOpacity: timeDisplayOpacity,
1205
+ timeDisplayPadding: timeDisplayPadding,
1206
+ // export map
1207
+ exportIntraSectionMargin: exportIntraSectionMargin,
1208
+ // Action Panel
1209
+ actionPanelWidth: actionPanelWidth,
1210
+ actionPanelHeight: actionPanelHeight,
1211
+ // Breakpoints
1212
+ breakPoints: breakPoints,
1213
+ // progressbar
1214
+ progressBarColor: progressBarColor,
1215
+ progressBarTrackColor: progressBarTrackColor,
1216
+ // layerConfigGroupLabel
1217
+ layerConfigGroupLabelBorderLeft: layerConfigGroupLabelBorderLeft,
1218
+ layerConfigGroupLabelMargin: layerConfigGroupLabelMargin,
1219
+ layerConfigGroupLabelPadding: layerConfigGroupLabelPadding,
1220
+ layerConfigGroupColor: layerConfigGroupColor,
1221
+ // layerConfigGroupLabel label
1222
+ layerConfigGroupLabelLabelMargin: layerConfigGroupLabelLabelMargin,
1223
+ // StyledConfigGroupHeader
1224
+ styledConfigGroupHeaderBorder: styledConfigGroupHeaderBorder,
1225
+ // layerConfigurator
1226
+ layerConfiguratorBorder: layerConfiguratorBorder,
1227
+ layerConfiguratorBorderColor: layerConfiguratorBorderColor,
1228
+ layerConfiguratorMargin: layerConfiguratorMargin,
1229
+ layerConfiguratorPadding: layerConfiguratorPadding,
1230
+ // Styled token
1231
+ fieldTokenRightMargin: fieldTokenRightMargin,
1232
+ fieldTokenHeight: fieldTokenHeight,
1233
+ fieldTokenWidth: fieldTokenWidth,
1234
+ // COLORS
1235
+ BLUE2: 'rgba(85, 88, 219, 0.2)',
1236
+ // AI Assistant Panel
1237
+ aiAssistantPanelWidth: aiAssistantPanelWidth,
1238
+ // Effect panel
1239
+ effectPanelWidth: effectPanelWidth,
1240
+ effectPanelHeight: effectPanelHeight,
1241
+ effectPanelPaddingSide: effectPanelPaddingSide,
1242
+ effectPanelPaddingTop: effectPanelPaddingTop,
1243
+ rightPanelMarginTop: rightPanelMarginTop,
1244
+ rightPanelMarginRight: rightPanelMarginRight,
1245
+ effectPanelAddEffectFontFamily: effectPanelAddEffectFontFamily,
1246
+ // effect type selector
1247
+ effectTypeIconMarginSide: effectTypeIconMarginSide,
1248
+ effectTypeIconSizeL: effectTypeIconSizeL,
1249
+ effectTypeIconBgHoverColor: effectTypeIconBgHoverColor,
1250
+ // effectConfigurator
1251
+ effectConfiguratorMargin: effectConfiguratorMargin,
1252
+ effectConfiguratorPadding: effectConfiguratorPadding,
1253
+ effectPanelTextMain: effectPanelTextMain,
1254
+ effectPanelTextSecondary1: effectPanelTextSecondary1,
1255
+ effectPanelTextSecondary2: effectPanelTextSecondary2,
1256
+ effectPanelTextSecondary3: effectPanelTextSecondary3,
1257
+ effectPanelElementColor: effectPanelElementColor,
1258
+ effectPanelElementColorActive: effectPanelElementColorActive,
1259
+ effectPanelElementColorHovered: effectPanelElementColorHovered,
1260
+ effectPanelElementColorSun: effectPanelElementColorSun,
1261
+ effectPanelElementColorSelected: effectPanelElementColorSelected
1262
+ });
1263
+ var themeLT = exports.themeLT = _objectSpread(_objectSpread({}, theme), {}, {
1264
+ // template
1265
+ activeColor: activeColorLT,
1266
+ input: inputLT,
1267
+ textColor: textColorLT,
1268
+ sidePanelBg: '#FFFFFF',
1269
+ selectColor: selectColorLT,
1270
+ titleTextColor: '#000000',
1271
+ sidePanelHeaderBg: '#F7F7F7',
1272
+ subtextColorActive: activeColorLT,
1273
+ tooltipBg: tooltipBgLT,
1274
+ tooltipColor: tooltipColorLT,
1275
+ dropdownListBgd: '#FFFFFF',
1276
+ toolbarItemBgdHover: '#F7F7F7',
1277
+ textColorHl: activeColorLT,
1278
+ inputBgd: '#F7F7F7',
1279
+ inputBgdHover: '#FFFFFF',
1280
+ inputBgdActive: '#FFFFFF',
1281
+ inputBgdActiveLT: '#FFFFFF',
1282
+ dropdownListHighlightBg: '#F0F0F0',
1283
+ toolbarItemIconHover: activeColorLT,
1284
+ panelBackground: '#F7F7F7',
1285
+ panelContentBackground: '#F7F7F7',
1286
+ bottomWidgetBgd: '#F7F7F7',
1287
+ panelBackgroundHover: '#F7F7F7',
1288
+ panelBorderColor: '#D3D8E0',
1289
+ panelHeaderIconActive: '#000000',
1290
+ panelHeaderIconHover: '#000000',
1291
+ sideBarCloseBtnBgd: '#F7F7F7',
1292
+ sideBarCloseBtnColor: textColorLT,
1293
+ sideBarCloseBtnBgdHover: '#F7F7F7',
1294
+ secondaryInputBgd: '#F7F7F7',
1295
+ secondaryInputBgdActive: '#F7F7F7',
1296
+ secondaryInputBgdHover: '#FFFFFF',
1297
+ secondaryInputBorderActiveColor: '#000000',
1298
+ secondaryInputBorderColor: 'none',
1299
+ secondaryInputColor: '#545454',
1300
+ chickletBgd: '#F7F7F7',
1301
+ mapPanelBackgroundColor: '#FFFFFF',
1302
+ mapPanelHeaderBackgroundColor: '#F7F7F7',
1303
+ sliderBarColor: '#A0A7B4',
1304
+ sliderBarBgd: '#D3D8E0',
1305
+ sliderHandleColor: '#F7F7F7',
1306
+ sliderInactiveBorderColor: '#F7F7F7',
1307
+ sliderHandleTextColor: '#F7F7F7',
1308
+ sliderHandleHoverColor: '#F7F7F7',
1309
+ subtextColor: subtextColorLT,
1310
+ switchBtnBgd: '#F7F7F7',
1311
+ secondarySwitchBtnBgd: '#F7F7F7',
1312
+ secondarySwitchTrackBgd: '#D3D8E0',
1313
+ switchBtnBgdActive: '#F7F7F7',
1314
+ switchTrackBgd: '#D3D8E0',
1315
+ switchTrackBgdActive: activeColorLT,
1316
+ // button switch background and hover color
1317
+ primaryBtnBgd: primaryBtnActBgd,
1318
+ primaryBtnActBgd: primaryBtnBgd,
1319
+ primaryBtnBgdHover: primaryBtnBgd,
1320
+ secondaryBtnBgd: secondaryBtnActBgd,
1321
+ secondaryBtnActBgd: secondaryBtnBgd,
1322
+ secondaryBtnBgdHover: secondaryBtnBgd,
1323
+ floatingBtnBgd: '#F7F7F7',
1324
+ floatingBtnActBgd: '#F7F7F7',
1325
+ floatingBtnBgdHover: '#F7F7F7',
1326
+ floatingBtnColor: subtextColor,
1327
+ floatingBtnActColor: activeColorLT,
1328
+ linkBtnActColor: textColorLT,
1329
+ rangeBrushBgd: '#D3D8E0',
1330
+ histogramFillInRange: activeColorLT,
1331
+ histogramFillOutRange: '#A0A7B4',
1332
+ axisFontColor: textColorLT
1333
+ });
1334
+ var themeBS = exports.themeBS = _objectSpread(_objectSpread({}, theme), {}, {
1335
+ activeColor: '#E2E2E2',
1336
+ dropdownListBgd: '#FFFFFF',
1337
+ toolbarItemBgdHover: '#F7F7F7',
1338
+ dropdownListBorderTop: 'none',
1339
+ dropdownListHighlightBg: '#F6F6F6',
1340
+ toolbarItemIconHover: '#000000',
1341
+ inputBgd: '#E2E2E2',
1342
+ inputBgdActive: '#E2E2E2',
1343
+ inputBgdHover: 'inherit',
1344
+ inputBorderActiveColor: '#000000',
1345
+ inputColor: '#000000',
1346
+ chickletBgd: '#E2E2E2',
1347
+ panelBackground: '#FFFFFF',
1348
+ panelBackgroundHover: '#EEEEEE',
1349
+ panelContentBackground: '#FFFFFF',
1350
+ bottomWidgetBgd: '#F7F7F7',
1351
+ panelHeaderIconActive: '#000000',
1352
+ panelHeaderIconHover: '#000000',
1353
+ panelBorderColor: '#E2E2E2',
1354
+ primaryBtnBgd: '#E2E2E2',
1355
+ primaryBtnBgdHover: '#333333',
1356
+ primaryBtnColor: '#000000',
1357
+ secondaryBtnActBgd: '#EEEEEE',
1358
+ secondaryBtnActColor: '#000000',
1359
+ secondaryBtnBgd: '#E2E2E2',
1360
+ secondaryBtnBgdHover: '#CBCBCB',
1361
+ ctnBtnBgd: '#E2E2E2',
1362
+ ctnBtnBgdHover: '333333',
1363
+ ctnBtnColor: '#000000',
1364
+ ctnBtnActColor: '#000000',
1365
+ sideBarCloseBtnBgd: '#E2E2E2',
1366
+ sideBarCloseBtnColor: '#000000',
1367
+ sideBarCloseBtnBgdHover: '#FFFFFF',
1368
+ floatingBtnBgd: '#FFFFFF',
1369
+ floatingBtnActBgd: '#EEEEEE',
1370
+ floatingBtnBgdHover: '#EEEEEE',
1371
+ floatingBtnColor: '#757575',
1372
+ floatingBtnActColor: '#000000',
1373
+ secondaryBtnColor: '#000000',
1374
+ secondaryInputBgd: '#F6F6F6',
1375
+ secondaryInputBgdActive: '#F6F6F6',
1376
+ secondaryInputBgdHover: '#F6F6F6',
1377
+ secondaryInputBorderActiveColor: '#000000',
1378
+ secondaryInputBorderColor: 'none',
1379
+ secondaryInputColor: '#545454',
1380
+ sidePanelBg: '#F6F6F6',
1381
+ sidePanelHeaderBg: '#FFFFFF',
1382
+ subtextColor: '#AFAFAF',
1383
+ panelTabColor: '#AFAFAF',
1384
+ subtextColorActive: '#000000',
1385
+ textColor: '#000000',
1386
+ textColorHl: '#545454',
1387
+ mapPanelBackgroundColor: '#F6F6F6',
1388
+ mapPanelHeaderBackgroundColor: '#FFFFFF',
1389
+ titleTextColor: '#000000',
1390
+ switchBtnBgdActive: '#000000',
1391
+ switchBtnBgd: '#FFFFFF',
1392
+ switchTrackBgdActive: '#E2E2E2',
1393
+ secondarySwitchTrackBgd: '#E2E2E2',
1394
+ switchTrackBgd: '#E2E2E2',
1395
+ secondarySwitchBtnBgd: '#FFFFFF',
1396
+ histogramFillInRange: '#000000',
1397
+ histogramFillOutRange: '#E2E2E2',
1398
+ rangeBrushBgd: '#E2E2E2',
1399
+ sliderBarBgd: '#E2E2E2',
1400
+ sliderHandleColor: '#FFFFFF',
1401
+ sliderInactiveBorderColor: '#FFFFFF',
1402
+ sliderHandleTextColor: '#FFFFFF',
1403
+ sliderBarColor: '#000000'
1404
+ });
1405
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfc3R5bGVkQ29tcG9uZW50cyIsInJlcXVpcmUiLCJfY29uc3RhbnRzIiwiX3RlbXBsYXRlT2JqZWN0IiwiX3RlbXBsYXRlT2JqZWN0MiIsIl90ZW1wbGF0ZU9iamVjdDMiLCJfdGVtcGxhdGVPYmplY3Q0IiwiX3RlbXBsYXRlT2JqZWN0NSIsIl90ZW1wbGF0ZU9iamVjdDYiLCJfdGVtcGxhdGVPYmplY3Q3IiwiX3RlbXBsYXRlT2JqZWN0OCIsIl90ZW1wbGF0ZU9iamVjdDkiLCJfdGVtcGxhdGVPYmplY3QxMCIsIl90ZW1wbGF0ZU9iamVjdDExIiwiX3RlbXBsYXRlT2JqZWN0MTIiLCJfdGVtcGxhdGVPYmplY3QxMyIsIl90ZW1wbGF0ZU9iamVjdDE0IiwiX3RlbXBsYXRlT2JqZWN0MTUiLCJfdGVtcGxhdGVPYmplY3QxNiIsIl90ZW1wbGF0ZU9iamVjdDE3IiwiX3RlbXBsYXRlT2JqZWN0MTgiLCJfdGVtcGxhdGVPYmplY3QxOSIsIl90ZW1wbGF0ZU9iamVjdDIwIiwiX3RlbXBsYXRlT2JqZWN0MjEiLCJfdGVtcGxhdGVPYmplY3QyMiIsIl90ZW1wbGF0ZU9iamVjdDIzIiwiX3RlbXBsYXRlT2JqZWN0MjQiLCJfdGVtcGxhdGVPYmplY3QyNSIsIl90ZW1wbGF0ZU9iamVjdDI2IiwiX3RlbXBsYXRlT2JqZWN0MjciLCJfdGVtcGxhdGVPYmplY3QyOCIsIl90ZW1wbGF0ZU9iamVjdDI5IiwiX3RlbXBsYXRlT2JqZWN0MzAiLCJfdGVtcGxhdGVPYmplY3QzMSIsIl90ZW1wbGF0ZU9iamVjdDMyIiwiX3RlbXBsYXRlT2JqZWN0MzMiLCJfdGVtcGxhdGVPYmplY3QzNCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwidHJhbnNpdGlvbiIsImV4cG9ydHMiLCJ0cmFuc2l0aW9uRmFzdCIsInRyYW5zaXRpb25TbG93IiwiYm94U2hhZG93IiwiYm94U2l6aW5nIiwiYm9yZGVyUmFkaXVzIiwiYm9yZGVyQ29sb3IiLCJib3JkZXJDb2xvckxUIiwiZm9udEZhbWlseSIsImZvbnRXZWlnaHQiLCJmb250U2l6ZSIsImxpbmVIZWlnaHQiLCJsYWJlbENvbG9yIiwibGFiZWxIb3ZlckNvbG9yIiwibGFiZWxDb2xvckxUIiwidGV4dENvbG9yIiwidGV4dENvbG9yTFQiLCJkYXRhVGFibGVUZXh0Q29sb3IiLCJ0aXRsZUNvbG9yTFQiLCJzdWJ0ZXh0Q29sb3IiLCJzdWJ0ZXh0Q29sb3JMVCIsInN1YnRleHRDb2xvckFjdGl2ZSIsImZvbnRXaGl0ZUNvbG9yIiwicGFuZWxUb2dnbGVCb3JkZXJDb2xvciIsInBhbmVsVGFiV2lkdGgiLCJ0aXRsZVRleHRDb2xvciIsInRleHRDb2xvckhsIiwidGV4dENvbG9ySGxMVCIsImFjdGl2ZUNvbG9yIiwiYWN0aXZlQ29sb3JMVCIsImFjdGl2ZUNvbG9ySG92ZXIiLCJlcnJvckNvbG9yIiwibG9nb0NvbG9yIiwiYnRuRm9udEZhbWlseSIsInByaW1hcnlCdG5CZ2QiLCJwcmltYXJ5QnRuQWN0QmdkIiwicHJpbWFyeUJ0bkNvbG9yIiwicHJpbWFyeUJ0bkFjdENvbG9yIiwicHJpbWFyeUJ0bkJnZEhvdmVyIiwicHJpbWFyeUJ0blJhZGl1cyIsInByaW1hcnlCdG5Gb250U2l6ZURlZmF1bHQiLCJwcmltYXJ5QnRuRm9udFNpemVTbWFsbCIsInByaW1hcnlCdG5Gb250U2l6ZUxhcmdlIiwicHJpbWFyeUJ0bkJvcmRlciIsInNlY29uZGFyeUJ0bkJnZCIsInNlY29uZGFyeUJ0bkFjdEJnZCIsInNlY29uZGFyeUJ0bkNvbG9yIiwic2Vjb25kYXJ5QnRuQWN0Q29sb3IiLCJzZWNvbmRhcnlCdG5CZ2RIb3ZlciIsInNlY29uZGFyeUJ0bkJvcmRlciIsImN0YUJ0bkJnZCIsImN0YUJ0bkJnZEhvdmVyIiwiY3RhQnRuQWN0QmdkIiwiY3RhQnRuQ29sb3IiLCJjdGFCdG5BY3RDb2xvciIsImxpbmtCdG5CZ2QiLCJsaW5rQnRuQWN0QmdkIiwibGlua0J0bkNvbG9yIiwibGlua0J0bkFjdENvbG9yIiwibGlua0J0bkFjdEJnZEhvdmVyIiwibGlua0J0bkJvcmRlciIsIm5lZ2F0aXZlQnRuQmdkIiwibmVnYXRpdmVCdG5BY3RCZ2QiLCJuZWdhdGl2ZUJ0bkJnZEhvdmVyIiwibmVnYXRpdmVCdG5Cb3JkZXIiLCJuZWdhdGl2ZUJ0bkNvbG9yIiwibmVnYXRpdmVCdG5BY3RDb2xvciIsImZsb2F0aW5nQnRuQmdkIiwiZmxvYXRpbmdCdG5BY3RCZ2QiLCJmbG9hdGluZ0J0bkJnZEhvdmVyIiwiZmxvYXRpbmdCdG5Cb3JkZXIiLCJmbG9hdGluZ0J0bkJvcmRlckhvdmVyIiwiZmxvYXRpbmdCdG5Db2xvciIsImZsb2F0aW5nQnRuQWN0Q29sb3IiLCJzZWxlY3Rpb25CdG5CZ2QiLCJzZWxlY3Rpb25CdG5BY3RCZ2QiLCJzZWxlY3Rpb25CdG5Db2xvciIsInNlbGVjdGlvbkJ0bkFjdENvbG9yIiwic2VsZWN0aW9uQnRuQmdkSG92ZXIiLCJzZWxlY3Rpb25CdG5Cb3JkZXIiLCJzZWxlY3Rpb25CdG5Cb3JkZXJDb2xvciIsInNlbGVjdGlvbkJ0bkJvcmRlckFjdENvbG9yIiwic2Nyb2xsYmFyVGh1bWJDb2xvckxUIiwic2Nyb2xsYmFyVGh1bWJDb2xvckhvdmVyTFQiLCJpbnB1dEJveEhlaWdodCIsImlucHV0Qm94SGVpZ2h0U21hbGwiLCJpbnB1dEJveEhlaWdodFRpbnkiLCJpbnB1dFBhZGRpbmciLCJpbnB1dFBhZGRpbmdTbWFsbCIsImlucHV0UGFkZGluZ1RpbnkiLCJpbnB1dEZvbnRTaXplIiwiaW5wdXRGb250U2l6ZVNtYWxsIiwiaW5wdXRGb250V2VpZ2h0IiwiaW5wdXRCZ2QiLCJpbnB1dEJnZEhvdmVyIiwiaW5wdXRCZ2RBY3RpdmUiLCJpbnB1dEJnZEFjdGl2ZUxUIiwiaW5wdXRCb3JkZXJDb2xvciIsImlucHV0Qm9yZGVySG92ZXJDb2xvciIsImlucHV0Qm9yZGVySG92ZXJDb2xvckxUIiwiaW5wdXRCb3JkZXJBY3RpdmVDb2xvciIsImlucHV0Qm9yZGVyQWN0aXZlQ29sb3JMVCIsImlucHV0Q29sb3IiLCJpbnB1dEJvcmRlclJhZGl1cyIsImlucHV0UGxhY2Vob2xkZXJDb2xvciIsImlucHV0UGxhY2Vob2xkZXJDb2xvckxUIiwiaW5wdXRQbGFjZWhvbGRlckZvbnRXZWlnaHQiLCJpbnB1dEJveFNoYWRvdyIsImlucHV0Qm94U2hhZG93QWN0aXZlIiwiaW5wdXRCb3hTaGFkb3dBY3RpdmVMVCIsInNlY29uZGFyeUlucHV0QmdkIiwic2Vjb25kYXJ5SW5wdXRCZ2RIb3ZlciIsInNlY29uZGFyeUlucHV0QmdkQWN0aXZlIiwic2Vjb25kYXJ5SW5wdXRDb2xvciIsInNlY29uZGFyeUlucHV0Qm9yZGVyQ29sb3IiLCJzZWNvbmRhcnlJbnB1dEJvcmRlckFjdGl2ZUNvbG9yIiwiZHJvcGRvd25TZWxlY3RIZWlnaHQiLCJzZWxlY3RDb2xvciIsInNlbGVjdENvbG9yTFQiLCJzZWxlY3RBY3RpdmVCb3JkZXJDb2xvciIsInNlbGVjdEZvbnRTaXplIiwic2VsZWN0Rm9udFdlaWdodCIsInNlbGVjdEZvbnRXZWlnaHRCb2xkIiwic2VsZWN0Q29sb3JQbGFjZUhvbGRlciIsInNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCIsInNlbGVjdEJhY2tncm91bmQiLCJzZWxlY3RCYWNrZ3JvdW5kSG92ZXIiLCJzZWxlY3RCYWNrZ3JvdW5kTFQiLCJzZWxlY3RCYWNrZ3JvdW5kSG92ZXJMVCIsInNlbGVjdEJvcmRlckNvbG9yIiwic2VsZWN0Qm9yZGVyQ29sb3JMVCIsInNlbGVjdEJvcmRlclJhZGl1cyIsInNlbGVjdEJvcmRlciIsInBhbmVsVGFiQ29sb3IiLCJkcm9wZG93bkxpc3RIaWdobGlnaHRCZyIsImRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnTFQiLCJkcm9wZG93bkxpc3RTaGFkb3ciLCJkcm9wZG93bkxpc3RCZ2QiLCJ0b29sYmFySXRlbUJnZEhvdmVyIiwidG9vbGJhckl0ZW1JY29uSG92ZXIiLCJ0b29sYmFySXRlbUJvcmRlckhvdmVyIiwidG9vbGJhckl0ZW1Cb3JkZXJSYWRkaXVzIiwiZHJvcGRvd25MaXN0QmdkTFQiLCJkcm9wZG93bkxpc3RCb3JkZXJUb3AiLCJkcm9wZG93bkxpc3RCb3JkZXJUb3BMVCIsImRyb3Bkb3duTGlzdExpbmVIZWlnaHQiLCJkcm9wZG93bldyYXBwZXJaIiwiZHJvcGRvd25XYXBwZXJNYXJnaW4iLCJkbmRPdmVyQmFja2dyb3VuZENvbG9yIiwic3dpdGNoV2lkdGgiLCJzd2l0Y2hIZWlnaHQiLCJzd2l0Y2hMYWJlbE1hcmdpbiIsInN3aXRjaFRyYWNrQmdkIiwic3dpdGNoVHJhY2tCZ2RBY3RpdmUiLCJzd2l0Y2hUcmFja0JvcmRlclJhZGl1cyIsInN3aXRjaEJ0bkJnZCIsInN3aXRjaEJ0bkJnZEFjdGl2ZSIsInN3aXRjaEJ0bkJveFNoYWRvdyIsInN3aXRjaEJ0bkJvcmRlclJhZGl1cyIsInN3aXRjaEJ0bldpZHRoIiwic3dpdGNoQnRuSGVpZ2h0Iiwic2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2QiLCJzZWNvbmRhcnlTd2l0Y2hCdG5CZ2QiLCJjaGVja2JveFdpZHRoIiwiY2hlY2tib3hIZWlnaHQiLCJjaGVja2JveE1hcmdpbiIsImNoZWNrYm94Qm9yZGVyQ29sb3IiLCJjaGVja2JveEJvcmRlclJhZGl1cyIsImNoZWNrYm94Qm9yZGVyQ29sb3JMVCIsImNoZWNrYm94Qm94QmdkIiwiY2hlY2tib3hCb3hCZ2RDaGVja2VkIiwicmFkaW9SYWRpdXMiLCJyYWRpb0JvcmRlclJhZGl1cyIsInJhZGlvQm9yZGVyQ29sb3IiLCJyYWRpb0J1dHRvblJhZGl1cyIsInJhZGlvQnV0dG9uQmdkQ29sb3IiLCJzaWRlUGFuZWxIZWFkZXJCZyIsInNpZGVQYW5lbEhlYWRlckJvcmRlciIsImxheWVyQ29uZmlnR3JvdXBNYXJnaW5Cb3R0b20iLCJsYXllckNvbmZpZ0dyb3VwUGFkZGluZ0xlZnQiLCJzaWRlUGFuZWxJbm5lclBhZGRpbmciLCJzaWRlUGFuZWxCb3JkZXIiLCJzaWRlUGFuZWxCb3JkZXJDb2xvciIsInNpZGVQYW5lbEJnIiwic2lkZVBhbmVsU2Nyb2xsQmFyV2lkdGgiLCJzaWRlUGFuZWxTY3JvbGxCYXJIZWlnaHQiLCJzaWRlQmFyQ2xvc2VCdG5CZ2QiLCJzaWRlQmFyQ2xvc2VCdG5Db2xvciIsInNpZGVCYXJDbG9zZUJ0bkJnZEhvdmVyIiwic2lkZVBhbmVsVGl0bGVGb250c2l6ZSIsInNpZGVQYW5lbFRpdGxlTGluZUhlaWdodCIsInBhbmVsQmFja2dyb3VuZCIsInBhbmVsQ29udGVudEJhY2tncm91bmQiLCJwYW5lbEJhY2tncm91bmRIb3ZlciIsInBhbmVsSGVhZGVyQm9yZGVyUmFkaXVzIiwiY2hpY2tsZXRCZ2QiLCJjaGlja2xldEJnZExUIiwicGFuZWxIZWFkZXJJY29uIiwicGFuZWxIZWFkZXJJY29uQWN0aXZlIiwicGFuZWxIZWFkZXJJY29uSG92ZXIiLCJwYW5lbEhlYWRlckhlaWdodCIsImxheWVyUGFuZWxIZWFkZXJIZWlnaHQiLCJwYW5lbEJveFNoYWRvdyIsInBhbmVsQm9yZGVyUmFkaXVzIiwicGFuZWxCYWNrZ3JvdW5kTFQiLCJwYW5lbFRvZ2dsZU1hcmdpblJpZ2h0IiwicGFuZWxUb2dnbGVCb3R0b21QYWRkaW5nIiwicGFuZWxCb3JkZXJDb2xvciIsInBhbmVsQm9yZGVyIiwiY29uY2F0IiwicGFuZWxCb3JkZXJMVCIsIm1hcFBhbmVsQmFja2dyb3VuZENvbG9yIiwibWFwUGFuZWxIZWFkZXJCYWNrZ3JvdW5kQ29sb3IiLCJ0b29sdGlwQmciLCJ0b29sdGlwQmdMVCIsInRvb2x0aXBDb2xvciIsInRvb2x0aXBDb2xvckxUIiwidG9vbHRpcEJveFNoYWRvdyIsInRvb2x0aXBGb250U2l6ZSIsImxheWVyVHlwZUljb25TaXplTCIsImxheWVyVHlwZUljb25QZEwiLCJsYXllclR5cGVJY29uU2l6ZVNNIiwibGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yIiwibGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yQWN0aXZlIiwic2lkZXBhbmVsRGl2aWRlckJvcmRlciIsInNpZGVwYW5lbERpdmlkZXJNYXJnaW4iLCJzaWRlcGFuZWxEaXZpZGVySGVpZ2h0IiwiYm90dG9tSW5uZXJQZFNpZGUiLCJib3R0b21Jbm5lclBkVmVydCIsImJvdHRvbVBhbmVsR2FwIiwiYm90dG9tUGFuZWxHYXBQYWxtIiwiYm90dG9tV2lkZ2V0UGFkZGluZ1RvcCIsImJvdHRvbVdpZGdldFBhZGRpbmdSaWdodCIsImJvdHRvbVdpZGdldFBhZGRpbmdCb3R0b20iLCJib3R0b21XaWRnZXRQYWRkaW5nTGVmdCIsImJvdHRvbVdpZGdldEJnZCIsIm1vZGFsVGl0bGVDb2xvciIsIm1vZGFsVGl0bGVGb250U2l6ZSIsIm1vZGFsVGl0bGVGb250U2l6ZVNtYWxsZXIiLCJtb2RhbEZvb3RlckJnZCIsIm1vZGFsSW1hZ2VQbGFjZUhvbGRlciIsIm1vZGFsUGFkZGluZyIsIm1vZGFsTGF0ZXJhbFBhZGRpbmciLCJtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmciLCJtb2RhbE92ZXJMYXlaIiwibW9kYWxPdmVybGF5QmdkIiwibW9kYWxDb250ZW50WiIsIm1vZGFsRm9vdGVyWiIsIm1vZGFsVGl0bGVaIiwibW9kYWxCdXR0b25aIiwibW9kYWxEcm9wZG93bkJhY2tncm91bmQiLCJtb2RhbERpYWxvZ0JnZCIsIm1vZGFsRGlhbG9nQ29sb3IiLCJzbGlkZXJCYXJDb2xvciIsInNsaWRlckJhckJnZCIsInNsaWRlckJhckhvdmVyQ29sb3IiLCJzbGlkZXJCYXJSYWRpdXMiLCJzbGlkZXJCYXJIZWlnaHQiLCJzbGlkZXJIYW5kbGVIZWlnaHQiLCJzbGlkZXJIYW5kbGVXaWR0aCIsInNsaWRlckhhbmRsZUNvbG9yIiwic2xpZGVySGFuZGxlVGV4dENvbG9yIiwic2xpZGVySW5hY3RpdmVCb3JkZXJDb2xvciIsInNsaWRlckJvcmRlclJhZGl1cyIsInNsaWRlckhhbmRsZUhvdmVyQ29sb3IiLCJzbGlkZXJIYW5kbGVBZnRlckNvbnRlbnQiLCJzbGlkZXJIYW5kbGVTaGFkb3ciLCJzbGlkZXJJbnB1dEhlaWdodCIsInNsaWRlcklucHV0V2lkdGgiLCJzbGlkZXJJbnB1dEZvbnRTaXplIiwic2xpZGVySW5wdXRQYWRkaW5nIiwic2xpZGVyTWFyZ2luVG9wSXNUaW1lIiwic2xpZGVyTWFyZ2luVG9wIiwic2xpZGVyTWFyZ2luQm90dG9tIiwiZ2VvY29kZXJXaWR0aCIsImdlb2NvZGVyVG9wIiwiZ2VvY29kZXJSaWdodCIsImdlb2NvZGVySW5wdXRIZWlnaHQiLCJtYXBDb250cm9sVG9wIiwicmFuZ2VCcnVzaEJnZCIsImhpc3RvZ3JhbUZpbGxJblJhbmdlIiwiaGlzdG9ncmFtRmlsbE91dFJhbmdlIiwiaGlzdG9ncmFtT3ZlcmxheUNvbG9yIiwiaGlzdG9ncmFtQnJlYWtMaW5lQ29sb3IiLCJheGlzRm9udFNpemUiLCJheGlzRm9udENvbG9yIiwidGltZVRpdGxlRm9udFNpemUiLCJyYW5nZVBsb3RNYXJnaW4iLCJ0b3AiLCJib3R0b20iLCJsZWZ0IiwicmlnaHQiLCJyYW5nZVBsb3RNYXJnaW5MYXJnZSIsInJhbmdlUGxvdEgiLCJyYW5nZVBsb3RDb250YWluZXJIIiwicmFuZ2VQbG90SExhcmdlIiwicmFuZ2VQbG90SExhcmdlUGFsbSIsInJhbmdlUGxvdENvbnRhaW5lckhMYXJnZSIsInJhbmdlUGxvdENvbnRhaW5lckhMYXJnZVBhbG0iLCJub3RpZmljYXRpb25Db2xvcnMiLCJpbmZvIiwiZXJyb3IiLCJzdWNjZXNzIiwid2FybmluZyIsIm5vdGlmaWNhdGlvblBhbmVsV2lkdGgiLCJub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCIsIm5vdGlmaWNhdGlvblBhbmVsSXRlbUhlaWdodCIsImhlYWRlclJvd0hlaWdodCIsImhlYWRlclN0YXRzQ29udHJvbEhlaWdodCIsImhlYWRlclJvd1dTdGF0c0hlaWdodCIsInJvd0hlaWdodCIsImhlYWRlclBhZGRpbmdUb3AiLCJoZWFkZXJQYWRkaW5nQm90dG9tIiwiY2VsbFBhZGRpbmdTaWRlIiwiZWRnZUNlbGxQYWRkaW5nU2lkZSIsImNlbGxGb250U2l6ZSIsImdyaWRQYWRkaW5nU2lkZSIsImhlYWRlckNlbGxCYWNrZ3JvdW5kIiwiaGVhZGVyQ2VsbEJvcmRlckNvbG9yIiwiaGVhZGVyQ2VsbFN0YXRzQmFja2dyb3VuZCIsImhlYWRlckNlbGxTdGF0c0NvbnRyb2xCYWNrZ3JvdW5kIiwiaGVhZGVyQ2VsbEljb25Db2xvciIsImNlbGxCb3JkZXJDb2xvciIsImV2ZW5Sb3dCYWNrZ3JvdW5kIiwib2RkUm93QmFja2dyb3VuZCIsIm9wdGlvbkJ1dHRvbkNvbG9yIiwicGlubmVkR3JpZEJvcmRlckNvbG9yIiwidGltZURpc3BsYXlCb3JkZXJSYWRpdXMiLCJ0aW1lRGlzcGxheUhlaWdodCIsInRpbWVEaXNwbGF5TWluV2lkdGgiLCJ0aW1lRGlzcGxheU9wYWNpdHkiLCJ0aW1lRGlzcGxheVBhZGRpbmciLCJleHBvcnRJbnRyYVNlY3Rpb25NYXJnaW4iLCJwcm9ncmVzc0JhckNvbG9yIiwicHJvZ3Jlc3NCYXJUcmFja0NvbG9yIiwiYWN0aW9uUGFuZWxXaWR0aCIsImFjdGlvblBhbmVsSGVpZ2h0IiwiZmllbGRUb2tlblJpZ2h0TWFyZ2luIiwiZmllbGRUb2tlbkhlaWdodCIsImZpZWxkVG9rZW5XaWR0aCIsInRleHRUcnVuY2F0ZSIsIm1heFdpZHRoIiwib3ZlcmZsb3ciLCJ0ZXh0T3ZlcmZsb3ciLCJ3aGl0ZVNwYWNlIiwid29yZFdyYXAiLCJsYXllckNvbmZpZ0dyb3VwTGFiZWxCb3JkZXJMZWZ0IiwibGF5ZXJDb25maWdHcm91cExhYmVsTWFyZ2luIiwibGF5ZXJDb25maWdHcm91cExhYmVsUGFkZGluZyIsImxheWVyQ29uZmlnR3JvdXBDb2xvciIsImxheWVyQ29uZmlnR3JvdXBMYWJlbExhYmVsTWFyZ2luIiwibGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxGb250U2l6ZSIsInN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyQm9yZGVyIiwibGF5ZXJDb25maWd1cmF0b3JCb3JkZXIiLCJsYXllckNvbmZpZ3VyYXRvckJvcmRlckNvbG9yIiwibGF5ZXJDb25maWd1cmF0b3JNYXJnaW4iLCJsYXllckNvbmZpZ3VyYXRvclBhZGRpbmciLCJicmVha1BvaW50cyIsInBhbG0iLCJkZXNrIiwiYWlBc3Npc3RhbnRQYW5lbFdpZHRoIiwiZWZmZWN0Q29uZmlndXJhdG9yTWFyZ2luIiwiZWZmZWN0Q29uZmlndXJhdG9yUGFkZGluZyIsImVmZmVjdFBhbmVsV2lkdGgiLCJlZmZlY3RQYW5lbEhlaWdodCIsImVmZmVjdFBhbmVsUGFkZGluZ1NpZGUiLCJlZmZlY3RQYW5lbFBhZGRpbmdUb3AiLCJlZmZlY3RQYW5lbEFkZEVmZmVjdEZvbnRGYW1pbHkiLCJlZmZlY3RUeXBlSWNvbk1hcmdpblNpZGUiLCJlZmZlY3RUeXBlSWNvblNpemVMIiwiZWZmZWN0VHlwZUljb25CZ0hvdmVyQ29sb3IiLCJlZmZlY3RQYW5lbFRleHRNYWluIiwiZWZmZWN0UGFuZWxUZXh0U2Vjb25kYXJ5MSIsImVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTIiLCJlZmZlY3RQYW5lbFRleHRTZWNvbmRhcnkzIiwiZWZmZWN0UGFuZWxFbGVtZW50Q29sb3IiLCJlZmZlY3RQYW5lbEVsZW1lbnRDb2xvckFjdGl2ZSIsImVmZmVjdFBhbmVsRWxlbWVudENvbG9ySG92ZXJlZCIsImVmZmVjdFBhbmVsRWxlbWVudENvbG9yU2VsZWN0ZWQiLCJlZmZlY3RQYW5lbEVsZW1lbnRDb2xvclN1biIsInJpZ2h0UGFuZWxNYXJnaW5Ub3AiLCJyaWdodFBhbmVsTWFyZ2luUmlnaHQiLCJpbnB1dCIsImNzcyIsIl90YWdnZWRUZW1wbGF0ZUxpdGVyYWwyIiwicHJvcHMiLCJ0aGVtZSIsImFjdGl2ZSIsImluY2x1ZGVzIiwic2l6ZSIsImRpc2FibGVkIiwidHlwZSIsImlucHV0TFQiLCJzZWNvbmRhcnlJbnB1dCIsImNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lciIsImNoaWNrbGV0ZWRJbnB1dCIsImNoaWNrbGV0ZWRJbnB1dExUIiwic2Vjb25kYXJ5Q2hpY2tsZXRlZElucHV0IiwiaW5saW5lSW5wdXQiLCJzd2l0Y2hUcmFjayIsImNoZWNrZWQiLCJzd2l0Y2hCdXR0b24iLCJpbnB1dFN3aXRjaCIsImNoZWNrYm94Qm94IiwiY2hlY2tib3hDaGVjayIsImlucHV0Q2hlY2tib3giLCJyYWRpb1RyYWNrIiwicmFkaW9CdXR0b24iLCJpbnB1dFJhZGlvIiwic2Vjb25kYXJ5UmFkaW8iLCJzZWNvbmRhcnlTd2l0Y2giLCJkcm9wZG93blNjcm9sbEJhciIsImRyb3Bkb3duU2Nyb2xsQmFyTFQiLCJkcm9wZG93bkxpc3RBbmNob3IiLCJkcm9wZG93bkxpc3RBbmNob3JMVCIsImRyb3Bkb3duTGlzdFNpemUiLCJkcm9wZG93bkxpc3RJdGVtIiwiZHJvcGRvd25MaXN0SXRlbUxUIiwiZHJvcGRvd25MaXN0SGVhZGVyIiwiZHJvcGRvd25MaXN0U2VjdGlvbiIsImRyb3Bkb3duTGlzdCIsImRyb3Bkb3duTGlzdExUIiwic2lkZVBhbmVsU2Nyb2xsQmFyIiwicGFuZWxEcm9wZG93blNjcm9sbEJhciIsInNjcm9sbEJhciIsIm1vZGFsU2Nyb2xsQmFyIiwiRElNRU5TSU9OUyIsIkJMVUUyIiwidGhlbWVMVCIsInRoZW1lQlMiLCJjdG5CdG5CZ2QiLCJjdG5CdG5CZ2RIb3ZlciIsImN0bkJ0bkNvbG9yIiwiY3RuQnRuQWN0Q29sb3IiXSwic291cmNlcyI6WyIuLi9zcmMvYmFzZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQge2Nzc30gZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtESU1FTlNJT05TfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5cbnR5cGUgSW5wdXRQcm9wcyA9IHtcbiAgYWN0aXZlOiBib29sZWFuO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbiAgZXJyb3I6IHN0cmluZztcbiAgc2l6ZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59O1xuXG50eXBlIFNlY29uZGFyeUlucHV0UHJvcHMgPSB7XG4gIGVycm9yOiBzdHJpbmc7XG59O1xuXG50eXBlIFN3aXRjaGFibGVQcm9wcyA9IHtcbiAgY2hlY2tlZDogYm9vbGVhbjtcbn07XG5cbmV4cG9ydCBjb25zdCB0cmFuc2l0aW9uID0gJ2FsbCAuNHMgZWFzZSc7XG5leHBvcnQgY29uc3QgdHJhbnNpdGlvbkZhc3QgPSAnYWxsIC4ycyBlYXNlJztcbmV4cG9ydCBjb25zdCB0cmFuc2l0aW9uU2xvdyA9ICdhbGwgLjhzIGVhc2UnO1xuXG5leHBvcnQgY29uc3QgYm94U2hhZG93ID0gJzAgMXB4IDJweCAwIHJnYmEoMCwwLDAsMC4xMCknO1xuZXhwb3J0IGNvbnN0IGJveFNpemluZyA9ICdib3JkZXItYm94JztcbmV4cG9ydCBjb25zdCBib3JkZXJSYWRpdXMgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBib3JkZXJDb2xvciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBib3JkZXJDb2xvckxUID0gJyNGMUYxRjEnO1xuXG4vLyBURVhUXG5leHBvcnQgY29uc3QgZm9udEZhbWlseSA9IGBmZi1jbGFuLXdlYi1wcm8sICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgc2Fucy1zZXJpZmA7XG5leHBvcnQgY29uc3QgZm9udFdlaWdodCA9IDQwMDtcbmV4cG9ydCBjb25zdCBmb250U2l6ZSA9ICcwLjg3NWVtJztcbmV4cG9ydCBjb25zdCBsaW5lSGVpZ2h0ID0gMS43MTQyOTtcbmV4cG9ydCBjb25zdCBsYWJlbENvbG9yID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IGxhYmVsSG92ZXJDb2xvciA9ICcjQzZDNkM2JztcbmV4cG9ydCBjb25zdCBsYWJlbENvbG9yTFQgPSAnIzZBNzQ4NSc7XG5cbmV4cG9ydCBjb25zdCB0ZXh0Q29sb3IgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgdGV4dENvbG9yTFQgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgZGF0YVRhYmxlVGV4dENvbG9yID0gdGV4dENvbG9yTFQ7XG5leHBvcnQgY29uc3QgdGl0bGVDb2xvckxUID0gJyMyOTMyM0MnO1xuXG5leHBvcnQgY29uc3Qgc3VidGV4dENvbG9yID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IHN1YnRleHRDb2xvckxUID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IHN1YnRleHRDb2xvckFjdGl2ZSA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBmb250V2hpdGVDb2xvciA9ICcjNTQ2MzhjJztcbmV4cG9ydCBjb25zdCBwYW5lbFRvZ2dsZUJvcmRlckNvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHBhbmVsVGFiV2lkdGggPSAnMzBweCc7XG5cbmV4cG9ydCBjb25zdCB0aXRsZVRleHRDb2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCB0ZXh0Q29sb3JIbCA9ICcjRjBGMEYwJztcbmV4cG9ydCBjb25zdCB0ZXh0Q29sb3JIbExUID0gJyMwMDAwMDAnO1xuZXhwb3J0IGNvbnN0IGFjdGl2ZUNvbG9yID0gJyMxRkJBRDYnO1xuZXhwb3J0IGNvbnN0IGFjdGl2ZUNvbG9yTFQgPSAnIzI0NzNCRCc7XG5leHBvcnQgY29uc3QgYWN0aXZlQ29sb3JIb3ZlciA9ICcjMTA4MTg4JztcbmV4cG9ydCBjb25zdCBlcnJvckNvbG9yID0gJyNGOTA0MkMnO1xuZXhwb3J0IGNvbnN0IGxvZ29Db2xvciA9IGFjdGl2ZUNvbG9yO1xuXG4vLyBCdXR0b25cbmV4cG9ydCBjb25zdCBidG5Gb250RmFtaWx5ID0gZm9udEZhbWlseTtcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuQmdkID0gJyMwRjk2NjgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5BY3RCZ2QgPSAnIzEzQjE3Qic7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkNvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5BY3RDb2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBwcmltYXJ5QnRuQmdkSG92ZXIgPSAnIzEzQjE3Qic7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0blJhZGl1cyA9ICcycHgnO1xuZXhwb3J0IGNvbnN0IHByaW1hcnlCdG5Gb250U2l6ZURlZmF1bHQgPSAnMTFweCc7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkZvbnRTaXplU21hbGwgPSAnMTBweCc7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkZvbnRTaXplTGFyZ2UgPSAnMTRweCc7XG5leHBvcnQgY29uc3QgcHJpbWFyeUJ0bkJvcmRlciA9ICcwJztcblxuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUJ0bkJnZCA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlCdG5BY3RCZ2QgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5QnRuQ29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5QnRuQWN0Q29sb3IgPSAnI0ZGRkZGRic7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5QnRuQmdkSG92ZXIgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5QnRuQm9yZGVyID0gJzAnO1xuXG5leHBvcnQgY29uc3QgY3RhQnRuQmdkID0gJyMwRjk2NjgnO1xuZXhwb3J0IGNvbnN0IGN0YUJ0bkJnZEhvdmVyID0gJyMxM0IxN0InO1xuZXhwb3J0IGNvbnN0IGN0YUJ0bkFjdEJnZCA9ICcjMTNCMTdCJztcbmV4cG9ydCBjb25zdCBjdGFCdG5Db2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBjdGFCdG5BY3RDb2xvciA9ICcjRkZGRkZGJztcblxuZXhwb3J0IGNvbnN0IGxpbmtCdG5CZ2QgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IGxpbmtCdG5BY3RCZ2QgPSBsaW5rQnRuQmdkO1xuZXhwb3J0IGNvbnN0IGxpbmtCdG5Db2xvciA9ICcjQTBBN0I0JztcbmV4cG9ydCBjb25zdCBsaW5rQnRuQWN0Q29sb3IgPSAnI0YxRjFGMSc7XG5leHBvcnQgY29uc3QgbGlua0J0bkFjdEJnZEhvdmVyID0gbGlua0J0bkJnZDtcbmV4cG9ydCBjb25zdCBsaW5rQnRuQm9yZGVyID0gJzAnO1xuXG5leHBvcnQgY29uc3QgbmVnYXRpdmVCdG5CZ2QgPSBlcnJvckNvbG9yO1xuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQWN0QmdkID0gJyNGRjE5M0UnO1xuZXhwb3J0IGNvbnN0IG5lZ2F0aXZlQnRuQmdkSG92ZXIgPSAnI0ZGMTkzRSc7XG5leHBvcnQgY29uc3QgbmVnYXRpdmVCdG5Cb3JkZXIgPSAnMCc7XG5leHBvcnQgY29uc3QgbmVnYXRpdmVCdG5Db2xvciA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCBuZWdhdGl2ZUJ0bkFjdENvbG9yID0gJyNGRkZGRkYnO1xuXG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5CZ2QgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5BY3RCZ2QgPSAnIzNBNDU1Mic7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5CZ2RIb3ZlciA9ICcjM0E0NTUyJztcbmV4cG9ydCBjb25zdCBmbG9hdGluZ0J0bkJvcmRlciA9ICcwJztcbmV4cG9ydCBjb25zdCBmbG9hdGluZ0J0bkJvcmRlckhvdmVyID0gJzAnO1xuZXhwb3J0IGNvbnN0IGZsb2F0aW5nQnRuQ29sb3IgPSBzdWJ0ZXh0Q29sb3I7XG5leHBvcnQgY29uc3QgZmxvYXRpbmdCdG5BY3RDb2xvciA9IHN1YnRleHRDb2xvckFjdGl2ZTtcblxuZXhwb3J0IGNvbnN0IHNlbGVjdGlvbkJ0bkJnZCA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQWN0QmdkID0gJ3RyYW5zcGFyZW50JztcbmV4cG9ydCBjb25zdCBzZWxlY3Rpb25CdG5Db2xvciA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzZWxlY3Rpb25CdG5BY3RDb2xvciA9ICcjMEY5NjY4JztcbmV4cG9ydCBjb25zdCBzZWxlY3Rpb25CdG5CZ2RIb3ZlciA9ICcjMEY5NjY4JztcbmV4cG9ydCBjb25zdCBzZWxlY3Rpb25CdG5Cb3JkZXIgPSAnMSc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQm9yZGVyQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0aW9uQnRuQm9yZGVyQWN0Q29sb3IgPSAnIzBGOTY2OCc7XG4vLyBTY3JvbGxiYXJcbmV4cG9ydCBjb25zdCBzY3JvbGxiYXJUaHVtYkNvbG9yTFQgPSBsYWJlbENvbG9yTFQ7XG5leHBvcnQgY29uc3Qgc2Nyb2xsYmFyVGh1bWJDb2xvckhvdmVyTFQgPSB0ZXh0Q29sb3JIbExUO1xuLy8gSW5wdXRcbmV4cG9ydCBjb25zdCBpbnB1dEJveEhlaWdodCA9ICczNHB4JztcbmV4cG9ydCBjb25zdCBpbnB1dEJveEhlaWdodFNtYWxsID0gJzI0cHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0Qm94SGVpZ2h0VGlueSA9ICcxOHB4JztcbmV4cG9ydCBjb25zdCBpbnB1dFBhZGRpbmcgPSAnNHB4IDEwcHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0UGFkZGluZ1NtYWxsID0gJzRweCA2cHgnO1xuZXhwb3J0IGNvbnN0IGlucHV0UGFkZGluZ1RpbnkgPSAnMnB4IDRweCc7XG5leHBvcnQgY29uc3QgaW5wdXRGb250U2l6ZSA9ICcxMXB4JztcbmV4cG9ydCBjb25zdCBpbnB1dEZvbnRTaXplU21hbGwgPSAnMTBweCc7XG5leHBvcnQgY29uc3QgaW5wdXRGb250V2VpZ2h0ID0gNTAwO1xuZXhwb3J0IGNvbnN0IGlucHV0QmdkID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IGlucHV0QmdkSG92ZXIgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgaW5wdXRCZ2RBY3RpdmUgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgaW5wdXRCZ2RBY3RpdmVMVCA9ICcjRkZGRkZGJztcblxuZXhwb3J0IGNvbnN0IGlucHV0Qm9yZGVyQ29sb3IgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJIb3ZlckNvbG9yID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IGlucHV0Qm9yZGVySG92ZXJDb2xvckxUID0gc3VidGV4dENvbG9yO1xuZXhwb3J0IGNvbnN0IGlucHV0Qm9yZGVyQWN0aXZlQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3JkZXJBY3RpdmVDb2xvckxUID0gdGV4dENvbG9yTFQ7XG5cbmV4cG9ydCBjb25zdCBpbnB1dENvbG9yID0gJyNBMEE3QjQnO1xuZXhwb3J0IGNvbnN0IGlucHV0Qm9yZGVyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3QgaW5wdXRQbGFjZWhvbGRlckNvbG9yID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IGlucHV0UGxhY2Vob2xkZXJDb2xvckxUID0gc3VidGV4dENvbG9yTFQ7XG5leHBvcnQgY29uc3QgaW5wdXRQbGFjZWhvbGRlckZvbnRXZWlnaHQgPSA0MDA7XG5leHBvcnQgY29uc3QgaW5wdXRCb3hTaGFkb3cgPSAnbm9uZSc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3hTaGFkb3dBY3RpdmUgPSAnbm9uZSc7XG5leHBvcnQgY29uc3QgaW5wdXRCb3hTaGFkb3dBY3RpdmVMVCA9ICdub25lJztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlJbnB1dEJnZCA9ICcjMjQyNzMwJztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlJbnB1dEJnZEhvdmVyID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0QmdkQWN0aXZlID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IHNlY29uZGFyeUlucHV0Q29sb3IgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3Qgc2Vjb25kYXJ5SW5wdXRCb3JkZXJDb2xvciA9ICcjMjQyNzMwJztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlJbnB1dEJvcmRlckFjdGl2ZUNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duU2VsZWN0SGVpZ2h0ID0gMzA7XG5cbi8vIFNlbGVjdFxuZXhwb3J0IGNvbnN0IHNlbGVjdENvbG9yID0gaW5wdXRDb2xvcjtcbmV4cG9ydCBjb25zdCBzZWxlY3RDb2xvckxUID0gdGl0bGVDb2xvckxUO1xuXG5leHBvcnQgY29uc3Qgc2VsZWN0QWN0aXZlQm9yZGVyQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Rm9udFNpemUgPSAnMTFweCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Rm9udFdlaWdodCA9ICc0MDAnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdEZvbnRXZWlnaHRCb2xkID0gJzUwMCc7XG5cbmV4cG9ydCBjb25zdCBzZWxlY3RDb2xvclBsYWNlSG9sZGVyID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCA9IHNlbGVjdENvbG9yTFQ7XG5leHBvcnQgY29uc3Qgc2VsZWN0QmFja2dyb3VuZCA9IGlucHV0QmdkO1xuZXhwb3J0IGNvbnN0IHNlbGVjdEJhY2tncm91bmRIb3ZlciA9IGlucHV0QmdkSG92ZXI7XG5leHBvcnQgY29uc3Qgc2VsZWN0QmFja2dyb3VuZExUID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdEJhY2tncm91bmRIb3ZlckxUID0gJyNGOEY4RjknO1xuZXhwb3J0IGNvbnN0IHNlbGVjdEJvcmRlckNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHNlbGVjdEJvcmRlckNvbG9yTFQgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Qm9yZGVyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3Qgc2VsZWN0Qm9yZGVyID0gMDtcbmV4cG9ydCBjb25zdCBwYW5lbFRhYkNvbG9yID0gc3VidGV4dENvbG9yO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnTFQgPSAnI0Y4RjhGOSc7XG5leHBvcnQgY29uc3QgZHJvcGRvd25MaXN0U2hhZG93ID0gJzAgNnB4IDEycHggMCByZ2JhKDAsMCwwLDAuMTYpJztcbmV4cG9ydCBjb25zdCBkcm9wZG93bkxpc3RCZ2QgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3QgdG9vbGJhckl0ZW1CZ2RIb3ZlciA9ICcjM0E0NTUyJztcbmV4cG9ydCBjb25zdCB0b29sYmFySXRlbUljb25Ib3ZlciA9IHRleHRDb2xvckhsO1xuZXhwb3J0IGNvbnN0IHRvb2xiYXJJdGVtQm9yZGVySG92ZXIgPSAndHJhbnNwYXJlbnQnO1xuZXhwb3J0IGNvbnN0IHRvb2xiYXJJdGVtQm9yZGVyUmFkZGl1cyA9ICcwcHgnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEJnZExUID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IGRyb3Bkb3duTGlzdEJvcmRlclRvcCA9ICcjMjQyNzMwJztcbmV4cG9ydCBjb25zdCBkcm9wZG93bkxpc3RCb3JkZXJUb3BMVCA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBkcm9wZG93bkxpc3RMaW5lSGVpZ2h0ID0gMjA7XG5leHBvcnQgY29uc3QgZHJvcGRvd25XcmFwcGVyWiA9IDEwMDtcbmV4cG9ydCBjb25zdCBkcm9wZG93bldhcHBlck1hcmdpbiA9IDQ7XG5leHBvcnQgY29uc3QgZG5kT3ZlckJhY2tncm91bmRDb2xvciA9ICdyZ2JhKDEyOCwgMTI4LCAxMjgsIDAuMiknO1xuXG4vLyBTd2l0Y2hcbmV4cG9ydCBjb25zdCBzd2l0Y2hXaWR0aCA9IDI0O1xuZXhwb3J0IGNvbnN0IHN3aXRjaEhlaWdodCA9IDEyO1xuZXhwb3J0IGNvbnN0IHN3aXRjaExhYmVsTWFyZ2luID0gMTI7XG5cbmV4cG9ydCBjb25zdCBzd2l0Y2hUcmFja0JnZCA9ICcjMjkzMjNDJztcbmV4cG9ydCBjb25zdCBzd2l0Y2hUcmFja0JnZEFjdGl2ZSA9IGFjdGl2ZUNvbG9yO1xuZXhwb3J0IGNvbnN0IHN3aXRjaFRyYWNrQm9yZGVyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3Qgc3dpdGNoQnRuQmdkID0gJyM2QTc0ODUnO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bkJnZEFjdGl2ZSA9ICcjRDNEOEUwJztcbmV4cG9ydCBjb25zdCBzd2l0Y2hCdG5Cb3hTaGFkb3cgPSAnMCAycHggNHB4IDAgcmdiYSgwLDAsMCwwLjQwKSc7XG5leHBvcnQgY29uc3Qgc3dpdGNoQnRuQm9yZGVyUmFkaXVzID0gJzAnO1xuZXhwb3J0IGNvbnN0IHN3aXRjaEJ0bldpZHRoID0gMTI7XG5leHBvcnQgY29uc3Qgc3dpdGNoQnRuSGVpZ2h0ID0gMTI7XG5cbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlTd2l0Y2hUcmFja0JnZCA9ICcjMjQyNzMwJztcbmV4cG9ydCBjb25zdCBzZWNvbmRhcnlTd2l0Y2hCdG5CZ2QgPSAnIzNBNDE0Qyc7XG5cbi8vIENoZWNrYm94XG5leHBvcnQgY29uc3QgY2hlY2tib3hXaWR0aCA9IDE2O1xuZXhwb3J0IGNvbnN0IGNoZWNrYm94SGVpZ2h0ID0gMTY7XG5leHBvcnQgY29uc3QgY2hlY2tib3hNYXJnaW4gPSAxMjtcbmV4cG9ydCBjb25zdCBjaGVja2JveEJvcmRlckNvbG9yID0gc2VsZWN0Qm9yZGVyQ29sb3I7XG5leHBvcnQgY29uc3QgY2hlY2tib3hCb3JkZXJSYWRpdXMgPSAnMnB4JztcbmV4cG9ydCBjb25zdCBjaGVja2JveEJvcmRlckNvbG9yTFQgPSBzZWxlY3RCb3JkZXJDb2xvckxUO1xuZXhwb3J0IGNvbnN0IGNoZWNrYm94Qm94QmdkID0gJ3doaXRlJztcbmV4cG9ydCBjb25zdCBjaGVja2JveEJveEJnZENoZWNrZWQgPSBwcmltYXJ5QnRuQmdkO1xuXG4vLyBSYWRpb1xuZXhwb3J0IGNvbnN0IHJhZGlvUmFkaXVzID0gODtcbmV4cG9ydCBjb25zdCByYWRpb0JvcmRlclJhZGl1cyA9IDEwMDtcbmV4cG9ydCBjb25zdCByYWRpb0JvcmRlckNvbG9yID0gJ3RyYW5zcGFyZW50JztcbmV4cG9ydCBjb25zdCByYWRpb0J1dHRvblJhZGl1cyA9IDQ7XG5leHBvcnQgY29uc3QgcmFkaW9CdXR0b25CZ2RDb2xvciA9IHN3aXRjaEJ0bkJnZEFjdGl2ZTtcblxuLy8gU2lkZSBQYW5lbFxuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbEhlYWRlckJnID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IHNpZGVQYW5lbEhlYWRlckJvcmRlciA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cE1hcmdpbkJvdHRvbSA9IDEyO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBQYWRkaW5nTGVmdCA9IDE4O1xuXG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsSW5uZXJQYWRkaW5nID0gMTY7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsQm9yZGVyID0gMDtcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxCb3JkZXJDb2xvciA9ICd0cmFuc3BhcmVudCc7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsQmcgPSAnIzI0MjczMCc7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsU2Nyb2xsQmFyV2lkdGggPSAxMDtcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxTY3JvbGxCYXJIZWlnaHQgPSAxMDtcbmV4cG9ydCBjb25zdCBzaWRlQmFyQ2xvc2VCdG5CZ2QgPSBzZWNvbmRhcnlCdG5CZ2Q7XG5leHBvcnQgY29uc3Qgc2lkZUJhckNsb3NlQnRuQ29sb3IgPSAnIzI5MzIzQyc7XG5leHBvcnQgY29uc3Qgc2lkZUJhckNsb3NlQnRuQmdkSG92ZXIgPSBzZWNvbmRhcnlCdG5BY3RCZ2Q7XG5leHBvcnQgY29uc3Qgc2lkZVBhbmVsVGl0bGVGb250c2l6ZSA9ICcyMHB4JztcbmV4cG9ydCBjb25zdCBzaWRlUGFuZWxUaXRsZUxpbmVIZWlnaHQgPSAnMS43MTQyOSc7XG5leHBvcnQgY29uc3QgcGFuZWxCYWNrZ3JvdW5kID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IHBhbmVsQ29udGVudEJhY2tncm91bmQgPSAnIzI5MkUzNic7XG5leHBvcnQgY29uc3QgcGFuZWxCYWNrZ3JvdW5kSG92ZXIgPSAnIzNBNDU1Mic7XG5leHBvcnQgY29uc3QgcGFuZWxIZWFkZXJCb3JkZXJSYWRpdXMgPSAnMHB4JztcbmV4cG9ydCBjb25zdCBjaGlja2xldEJnZCA9ICcjM0E0NTUyJztcbmV4cG9ydCBjb25zdCBjaGlja2xldEJnZExUID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHBhbmVsSGVhZGVySWNvbiA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBwYW5lbEhlYWRlckljb25BY3RpdmUgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgcGFuZWxIZWFkZXJJY29uSG92ZXIgPSB0ZXh0Q29sb3JIbDtcbmV4cG9ydCBjb25zdCBwYW5lbEhlYWRlckhlaWdodCA9IDQ4O1xuZXhwb3J0IGNvbnN0IGxheWVyUGFuZWxIZWFkZXJIZWlnaHQgPSA0ODtcbmV4cG9ydCBjb25zdCBwYW5lbEJveFNoYWRvdyA9ICcwIDZweCAxMnB4IDAgcmdiYSgwLDAsMCwwLjE2KSc7XG5leHBvcnQgY29uc3QgcGFuZWxCb3JkZXJSYWRpdXMgPSAnMnB4JztcbmV4cG9ydCBjb25zdCBwYW5lbEJhY2tncm91bmRMVCA9ICcjRjhGOEY5JztcbmV4cG9ydCBjb25zdCBwYW5lbFRvZ2dsZU1hcmdpblJpZ2h0ID0gMTI7XG5leHBvcnQgY29uc3QgcGFuZWxUb2dnbGVCb3R0b21QYWRkaW5nID0gNjtcblxuZXhwb3J0IGNvbnN0IHBhbmVsQm9yZGVyQ29sb3IgPSAnIzNBNDE0Qyc7XG5leHBvcnQgY29uc3QgcGFuZWxCb3JkZXIgPSBgMXB4IHNvbGlkICR7Ym9yZGVyQ29sb3J9YDtcbmV4cG9ydCBjb25zdCBwYW5lbEJvcmRlckxUID0gYDFweCBzb2xpZCAke2JvcmRlckNvbG9yTFR9YDtcblxuZXhwb3J0IGNvbnN0IG1hcFBhbmVsQmFja2dyb3VuZENvbG9yID0gJyMyNDI3MzAnO1xuZXhwb3J0IGNvbnN0IG1hcFBhbmVsSGVhZGVyQmFja2dyb3VuZENvbG9yID0gJyMyOTMyM0MnO1xuZXhwb3J0IGNvbnN0IHRvb2x0aXBCZyA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCB0b29sdGlwQmdMVCA9ICcjMTg2OUI1JztcbmV4cG9ydCBjb25zdCB0b29sdGlwQ29sb3IgPSB0ZXh0Q29sb3JIbDtcbmV4cG9ydCBjb25zdCB0b29sdGlwQ29sb3JMVCA9ICcjRkZGRkZGJztcbmV4cG9ydCBjb25zdCB0b29sdGlwQm94U2hhZG93ID0gYm94U2hhZG93O1xuZXhwb3J0IGNvbnN0IHRvb2x0aXBGb250U2l6ZSA9ICcxMHB4JztcblxuZXhwb3J0IGNvbnN0IGxheWVyVHlwZUljb25TaXplTCA9IDUwO1xuZXhwb3J0IGNvbnN0IGxheWVyVHlwZUljb25QZEwgPSAxMjtcbmV4cG9ydCBjb25zdCBsYXllclR5cGVJY29uU2l6ZVNNID0gMjg7XG5cbmV4cG9ydCBjb25zdCBsYXllclBhbmVsVG9nZ2xlT3B0aW9uQ29sb3IgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3QgbGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yQWN0aXZlID0gJyNGMEYwRjAnO1xuXG4vLyBTaWRlcGFuZWwgZGl2aWRlclxuZXhwb3J0IGNvbnN0IHNpZGVwYW5lbERpdmlkZXJCb3JkZXIgPSAnMXB4JztcbmV4cG9ydCBjb25zdCBzaWRlcGFuZWxEaXZpZGVyTWFyZ2luID0gMTI7XG5leHBvcnQgY29uc3Qgc2lkZXBhbmVsRGl2aWRlckhlaWdodCA9IDEyO1xuXG4vLyBCb3R0b20gUGFuZWxcbmV4cG9ydCBjb25zdCBib3R0b21Jbm5lclBkU2lkZSA9IDMyO1xuZXhwb3J0IGNvbnN0IGJvdHRvbUlubmVyUGRWZXJ0ID0gNjtcbmV4cG9ydCBjb25zdCBib3R0b21QYW5lbEdhcCA9IDIwO1xuZXhwb3J0IGNvbnN0IGJvdHRvbVBhbmVsR2FwUGFsbSA9IDIwO1xuZXhwb3J0IGNvbnN0IGJvdHRvbVdpZGdldFBhZGRpbmdUb3AgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRQYWRkaW5nUmlnaHQgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRQYWRkaW5nQm90dG9tID0gMzA7XG5leHBvcnQgY29uc3QgYm90dG9tV2lkZ2V0UGFkZGluZ0xlZnQgPSAyMDtcbmV4cG9ydCBjb25zdCBib3R0b21XaWRnZXRCZ2QgPSAnIzI5MzIzQyc7XG4vLyBNb2RhbFxuZXhwb3J0IGNvbnN0IG1vZGFsVGl0bGVDb2xvciA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBtb2RhbFRpdGxlRm9udFNpemUgPSAnMjRweCc7XG5leHBvcnQgY29uc3QgbW9kYWxUaXRsZUZvbnRTaXplU21hbGxlciA9ICcxOHB4JztcbmV4cG9ydCBjb25zdCBtb2RhbEZvb3RlckJnZCA9ICcjRjhGOEY5JztcbmV4cG9ydCBjb25zdCBtb2RhbEltYWdlUGxhY2VIb2xkZXIgPSAnI0REREZFMyc7XG5leHBvcnQgY29uc3QgbW9kYWxQYWRkaW5nID0gJzEwcHggMCc7XG5leHBvcnQgY29uc3QgbW9kYWxMYXRlcmFsUGFkZGluZyA9ICc3MnB4JztcbmV4cG9ydCBjb25zdCBtb2RhbFBvcnRhYmxlTGF0ZXJhbFBhZGRpbmcgPSAnMzZweCc7XG5cbmV4cG9ydCBjb25zdCBtb2RhbE92ZXJMYXlaID0gMTAwMTtcbmV4cG9ydCBjb25zdCBtb2RhbE92ZXJsYXlCZ2QgPSAncmdiYSgwLCAwLCAwLCAwLjUpJztcbmV4cG9ydCBjb25zdCBtb2RhbENvbnRlbnRaID0gMTAwMDI7XG5leHBvcnQgY29uc3QgbW9kYWxGb290ZXJaID0gMTAwMDE7XG5leHBvcnQgY29uc3QgbW9kYWxUaXRsZVogPSAxMDAwMztcbmV4cG9ydCBjb25zdCBtb2RhbEJ1dHRvblogPSAxMDAwNTtcbmV4cG9ydCBjb25zdCBtb2RhbERyb3Bkb3duQmFja2dyb3VuZCA9ICcjRkZGRkZGJztcblxuLy8gTW9kYWwgRGlhbG9nIChEYXJrKVxuZXhwb3J0IGNvbnN0IG1vZGFsRGlhbG9nQmdkID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IG1vZGFsRGlhbG9nQ29sb3IgPSB0ZXh0Q29sb3JIbDtcblxuLy8gU2xpZGVyXG5leHBvcnQgY29uc3Qgc2xpZGVyQmFyQ29sb3IgPSAnIzZBNzQ4NSc7XG5leHBvcnQgY29uc3Qgc2xpZGVyQmFyQmdkID0gJyMzQTQxNEMnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckJhckhvdmVyQ29sb3IgPSAnI0QzRDhFMCc7XG5leHBvcnQgY29uc3Qgc2xpZGVyQmFyUmFkaXVzID0gJzFweCc7XG5leHBvcnQgY29uc3Qgc2xpZGVyQmFySGVpZ2h0ID0gNDtcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVIZWlnaHQgPSAxMjtcbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVXaWR0aCA9IDEyO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZUNvbG9yID0gJyNEM0Q4RTAnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZVRleHRDb2xvciA9IHNsaWRlckhhbmRsZUNvbG9yO1xuZXhwb3J0IGNvbnN0IHNsaWRlckluYWN0aXZlQm9yZGVyQ29sb3IgPSBzbGlkZXJIYW5kbGVDb2xvcjtcbmV4cG9ydCBjb25zdCBzbGlkZXJCb3JkZXJSYWRpdXMgPSAnMCc7XG5cbmV4cG9ydCBjb25zdCBzbGlkZXJIYW5kbGVIb3ZlckNvbG9yID0gJyNGRkZGRkYnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZUFmdGVyQ29udGVudCA9ICcnO1xuZXhwb3J0IGNvbnN0IHNsaWRlckhhbmRsZVNoYWRvdyA9ICcwIDJweCA0cHggMCByZ2JhKDAsMCwwLDAuNDApJztcbmV4cG9ydCBjb25zdCBzbGlkZXJJbnB1dEhlaWdodCA9IDI0O1xuZXhwb3J0IGNvbnN0IHNsaWRlcklucHV0V2lkdGggPSA1NjtcbmV4cG9ydCBjb25zdCBzbGlkZXJJbnB1dEZvbnRTaXplID0gJzEwcHgnO1xuZXhwb3J0IGNvbnN0IHNsaWRlcklucHV0UGFkZGluZyA9ICc0cHggNnB4JztcbmV4cG9ydCBjb25zdCBzbGlkZXJNYXJnaW5Ub3BJc1RpbWUgPSAtMTI7XG5leHBvcnQgY29uc3Qgc2xpZGVyTWFyZ2luVG9wID0gMTI7XG5leHBvcnQgY29uc3Qgc2xpZGVyTWFyZ2luQm90dG9tID0gMTI7XG5cbi8vIEdlb2NvZGVyXG5leHBvcnQgY29uc3QgZ2VvY29kZXJXaWR0aCA9IDM2MDtcbmV4cG9ydCBjb25zdCBnZW9jb2RlclRvcCA9IDIwO1xuZXhwb3J0IGNvbnN0IGdlb2NvZGVyUmlnaHQgPSAxMjtcbmV4cG9ydCBjb25zdCBnZW9jb2RlcklucHV0SGVpZ2h0ID0gMzY7XG5cbi8vIE1hcCBDb250cm9sXG5leHBvcnQgY29uc3QgbWFwQ29udHJvbFRvcCA9IDUyO1xuXG4vLyBQbG90XG5leHBvcnQgY29uc3QgcmFuZ2VCcnVzaEJnZCA9ICcjM0E0MTRDJztcbmV4cG9ydCBjb25zdCBoaXN0b2dyYW1GaWxsSW5SYW5nZSA9IGFjdGl2ZUNvbG9yO1xuZXhwb3J0IGNvbnN0IGhpc3RvZ3JhbUZpbGxPdXRSYW5nZSA9IHNsaWRlckJhckNvbG9yO1xuZXhwb3J0IGNvbnN0IGhpc3RvZ3JhbU92ZXJsYXlDb2xvciA9ICcjOTk5OTk5JztcbmV4cG9ydCBjb25zdCBoaXN0b2dyYW1CcmVha0xpbmVDb2xvciA9ICcjNTA1YjdjJztcbmV4cG9ydCBjb25zdCBheGlzRm9udFNpemUgPSAnMTBweCc7XG5leHBvcnQgY29uc3QgYXhpc0ZvbnRDb2xvciA9IHRleHRDb2xvcjtcbmV4cG9ydCBjb25zdCB0aW1lVGl0bGVGb250U2l6ZSA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RNYXJnaW4gPSB7dG9wOiAxMiwgYm90dG9tOiAwLCBsZWZ0OiAwLCByaWdodDogMH07XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90TWFyZ2luTGFyZ2UgPSB7dG9wOiAxOCwgYm90dG9tOiAwLCBsZWZ0OiAwLCByaWdodDogMH07XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90SCA9IDYyO1xuZXhwb3J0IGNvbnN0IHJhbmdlUGxvdENvbnRhaW5lckggPSA3ODtcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RITGFyZ2UgPSAxMDI7XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90SExhcmdlUGFsbSA9IDEwMjtcbmV4cG9ydCBjb25zdCByYW5nZVBsb3RDb250YWluZXJITGFyZ2UgPSAxMjA7XG5leHBvcnQgY29uc3QgcmFuZ2VQbG90Q29udGFpbmVySExhcmdlUGFsbSA9IDEyMDtcblxuLy8gTm90aWZpY2F0aW9uXG5leHBvcnQgY29uc3Qgbm90aWZpY2F0aW9uQ29sb3JzID0ge1xuICBpbmZvOiAnIzI3NmVmMScsXG4gIGVycm9yOiAnI2YyNTEzOCcsXG4gIHN1Y2Nlc3M6ICcjNDdiMjc1JyxcbiAgd2FybmluZzogJyNmZmMwNDMnXG59O1xuXG5leHBvcnQgY29uc3Qgbm90aWZpY2F0aW9uUGFuZWxXaWR0aCA9IDI0MDtcbmV4cG9ydCBjb25zdCBub3RpZmljYXRpb25QYW5lbEl0ZW1XaWR0aCA9IG5vdGlmaWNhdGlvblBhbmVsV2lkdGggLSA2MDtcbmV4cG9ydCBjb25zdCBub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQgPSA2MDtcblxuLy8gRGF0YSBUYWJsZVxuY29uc3QgaGVhZGVyUm93SGVpZ2h0ID0gNzA7XG5jb25zdCBoZWFkZXJTdGF0c0NvbnRyb2xIZWlnaHQgPSAzMjtcbmNvbnN0IGhlYWRlclJvd1dTdGF0c0hlaWdodCA9IDM2NDtcbmNvbnN0IHJvd0hlaWdodCA9IDMyO1xuY29uc3QgaGVhZGVyUGFkZGluZ1RvcCA9IDY7XG5jb25zdCBoZWFkZXJQYWRkaW5nQm90dG9tID0gODtcbmNvbnN0IGNlbGxQYWRkaW5nU2lkZSA9IDEwO1xuY29uc3QgZWRnZUNlbGxQYWRkaW5nU2lkZSA9IDEwO1xuY29uc3QgY2VsbEZvbnRTaXplID0gMTA7XG5jb25zdCBncmlkUGFkZGluZ1NpZGUgPSAyNDtcbmNvbnN0IGhlYWRlckNlbGxCYWNrZ3JvdW5kID0gJyNGRkZGRkYnO1xuY29uc3QgaGVhZGVyQ2VsbEJvcmRlckNvbG9yID0gJyNFMEUwRTAnO1xuY29uc3QgaGVhZGVyQ2VsbFN0YXRzQmFja2dyb3VuZCA9ICcjRjhGQUZGJztcbmNvbnN0IGhlYWRlckNlbGxTdGF0c0NvbnRyb2xCYWNrZ3JvdW5kID0gJyNFQUYwRkYnO1xuY29uc3QgaGVhZGVyQ2VsbEljb25Db2xvciA9ICcjNjY2NjY2JztcbmNvbnN0IGNlbGxCb3JkZXJDb2xvciA9ICcjRTBFMEUwJztcbmNvbnN0IGV2ZW5Sb3dCYWNrZ3JvdW5kID0gJyNGRkZGRkYnO1xuY29uc3Qgb2RkUm93QmFja2dyb3VuZCA9ICcjRjdGN0Y3JztcbmNvbnN0IG9wdGlvbkJ1dHRvbkNvbG9yID0gJyM2QTc0ODUnO1xuY29uc3QgcGlubmVkR3JpZEJvcmRlckNvbG9yID0gJyNFMEUwRTAnO1xuXG4vLyBGbG9hdGluZyBUaW1lIGRpc3BsYXlcbmNvbnN0IHRpbWVEaXNwbGF5Qm9yZGVyUmFkaXVzID0gMzI7XG5jb25zdCB0aW1lRGlzcGxheUhlaWdodCA9IDY0O1xuY29uc3QgdGltZURpc3BsYXlNaW5XaWR0aCA9IDE3NjtcbmNvbnN0IHRpbWVEaXNwbGF5T3BhY2l0eSA9IDAuODtcbmNvbnN0IHRpbWVEaXNwbGF5UGFkZGluZyA9ICcwIDI0cHgnO1xuXG4vLyBFeHBvcnQgbWFwIG1vZGFsXG5jb25zdCBleHBvcnRJbnRyYVNlY3Rpb25NYXJnaW4gPSAnOCc7XG5cbi8vIHByb2dyZXNzIGJhclxuY29uc3QgcHJvZ3Jlc3NCYXJDb2xvciA9IHByaW1hcnlCdG5CZ2Q7XG5jb25zdCBwcm9ncmVzc0JhclRyYWNrQ29sb3IgPSAnI0U4RThFOCc7XG4vLyBBY3Rpb24gUGFuZWxcbmV4cG9ydCBjb25zdCBhY3Rpb25QYW5lbFdpZHRoID0gMTEwO1xuZXhwb3J0IGNvbnN0IGFjdGlvblBhbmVsSGVpZ2h0ID0gMzI7XG5cbi8vIFN0eWxlZCBUb2tlblxuZXhwb3J0IGNvbnN0IGZpZWxkVG9rZW5SaWdodE1hcmdpbiA9IDQ7XG5leHBvcnQgY29uc3QgZmllbGRUb2tlbkhlaWdodCA9IDIwO1xuZXhwb3J0IGNvbnN0IGZpZWxkVG9rZW5XaWR0aCA9IDQwO1xuXG5leHBvcnQgY29uc3QgdGV4dFRydW5jYXRlID0ge1xuICBtYXhXaWR0aDogJzEwMCUnLFxuICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gIHRleHRPdmVyZmxvdzogJ2VsbGlwc2lzJyxcbiAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXG4gIHdvcmRXcmFwOiAnbm9ybWFsJ1xufTtcblxuLy8gbGF5ZXJDb25maWdHcm91cExhYmVsXG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cExhYmVsQm9yZGVyTGVmdCA9ICcycHgnO1xuZXhwb3J0IGNvbnN0IGxheWVyQ29uZmlnR3JvdXBMYWJlbE1hcmdpbiA9ICctMTJweCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWdHcm91cExhYmVsUGFkZGluZyA9ICcxMHB4JztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwQ29sb3IgPSAndHJhbnNwYXJlbnQnO1xuXG4vLyBsYXllckNvbmZpZ0dyb3VwTGFiZWwgbGFiZWxcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwTGFiZWxMYWJlbE1hcmdpbiA9ICcwJztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ0dyb3VwTGFiZWxMYWJlbEZvbnRTaXplID0gJzEycHgnO1xuXG4vLyBzdHlsZWRDb25maWdHcm91cEhlYWRlclxuZXhwb3J0IGNvbnN0IHN0eWxlZENvbmZpZ0dyb3VwSGVhZGVyQm9yZGVyID0gJzJweCc7XG5cbi8vIGxheWVyQ29uZmlndXJhdG9yXG5cbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ3VyYXRvckJvcmRlciA9ICcwJztcbmV4cG9ydCBjb25zdCBsYXllckNvbmZpZ3VyYXRvckJvcmRlckNvbG9yID0gJyc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWd1cmF0b3JNYXJnaW4gPSAnMTJweCc7XG5leHBvcnQgY29uc3QgbGF5ZXJDb25maWd1cmF0b3JQYWRkaW5nID0gJzEycHggMCA4cHggMCc7XG4vLyBUaGlzIGJyZWFrcG9pbnRzIGFyZSB1c2VkIGZvciByZXNwb25zaXZlIGRlc2lnblxuZXhwb3J0IGNvbnN0IGJyZWFrUG9pbnRzID0ge1xuICBwYWxtOiA1ODgsXG4gIGRlc2s6IDc2OFxufTtcblxuZXhwb3J0IGNvbnN0IGFpQXNzaXN0YW50UGFuZWxXaWR0aCA9IDQxNTtcblxuLy8gZWZmZWN0IG1hbmFnZXJcbmV4cG9ydCBjb25zdCBlZmZlY3RDb25maWd1cmF0b3JNYXJnaW4gPSAnMThweCAwIDE4cHggMCc7XG5leHBvcnQgY29uc3QgZWZmZWN0Q29uZmlndXJhdG9yUGFkZGluZyA9ICcwIDAgMCAxOHB4JztcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbFdpZHRoID0gMzQ1O1xuZXhwb3J0IGNvbnN0IGVmZmVjdFBhbmVsSGVpZ2h0ID0gMTgwO1xuZXhwb3J0IGNvbnN0IGVmZmVjdFBhbmVsUGFkZGluZ1NpZGUgPSAxNjtcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbFBhZGRpbmdUb3AgPSAxNjtcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbEFkZEVmZmVjdEZvbnRGYW1pbHkgPSBidG5Gb250RmFtaWx5O1xuXG5leHBvcnQgY29uc3QgZWZmZWN0VHlwZUljb25NYXJnaW5TaWRlID0gNjtcbmV4cG9ydCBjb25zdCBlZmZlY3RUeXBlSWNvblNpemVMID0gNTY7XG5cbmV4cG9ydCBjb25zdCBlZmZlY3RUeXBlSWNvbkJnSG92ZXJDb2xvciA9ICcjMjYyRDQwJztcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbFRleHRNYWluID0gJyNGN0Y3RjcnO1xuZXhwb3J0IGNvbnN0IGVmZmVjdFBhbmVsVGV4dFNlY29uZGFyeTEgPSAnI0EwQTdCNCc7XG5leHBvcnQgY29uc3QgZWZmZWN0UGFuZWxUZXh0U2Vjb25kYXJ5MiA9ICcjNkE3NDg1JztcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbFRleHRTZWNvbmRhcnkzID0gJyM1QTY0NzUnO1xuXG5leHBvcnQgY29uc3QgZWZmZWN0UGFuZWxFbGVtZW50Q29sb3IgPSBpbnB1dEJnZDtcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbEVsZW1lbnRDb2xvckFjdGl2ZSA9ICcjMzIzODQzJztcbmV4cG9ydCBjb25zdCBlZmZlY3RQYW5lbEVsZW1lbnRDb2xvckhvdmVyZWQgPSBpbnB1dEJnZEhvdmVyO1xuZXhwb3J0IGNvbnN0IGVmZmVjdFBhbmVsRWxlbWVudENvbG9yU2VsZWN0ZWQgPSAnIzQ1NGU1ZCc7XG5leHBvcnQgY29uc3QgZWZmZWN0UGFuZWxFbGVtZW50Q29sb3JTdW4gPSAnI0Y3QjI2Qic7XG5cbi8vIHJpZ2h0IHBhbmVsXG5leHBvcnQgY29uc3QgcmlnaHRQYW5lbE1hcmdpblRvcCA9IDEyO1xuZXhwb3J0IGNvbnN0IHJpZ2h0UGFuZWxNYXJnaW5SaWdodCA9IDEyO1xuXG4vLyB0aGVtZSBpcyBwYXNzZWQgdG8ga2VwbGVyLmdsIHdoZW4gaXQncyBtb3VudGVkLFxuLy8gaXQgaXMgdXNlZCBieSBzdHlsZWQtY29tcG9uZW50cyB0byBwYXNzIGFsb25nIHRvXG4vLyBhbGwgY2hpbGQgY29tcG9uZW50c1xuXG5jb25zdCBpbnB1dCA9IGNzczxJbnB1dFByb3BzPmBcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRQbGFjZWhvbGRlckNvbG9yfTtcbiAgICBmb250LXdlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dFBsYWNlaG9sZGVyRm9udFdlaWdodH07XG4gIH1cblxuICAvKiBEaXNhYmxlIEFycm93cyBvbiBOdW1iZXIgSW5wdXRzICovXG4gIDo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJnZH07XG4gIGJvcmRlcjogMXB4IHNvbGlkXG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuYWN0aXZlXG4gICAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJBY3RpdmVDb2xvclxuICAgICAgICA6IHByb3BzLmVycm9yXG4gICAgICAgID8gcHJvcHMudGhlbWUuZXJyb3JDb2xvclxuICAgICAgICA6IHByb3BzLnRoZW1lLmlucHV0QmdkfTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBjYXJldC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yfTtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRDb2xvcn07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZvbnQtc2l6ZTogJHtwcm9wcyA9PlxuICAgIFsnc21hbGwnLCAndGlueSddLmluY2x1ZGVzKHByb3BzLnNpemUpXG4gICAgICA/IHByb3BzLnRoZW1lLmlucHV0Rm9udFNpemVTbWFsbFxuICAgICAgOiBwcm9wcy50aGVtZS5pbnB1dEZvbnRTaXplfTtcbiAgZm9udC13ZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRGb250V2VpZ2h0fTtcbiAgZm9udC1mYW1pbHk6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZm9udEZhbWlseX07XG4gIGhlaWdodDogJHtwcm9wcyA9PlxuICAgIHByb3BzLnNpemUgPT09ICdzbWFsbCdcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHRTbWFsbFxuICAgICAgOiBwcm9wcy5zaXplID09PSAndGlueSdcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRCb3hIZWlnaHRUaW55XG4gICAgICA6IHByb3BzLnRoZW1lLmlucHV0Qm94SGVpZ2h0fTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBvdXRsaW5lOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAke3Byb3BzID0+XG4gICAgcHJvcHMuc2l6ZSA9PT0gJ3NtYWxsJ1xuICAgICAgPyBwcm9wcy50aGVtZS5pbnB1dFBhZGRpbmdTbWFsbFxuICAgICAgOiBwcm9wcy5zaXplID09PSAndGlueSdcbiAgICAgID8gcHJvcHMudGhlbWUuaW5wdXRQYWRkaW5nVGlueVxuICAgICAgOiBwcm9wcy50aGVtZS5pbnB1dFBhZGRpbmd9O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdHJhbnNpdGlvbjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50cmFuc2l0aW9ufTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICBwb2ludGVyLWV2ZW50czogJHtwcm9wcyA9PiAocHJvcHMuZGlzYWJsZWQgPyAnbm9uZScgOiAnYWxsJyl9O1xuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy5kaXNhYmxlZCA/IDAuNSA6IDEpfTtcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJveFNoYWRvd307XG5cbiAgOmhvdmVyIHtcbiAgICBjdXJzb3I6ICR7cHJvcHMgPT4gKHByb3BzLnR5cGUgPT09ICdudW1iZXInIHx8IHByb3BzLnR5cGUgPT09ICd0ZXh0JyA/ICd0ZXh0JyA6ICdwb2ludGVyJyl9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT5cbiAgICAgIHByb3BzLmFjdGl2ZSA/IHByb3BzLnRoZW1lLmlucHV0QmdkQWN0aXZlIDogcHJvcHMudGhlbWUuaW5wdXRCZ2RIb3Zlcn07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+XG4gICAgICBwcm9wcy5hY3RpdmUgPyBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yIDogcHJvcHMudGhlbWUuaW5wdXRCb3JkZXJIb3ZlckNvbG9yfTtcbiAgfVxuXG4gIDphY3RpdmUsXG4gIDpmb2N1cyxcbiAgJi5mb2N1cyxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCZ2RBY3RpdmV9O1xuICAgIGJvcmRlci1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yfTtcbiAgICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm94U2hhZG93QWN0aXZlfTtcbiAgfVxuYDtcblxuY29uc3QgaW5wdXRMVCA9IGNzc2BcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRQbGFjZWhvbGRlckNvbG9yTFR9O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbiAgJHtpbnB1dH1cblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdEJhY2tncm91bmRMVH07XG4gIGJvcmRlcjogMXB4IHNvbGlkXG4gICAgJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuYWN0aXZlXG4gICAgICAgID8gcHJvcHMudGhlbWUuc2VsZWN0QWN0aXZlQm9yZGVyQ29sb3JcbiAgICAgICAgOiBwcm9wcy5lcnJvclxuICAgICAgICA/IHByb3BzLnRoZW1lLmVycm9yQ29sb3JcbiAgICAgICAgOiBwcm9wcy50aGVtZS5zZWxlY3RCb3JkZXJDb2xvckxUfTtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0Q29sb3JMVH07XG4gIGNhcmV0LWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0Qm9yZGVyQWN0aXZlQ29sb3JMVH07XG5cbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkQWN0aXZlTFR9O1xuICAgIGN1cnNvcjogJHtwcm9wcyA9PiAoWydudW1iZXInLCAndGV4dCddLmluY2x1ZGVzKHByb3BzLnR5cGUpID8gJ3RleHQnIDogJ3BvaW50ZXInKX07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+XG4gICAgICBwcm9wcy5hY3RpdmUgPyBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yTFQgOiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckhvdmVyQ29sb3JMVH07XG4gIH1cblxuICA6YWN0aXZlLFxuICA6Zm9jdXMsXG4gICYuZm9jdXMsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0QmdkQWN0aXZlTFR9O1xuICAgIGJvcmRlci1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yTFR9O1xuICAgIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRCb3hTaGFkb3dBY3RpdmVMVH07XG4gIH1cbmA7XG5cbmNvbnN0IHNlY29uZGFyeUlucHV0ID0gY3NzPFNlY29uZGFyeUlucHV0UHJvcHM+YFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0fVxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dENvbG9yfTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dEJnZH07XG4gIGJvcmRlcjogMXB4IHNvbGlkXG4gICAgJHtwcm9wcyA9PiAocHJvcHMuZXJyb3IgPyBwcm9wcy50aGVtZS5lcnJvckNvbG9yIDogcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRCb3JkZXJDb2xvcil9O1xuXG4gIDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXRCZ2RIb3Zlcn07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0QmdkSG92ZXJ9O1xuICB9XG5cbiAgOmFjdGl2ZSxcbiAgOmZvY3VzLFxuICAmLmZvY3VzLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWNvbmRhcnlJbnB1dEJnZEFjdGl2ZX07XG4gICAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0Qm9yZGVyQWN0aXZlQ29sb3J9O1xuICB9XG5gO1xuXG5jb25zdCBjaGlja2xldGVkSW5wdXRDb250YWluZXIgPSBjc3NgXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBoZWlnaHQ6IGF1dG87XG4gIGp1c3RpZnktY29udGVudDogc3RhcnQ7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgcGFkZGluZzogMHB4IDdweCAwcHggNHB4O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gIC5jaGlja2xldGVkLWlucHV0X19wbGFjZWhvbGRlciB7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgbWFyZ2luOiA0cHg7XG4gIH1cbmA7XG5cbmNvbnN0IGNoaWNrbGV0ZWRJbnB1dCA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dH0gJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGlja2xldGVkSW5wdXRDb250YWluZXJ9O1xuYDtcblxuY29uc3QgY2hpY2tsZXRlZElucHV0TFQgPSBjc3NgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRMVH0gJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGlja2xldGVkSW5wdXRDb250YWluZXJ9O1xuYDtcblxuY29uc3Qgc2Vjb25kYXJ5Q2hpY2tsZXRlZElucHV0ID0gY3NzYFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeUlucHV0fSAke3Byb3BzID0+IHByb3BzLnRoZW1lLmNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lcn07XG5gO1xuXG5jb25zdCBpbmxpbmVJbnB1dCA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dH0gY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9yfTtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsZXR0ZXItc3BhY2luZzogMC40M3B4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nLWxlZnQ6IDRweDtcbiAgbWFyZ2luLWxlZnQ6IC00cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICA6aG92ZXIge1xuICAgIGhlaWdodDogMjRweDtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgfVxuXG4gIDphY3RpdmUsXG4gIC5hY3RpdmUsXG4gIDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dEJvcmRlckFjdGl2ZUNvbG9yfTtcbiAgfVxuYDtcblxuY29uc3Qgc3dpdGNoVHJhY2sgPSBjc3M8U3dpdGNoYWJsZVByb3BzPmBcbiAgYmFja2dyb3VuZDogJHtwcm9wcyA9PlxuICAgIHByb3BzLmNoZWNrZWQgPyBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja0JnZEFjdGl2ZSA6IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkfTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6ICR7cHJvcHMgPT4gLXByb3BzLnRoZW1lLnN3aXRjaExhYmVsTWFyZ2lufXB4O1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFdpZHRofXB4O1xuICBoZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0fXB4O1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQm9yZGVyUmFkaXVzfTtcbmA7XG5cbmNvbnN0IHN3aXRjaEJ1dHRvbiA9IGNzczxTd2l0Y2hhYmxlUHJvcHM+YFxuICB0cmFuc2l0aW9uOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRyYW5zaXRpb259O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJHtwcm9wcyA9PiAocHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0IC0gcHJvcHMudGhlbWUuc3dpdGNoQnRuSGVpZ2h0KSAvIDJ9cHg7XG4gIGxlZnQ6ICR7cHJvcHMgPT5cbiAgICAocHJvcHMuY2hlY2tlZFxuICAgICAgPyBwcm9wcy50aGVtZS5zd2l0Y2hXaWR0aCAvIDJcbiAgICAgIDogKHByb3BzLnRoZW1lLnN3aXRjaEhlaWdodCAtIHByb3BzLnRoZW1lLnN3aXRjaEJ0bkhlaWdodCkgLyAyKSAtXG4gICAgcHJvcHMudGhlbWUuc3dpdGNoTGFiZWxNYXJnaW59cHg7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ0bkhlaWdodH1weDtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoQnRuV2lkdGh9cHg7XG4gIGJhY2tncm91bmQ6ICR7cHJvcHMgPT5cbiAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkfTtcbiAgYm94LXNoYWRvdzogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hCdG5Cb3hTaGFkb3d9O1xuICBib3JkZXItcmFkaXVzOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ0bkJvcmRlclJhZGl1c307XG5gO1xuXG5jb25zdCBpbnB1dFN3aXRjaCA9IGNzc2BcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbGluZS1oZWlnaHQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoSGVpZ2h0fXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoV2lkdGh9cHg7XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja307XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoQnV0dG9ufTtcbiAgfVxuYDtcblxuLy8gVGhpcyBpcyBhIGxpZ2h0IHZlcnNpb24gY2hlY2tib3hcbmNvbnN0IGNoZWNrYm94Qm94ID0gY3NzPFN3aXRjaGFibGVQcm9wcz5gXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hXaWR0aH1weDtcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmNoZWNrYm94SGVpZ2h0fXB4O1xuICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+XG4gICAgcHJvcHMuY2hlY2tlZCA/IHByb3BzLnRoZW1lLmNoZWNrYm94Qm94QmdkQ2hlY2tlZCA6IHByb3BzLnRoZW1lLmNoZWNrYm94Qm94QmdkfTtcbiAgYm9yZGVyOiAxcHggc29saWRcbiAgICAke3Byb3BzID0+XG4gICAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuY2hlY2tib3hCb3hCZ2RDaGVja2VkIDogcHJvcHMudGhlbWUuY2hlY2tib3hCb3JkZXJDb2xvcn07XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29udGVudDogJyc7XG5gO1xuXG5jb25zdCBjaGVja2JveENoZWNrID0gY3NzPFN3aXRjaGFibGVQcm9wcz5gXG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDVweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHdoaXRlO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHdoaXRlO1xuICB0b3A6IDRweDtcbiAgbGVmdDogM3B4O1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBvcGFjaXR5OiAke3Byb3BzID0+IChwcm9wcy5jaGVja2VkID8gMSA6IDApfTtcbiAgY29udGVudDogJyc7XG5gO1xuXG5jb25zdCBpbnB1dENoZWNrYm94ID0gY3NzYFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICBtYXJnaW4tbGVmdDogLSR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc3dpdGNoTGFiZWxNYXJnaW59cHg7XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5jaGVja2JveEJveH07XG4gIH1cblxuICA6YWZ0ZXIge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hDaGVja307XG4gIH1cbmA7XG5cbmNvbnN0IHJhZGlvVHJhY2sgPSBjc3NgXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuY2hlY2tib3hCb3h9XG4gIHdpZHRoOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvUmFkaXVzICogMn1weDtcbiAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvUmFkaXVzICogMn1weDtcbiAgYm9yZGVyLXJhZGl1czogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0JvcmRlclJhZGl1c31weDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja0JnZH07XG4gIGJvcmRlci1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0JvcmRlckNvbG9yfTtcbmA7XG5cbmNvbnN0IHJhZGlvQnV0dG9uID0gY3NzYFxuICBib3JkZXI6IDA7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB0b3A6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9SYWRpdXMgLSBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1c31weDtcbiAgbGVmdDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1JhZGl1cyAtIHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uUmFkaXVzfXB4O1xuICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1cyAqIDJ9cHg7XG4gIGhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvblJhZGl1cyAqIDJ9cHg7XG4gIGJvcmRlci1yYWRpdXM6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9CdXR0b25SYWRpdXMgKiAyfXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvQnV0dG9uQmdkQ29sb3J9O1xuYDtcblxuY29uc3QgaW5wdXRSYWRpbyA9IGNzc2BcbiAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5pbnB1dENoZWNrYm94fVxuICBwYWRkaW5nLWxlZnQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucmFkaW9SYWRpdXMgKiAyICsgOH1weDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpbmUtaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvUmFkaXVzICogMn1weDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1RyYWNrfVxuICB9XG5cbiAgOmFmdGVyIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnJhZGlvQnV0dG9ufVxuICB9XG5gO1xuXG5jb25zdCBzZWNvbmRhcnlSYWRpbyA9IGNzczxTd2l0Y2hhYmxlUHJvcHM+YFxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmlucHV0UmFkaW99XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb1RyYWNrfSBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlY29uZGFyeVN3aXRjaFRyYWNrQmdkfTtcbiAgfVxuXG4gIDphZnRlciB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5yYWRpb0J1dHRvbn1cbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+XG4gICAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc2Vjb25kYXJ5U3dpdGNoQnRuQmdkfTtcbiAgfVxuYDtcblxuY29uc3Qgc2Vjb25kYXJ5U3dpdGNoID0gY3NzPFN3aXRjaGFibGVQcm9wcz5gXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuaW5wdXRTd2l0Y2h9XG5cbiAgOmJlZm9yZSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zd2l0Y2hUcmFja30gYmFja2dyb3VuZDogJHtwcm9wcyA9PlxuICAgICAgcHJvcHMuY2hlY2tlZCA/IHByb3BzLnRoZW1lLnN3aXRjaFRyYWNrQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2R9O1xuICB9XG5cbiAgOmFmdGVyIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN3aXRjaEJ1dHRvbn1cbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+XG4gICAgICBwcm9wcy5jaGVja2VkID8gcHJvcHMudGhlbWUuc3dpdGNoQnRuQmdkQWN0aXZlIDogcHJvcHMudGhlbWUuc2Vjb25kYXJ5U3dpdGNoQnRuQmdkfTtcbiAgfVxuYDtcblxuY29uc3QgZHJvcGRvd25TY3JvbGxCYXIgPSBjc3NgXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgIGhlaWdodDogMTBweDtcbiAgICB3aWR0aDogMTBweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RCZ2R9O1xuICB9XG5cbiAgOnZlcnRpY2FsOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IGRyb3Bkb3duU2Nyb2xsQmFyTFQgPSBjc3NgXG4gICR7ZHJvcGRvd25TY3JvbGxCYXJ9IDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEJnZExUfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QmdkTFR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNjcm9sbGJhclRodW1iQ29sb3JMVH07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RCZ2RMVH07XG4gIH1cblxuICA6dmVydGljYWw6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Nyb2xsYmFyVGh1bWJDb2xvckhvdmVyTFR9O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuYDtcblxuY29uc3QgZHJvcGRvd25MaXN0QW5jaG9yID0gY3NzYFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zZWxlY3RDb2xvcn07XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICBmb250LXNpemU6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2VsZWN0Rm9udFNpemV9O1xuICBsaW5lLWhlaWdodDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RMaW5lSGVpZ2h0fXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3J9O1xuICB9XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RBbmNob3JMVCA9IGNzc2BcbiAgJHtkcm9wZG93bkxpc3RBbmNob3J9XG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yTFR9O1xuYDtcblxuY29uc3QgZHJvcGRvd25MaXN0U2l6ZSA9IGNzc2BcbiAgZm9udC1zaXplOiAxMXB4O1xuICBwYWRkaW5nOiAzcHggOXB4O1xuICBmb250LXdlaWdodDogNTAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuYDtcblxuY29uc3QgZHJvcGRvd25MaXN0SXRlbSA9IGNzc2BcbiAgJHtkcm9wZG93bkxpc3RTaXplfSAmLmhvdmVyLFxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RIaWdobGlnaHRCZ307XG5cbiAgICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICB9XG4gIH1cbiAgJi5zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RIaWdobGlnaHRCZ307XG4gIH1cbmA7XG5cbmNvbnN0IGRyb3Bkb3duTGlzdEl0ZW1MVCA9IGNzc2BcbiAgJHtkcm9wZG93bkxpc3RTaXplfVxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JMVH07XG5cbiAgJi5ob3ZlcixcbiAgJjpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsTFR9O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0SGlnaGxpZ2h0QmdMVH07XG5cbiAgICAubGlzdF9faXRlbV9fYW5jaG9yIHtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNlbGVjdENvbG9yTFR9O1xuICAgIH1cbiAgfVxuICAmLnNlbGVjdGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnTFR9O1xuICB9XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RIZWFkZXIgPSBjc3NgXG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgcGFkZGluZzogNXB4IDlweDtcbiAgY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3RTZWN0aW9uID0gY3NzYFxuICBwYWRkaW5nOiAwIDAgNHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUubGFiZWxDb2xvcn07XG5gO1xuXG5jb25zdCBkcm9wZG93bkxpc3QgPSBjc3NgXG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDI4MHB4O1xuICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdFNoYWRvd307XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcblxuICAubGlzdF9fc2VjdGlvbiB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RTZWN0aW9ufTtcbiAgfVxuICAubGlzdF9faGVhZGVyIHtcbiAgICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duTGlzdEhlYWRlcn07XG4gIH1cblxuICAubGlzdF9faXRlbSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtfTtcbiAgfVxuXG4gIC5saXN0X19pdGVtX19hbmNob3Ige1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25MaXN0QW5jaG9yfTtcbiAgfVxuXG4gICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25TY3JvbGxCYXJ9O1xuYDtcblxuY29uc3QgZHJvcGRvd25MaXN0TFQgPSBjc3NgXG4gICR7ZHJvcGRvd25MaXN0fSAubGlzdF9faXRlbSB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RJdGVtTFR9O1xuICB9XG5cbiAgLmxpc3RfX2l0ZW1fX2FuY2hvciB7XG4gICAgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bkxpc3RBbmNob3JMVH07XG4gIH1cblxuICAke3Byb3BzID0+IHByb3BzLnRoZW1lLmRyb3Bkb3duU2Nyb2xsQmFyTFR9O1xuYDtcbmNvbnN0IHNpZGVQYW5lbFNjcm9sbEJhciA9IGNzc2BcbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbFNjcm9sbEJhckhlaWdodH1weDtcbiAgICB3aWR0aDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zaWRlUGFuZWxTY3JvbGxCYXJXaWR0aH1weDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItY29ybmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbEJnfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2lkZVBhbmVsQmd9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNpZGVQYW5lbEJnfTtcblxuICAgIDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3QgcGFuZWxEcm9wZG93blNjcm9sbEJhciA9IGNzc2BcbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIHdpZHRoOiAxMHB4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci1jb3JuZXIge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gICAgYm9yZGVyOiAzcHggc29saWQgJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmR9O1xuICAgIDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuYDtcblxuY29uc3Qgc2Nyb2xsQmFyID0gY3NzYFxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgd2lkdGg6IDEwcHg7XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmR9O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kfTtcblxuICAgIDp2ZXJ0aWNhbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG5cbiAgICA6aG9yaXpvbnRhbDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB9XG4gIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBtb2RhbFNjcm9sbEJhciA9IGNzc2BcbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDE0cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG5cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbiAgOjotd2Via2l0LXNjcm9sbGJhci10cmFjazpob3Jpem9udGFsIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgfVxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNjcm9sbGJhclRodW1iQ29sb3JMVH07XG4gICAgYm9yZGVyOiA0cHggc29saWQgd2hpdGU7XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLWNvcm5lciB7XG4gICAgYmFja2dyb3VuZDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gIH1cblxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnNjcm9sbGJhclRodW1iQ29sb3JIb3ZlckxUfTtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6dmVydGljYWwge1xuICAgIGJvcmRlci1yYWRpdXM6IDdweDtcbiAgfVxuXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG9yaXpvbnRhbCB7XG4gICAgYm9yZGVyLXJhZGl1czogOXB4O1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICR7cHJvcHMgPT4gcHJvcHMudGhlbWUudGV4dENvbG9ySGx9O1xuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgdGhlbWUgPSB7XG4gIC4uLkRJTUVOU0lPTlMsXG4gIC8vIHRlbXBsYXRlc1xuICBpbnB1dCxcbiAgaW5wdXRMVCxcbiAgaW5saW5lSW5wdXQsXG4gIGNoaWNrbGV0ZWRJbnB1dCxcbiAgY2hpY2tsZXRlZElucHV0TFQsXG4gIGNoaWNrbGV0ZWRJbnB1dENvbnRhaW5lcixcbiAgc2Vjb25kYXJ5Q2hpY2tsZXRlZElucHV0LFxuXG4gIGJvcmRlckNvbG9yLFxuICBib3JkZXJDb2xvckxULFxuXG4gIHNlY29uZGFyeUlucHV0LFxuICBkcm9wZG93blNjcm9sbEJhcixcbiAgZHJvcGRvd25TY3JvbGxCYXJMVCxcbiAgZHJvcGRvd25MaXN0LFxuICBkcm9wZG93bkxpc3RMVCxcbiAgZHJvcGRvd25MaXN0SXRlbSxcbiAgZHJvcGRvd25MaXN0SXRlbUxULFxuICBkcm9wZG93bkxpc3RBbmNob3IsXG4gIGRyb3Bkb3duTGlzdEFuY2hvckxULFxuICBkcm9wZG93bkxpc3RIZWFkZXIsXG4gIGRyb3Bkb3duTGlzdFNlY3Rpb24sXG4gIGRyb3Bkb3duTGlzdFNoYWRvdyxcbiAgZHJvcGRvd25XcmFwcGVyWixcbiAgZHJvcGRvd25XYXBwZXJNYXJnaW4sXG4gIGRuZE92ZXJCYWNrZ3JvdW5kQ29sb3IsXG4gIG1vZGFsU2Nyb2xsQmFyLFxuICBzY3JvbGxCYXIsXG4gIHNpZGVQYW5lbFNjcm9sbEJhcixcbiAgaW5wdXRTd2l0Y2gsXG4gIHNlY29uZGFyeVN3aXRjaCxcbiAgc3dpdGNoVHJhY2ssXG4gIHN3aXRjaEJ1dHRvbixcbiAgaW5wdXRDaGVja2JveCxcbiAgaW5wdXRSYWRpbyxcbiAgY2hlY2tib3hCb3gsXG4gIGNoZWNrYm94Q2hlY2ssXG5cbiAgLy8gVHJhbnNpdGlvbnNcbiAgdHJhbnNpdGlvbixcbiAgdHJhbnNpdGlvbkZhc3QsXG4gIHRyYW5zaXRpb25TbG93LFxuXG4gIC8vIHN0eWxlc1xuICBhY3RpdmVDb2xvcixcbiAgYWN0aXZlQ29sb3JIb3ZlcixcbiAgYm9yZGVyUmFkaXVzLFxuICBib3hTaGFkb3csXG4gIGVycm9yQ29sb3IsXG4gIGRyb3Bkb3duTGlzdEhpZ2hsaWdodEJnLFxuICBkcm9wZG93bkxpc3RIaWdobGlnaHRCZ0xULFxuICBkcm9wZG93bkxpc3RCZ2QsXG4gIHRvb2xiYXJJdGVtQmdkSG92ZXIsXG4gIHRvb2xiYXJJdGVtQm9yZGVySG92ZXIsXG4gIHRvb2xiYXJJdGVtSWNvbkhvdmVyLFxuICB0b29sYmFySXRlbUJvcmRlclJhZGRpdXMsXG4gIGRyb3Bkb3duTGlzdEJnZExULFxuICBkcm9wZG93bkxpc3RCb3JkZXJUb3AsXG4gIGRyb3Bkb3duTGlzdEJvcmRlclRvcExULFxuICBkcm9wZG93bkxpc3RMaW5lSGVpZ2h0LFxuXG4gIGxhYmVsQ29sb3IsXG4gIGxhYmVsQ29sb3JMVCxcbiAgbGFiZWxIb3ZlckNvbG9yLFxuICBtYXBQYW5lbEJhY2tncm91bmRDb2xvcixcbiAgbWFwUGFuZWxIZWFkZXJCYWNrZ3JvdW5kQ29sb3IsXG5cbiAgLy8gU2VsZWN0XG4gIHNlbGVjdEFjdGl2ZUJvcmRlckNvbG9yLFxuICBzZWxlY3RCYWNrZ3JvdW5kLFxuICBzZWxlY3RCYWNrZ3JvdW5kTFQsXG4gIHNlbGVjdEJhY2tncm91bmRIb3ZlcixcbiAgc2VsZWN0QmFja2dyb3VuZEhvdmVyTFQsXG4gIHNlbGVjdEJvcmRlcixcbiAgc2VsZWN0Qm9yZGVyQ29sb3IsXG4gIHNlbGVjdEJvcmRlclJhZGl1cyxcbiAgc2VsZWN0Qm9yZGVyQ29sb3JMVCxcbiAgc2VsZWN0Q29sb3IsXG4gIHNlbGVjdENvbG9yUGxhY2VIb2xkZXIsXG4gIHNlbGVjdENvbG9yUGxhY2VIb2xkZXJMVCxcbiAgc2VsZWN0Rm9udFNpemUsXG4gIHNlbGVjdEZvbnRXZWlnaHQsXG4gIHNlbGVjdENvbG9yTFQsXG4gIHNlbGVjdEZvbnRXZWlnaHRCb2xkLFxuICBwYW5lbFRhYkNvbG9yLFxuXG4gIC8vIElucHV0XG4gIGlucHV0QmdkLFxuICBpbnB1dEJnZEhvdmVyLFxuICBpbnB1dEJnZEFjdGl2ZSxcbiAgaW5wdXRCZ2RBY3RpdmVMVCxcbiAgaW5wdXRCb3hIZWlnaHQsXG4gIGlucHV0Qm94SGVpZ2h0U21hbGwsXG4gIGlucHV0Qm94SGVpZ2h0VGlueSxcbiAgaW5wdXRCb3JkZXJDb2xvcixcbiAgaW5wdXRCb3JkZXJBY3RpdmVDb2xvcixcbiAgaW5wdXRCb3JkZXJIb3ZlckNvbG9yLFxuICBpbnB1dEJvcmRlclJhZGl1cyxcbiAgaW5wdXRDb2xvcixcbiAgaW5wdXRQYWRkaW5nLFxuICBpbnB1dFBhZGRpbmdTbWFsbCxcbiAgaW5wdXRQYWRkaW5nVGlueSxcbiAgaW5wdXRGb250U2l6ZSxcbiAgaW5wdXRGb250U2l6ZVNtYWxsLFxuICBpbnB1dEZvbnRXZWlnaHQsXG4gIGlucHV0UGxhY2Vob2xkZXJDb2xvcixcbiAgaW5wdXRQbGFjZWhvbGRlckNvbG9yTFQsXG4gIGlucHV0UGxhY2Vob2xkZXJGb250V2VpZ2h0LFxuICBpbnB1dEJveFNoYWRvdyxcbiAgaW5wdXRCb3hTaGFkb3dBY3RpdmUsXG4gIGlucHV0Qm94U2hhZG93QWN0aXZlTFQsXG4gIHNlY29uZGFyeUlucHV0QmdkLFxuICBzZWNvbmRhcnlJbnB1dEJnZEhvdmVyLFxuICBzZWNvbmRhcnlJbnB1dEJnZEFjdGl2ZSxcbiAgc2Vjb25kYXJ5SW5wdXRDb2xvcixcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJDb2xvcixcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcixcbiAgZHJvcGRvd25TZWxlY3RIZWlnaHQsXG5cbiAgLy8gU3dpdGNoXG4gIHN3aXRjaFdpZHRoLFxuICBzd2l0Y2hIZWlnaHQsXG4gIHN3aXRjaFRyYWNrQmdkLFxuICBzd2l0Y2hUcmFja0JnZEFjdGl2ZSxcbiAgc3dpdGNoVHJhY2tCb3JkZXJSYWRpdXMsXG4gIHN3aXRjaEJ0bkJnZCxcbiAgc3dpdGNoQnRuQmdkQWN0aXZlLFxuICBzd2l0Y2hCdG5Cb3hTaGFkb3csXG4gIHN3aXRjaEJ0bkJvcmRlclJhZGl1cyxcbiAgc3dpdGNoQnRuV2lkdGgsXG4gIHN3aXRjaEJ0bkhlaWdodCxcbiAgc3dpdGNoTGFiZWxNYXJnaW4sXG5cbiAgc2Vjb25kYXJ5U3dpdGNoVHJhY2tCZ2QsXG4gIHNlY29uZGFyeVN3aXRjaEJ0bkJnZCxcblxuICAvLyBDaGVja2JveFxuICBjaGVja2JveFdpZHRoLFxuICBjaGVja2JveEhlaWdodCxcbiAgY2hlY2tib3hNYXJnaW4sXG4gIGNoZWNrYm94Qm9yZGVyQ29sb3IsXG4gIGNoZWNrYm94Qm9yZGVyUmFkaXVzLFxuICBjaGVja2JveEJvcmRlckNvbG9yTFQsXG4gIGNoZWNrYm94Qm94QmdkLFxuICBjaGVja2JveEJveEJnZENoZWNrZWQsXG5cbiAgLy8gUmFkaW9cbiAgcmFkaW9SYWRpdXMsXG4gIHJhZGlvQm9yZGVyUmFkaXVzLFxuICByYWRpb0JvcmRlckNvbG9yLFxuICByYWRpb0J1dHRvblJhZGl1cyxcbiAgcmFkaW9CdXR0b25CZ2RDb2xvcixcbiAgcmFkaW9UcmFjayxcbiAgcmFkaW9CdXR0b24sXG4gIHNlY29uZGFyeVJhZGlvLFxuXG4gIC8vIEJ1dHRvblxuICBidG5Gb250RmFtaWx5LFxuICBwcmltYXJ5QnRuQmdkLFxuICBwcmltYXJ5QnRuQWN0QmdkLFxuICBwcmltYXJ5QnRuQ29sb3IsXG4gIHByaW1hcnlCdG5BY3RDb2xvcixcbiAgcHJpbWFyeUJ0bkJnZEhvdmVyLFxuICBwcmltYXJ5QnRuUmFkaXVzLFxuICBwcmltYXJ5QnRuRm9udFNpemVEZWZhdWx0LFxuICBwcmltYXJ5QnRuRm9udFNpemVTbWFsbCxcbiAgcHJpbWFyeUJ0bkZvbnRTaXplTGFyZ2UsXG4gIHByaW1hcnlCdG5Cb3JkZXIsXG5cbiAgc2Vjb25kYXJ5QnRuQmdkLFxuICBzZWNvbmRhcnlCdG5BY3RCZ2QsXG4gIHNlY29uZGFyeUJ0bkJnZEhvdmVyLFxuICBzZWNvbmRhcnlCdG5Db2xvcixcbiAgc2Vjb25kYXJ5QnRuQWN0Q29sb3IsXG4gIHNlY29uZGFyeUJ0bkJvcmRlcixcblxuICBuZWdhdGl2ZUJ0bkJnZCxcbiAgbmVnYXRpdmVCdG5BY3RCZ2QsXG4gIG5lZ2F0aXZlQnRuQmdkSG92ZXIsXG4gIG5lZ2F0aXZlQnRuQm9yZGVyLFxuICBuZWdhdGl2ZUJ0bkNvbG9yLFxuICBuZWdhdGl2ZUJ0bkFjdENvbG9yLFxuXG4gIGxpbmtCdG5CZ2QsXG4gIGxpbmtCdG5BY3RCZ2QsXG4gIGxpbmtCdG5Db2xvcixcbiAgbGlua0J0bkFjdENvbG9yLFxuICBsaW5rQnRuQWN0QmdkSG92ZXIsXG4gIGxpbmtCdG5Cb3JkZXIsXG5cbiAgZmxvYXRpbmdCdG5CZ2QsXG4gIGZsb2F0aW5nQnRuQWN0QmdkLFxuICBmbG9hdGluZ0J0bkJnZEhvdmVyLFxuICBmbG9hdGluZ0J0bkJvcmRlcixcbiAgZmxvYXRpbmdCdG5Cb3JkZXJIb3ZlcixcbiAgZmxvYXRpbmdCdG5Db2xvcixcbiAgZmxvYXRpbmdCdG5BY3RDb2xvcixcblxuICBjdGFCdG5CZ2QsXG4gIGN0YUJ0bkJnZEhvdmVyLFxuICBjdGFCdG5BY3RCZ2QsXG4gIGN0YUJ0bkNvbG9yLFxuICBjdGFCdG5BY3RDb2xvcixcblxuICBzZWxlY3Rpb25CdG5CZ2QsXG4gIHNlbGVjdGlvbkJ0bkFjdEJnZCxcbiAgc2VsZWN0aW9uQnRuQ29sb3IsXG4gIHNlbGVjdGlvbkJ0bkFjdENvbG9yLFxuICBzZWxlY3Rpb25CdG5CZ2RIb3ZlcixcbiAgc2VsZWN0aW9uQnRuQm9yZGVyLFxuICBzZWxlY3Rpb25CdG5Cb3JkZXJDb2xvcixcbiAgc2VsZWN0aW9uQnRuQm9yZGVyQWN0Q29sb3IsXG5cbiAgc2Nyb2xsYmFyVGh1bWJDb2xvckxULFxuICBzY3JvbGxiYXJUaHVtYkNvbG9ySG92ZXJMVCxcblxuICAvLyBNb2RhbFxuICBtb2RhbFRpdGxlQ29sb3IsXG4gIG1vZGFsVGl0bGVGb250U2l6ZSxcbiAgbW9kYWxUaXRsZUZvbnRTaXplU21hbGxlcixcbiAgbW9kYWxGb290ZXJCZ2QsXG4gIG1vZGFsSW1hZ2VQbGFjZUhvbGRlcixcbiAgbW9kYWxQYWRkaW5nLFxuXG4gIG1vZGFsRGlhbG9nQmdkLFxuICBtb2RhbERpYWxvZ0NvbG9yLFxuXG4gIG1vZGFsTGF0ZXJhbFBhZGRpbmcsXG4gIG1vZGFsUG9ydGFibGVMYXRlcmFsUGFkZGluZyxcbiAgbW9kYWxPdmVyTGF5WixcbiAgbW9kYWxPdmVybGF5QmdkLFxuICBtb2RhbENvbnRlbnRaLFxuICBtb2RhbEZvb3RlclosXG4gIG1vZGFsVGl0bGVaLFxuICBtb2RhbEJ1dHRvblosXG4gIG1vZGFsRHJvcGRvd25CYWNrZ3JvdW5kLFxuXG4gIC8vIFNpZGUgUGFuZWxcbiAgc2lkZVBhbmVsQmcsXG4gIHNpZGVQYW5lbElubmVyUGFkZGluZyxcbiAgc2lkZUJhckNsb3NlQnRuQmdkLFxuICBzaWRlQmFyQ2xvc2VCdG5Db2xvcixcbiAgc2lkZUJhckNsb3NlQnRuQmdkSG92ZXIsXG4gIHNpZGVQYW5lbEhlYWRlckJnLFxuICBzaWRlUGFuZWxIZWFkZXJCb3JkZXIsXG4gIHNpZGVQYW5lbFNjcm9sbEJhcldpZHRoLFxuICBzaWRlUGFuZWxTY3JvbGxCYXJIZWlnaHQsXG4gIHNpZGVQYW5lbFRpdGxlRm9udHNpemUsXG4gIHNpZGVQYW5lbFRpdGxlTGluZUhlaWdodCxcbiAgcGFuZWxIZWFkZXJCb3JkZXJSYWRpdXMsXG4gIHNpZGVQYW5lbEJvcmRlcixcbiAgc2lkZVBhbmVsQm9yZGVyQ29sb3IsXG5cbiAgbGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxGb250U2l6ZSxcbiAgbGF5ZXJDb25maWdHcm91cE1hcmdpbkJvdHRvbSxcbiAgbGF5ZXJDb25maWdHcm91cFBhZGRpbmdMZWZ0LFxuXG4gIC8vIFNpZGUgUGFuZWwgUGFuZWxcbiAgY2hpY2tsZXRCZ2QsXG4gIGNoaWNrbGV0QmdkTFQsXG4gIHBhbmVsQmFja2dyb3VuZCxcbiAgcGFuZWxDb250ZW50QmFja2dyb3VuZCxcbiAgcGFuZWxCYWNrZ3JvdW5kSG92ZXIsXG4gIHBhbmVsQmFja2dyb3VuZExULFxuICBwYW5lbFRvZ2dsZU1hcmdpblJpZ2h0LFxuICBwYW5lbFRvZ2dsZUJvdHRvbVBhZGRpbmcsXG4gIHBhbmVsQm94U2hhZG93LFxuICBwYW5lbEJvcmRlclJhZGl1cyxcbiAgcGFuZWxCb3JkZXIsXG4gIHBhbmVsQm9yZGVyQ29sb3IsXG4gIHBhbmVsQm9yZGVyTFQsXG4gIHBhbmVsSGVhZGVySWNvbixcbiAgcGFuZWxIZWFkZXJJY29uQWN0aXZlLFxuICBwYW5lbEhlYWRlckljb25Ib3ZlcixcbiAgcGFuZWxIZWFkZXJIZWlnaHQsXG4gIGxheWVyUGFuZWxIZWFkZXJIZWlnaHQsXG4gIHBhbmVsRHJvcGRvd25TY3JvbGxCYXIsXG5cbiAgbGF5ZXJUeXBlSWNvblNpemVMLFxuICBsYXllclR5cGVJY29uUGRMLFxuICBsYXllclR5cGVJY29uU2l6ZVNNLFxuXG4gIGxheWVyUGFuZWxUb2dnbGVPcHRpb25Db2xvcixcbiAgbGF5ZXJQYW5lbFRvZ2dsZU9wdGlvbkNvbG9yQWN0aXZlLFxuXG4gIC8vIFRleHRcbiAgZm9udEZhbWlseSxcbiAgZm9udFdlaWdodCxcbiAgZm9udFNpemUsXG4gIGxpbmVIZWlnaHQsXG4gIHRleHRDb2xvcixcbiAgdGV4dENvbG9yTFQsXG4gIGRhdGFUYWJsZVRleHRDb2xvcixcbiAgdGV4dENvbG9ySGwsXG4gIHRpdGxlVGV4dENvbG9yLFxuICBzdWJ0ZXh0Q29sb3IsXG4gIHN1YnRleHRDb2xvckxULFxuICBzdWJ0ZXh0Q29sb3JBY3RpdmUsXG4gIGZvbnRXaGl0ZUNvbG9yLFxuICBwYW5lbFRvZ2dsZUJvcmRlckNvbG9yLFxuICBwYW5lbFRhYldpZHRoLFxuICB0ZXh0VHJ1bmNhdGUsXG4gIHRpdGxlQ29sb3JMVCxcbiAgdG9vbHRpcEJnLFxuICB0b29sdGlwQmdMVCxcbiAgdG9vbHRpcENvbG9yLFxuICB0b29sdGlwQ29sb3JMVCxcbiAgdG9vbHRpcEJveFNoYWRvdyxcbiAgdG9vbHRpcEZvbnRTaXplLFxuICBsb2dvQ29sb3IsXG5cbiAgLy8gU2lkZXBhbmVsIGRpdmlkZXJcbiAgc2lkZXBhbmVsRGl2aWRlckJvcmRlcixcbiAgc2lkZXBhbmVsRGl2aWRlck1hcmdpbixcbiAgc2lkZXBhbmVsRGl2aWRlckhlaWdodCxcblxuICAvLyBCb3R0b20gUGFuZWxcbiAgYm90dG9tSW5uZXJQZFNpZGUsXG4gIGJvdHRvbUlubmVyUGRWZXJ0LFxuICBib3R0b21QYW5lbEdhcCxcbiAgYm90dG9tUGFuZWxHYXBQYWxtLFxuICBib3R0b21XaWRnZXRQYWRkaW5nVG9wLFxuICBib3R0b21XaWRnZXRQYWRkaW5nUmlnaHQsXG4gIGJvdHRvbVdpZGdldFBhZGRpbmdCb3R0b20sXG4gIGJvdHRvbVdpZGdldFBhZGRpbmdMZWZ0LFxuICBib3R0b21XaWRnZXRCZ2QsXG5cbiAgLy8gU2xpZGVyXG4gIHNsaWRlckJhckNvbG9yLFxuICBzbGlkZXJCYXJCZ2QsXG4gIHNsaWRlckJhckhvdmVyQ29sb3IsXG4gIHNsaWRlckJhclJhZGl1cyxcbiAgc2xpZGVyQmFySGVpZ2h0LFxuICBzbGlkZXJIYW5kbGVIZWlnaHQsXG4gIHNsaWRlckhhbmRsZVdpZHRoLFxuICBzbGlkZXJIYW5kbGVDb2xvcixcbiAgc2xpZGVySGFuZGxlVGV4dENvbG9yLFxuICBzbGlkZXJJbmFjdGl2ZUJvcmRlckNvbG9yLFxuICBzbGlkZXJCb3JkZXJSYWRpdXMsXG4gIHNsaWRlckhhbmRsZUhvdmVyQ29sb3IsXG4gIHNsaWRlckhhbmRsZUFmdGVyQ29udGVudCxcbiAgc2xpZGVySGFuZGxlU2hhZG93LFxuICBzbGlkZXJJbnB1dEhlaWdodCxcbiAgc2xpZGVySW5wdXRXaWR0aCxcbiAgc2xpZGVyTWFyZ2luVG9wSXNUaW1lLFxuICBzbGlkZXJNYXJnaW5Ub3AsXG4gIHNsaWRlck1hcmdpbkJvdHRvbSxcblxuICAvLyBHZW9jb2RlclxuICBnZW9jb2RlcldpZHRoLFxuICBnZW9jb2RlclRvcCxcbiAgZ2VvY29kZXJSaWdodCxcbiAgZ2VvY29kZXJJbnB1dEhlaWdodCxcblxuICAvLyBNYXAgQ29udHJvbFxuICBtYXBDb250cm9sVG9wLFxuXG4gIC8vIFBsb3RcbiAgcmFuZ2VCcnVzaEJnZCxcbiAgaGlzdG9ncmFtRmlsbEluUmFuZ2UsXG4gIGhpc3RvZ3JhbUZpbGxPdXRSYW5nZSxcbiAgaGlzdG9ncmFtT3ZlcmxheUNvbG9yLFxuICBoaXN0b2dyYW1CcmVha0xpbmVDb2xvcixcbiAgYXhpc0ZvbnRTaXplLFxuICBheGlzRm9udENvbG9yLFxuICB0aW1lVGl0bGVGb250U2l6ZSxcbiAgcmFuZ2VQbG90TWFyZ2luLFxuICByYW5nZVBsb3RNYXJnaW5MYXJnZSxcbiAgcmFuZ2VQbG90SCxcbiAgcmFuZ2VQbG90SExhcmdlLFxuICByYW5nZVBsb3RITGFyZ2VQYWxtLFxuICByYW5nZVBsb3RDb250YWluZXJILFxuICByYW5nZVBsb3RDb250YWluZXJITGFyZ2UsXG4gIHJhbmdlUGxvdENvbnRhaW5lckhMYXJnZVBhbG0sXG5cbiAgLy8gTm90aWZpY2F0aW9uc1xuICBub3RpZmljYXRpb25Db2xvcnMsXG4gIG5vdGlmaWNhdGlvblBhbmVsV2lkdGgsXG4gIG5vdGlmaWNhdGlvblBhbmVsSXRlbVdpZHRoLFxuICBub3RpZmljYXRpb25QYW5lbEl0ZW1IZWlnaHQsXG5cbiAgLy8gRGF0YSBUYWJsZVxuICBoZWFkZXJSb3dIZWlnaHQsXG4gIGhlYWRlclJvd1dTdGF0c0hlaWdodCxcbiAgaGVhZGVyU3RhdHNDb250cm9sSGVpZ2h0LFxuICByb3dIZWlnaHQsXG4gIGhlYWRlclBhZGRpbmdUb3AsXG4gIGhlYWRlclBhZGRpbmdCb3R0b20sXG4gIGNlbGxQYWRkaW5nU2lkZSxcbiAgZWRnZUNlbGxQYWRkaW5nU2lkZSxcbiAgY2VsbEZvbnRTaXplLFxuICBncmlkUGFkZGluZ1NpZGUsXG4gIG9wdGlvbkJ1dHRvbkNvbG9yLFxuICBoZWFkZXJDZWxsQmFja2dyb3VuZCxcbiAgaGVhZGVyQ2VsbEJvcmRlckNvbG9yLFxuICBoZWFkZXJDZWxsU3RhdHNCYWNrZ3JvdW5kLFxuICBoZWFkZXJDZWxsU3RhdHNDb250cm9sQmFja2dyb3VuZCxcbiAgaGVhZGVyQ2VsbEljb25Db2xvcixcbiAgY2VsbEJvcmRlckNvbG9yLFxuICBldmVuUm93QmFja2dyb3VuZCxcbiAgb2RkUm93QmFja2dyb3VuZCxcbiAgcGlubmVkR3JpZEJvcmRlckNvbG9yLFxuICAvLyB0aW1lIGRpc3BsYXlcbiAgdGltZURpc3BsYXlCb3JkZXJSYWRpdXMsXG4gIHRpbWVEaXNwbGF5SGVpZ2h0LFxuICB0aW1lRGlzcGxheU1pbldpZHRoLFxuICB0aW1lRGlzcGxheU9wYWNpdHksXG4gIHRpbWVEaXNwbGF5UGFkZGluZyxcblxuICAvLyBleHBvcnQgbWFwXG4gIGV4cG9ydEludHJhU2VjdGlvbk1hcmdpbixcblxuICAvLyBBY3Rpb24gUGFuZWxcbiAgYWN0aW9uUGFuZWxXaWR0aCxcbiAgYWN0aW9uUGFuZWxIZWlnaHQsXG5cbiAgLy8gQnJlYWtwb2ludHNcbiAgYnJlYWtQb2ludHMsXG5cbiAgLy8gcHJvZ3Jlc3NiYXJcbiAgcHJvZ3Jlc3NCYXJDb2xvcixcbiAgcHJvZ3Jlc3NCYXJUcmFja0NvbG9yLFxuXG4gIC8vIGxheWVyQ29uZmlnR3JvdXBMYWJlbFxuICBsYXllckNvbmZpZ0dyb3VwTGFiZWxCb3JkZXJMZWZ0LFxuICBsYXllckNvbmZpZ0dyb3VwTGFiZWxNYXJnaW4sXG4gIGxheWVyQ29uZmlnR3JvdXBMYWJlbFBhZGRpbmcsXG4gIGxheWVyQ29uZmlnR3JvdXBDb2xvcixcblxuICAvLyBsYXllckNvbmZpZ0dyb3VwTGFiZWwgbGFiZWxcbiAgbGF5ZXJDb25maWdHcm91cExhYmVsTGFiZWxNYXJnaW4sXG5cbiAgLy8gU3R5bGVkQ29uZmlnR3JvdXBIZWFkZXJcbiAgc3R5bGVkQ29uZmlnR3JvdXBIZWFkZXJCb3JkZXIsXG5cbiAgLy8gbGF5ZXJDb25maWd1cmF0b3JcbiAgbGF5ZXJDb25maWd1cmF0b3JCb3JkZXIsXG4gIGxheWVyQ29uZmlndXJhdG9yQm9yZGVyQ29sb3IsXG4gIGxheWVyQ29uZmlndXJhdG9yTWFyZ2luLFxuICBsYXllckNvbmZpZ3VyYXRvclBhZGRpbmcsXG5cbiAgLy8gU3R5bGVkIHRva2VuXG4gIGZpZWxkVG9rZW5SaWdodE1hcmdpbixcbiAgZmllbGRUb2tlbkhlaWdodCxcbiAgZmllbGRUb2tlbldpZHRoLFxuXG4gIC8vIENPTE9SU1xuICBCTFVFMjogJ3JnYmEoODUsIDg4LCAyMTksIDAuMiknLFxuXG4gIC8vIEFJIEFzc2lzdGFudCBQYW5lbFxuICBhaUFzc2lzdGFudFBhbmVsV2lkdGgsXG5cbiAgLy8gRWZmZWN0IHBhbmVsXG4gIGVmZmVjdFBhbmVsV2lkdGgsXG4gIGVmZmVjdFBhbmVsSGVpZ2h0LFxuICBlZmZlY3RQYW5lbFBhZGRpbmdTaWRlLFxuICBlZmZlY3RQYW5lbFBhZGRpbmdUb3AsXG4gIHJpZ2h0UGFuZWxNYXJnaW5Ub3AsXG4gIHJpZ2h0UGFuZWxNYXJnaW5SaWdodCxcbiAgZWZmZWN0UGFuZWxBZGRFZmZlY3RGb250RmFtaWx5LFxuXG4gIC8vIGVmZmVjdCB0eXBlIHNlbGVjdG9yXG4gIGVmZmVjdFR5cGVJY29uTWFyZ2luU2lkZSxcbiAgZWZmZWN0VHlwZUljb25TaXplTCxcbiAgZWZmZWN0VHlwZUljb25CZ0hvdmVyQ29sb3IsXG5cbiAgLy8gZWZmZWN0Q29uZmlndXJhdG9yXG4gIGVmZmVjdENvbmZpZ3VyYXRvck1hcmdpbixcbiAgZWZmZWN0Q29uZmlndXJhdG9yUGFkZGluZyxcbiAgZWZmZWN0UGFuZWxUZXh0TWFpbixcbiAgZWZmZWN0UGFuZWxUZXh0U2Vjb25kYXJ5MSxcbiAgZWZmZWN0UGFuZWxUZXh0U2Vjb25kYXJ5MixcbiAgZWZmZWN0UGFuZWxUZXh0U2Vjb25kYXJ5MyxcblxuICBlZmZlY3RQYW5lbEVsZW1lbnRDb2xvcixcbiAgZWZmZWN0UGFuZWxFbGVtZW50Q29sb3JBY3RpdmUsXG4gIGVmZmVjdFBhbmVsRWxlbWVudENvbG9ySG92ZXJlZCxcbiAgZWZmZWN0UGFuZWxFbGVtZW50Q29sb3JTdW4sXG4gIGVmZmVjdFBhbmVsRWxlbWVudENvbG9yU2VsZWN0ZWRcbn07XG5cbmV4cG9ydCBjb25zdCB0aGVtZUxUID0ge1xuICAuLi50aGVtZSxcbiAgLy8gdGVtcGxhdGVcbiAgYWN0aXZlQ29sb3I6IGFjdGl2ZUNvbG9yTFQsXG4gIGlucHV0OiBpbnB1dExULFxuICB0ZXh0Q29sb3I6IHRleHRDb2xvckxULFxuICBzaWRlUGFuZWxCZzogJyNGRkZGRkYnLFxuICBzZWxlY3RDb2xvcjogc2VsZWN0Q29sb3JMVCxcbiAgdGl0bGVUZXh0Q29sb3I6ICcjMDAwMDAwJyxcbiAgc2lkZVBhbmVsSGVhZGVyQmc6ICcjRjdGN0Y3JyxcbiAgc3VidGV4dENvbG9yQWN0aXZlOiBhY3RpdmVDb2xvckxULFxuICB0b29sdGlwQmc6IHRvb2x0aXBCZ0xULFxuICB0b29sdGlwQ29sb3I6IHRvb2x0aXBDb2xvckxULFxuICBkcm9wZG93bkxpc3RCZ2Q6ICcjRkZGRkZGJyxcbiAgdG9vbGJhckl0ZW1CZ2RIb3ZlcjogJyNGN0Y3RjcnLFxuICB0ZXh0Q29sb3JIbDogYWN0aXZlQ29sb3JMVCxcblxuICBpbnB1dEJnZDogJyNGN0Y3RjcnLFxuICBpbnB1dEJnZEhvdmVyOiAnI0ZGRkZGRicsXG4gIGlucHV0QmdkQWN0aXZlOiAnI0ZGRkZGRicsXG4gIGlucHV0QmdkQWN0aXZlTFQ6ICcjRkZGRkZGJyxcbiAgZHJvcGRvd25MaXN0SGlnaGxpZ2h0Qmc6ICcjRjBGMEYwJyxcbiAgdG9vbGJhckl0ZW1JY29uSG92ZXI6IGFjdGl2ZUNvbG9yTFQsXG4gIHBhbmVsQmFja2dyb3VuZDogJyNGN0Y3RjcnLFxuICBwYW5lbENvbnRlbnRCYWNrZ3JvdW5kOiAnI0Y3RjdGNycsXG4gIGJvdHRvbVdpZGdldEJnZDogJyNGN0Y3RjcnLFxuICBwYW5lbEJhY2tncm91bmRIb3ZlcjogJyNGN0Y3RjcnLFxuICBwYW5lbEJvcmRlckNvbG9yOiAnI0QzRDhFMCcsXG4gIHBhbmVsSGVhZGVySWNvbkFjdGl2ZTogJyMwMDAwMDAnLFxuICBwYW5lbEhlYWRlckljb25Ib3ZlcjogJyMwMDAwMDAnLFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2Q6ICcjRjdGN0Y3JyxcbiAgc2lkZUJhckNsb3NlQnRuQ29sb3I6IHRleHRDb2xvckxULFxuICBzaWRlQmFyQ2xvc2VCdG5CZ2RIb3ZlcjogJyNGN0Y3RjcnLFxuXG4gIHNlY29uZGFyeUlucHV0QmdkOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeUlucHV0QmdkQWN0aXZlOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeUlucHV0QmdkSG92ZXI6ICcjRkZGRkZGJyxcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcjogJyMwMDAwMDAnLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yOiAnbm9uZScsXG4gIHNlY29uZGFyeUlucHV0Q29sb3I6ICcjNTQ1NDU0JyxcblxuICBjaGlja2xldEJnZDogJyNGN0Y3RjcnLFxuICBtYXBQYW5lbEJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxuICBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvcjogJyNGN0Y3RjcnLFxuXG4gIHNsaWRlckJhckNvbG9yOiAnI0EwQTdCNCcsXG4gIHNsaWRlckJhckJnZDogJyNEM0Q4RTAnLFxuICBzbGlkZXJIYW5kbGVDb2xvcjogJyNGN0Y3RjcnLFxuICBzbGlkZXJJbmFjdGl2ZUJvcmRlckNvbG9yOiAnI0Y3RjdGNycsXG4gIHNsaWRlckhhbmRsZVRleHRDb2xvcjogJyNGN0Y3RjcnLFxuICBzbGlkZXJIYW5kbGVIb3ZlckNvbG9yOiAnI0Y3RjdGNycsXG5cbiAgc3VidGV4dENvbG9yOiBzdWJ0ZXh0Q29sb3JMVCxcbiAgc3dpdGNoQnRuQmdkOiAnI0Y3RjdGNycsXG4gIHNlY29uZGFyeVN3aXRjaEJ0bkJnZDogJyNGN0Y3RjcnLFxuICBzZWNvbmRhcnlTd2l0Y2hUcmFja0JnZDogJyNEM0Q4RTAnLFxuICBzd2l0Y2hCdG5CZ2RBY3RpdmU6ICcjRjdGN0Y3JyxcbiAgc3dpdGNoVHJhY2tCZ2Q6ICcjRDNEOEUwJyxcbiAgc3dpdGNoVHJhY2tCZ2RBY3RpdmU6IGFjdGl2ZUNvbG9yTFQsXG5cbiAgLy8gYnV0dG9uIHN3aXRjaCBiYWNrZ3JvdW5kIGFuZCBob3ZlciBjb2xvclxuICBwcmltYXJ5QnRuQmdkOiBwcmltYXJ5QnRuQWN0QmdkLFxuICBwcmltYXJ5QnRuQWN0QmdkOiBwcmltYXJ5QnRuQmdkLFxuICBwcmltYXJ5QnRuQmdkSG92ZXI6IHByaW1hcnlCdG5CZ2QsXG5cbiAgc2Vjb25kYXJ5QnRuQmdkOiBzZWNvbmRhcnlCdG5BY3RCZ2QsXG4gIHNlY29uZGFyeUJ0bkFjdEJnZDogc2Vjb25kYXJ5QnRuQmdkLFxuICBzZWNvbmRhcnlCdG5CZ2RIb3Zlcjogc2Vjb25kYXJ5QnRuQmdkLFxuXG4gIGZsb2F0aW5nQnRuQmdkOiAnI0Y3RjdGNycsXG4gIGZsb2F0aW5nQnRuQWN0QmdkOiAnI0Y3RjdGNycsXG4gIGZsb2F0aW5nQnRuQmdkSG92ZXI6ICcjRjdGN0Y3JyxcbiAgZmxvYXRpbmdCdG5Db2xvcjogc3VidGV4dENvbG9yLFxuICBmbG9hdGluZ0J0bkFjdENvbG9yOiBhY3RpdmVDb2xvckxULFxuXG4gIGxpbmtCdG5BY3RDb2xvcjogdGV4dENvbG9yTFQsXG5cbiAgcmFuZ2VCcnVzaEJnZDogJyNEM0Q4RTAnLFxuICBoaXN0b2dyYW1GaWxsSW5SYW5nZTogYWN0aXZlQ29sb3JMVCxcbiAgaGlzdG9ncmFtRmlsbE91dFJhbmdlOiAnI0EwQTdCNCcsXG4gIGF4aXNGb250Q29sb3I6IHRleHRDb2xvckxUXG59O1xuXG5leHBvcnQgY29uc3QgdGhlbWVCUyA9IHtcbiAgLi4udGhlbWUsXG4gIGFjdGl2ZUNvbG9yOiAnI0UyRTJFMicsXG4gIGRyb3Bkb3duTGlzdEJnZDogJyNGRkZGRkYnLFxuICB0b29sYmFySXRlbUJnZEhvdmVyOiAnI0Y3RjdGNycsXG4gIGRyb3Bkb3duTGlzdEJvcmRlclRvcDogJ25vbmUnLFxuICBkcm9wZG93bkxpc3RIaWdobGlnaHRCZzogJyNGNkY2RjYnLFxuICB0b29sYmFySXRlbUljb25Ib3ZlcjogJyMwMDAwMDAnLFxuICBpbnB1dEJnZDogJyNFMkUyRTInLFxuICBpbnB1dEJnZEFjdGl2ZTogJyNFMkUyRTInLFxuICBpbnB1dEJnZEhvdmVyOiAnaW5oZXJpdCcsXG4gIGlucHV0Qm9yZGVyQWN0aXZlQ29sb3I6ICcjMDAwMDAwJyxcbiAgaW5wdXRDb2xvcjogJyMwMDAwMDAnLFxuICBjaGlja2xldEJnZDogJyNFMkUyRTInLFxuICBwYW5lbEJhY2tncm91bmQ6ICcjRkZGRkZGJyxcbiAgcGFuZWxCYWNrZ3JvdW5kSG92ZXI6ICcjRUVFRUVFJyxcbiAgcGFuZWxDb250ZW50QmFja2dyb3VuZDogJyNGRkZGRkYnLFxuICBib3R0b21XaWRnZXRCZ2Q6ICcjRjdGN0Y3JyxcbiAgcGFuZWxIZWFkZXJJY29uQWN0aXZlOiAnIzAwMDAwMCcsXG4gIHBhbmVsSGVhZGVySWNvbkhvdmVyOiAnIzAwMDAwMCcsXG4gIHBhbmVsQm9yZGVyQ29sb3I6ICcjRTJFMkUyJyxcbiAgcHJpbWFyeUJ0bkJnZDogJyNFMkUyRTInLFxuICBwcmltYXJ5QnRuQmdkSG92ZXI6ICcjMzMzMzMzJyxcbiAgcHJpbWFyeUJ0bkNvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUJ0bkFjdEJnZDogJyNFRUVFRUUnLFxuICBzZWNvbmRhcnlCdG5BY3RDb2xvcjogJyMwMDAwMDAnLFxuICBzZWNvbmRhcnlCdG5CZ2Q6ICcjRTJFMkUyJyxcbiAgc2Vjb25kYXJ5QnRuQmdkSG92ZXI6ICcjQ0JDQkNCJyxcbiAgY3RuQnRuQmdkOiAnI0UyRTJFMicsXG4gIGN0bkJ0bkJnZEhvdmVyOiAnMzMzMzMzJyxcbiAgY3RuQnRuQ29sb3I6ICcjMDAwMDAwJyxcbiAgY3RuQnRuQWN0Q29sb3I6ICcjMDAwMDAwJyxcblxuICBzaWRlQmFyQ2xvc2VCdG5CZ2Q6ICcjRTJFMkUyJyxcbiAgc2lkZUJhckNsb3NlQnRuQ29sb3I6ICcjMDAwMDAwJyxcbiAgc2lkZUJhckNsb3NlQnRuQmdkSG92ZXI6ICcjRkZGRkZGJyxcblxuICBmbG9hdGluZ0J0bkJnZDogJyNGRkZGRkYnLFxuICBmbG9hdGluZ0J0bkFjdEJnZDogJyNFRUVFRUUnLFxuICBmbG9hdGluZ0J0bkJnZEhvdmVyOiAnI0VFRUVFRScsXG4gIGZsb2F0aW5nQnRuQ29sb3I6ICcjNzU3NTc1JyxcbiAgZmxvYXRpbmdCdG5BY3RDb2xvcjogJyMwMDAwMDAnLFxuXG4gIHNlY29uZGFyeUJ0bkNvbG9yOiAnIzAwMDAwMCcsXG4gIHNlY29uZGFyeUlucHV0QmdkOiAnI0Y2RjZGNicsXG4gIHNlY29uZGFyeUlucHV0QmdkQWN0aXZlOiAnI0Y2RjZGNicsXG4gIHNlY29uZGFyeUlucHV0QmdkSG92ZXI6ICcjRjZGNkY2JyxcbiAgc2Vjb25kYXJ5SW5wdXRCb3JkZXJBY3RpdmVDb2xvcjogJyMwMDAwMDAnLFxuICBzZWNvbmRhcnlJbnB1dEJvcmRlckNvbG9yOiAnbm9uZScsXG4gIHNlY29uZGFyeUlucHV0Q29sb3I6ICcjNTQ1NDU0JyxcbiAgc2lkZVBhbmVsQmc6ICcjRjZGNkY2JyxcbiAgc2lkZVBhbmVsSGVhZGVyQmc6ICcjRkZGRkZGJyxcbiAgc3VidGV4dENvbG9yOiAnI0FGQUZBRicsXG4gIHBhbmVsVGFiQ29sb3I6ICcjQUZBRkFGJyxcbiAgc3VidGV4dENvbG9yQWN0aXZlOiAnIzAwMDAwMCcsXG4gIHRleHRDb2xvcjogJyMwMDAwMDAnLFxuICB0ZXh0Q29sb3JIbDogJyM1NDU0NTQnLFxuICBtYXBQYW5lbEJhY2tncm91bmRDb2xvcjogJyNGNkY2RjYnLFxuICBtYXBQYW5lbEhlYWRlckJhY2tncm91bmRDb2xvcjogJyNGRkZGRkYnLFxuICB0aXRsZVRleHRDb2xvcjogJyMwMDAwMDAnLFxuICBzd2l0Y2hCdG5CZ2RBY3RpdmU6ICcjMDAwMDAwJyxcbiAgc3dpdGNoQnRuQmdkOiAnI0ZGRkZGRicsXG4gIHN3aXRjaFRyYWNrQmdkQWN0aXZlOiAnI0UyRTJFMicsXG4gIHNlY29uZGFyeVN3aXRjaFRyYWNrQmdkOiAnI0UyRTJFMicsXG4gIHN3aXRjaFRyYWNrQmdkOiAnI0UyRTJFMicsXG4gIHNlY29uZGFyeVN3aXRjaEJ0bkJnZDogJyNGRkZGRkYnLFxuICBoaXN0b2dyYW1GaWxsSW5SYW5nZTogJyMwMDAwMDAnLFxuICBoaXN0b2dyYW1GaWxsT3V0UmFuZ2U6ICcjRTJFMkUyJyxcbiAgcmFuZ2VCcnVzaEJnZDogJyNFMkUyRTInLFxuICBzbGlkZXJCYXJCZ2Q6ICcjRTJFMkUyJyxcbiAgc2xpZGVySGFuZGxlQ29sb3I6ICcjRkZGRkZGJyxcbiAgc2xpZGVySW5hY3RpdmVCb3JkZXJDb2xvcjogJyNGRkZGRkYnLFxuICBzbGlkZXJIYW5kbGVUZXh0Q29sb3I6ICcjRkZGRkZGJyxcbiAgc2xpZGVyQmFyQ29sb3I6ICcjMDAwMDAwJ1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsaUJBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUQsT0FBQTtBQUFnRCxJQUFBRSxlQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGdCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFDLGlCQUFBLEVBQUFD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