@syncfusion/ej2-angular-charts
Version:
Feature-rich chart control with built-in support for over 25 chart types, technical indictors, trendline, zooming, tooltip, selection, crosshair and trackball. for Angular
206 lines • 38.4 kB
JavaScript
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { ChartModule } from './chart.module';
import { LineSeries, ScatterSeries, ColumnSeries, SplineSeries, SplineAreaSeries, StripLine, AreaSeries, ScrollBar, StepLineSeries, StepAreaSeries, StackingColumnSeries, StackingLineSeries, StackingAreaSeries, StackingStepAreaSeries, BarSeries, StackingBarSeries, RangeColumnSeries, BubbleSeries, Tooltip, Crosshair, Category, DateTime, Logarithmic, Legend, Zoom, DataLabel, Selection, ChartAnnotation, HiloSeries, HiloOpenCloseSeries, WaterfallSeries, RangeAreaSeries, RangeStepAreaSeries, SplineRangeAreaSeries, CandleSeries, PolarSeries, RadarSeries, SmaIndicator, TmaIndicator, EmaIndicator, AccumulationDistributionIndicator, MacdIndicator, AtrIndicator, RsiIndicator, MomentumIndicator, StochasticIndicator, BollingerBands, BoxAndWhiskerSeries, HistogramSeries, ErrorBar, Trendlines, DateTimeCategory, MultiColoredLineSeries, MultiColoredAreaSeries, MultiLevelLabel, ParetoSeries, Export, DataEditing, Highlight, LastValueLabel } from '@syncfusion/ej2-charts';
import * as i0 from "@angular/core";
export const LineSeriesService = { provide: 'ChartsLineSeries', useValue: LineSeries };
export const ScatterSeriesService = { provide: 'ChartsScatterSeries', useValue: ScatterSeries };
export const ColumnSeriesService = { provide: 'ChartsColumnSeries', useValue: ColumnSeries };
export const SplineSeriesService = { provide: 'ChartsSplineSeries', useValue: SplineSeries };
export const SplineAreaSeriesService = { provide: 'ChartsSplineAreaSeries', useValue: SplineAreaSeries };
export const StripLineService = { provide: 'ChartsStripLine', useValue: StripLine };
export const AreaSeriesService = { provide: 'ChartsAreaSeries', useValue: AreaSeries };
export const ScrollBarService = { provide: 'ChartsScrollBar', useValue: ScrollBar };
export const StepLineSeriesService = { provide: 'ChartsStepLineSeries', useValue: StepLineSeries };
export const StepAreaSeriesService = { provide: 'ChartsStepAreaSeries', useValue: StepAreaSeries };
export const StackingColumnSeriesService = { provide: 'ChartsStackingColumnSeries', useValue: StackingColumnSeries };
export const StackingLineSeriesService = { provide: 'ChartsStackingLineSeries', useValue: StackingLineSeries };
export const StackingAreaSeriesService = { provide: 'ChartsStackingAreaSeries', useValue: StackingAreaSeries };
export const StackingStepAreaSeriesService = { provide: 'ChartsStackingStepAreaSeries', useValue: StackingStepAreaSeries };
export const BarSeriesService = { provide: 'ChartsBarSeries', useValue: BarSeries };
export const StackingBarSeriesService = { provide: 'ChartsStackingBarSeries', useValue: StackingBarSeries };
export const RangeColumnSeriesService = { provide: 'ChartsRangeColumnSeries', useValue: RangeColumnSeries };
export const BubbleSeriesService = { provide: 'ChartsBubbleSeries', useValue: BubbleSeries };
export const TooltipService = { provide: 'ChartsTooltip', useValue: Tooltip };
export const CrosshairService = { provide: 'ChartsCrosshair', useValue: Crosshair };
export const CategoryService = { provide: 'ChartsCategory', useValue: Category };
export const DateTimeService = { provide: 'ChartsDateTime', useValue: DateTime };
export const LogarithmicService = { provide: 'ChartsLogarithmic', useValue: Logarithmic };
export const LegendService = { provide: 'ChartsLegend', useValue: Legend };
export const ZoomService = { provide: 'ChartsZoom', useValue: Zoom };
export const DataLabelService = { provide: 'ChartsDataLabel', useValue: DataLabel };
export const SelectionService = { provide: 'ChartsSelection', useValue: Selection };
export const ChartAnnotationService = { provide: 'ChartsChartAnnotation', useValue: ChartAnnotation };
export const HiloSeriesService = { provide: 'ChartsHiloSeries', useValue: HiloSeries };
export const HiloOpenCloseSeriesService = { provide: 'ChartsHiloOpenCloseSeries', useValue: HiloOpenCloseSeries };
export const WaterfallSeriesService = { provide: 'ChartsWaterfallSeries', useValue: WaterfallSeries };
export const RangeAreaSeriesService = { provide: 'ChartsRangeAreaSeries', useValue: RangeAreaSeries };
export const RangeStepAreaSeriesService = { provide: 'ChartsRangeStepAreaSeries', useValue: RangeStepAreaSeries };
export const SplineRangeAreaSeriesService = { provide: 'ChartsSplineRangeAreaSeries', useValue: SplineRangeAreaSeries };
export const CandleSeriesService = { provide: 'ChartsCandleSeries', useValue: CandleSeries };
export const PolarSeriesService = { provide: 'ChartsPolarSeries', useValue: PolarSeries };
export const RadarSeriesService = { provide: 'ChartsRadarSeries', useValue: RadarSeries };
export const SmaIndicatorService = { provide: 'ChartsSmaIndicator', useValue: SmaIndicator };
export const TmaIndicatorService = { provide: 'ChartsTmaIndicator', useValue: TmaIndicator };
export const EmaIndicatorService = { provide: 'ChartsEmaIndicator', useValue: EmaIndicator };
export const AccumulationDistributionIndicatorService = { provide: 'ChartsAccumulationDistributionIndicator', useValue: AccumulationDistributionIndicator };
export const MacdIndicatorService = { provide: 'ChartsMacdIndicator', useValue: MacdIndicator };
export const AtrIndicatorService = { provide: 'ChartsAtrIndicator', useValue: AtrIndicator };
export const RsiIndicatorService = { provide: 'ChartsRsiIndicator', useValue: RsiIndicator };
export const MomentumIndicatorService = { provide: 'ChartsMomentumIndicator', useValue: MomentumIndicator };
export const StochasticIndicatorService = { provide: 'ChartsStochasticIndicator', useValue: StochasticIndicator };
export const BollingerBandsService = { provide: 'ChartsBollingerBands', useValue: BollingerBands };
export const BoxAndWhiskerSeriesService = { provide: 'ChartsBoxAndWhiskerSeries', useValue: BoxAndWhiskerSeries };
export const HistogramSeriesService = { provide: 'ChartsHistogramSeries', useValue: HistogramSeries };
export const ErrorBarService = { provide: 'ChartsErrorBar', useValue: ErrorBar };
export const TrendlinesService = { provide: 'ChartsTrendlines', useValue: Trendlines };
export const DateTimeCategoryService = { provide: 'ChartsDateTimeCategory', useValue: DateTimeCategory };
export const MultiColoredLineSeriesService = { provide: 'ChartsMultiColoredLineSeries', useValue: MultiColoredLineSeries };
export const MultiColoredAreaSeriesService = { provide: 'ChartsMultiColoredAreaSeries', useValue: MultiColoredAreaSeries };
export const MultiLevelLabelService = { provide: 'ChartsMultiLevelLabel', useValue: MultiLevelLabel };
export const ParetoSeriesService = { provide: 'ChartsParetoSeries', useValue: ParetoSeries };
export const ExportService = { provide: 'ChartsExport', useValue: Export };
export const DataEditingService = { provide: 'ChartsDataEditing', useValue: DataEditing };
export const HighlightService = { provide: 'ChartsHighlight', useValue: Highlight };
export const LastValueLabelService = { provide: 'ChartsLastValueLabel', useValue: LastValueLabel };
/**
* NgModule definition for the Chart component with providers.
*/
export class ChartAllModule {
}
ChartAllModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ChartAllModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
ChartAllModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ChartAllModule, imports: [CommonModule, ChartModule], exports: [ChartModule] });
ChartAllModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ChartAllModule, providers: [
LineSeriesService,
ScatterSeriesService,
ColumnSeriesService,
SplineSeriesService,
SplineAreaSeriesService,
StripLineService,
AreaSeriesService,
ScrollBarService,
StepLineSeriesService,
StepAreaSeriesService,
StackingColumnSeriesService,
StackingLineSeriesService,
StackingAreaSeriesService,
StackingStepAreaSeriesService,
BarSeriesService,
StackingBarSeriesService,
RangeColumnSeriesService,
BubbleSeriesService,
TooltipService,
CrosshairService,
CategoryService,
DateTimeService,
LogarithmicService,
LegendService,
ZoomService,
DataLabelService,
SelectionService,
ChartAnnotationService,
HiloSeriesService,
HiloOpenCloseSeriesService,
WaterfallSeriesService,
RangeAreaSeriesService,
RangeStepAreaSeriesService,
SplineRangeAreaSeriesService,
CandleSeriesService,
PolarSeriesService,
RadarSeriesService,
SmaIndicatorService,
TmaIndicatorService,
EmaIndicatorService,
AccumulationDistributionIndicatorService,
MacdIndicatorService,
AtrIndicatorService,
RsiIndicatorService,
MomentumIndicatorService,
StochasticIndicatorService,
BollingerBandsService,
BoxAndWhiskerSeriesService,
HistogramSeriesService,
ErrorBarService,
TrendlinesService,
DateTimeCategoryService,
MultiColoredLineSeriesService,
MultiColoredAreaSeriesService,
MultiLevelLabelService,
ParetoSeriesService,
ExportService,
DataEditingService,
HighlightService,
LastValueLabelService
], imports: [[CommonModule, ChartModule], ChartModule] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ChartAllModule, decorators: [{
type: NgModule,
args: [{
imports: [CommonModule, ChartModule],
exports: [
ChartModule
],
providers: [
LineSeriesService,
ScatterSeriesService,
ColumnSeriesService,
SplineSeriesService,
SplineAreaSeriesService,
StripLineService,
AreaSeriesService,
ScrollBarService,
StepLineSeriesService,
StepAreaSeriesService,
StackingColumnSeriesService,
StackingLineSeriesService,
StackingAreaSeriesService,
StackingStepAreaSeriesService,
BarSeriesService,
StackingBarSeriesService,
RangeColumnSeriesService,
BubbleSeriesService,
TooltipService,
CrosshairService,
CategoryService,
DateTimeService,
LogarithmicService,
LegendService,
ZoomService,
DataLabelService,
SelectionService,
ChartAnnotationService,
HiloSeriesService,
HiloOpenCloseSeriesService,
WaterfallSeriesService,
RangeAreaSeriesService,
RangeStepAreaSeriesService,
SplineRangeAreaSeriesService,
CandleSeriesService,
PolarSeriesService,
RadarSeriesService,
SmaIndicatorService,
TmaIndicatorService,
EmaIndicatorService,
AccumulationDistributionIndicatorService,
MacdIndicatorService,
AtrIndicatorService,
RsiIndicatorService,
MomentumIndicatorService,
StochasticIndicatorService,
BollingerBandsService,
BoxAndWhiskerSeriesService,
HistogramSeriesService,
ErrorBarService,
TrendlinesService,
DateTimeCategoryService,
MultiColoredLineSeriesService,
MultiColoredAreaSeriesService,
MultiLevelLabelService,
ParetoSeriesService,
ExportService,
DataEditingService,
HighlightService,
LastValueLabelService
]
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhcnQtYWxsLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jaGFydC9jaGFydC1hbGwubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQWUvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFDLFVBQVUsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLG1CQUFtQixFQUFFLHFCQUFxQixFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLGlDQUFpQyxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxzQkFBc0IsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsU0FBUyxF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LHVCQUF1Qjt3QkFDdkIsZ0JBQWdCO3dCQUNoQixpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3dCQUNyQixxQkFBcUI7d0JBQ3JCLDJCQUEyQjt3QkFDM0IseUJBQXlCO3dCQUN6Qix5QkFBeUI7d0JBQ3pCLDZCQUE2Qjt3QkFDN0IsZ0JBQWdCO3dCQUNoQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsbUJBQW1CO3dCQUNuQixjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixXQUFXO3dCQUNYLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixzQkFBc0I7d0JBQ3RCLGlCQUFpQjt3QkFDakIsMEJBQTBCO3dCQUMxQixzQkFBc0I7d0JBQ3RCLHNCQUFzQjt3QkFDdEIsMEJBQTBCO3dCQUMxQiw0QkFBNEI7d0JBQzVCLG1CQUFtQjt3QkFDbkIsa0JBQWtCO3dCQUNsQixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLHdDQUF3Qzt3QkFDeEMsb0JBQW9CO3dCQUNwQixtQkFBbUI7d0JBQ25CLG1CQUFtQjt3QkFDbkIsd0JBQXdCO3dCQUN4QiwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQixzQkFBc0I7d0JBQ3RCLGVBQWU7d0JBQ2YsaUJBQWlCO3dCQUNqQix1QkFBdUI7d0JBQ3ZCLDZCQUE2Qjt3QkFDN0IsNkJBQTZCO3dCQUM3QixzQkFBc0I7d0JBQ3RCLG1CQUFtQjt3QkFDbkIsYUFBYTt3QkFDYixrQkFBa0I7d0JBQ2xCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3FCQUN4QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlLCBWYWx1ZVByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVHJlbmRsaW5lRGlyZWN0aXZlLCBUcmVuZGxpbmVzRGlyZWN0aXZlIH0gZnJvbSAnLi90cmVuZGxpbmVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWdtZW50RGlyZWN0aXZlLCBTZWdtZW50c0RpcmVjdGl2ZSB9IGZyb20gJy4vc2VnbWVudHMuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNlcmllc0RpcmVjdGl2ZSwgU2VyaWVzQ29sbGVjdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4vc2VyaWVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTdHJpcExpbmVEaXJlY3RpdmUsIFN0cmlwTGluZXNEaXJlY3RpdmUgfSBmcm9tICcuL3N0cmlwbGluZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IENhdGVnb3J5RGlyZWN0aXZlLCBDYXRlZ29yaWVzRGlyZWN0aXZlIH0gZnJvbSAnLi9jYXRlZ29yaWVzLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBNdWx0aUxldmVsTGFiZWxEaXJlY3RpdmUsIE11bHRpTGV2ZWxMYWJlbHNEaXJlY3RpdmUgfSBmcm9tICcuL211bHRpbGV2ZWxsYWJlbHMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEF4aXNEaXJlY3RpdmUsIEF4ZXNEaXJlY3RpdmUgfSBmcm9tICcuL2F4ZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJvd0RpcmVjdGl2ZSwgUm93c0RpcmVjdGl2ZSB9IGZyb20gJy4vcm93cy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ29sdW1uRGlyZWN0aXZlLCBDb2x1bW5zRGlyZWN0aXZlIH0gZnJvbSAnLi9jb2x1bW5zLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSYW5nZUNvbG9yU2V0dGluZ0RpcmVjdGl2ZSwgUmFuZ2VDb2xvclNldHRpbmdzRGlyZWN0aXZlIH0gZnJvbSAnLi9yYW5nZWNvbG9yc2V0dGluZ3MuZGlyZWN0aXZlJztcbmltcG9ydCB7IEFubm90YXRpb25EaXJlY3RpdmUsIEFubm90YXRpb25zRGlyZWN0aXZlIH0gZnJvbSAnLi9hbm5vdGF0aW9ucy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU2VsZWN0ZWREYXRhSW5kZXhEaXJlY3RpdmUsIFNlbGVjdGVkRGF0YUluZGV4ZXNEaXJlY3RpdmUgfSBmcm9tICcuL3NlbGVjdGVkZGF0YWluZGV4ZXMuZGlyZWN0aXZlJztcbmltcG9ydCB7IEluZGljYXRvckRpcmVjdGl2ZSwgSW5kaWNhdG9yc0RpcmVjdGl2ZSB9IGZyb20gJy4vaW5kaWNhdG9ycy5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2NoYXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDaGFydE1vZHVsZSB9IGZyb20gJy4vY2hhcnQubW9kdWxlJztcbmltcG9ydCB7TGluZVNlcmllcywgU2NhdHRlclNlcmllcywgQ29sdW1uU2VyaWVzLCBTcGxpbmVTZXJpZXMsIFNwbGluZUFyZWFTZXJpZXMsIFN0cmlwTGluZSwgQXJlYVNlcmllcywgU2Nyb2xsQmFyLCBTdGVwTGluZVNlcmllcywgU3RlcEFyZWFTZXJpZXMsIFN0YWNraW5nQ29sdW1uU2VyaWVzLCBTdGFja2luZ0xpbmVTZXJpZXMsIFN0YWNraW5nQXJlYVNlcmllcywgU3RhY2tpbmdTdGVwQXJlYVNlcmllcywgQmFyU2VyaWVzLCBTdGFja2luZ0JhclNlcmllcywgUmFuZ2VDb2x1bW5TZXJpZXMsIEJ1YmJsZVNlcmllcywgVG9vbHRpcCwgQ3Jvc3NoYWlyLCBDYXRlZ29yeSwgRGF0ZVRpbWUsIExvZ2FyaXRobWljLCBMZWdlbmQsIFpvb20sIERhdGFMYWJlbCwgU2VsZWN0aW9uLCBDaGFydEFubm90YXRpb24sIEhpbG9TZXJpZXMsIEhpbG9PcGVuQ2xvc2VTZXJpZXMsIFdhdGVyZmFsbFNlcmllcywgUmFuZ2VBcmVhU2VyaWVzLCBSYW5nZVN0ZXBBcmVhU2VyaWVzLCBTcGxpbmVSYW5nZUFyZWFTZXJpZXMsIENhbmRsZVNlcmllcywgUG9sYXJTZXJpZXMsIFJhZGFyU2VyaWVzLCBTbWFJbmRpY2F0b3IsIFRtYUluZGljYXRvciwgRW1hSW5kaWNhdG9yLCBBY2N1bXVsYXRpb25EaXN0cmlidXRpb25JbmRpY2F0b3IsIE1hY2RJbmRpY2F0b3IsIEF0ckluZGljYXRvciwgUnNpSW5kaWNhdG9yLCBNb21lbnR1bUluZGljYXRvciwgU3RvY2hhc3RpY0luZGljYXRvciwgQm9sbGluZ2VyQmFuZHMsIEJveEFuZFdoaXNrZXJTZXJpZXMsIEhpc3RvZ3JhbVNlcmllcywgRXJyb3JCYXIsIFRyZW5kbGluZXMsIERhdGVUaW1lQ2F0ZWdvcnksIE11bHRpQ29sb3JlZExpbmVTZXJpZXMsIE11bHRpQ29sb3JlZEFyZWFTZXJpZXMsIE11bHRpTGV2ZWxMYWJlbCwgUGFyZXRvU2VyaWVzLCBFeHBvcnQsIERhdGFFZGl0aW5nLCBIaWdobGlnaHQsIExhc3RWYWx1ZUxhYmVsfSBmcm9tICdAc3luY2Z1c2lvbi9lajItY2hhcnRzJ1xuXG5cbmV4cG9ydCBjb25zdCBMaW5lU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0xpbmVTZXJpZXMnLCB1c2VWYWx1ZTogTGluZVNlcmllc307XG5leHBvcnQgY29uc3QgU2NhdHRlclNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTY2F0dGVyU2VyaWVzJywgdXNlVmFsdWU6IFNjYXR0ZXJTZXJpZXN9O1xuZXhwb3J0IGNvbnN0IENvbHVtblNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNDb2x1bW5TZXJpZXMnLCB1c2VWYWx1ZTogQ29sdW1uU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBTcGxpbmVTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzU3BsaW5lU2VyaWVzJywgdXNlVmFsdWU6IFNwbGluZVNlcmllc307XG5leHBvcnQgY29uc3QgU3BsaW5lQXJlYVNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTcGxpbmVBcmVhU2VyaWVzJywgdXNlVmFsdWU6IFNwbGluZUFyZWFTZXJpZXN9O1xuZXhwb3J0IGNvbnN0IFN0cmlwTGluZVNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTdHJpcExpbmUnLCB1c2VWYWx1ZTogU3RyaXBMaW5lfTtcbmV4cG9ydCBjb25zdCBBcmVhU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0FyZWFTZXJpZXMnLCB1c2VWYWx1ZTogQXJlYVNlcmllc307XG5leHBvcnQgY29uc3QgU2Nyb2xsQmFyU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1Njcm9sbEJhcicsIHVzZVZhbHVlOiBTY3JvbGxCYXJ9O1xuZXhwb3J0IGNvbnN0IFN0ZXBMaW5lU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1N0ZXBMaW5lU2VyaWVzJywgdXNlVmFsdWU6IFN0ZXBMaW5lU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBTdGVwQXJlYVNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTdGVwQXJlYVNlcmllcycsIHVzZVZhbHVlOiBTdGVwQXJlYVNlcmllc307XG5leHBvcnQgY29uc3QgU3RhY2tpbmdDb2x1bW5TZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzU3RhY2tpbmdDb2x1bW5TZXJpZXMnLCB1c2VWYWx1ZTogU3RhY2tpbmdDb2x1bW5TZXJpZXN9O1xuZXhwb3J0IGNvbnN0IFN0YWNraW5nTGluZVNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTdGFja2luZ0xpbmVTZXJpZXMnLCB1c2VWYWx1ZTogU3RhY2tpbmdMaW5lU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBTdGFja2luZ0FyZWFTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzU3RhY2tpbmdBcmVhU2VyaWVzJywgdXNlVmFsdWU6IFN0YWNraW5nQXJlYVNlcmllc307XG5leHBvcnQgY29uc3QgU3RhY2tpbmdTdGVwQXJlYVNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTdGFja2luZ1N0ZXBBcmVhU2VyaWVzJywgdXNlVmFsdWU6IFN0YWNraW5nU3RlcEFyZWFTZXJpZXN9O1xuZXhwb3J0IGNvbnN0IEJhclNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNCYXJTZXJpZXMnLCB1c2VWYWx1ZTogQmFyU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBTdGFja2luZ0JhclNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTdGFja2luZ0JhclNlcmllcycsIHVzZVZhbHVlOiBTdGFja2luZ0JhclNlcmllc307XG5leHBvcnQgY29uc3QgUmFuZ2VDb2x1bW5TZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzUmFuZ2VDb2x1bW5TZXJpZXMnLCB1c2VWYWx1ZTogUmFuZ2VDb2x1bW5TZXJpZXN9O1xuZXhwb3J0IGNvbnN0IEJ1YmJsZVNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNCdWJibGVTZXJpZXMnLCB1c2VWYWx1ZTogQnViYmxlU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBUb29sdGlwU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1Rvb2x0aXAnLCB1c2VWYWx1ZTogVG9vbHRpcH07XG5leHBvcnQgY29uc3QgQ3Jvc3NoYWlyU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0Nyb3NzaGFpcicsIHVzZVZhbHVlOiBDcm9zc2hhaXJ9O1xuZXhwb3J0IGNvbnN0IENhdGVnb3J5U2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0NhdGVnb3J5JywgdXNlVmFsdWU6IENhdGVnb3J5fTtcbmV4cG9ydCBjb25zdCBEYXRlVGltZVNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNEYXRlVGltZScsIHVzZVZhbHVlOiBEYXRlVGltZX07XG5leHBvcnQgY29uc3QgTG9nYXJpdGhtaWNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzTG9nYXJpdGhtaWMnLCB1c2VWYWx1ZTogTG9nYXJpdGhtaWN9O1xuZXhwb3J0IGNvbnN0IExlZ2VuZFNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNMZWdlbmQnLCB1c2VWYWx1ZTogTGVnZW5kfTtcbmV4cG9ydCBjb25zdCBab29tU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1pvb20nLCB1c2VWYWx1ZTogWm9vbX07XG5leHBvcnQgY29uc3QgRGF0YUxhYmVsU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0RhdGFMYWJlbCcsIHVzZVZhbHVlOiBEYXRhTGFiZWx9O1xuZXhwb3J0IGNvbnN0IFNlbGVjdGlvblNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNTZWxlY3Rpb24nLCB1c2VWYWx1ZTogU2VsZWN0aW9ufTtcbmV4cG9ydCBjb25zdCBDaGFydEFubm90YXRpb25TZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzQ2hhcnRBbm5vdGF0aW9uJywgdXNlVmFsdWU6IENoYXJ0QW5ub3RhdGlvbn07XG5leHBvcnQgY29uc3QgSGlsb1Nlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNIaWxvU2VyaWVzJywgdXNlVmFsdWU6IEhpbG9TZXJpZXN9O1xuZXhwb3J0IGNvbnN0IEhpbG9PcGVuQ2xvc2VTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzSGlsb09wZW5DbG9zZVNlcmllcycsIHVzZVZhbHVlOiBIaWxvT3BlbkNsb3NlU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBXYXRlcmZhbGxTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzV2F0ZXJmYWxsU2VyaWVzJywgdXNlVmFsdWU6IFdhdGVyZmFsbFNlcmllc307XG5leHBvcnQgY29uc3QgUmFuZ2VBcmVhU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1JhbmdlQXJlYVNlcmllcycsIHVzZVZhbHVlOiBSYW5nZUFyZWFTZXJpZXN9O1xuZXhwb3J0IGNvbnN0IFJhbmdlU3RlcEFyZWFTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzUmFuZ2VTdGVwQXJlYVNlcmllcycsIHVzZVZhbHVlOiBSYW5nZVN0ZXBBcmVhU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBTcGxpbmVSYW5nZUFyZWFTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzU3BsaW5lUmFuZ2VBcmVhU2VyaWVzJywgdXNlVmFsdWU6IFNwbGluZVJhbmdlQXJlYVNlcmllc307XG5leHBvcnQgY29uc3QgQ2FuZGxlU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0NhbmRsZVNlcmllcycsIHVzZVZhbHVlOiBDYW5kbGVTZXJpZXN9O1xuZXhwb3J0IGNvbnN0IFBvbGFyU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1BvbGFyU2VyaWVzJywgdXNlVmFsdWU6IFBvbGFyU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBSYWRhclNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNSYWRhclNlcmllcycsIHVzZVZhbHVlOiBSYWRhclNlcmllc307XG5leHBvcnQgY29uc3QgU21hSW5kaWNhdG9yU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1NtYUluZGljYXRvcicsIHVzZVZhbHVlOiBTbWFJbmRpY2F0b3J9O1xuZXhwb3J0IGNvbnN0IFRtYUluZGljYXRvclNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNUbWFJbmRpY2F0b3InLCB1c2VWYWx1ZTogVG1hSW5kaWNhdG9yfTtcbmV4cG9ydCBjb25zdCBFbWFJbmRpY2F0b3JTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzRW1hSW5kaWNhdG9yJywgdXNlVmFsdWU6IEVtYUluZGljYXRvcn07XG5leHBvcnQgY29uc3QgQWNjdW11bGF0aW9uRGlzdHJpYnV0aW9uSW5kaWNhdG9yU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0FjY3VtdWxhdGlvbkRpc3RyaWJ1dGlvbkluZGljYXRvcicsIHVzZVZhbHVlOiBBY2N1bXVsYXRpb25EaXN0cmlidXRpb25JbmRpY2F0b3J9O1xuZXhwb3J0IGNvbnN0IE1hY2RJbmRpY2F0b3JTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzTWFjZEluZGljYXRvcicsIHVzZVZhbHVlOiBNYWNkSW5kaWNhdG9yfTtcbmV4cG9ydCBjb25zdCBBdHJJbmRpY2F0b3JTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzQXRySW5kaWNhdG9yJywgdXNlVmFsdWU6IEF0ckluZGljYXRvcn07XG5leHBvcnQgY29uc3QgUnNpSW5kaWNhdG9yU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1JzaUluZGljYXRvcicsIHVzZVZhbHVlOiBSc2lJbmRpY2F0b3J9O1xuZXhwb3J0IGNvbnN0IE1vbWVudHVtSW5kaWNhdG9yU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c01vbWVudHVtSW5kaWNhdG9yJywgdXNlVmFsdWU6IE1vbWVudHVtSW5kaWNhdG9yfTtcbmV4cG9ydCBjb25zdCBTdG9jaGFzdGljSW5kaWNhdG9yU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1N0b2NoYXN0aWNJbmRpY2F0b3InLCB1c2VWYWx1ZTogU3RvY2hhc3RpY0luZGljYXRvcn07XG5leHBvcnQgY29uc3QgQm9sbGluZ2VyQmFuZHNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzQm9sbGluZ2VyQmFuZHMnLCB1c2VWYWx1ZTogQm9sbGluZ2VyQmFuZHN9O1xuZXhwb3J0IGNvbnN0IEJveEFuZFdoaXNrZXJTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzQm94QW5kV2hpc2tlclNlcmllcycsIHVzZVZhbHVlOiBCb3hBbmRXaGlza2VyU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBIaXN0b2dyYW1TZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzSGlzdG9ncmFtU2VyaWVzJywgdXNlVmFsdWU6IEhpc3RvZ3JhbVNlcmllc307XG5leHBvcnQgY29uc3QgRXJyb3JCYXJTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzRXJyb3JCYXInLCB1c2VWYWx1ZTogRXJyb3JCYXJ9O1xuZXhwb3J0IGNvbnN0IFRyZW5kbGluZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzVHJlbmRsaW5lcycsIHVzZVZhbHVlOiBUcmVuZGxpbmVzfTtcbmV4cG9ydCBjb25zdCBEYXRlVGltZUNhdGVnb3J5U2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0RhdGVUaW1lQ2F0ZWdvcnknLCB1c2VWYWx1ZTogRGF0ZVRpbWVDYXRlZ29yeX07XG5leHBvcnQgY29uc3QgTXVsdGlDb2xvcmVkTGluZVNlcmllc1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNNdWx0aUNvbG9yZWRMaW5lU2VyaWVzJywgdXNlVmFsdWU6IE11bHRpQ29sb3JlZExpbmVTZXJpZXN9O1xuZXhwb3J0IGNvbnN0IE11bHRpQ29sb3JlZEFyZWFTZXJpZXNTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzTXVsdGlDb2xvcmVkQXJlYVNlcmllcycsIHVzZVZhbHVlOiBNdWx0aUNvbG9yZWRBcmVhU2VyaWVzfTtcbmV4cG9ydCBjb25zdCBNdWx0aUxldmVsTGFiZWxTZXJ2aWNlOiBWYWx1ZVByb3ZpZGVyID0geyBwcm92aWRlOiAnQ2hhcnRzTXVsdGlMZXZlbExhYmVsJywgdXNlVmFsdWU6IE11bHRpTGV2ZWxMYWJlbH07XG5leHBvcnQgY29uc3QgUGFyZXRvU2VyaWVzU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c1BhcmV0b1NlcmllcycsIHVzZVZhbHVlOiBQYXJldG9TZXJpZXN9O1xuZXhwb3J0IGNvbnN0IEV4cG9ydFNlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNFeHBvcnQnLCB1c2VWYWx1ZTogRXhwb3J0fTtcbmV4cG9ydCBjb25zdCBEYXRhRWRpdGluZ1NlcnZpY2U6IFZhbHVlUHJvdmlkZXIgPSB7IHByb3ZpZGU6ICdDaGFydHNEYXRhRWRpdGluZycsIHVzZVZhbHVlOiBEYXRhRWRpdGluZ307XG5leHBvcnQgY29uc3QgSGlnaGxpZ2h0U2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0hpZ2hsaWdodCcsIHVzZVZhbHVlOiBIaWdobGlnaHR9O1xuZXhwb3J0IGNvbnN0IExhc3RWYWx1ZUxhYmVsU2VydmljZTogVmFsdWVQcm92aWRlciA9IHsgcHJvdmlkZTogJ0NoYXJ0c0xhc3RWYWx1ZUxhYmVsJywgdXNlVmFsdWU6IExhc3RWYWx1ZUxhYmVsfTtcblxuLyoqXG4gKiBOZ01vZHVsZSBkZWZpbml0aW9uIGZvciB0aGUgQ2hhcnQgY29tcG9uZW50IHdpdGggcHJvdmlkZXJzLlxuICovXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENoYXJ0TW9kdWxlXSxcbiAgICBleHBvcnRzOiBbXG4gICAgICAgIENoYXJ0TW9kdWxlXG4gICAgXSxcbiAgICBwcm92aWRlcnM6W1xuICAgICAgICBMaW5lU2VyaWVzU2VydmljZSxcbiAgICAgICAgU2NhdHRlclNlcmllc1NlcnZpY2UsXG4gICAgICAgIENvbHVtblNlcmllc1NlcnZpY2UsXG4gICAgICAgIFNwbGluZVNlcmllc1NlcnZpY2UsXG4gICAgICAgIFNwbGluZUFyZWFTZXJpZXNTZXJ2aWNlLFxuICAgICAgICBTdHJpcExpbmVTZXJ2aWNlLFxuICAgICAgICBBcmVhU2VyaWVzU2VydmljZSxcbiAgICAgICAgU2Nyb2xsQmFyU2VydmljZSxcbiAgICAgICAgU3RlcExpbmVTZXJpZXNTZXJ2aWNlLFxuICAgICAgICBTdGVwQXJlYVNlcmllc1NlcnZpY2UsXG4gICAgICAgIFN0YWNraW5nQ29sdW1uU2VyaWVzU2VydmljZSxcbiAgICAgICAgU3RhY2tpbmdMaW5lU2VyaWVzU2VydmljZSxcbiAgICAgICAgU3RhY2tpbmdBcmVhU2VyaWVzU2VydmljZSxcbiAgICAgICAgU3RhY2tpbmdTdGVwQXJlYVNlcmllc1NlcnZpY2UsXG4gICAgICAgIEJhclNlcmllc1NlcnZpY2UsXG4gICAgICAgIFN0YWNraW5nQmFyU2VyaWVzU2VydmljZSxcbiAgICAgICAgUmFuZ2VDb2x1bW5TZXJpZXNTZXJ2aWNlLFxuICAgICAgICBCdWJibGVTZXJpZXNTZXJ2aWNlLFxuICAgICAgICBUb29sdGlwU2VydmljZSxcbiAgICAgICAgQ3Jvc3NoYWlyU2VydmljZSxcbiAgICAgICAgQ2F0ZWdvcnlTZXJ2aWNlLFxuICAgICAgICBEYXRlVGltZVNlcnZpY2UsXG4gICAgICAgIExvZ2FyaXRobWljU2VydmljZSxcbiAgICAgICAgTGVnZW5kU2VydmljZSxcbiAgICAgICAgWm9vbVNlcnZpY2UsXG4gICAgICAgIERhdGFMYWJlbFNlcnZpY2UsXG4gICAgICAgIFNlbGVjdGlvblNlcnZpY2UsXG4gICAgICAgIENoYXJ0QW5ub3RhdGlvblNlcnZpY2UsXG4gICAgICAgIEhpbG9TZXJpZXNTZXJ2aWNlLFxuICAgICAgICBIaWxvT3BlbkNsb3NlU2VyaWVzU2VydmljZSxcbiAgICAgICAgV2F0ZXJmYWxsU2VyaWVzU2VydmljZSxcbiAgICAgICAgUmFuZ2VBcmVhU2VyaWVzU2VydmljZSxcbiAgICAgICAgUmFuZ2VTdGVwQXJlYVNlcmllc1NlcnZpY2UsXG4gICAgICAgIFNwbGluZVJhbmdlQXJlYVNlcmllc1NlcnZpY2UsXG4gICAgICAgIENhbmRsZVNlcmllc1NlcnZpY2UsXG4gICAgICAgIFBvbGFyU2VyaWVzU2VydmljZSxcbiAgICAgICAgUmFkYXJTZXJpZXNTZXJ2aWNlLFxuICAgICAgICBTbWFJbmRpY2F0b3JTZXJ2aWNlLFxuICAgICAgICBUbWFJbmRpY2F0b3JTZXJ2aWNlLFxuICAgICAgICBFbWFJbmRpY2F0b3JTZXJ2aWNlLFxuICAgICAgICBBY2N1bXVsYXRpb25EaXN0cmlidXRpb25JbmRpY2F0b3JTZXJ2aWNlLFxuICAgICAgICBNYWNkSW5kaWNhdG9yU2VydmljZSxcbiAgICAgICAgQXRySW5kaWNhdG9yU2VydmljZSxcbiAgICAgICAgUnNpSW5kaWNhdG9yU2VydmljZSxcbiAgICAgICAgTW9tZW50dW1JbmRpY2F0b3JTZXJ2aWNlLFxuICAgICAgICBTdG9jaGFzdGljSW5kaWNhdG9yU2VydmljZSxcbiAgICAgICAgQm9sbGluZ2VyQmFuZHNTZXJ2aWNlLFxuICAgICAgICBCb3hBbmRXaGlza2VyU2VyaWVzU2VydmljZSxcbiAgICAgICAgSGlzdG9ncmFtU2VyaWVzU2VydmljZSxcbiAgICAgICAgRXJyb3JCYXJTZXJ2aWNlLFxuICAgICAgICBUcmVuZGxpbmVzU2VydmljZSxcbiAgICAgICAgRGF0ZVRpbWVDYXRlZ29yeVNlcnZpY2UsXG4gICAgICAgIE11bHRpQ29sb3JlZExpbmVTZXJpZXNTZXJ2aWNlLFxuICAgICAgICBNdWx0aUNvbG9yZWRBcmVhU2VyaWVzU2VydmljZSxcbiAgICAgICAgTXVsdGlMZXZlbExhYmVsU2VydmljZSxcbiAgICAgICAgUGFyZXRvU2VyaWVzU2VydmljZSxcbiAgICAgICAgRXhwb3J0U2VydmljZSxcbiAgICAgICAgRGF0YUVkaXRpbmdTZXJ2aWNlLFxuICAgICAgICBIaWdobGlnaHRTZXJ2aWNlLFxuICAgICAgICBMYXN0VmFsdWVMYWJlbFNlcnZpY2VcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIENoYXJ0QWxsTW9kdWxlIHsgfSJdfQ==