barsa-sap-ui 2.2.43 → 2.2.44

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.
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC12aWV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbW9kZWxzL2dyaWQtdmlldy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FyZFR5cGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5pbXBvcnQgeyBFanJheU9sZ28gfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IE1ldGFvYmplY3REYXRhTW9kZWwsIE1vRm9yUmVwb3J0TW9kZWwsIFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNvbnRleHQge1xyXG4gICAgY29sdW1uczogbnVtYmVyO1xyXG4gICAgaXNDaGVja0xpc3Q6IGFueTtcclxuICAgIGdyb3VwYnk6IG51bWJlcjtcclxuICAgIHRvb2xiYXJCdXR0b25zOiBudW1iZXI7XHJcbiAgICBjb2x1bW5zQ291bnQ6IG51bWJlcjtcclxuICAgICRpbXBsaWNpdDogbnVtYmVyO1xyXG4gICAgYWxsQ2hlY2tlZDogbnVtYmVyO1xyXG4gICAgc2Vjb25kYXJ5Q29sdW1uczogbnVtYmVyO1xyXG59XHJcbi8qIGVzbGludC1kaXNhYmxlICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlUYWJsZVZpZXdTZXR0aW5nIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgRml0V2lkdGg6IGJvb2xlYW47XHJcbiAgICBHcm91cFN1bW1hcnk6IGJvb2xlYW47XHJcbiAgICBGcmVlemVDb2x1bW46IHN0cmluZztcclxuICAgIE5vSG9yaXp0b25hbEJvcmRlcnM6IGJvb2xlYW47XHJcbiAgICBOb1ZlcnRpY2FsQm9yZGVyczogYm9vbGVhbjtcclxuICAgIE5vQm9yZGVyczogYm9vbGVhbjtcclxuICAgIE5vQm9keUJvcmRlcnM6IGJvb2xlYW47XHJcbiAgICBIaWRlSXRlbUNvdW50OiBib29sZWFuO1xyXG4gICAgSW5maW5pdGVTY3JvbGw6IGJvb2xlYW47XHJcbiAgICBCb2R5SGVpZ2h0OiBzdHJpbmc7XHJcbiAgICBEaXNhYmxlUmVzcG9uc2l2ZTogYm9vbGVhbjtcclxuICAgIE1lcmdlRmllbGRzVG9Db2x1bW5zOiBNb0ZvclJlcG9ydE1vZGVsO1xyXG4gICAgU2VsZWN0aW9uTW9kZTogbnVtYmVyOyAvLyAxLW5vc2VsZWN0aW9uIDItc2luZ2xlIDMtbXVsdGlcclxuICAgIENvbHVtbkNvbXBvbmVudHM/OiBNb0ZvclJlcG9ydE1vZGVsO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlMaXN0Vmlld1NldHRpbmcgZXh0ZW5kcyBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbiAgICBJdGVtVHlwZSRDYXB0aW9uPzogc3RyaW5nO1xyXG4gICAgVGl0bGU6IHN0cmluZztcclxuICAgIFN1YnRpdGxlOiBzdHJpbmc7XHJcbiAgICBBdmF0YXI6IHN0cmluZztcclxuICAgIFN0YXR1czogc3RyaW5nO1xyXG4gICAgRGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIE5vblNlbGVjdGFibGU6IGJvb2xlYW47XHJcbiAgICBBdmF0YXJTaXplOiBzdHJpbmc7XHJcbiAgICBJdGVtQ29tcG9uZW50OiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlDYXJkTGlzdFZpZXdTZXR0aW5nIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgW2tleTogc3RyaW5nXTogYW55O1xyXG4gICAgVGl0bGU6IHN0cmluZztcclxuICAgIFN1YnRpdGxlOiBzdHJpbmc7XHJcbiAgICBBdmF0YXI6IHN0cmluZztcclxuICAgIEF2YXRhclNpemU6IHN0cmluZztcclxuICAgIENpcmNsZUF2YXRhcjogYm9vbGVhbjtcclxuICAgIFN0YXR1czogc3RyaW5nO1xyXG4gICAgRGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIEZpZWxkTGlzdDogc3RyaW5nO1xyXG4gICAgQWN0aW9uRmllbGROYW1lOiBzdHJpbmc7XHJcbiAgICBBY3Rpb25GaWVsZENvbW1hbmQ6IHN0cmluZztcclxuICAgIENhcmRXaWR0aDogc3RyaW5nO1xyXG4gICAgQ29udGVudENvbXBvbmVudDogRWpyYXlPbGdvO1xyXG4gICAgQ2FyZFR5cGUkQ2FwdGlvbjogQ2FyZFR5cGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZlVmlldyB7XHJcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIHZpZXdTZXR0aW5nOiBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFVpTm90aWZpY2F0aW9uVmlld1NldHRpbmdzIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgVGl0bGVGaWVsZDogc3RyaW5nO1xyXG4gICAgRGVzY3JpcHRpb25GaWVsZDogc3RyaW5nO1xyXG4gICAgRmllbGRMaXN0SW5Gb290ZXI6IHN0cmluZztcclxuICAgIFdvcmtmbG93QnV0dG9uc0ZpZWxkOiBzdHJpbmc7XHJcbn1cclxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC12aWV3LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvbW9kZWxzL2dyaWQtdmlldy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ2FyZFR5cGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5pbXBvcnQgeyBFanJheU9sZ28gfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcbmltcG9ydCB7IE1ldGFvYmplY3REYXRhTW9kZWwsIE1vRm9yUmVwb3J0TW9kZWwsIFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIH0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBUYWJsZUNvbnRleHQge1xyXG4gICAgY29sdW1uczogbnVtYmVyO1xyXG4gICAgaXNDaGVja0xpc3Q6IGFueTtcclxuICAgIGdyb3VwYnk6IG51bWJlcjtcclxuICAgIHRvb2xiYXJCdXR0b25zOiBudW1iZXI7XHJcbiAgICBjb2x1bW5zQ291bnQ6IG51bWJlcjtcclxuICAgICRpbXBsaWNpdDogbnVtYmVyO1xyXG4gICAgYWxsQ2hlY2tlZDogbnVtYmVyO1xyXG4gICAgc2Vjb25kYXJ5Q29sdW1uczogbnVtYmVyO1xyXG59XHJcbi8qIGVzbGludC1kaXNhYmxlICovXHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlUYWJsZVZpZXdTZXR0aW5nIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgRml0V2lkdGg6IGJvb2xlYW47XHJcbiAgICBHcm91cFN1bW1hcnk6IGJvb2xlYW47XHJcbiAgICBGcmVlemVDb2x1bW46IHN0cmluZztcclxuICAgIE5vSG9yaXp0b25hbEJvcmRlcnM6IGJvb2xlYW47XHJcbiAgICBOb1ZlcnRpY2FsQm9yZGVyczogYm9vbGVhbjtcclxuICAgIE5vQm9yZGVyczogYm9vbGVhbjtcclxuICAgIE5vQm9keUJvcmRlcnM6IGJvb2xlYW47XHJcbiAgICBIaWRlSXRlbUNvdW50OiBib29sZWFuO1xyXG4gICAgSW5maW5pdGVTY3JvbGw6IGJvb2xlYW47XHJcbiAgICBCb2R5SGVpZ2h0OiBzdHJpbmc7XHJcbiAgICBEaXNhYmxlUmVzcG9uc2l2ZTogYm9vbGVhbjtcclxuICAgIE1lcmdlRmllbGRzVG9Db2x1bW5zOiBNb0ZvclJlcG9ydE1vZGVsO1xyXG4gICAgU2VsZWN0aW9uTW9kZTogbnVtYmVyOyAvLyAxLW5vc2VsZWN0aW9uIDItc2luZ2xlIDMtbXVsdGlcclxuICAgIENvbHVtbkNvbXBvbmVudHM/OiBNb0ZvclJlcG9ydE1vZGVsO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlMaXN0Vmlld1NldHRpbmcgZXh0ZW5kcyBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbiAgICBJdGVtVHlwZSRDYXB0aW9uPzogc3RyaW5nO1xyXG4gICAgVGl0bGU6IHN0cmluZztcclxuICAgIFN1YnRpdGxlOiBzdHJpbmc7XHJcbiAgICBBdmF0YXI6IHN0cmluZztcclxuICAgIFN0YXR1czogc3RyaW5nO1xyXG4gICAgRGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIE5vblNlbGVjdGFibGU6IGJvb2xlYW47XHJcbiAgICBBdmF0YXJTaXplOiBzdHJpbmc7XHJcbiAgICBJdGVtQ29tcG9uZW50OiBNZXRhb2JqZWN0RGF0YU1vZGVsO1xyXG59XHJcbmV4cG9ydCBpbnRlcmZhY2UgVWlDYXJkTGlzdFZpZXdTZXR0aW5nIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgW2tleTogc3RyaW5nXTogYW55O1xyXG4gICAgVGl0bGU6IHN0cmluZztcclxuICAgIFN1YnRpdGxlOiBzdHJpbmc7XHJcbiAgICBBdmF0YXI6IHN0cmluZztcclxuICAgIEF2YXRhclNpemU6IHN0cmluZztcclxuICAgIENpcmNsZUF2YXRhcjogYm9vbGVhbjtcclxuICAgIFN0YXR1czogc3RyaW5nO1xyXG4gICAgRGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIEZpZWxkTGlzdDogc3RyaW5nO1xyXG4gICAgQWN0aW9uRmllbGROYW1lOiBzdHJpbmc7XHJcbiAgICBBY3Rpb25GaWVsZENvbW1hbmQ6IHN0cmluZztcclxuICAgIENhcmRXaWR0aDogc3RyaW5nO1xyXG4gICAgQ29udGVudENvbXBvbmVudDogRWpyYXlPbGdvO1xyXG4gICAgQ2FyZFR5cGUkQ2FwdGlvbjogQ2FyZFR5cGU7XHJcbn1cclxuZXhwb3J0IGludGVyZmFjZSBVaUNhcm91c2VsVmlld1NldHRpbmcgZXh0ZW5kcyBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZyB7XHJcbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XHJcbiAgICBUaXRsZTogc3RyaW5nO1xyXG4gICAgU3VidGl0bGU6IHN0cmluZztcclxuICAgIEF2YXRhcjogc3RyaW5nO1xyXG4gICAgQXZhdGFyU2l6ZTogc3RyaW5nO1xyXG4gICAgQ2lyY2xlQXZhdGFyOiBib29sZWFuO1xyXG4gICAgU3RhdHVzOiBzdHJpbmc7XHJcbiAgICBEZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gICAgRmllbGRMaXN0OiBzdHJpbmc7XHJcbiAgICBBY3Rpb25GaWVsZE5hbWU6IHN0cmluZztcclxuICAgIEFjdGlvbkZpZWxkQ29tbWFuZDogc3RyaW5nO1xyXG4gICAgQ2Fyb3VzZWxUeXBlOiAnZnVsbCcgfCAnbXVsdGlwbGUnIHwgJ3NpbmdsZScgfCAnc21hbGwnIHwgdW5kZWZpbmVkO1xyXG4gICAgQ29udGVudENvbXBvbmVudDogRWpyYXlPbGdvO1xyXG4gICAgQ2FyZFR5cGUkQ2FwdGlvbjogQ2FyZFR5cGU7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWN0aXZlVmlldyB7XHJcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIHZpZXdTZXR0aW5nOiBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZztcclxufVxyXG5leHBvcnQgaW50ZXJmYWNlIFVpTm90aWZpY2F0aW9uVmlld1NldHRpbmdzIGV4dGVuZHMgVWlSZXBvcnRWaWV3QmFzZVNldHRpbmcge1xyXG4gICAgVGl0bGVGaWVsZDogc3RyaW5nO1xyXG4gICAgRGVzY3JpcHRpb25GaWVsZDogc3RyaW5nO1xyXG4gICAgRmllbGRMaXN0SW5Gb290ZXI6IHN0cmluZztcclxuICAgIFdvcmtmbG93QnV0dG9uc0ZpZWxkOiBzdHJpbmc7XHJcbn1cclxuIl19
@@ -0,0 +1,148 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, HostBinding, Renderer2, ViewChild, inject } from '@angular/core';
2
+ import { MoReportValuePipe, PictureFieldSourcePipe, ReportViewBaseComponent } from 'barsa-novin-ray-core';
3
+ import { Router } from '@angular/router';
4
+ import Splide from '@splidejs/splide';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "barsa-novin-ray-core";
8
+ import * as i3 from "@fundamental-ngx/core/button";
9
+ import * as i4 from "@fundamental-ngx/core/card";
10
+ export class UiReportCarouselViewComponent extends ReportViewBaseComponent {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.type = 'full';
14
+ this.carouselCls = 'carousel-full';
15
+ this.width = window.innerWidth;
16
+ this.height = this.width / 2;
17
+ this.rval = inject(MoReportValuePipe);
18
+ this._picFieldSrc = inject(PictureFieldSourcePipe);
19
+ this._renderer2 = inject(Renderer2);
20
+ this._el = inject(ElementRef);
21
+ this._router = inject(Router);
22
+ }
23
+ get dom() {
24
+ return this.splideElRef?.nativeElement;
25
+ }
26
+ ngOnInit() {
27
+ super.ngOnInit();
28
+ this.type = this.viewSetting.SliderType$Caption || 'full';
29
+ this._width = this.viewSetting.WidthSize;
30
+ }
31
+ ngAfterViewInit() {
32
+ this._init();
33
+ setTimeout(() => {
34
+ this._splide.refresh();
35
+ }, 200);
36
+ }
37
+ onRefresh() {
38
+ this._splide.refresh();
39
+ }
40
+ _init() {
41
+ this._renderer2.setAttribute(this.dom, 'data-splide', '{"direction":"rtl"}');
42
+ switch (this.type) {
43
+ case 'full':
44
+ this.carouselCls = 'carousel-full';
45
+ this._fullMount();
46
+ break;
47
+ case 'multiple':
48
+ this.carouselCls = 'carousel-multiple';
49
+ this._multipleMount();
50
+ break;
51
+ case 'small':
52
+ this.carouselCls = 'carousel-small';
53
+ this._smallMount();
54
+ break;
55
+ case 'single':
56
+ this.carouselCls = 'carousel-single';
57
+ this._singleMount();
58
+ break;
59
+ }
60
+ this._renderer2.addClass(this.splideElRef?.nativeElement, this.carouselCls);
61
+ }
62
+ _fullMount() {
63
+ this._splide = new Splide(this.dom, {
64
+ perPage: 1,
65
+ rewind: true,
66
+ direction: 'rtl',
67
+ type: 'loop',
68
+ gap: 0,
69
+ arrows: true,
70
+ pagination: false,
71
+ autoplay: true,
72
+ speed: 1000
73
+ }).mount();
74
+ }
75
+ _singleMount() {
76
+ this._splide = new Splide(this.dom, {
77
+ perPage: 1,
78
+ rewind: true,
79
+ type: 'loop',
80
+ direction: 'rtl',
81
+ gap: 0,
82
+ padding: 25,
83
+ arrows: true,
84
+ pagination: false,
85
+ breakpoints: {
86
+ 768: {
87
+ perPage: 1
88
+ },
89
+ 991: {
90
+ perPage: 2
91
+ }
92
+ }
93
+ }).mount();
94
+ }
95
+ _multipleMount() {
96
+ this._splide = new Splide(this.dom, {
97
+ perPage: 4,
98
+ rewind: true,
99
+ direction: 'rtl',
100
+ type: 'loop',
101
+ gap: 16,
102
+ padding: 0,
103
+ arrows: true,
104
+ pagination: false,
105
+ breakpoints: {
106
+ 768: {
107
+ perPage: 2
108
+ },
109
+ 991: {
110
+ perPage: 3
111
+ }
112
+ }
113
+ }).mount();
114
+ }
115
+ _smallMount() {
116
+ this._splide = new Splide(this.dom, {
117
+ perPage: 9,
118
+ rewind: true,
119
+ type: 'loop',
120
+ direction: 'rtl',
121
+ gap: 16,
122
+ padding: 0,
123
+ arrows: true,
124
+ pagination: false,
125
+ breakpoints: {
126
+ 768: {
127
+ perPage: 5
128
+ },
129
+ 991: {
130
+ perPage: 7
131
+ }
132
+ }
133
+ }).mount();
134
+ }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiReportCarouselViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
136
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiReportCarouselViewComponent, selector: "bsu-ui-report-carousel-view", host: { properties: { "style.width": "this._width" } }, viewQueries: [{ propertyName: "splideElRef", first: true, predicate: ["splide"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"splide\" #splide>\r\n <div class=\"splide__track\">\r\n <ul class=\"splide__list\">\r\n @for(mo of moDataList;track mo.Id){\r\n <li class=\"splide__slide\">\r\n <ng-container\r\n *ngTemplateOutlet=\"viewSetting.RowOlgo?.Selector ? dynamicTpl : defaultTpl\"\r\n ></ng-container>\r\n <ng-template #dynamicTpl>\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [isLastChildGroup]=\"mo.$IsLastChildGroup\"\r\n [groupSummary]=\"groupSummary\"\r\n [showViewButton]=\"showViewButton\"\r\n [inlineEditWithoutSelection]=\"inlineEditWithoutSelection\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [moDataList]=\"moDataList\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [showRowNumber]=\"contextView?.Grid_ShowRowNumber\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [dirtyColumns]=\"mo.$DirtyColumns\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [attachmentViewType]=\"viewSetting?.AttachmentViewType\"\r\n [detailsTextFunction]=\"viewSetting?.DetailsSetting?.ButtonTextFunction\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [coloringRow]=\"viewSetting?.ColoringRow\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [setting]=\"viewSetting\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:rowIndicator\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"rowIndicator\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n </ng-template>\r\n <ng-template #defaultTpl>\r\n <fd-card cardType=\"banner\" style=\"height: 300px\">\r\n <fd-card-media>\r\n <div fd-card-media-content-container [legendColor]=\"13\">\r\n <div fd-card-media-heading [level]=\"2\">Get Ready for the AI Learning Days!</div>\r\n <p fd-card-media-text>\r\n Lorem ipsum dolor sit amet consectetur adipisicing elit. At aperiam in incidunt\r\n distinctio, ad blanditiis autem voluptatibus dolore labore eos harum placeat\r\n sapiente dolor ex illo ipsa quod excepturi doloribus!\r\n </p>\r\n <button fd-button fdType=\"emphasized\">Register</button>\r\n </div>\r\n <div fd-card-media-image-container>\r\n <img\r\n fd-card-media-image\r\n src=\"https://picsum.photos/298/300?nature/1\"\r\n alt=\"randomly generated image from Picsum\"\r\n style=\"max-height: 300px\"\r\n />\r\n </div>\r\n </fd-card-media>\r\n </fd-card>\r\n </ng-template>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;height:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DynamicItemComponent, selector: "bnrc-dynamic-item-component", inputs: ["mo", "allColumns", "moDataList", "columns", "column", "index", "last", "hideOpenIcon", "deviceName", "deviceSize", "rtl", "editMode", "setting", "parameters", "contextMenuItems", "canView", "showRowNumber", "rowNumber", "formSetting", "conditionalFormats", "disableOverflowContextMenu", "navigationArrow", "isCheckList", "fields", "isChecked", "layout94$", "inlineEditMode", "isNewInlineMo", "allowInlineEdit", "typeDefId", "rowIndicator", "rowIndicatorColor", "UlvMainCtrlr"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.CardComponent, selector: "fd-card", inputs: ["badge", "badgeIcon", "badgeColor", "badgeColorSecondary", "badgeStatus", "badgeAriaLabel", "secondBadge", "secondBadgeIcon", "secondBadgeColor", "secondBadgeColorSecondary", "secondBadgeStatus", "secondBadgeAriaLabel", "isLoading", "cardType", "id", "ariaRoledescription", "ariaDescription", "ariaLabel", "role", "interactive", "selected", "ariaPosinset", "ariaSetsize"], outputs: ["ariaPosinsetChange", "ariaSetsizeChange"] }, { kind: "component", type: i4.CardMediaComponent, selector: "fd-card-media", inputs: ["ariaRoleDescription", "hasPadding", "shellColor", "legendColor"] }, { kind: "directive", type: i4.CardMediaImageDirective, selector: "[fd-card-media-image]" }, { kind: "directive", type: i4.CardMediaImageContainerDirective, selector: "[fd-card-media-image-container]" }, { kind: "directive", type: i4.CardMediaContentContainerDirective, selector: "[fd-card-media-content-container]", inputs: ["isOverlay", "shellColor", "legendColor"] }, { kind: "directive", type: i4.CardMediaHeadingDirective, selector: "[fd-card-media-heading]", inputs: ["id", "level"] }, { kind: "directive", type: i4.CardMediaTextDirective, selector: "[fd-card-media-text]" }, { kind: "pipe", type: i2.FilterColumnsByDetailsPipe, name: "filterColumnsByDetails" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
137
+ }
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiReportCarouselViewComponent, decorators: [{
139
+ type: Component,
140
+ args: [{ selector: 'bsu-ui-report-carousel-view', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "<div class=\"splide\" #splide>\r\n <div class=\"splide__track\">\r\n <ul class=\"splide__list\">\r\n @for(mo of moDataList;track mo.Id){\r\n <li class=\"splide__slide\">\r\n <ng-container\r\n *ngTemplateOutlet=\"viewSetting.RowOlgo?.Selector ? dynamicTpl : defaultTpl\"\r\n ></ng-container>\r\n <ng-template #dynamicTpl>\r\n <bnrc-dynamic-item-component\r\n [component]=\"viewSetting.RowOlgo\"\r\n [mo]=\"mo\"\r\n [isLastChildGroup]=\"mo.$IsLastChildGroup\"\r\n [groupSummary]=\"groupSummary\"\r\n [showViewButton]=\"showViewButton\"\r\n [inlineEditWithoutSelection]=\"inlineEditWithoutSelection\"\r\n [UlvMainCtrlr]=\"UlvMainCtrlr\"\r\n [moDataList]=\"moDataList\"\r\n [hideOpenIcon]=\"hideOpenIcon\"\r\n [detailsColumns]=\"detailsColumns\"\r\n [showRowNumber]=\"contextView?.Grid_ShowRowNumber\"\r\n [columnComponents]=\"viewSetting?.ColumnComponents || null\"\r\n [cartableMo]=\"mo.RelatedMo\"\r\n [dirtyColumns]=\"mo.$DirtyColumns\"\r\n [cartableWorkflowData]=\"mo.SerializedWorkflowData\"\r\n [serializedRelatedMo]=\"mo.SerializedRelatedMo\"\r\n [detailsText]=\"viewSetting?.DetailsSetting?.ButtonText\"\r\n [attachmentViewType]=\"viewSetting?.AttachmentViewType\"\r\n [detailsTextFunction]=\"viewSetting?.DetailsSetting?.ButtonTextFunction\"\r\n [detailsComponent]=\"detailsComponent\"\r\n [coloringRow]=\"viewSetting?.ColoringRow\"\r\n [isChecked]=\"mo.$IsChecked\"\r\n [visibility]=\"mo.$Visibility\"\r\n [expanded]=\"mo.$Expanded\"\r\n [styleIndex]=\"mo.$StyleIndex\"\r\n [level]=\"mo.$Level\"\r\n [parentExpanded]=\"mo.$Parent?.$Expanded\"\r\n [columnsCount]=\"columnsCount - detailsColumns.length\"\r\n [typeDefId]=\"typeDefId\"\r\n [extraRelation]=\"extraRelation\"\r\n [formSetting]=\"formSetting\"\r\n [setting]=\"viewSetting\"\r\n [columns]=\"columns | filterColumnsByDetails: detailsColumns:rowIndicator\"\r\n [isNewInlineMo]=\"mo.$NewInlineMo\"\r\n [access]=\"access\"\r\n [inlineEditMode]=\"inlineEditMode\"\r\n [allowInlineEdit]=\"allowInlineEdit\"\r\n [rtl]=\"rtl\"\r\n [deviceName]=\"deviceName\"\r\n [deviceSize]=\"deviceSize\"\r\n [allColumns]=\"allColumns\"\r\n [contextMenuItems]=\"contextMenuItems\"\r\n [canView]=\"canView\"\r\n [conditionalFormats]=\"conditionalFormats\"\r\n [disableOverflowContextMenu]=\"disableOverflowContextMenu\"\r\n [navigationArrow]=\"navigationArrow\"\r\n [isCheckList]=\"isCheckList\"\r\n [rowIndicator]=\"rowIndicator\"\r\n (events)=\"onOlgoEvents($event)\"\r\n >\r\n </bnrc-dynamic-item-component>\r\n </ng-template>\r\n <ng-template #defaultTpl>\r\n <fd-card cardType=\"banner\" style=\"height: 300px\">\r\n <fd-card-media>\r\n <div fd-card-media-content-container [legendColor]=\"13\">\r\n <div fd-card-media-heading [level]=\"2\">Get Ready for the AI Learning Days!</div>\r\n <p fd-card-media-text>\r\n Lorem ipsum dolor sit amet consectetur adipisicing elit. At aperiam in incidunt\r\n distinctio, ad blanditiis autem voluptatibus dolore labore eos harum placeat\r\n sapiente dolor ex illo ipsa quod excepturi doloribus!\r\n </p>\r\n <button fd-button fdType=\"emphasized\">Register</button>\r\n </div>\r\n <div fd-card-media-image-container>\r\n <img\r\n fd-card-media-image\r\n src=\"https://picsum.photos/298/300?nature/1\"\r\n alt=\"randomly generated image from Picsum\"\r\n style=\"max-height: 300px\"\r\n />\r\n </div>\r\n </fd-card-media>\r\n </fd-card>\r\n </ng-template>\r\n </li>\r\n }\r\n </ul>\r\n </div>\r\n</div>\r\n", styles: [":host{display:block;height:100%}\n"] }]
141
+ }], propDecorators: { splideElRef: [{
142
+ type: ViewChild,
143
+ args: ['splide', { static: true, read: ElementRef }]
144
+ }], _width: [{
145
+ type: HostBinding,
146
+ args: ['style.width']
147
+ }] } });
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktcmVwb3J0LWNhcm91c2VsLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktcmVwb3J0LWNhcm91c2VsLXZpZXcvdWktcmVwb3J0LWNhcm91c2VsLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktcmVwb3J0LWNhcm91c2VsLXZpZXcvdWktcmVwb3J0LWNhcm91c2VsLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFFWCxTQUFTLEVBQ1QsU0FBUyxFQUNULE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBRUgsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0Qix1QkFBdUIsRUFFMUIsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDekMsT0FBTyxNQUFNLE1BQU0sa0JBQWtCLENBQUM7Ozs7OztBQVN0QyxNQUFNLE9BQU8sNkJBQ1QsU0FBUSx1QkFBcUQ7SUFSakU7O1FBY0ksU0FBSSxHQUFlLE1BQU0sQ0FBQztRQUUxQixnQkFBVyxHQUFHLGVBQWUsQ0FBQztRQUU5QixVQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztRQUMxQixXQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUM7UUFLeEIsU0FBSSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2QsaUJBQVksR0FBRyxNQUFNLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUM5QyxlQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9CLFFBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDekIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztLQThHL0M7SUF0SEcsSUFBSSxHQUFHO1FBQ0gsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLGFBQWEsQ0FBQztJQUMzQyxDQUFDO0lBT0QsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsa0JBQWtCLElBQUksTUFBTSxDQUFDO1FBQzFELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDN0MsQ0FBQztJQUNELGVBQWU7UUFDWCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDYixVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMzQixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDWixDQUFDO0lBQ0QsU0FBUztRQUNMLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUNELEtBQUs7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1FBQzdFLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2hCLEtBQUssTUFBTTtnQkFDUCxJQUFJLENBQUMsV0FBVyxHQUFHLGVBQWUsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO2dCQUNsQixNQUFNO1lBQ1YsS0FBSyxVQUFVO2dCQUNYLElBQUksQ0FBQyxXQUFXLEdBQUcsbUJBQW1CLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztnQkFDdEIsTUFBTTtZQUNWLEtBQUssT0FBTztnQkFDUixJQUFJLENBQUMsV0FBVyxHQUFHLGdCQUFnQixDQUFDO2dCQUNwQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ25CLE1BQU07WUFDVixLQUFLLFFBQVE7Z0JBQ1QsSUFBSSxDQUFDLFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztnQkFDckMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUNwQixNQUFNO1FBQ2QsQ0FBQztRQUNELElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBQ0QsVUFBVTtRQUNOLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNoQyxPQUFPLEVBQUUsQ0FBQztZQUNWLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLEtBQUs7WUFDaEIsSUFBSSxFQUFFLE1BQU07WUFDWixHQUFHLEVBQUUsQ0FBQztZQUNOLE1BQU0sRUFBRSxJQUFJO1lBQ1osVUFBVSxFQUFFLEtBQUs7WUFDakIsUUFBUSxFQUFFLElBQUk7WUFDZCxLQUFLLEVBQUUsSUFBSTtTQUNkLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFDRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ2hDLE9BQU8sRUFBRSxDQUFDO1lBQ1YsTUFBTSxFQUFFLElBQUk7WUFDWixJQUFJLEVBQUUsTUFBTTtZQUNaLFNBQVMsRUFBRSxLQUFLO1lBQ2hCLEdBQUcsRUFBRSxDQUFDO1lBQ04sT0FBTyxFQUFFLEVBQUU7WUFDWCxNQUFNLEVBQUUsSUFBSTtZQUNaLFVBQVUsRUFBRSxLQUFLO1lBQ2pCLFdBQVcsRUFBRTtnQkFDVCxHQUFHLEVBQUU7b0JBQ0QsT0FBTyxFQUFFLENBQUM7aUJBQ2I7Z0JBQ0QsR0FBRyxFQUFFO29CQUNELE9BQU8sRUFBRSxDQUFDO2lCQUNiO2FBQ0o7U0FDSixDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBQ0QsY0FBYztRQUNWLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNoQyxPQUFPLEVBQUUsQ0FBQztZQUNWLE1BQU0sRUFBRSxJQUFJO1lBQ1osU0FBUyxFQUFFLEtBQUs7WUFDaEIsSUFBSSxFQUFFLE1BQU07WUFDWixHQUFHLEVBQUUsRUFBRTtZQUNQLE9BQU8sRUFBRSxDQUFDO1lBQ1YsTUFBTSxFQUFFLElBQUk7WUFDWixVQUFVLEVBQUUsS0FBSztZQUNqQixXQUFXLEVBQUU7Z0JBQ1QsR0FBRyxFQUFFO29CQUNELE9BQU8sRUFBRSxDQUFDO2lCQUNiO2dCQUNELEdBQUcsRUFBRTtvQkFDRCxPQUFPLEVBQUUsQ0FBQztpQkFDYjthQUNKO1NBQ0osQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2YsQ0FBQztJQUNELFdBQVc7UUFDUCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDaEMsT0FBTyxFQUFFLENBQUM7WUFDVixNQUFNLEVBQUUsSUFBSTtZQUNaLElBQUksRUFBRSxNQUFNO1lBQ1osU0FBUyxFQUFFLEtBQUs7WUFDaEIsR0FBRyxFQUFFLEVBQUU7WUFDUCxPQUFPLEVBQUUsQ0FBQztZQUNWLE1BQU0sRUFBRSxJQUFJO1lBQ1osVUFBVSxFQUFFLEtBQUs7WUFDakIsV0FBVyxFQUFFO2dCQUNULEdBQUcsRUFBRTtvQkFDRCxPQUFPLEVBQUUsQ0FBQztpQkFDYjtnQkFDRCxHQUFHLEVBQUU7b0JBQ0QsT0FBTyxFQUFFLENBQUM7aUJBQ2I7YUFDSjtTQUNKLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7K0dBbElRLDZCQUE2QjttR0FBN0IsNkJBQTZCLDZNQUlLLFVBQVUsa0VDaEN6RCw4dktBMEZBOzs0RkQ5RGEsNkJBQTZCO2tCQVB6QyxTQUFTOytCQUNJLDZCQUE2QixtQkFHdEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxLQUFLOzhCQU13QyxXQUFXO3NCQUFuRSxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFDM0IsTUFBTTtzQkFBakMsV0FBVzt1QkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgT25Jbml0LFxyXG4gICAgUmVuZGVyZXIyLFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgaW5qZWN0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQge1xyXG4gICAgRWpyYXlPbGdvLFxyXG4gICAgTW9SZXBvcnRWYWx1ZVBpcGUsXHJcbiAgICBQaWN0dXJlRmllbGRTb3VyY2VQaXBlLFxyXG4gICAgUmVwb3J0Vmlld0Jhc2VDb21wb25lbnQsXHJcbiAgICBVaVJlcG9ydFZpZXdCYXNlU2V0dGluZ1xyXG59IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IFNwbGlkZSBmcm9tICdAc3BsaWRlanMvc3BsaWRlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdic3UtdWktcmVwb3J0LWNhcm91c2VsLXZpZXcnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VpLXJlcG9ydC1jYXJvdXNlbC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3VpLXJlcG9ydC1jYXJvdXNlbC12aWV3LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIHN0YW5kYWxvbmU6IGZhbHNlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaVJlcG9ydENhcm91c2VsVmlld0NvbXBvbmVudFxyXG4gICAgZXh0ZW5kcyBSZXBvcnRWaWV3QmFzZUNvbXBvbmVudDxVaVJlcG9ydENhcm91c2VsVmlld1NldHRpbmdzPlxyXG4gICAgaW1wbGVtZW50cyBPbkluaXRcclxue1xyXG4gICAgQFZpZXdDaGlsZCgnc3BsaWRlJywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IEVsZW1lbnRSZWYgfSkgc3BsaWRlRWxSZWY6IEVsZW1lbnRSZWY8YW55PjtcclxuICAgIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgnKSBfd2lkdGg7XHJcblxyXG4gICAgdHlwZTogU2xpZGVyVHlwZSA9ICdmdWxsJztcclxuXHJcbiAgICBjYXJvdXNlbENscyA9ICdjYXJvdXNlbC1mdWxsJztcclxuXHJcbiAgICB3aWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgaGVpZ2h0ID0gdGhpcy53aWR0aCAvIDI7XHJcbiAgICBnZXQgZG9tKCk6IEhUTUxFbGVtZW50IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5zcGxpZGVFbFJlZj8ubmF0aXZlRWxlbWVudDtcclxuICAgIH1cclxuICAgIF9zcGxpZGU6IHVuZGVmaW5lZCB8IGFueTtcclxuICAgIHJ2YWwgPSBpbmplY3QoTW9SZXBvcnRWYWx1ZVBpcGUpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9waWNGaWVsZFNyYyA9IGluamVjdChQaWN0dXJlRmllbGRTb3VyY2VQaXBlKTtcclxuICAgIHByb3RlY3RlZCByZWFkb25seSBfcmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XHJcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2VsID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xyXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IF9yb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25Jbml0KCk7XHJcbiAgICAgICAgdGhpcy50eXBlID0gdGhpcy52aWV3U2V0dGluZy5TbGlkZXJUeXBlJENhcHRpb24gfHwgJ2Z1bGwnO1xyXG4gICAgICAgIHRoaXMuX3dpZHRoID0gdGhpcy52aWV3U2V0dGluZy5XaWR0aFNpemU7XHJcbiAgICB9XHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5faW5pdCgpO1xyXG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9zcGxpZGUucmVmcmVzaCgpO1xyXG4gICAgICAgIH0sIDIwMCk7XHJcbiAgICB9XHJcbiAgICBvblJlZnJlc2goKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fc3BsaWRlLnJlZnJlc2goKTtcclxuICAgIH1cclxuICAgIF9pbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyMi5zZXRBdHRyaWJ1dGUodGhpcy5kb20sICdkYXRhLXNwbGlkZScsICd7XCJkaXJlY3Rpb25cIjpcInJ0bFwifScpO1xyXG4gICAgICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XHJcbiAgICAgICAgICAgIGNhc2UgJ2Z1bGwnOlxyXG4gICAgICAgICAgICAgICAgdGhpcy5jYXJvdXNlbENscyA9ICdjYXJvdXNlbC1mdWxsJztcclxuICAgICAgICAgICAgICAgIHRoaXMuX2Z1bGxNb3VudCgpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ211bHRpcGxlJzpcclxuICAgICAgICAgICAgICAgIHRoaXMuY2Fyb3VzZWxDbHMgPSAnY2Fyb3VzZWwtbXVsdGlwbGUnO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fbXVsdGlwbGVNb3VudCgpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3NtYWxsJzpcclxuICAgICAgICAgICAgICAgIHRoaXMuY2Fyb3VzZWxDbHMgPSAnY2Fyb3VzZWwtc21hbGwnO1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fc21hbGxNb3VudCgpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICAgIGNhc2UgJ3NpbmdsZSc6XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNhcm91c2VsQ2xzID0gJ2Nhcm91c2VsLXNpbmdsZSc7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zaW5nbGVNb3VudCgpO1xyXG4gICAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyh0aGlzLnNwbGlkZUVsUmVmPy5uYXRpdmVFbGVtZW50LCB0aGlzLmNhcm91c2VsQ2xzKTtcclxuICAgIH1cclxuICAgIF9mdWxsTW91bnQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fc3BsaWRlID0gbmV3IFNwbGlkZSh0aGlzLmRvbSwge1xyXG4gICAgICAgICAgICBwZXJQYWdlOiAxLFxyXG4gICAgICAgICAgICByZXdpbmQ6IHRydWUsXHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogJ3J0bCcsXHJcbiAgICAgICAgICAgIHR5cGU6ICdsb29wJyxcclxuICAgICAgICAgICAgZ2FwOiAwLFxyXG4gICAgICAgICAgICBhcnJvd3M6IHRydWUsXHJcbiAgICAgICAgICAgIHBhZ2luYXRpb246IGZhbHNlLFxyXG4gICAgICAgICAgICBhdXRvcGxheTogdHJ1ZSxcclxuICAgICAgICAgICAgc3BlZWQ6IDEwMDBcclxuICAgICAgICB9KS5tb3VudCgpO1xyXG4gICAgfVxyXG4gICAgX3NpbmdsZU1vdW50KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3NwbGlkZSA9IG5ldyBTcGxpZGUodGhpcy5kb20sIHtcclxuICAgICAgICAgICAgcGVyUGFnZTogMSxcclxuICAgICAgICAgICAgcmV3aW5kOiB0cnVlLFxyXG4gICAgICAgICAgICB0eXBlOiAnbG9vcCcsXHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogJ3J0bCcsXHJcbiAgICAgICAgICAgIGdhcDogMCxcclxuICAgICAgICAgICAgcGFkZGluZzogMjUsXHJcbiAgICAgICAgICAgIGFycm93czogdHJ1ZSxcclxuICAgICAgICAgICAgcGFnaW5hdGlvbjogZmFsc2UsXHJcbiAgICAgICAgICAgIGJyZWFrcG9pbnRzOiB7XHJcbiAgICAgICAgICAgICAgICA3Njg6IHtcclxuICAgICAgICAgICAgICAgICAgICBwZXJQYWdlOiAxXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgOTkxOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGVyUGFnZTogMlxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSkubW91bnQoKTtcclxuICAgIH1cclxuICAgIF9tdWx0aXBsZU1vdW50KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3NwbGlkZSA9IG5ldyBTcGxpZGUodGhpcy5kb20sIHtcclxuICAgICAgICAgICAgcGVyUGFnZTogNCxcclxuICAgICAgICAgICAgcmV3aW5kOiB0cnVlLFxyXG4gICAgICAgICAgICBkaXJlY3Rpb246ICdydGwnLFxyXG4gICAgICAgICAgICB0eXBlOiAnbG9vcCcsXHJcbiAgICAgICAgICAgIGdhcDogMTYsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgICAgIGFycm93czogdHJ1ZSxcclxuICAgICAgICAgICAgcGFnaW5hdGlvbjogZmFsc2UsXHJcbiAgICAgICAgICAgIGJyZWFrcG9pbnRzOiB7XHJcbiAgICAgICAgICAgICAgICA3Njg6IHtcclxuICAgICAgICAgICAgICAgICAgICBwZXJQYWdlOiAyXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgOTkxOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGVyUGFnZTogM1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSkubW91bnQoKTtcclxuICAgIH1cclxuICAgIF9zbWFsbE1vdW50KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3NwbGlkZSA9IG5ldyBTcGxpZGUodGhpcy5kb20sIHtcclxuICAgICAgICAgICAgcGVyUGFnZTogOSxcclxuICAgICAgICAgICAgcmV3aW5kOiB0cnVlLFxyXG4gICAgICAgICAgICB0eXBlOiAnbG9vcCcsXHJcbiAgICAgICAgICAgIGRpcmVjdGlvbjogJ3J0bCcsXHJcbiAgICAgICAgICAgIGdhcDogMTYsXHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDAsXHJcbiAgICAgICAgICAgIGFycm93czogdHJ1ZSxcclxuICAgICAgICAgICAgcGFnaW5hdGlvbjogZmFsc2UsXHJcbiAgICAgICAgICAgIGJyZWFrcG9pbnRzOiB7XHJcbiAgICAgICAgICAgICAgICA3Njg6IHtcclxuICAgICAgICAgICAgICAgICAgICBwZXJQYWdlOiA1XHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgOTkxOiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcGVyUGFnZTogN1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSkubW91bnQoKTtcclxuICAgIH1cclxufVxyXG5pbnRlcmZhY2UgVWlSZXBvcnRDYXJvdXNlbFZpZXdTZXR0aW5ncyBleHRlbmRzIFVpUmVwb3J0Vmlld0Jhc2VTZXR0aW5nIHtcclxuICAgIFJvd09sZ286IEVqcmF5T2xnbztcclxuICAgIFNsaWRlclR5cGUkQ2FwdGlvbjogU2xpZGVyVHlwZTtcclxuICAgIFdpZHRoU2l6ZTogbnVtYmVyO1xyXG4gICAgSGVpZ2h0U2l6ZTogbnVtYmVyO1xyXG4gICAgVGl0bGVDb2x1bW46IHN0cmluZztcclxuICAgIFN1YnRpdGxlQ29sdW1uOiBzdHJpbmc7XHJcbiAgICBQaWN0dXJlQ29sdW1uOiBzdHJpbmc7XHJcbn1cclxudHlwZSBTbGlkZXJUeXBlID0gJ2Z1bGwnIHwgJ211bHRpcGxlJyB8ICdzaW5nbGUnIHwgJ3NtYWxsJyB8IHVuZGVmaW5lZDtcclxuIiwiPGRpdiBjbGFzcz1cInNwbGlkZVwiICNzcGxpZGU+XHJcbiAgICA8ZGl2IGNsYXNzPVwic3BsaWRlX190cmFja1wiPlxyXG4gICAgICAgIDx1bCBjbGFzcz1cInNwbGlkZV9fbGlzdFwiPlxyXG4gICAgICAgICAgICBAZm9yKG1vIG9mIG1vRGF0YUxpc3Q7dHJhY2sgbW8uSWQpe1xyXG4gICAgICAgICAgICA8bGkgY2xhc3M9XCJzcGxpZGVfX3NsaWRlXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nVGVtcGxhdGVPdXRsZXQ9XCJ2aWV3U2V0dGluZy5Sb3dPbGdvPy5TZWxlY3RvciA/IGR5bmFtaWNUcGwgOiBkZWZhdWx0VHBsXCJcclxuICAgICAgICAgICAgICAgID48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZHluYW1pY1RwbD5cclxuICAgICAgICAgICAgICAgICAgICA8Ym5yYy1keW5hbWljLWl0ZW0tY29tcG9uZW50XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb21wb25lbnRdPVwidmlld1NldHRpbmcuUm93T2xnb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFttb109XCJtb1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpc0xhc3RDaGlsZEdyb3VwXT1cIm1vLiRJc0xhc3RDaGlsZEdyb3VwXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2dyb3VwU3VtbWFyeV09XCJncm91cFN1bW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2hvd1ZpZXdCdXR0b25dPVwic2hvd1ZpZXdCdXR0b25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaW5saW5lRWRpdFdpdGhvdXRTZWxlY3Rpb25dPVwiaW5saW5lRWRpdFdpdGhvdXRTZWxlY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbVWx2TWFpbkN0cmxyXT1cIlVsdk1haW5DdHJsclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFttb0RhdGFMaXN0XT1cIm1vRGF0YUxpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaGlkZU9wZW5JY29uXT1cImhpZGVPcGVuSWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkZXRhaWxzQ29sdW1uc109XCJkZXRhaWxzQ29sdW1uc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzaG93Um93TnVtYmVyXT1cImNvbnRleHRWaWV3Py5HcmlkX1Nob3dSb3dOdW1iZXJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sdW1uQ29tcG9uZW50c109XCJ2aWV3U2V0dGluZz8uQ29sdW1uQ29tcG9uZW50cyB8fCBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NhcnRhYmxlTW9dPVwibW8uUmVsYXRlZE1vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2RpcnR5Q29sdW1uc109XCJtby4kRGlydHlDb2x1bW5zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NhcnRhYmxlV29ya2Zsb3dEYXRhXT1cIm1vLlNlcmlhbGl6ZWRXb3JrZmxvd0RhdGFcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2VyaWFsaXplZFJlbGF0ZWRNb109XCJtby5TZXJpYWxpemVkUmVsYXRlZE1vXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2RldGFpbHNUZXh0XT1cInZpZXdTZXR0aW5nPy5EZXRhaWxzU2V0dGluZz8uQnV0dG9uVGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRhY2htZW50Vmlld1R5cGVdPVwidmlld1NldHRpbmc/LkF0dGFjaG1lbnRWaWV3VHlwZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtkZXRhaWxzVGV4dEZ1bmN0aW9uXT1cInZpZXdTZXR0aW5nPy5EZXRhaWxzU2V0dGluZz8uQnV0dG9uVGV4dEZ1bmN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2RldGFpbHNDb21wb25lbnRdPVwiZGV0YWlsc0NvbXBvbmVudFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcmluZ1Jvd109XCJ2aWV3U2V0dGluZz8uQ29sb3JpbmdSb3dcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNDaGVja2VkXT1cIm1vLiRJc0NoZWNrZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdmlzaWJpbGl0eV09XCJtby4kVmlzaWJpbGl0eVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtleHBhbmRlZF09XCJtby4kRXhwYW5kZWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc3R5bGVJbmRleF09XCJtby4kU3R5bGVJbmRleFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsZXZlbF09XCJtby4kTGV2ZWxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcGFyZW50RXhwYW5kZWRdPVwibW8uJFBhcmVudD8uJEV4cGFuZGVkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbnNDb3VudF09XCJjb2x1bW5zQ291bnQgLSBkZXRhaWxzQ29sdW1ucy5sZW5ndGhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbdHlwZURlZklkXT1cInR5cGVEZWZJZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtleHRyYVJlbGF0aW9uXT1cImV4dHJhUmVsYXRpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZm9ybVNldHRpbmddPVwiZm9ybVNldHRpbmdcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbc2V0dGluZ109XCJ2aWV3U2V0dGluZ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2x1bW5zXT1cImNvbHVtbnMgfCBmaWx0ZXJDb2x1bW5zQnlEZXRhaWxzOiBkZXRhaWxzQ29sdW1uczpyb3dJbmRpY2F0b3JcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNOZXdJbmxpbmVNb109XCJtby4kTmV3SW5saW5lTW9cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbYWNjZXNzXT1cImFjY2Vzc1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtpbmxpbmVFZGl0TW9kZV09XCJpbmxpbmVFZGl0TW9kZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthbGxvd0lubGluZUVkaXRdPVwiYWxsb3dJbmxpbmVFZGl0XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW3J0bF09XCJydGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbZGV2aWNlTmFtZV09XCJkZXZpY2VOYW1lXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2RldmljZVNpemVdPVwiZGV2aWNlU2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthbGxDb2x1bW5zXT1cImFsbENvbHVtbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29udGV4dE1lbnVJdGVtc109XCJjb250ZXh0TWVudUl0ZW1zXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2NhblZpZXddPVwiY2FuVmlld1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb25kaXRpb25hbEZvcm1hdHNdPVwiY29uZGl0aW9uYWxGb3JtYXRzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XT1cImRpc2FibGVPdmVyZmxvd0NvbnRleHRNZW51XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgW25hdmlnYXRpb25BcnJvd109XCJuYXZpZ2F0aW9uQXJyb3dcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbaXNDaGVja0xpc3RdPVwiaXNDaGVja0xpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbcm93SW5kaWNhdG9yXT1cInJvd0luZGljYXRvclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIChldmVudHMpPVwib25PbGdvRXZlbnRzKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICA8L2JucmMtZHluYW1pYy1pdGVtLWNvbXBvbmVudD5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRUcGw+XHJcbiAgICAgICAgICAgICAgICAgICAgPGZkLWNhcmQgY2FyZFR5cGU9XCJiYW5uZXJcIiBzdHlsZT1cImhlaWdodDogMzAwcHhcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGZkLWNhcmQtbWVkaWE+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWNhcmQtbWVkaWEtY29udGVudC1jb250YWluZXIgW2xlZ2VuZENvbG9yXT1cIjEzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBmZC1jYXJkLW1lZGlhLWhlYWRpbmcgW2xldmVsXT1cIjJcIj5HZXQgUmVhZHkgZm9yIHRoZSBBSSBMZWFybmluZyBEYXlzITwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxwIGZkLWNhcmQtbWVkaWEtdGV4dD5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQgY29uc2VjdGV0dXIgYWRpcGlzaWNpbmcgZWxpdC4gQXQgYXBlcmlhbSBpbiBpbmNpZHVudFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXN0aW5jdGlvLCBhZCBibGFuZGl0aWlzIGF1dGVtIHZvbHVwdGF0aWJ1cyBkb2xvcmUgbGFib3JlIGVvcyBoYXJ1bSBwbGFjZWF0XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNhcGllbnRlIGRvbG9yIGV4IGlsbG8gaXBzYSBxdW9kIGV4Y2VwdHVyaSBkb2xvcmlidXMhXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9wPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gZmQtYnV0dG9uIGZkVHlwZT1cImVtcGhhc2l6ZWRcIj5SZWdpc3RlcjwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGZkLWNhcmQtbWVkaWEtaW1hZ2UtY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWdcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtY2FyZC1tZWRpYS1pbWFnZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcmM9XCJodHRwczovL3BpY3N1bS5waG90b3MvMjk4LzMwMD9uYXR1cmUvMVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdD1cInJhbmRvbWx5IGdlbmVyYXRlZCBpbWFnZSBmcm9tIFBpY3N1bVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlPVwibWF4LWhlaWdodDogMzAwcHhcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9mZC1jYXJkLW1lZGlhPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZmQtY2FyZD5cclxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICA8L3VsPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=