devextreme-angular 24.1.15 → 24.1.17
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/common/charts/index.d.ts +3 -3
- package/common/data/custom-store/index.d.ts +3 -3
- package/common/grids/index.d.ts +3 -3
- package/common/index.d.ts +3 -3
- package/core/component.d.ts +3 -3
- package/core/events-strategy.d.ts +3 -3
- package/core/index.d.ts +3 -3
- package/core/integration.d.ts +3 -3
- package/core/iterable-differ-helper.d.ts +3 -3
- package/core/nested-option.d.ts +3 -3
- package/core/template-host.d.ts +3 -3
- package/core/template.d.ts +3 -3
- package/core/transfer-state.d.ts +3 -3
- package/core/utils.d.ts +3 -3
- package/esm2022/common/charts/index.mjs +4 -4
- package/esm2022/common/data/custom-store/index.mjs +4 -4
- package/esm2022/common/grids/index.mjs +4 -4
- package/esm2022/common/index.mjs +4 -4
- package/esm2022/core/component.mjs +4 -4
- package/esm2022/core/events-strategy.mjs +4 -4
- package/esm2022/core/index.mjs +4 -4
- package/esm2022/core/integration.mjs +4 -4
- package/esm2022/core/iterable-differ-helper.mjs +4 -4
- package/esm2022/core/nested-option.mjs +4 -4
- package/esm2022/core/template-host.mjs +4 -4
- package/esm2022/core/template.mjs +4 -4
- package/esm2022/core/transfer-state.mjs +4 -4
- package/esm2022/core/utils.mjs +4 -4
- package/esm2022/core/watcher-helper.mjs +4 -4
- package/esm2022/http/ajax.mjs +4 -4
- package/esm2022/http/index.mjs +4 -4
- package/esm2022/index.mjs +4 -4
- package/esm2022/server/index.mjs +4 -4
- package/esm2022/server/render.mjs +4 -4
- package/esm2022/ui/accordion/index.mjs +4 -4
- package/esm2022/ui/action-sheet/index.mjs +4 -4
- package/esm2022/ui/all.mjs +4 -4
- package/esm2022/ui/autocomplete/index.mjs +4 -4
- package/esm2022/ui/bar-gauge/index.mjs +4 -4
- package/esm2022/ui/box/index.mjs +4 -4
- package/esm2022/ui/bullet/index.mjs +4 -4
- package/esm2022/ui/button/index.mjs +4 -4
- package/esm2022/ui/button-group/index.mjs +4 -4
- package/esm2022/ui/calendar/index.mjs +4 -4
- package/esm2022/ui/chart/index.mjs +4 -4
- package/esm2022/ui/check-box/index.mjs +4 -4
- package/esm2022/ui/circular-gauge/index.mjs +4 -4
- package/esm2022/ui/color-box/index.mjs +4 -4
- package/esm2022/ui/context-menu/index.mjs +4 -4
- package/esm2022/ui/data-grid/index.mjs +4 -4
- package/esm2022/ui/date-box/index.mjs +4 -4
- package/esm2022/ui/date-range-box/index.mjs +4 -4
- package/esm2022/ui/defer-rendering/index.mjs +4 -4
- package/esm2022/ui/diagram/index.mjs +4 -4
- package/esm2022/ui/draggable/index.mjs +4 -4
- package/esm2022/ui/drawer/index.mjs +4 -4
- package/esm2022/ui/drop-down-box/index.mjs +4 -4
- package/esm2022/ui/drop-down-button/index.mjs +4 -4
- package/esm2022/ui/file-manager/index.mjs +4 -4
- package/esm2022/ui/file-uploader/index.mjs +4 -4
- package/esm2022/ui/filter-builder/index.mjs +4 -4
- package/esm2022/ui/form/index.mjs +4 -4
- package/esm2022/ui/funnel/index.mjs +4 -4
- package/esm2022/ui/gallery/index.mjs +4 -4
- package/esm2022/ui/gantt/index.mjs +4 -4
- package/esm2022/ui/html-editor/index.mjs +4 -4
- package/esm2022/ui/linear-gauge/index.mjs +4 -4
- package/esm2022/ui/list/index.mjs +4 -4
- package/esm2022/ui/load-indicator/index.mjs +4 -4
- package/esm2022/ui/load-panel/index.mjs +4 -4
- package/esm2022/ui/lookup/index.mjs +4 -4
- package/esm2022/ui/map/index.mjs +4 -4
- package/esm2022/ui/menu/index.mjs +4 -4
- package/esm2022/ui/multi-view/index.mjs +4 -4
- package/esm2022/ui/nested/adapter.mjs +4 -4
- package/esm2022/ui/nested/adaptive-layout.mjs +4 -4
- package/esm2022/ui/nested/aggregation-interval.mjs +4 -4
- package/esm2022/ui/nested/aggregation.mjs +4 -4
- package/esm2022/ui/nested/animation.mjs +4 -4
- package/esm2022/ui/nested/annotation-dxi.mjs +4 -4
- package/esm2022/ui/nested/api-key.mjs +4 -4
- package/esm2022/ui/nested/appointment-dragging.mjs +4 -4
- package/esm2022/ui/nested/area.mjs +4 -4
- package/esm2022/ui/nested/argument-axis.mjs +4 -4
- package/esm2022/ui/nested/argument-format.mjs +4 -4
- package/esm2022/ui/nested/at.mjs +4 -4
- package/esm2022/ui/nested/auto-layout.mjs +4 -4
- package/esm2022/ui/nested/background-color.mjs +4 -4
- package/esm2022/ui/nested/background.mjs +4 -4
- package/esm2022/ui/nested/bar.mjs +4 -4
- package/esm2022/ui/nested/base/animation-config.mjs +4 -4
- package/esm2022/ui/nested/base/animation-state.mjs +4 -4
- package/esm2022/ui/nested/base/box-options.mjs +4 -4
- package/esm2022/ui/nested/base/button-group-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/button-options.mjs +4 -4
- package/esm2022/ui/nested/base/calendar-options.mjs +4 -4
- package/esm2022/ui/nested/base/chart-annotation-config-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/chart-common-annotation-config.mjs +4 -4
- package/esm2022/ui/nested/base/chart-common-series-settings.mjs +4 -4
- package/esm2022/ui/nested/base/chart-series-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/charts-color.mjs +4 -4
- package/esm2022/ui/nested/base/column-chooser-search-config.mjs +4 -4
- package/esm2022/ui/nested/base/column-chooser-selection-config.mjs +4 -4
- package/esm2022/ui/nested/base/data-change-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/data-grid-column-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/data-grid-toolbar.mjs +4 -4
- package/esm2022/ui/nested/base/diagram-custom-command-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/file-manager-context-menu.mjs +4 -4
- package/esm2022/ui/nested/base/file-manager-toolbar-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/file-uploader-options.mjs +4 -4
- package/esm2022/ui/nested/base/filter-builder-custom-operation-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/filter-builder-field-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/filter-builder-options.mjs +4 -4
- package/esm2022/ui/nested/base/form-options.mjs +4 -4
- package/esm2022/ui/nested/base/form-simple-item.mjs +4 -4
- package/esm2022/ui/nested/base/format.mjs +4 -4
- package/esm2022/ui/nested/base/gantt-filter-row-operation-descriptions.mjs +4 -4
- package/esm2022/ui/nested/base/gantt-filter-row.mjs +4 -4
- package/esm2022/ui/nested/base/gantt-header-filter-texts.mjs +4 -4
- package/esm2022/ui/nested/base/gantt-header-filter.mjs +4 -4
- package/esm2022/ui/nested/base/gantt-sorting.mjs +4 -4
- package/esm2022/ui/nested/base/gantt-strip-line-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/gauge-indicator.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-image-upload-tab-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-image-upload.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-media-resizing.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-mention-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-table-context-menu.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-table-resizing.mjs +4 -4
- package/esm2022/ui/nested/base/html-editor-variables.mjs +4 -4
- package/esm2022/ui/nested/base/pivot-grid-data-source.mjs +4 -4
- package/esm2022/ui/nested/base/popup-options.mjs +4 -4
- package/esm2022/ui/nested/base/position-config.mjs +4 -4
- package/esm2022/ui/nested/base/scheduler-scrolling.mjs +4 -4
- package/esm2022/ui/nested/base/sortable-options.mjs +4 -4
- package/esm2022/ui/nested/base/splitter-options.mjs +4 -4
- package/esm2022/ui/nested/base/tab-panel-options.mjs +4 -4
- package/esm2022/ui/nested/base/text-box-options.mjs +4 -4
- package/esm2022/ui/nested/base/text-editor-button-dxi.mjs +4 -4
- package/esm2022/ui/nested/base/vector-map-projection-config.mjs +4 -4
- package/esm2022/ui/nested/base/viz-font.mjs +4 -4
- package/esm2022/ui/nested/base/viz-scale-break-dxi.mjs +4 -4
- package/esm2022/ui/nested/behavior.mjs +4 -4
- package/esm2022/ui/nested/border.mjs +4 -4
- package/esm2022/ui/nested/boundary-offset.mjs +4 -4
- package/esm2022/ui/nested/box.mjs +4 -4
- package/esm2022/ui/nested/break-dxi.mjs +4 -4
- package/esm2022/ui/nested/break-style.mjs +4 -4
- package/esm2022/ui/nested/bubble.mjs +4 -4
- package/esm2022/ui/nested/button-dxi.mjs +4 -4
- package/esm2022/ui/nested/button-options.mjs +4 -4
- package/esm2022/ui/nested/calendar-options.mjs +4 -4
- package/esm2022/ui/nested/candlestick.mjs +4 -4
- package/esm2022/ui/nested/center-dxi.mjs +4 -4
- package/esm2022/ui/nested/change-dxi.mjs +4 -4
- package/esm2022/ui/nested/chart.mjs +4 -4
- package/esm2022/ui/nested/col-count-by-screen.mjs +4 -4
- package/esm2022/ui/nested/col-dxi.mjs +4 -4
- package/esm2022/ui/nested/collision.mjs +4 -4
- package/esm2022/ui/nested/color.mjs +4 -4
- package/esm2022/ui/nested/colorizer.mjs +4 -4
- package/esm2022/ui/nested/column-chooser.mjs +4 -4
- package/esm2022/ui/nested/column-dxi.mjs +4 -4
- package/esm2022/ui/nested/column-fixing.mjs +4 -4
- package/esm2022/ui/nested/command-dxi.mjs +4 -4
- package/esm2022/ui/nested/common-annotation-settings.mjs +4 -4
- package/esm2022/ui/nested/common-axis-settings.mjs +4 -4
- package/esm2022/ui/nested/common-pane-settings.mjs +4 -4
- package/esm2022/ui/nested/common-series-settings.mjs +4 -4
- package/esm2022/ui/nested/connection-point-dxi.mjs +4 -4
- package/esm2022/ui/nested/connector.mjs +4 -4
- package/esm2022/ui/nested/constant-line-dxi.mjs +4 -4
- package/esm2022/ui/nested/constant-line-style.mjs +4 -4
- package/esm2022/ui/nested/context-menu.mjs +4 -4
- package/esm2022/ui/nested/context-toolbox.mjs +4 -4
- package/esm2022/ui/nested/control-bar.mjs +4 -4
- package/esm2022/ui/nested/crosshair.mjs +4 -4
- package/esm2022/ui/nested/cursor-offset.mjs +4 -4
- package/esm2022/ui/nested/custom-operation-dxi.mjs +4 -4
- package/esm2022/ui/nested/custom-shape-dxi.mjs +4 -4
- package/esm2022/ui/nested/data-prepare-settings.mjs +4 -4
- package/esm2022/ui/nested/data-source.mjs +4 -4
- package/esm2022/ui/nested/default-item-properties.mjs +4 -4
- package/esm2022/ui/nested/delay.mjs +4 -4
- package/esm2022/ui/nested/dependencies.mjs +4 -4
- package/esm2022/ui/nested/details.mjs +4 -4
- package/esm2022/ui/nested/display-format.mjs +4 -4
- package/esm2022/ui/nested/drag-box-style.mjs +4 -4
- package/esm2022/ui/nested/drop-down-options.mjs +4 -4
- package/esm2022/ui/nested/edges.mjs +4 -4
- package/esm2022/ui/nested/editing.mjs +4 -4
- package/esm2022/ui/nested/export.mjs +4 -4
- package/esm2022/ui/nested/field-chooser.mjs +4 -4
- package/esm2022/ui/nested/field-dxi.mjs +4 -4
- package/esm2022/ui/nested/field-panel.mjs +4 -4
- package/esm2022/ui/nested/file-selection-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/file-uploader-options.mjs +4 -4
- package/esm2022/ui/nested/filter-builder-popup.mjs +4 -4
- package/esm2022/ui/nested/filter-builder.mjs +4 -4
- package/esm2022/ui/nested/filter-operation-descriptions.mjs +4 -4
- package/esm2022/ui/nested/filter-panel.mjs +4 -4
- package/esm2022/ui/nested/filter-row.mjs +4 -4
- package/esm2022/ui/nested/font.mjs +4 -4
- package/esm2022/ui/nested/form-item.mjs +4 -4
- package/esm2022/ui/nested/form.mjs +4 -4
- package/esm2022/ui/nested/format.mjs +4 -4
- package/esm2022/ui/nested/from.mjs +4 -4
- package/esm2022/ui/nested/fullstackedarea.mjs +4 -4
- package/esm2022/ui/nested/fullstackedbar.mjs +4 -4
- package/esm2022/ui/nested/fullstackedline.mjs +4 -4
- package/esm2022/ui/nested/fullstackedspline.mjs +4 -4
- package/esm2022/ui/nested/fullstackedsplinearea.mjs +4 -4
- package/esm2022/ui/nested/geometry.mjs +4 -4
- package/esm2022/ui/nested/grid-size.mjs +4 -4
- package/esm2022/ui/nested/grid.mjs +4 -4
- package/esm2022/ui/nested/group-dxi.mjs +4 -4
- package/esm2022/ui/nested/group-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/group-operation-descriptions.mjs +4 -4
- package/esm2022/ui/nested/group-panel.mjs +4 -4
- package/esm2022/ui/nested/group.mjs +4 -4
- package/esm2022/ui/nested/grouping.mjs +4 -4
- package/esm2022/ui/nested/hatching.mjs +4 -4
- package/esm2022/ui/nested/header-filter.mjs +4 -4
- package/esm2022/ui/nested/height.mjs +4 -4
- package/esm2022/ui/nested/hide-event.mjs +4 -4
- package/esm2022/ui/nested/hide.mjs +4 -4
- package/esm2022/ui/nested/history-toolbar.mjs +4 -4
- package/esm2022/ui/nested/horizontal-line.mjs +4 -4
- package/esm2022/ui/nested/hover-style.mjs +4 -4
- package/esm2022/ui/nested/image-upload.mjs +4 -4
- package/esm2022/ui/nested/image.mjs +4 -4
- package/esm2022/ui/nested/indent.mjs +4 -4
- package/esm2022/ui/nested/index.mjs +4 -4
- package/esm2022/ui/nested/item-dragging.mjs +4 -4
- package/esm2022/ui/nested/item-dxi.mjs +4 -4
- package/esm2022/ui/nested/item-text-format.mjs +4 -4
- package/esm2022/ui/nested/item-view.mjs +4 -4
- package/esm2022/ui/nested/item.mjs +4 -4
- package/esm2022/ui/nested/keyboard-navigation.mjs +4 -4
- package/esm2022/ui/nested/label.mjs +4 -4
- package/esm2022/ui/nested/layer-dxi.mjs +4 -4
- package/esm2022/ui/nested/legend-dxi.mjs +4 -4
- package/esm2022/ui/nested/legend.mjs +4 -4
- package/esm2022/ui/nested/line.mjs +4 -4
- package/esm2022/ui/nested/link.mjs +4 -4
- package/esm2022/ui/nested/load-panel.mjs +4 -4
- package/esm2022/ui/nested/loading-indicator.mjs +4 -4
- package/esm2022/ui/nested/location-dxi.mjs +4 -4
- package/esm2022/ui/nested/lookup.mjs +4 -4
- package/esm2022/ui/nested/main-toolbar.mjs +4 -4
- package/esm2022/ui/nested/margin.mjs +4 -4
- package/esm2022/ui/nested/marker-dxi.mjs +4 -4
- package/esm2022/ui/nested/marker.mjs +4 -4
- package/esm2022/ui/nested/master-detail.mjs +4 -4
- package/esm2022/ui/nested/max-range.mjs +4 -4
- package/esm2022/ui/nested/media-resizing.mjs +4 -4
- package/esm2022/ui/nested/mention-dxi.mjs +4 -4
- package/esm2022/ui/nested/menu-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/min-range.mjs +4 -4
- package/esm2022/ui/nested/min-visual-range-length.mjs +4 -4
- package/esm2022/ui/nested/minor-grid.mjs +4 -4
- package/esm2022/ui/nested/minor-tick-interval.mjs +4 -4
- package/esm2022/ui/nested/minor-tick.mjs +4 -4
- package/esm2022/ui/nested/my.mjs +4 -4
- package/esm2022/ui/nested/node.mjs +4 -4
- package/esm2022/ui/nested/nodes.mjs +4 -4
- package/esm2022/ui/nested/notifications.mjs +4 -4
- package/esm2022/ui/nested/offset.mjs +4 -4
- package/esm2022/ui/nested/operation-descriptions.mjs +4 -4
- package/esm2022/ui/nested/options.mjs +4 -4
- package/esm2022/ui/nested/page-size.mjs +4 -4
- package/esm2022/ui/nested/pager.mjs +4 -4
- package/esm2022/ui/nested/paging.mjs +4 -4
- package/esm2022/ui/nested/pane-dxi.mjs +4 -4
- package/esm2022/ui/nested/permissions.mjs +4 -4
- package/esm2022/ui/nested/point.mjs +4 -4
- package/esm2022/ui/nested/popup.mjs +4 -4
- package/esm2022/ui/nested/position.mjs +4 -4
- package/esm2022/ui/nested/projection.mjs +4 -4
- package/esm2022/ui/nested/properties-panel.mjs +4 -4
- package/esm2022/ui/nested/range-container.mjs +4 -4
- package/esm2022/ui/nested/range-dxi.mjs +4 -4
- package/esm2022/ui/nested/rangearea.mjs +4 -4
- package/esm2022/ui/nested/rangebar.mjs +4 -4
- package/esm2022/ui/nested/reduction.mjs +4 -4
- package/esm2022/ui/nested/remote-operations.mjs +4 -4
- package/esm2022/ui/nested/resource-assignments.mjs +4 -4
- package/esm2022/ui/nested/resource-dxi.mjs +4 -4
- package/esm2022/ui/nested/resources.mjs +4 -4
- package/esm2022/ui/nested/route-dxi.mjs +4 -4
- package/esm2022/ui/nested/row-dragging.mjs +4 -4
- package/esm2022/ui/nested/row-dxi.mjs +4 -4
- package/esm2022/ui/nested/scale-type-range.mjs +4 -4
- package/esm2022/ui/nested/scale.mjs +4 -4
- package/esm2022/ui/nested/scatter.mjs +4 -4
- package/esm2022/ui/nested/scroll-bar.mjs +4 -4
- package/esm2022/ui/nested/scrolling.mjs +4 -4
- package/esm2022/ui/nested/search-editor-options.mjs +4 -4
- package/esm2022/ui/nested/search-panel.mjs +4 -4
- package/esm2022/ui/nested/search.mjs +4 -4
- package/esm2022/ui/nested/selection-style.mjs +4 -4
- package/esm2022/ui/nested/selection.mjs +4 -4
- package/esm2022/ui/nested/series-dxi.mjs +4 -4
- package/esm2022/ui/nested/series-template.mjs +4 -4
- package/esm2022/ui/nested/shadow.mjs +4 -4
- package/esm2022/ui/nested/show-event.mjs +4 -4
- package/esm2022/ui/nested/show-first-submenu-mode.mjs +4 -4
- package/esm2022/ui/nested/show-submenu-mode.mjs +4 -4
- package/esm2022/ui/nested/show.mjs +4 -4
- package/esm2022/ui/nested/shutter.mjs +4 -4
- package/esm2022/ui/nested/size.mjs +4 -4
- package/esm2022/ui/nested/slider-handle.mjs +4 -4
- package/esm2022/ui/nested/slider-marker.mjs +4 -4
- package/esm2022/ui/nested/small-values-grouping.mjs +4 -4
- package/esm2022/ui/nested/sort-by-group-summary-info-dxi.mjs +4 -4
- package/esm2022/ui/nested/sorting.mjs +4 -4
- package/esm2022/ui/nested/source.mjs +4 -4
- package/esm2022/ui/nested/spline.mjs +4 -4
- package/esm2022/ui/nested/splinearea.mjs +4 -4
- package/esm2022/ui/nested/splitter.mjs +4 -4
- package/esm2022/ui/nested/stackedarea.mjs +4 -4
- package/esm2022/ui/nested/stackedbar.mjs +4 -4
- package/esm2022/ui/nested/stackedline.mjs +4 -4
- package/esm2022/ui/nested/stackedspline.mjs +4 -4
- package/esm2022/ui/nested/stackedsplinearea.mjs +4 -4
- package/esm2022/ui/nested/state-storing.mjs +4 -4
- package/esm2022/ui/nested/steparea.mjs +4 -4
- package/esm2022/ui/nested/stepline.mjs +4 -4
- package/esm2022/ui/nested/stock.mjs +4 -4
- package/esm2022/ui/nested/store.mjs +4 -4
- package/esm2022/ui/nested/strip-dxi.mjs +4 -4
- package/esm2022/ui/nested/strip-line-dxi.mjs +4 -4
- package/esm2022/ui/nested/strip-style.mjs +4 -4
- package/esm2022/ui/nested/subtitle.mjs +4 -4
- package/esm2022/ui/nested/subvalue-indicator.mjs +4 -4
- package/esm2022/ui/nested/summary.mjs +4 -4
- package/esm2022/ui/nested/tab-dxi.mjs +4 -4
- package/esm2022/ui/nested/tab-panel-options.mjs +4 -4
- package/esm2022/ui/nested/table-context-menu.mjs +4 -4
- package/esm2022/ui/nested/table-resizing.mjs +4 -4
- package/esm2022/ui/nested/tasks.mjs +4 -4
- package/esm2022/ui/nested/text.mjs +4 -4
- package/esm2022/ui/nested/texts.mjs +4 -4
- package/esm2022/ui/nested/tick-interval.mjs +4 -4
- package/esm2022/ui/nested/tick.mjs +4 -4
- package/esm2022/ui/nested/tile.mjs +4 -4
- package/esm2022/ui/nested/title.mjs +4 -4
- package/esm2022/ui/nested/to.mjs +4 -4
- package/esm2022/ui/nested/toolbar-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/toolbar.mjs +4 -4
- package/esm2022/ui/nested/toolbox.mjs +4 -4
- package/esm2022/ui/nested/tooltip.mjs +4 -4
- package/esm2022/ui/nested/total-item-dxi.mjs +4 -4
- package/esm2022/ui/nested/upload.mjs +4 -4
- package/esm2022/ui/nested/url.mjs +4 -4
- package/esm2022/ui/nested/validation-rule-dxi.mjs +4 -4
- package/esm2022/ui/nested/validation.mjs +4 -4
- package/esm2022/ui/nested/value-axis-dxi.mjs +4 -4
- package/esm2022/ui/nested/value-axis.mjs +4 -4
- package/esm2022/ui/nested/value-error-bar.mjs +4 -4
- package/esm2022/ui/nested/value-format.mjs +4 -4
- package/esm2022/ui/nested/value-indicator.mjs +4 -4
- package/esm2022/ui/nested/variables.mjs +4 -4
- package/esm2022/ui/nested/vertical-line.mjs +4 -4
- package/esm2022/ui/nested/view-dxi.mjs +4 -4
- package/esm2022/ui/nested/view-toolbar.mjs +4 -4
- package/esm2022/ui/nested/width.mjs +4 -4
- package/esm2022/ui/nested/zoom-and-pan.mjs +4 -4
- package/esm2022/ui/nested/zoom-level.mjs +4 -4
- package/esm2022/ui/number-box/index.mjs +4 -4
- package/esm2022/ui/pie-chart/index.mjs +4 -4
- package/esm2022/ui/pivot-grid/index.mjs +4 -4
- package/esm2022/ui/pivot-grid-field-chooser/index.mjs +4 -4
- package/esm2022/ui/polar-chart/index.mjs +4 -4
- package/esm2022/ui/popover/index.mjs +4 -4
- package/esm2022/ui/popup/index.mjs +4 -4
- package/esm2022/ui/progress-bar/index.mjs +4 -4
- package/esm2022/ui/radio-group/index.mjs +4 -4
- package/esm2022/ui/range-selector/index.mjs +4 -4
- package/esm2022/ui/range-slider/index.mjs +4 -4
- package/esm2022/ui/recurrence-editor/index.mjs +4 -4
- package/esm2022/ui/resizable/index.mjs +4 -4
- package/esm2022/ui/responsive-box/index.mjs +4 -4
- package/esm2022/ui/sankey/index.mjs +4 -4
- package/esm2022/ui/scheduler/index.mjs +4 -4
- package/esm2022/ui/scroll-view/index.mjs +4 -4
- package/esm2022/ui/select-box/index.mjs +4 -4
- package/esm2022/ui/slider/index.mjs +4 -4
- package/esm2022/ui/sortable/index.mjs +4 -4
- package/esm2022/ui/sparkline/index.mjs +4 -4
- package/esm2022/ui/speed-dial-action/index.mjs +4 -4
- package/esm2022/ui/splitter/index.mjs +4 -4
- package/esm2022/ui/switch/index.mjs +4 -4
- package/esm2022/ui/tab-panel/index.mjs +4 -4
- package/esm2022/ui/tabs/index.mjs +4 -4
- package/esm2022/ui/tag-box/index.mjs +4 -4
- package/esm2022/ui/text-area/index.mjs +4 -4
- package/esm2022/ui/text-box/index.mjs +4 -4
- package/esm2022/ui/tile-view/index.mjs +4 -4
- package/esm2022/ui/toast/index.mjs +4 -4
- package/esm2022/ui/toolbar/index.mjs +4 -4
- package/esm2022/ui/tooltip/index.mjs +4 -4
- package/esm2022/ui/tree-list/index.mjs +4 -4
- package/esm2022/ui/tree-map/index.mjs +4 -4
- package/esm2022/ui/tree-view/index.mjs +4 -4
- package/esm2022/ui/validation-group/index.mjs +4 -4
- package/esm2022/ui/validation-summary/index.mjs +4 -4
- package/esm2022/ui/validator/index.mjs +4 -4
- package/esm2022/ui/vector-map/index.mjs +4 -4
- package/fesm2022/devextreme-angular-common-charts.mjs +3 -3
- package/fesm2022/devextreme-angular-common-charts.mjs.map +1 -1
- package/fesm2022/devextreme-angular-common-data-custom-store.mjs +3 -3
- package/fesm2022/devextreme-angular-common-data-custom-store.mjs.map +1 -1
- package/fesm2022/devextreme-angular-common-grids.mjs +3 -3
- package/fesm2022/devextreme-angular-common-grids.mjs.map +1 -1
- package/fesm2022/devextreme-angular-common.mjs +3 -3
- package/fesm2022/devextreme-angular-common.mjs.map +1 -1
- package/fesm2022/devextreme-angular-core.mjs +33 -33
- package/fesm2022/devextreme-angular-core.mjs.map +1 -1
- package/fesm2022/devextreme-angular-http.mjs +6 -6
- package/fesm2022/devextreme-angular-http.mjs.map +1 -1
- package/fesm2022/devextreme-angular-server.mjs +6 -6
- package/fesm2022/devextreme-angular-server.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-accordion.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-accordion.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-action-sheet.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-action-sheet.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-autocomplete.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-autocomplete.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-bar-gauge.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-bar-gauge.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-bullet.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-bullet.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-button-group.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-button-group.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-button.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-button.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-calendar.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-calendar.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-chart.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-chart.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-check-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-check-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-circular-gauge.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-circular-gauge.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-color-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-color-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-context-menu.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-context-menu.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-data-grid.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-data-grid.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-date-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-date-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-date-range-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-date-range-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-defer-rendering.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-defer-rendering.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-diagram.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-diagram.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-draggable.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-draggable.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-drawer.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-drawer.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-drop-down-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-drop-down-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-drop-down-button.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-drop-down-button.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-file-manager.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-file-manager.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-file-uploader.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-file-uploader.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-filter-builder.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-filter-builder.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-form.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-form.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-funnel.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-funnel.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-gallery.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-gallery.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-gantt.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-gantt.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-html-editor.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-html-editor.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-linear-gauge.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-linear-gauge.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-list.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-list.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-load-indicator.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-load-indicator.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-load-panel.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-load-panel.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-lookup.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-lookup.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-map.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-map.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-menu.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-menu.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-multi-view.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-multi-view.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-nested.mjs +885 -885
- package/fesm2022/devextreme-angular-ui-nested.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-number-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-number-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-pie-chart.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-pie-chart.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-pivot-grid-field-chooser.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-pivot-grid-field-chooser.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-pivot-grid.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-pivot-grid.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-polar-chart.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-polar-chart.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-popover.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-popover.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-popup.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-popup.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-progress-bar.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-progress-bar.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-radio-group.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-radio-group.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-range-selector.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-range-selector.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-range-slider.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-range-slider.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-recurrence-editor.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-recurrence-editor.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-resizable.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-resizable.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-responsive-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-responsive-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-sankey.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-sankey.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-scheduler.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-scheduler.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-scroll-view.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-scroll-view.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-select-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-select-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-slider.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-slider.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-sortable.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-sortable.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-sparkline.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-sparkline.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-speed-dial-action.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-speed-dial-action.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-splitter.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-splitter.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-switch.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-switch.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tab-panel.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tab-panel.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tabs.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tabs.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tag-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tag-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-text-area.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-text-area.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-text-box.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-text-box.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tile-view.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tile-view.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-toast.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-toast.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-toolbar.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-toolbar.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tooltip.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tooltip.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tree-list.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tree-list.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tree-map.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tree-map.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-tree-view.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-tree-view.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-validation-group.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-validation-group.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-validation-summary.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-validation-summary.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-validator.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-validator.mjs.map +1 -1
- package/fesm2022/devextreme-angular-ui-vector-map.mjs +3 -3
- package/fesm2022/devextreme-angular-ui-vector-map.mjs.map +1 -1
- package/fesm2022/devextreme-angular.mjs +15 -15
- package/fesm2022/devextreme-angular.mjs.map +1 -1
- package/http/ajax.d.ts +3 -3
- package/http/index.d.ts +3 -3
- package/index.d.ts +3 -3
- package/package.json +11 -10
- package/server/index.d.ts +3 -3
- package/ui/accordion/index.d.ts +3 -3
- package/ui/action-sheet/index.d.ts +3 -3
- package/ui/autocomplete/index.d.ts +3 -3
- package/ui/bar-gauge/index.d.ts +3 -3
- package/ui/box/index.d.ts +3 -3
- package/ui/bullet/index.d.ts +3 -3
- package/ui/button/index.d.ts +3 -3
- package/ui/button-group/index.d.ts +3 -3
- package/ui/calendar/index.d.ts +3 -3
- package/ui/chart/index.d.ts +3 -3
- package/ui/check-box/index.d.ts +3 -3
- package/ui/circular-gauge/index.d.ts +3 -3
- package/ui/color-box/index.d.ts +3 -3
- package/ui/context-menu/index.d.ts +3 -3
- package/ui/data-grid/index.d.ts +3 -3
- package/ui/date-box/index.d.ts +3 -3
- package/ui/date-range-box/index.d.ts +3 -3
- package/ui/defer-rendering/index.d.ts +3 -3
- package/ui/diagram/index.d.ts +3 -3
- package/ui/draggable/index.d.ts +3 -3
- package/ui/drawer/index.d.ts +3 -3
- package/ui/drop-down-box/index.d.ts +3 -3
- package/ui/drop-down-button/index.d.ts +3 -3
- package/ui/file-manager/index.d.ts +3 -3
- package/ui/file-uploader/index.d.ts +3 -3
- package/ui/filter-builder/index.d.ts +3 -3
- package/ui/form/index.d.ts +3 -3
- package/ui/funnel/index.d.ts +3 -3
- package/ui/gallery/index.d.ts +3 -3
- package/ui/gantt/index.d.ts +3 -3
- package/ui/html-editor/index.d.ts +3 -3
- package/ui/linear-gauge/index.d.ts +3 -3
- package/ui/list/index.d.ts +3 -3
- package/ui/load-indicator/index.d.ts +3 -3
- package/ui/load-panel/index.d.ts +3 -3
- package/ui/lookup/index.d.ts +3 -3
- package/ui/map/index.d.ts +3 -3
- package/ui/menu/index.d.ts +3 -3
- package/ui/multi-view/index.d.ts +3 -3
- package/ui/nested/adapter.d.ts +3 -3
- package/ui/nested/adaptive-layout.d.ts +3 -3
- package/ui/nested/aggregation-interval.d.ts +3 -3
- package/ui/nested/aggregation.d.ts +3 -3
- package/ui/nested/animation.d.ts +3 -3
- package/ui/nested/api-key.d.ts +3 -3
- package/ui/nested/appointment-dragging.d.ts +3 -3
- package/ui/nested/area.d.ts +3 -3
- package/ui/nested/argument-axis.d.ts +3 -3
- package/ui/nested/argument-format.d.ts +3 -3
- package/ui/nested/at.d.ts +3 -3
- package/ui/nested/auto-layout.d.ts +3 -3
- package/ui/nested/background-color.d.ts +3 -3
- package/ui/nested/background.d.ts +3 -3
- package/ui/nested/bar.d.ts +3 -3
- package/ui/nested/base/animation-config.d.ts +3 -3
- package/ui/nested/base/animation-state.d.ts +3 -3
- package/ui/nested/base/box-options.d.ts +3 -3
- package/ui/nested/base/button-group-item-dxi.d.ts +3 -3
- package/ui/nested/base/button-options.d.ts +3 -3
- package/ui/nested/base/calendar-options.d.ts +3 -3
- package/ui/nested/base/chart-annotation-config-dxi.d.ts +3 -3
- package/ui/nested/base/chart-common-annotation-config.d.ts +3 -3
- package/ui/nested/base/chart-common-series-settings.d.ts +3 -3
- package/ui/nested/base/chart-series-dxi.d.ts +3 -3
- package/ui/nested/base/charts-color.d.ts +3 -3
- package/ui/nested/base/column-chooser-search-config.d.ts +3 -3
- package/ui/nested/base/column-chooser-selection-config.d.ts +3 -3
- package/ui/nested/base/data-change-dxi.d.ts +3 -3
- package/ui/nested/base/data-grid-column-dxi.d.ts +3 -3
- package/ui/nested/base/data-grid-toolbar.d.ts +3 -3
- package/ui/nested/base/diagram-custom-command-dxi.d.ts +3 -3
- package/ui/nested/base/file-manager-context-menu.d.ts +3 -3
- package/ui/nested/base/file-manager-toolbar-item-dxi.d.ts +3 -3
- package/ui/nested/base/file-uploader-options.d.ts +3 -3
- package/ui/nested/base/filter-builder-custom-operation-dxi.d.ts +3 -3
- package/ui/nested/base/filter-builder-field-dxi.d.ts +3 -3
- package/ui/nested/base/filter-builder-options.d.ts +3 -3
- package/ui/nested/base/form-options.d.ts +3 -3
- package/ui/nested/base/form-simple-item.d.ts +3 -3
- package/ui/nested/base/format.d.ts +3 -3
- package/ui/nested/base/gantt-filter-row-operation-descriptions.d.ts +3 -3
- package/ui/nested/base/gantt-filter-row.d.ts +3 -3
- package/ui/nested/base/gantt-header-filter-texts.d.ts +3 -3
- package/ui/nested/base/gantt-header-filter.d.ts +3 -3
- package/ui/nested/base/gantt-sorting.d.ts +3 -3
- package/ui/nested/base/gantt-strip-line-dxi.d.ts +3 -3
- package/ui/nested/base/gauge-indicator.d.ts +3 -3
- package/ui/nested/base/html-editor-image-upload-tab-item-dxi.d.ts +3 -3
- package/ui/nested/base/html-editor-image-upload.d.ts +3 -3
- package/ui/nested/base/html-editor-media-resizing.d.ts +3 -3
- package/ui/nested/base/html-editor-mention-dxi.d.ts +3 -3
- package/ui/nested/base/html-editor-table-context-menu.d.ts +3 -3
- package/ui/nested/base/html-editor-table-resizing.d.ts +3 -3
- package/ui/nested/base/html-editor-variables.d.ts +3 -3
- package/ui/nested/base/pivot-grid-data-source.d.ts +3 -3
- package/ui/nested/base/popup-options.d.ts +3 -3
- package/ui/nested/base/position-config.d.ts +3 -3
- package/ui/nested/base/scheduler-scrolling.d.ts +3 -3
- package/ui/nested/base/sortable-options.d.ts +3 -3
- package/ui/nested/base/splitter-options.d.ts +3 -3
- package/ui/nested/base/tab-panel-options.d.ts +3 -3
- package/ui/nested/base/text-box-options.d.ts +3 -3
- package/ui/nested/base/text-editor-button-dxi.d.ts +3 -3
- package/ui/nested/base/vector-map-projection-config.d.ts +3 -3
- package/ui/nested/base/viz-font.d.ts +3 -3
- package/ui/nested/base/viz-scale-break-dxi.d.ts +3 -3
- package/ui/nested/behavior.d.ts +3 -3
- package/ui/nested/border.d.ts +3 -3
- package/ui/nested/boundary-offset.d.ts +3 -3
- package/ui/nested/box.d.ts +3 -3
- package/ui/nested/break-style.d.ts +3 -3
- package/ui/nested/bubble.d.ts +3 -3
- package/ui/nested/button-options.d.ts +3 -3
- package/ui/nested/calendar-options.d.ts +3 -3
- package/ui/nested/candlestick.d.ts +3 -3
- package/ui/nested/chart.d.ts +3 -3
- package/ui/nested/col-count-by-screen.d.ts +3 -3
- package/ui/nested/collision.d.ts +3 -3
- package/ui/nested/color.d.ts +3 -3
- package/ui/nested/colorizer.d.ts +3 -3
- package/ui/nested/column-chooser.d.ts +3 -3
- package/ui/nested/column-dxi.d.ts +3 -3
- package/ui/nested/column-fixing.d.ts +3 -3
- package/ui/nested/command-dxi.d.ts +3 -3
- package/ui/nested/common-annotation-settings.d.ts +3 -3
- package/ui/nested/common-axis-settings.d.ts +3 -3
- package/ui/nested/common-pane-settings.d.ts +3 -3
- package/ui/nested/common-series-settings.d.ts +3 -3
- package/ui/nested/connector.d.ts +3 -3
- package/ui/nested/constant-line-style.d.ts +3 -3
- package/ui/nested/context-menu.d.ts +3 -3
- package/ui/nested/context-toolbox.d.ts +3 -3
- package/ui/nested/control-bar.d.ts +3 -3
- package/ui/nested/crosshair.d.ts +3 -3
- package/ui/nested/cursor-offset.d.ts +3 -3
- package/ui/nested/custom-shape-dxi.d.ts +3 -3
- package/ui/nested/data-prepare-settings.d.ts +3 -3
- package/ui/nested/data-source.d.ts +3 -3
- package/ui/nested/default-item-properties.d.ts +3 -3
- package/ui/nested/delay.d.ts +3 -3
- package/ui/nested/dependencies.d.ts +3 -3
- package/ui/nested/details.d.ts +3 -3
- package/ui/nested/display-format.d.ts +3 -3
- package/ui/nested/drag-box-style.d.ts +3 -3
- package/ui/nested/drop-down-options.d.ts +3 -3
- package/ui/nested/edges.d.ts +3 -3
- package/ui/nested/editing.d.ts +3 -3
- package/ui/nested/export.d.ts +3 -3
- package/ui/nested/field-chooser.d.ts +3 -3
- package/ui/nested/field-panel.d.ts +3 -3
- package/ui/nested/file-uploader-options.d.ts +3 -3
- package/ui/nested/filter-builder-popup.d.ts +3 -3
- package/ui/nested/filter-builder.d.ts +3 -3
- package/ui/nested/filter-operation-descriptions.d.ts +3 -3
- package/ui/nested/filter-panel.d.ts +3 -3
- package/ui/nested/filter-row.d.ts +3 -3
- package/ui/nested/font.d.ts +3 -3
- package/ui/nested/form-item.d.ts +3 -3
- package/ui/nested/form.d.ts +3 -3
- package/ui/nested/format.d.ts +3 -3
- package/ui/nested/from.d.ts +3 -3
- package/ui/nested/fullstackedarea.d.ts +3 -3
- package/ui/nested/fullstackedbar.d.ts +3 -3
- package/ui/nested/fullstackedline.d.ts +3 -3
- package/ui/nested/fullstackedspline.d.ts +3 -3
- package/ui/nested/fullstackedsplinearea.d.ts +3 -3
- package/ui/nested/geometry.d.ts +3 -3
- package/ui/nested/grid-size.d.ts +3 -3
- package/ui/nested/grid.d.ts +3 -3
- package/ui/nested/group-dxi.d.ts +3 -3
- package/ui/nested/group-operation-descriptions.d.ts +3 -3
- package/ui/nested/group-panel.d.ts +3 -3
- package/ui/nested/group.d.ts +3 -3
- package/ui/nested/grouping.d.ts +3 -3
- package/ui/nested/hatching.d.ts +3 -3
- package/ui/nested/header-filter.d.ts +3 -3
- package/ui/nested/height.d.ts +3 -3
- package/ui/nested/hide-event.d.ts +3 -3
- package/ui/nested/hide.d.ts +3 -3
- package/ui/nested/history-toolbar.d.ts +3 -3
- package/ui/nested/horizontal-line.d.ts +3 -3
- package/ui/nested/hover-style.d.ts +3 -3
- package/ui/nested/image-upload.d.ts +3 -3
- package/ui/nested/image.d.ts +3 -3
- package/ui/nested/indent.d.ts +3 -3
- package/ui/nested/index.d.ts +3 -3
- package/ui/nested/item-dragging.d.ts +3 -3
- package/ui/nested/item-dxi.d.ts +3 -3
- package/ui/nested/item-text-format.d.ts +3 -3
- package/ui/nested/item-view.d.ts +3 -3
- package/ui/nested/item.d.ts +3 -3
- package/ui/nested/keyboard-navigation.d.ts +3 -3
- package/ui/nested/label.d.ts +3 -3
- package/ui/nested/legend.d.ts +3 -3
- package/ui/nested/line.d.ts +3 -3
- package/ui/nested/link.d.ts +3 -3
- package/ui/nested/load-panel.d.ts +3 -3
- package/ui/nested/loading-indicator.d.ts +3 -3
- package/ui/nested/lookup.d.ts +3 -3
- package/ui/nested/main-toolbar.d.ts +3 -3
- package/ui/nested/margin.d.ts +3 -3
- package/ui/nested/marker-dxi.d.ts +3 -3
- package/ui/nested/marker.d.ts +3 -3
- package/ui/nested/master-detail.d.ts +3 -3
- package/ui/nested/max-range.d.ts +3 -3
- package/ui/nested/media-resizing.d.ts +3 -3
- package/ui/nested/min-range.d.ts +3 -3
- package/ui/nested/min-visual-range-length.d.ts +3 -3
- package/ui/nested/minor-grid.d.ts +3 -3
- package/ui/nested/minor-tick-interval.d.ts +3 -3
- package/ui/nested/minor-tick.d.ts +3 -3
- package/ui/nested/my.d.ts +3 -3
- package/ui/nested/node.d.ts +3 -3
- package/ui/nested/nodes.d.ts +3 -3
- package/ui/nested/notifications.d.ts +3 -3
- package/ui/nested/offset.d.ts +3 -3
- package/ui/nested/operation-descriptions.d.ts +3 -3
- package/ui/nested/options.d.ts +3 -3
- package/ui/nested/page-size.d.ts +3 -3
- package/ui/nested/pager.d.ts +3 -3
- package/ui/nested/paging.d.ts +3 -3
- package/ui/nested/permissions.d.ts +3 -3
- package/ui/nested/point.d.ts +3 -3
- package/ui/nested/popup.d.ts +3 -3
- package/ui/nested/position.d.ts +3 -3
- package/ui/nested/projection.d.ts +3 -3
- package/ui/nested/properties-panel.d.ts +3 -3
- package/ui/nested/range-container.d.ts +3 -3
- package/ui/nested/rangearea.d.ts +3 -3
- package/ui/nested/rangebar.d.ts +3 -3
- package/ui/nested/reduction.d.ts +3 -3
- package/ui/nested/remote-operations.d.ts +3 -3
- package/ui/nested/resource-assignments.d.ts +3 -3
- package/ui/nested/resources.d.ts +3 -3
- package/ui/nested/route-dxi.d.ts +3 -3
- package/ui/nested/row-dragging.d.ts +3 -3
- package/ui/nested/scale-type-range.d.ts +3 -3
- package/ui/nested/scale.d.ts +3 -3
- package/ui/nested/scatter.d.ts +3 -3
- package/ui/nested/scroll-bar.d.ts +3 -3
- package/ui/nested/scrolling.d.ts +3 -3
- package/ui/nested/search-editor-options.d.ts +3 -3
- package/ui/nested/search-panel.d.ts +3 -3
- package/ui/nested/search.d.ts +3 -3
- package/ui/nested/selection-style.d.ts +3 -3
- package/ui/nested/selection.d.ts +3 -3
- package/ui/nested/series-template.d.ts +3 -3
- package/ui/nested/shadow.d.ts +3 -3
- package/ui/nested/show-event.d.ts +3 -3
- package/ui/nested/show-first-submenu-mode.d.ts +3 -3
- package/ui/nested/show-submenu-mode.d.ts +3 -3
- package/ui/nested/show.d.ts +3 -3
- package/ui/nested/shutter.d.ts +3 -3
- package/ui/nested/size.d.ts +3 -3
- package/ui/nested/slider-handle.d.ts +3 -3
- package/ui/nested/slider-marker.d.ts +3 -3
- package/ui/nested/small-values-grouping.d.ts +3 -3
- package/ui/nested/sorting.d.ts +3 -3
- package/ui/nested/source.d.ts +3 -3
- package/ui/nested/spline.d.ts +3 -3
- package/ui/nested/splinearea.d.ts +3 -3
- package/ui/nested/splitter.d.ts +3 -3
- package/ui/nested/stackedarea.d.ts +3 -3
- package/ui/nested/stackedbar.d.ts +3 -3
- package/ui/nested/stackedline.d.ts +3 -3
- package/ui/nested/stackedspline.d.ts +3 -3
- package/ui/nested/stackedsplinearea.d.ts +3 -3
- package/ui/nested/state-storing.d.ts +3 -3
- package/ui/nested/steparea.d.ts +3 -3
- package/ui/nested/stepline.d.ts +3 -3
- package/ui/nested/stock.d.ts +3 -3
- package/ui/nested/store.d.ts +3 -3
- package/ui/nested/strip-style.d.ts +3 -3
- package/ui/nested/subtitle.d.ts +3 -3
- package/ui/nested/subvalue-indicator.d.ts +3 -3
- package/ui/nested/summary.d.ts +3 -3
- package/ui/nested/tab-dxi.d.ts +3 -3
- package/ui/nested/tab-panel-options.d.ts +3 -3
- package/ui/nested/table-context-menu.d.ts +3 -3
- package/ui/nested/table-resizing.d.ts +3 -3
- package/ui/nested/tasks.d.ts +3 -3
- package/ui/nested/text.d.ts +3 -3
- package/ui/nested/texts.d.ts +3 -3
- package/ui/nested/tick-interval.d.ts +3 -3
- package/ui/nested/tick.d.ts +3 -3
- package/ui/nested/tile.d.ts +3 -3
- package/ui/nested/title.d.ts +3 -3
- package/ui/nested/to.d.ts +3 -3
- package/ui/nested/toolbar-item-dxi.d.ts +3 -3
- package/ui/nested/toolbar.d.ts +3 -3
- package/ui/nested/toolbox.d.ts +3 -3
- package/ui/nested/tooltip.d.ts +3 -3
- package/ui/nested/upload.d.ts +3 -3
- package/ui/nested/url.d.ts +3 -3
- package/ui/nested/validation.d.ts +3 -3
- package/ui/nested/value-axis-dxi.d.ts +3 -3
- package/ui/nested/value-axis.d.ts +3 -3
- package/ui/nested/value-error-bar.d.ts +3 -3
- package/ui/nested/value-format.d.ts +3 -3
- package/ui/nested/value-indicator.d.ts +3 -3
- package/ui/nested/variables.d.ts +3 -3
- package/ui/nested/vertical-line.d.ts +3 -3
- package/ui/nested/view-toolbar.d.ts +3 -3
- package/ui/nested/width.d.ts +3 -3
- package/ui/nested/zoom-and-pan.d.ts +3 -3
- package/ui/nested/zoom-level.d.ts +3 -3
- package/ui/number-box/index.d.ts +3 -3
- package/ui/pie-chart/index.d.ts +3 -3
- package/ui/pivot-grid/index.d.ts +3 -3
- package/ui/pivot-grid-field-chooser/index.d.ts +3 -3
- package/ui/polar-chart/index.d.ts +3 -3
- package/ui/popover/index.d.ts +3 -3
- package/ui/popup/index.d.ts +3 -3
- package/ui/progress-bar/index.d.ts +3 -3
- package/ui/radio-group/index.d.ts +3 -3
- package/ui/range-selector/index.d.ts +3 -3
- package/ui/range-slider/index.d.ts +3 -3
- package/ui/recurrence-editor/index.d.ts +3 -3
- package/ui/resizable/index.d.ts +3 -3
- package/ui/responsive-box/index.d.ts +3 -3
- package/ui/sankey/index.d.ts +3 -3
- package/ui/scheduler/index.d.ts +3 -3
- package/ui/scroll-view/index.d.ts +3 -3
- package/ui/select-box/index.d.ts +3 -3
- package/ui/slider/index.d.ts +3 -3
- package/ui/sortable/index.d.ts +3 -3
- package/ui/sparkline/index.d.ts +3 -3
- package/ui/speed-dial-action/index.d.ts +3 -3
- package/ui/splitter/index.d.ts +3 -3
- package/ui/switch/index.d.ts +3 -3
- package/ui/tab-panel/index.d.ts +3 -3
- package/ui/tabs/index.d.ts +3 -3
- package/ui/tag-box/index.d.ts +3 -3
- package/ui/text-area/index.d.ts +3 -3
- package/ui/text-box/index.d.ts +3 -3
- package/ui/tile-view/index.d.ts +3 -3
- package/ui/toast/index.d.ts +3 -3
- package/ui/toolbar/index.d.ts +3 -3
- package/ui/tooltip/index.d.ts +3 -3
- package/ui/tree-list/index.d.ts +3 -3
- package/ui/tree-map/index.d.ts +3 -3
- package/ui/tree-view/index.d.ts +3 -3
- package/ui/validation-group/index.d.ts +3 -3
- package/ui/validation-summary/index.d.ts +3 -3
- package/ui/validator/index.d.ts +3 -3
- package/ui/vector-map/index.d.ts +3 -3
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/*!
|
|
2
2
|
* devextreme-angular
|
|
3
|
-
* Version: 24.1.
|
|
4
|
-
* Build date:
|
|
3
|
+
* Version: 24.1.17
|
|
4
|
+
* Build date: Fri Apr 24 2026
|
|
5
5
|
*
|
|
6
|
-
* Copyright (c) 2012 -
|
|
6
|
+
* Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED
|
|
7
7
|
*
|
|
8
8
|
* This software may be modified and distributed under the terms
|
|
9
9
|
* of the MIT license. See the LICENSE file in the root of the project for details.
|
|
@@ -785,4 +785,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
785
785
|
]
|
|
786
786
|
}]
|
|
787
787
|
}] });
|
|
788
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9kaXN0L3VpL2xvYWQtcGFuZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0dBV0c7QUFFSCxvQ0FBb0M7QUFHcEMsT0FBTyxFQUNILGFBQWEsRUFDYixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEVBQ04sV0FBVyxFQUNYLE1BQU0sRUFFTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFlBQVksRUFDZixNQUFNLGVBQWUsQ0FBQztBQVN2QixPQUFPLFdBQVcsTUFBTSwwQkFBMEIsQ0FBQztBQUduRCxPQUFPLEVBQ0gsV0FBVyxFQUNYLGNBQWMsRUFDZCxtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixhQUFhLEVBQ2hCLE1BQU0seUJBQXlCLENBQUM7QUFFakMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFLN0Q7OztHQUdHO0FBV0gsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFdBQVc7SUFDakQsUUFBUSxHQUFnQixJQUFJLENBQUM7SUFFN0I7OztPQUdHO0lBQ0gsSUFDSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxLQUF5RDtRQUNuRSxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBR0Q7Ozs7O09BS0c7SUFDSCxJQUNJLG1CQUFtQjtRQUNuQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBQ0QsSUFBSSxtQkFBbUIsQ0FBQyxLQUF5QjtRQUM3QyxJQUFJLENBQUMsVUFBVSxDQUFDLHFCQUFxQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLEtBQThDO1FBQ3hELElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLGNBQWM7UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBQ0QsSUFBSSxjQUFjLENBQUMsS0FBYztRQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQWE7UUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUdEOzs7T0FHRztJQUNILElBQ0ksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDRCxJQUFJLGlCQUFpQixDQUFDLEtBQWM7UUFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxLQUFpQztRQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxrQkFBa0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUNELElBQUksa0JBQWtCLENBQUMsS0FBeUI7UUFDNUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxvQkFBb0IsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxrQkFBa0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUNELElBQUksa0JBQWtCLENBQUMsS0FBYztRQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLG9CQUFvQixFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2pELENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQXlCO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLGlCQUFpQjtRQUNqQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsSUFBSSxpQkFBaUIsQ0FBQyxLQUFjO1FBQ2hDLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUdEOzs7T0FHRztJQUNILElBQ0ksWUFBWTtRQUNaLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsSUFBSSxZQUFZLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFDRCxJQUFJLFNBQVMsQ0FBQyxLQUFpQztRQUMzQyxJQUFJLENBQUMsVUFBVSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFpQztRQUMxQyxJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFhO1FBQ3JCLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUNELElBQUksU0FBUyxDQUFDLEtBQWlDO1FBQzNDLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQWlDO1FBQzFDLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLFFBQVE7UUFDUixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELElBQUksUUFBUSxDQUFDLEtBQW9EO1FBQzdELElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQWM7UUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUdEOzs7T0FHRztJQUNILElBQ0ksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsSUFBSSxPQUFPLENBQUMsS0FBYztRQUN0QixJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxZQUFZO1FBQ1osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFDRCxJQUFJLFlBQVksQ0FBQyxLQUFhO1FBQzFCLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLGFBQWE7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUNELElBQUksYUFBYSxDQUFDLEtBQWM7UUFDNUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUdEOzs7T0FHRztJQUNILElBQ0ksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFVBQVUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFDRCxJQUFJLE9BQU8sQ0FBQyxLQUFjO1FBQ3RCLElBQUksQ0FBQyxVQUFVLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQWlDO1FBQ3ZDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLFdBQVc7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLEtBQVU7UUFDdEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ08sY0FBYyxDQUFrQztJQUUxRDs7Ozs7T0FLRztJQUNPLFdBQVcsQ0FBK0I7SUFFcEQ7Ozs7O09BS0c7SUFDTyxRQUFRLENBQTRCO0lBRTlDOzs7OztPQUtHO0lBQ08sUUFBUSxDQUE0QjtJQUU5Qzs7Ozs7T0FLRztJQUNPLGFBQWEsQ0FBaUM7SUFFeEQ7Ozs7O09BS0c7SUFDTyxlQUFlLENBQW1DO0lBRTVEOzs7OztPQUtHO0lBQ08sU0FBUyxDQUE2QjtJQUVoRDs7Ozs7T0FLRztJQUNPLE9BQU8sQ0FBMkI7SUFFNUM7Ozs7T0FJRztJQUNPLGVBQWUsQ0FBbUU7SUFFNUY7Ozs7T0FJRztJQUNPLHlCQUF5QixDQUFtQztJQUV0RTs7OztPQUlHO0lBQ08sZUFBZSxDQUF3RDtJQUVqRjs7OztPQUlHO0lBQ08sb0JBQW9CLENBQXdCO0lBRXREOzs7O09BSUc7SUFDTyxXQUFXLENBQXVCO0lBRTVDOzs7O09BSUc7SUFDTyx1QkFBdUIsQ0FBd0I7SUFFekQ7Ozs7T0FJRztJQUNPLFlBQVksQ0FBMkM7SUFFakU7Ozs7T0FJRztJQUNPLHdCQUF3QixDQUFtQztJQUVyRTs7OztPQUlHO0lBQ08sd0JBQXdCLENBQXdCO0lBRTFEOzs7O09BSUc7SUFDTyxVQUFVLENBQW1DO0lBRXZEOzs7O09BSUc7SUFDTyx1QkFBdUIsQ0FBd0I7SUFFekQ7Ozs7T0FJRztJQUNPLGtCQUFrQixDQUF1QjtJQUVuRDs7OztPQUlHO0lBQ08sZUFBZSxDQUEyQztJQUVwRTs7OztPQUlHO0lBQ08sY0FBYyxDQUEyQztJQUVuRTs7OztPQUlHO0lBQ08sYUFBYSxDQUF1QjtJQUU5Qzs7OztPQUlHO0lBQ08sZUFBZSxDQUEyQztJQUVwRTs7OztPQUlHO0lBQ08sY0FBYyxDQUEyQztJQUVuRTs7OztPQUlHO0lBQ08sY0FBYyxDQUE4RDtJQUV0Rjs7OztPQUlHO0lBQ08sZ0JBQWdCLENBQXdCO0lBRWxEOzs7O09BSUc7SUFDTyxhQUFhLENBQXdCO0lBRS9DOzs7O09BSUc7SUFDTyxrQkFBa0IsQ0FBdUI7SUFFbkQ7Ozs7T0FJRztJQUNPLG1CQUFtQixDQUF3QjtJQUVyRDs7OztPQUlHO0lBQ08sY0FBYyxDQUF3QjtJQUVoRDs7OztPQUlHO0lBQ08sYUFBYSxDQUF3QjtJQUUvQzs7OztPQUlHO0lBQ08sV0FBVyxDQUEyQztJQUVoRTs7OztPQUlHO0lBQ08saUJBQWlCLENBQW9CO0lBUS9DLFlBQVksVUFBc0IsRUFBRSxNQUFjLEVBQUUsWUFBNEIsRUFDeEUsY0FBNkIsRUFDN0IsVUFBNEIsRUFDNUIsYUFBNEIsRUFDUCxVQUFlO1FBRXhDLEtBQUssQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxjQUFjLEVBQUUsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBRW5GLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztZQUN0QixFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQ3JELEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQy9DLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3pDLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3pDLEVBQUUsU0FBUyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQ25ELEVBQUUsU0FBUyxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7WUFDdkQsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDM0MsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7WUFDdkMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7WUFDM0IsRUFBRSxJQUFJLEVBQUUsMkJBQTJCLEVBQUU7WUFDckMsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7WUFDM0IsRUFBRSxJQUFJLEVBQUUsc0JBQXNCLEVBQUU7WUFDaEMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ3ZCLEVBQUUsSUFBSSxFQUFFLHlCQUF5QixFQUFFO1lBQ25DLEVBQUUsSUFBSSxFQUFFLGNBQWMsRUFBRTtZQUN4QixFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBRTtZQUNwQyxFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBRTtZQUNwQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUU7WUFDdEIsRUFBRSxJQUFJLEVBQUUseUJBQXlCLEVBQUU7WUFDbkMsRUFBRSxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7WUFDOUIsRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7WUFDM0IsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7WUFDMUIsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFO1lBQ3pCLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFO1lBQzNCLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQzFCLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFO1lBQzFCLEVBQUUsSUFBSSxFQUFFLGtCQUFrQixFQUFFO1lBQzVCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRTtZQUN6QixFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRTtZQUM5QixFQUFFLElBQUksRUFBRSxxQkFBcUIsRUFBRTtZQUMvQixFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtZQUMxQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUU7WUFDekIsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFO1lBQ3ZCLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFO1NBQ2hDLENBQUMsQ0FBQztRQUNILFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVTLGVBQWUsQ0FBQyxPQUFPLEVBQUUsT0FBTztRQUV0QyxPQUFPLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBR0QsV0FBVztRQUNQLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDOzJIQXpvQlEsb0JBQW9CLDBMQXNsQmIsV0FBVzsrR0F0bEJsQixvQkFBb0Isdy9EQU5sQjtZQUNQLGNBQWM7WUFDZCxhQUFhO1lBQ2IsZ0JBQWdCO1NBQ25CLGlEQU5TLEVBQUU7OzRGQVFILG9CQUFvQjtrQkFWaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsUUFBUSxFQUFFLEVBQUU7b0JBQ1osSUFBSSxFQUFFLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRTtvQkFDakMsU0FBUyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixnQkFBZ0I7cUJBQ25CO2lCQUNKOzswQkF1bEJZLE1BQU07MkJBQUMsV0FBVzs0Q0E5a0J2QixTQUFTO3NCQURaLEtBQUs7Z0JBZ0JGLG1CQUFtQjtzQkFEdEIsS0FBSztnQkFjRixTQUFTO3NCQURaLEtBQUs7Z0JBY0YsY0FBYztzQkFEakIsS0FBSztnQkFjRixLQUFLO3NCQURSLEtBQUs7Z0JBY0YsaUJBQWlCO3NCQURwQixLQUFLO2dCQWNGLE1BQU07c0JBRFQsS0FBSztnQkFjRixrQkFBa0I7c0JBRHJCLEtBQUs7Z0JBY0Ysa0JBQWtCO3NCQURyQixLQUFLO2dCQWNGLElBQUk7c0JBRFAsS0FBSztnQkFjRixpQkFBaUI7c0JBRHBCLEtBQUs7Z0JBY0YsWUFBWTtzQkFEZixLQUFLO2dCQWNGLFNBQVM7c0JBRFosS0FBSztnQkFjRixRQUFRO3NCQURYLEtBQUs7Z0JBY0YsT0FBTztzQkFEVixLQUFLO2dCQWNGLFNBQVM7c0JBRFosS0FBSztnQkFjRixRQUFRO3NCQURYLEtBQUs7Z0JBY0YsUUFBUTtzQkFEWCxLQUFLO2dCQWNGLFVBQVU7c0JBRGIsS0FBSztnQkFjRixPQUFPO3NCQURWLEtBQUs7Z0JBY0YsWUFBWTtzQkFEZixLQUFLO2dCQWNGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBY0YsUUFBUTtzQkFEWCxLQUFLO2dCQWNGLE9BQU87c0JBRFYsS0FBSztnQkFjRixLQUFLO3NCQURSLEtBQUs7Z0JBY0YsV0FBVztzQkFEZCxLQUFLO2dCQWNJLGNBQWM7c0JBQXZCLE1BQU07Z0JBUUcsV0FBVztzQkFBcEIsTUFBTTtnQkFRRyxRQUFRO3NCQUFqQixNQUFNO2dCQVFHLFFBQVE7c0JBQWpCLE1BQU07Z0JBUUcsYUFBYTtzQkFBdEIsTUFBTTtnQkFRRyxlQUFlO3NCQUF4QixNQUFNO2dCQVFHLFNBQVM7c0JBQWxCLE1BQU07Z0JBUUcsT0FBTztzQkFBaEIsTUFBTTtnQkFPRyxlQUFlO3NCQUF4QixNQUFNO2dCQU9HLHlCQUF5QjtzQkFBbEMsTUFBTTtnQkFPRyxlQUFlO3NCQUF4QixNQUFNO2dCQU9HLG9CQUFvQjtzQkFBN0IsTUFBTTtnQkFPRyxXQUFXO3NCQUFwQixNQUFNO2dCQU9HLHVCQUF1QjtzQkFBaEMsTUFBTTtnQkFPRyxZQUFZO3NCQUFyQixNQUFNO2dCQU9HLHdCQUF3QjtzQkFBakMsTUFBTTtnQkFPRyx3QkFBd0I7c0JBQWpDLE1BQU07Z0JBT0csVUFBVTtzQkFBbkIsTUFBTTtnQkFPRyx1QkFBdUI7c0JBQWhDLE1BQU07Z0JBT0csa0JBQWtCO3NCQUEzQixNQUFNO2dCQU9HLGVBQWU7c0JBQXhCLE1BQU07Z0JBT0csY0FBYztzQkFBdkIsTUFBTTtnQkFPRyxhQUFhO3NCQUF0QixNQUFNO2dCQU9HLGVBQWU7c0JBQXhCLE1BQU07Z0JBT0csY0FBYztzQkFBdkIsTUFBTTtnQkFPRyxjQUFjO3NCQUF2QixNQUFNO2dCQU9HLGdCQUFnQjtzQkFBekIsTUFBTTtnQkFPRyxhQUFhO3NCQUF0QixNQUFNO2dCQU9HLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFPRyxtQkFBbUI7c0JBQTVCLE1BQU07Z0JBT0csY0FBYztzQkFBdkIsTUFBTTtnQkFPRyxhQUFhO3NCQUF0QixNQUFNO2dCQU9HLFdBQVc7c0JBQXBCLE1BQU07Z0JBT0csaUJBQWlCO3NCQUExQixNQUFNOztBQXNHWCxNQUFNLE9BQU8saUJBQWlCOzJIQUFqQixpQkFBaUI7NEhBQWpCLGlCQUFpQixpQkFockJqQixvQkFBb0IsYUErb0I3QixrQkFBa0I7WUFDbEIsYUFBYTtZQUNiLGFBQWE7WUFDYixpQkFBaUI7WUFDakIsV0FBVztZQUNYLHVCQUF1QjtZQUN2QixrQkFBa0I7WUFDbEIsV0FBVztZQUNYLGVBQWU7WUFDZixXQUFXO1lBQ1gsYUFBYTtZQUNiLG1CQUFtQjtZQUNuQixnQkFBZ0IsYUEzcEJQLG9CQUFvQixFQWtxQjdCLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixXQUFXO1lBQ1gsdUJBQXVCO1lBQ3ZCLGtCQUFrQjtZQUNsQixXQUFXO1lBQ1gsZUFBZTtZQUNmLFdBQVc7WUFDWCxhQUFhO1lBQ2IsZ0JBQWdCOzRIQUdQLGlCQUFpQixZQWpDMUIsa0JBQWtCO1lBQ2xCLGFBQWE7WUFDYixhQUFhO1lBQ2IsaUJBQWlCO1lBQ2pCLFdBQVc7WUFDWCx1QkFBdUI7WUFDdkIsa0JBQWtCO1lBQ2xCLFdBQVc7WUFDWCxlQUFlO1lBQ2YsV0FBVztZQUNYLGFBQWE7WUFDYixtQkFBbUI7WUFDbkIsZ0JBQWdCLEVBT2hCLGtCQUFrQjtZQUNsQixhQUFhO1lBQ2IsYUFBYTtZQUNiLGlCQUFpQjtZQUNqQixXQUFXO1lBQ1gsdUJBQXVCO1lBQ3ZCLGtCQUFrQjtZQUNsQixXQUFXO1lBQ1gsZUFBZTtZQUNmLFdBQVc7WUFDWCxhQUFhO1lBQ2IsZ0JBQWdCOzs0RkFHUCxpQkFBaUI7a0JBbkM3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxrQkFBa0I7d0JBQ2xCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYixpQkFBaUI7d0JBQ2pCLFdBQVc7d0JBQ1gsdUJBQXVCO3dCQUN2QixrQkFBa0I7d0JBQ2xCLFdBQVc7d0JBQ1gsZUFBZTt3QkFDZixXQUFXO3dCQUNYLGFBQWE7d0JBQ2IsbUJBQW1CO3dCQUNuQixnQkFBZ0I7cUJBQ2pCO29CQUNELFlBQVksRUFBRTt3QkFDWixvQkFBb0I7cUJBQ3JCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsV0FBVzt3QkFDWCx1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsV0FBVzt3QkFDWCxlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixnQkFBZ0I7cUJBQ2pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBkZXZleHRyZW1lLWFuZ3VsYXJcbiAqIFZlcnNpb246IDI0LjEuMTVcbiAqIEJ1aWxkIGRhdGU6IE1vbiBOb3YgMTAgMjAyNVxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxMiAtIDIwMjUgRGV2ZWxvcGVyIEV4cHJlc3MgSW5jLiBBTEwgUklHSFRTIFJFU0VSVkVEXG4gKlxuICogVGhpcyBzb2Z0d2FyZSBtYXkgYmUgbW9kaWZpZWQgYW5kIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtc1xuICogb2YgdGhlIE1JVCBsaWNlbnNlLiBTZWUgdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdCBmb3IgZGV0YWlscy5cbiAqXG4gKiBodHRwczovL2dpdGh1Yi5jb20vRGV2RXhwcmVzcy9kZXZleHRyZW1lLWFuZ3VsYXJcbiAqL1xuXG4vKiB0c2xpbnQ6ZGlzYWJsZTptYXgtbGluZS1sZW5ndGggKi9cclxuXHJcblxyXG5pbXBvcnQge1xyXG4gICAgVHJhbnNmZXJTdGF0ZSxcclxuICAgIENvbXBvbmVudCxcclxuICAgIE5nTW9kdWxlLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIE5nWm9uZSxcclxuICAgIFBMQVRGT1JNX0lELFxyXG4gICAgSW5qZWN0LFxyXG5cclxuICAgIElucHV0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgRXZlbnRFbWl0dGVyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5cclxuaW1wb3J0IHsgQW5pbWF0aW9uQ29uZmlnIH0gZnJvbSAnZGV2ZXh0cmVtZS9hbmltYXRpb24vZngnO1xyXG5pbXBvcnQgeyBQb3NpdGlvbkNvbmZpZyB9IGZyb20gJ2RldmV4dHJlbWUvYW5pbWF0aW9uL3Bvc2l0aW9uJztcclxuaW1wb3J0IHsgUG9zaXRpb25BbGlnbm1lbnQgfSBmcm9tICdkZXZleHRyZW1lL2NvbW1vbic7XHJcbmltcG9ydCB7IFVzZXJEZWZpbmVkRWxlbWVudCB9IGZyb20gJ2RldmV4dHJlbWUvY29yZS9lbGVtZW50JztcclxuaW1wb3J0IHsgQ29udGVudFJlYWR5RXZlbnQsIERpc3Bvc2luZ0V2ZW50LCBIaWRkZW5FdmVudCwgSGlkaW5nRXZlbnQsIEluaXRpYWxpemVkRXZlbnQsIE9wdGlvbkNoYW5nZWRFdmVudCwgU2hvd2luZ0V2ZW50LCBTaG93bkV2ZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS91aS9sb2FkX3BhbmVsJztcclxuXHJcbmltcG9ydCBEeExvYWRQYW5lbCBmcm9tICdkZXZleHRyZW1lL3VpL2xvYWRfcGFuZWwnO1xyXG5cclxuXHJcbmltcG9ydCB7XHJcbiAgICBEeENvbXBvbmVudCxcclxuICAgIER4VGVtcGxhdGVIb3N0LFxyXG4gICAgRHhJbnRlZ3JhdGlvbk1vZHVsZSxcclxuICAgIER4VGVtcGxhdGVNb2R1bGUsXHJcbiAgICBOZXN0ZWRPcHRpb25Ib3N0LFxyXG4gICAgV2F0Y2hlckhlbHBlclxyXG59IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IER4b0FuaW1hdGlvbk1vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9uZXN0ZWQnO1xyXG5pbXBvcnQgeyBEeG9IaWRlTW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER4b0Zyb21Nb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvUG9zaXRpb25Nb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvQXRNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvQm91bmRhcnlPZmZzZXRNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvQ29sbGlzaW9uTW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER4b015TW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER4b09mZnNldE1vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9uZXN0ZWQnO1xyXG5pbXBvcnQgeyBEeG9Ub01vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9uZXN0ZWQnO1xyXG5pbXBvcnQgeyBEeG9TaG93TW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcblxyXG5cclxuXHJcblxyXG4vKipcclxuICogW2Rlc2NyOmR4TG9hZFBhbmVsXVxyXG5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdkeC1sb2FkLXBhbmVsJyxcclxuICAgIHRlbXBsYXRlOiAnJyxcclxuICAgIGhvc3Q6IHsgbmdTa2lwSHlkcmF0aW9uOiAndHJ1ZScgfSxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIER4VGVtcGxhdGVIb3N0LFxyXG4gICAgICAgIFdhdGNoZXJIZWxwZXIsXHJcbiAgICAgICAgTmVzdGVkT3B0aW9uSG9zdFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHhMb2FkUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBEeENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBpbnN0YW5jZTogRHhMb2FkUGFuZWwgPSBudWxsO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5hbmltYXRpb25dXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBhbmltYXRpb24oKTogeyBoaWRlPzogQW5pbWF0aW9uQ29uZmlnLCBzaG93PzogQW5pbWF0aW9uQ29uZmlnIH0ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2FuaW1hdGlvbicpO1xyXG4gICAgfVxyXG4gICAgc2V0IGFuaW1hdGlvbih2YWx1ZTogeyBoaWRlPzogQW5pbWF0aW9uQ29uZmlnLCBzaG93PzogQW5pbWF0aW9uQ29uZmlnIH0pIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2FuaW1hdGlvbicsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhPdmVybGF5T3B0aW9ucy5jbG9zZU9uT3V0c2lkZUNsaWNrXVxyXG4gICAgXHJcbiAgICAgKiBAZGVwcmVjYXRlZCBbZGVwTm90ZTpkeE92ZXJsYXlPcHRpb25zLmNsb3NlT25PdXRzaWRlQ2xpY2tdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBjbG9zZU9uT3V0c2lkZUNsaWNrKCk6IGJvb2xlYW4gfCBGdW5jdGlvbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignY2xvc2VPbk91dHNpZGVDbGljaycpO1xyXG4gICAgfVxyXG4gICAgc2V0IGNsb3NlT25PdXRzaWRlQ2xpY2sodmFsdWU6IGJvb2xlYW4gfCBGdW5jdGlvbikge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignY2xvc2VPbk91dHNpZGVDbGljaycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLmNvbnRhaW5lcl1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGNvbnRhaW5lcigpOiBVc2VyRGVmaW5lZEVsZW1lbnQgfCBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2NvbnRhaW5lcicpO1xyXG4gICAgfVxyXG4gICAgc2V0IGNvbnRhaW5lcih2YWx1ZTogVXNlckRlZmluZWRFbGVtZW50IHwgc3RyaW5nIHwgdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdjb250YWluZXInLCB2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogW2Rlc2NyOmR4T3ZlcmxheU9wdGlvbnMuZGVmZXJSZW5kZXJpbmddXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBkZWZlclJlbmRlcmluZygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdkZWZlclJlbmRlcmluZycpO1xyXG4gICAgfVxyXG4gICAgc2V0IGRlZmVyUmVuZGVyaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdkZWZlclJlbmRlcmluZycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLmRlbGF5XVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgZGVsYXkoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdkZWxheScpO1xyXG4gICAgfVxyXG4gICAgc2V0IGRlbGF5KHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2RlbGF5JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuZm9jdXNTdGF0ZUVuYWJsZWRdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBmb2N1c1N0YXRlRW5hYmxlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdmb2N1c1N0YXRlRW5hYmxlZCcpO1xyXG4gICAgfVxyXG4gICAgc2V0IGZvY3VzU3RhdGVFbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdmb2N1c1N0YXRlRW5hYmxlZCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLmhlaWdodF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGhlaWdodCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignaGVpZ2h0Jyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaGVpZ2h0KHZhbHVlOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignaGVpZ2h0JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLmhpZGVPbk91dHNpZGVDbGlja11cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGhpZGVPbk91dHNpZGVDbGljaygpOiBib29sZWFuIHwgRnVuY3Rpb24ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2hpZGVPbk91dHNpZGVDbGljaycpO1xyXG4gICAgfVxyXG4gICAgc2V0IGhpZGVPbk91dHNpZGVDbGljayh2YWx1ZTogYm9vbGVhbiB8IEZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdoaWRlT25PdXRzaWRlQ2xpY2snLCB2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogW2Rlc2NyOmR4T3ZlcmxheU9wdGlvbnMuaGlkZU9uUGFyZW50U2Nyb2xsXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgaGlkZU9uUGFyZW50U2Nyb2xsKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2hpZGVPblBhcmVudFNjcm9sbCcpO1xyXG4gICAgfVxyXG4gICAgc2V0IGhpZGVPblBhcmVudFNjcm9sbCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignaGlkZU9uUGFyZW50U2Nyb2xsJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpXaWRnZXRPcHRpb25zLmhpbnRdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBoaW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignaGludCcpO1xyXG4gICAgfVxyXG4gICAgc2V0IGhpbnQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignaGludCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6V2lkZ2V0T3B0aW9ucy5ob3ZlclN0YXRlRW5hYmxlZF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGhvdmVyU3RhdGVFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2hvdmVyU3RhdGVFbmFibGVkJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaG92ZXJTdGF0ZUVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2hvdmVyU3RhdGVFbmFibGVkJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuaW5kaWNhdG9yU3JjXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgaW5kaWNhdG9yU3JjKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignaW5kaWNhdG9yU3JjJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaW5kaWNhdG9yU3JjKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2luZGljYXRvclNyYycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLm1heEhlaWdodF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IG1heEhlaWdodCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignbWF4SGVpZ2h0Jyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWF4SGVpZ2h0KHZhbHVlOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignbWF4SGVpZ2h0JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMubWF4V2lkdGhdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBtYXhXaWR0aCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignbWF4V2lkdGgnKTtcclxuICAgIH1cclxuICAgIHNldCBtYXhXaWR0aCh2YWx1ZTogbnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ21heFdpZHRoJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMubWVzc2FnZV1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IG1lc3NhZ2UoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdtZXNzYWdlJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWVzc2FnZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdtZXNzYWdlJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLm1pbkhlaWdodF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IG1pbkhlaWdodCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignbWluSGVpZ2h0Jyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWluSGVpZ2h0KHZhbHVlOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignbWluSGVpZ2h0JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLm1pbldpZHRoXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgbWluV2lkdGgoKTogbnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ21pbldpZHRoJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWluV2lkdGgodmFsdWU6IG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdtaW5XaWR0aCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLnBvc2l0aW9uXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgcG9zaXRpb24oKTogUG9zaXRpb25BbGlnbm1lbnQgfCBQb3NpdGlvbkNvbmZpZyB8IEZ1bmN0aW9uIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdwb3NpdGlvbicpO1xyXG4gICAgfVxyXG4gICAgc2V0IHBvc2l0aW9uKHZhbHVlOiBQb3NpdGlvbkFsaWdubWVudCB8IFBvc2l0aW9uQ29uZmlnIHwgRnVuY3Rpb24pIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ3Bvc2l0aW9uJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpET01Db21wb25lbnRPcHRpb25zLnJ0bEVuYWJsZWRdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBydGxFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3J0bEVuYWJsZWQnKTtcclxuICAgIH1cclxuICAgIHNldCBydGxFbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdydGxFbmFibGVkJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLnNoYWRpbmddXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaGFkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3NoYWRpbmcnKTtcclxuICAgIH1cclxuICAgIHNldCBzaGFkaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdzaGFkaW5nJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuc2hhZGluZ0NvbG9yXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgc2hhZGluZ0NvbG9yKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignc2hhZGluZ0NvbG9yJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hhZGluZ0NvbG9yKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ3NoYWRpbmdDb2xvcicsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLnNob3dJbmRpY2F0b3JdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93SW5kaWNhdG9yKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3Nob3dJbmRpY2F0b3InKTtcclxuICAgIH1cclxuICAgIHNldCBzaG93SW5kaWNhdG9yKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdzaG93SW5kaWNhdG9yJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuc2hvd1BhbmVdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93UGFuZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdzaG93UGFuZScpO1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dQYW5lKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdzaG93UGFuZScsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhPdmVybGF5T3B0aW9ucy52aXNpYmxlXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCd2aXNpYmxlJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbigndmlzaWJsZScsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLndpZHRoXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgd2lkdGgoKTogbnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3dpZHRoJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgd2lkdGgodmFsdWU6IG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCd3aWR0aCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhPdmVybGF5T3B0aW9ucy53cmFwcGVyQXR0cl1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHdyYXBwZXJBdHRyKCk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignd3JhcHBlckF0dHInKTtcclxuICAgIH1cclxuICAgIHNldCB3cmFwcGVyQXR0cih2YWx1ZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCd3cmFwcGVyQXR0cicsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkNvbnRlbnRSZWFkeV1cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkNvbnRlbnRSZWFkeTogRXZlbnRFbWl0dGVyPENvbnRlbnRSZWFkeUV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkRpc3Bvc2luZ11cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkRpc3Bvc2luZzogRXZlbnRFbWl0dGVyPERpc3Bvc2luZ0V2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkhpZGRlbl1cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkhpZGRlbjogRXZlbnRFbWl0dGVyPEhpZGRlbkV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkhpZGluZ11cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkhpZGluZzogRXZlbnRFbWl0dGVyPEhpZGluZ0V2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkluaXRpYWxpemVkXVxyXG4gICAgXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG9uSW5pdGlhbGl6ZWQ6IEV2ZW50RW1pdHRlcjxJbml0aWFsaXplZEV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbk9wdGlvbkNoYW5nZWRdXHJcbiAgICBcclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgb25PcHRpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8T3B0aW9uQ2hhbmdlZEV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vblNob3dpbmddXHJcbiAgICBcclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgb25TaG93aW5nOiBFdmVudEVtaXR0ZXI8U2hvd2luZ0V2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vblNob3duXVxyXG4gICAgXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG9uU2hvd246IEV2ZW50RW1pdHRlcjxTaG93bkV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgYW5pbWF0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8eyBoaWRlPzogQW5pbWF0aW9uQ29uZmlnLCBzaG93PzogQW5pbWF0aW9uQ29uZmlnIH0+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBjbG9zZU9uT3V0c2lkZUNsaWNrQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbiB8IEZ1bmN0aW9uPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgY29udGFpbmVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8VXNlckRlZmluZWRFbGVtZW50IHwgc3RyaW5nIHwgdW5kZWZpbmVkPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgZGVmZXJSZW5kZXJpbmdDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgZGVsYXlDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBmb2N1c1N0YXRlRW5hYmxlZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBoZWlnaHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIGhpZGVPbk91dHNpZGVDbGlja0NoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4gfCBGdW5jdGlvbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIGhpZGVPblBhcmVudFNjcm9sbENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBoaW50Q2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgdW5kZWZpbmVkPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgaG92ZXJTdGF0ZUVuYWJsZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgaW5kaWNhdG9yU3JjQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgbWF4SGVpZ2h0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmc+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBtYXhXaWR0aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgbWVzc2FnZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG1pbkhlaWdodENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgbWluV2lkdGhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHBvc2l0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8UG9zaXRpb25BbGlnbm1lbnQgfCBQb3NpdGlvbkNvbmZpZyB8IEZ1bmN0aW9uPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgcnRsRW5hYmxlZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBzaGFkaW5nQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHNoYWRpbmdDb2xvckNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHNob3dJbmRpY2F0b3JDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgc2hvd1BhbmVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSB3aWR0aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgd3JhcHBlckF0dHJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+O1xyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIG5nWm9uZTogTmdab25lLCB0ZW1wbGF0ZUhvc3Q6IER4VGVtcGxhdGVIb3N0LFxyXG4gICAgICAgICAgICBfd2F0Y2hlckhlbHBlcjogV2F0Y2hlckhlbHBlcixcclxuICAgICAgICAgICAgb3B0aW9uSG9zdDogTmVzdGVkT3B0aW9uSG9zdCxcclxuICAgICAgICAgICAgdHJhbnNmZXJTdGF0ZTogVHJhbnNmZXJTdGF0ZSxcclxuICAgICAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogYW55KSB7XHJcblxyXG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYsIG5nWm9uZSwgdGVtcGxhdGVIb3N0LCBfd2F0Y2hlckhlbHBlciwgdHJhbnNmZXJTdGF0ZSwgcGxhdGZvcm1JZCk7XHJcblxyXG4gICAgICAgIHRoaXMuX2NyZWF0ZUV2ZW50RW1pdHRlcnMoW1xyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ2NvbnRlbnRSZWFkeScsIGVtaXQ6ICdvbkNvbnRlbnRSZWFkeScgfSxcclxuICAgICAgICAgICAgeyBzdWJzY3JpYmU6ICdkaXNwb3NpbmcnLCBlbWl0OiAnb25EaXNwb3NpbmcnIH0sXHJcbiAgICAgICAgICAgIHsgc3Vic2NyaWJlOiAnaGlkZGVuJywgZW1pdDogJ29uSGlkZGVuJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ2hpZGluZycsIGVtaXQ6ICdvbkhpZGluZycgfSxcclxuICAgICAgICAgICAgeyBzdWJzY3JpYmU6ICdpbml0aWFsaXplZCcsIGVtaXQ6ICdvbkluaXRpYWxpemVkJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ29wdGlvbkNoYW5nZWQnLCBlbWl0OiAnb25PcHRpb25DaGFuZ2VkJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ3Nob3dpbmcnLCBlbWl0OiAnb25TaG93aW5nJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ3Nob3duJywgZW1pdDogJ29uU2hvd24nIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ2FuaW1hdGlvbkNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnY2xvc2VPbk91dHNpZGVDbGlja0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnY29udGFpbmVyQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdkZWZlclJlbmRlcmluZ0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnZGVsYXlDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ2ZvY3VzU3RhdGVFbmFibGVkQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdoZWlnaHRDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ2hpZGVPbk91dHNpZGVDbGlja0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnaGlkZU9uUGFyZW50U2Nyb2xsQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdoaW50Q2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdob3ZlclN0YXRlRW5hYmxlZENoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnaW5kaWNhdG9yU3JjQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdtYXhIZWlnaHRDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ21heFdpZHRoQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdtZXNzYWdlQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdtaW5IZWlnaHRDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ21pbldpZHRoQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdwb3NpdGlvbkNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAncnRsRW5hYmxlZENoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnc2hhZGluZ0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnc2hhZGluZ0NvbG9yQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdzaG93SW5kaWNhdG9yQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdzaG93UGFuZUNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAndmlzaWJsZUNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnd2lkdGhDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ3dyYXBwZXJBdHRyQ2hhbmdlJyB9XHJcbiAgICAgICAgXSk7XHJcbiAgICAgICAgb3B0aW9uSG9zdC5zZXRIb3N0KHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBfY3JlYXRlSW5zdGFuY2UoZWxlbWVudCwgb3B0aW9ucykge1xyXG5cclxuICAgICAgICByZXR1cm4gbmV3IER4TG9hZFBhbmVsKGVsZW1lbnQsIG9wdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLl9kZXN0cm95V2lkZ2V0KCk7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIER4b0FuaW1hdGlvbk1vZHVsZSxcclxuICAgIER4b0hpZGVNb2R1bGUsXHJcbiAgICBEeG9Gcm9tTW9kdWxlLFxyXG4gICAgRHhvUG9zaXRpb25Nb2R1bGUsXHJcbiAgICBEeG9BdE1vZHVsZSxcclxuICAgIER4b0JvdW5kYXJ5T2Zmc2V0TW9kdWxlLFxyXG4gICAgRHhvQ29sbGlzaW9uTW9kdWxlLFxyXG4gICAgRHhvTXlNb2R1bGUsXHJcbiAgICBEeG9PZmZzZXRNb2R1bGUsXHJcbiAgICBEeG9Ub01vZHVsZSxcclxuICAgIER4b1Nob3dNb2R1bGUsXHJcbiAgICBEeEludGVncmF0aW9uTW9kdWxlLFxyXG4gICAgRHhUZW1wbGF0ZU1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBEeExvYWRQYW5lbENvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRHhMb2FkUGFuZWxDb21wb25lbnQsXHJcbiAgICBEeG9BbmltYXRpb25Nb2R1bGUsXHJcbiAgICBEeG9IaWRlTW9kdWxlLFxyXG4gICAgRHhvRnJvbU1vZHVsZSxcclxuICAgIER4b1Bvc2l0aW9uTW9kdWxlLFxyXG4gICAgRHhvQXRNb2R1bGUsXHJcbiAgICBEeG9Cb3VuZGFyeU9mZnNldE1vZHVsZSxcclxuICAgIER4b0NvbGxpc2lvbk1vZHVsZSxcclxuICAgIER4b015TW9kdWxlLFxyXG4gICAgRHhvT2Zmc2V0TW9kdWxlLFxyXG4gICAgRHhvVG9Nb2R1bGUsXHJcbiAgICBEeG9TaG93TW9kdWxlLFxyXG4gICAgRHhUZW1wbGF0ZU1vZHVsZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIER4TG9hZFBhbmVsTW9kdWxlIHsgfVxyXG5cclxuaW1wb3J0IHR5cGUgKiBhcyBEeExvYWRQYW5lbFR5cGVzIGZyb20gXCJkZXZleHRyZW1lL3VpL2xvYWRfcGFuZWxfdHlwZXNcIjtcclxuZXhwb3J0IHsgRHhMb2FkUGFuZWxUeXBlcyB9O1xyXG5cclxuXHJcbiJdfQ==
|
|
788
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9kaXN0L3VpL2xvYWQtcGFuZWwvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7O0dBV0c7QUFFSCxvQ0FBb0M7QUFHcEMsT0FBTyxFQUNILGFBQWEsRUFDYixTQUFTLEVBQ1QsUUFBUSxFQUNSLFVBQVUsRUFDVixNQUFNLEVBQ04sV0FBVyxFQUNYLE1BQU0sRUFFTixLQUFLLEVBQ0wsTUFBTSxFQUVOLFlBQVksRUFDZixNQUFNLGVBQWUsQ0FBQztBQVN2QixPQUFPLFdBQVcsTUFBTSwwQkFBMEIsQ0FBQztBQUduRCxPQUFPLEVBQ0gsV0FBVyxFQUNYLGNBQWMsRUFDZCxtQkFBbUIsRUFDbkIsZ0JBQWdCLEVBQ2hCLGdCQUFnQixFQUNoQixhQUFhLEVBQ2hCLE1BQU0seUJBQXlCLENBQUM7QUFFakMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4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LE9BQU8sRUFBRTt3QkFDUCxvQkFBb0I7d0JBQ3BCLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixhQUFhO3dCQUNiLGlCQUFpQjt3QkFDakIsV0FBVzt3QkFDWCx1QkFBdUI7d0JBQ3ZCLGtCQUFrQjt3QkFDbEIsV0FBVzt3QkFDWCxlQUFlO3dCQUNmLFdBQVc7d0JBQ1gsYUFBYTt3QkFDYixnQkFBZ0I7cUJBQ2pCO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBkZXZleHRyZW1lLWFuZ3VsYXJcbiAqIFZlcnNpb246IDI0LjEuMTdcbiAqIEJ1aWxkIGRhdGU6IEZyaSBBcHIgMjQgMjAyNlxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxMiAtIDIwMjYgRGV2ZWxvcGVyIEV4cHJlc3MgSW5jLiBBTEwgUklHSFRTIFJFU0VSVkVEXG4gKlxuICogVGhpcyBzb2Z0d2FyZSBtYXkgYmUgbW9kaWZpZWQgYW5kIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSB0ZXJtc1xuICogb2YgdGhlIE1JVCBsaWNlbnNlLiBTZWUgdGhlIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBvZiB0aGUgcHJvamVjdCBmb3IgZGV0YWlscy5cbiAqXG4gKiBodHRwczovL2dpdGh1Yi5jb20vRGV2RXhwcmVzcy9kZXZleHRyZW1lLWFuZ3VsYXJcbiAqL1xuXG4vKiB0c2xpbnQ6ZGlzYWJsZTptYXgtbGluZS1sZW5ndGggKi9cclxuXHJcblxyXG5pbXBvcnQge1xyXG4gICAgVHJhbnNmZXJTdGF0ZSxcclxuICAgIENvbXBvbmVudCxcclxuICAgIE5nTW9kdWxlLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIE5nWm9uZSxcclxuICAgIFBMQVRGT1JNX0lELFxyXG4gICAgSW5qZWN0LFxyXG5cclxuICAgIElucHV0LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgT25EZXN0cm95LFxyXG4gICAgRXZlbnRFbWl0dGVyXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5cclxuaW1wb3J0IHsgQW5pbWF0aW9uQ29uZmlnIH0gZnJvbSAnZGV2ZXh0cmVtZS9hbmltYXRpb24vZngnO1xyXG5pbXBvcnQgeyBQb3NpdGlvbkNvbmZpZyB9IGZyb20gJ2RldmV4dHJlbWUvYW5pbWF0aW9uL3Bvc2l0aW9uJztcclxuaW1wb3J0IHsgUG9zaXRpb25BbGlnbm1lbnQgfSBmcm9tICdkZXZleHRyZW1lL2NvbW1vbic7XHJcbmltcG9ydCB7IFVzZXJEZWZpbmVkRWxlbWVudCB9IGZyb20gJ2RldmV4dHJlbWUvY29yZS9lbGVtZW50JztcclxuaW1wb3J0IHsgQ29udGVudFJlYWR5RXZlbnQsIERpc3Bvc2luZ0V2ZW50LCBIaWRkZW5FdmVudCwgSGlkaW5nRXZlbnQsIEluaXRpYWxpemVkRXZlbnQsIE9wdGlvbkNoYW5nZWRFdmVudCwgU2hvd2luZ0V2ZW50LCBTaG93bkV2ZW50IH0gZnJvbSAnZGV2ZXh0cmVtZS91aS9sb2FkX3BhbmVsJztcclxuXHJcbmltcG9ydCBEeExvYWRQYW5lbCBmcm9tICdkZXZleHRyZW1lL3VpL2xvYWRfcGFuZWwnO1xyXG5cclxuXHJcbmltcG9ydCB7XHJcbiAgICBEeENvbXBvbmVudCxcclxuICAgIER4VGVtcGxhdGVIb3N0LFxyXG4gICAgRHhJbnRlZ3JhdGlvbk1vZHVsZSxcclxuICAgIER4VGVtcGxhdGVNb2R1bGUsXHJcbiAgICBOZXN0ZWRPcHRpb25Ib3N0LFxyXG4gICAgV2F0Y2hlckhlbHBlclxyXG59IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCB7IER4b0FuaW1hdGlvbk1vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9uZXN0ZWQnO1xyXG5pbXBvcnQgeyBEeG9IaWRlTW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER4b0Zyb21Nb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvUG9zaXRpb25Nb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvQXRNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvQm91bmRhcnlPZmZzZXRNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvbmVzdGVkJztcclxuaW1wb3J0IHsgRHhvQ29sbGlzaW9uTW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER4b015TW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcbmltcG9ydCB7IER4b09mZnNldE1vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9uZXN0ZWQnO1xyXG5pbXBvcnQgeyBEeG9Ub01vZHVsZSB9IGZyb20gJ2RldmV4dHJlbWUtYW5ndWxhci91aS9uZXN0ZWQnO1xyXG5pbXBvcnQgeyBEeG9TaG93TW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL25lc3RlZCc7XHJcblxyXG5cclxuXHJcblxyXG4vKipcclxuICogW2Rlc2NyOmR4TG9hZFBhbmVsXVxyXG5cclxuICovXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdkeC1sb2FkLXBhbmVsJyxcclxuICAgIHRlbXBsYXRlOiAnJyxcclxuICAgIGhvc3Q6IHsgbmdTa2lwSHlkcmF0aW9uOiAndHJ1ZScgfSxcclxuICAgIHByb3ZpZGVyczogW1xyXG4gICAgICAgIER4VGVtcGxhdGVIb3N0LFxyXG4gICAgICAgIFdhdGNoZXJIZWxwZXIsXHJcbiAgICAgICAgTmVzdGVkT3B0aW9uSG9zdFxyXG4gICAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHhMb2FkUGFuZWxDb21wb25lbnQgZXh0ZW5kcyBEeENvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICBpbnN0YW5jZTogRHhMb2FkUGFuZWwgPSBudWxsO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5hbmltYXRpb25dXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBhbmltYXRpb24oKTogeyBoaWRlPzogQW5pbWF0aW9uQ29uZmlnLCBzaG93PzogQW5pbWF0aW9uQ29uZmlnIH0ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2FuaW1hdGlvbicpO1xyXG4gICAgfVxyXG4gICAgc2V0IGFuaW1hdGlvbih2YWx1ZTogeyBoaWRlPzogQW5pbWF0aW9uQ29uZmlnLCBzaG93PzogQW5pbWF0aW9uQ29uZmlnIH0pIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2FuaW1hdGlvbicsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhPdmVybGF5T3B0aW9ucy5jbG9zZU9uT3V0c2lkZUNsaWNrXVxyXG4gICAgXHJcbiAgICAgKiBAZGVwcmVjYXRlZCBbZGVwTm90ZTpkeE92ZXJsYXlPcHRpb25zLmNsb3NlT25PdXRzaWRlQ2xpY2tdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBjbG9zZU9uT3V0c2lkZUNsaWNrKCk6IGJvb2xlYW4gfCBGdW5jdGlvbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignY2xvc2VPbk91dHNpZGVDbGljaycpO1xyXG4gICAgfVxyXG4gICAgc2V0IGNsb3NlT25PdXRzaWRlQ2xpY2sodmFsdWU6IGJvb2xlYW4gfCBGdW5jdGlvbikge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignY2xvc2VPbk91dHNpZGVDbGljaycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLmNvbnRhaW5lcl1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGNvbnRhaW5lcigpOiBVc2VyRGVmaW5lZEVsZW1lbnQgfCBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2NvbnRhaW5lcicpO1xyXG4gICAgfVxyXG4gICAgc2V0IGNvbnRhaW5lcih2YWx1ZTogVXNlckRlZmluZWRFbGVtZW50IHwgc3RyaW5nIHwgdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdjb250YWluZXInLCB2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogW2Rlc2NyOmR4T3ZlcmxheU9wdGlvbnMuZGVmZXJSZW5kZXJpbmddXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBkZWZlclJlbmRlcmluZygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdkZWZlclJlbmRlcmluZycpO1xyXG4gICAgfVxyXG4gICAgc2V0IGRlZmVyUmVuZGVyaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdkZWZlclJlbmRlcmluZycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLmRlbGF5XVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgZGVsYXkoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdkZWxheScpO1xyXG4gICAgfVxyXG4gICAgc2V0IGRlbGF5KHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2RlbGF5JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuZm9jdXNTdGF0ZUVuYWJsZWRdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBmb2N1c1N0YXRlRW5hYmxlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdmb2N1c1N0YXRlRW5hYmxlZCcpO1xyXG4gICAgfVxyXG4gICAgc2V0IGZvY3VzU3RhdGVFbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdmb2N1c1N0YXRlRW5hYmxlZCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLmhlaWdodF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGhlaWdodCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignaGVpZ2h0Jyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaGVpZ2h0KHZhbHVlOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignaGVpZ2h0JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLmhpZGVPbk91dHNpZGVDbGlja11cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGhpZGVPbk91dHNpZGVDbGljaygpOiBib29sZWFuIHwgRnVuY3Rpb24ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2hpZGVPbk91dHNpZGVDbGljaycpO1xyXG4gICAgfVxyXG4gICAgc2V0IGhpZGVPbk91dHNpZGVDbGljayh2YWx1ZTogYm9vbGVhbiB8IEZ1bmN0aW9uKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdoaWRlT25PdXRzaWRlQ2xpY2snLCB2YWx1ZSk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIC8qKlxyXG4gICAgICogW2Rlc2NyOmR4T3ZlcmxheU9wdGlvbnMuaGlkZU9uUGFyZW50U2Nyb2xsXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgaGlkZU9uUGFyZW50U2Nyb2xsKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2hpZGVPblBhcmVudFNjcm9sbCcpO1xyXG4gICAgfVxyXG4gICAgc2V0IGhpZGVPblBhcmVudFNjcm9sbCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignaGlkZU9uUGFyZW50U2Nyb2xsJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpXaWRnZXRPcHRpb25zLmhpbnRdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBoaW50KCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignaGludCcpO1xyXG4gICAgfVxyXG4gICAgc2V0IGhpbnQodmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignaGludCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6V2lkZ2V0T3B0aW9ucy5ob3ZlclN0YXRlRW5hYmxlZF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IGhvdmVyU3RhdGVFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ2hvdmVyU3RhdGVFbmFibGVkJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaG92ZXJTdGF0ZUVuYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2hvdmVyU3RhdGVFbmFibGVkJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuaW5kaWNhdG9yU3JjXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgaW5kaWNhdG9yU3JjKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignaW5kaWNhdG9yU3JjJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgaW5kaWNhdG9yU3JjKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ2luZGljYXRvclNyYycsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLm1heEhlaWdodF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IG1heEhlaWdodCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignbWF4SGVpZ2h0Jyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWF4SGVpZ2h0KHZhbHVlOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignbWF4SGVpZ2h0JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMubWF4V2lkdGhdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBtYXhXaWR0aCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignbWF4V2lkdGgnKTtcclxuICAgIH1cclxuICAgIHNldCBtYXhXaWR0aCh2YWx1ZTogbnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ21heFdpZHRoJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMubWVzc2FnZV1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IG1lc3NhZ2UoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdtZXNzYWdlJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWVzc2FnZSh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdtZXNzYWdlJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLm1pbkhlaWdodF1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IG1pbkhlaWdodCgpOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignbWluSGVpZ2h0Jyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWluSGVpZ2h0KHZhbHVlOiBudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbignbWluSGVpZ2h0JywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLm1pbldpZHRoXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgbWluV2lkdGgoKTogbnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ21pbldpZHRoJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgbWluV2lkdGgodmFsdWU6IG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdtaW5XaWR0aCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLnBvc2l0aW9uXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgcG9zaXRpb24oKTogUG9zaXRpb25BbGlnbm1lbnQgfCBQb3NpdGlvbkNvbmZpZyB8IEZ1bmN0aW9uIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdwb3NpdGlvbicpO1xyXG4gICAgfVxyXG4gICAgc2V0IHBvc2l0aW9uKHZhbHVlOiBQb3NpdGlvbkFsaWdubWVudCB8IFBvc2l0aW9uQ29uZmlnIHwgRnVuY3Rpb24pIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ3Bvc2l0aW9uJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpET01Db21wb25lbnRPcHRpb25zLnJ0bEVuYWJsZWRdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBydGxFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3J0bEVuYWJsZWQnKTtcclxuICAgIH1cclxuICAgIHNldCBydGxFbmFibGVkKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdydGxFbmFibGVkJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeE92ZXJsYXlPcHRpb25zLnNoYWRpbmddXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaGFkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3NoYWRpbmcnKTtcclxuICAgIH1cclxuICAgIHNldCBzaGFkaW5nKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdzaGFkaW5nJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuc2hhZGluZ0NvbG9yXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgc2hhZGluZ0NvbG9yKCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignc2hhZGluZ0NvbG9yJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgc2hhZGluZ0NvbG9yKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgICAgICB0aGlzLl9zZXRPcHRpb24oJ3NoYWRpbmdDb2xvcicsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLnNob3dJbmRpY2F0b3JdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93SW5kaWNhdG9yKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3Nob3dJbmRpY2F0b3InKTtcclxuICAgIH1cclxuICAgIHNldCBzaG93SW5kaWNhdG9yKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdzaG93SW5kaWNhdG9yJywgdmFsdWUpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAvKipcclxuICAgICAqIFtkZXNjcjpkeExvYWRQYW5lbE9wdGlvbnMuc2hvd1BhbmVdXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIGdldCBzaG93UGFuZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCdzaG93UGFuZScpO1xyXG4gICAgfVxyXG4gICAgc2V0IHNob3dQYW5lKHZhbHVlOiBib29sZWFuKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCdzaG93UGFuZScsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhPdmVybGF5T3B0aW9ucy52aXNpYmxlXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgdmlzaWJsZSgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZ2V0T3B0aW9uKCd2aXNpYmxlJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgdmlzaWJsZSh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuX3NldE9wdGlvbigndmlzaWJsZScsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhMb2FkUGFuZWxPcHRpb25zLndpZHRoXVxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBJbnB1dCgpXHJcbiAgICBnZXQgd2lkdGgoKTogbnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmcge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9nZXRPcHRpb24oJ3dpZHRoJyk7XHJcbiAgICB9XHJcbiAgICBzZXQgd2lkdGgodmFsdWU6IG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nKSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCd3aWR0aCcsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBbZGVzY3I6ZHhPdmVybGF5T3B0aW9ucy53cmFwcGVyQXR0cl1cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgZ2V0IHdyYXBwZXJBdHRyKCk6IGFueSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dldE9wdGlvbignd3JhcHBlckF0dHInKTtcclxuICAgIH1cclxuICAgIHNldCB3cmFwcGVyQXR0cih2YWx1ZTogYW55KSB7XHJcbiAgICAgICAgdGhpcy5fc2V0T3B0aW9uKCd3cmFwcGVyQXR0cicsIHZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkNvbnRlbnRSZWFkeV1cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkNvbnRlbnRSZWFkeTogRXZlbnRFbWl0dGVyPENvbnRlbnRSZWFkeUV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkRpc3Bvc2luZ11cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkRpc3Bvc2luZzogRXZlbnRFbWl0dGVyPERpc3Bvc2luZ0V2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkhpZGRlbl1cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkhpZGRlbjogRXZlbnRFbWl0dGVyPEhpZGRlbkV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkhpZGluZ11cclxuICAgIFxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBvbkhpZGluZzogRXZlbnRFbWl0dGVyPEhpZGluZ0V2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbkluaXRpYWxpemVkXVxyXG4gICAgXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG9uSW5pdGlhbGl6ZWQ6IEV2ZW50RW1pdHRlcjxJbml0aWFsaXplZEV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vbk9wdGlvbkNoYW5nZWRdXHJcbiAgICBcclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgb25PcHRpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8T3B0aW9uQ2hhbmdlZEV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vblNob3dpbmddXHJcbiAgICBcclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgb25TaG93aW5nOiBFdmVudEVtaXR0ZXI8U2hvd2luZ0V2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogW2Rlc2NyOmR4TG9hZFBhbmVsT3B0aW9ucy5vblNob3duXVxyXG4gICAgXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG9uU2hvd246IEV2ZW50RW1pdHRlcjxTaG93bkV2ZW50PjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgYW5pbWF0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8eyBoaWRlPzogQW5pbWF0aW9uQ29uZmlnLCBzaG93PzogQW5pbWF0aW9uQ29uZmlnIH0+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBjbG9zZU9uT3V0c2lkZUNsaWNrQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbiB8IEZ1bmN0aW9uPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgY29udGFpbmVyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8VXNlckRlZmluZWRFbGVtZW50IHwgc3RyaW5nIHwgdW5kZWZpbmVkPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgZGVmZXJSZW5kZXJpbmdDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgZGVsYXlDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXI+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBmb2N1c1N0YXRlRW5hYmxlZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBoZWlnaHRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIGhpZGVPbk91dHNpZGVDbGlja0NoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4gfCBGdW5jdGlvbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIGhpZGVPblBhcmVudFNjcm9sbENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBoaW50Q2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nIHwgdW5kZWZpbmVkPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgaG92ZXJTdGF0ZUVuYWJsZWRDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgaW5kaWNhdG9yU3JjQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgbWF4SGVpZ2h0Q2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyIHwgRnVuY3Rpb24gfCBzdHJpbmc+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBtYXhXaWR0aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgbWVzc2FnZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIG1pbkhlaWdodENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgbWluV2lkdGhDaGFuZ2U6IEV2ZW50RW1pdHRlcjxudW1iZXIgfCBGdW5jdGlvbiB8IHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHBvc2l0aW9uQ2hhbmdlOiBFdmVudEVtaXR0ZXI8UG9zaXRpb25BbGlnbm1lbnQgfCBQb3NpdGlvbkNvbmZpZyB8IEZ1bmN0aW9uPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgcnRsRW5hYmxlZENoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSBzaGFkaW5nQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHNoYWRpbmdDb2xvckNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZz47XHJcblxyXG4gICAgLyoqXHJcbiAgICBcclxuICAgICAqIFRoaXMgbWVtYmVyIHN1cHBvcnRzIHRoZSBpbnRlcm5hbCBpbmZyYXN0cnVjdHVyZSBhbmQgaXMgbm90IGludGVuZGVkIHRvIGJlIHVzZWQgZGlyZWN0bHkgZnJvbSB5b3VyIGNvZGUuXHJcbiAgICBcclxuICAgICAqL1xyXG4gICAgQE91dHB1dCgpIHNob3dJbmRpY2F0b3JDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgc2hvd1BhbmVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgdmlzaWJsZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+O1xyXG5cclxuICAgIC8qKlxyXG4gICAgXHJcbiAgICAgKiBUaGlzIG1lbWJlciBzdXBwb3J0cyB0aGUgaW50ZXJuYWwgaW5mcmFzdHJ1Y3R1cmUgYW5kIGlzIG5vdCBpbnRlbmRlZCB0byBiZSB1c2VkIGRpcmVjdGx5IGZyb20geW91ciBjb2RlLlxyXG4gICAgXHJcbiAgICAgKi9cclxuICAgIEBPdXRwdXQoKSB3aWR0aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlciB8IEZ1bmN0aW9uIHwgc3RyaW5nPjtcclxuXHJcbiAgICAvKipcclxuICAgIFxyXG4gICAgICogVGhpcyBtZW1iZXIgc3VwcG9ydHMgdGhlIGludGVybmFsIGluZnJhc3RydWN0dXJlIGFuZCBpcyBub3QgaW50ZW5kZWQgdG8gYmUgdXNlZCBkaXJlY3RseSBmcm9tIHlvdXIgY29kZS5cclxuICAgIFxyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KCkgd3JhcHBlckF0dHJDaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+O1xyXG5cclxuXHJcblxyXG5cclxuXHJcblxyXG5cclxuICAgIGNvbnN0cnVjdG9yKGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsIG5nWm9uZTogTmdab25lLCB0ZW1wbGF0ZUhvc3Q6IER4VGVtcGxhdGVIb3N0LFxyXG4gICAgICAgICAgICBfd2F0Y2hlckhlbHBlcjogV2F0Y2hlckhlbHBlcixcclxuICAgICAgICAgICAgb3B0aW9uSG9zdDogTmVzdGVkT3B0aW9uSG9zdCxcclxuICAgICAgICAgICAgdHJhbnNmZXJTdGF0ZTogVHJhbnNmZXJTdGF0ZSxcclxuICAgICAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcGxhdGZvcm1JZDogYW55KSB7XHJcblxyXG4gICAgICAgIHN1cGVyKGVsZW1lbnRSZWYsIG5nWm9uZSwgdGVtcGxhdGVIb3N0LCBfd2F0Y2hlckhlbHBlciwgdHJhbnNmZXJTdGF0ZSwgcGxhdGZvcm1JZCk7XHJcblxyXG4gICAgICAgIHRoaXMuX2NyZWF0ZUV2ZW50RW1pdHRlcnMoW1xyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ2NvbnRlbnRSZWFkeScsIGVtaXQ6ICdvbkNvbnRlbnRSZWFkeScgfSxcclxuICAgICAgICAgICAgeyBzdWJzY3JpYmU6ICdkaXNwb3NpbmcnLCBlbWl0OiAnb25EaXNwb3NpbmcnIH0sXHJcbiAgICAgICAgICAgIHsgc3Vic2NyaWJlOiAnaGlkZGVuJywgZW1pdDogJ29uSGlkZGVuJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ2hpZGluZycsIGVtaXQ6ICdvbkhpZGluZycgfSxcclxuICAgICAgICAgICAgeyBzdWJzY3JpYmU6ICdpbml0aWFsaXplZCcsIGVtaXQ6ICdvbkluaXRpYWxpemVkJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ29wdGlvbkNoYW5nZWQnLCBlbWl0OiAnb25PcHRpb25DaGFuZ2VkJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ3Nob3dpbmcnLCBlbWl0OiAnb25TaG93aW5nJyB9LFxyXG4gICAgICAgICAgICB7IHN1YnNjcmliZTogJ3Nob3duJywgZW1pdDogJ29uU2hvd24nIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ2FuaW1hdGlvbkNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnY2xvc2VPbk91dHNpZGVDbGlja0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnY29udGFpbmVyQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdkZWZlclJlbmRlcmluZ0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnZGVsYXlDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ2ZvY3VzU3RhdGVFbmFibGVkQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdoZWlnaHRDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ2hpZGVPbk91dHNpZGVDbGlja0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnaGlkZU9uUGFyZW50U2Nyb2xsQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdoaW50Q2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdob3ZlclN0YXRlRW5hYmxlZENoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnaW5kaWNhdG9yU3JjQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdtYXhIZWlnaHRDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ21heFdpZHRoQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdtZXNzYWdlQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdtaW5IZWlnaHRDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ21pbldpZHRoQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdwb3NpdGlvbkNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAncnRsRW5hYmxlZENoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnc2hhZGluZ0NoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnc2hhZGluZ0NvbG9yQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdzaG93SW5kaWNhdG9yQ2hhbmdlJyB9LFxyXG4gICAgICAgICAgICB7IGVtaXQ6ICdzaG93UGFuZUNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAndmlzaWJsZUNoYW5nZScgfSxcclxuICAgICAgICAgICAgeyBlbWl0OiAnd2lkdGhDaGFuZ2UnIH0sXHJcbiAgICAgICAgICAgIHsgZW1pdDogJ3dyYXBwZXJBdHRyQ2hhbmdlJyB9XHJcbiAgICAgICAgXSk7XHJcbiAgICAgICAgb3B0aW9uSG9zdC5zZXRIb3N0KHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIHByb3RlY3RlZCBfY3JlYXRlSW5zdGFuY2UoZWxlbWVudCwgb3B0aW9ucykge1xyXG5cclxuICAgICAgICByZXR1cm4gbmV3IER4TG9hZFBhbmVsKGVsZW1lbnQsIG9wdGlvbnMpO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLl9kZXN0cm95V2lkZ2V0KCk7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIER4b0FuaW1hdGlvbk1vZHVsZSxcclxuICAgIER4b0hpZGVNb2R1bGUsXHJcbiAgICBEeG9Gcm9tTW9kdWxlLFxyXG4gICAgRHhvUG9zaXRpb25Nb2R1bGUsXHJcbiAgICBEeG9BdE1vZHVsZSxcclxuICAgIER4b0JvdW5kYXJ5T2Zmc2V0TW9kdWxlLFxyXG4gICAgRHhvQ29sbGlzaW9uTW9kdWxlLFxyXG4gICAgRHhvTXlNb2R1bGUsXHJcbiAgICBEeG9PZmZzZXRNb2R1bGUsXHJcbiAgICBEeG9Ub01vZHVsZSxcclxuICAgIER4b1Nob3dNb2R1bGUsXHJcbiAgICBEeEludGVncmF0aW9uTW9kdWxlLFxyXG4gICAgRHhUZW1wbGF0ZU1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICBEeExvYWRQYW5lbENvbXBvbmVudFxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgRHhMb2FkUGFuZWxDb21wb25lbnQsXHJcbiAgICBEeG9BbmltYXRpb25Nb2R1bGUsXHJcbiAgICBEeG9IaWRlTW9kdWxlLFxyXG4gICAgRHhvRnJvbU1vZHVsZSxcclxuICAgIER4b1Bvc2l0aW9uTW9kdWxlLFxyXG4gICAgRHhvQXRNb2R1bGUsXHJcbiAgICBEeG9Cb3VuZGFyeU9mZnNldE1vZHVsZSxcclxuICAgIER4b0NvbGxpc2lvbk1vZHVsZSxcclxuICAgIER4b015TW9kdWxlLFxyXG4gICAgRHhvT2Zmc2V0TW9kdWxlLFxyXG4gICAgRHhvVG9Nb2R1bGUsXHJcbiAgICBEeG9TaG93TW9kdWxlLFxyXG4gICAgRHhUZW1wbGF0ZU1vZHVsZVxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIER4TG9hZFBhbmVsTW9kdWxlIHsgfVxyXG5cclxuaW1wb3J0IHR5cGUgKiBhcyBEeExvYWRQYW5lbFR5cGVzIGZyb20gXCJkZXZleHRyZW1lL3VpL2xvYWRfcGFuZWxfdHlwZXNcIjtcclxuZXhwb3J0IHsgRHhMb2FkUGFuZWxUeXBlcyB9O1xyXG5cclxuXHJcbiJdfQ==
|