@rivet-health/design-system 1.0.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2020/lib/content-toggle/text-toggle.component.mjs +24 -0
- package/esm2020/lib/icon/dom-cache.mjs +32 -0
- package/esm2020/lib/icon/icon.component.mjs +56 -0
- package/esm2020/lib/icon/icons.mjs +244 -0
- package/esm2020/lib/riv.module.mjs +35 -6
- package/esm2020/lib/visualization/donut.component.mjs +44 -0
- package/esm2020/lib/visualization/legend-item.component.mjs +22 -0
- package/esm2020/lib/visualization/metric.component.mjs +4 -4
- package/esm2020/lib/visualization/time-series.component.mjs +274 -0
- package/esm2020/public-api.mjs +7 -2
- package/fesm2015/rivet-health-design-system.mjs +709 -8
- package/fesm2015/rivet-health-design-system.mjs.map +1 -1
- package/fesm2020/rivet-health-design-system.mjs +709 -8
- package/fesm2020/rivet-health-design-system.mjs.map +1 -1
- package/lib/content-toggle/text-toggle.component.d.ts +8 -0
- package/lib/icon/dom-cache.d.ts +13 -0
- package/lib/icon/icon.component.d.ts +15 -0
- package/lib/icon/icons.d.ts +126 -0
- package/lib/riv.module.d.ts +8 -3
- package/lib/visualization/donut.component.d.ts +16 -0
- package/lib/visualization/legend-item.component.d.ts +8 -0
- package/lib/visualization/time-series.component.d.ts +80 -0
- package/package.json +4 -2
- package/public-api.d.ts +6 -1
- package/styles/global.css +14 -0
- package/styles/tokens/color.css +10 -0
- package/styles/tokens/size.css +10 -0
- package/styles/tokens/typography.css +30 -8
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/common";
|
|
4
|
+
import * as i2 from "../icon/icon.component";
|
|
5
|
+
export class TextToggleComponent {
|
|
6
|
+
constructor() {
|
|
7
|
+
this.showLabel = '';
|
|
8
|
+
this.hideLabel = '';
|
|
9
|
+
this.open = false;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
TextToggleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextToggleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
13
|
+
TextToggleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: TextToggleComponent, selector: "riv-text-toggle", inputs: { showLabel: "showLabel", hideLabel: "hideLabel", open: "open" }, ngImport: i0, template: "<button class=\"toggle\" type=\"button\" (click)=\"open = !open\">\n <riv-icon *ngIf=\"open\" [name]=\"'ChevronDown'\" [size]=\"24\"></riv-icon>\n <riv-icon *ngIf=\"!open\" [name]=\"'ChevronRight'\" [size]=\"24\"></riv-icon>\n <div>{{ open ? hideLabel : showLabel }}</div>\n</button>\n<div *ngIf=\"open\">\n <ng-content></ng-content>\n</div>\n", styles: [".toggle{padding:var(--size-xxsmall);display:flex;align-items:center}.toggle:hover{cursor:pointer}button{color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.IconComponent, selector: "riv-icon", inputs: ["name", "size", "strokeWidth"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
14
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: TextToggleComponent, decorators: [{
|
|
15
|
+
type: Component,
|
|
16
|
+
args: [{ selector: 'riv-text-toggle', changeDetection: ChangeDetectionStrategy.OnPush, template: "<button class=\"toggle\" type=\"button\" (click)=\"open = !open\">\n <riv-icon *ngIf=\"open\" [name]=\"'ChevronDown'\" [size]=\"24\"></riv-icon>\n <riv-icon *ngIf=\"!open\" [name]=\"'ChevronRight'\" [size]=\"24\"></riv-icon>\n <div>{{ open ? hideLabel : showLabel }}</div>\n</button>\n<div *ngIf=\"open\">\n <ng-content></ng-content>\n</div>\n", styles: [".toggle{padding:var(--size-xxsmall);display:flex;align-items:center}.toggle:hover{cursor:pointer}button{color:inherit}\n"] }]
|
|
17
|
+
}], propDecorators: { showLabel: [{
|
|
18
|
+
type: Input
|
|
19
|
+
}], hideLabel: [{
|
|
20
|
+
type: Input
|
|
21
|
+
}], open: [{
|
|
22
|
+
type: Input
|
|
23
|
+
}] } });
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC10b2dnbGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvY29udGVudC10b2dnbGUvdGV4dC10b2dnbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvY29udGVudC10b2dnbGUvdGV4dC10b2dnbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRMUUsTUFBTSxPQUFPLG1CQUFtQjtJQU5oQztRQVFFLGNBQVMsR0FBVyxFQUFFLENBQUM7UUFHdkIsY0FBUyxHQUFXLEVBQUUsQ0FBQztRQUd2QixTQUFJLEdBQVksS0FBSyxDQUFDO0tBQ3ZCOztnSEFUWSxtQkFBbUI7b0dBQW5CLG1CQUFtQixpSUNSaEMsNlZBUUE7MkZEQWEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNFLGlCQUFpQixtQkFHVix1QkFBdUIsQ0FBQyxNQUFNOzhCQUkvQyxTQUFTO3NCQURSLEtBQUs7Z0JBSU4sU0FBUztzQkFEUixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Jpdi10ZXh0LXRvZ2dsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZXh0LXRvZ2dsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RleHQtdG9nZ2xlLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFRleHRUb2dnbGVDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBzaG93TGFiZWw6IHN0cmluZyA9ICcnO1xuXG4gIEBJbnB1dCgpXG4gIGhpZGVMYWJlbDogc3RyaW5nID0gJyc7XG5cbiAgQElucHV0KClcbiAgb3BlbjogYm9vbGVhbiA9IGZhbHNlO1xufVxuIiwiPGJ1dHRvbiBjbGFzcz1cInRvZ2dsZVwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib3BlbiA9ICFvcGVuXCI+XG4gIDxyaXYtaWNvbiAqbmdJZj1cIm9wZW5cIiBbbmFtZV09XCInQ2hldnJvbkRvd24nXCIgW3NpemVdPVwiMjRcIj48L3Jpdi1pY29uPlxuICA8cml2LWljb24gKm5nSWY9XCIhb3BlblwiIFtuYW1lXT1cIidDaGV2cm9uUmlnaHQnXCIgW3NpemVdPVwiMjRcIj48L3Jpdi1pY29uPlxuICA8ZGl2Pnt7IG9wZW4gPyBoaWRlTGFiZWwgOiBzaG93TGFiZWwgfX08L2Rpdj5cbjwvYnV0dG9uPlxuPGRpdiAqbmdJZj1cIm9wZW5cIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* DOM cache that clones existing elements if available.
|
|
3
|
+
*/
|
|
4
|
+
export class DomCache {
|
|
5
|
+
constructor(create) {
|
|
6
|
+
this.create = create;
|
|
7
|
+
this.nodes = new Map();
|
|
8
|
+
}
|
|
9
|
+
get(key) {
|
|
10
|
+
let set = this.nodes.get(key);
|
|
11
|
+
let result;
|
|
12
|
+
if (set) {
|
|
13
|
+
result = set.values().next().value.cloneNode(true);
|
|
14
|
+
}
|
|
15
|
+
else {
|
|
16
|
+
result = this.create(key);
|
|
17
|
+
set = new Set();
|
|
18
|
+
this.nodes.set(key, set);
|
|
19
|
+
}
|
|
20
|
+
set.add(result);
|
|
21
|
+
return {
|
|
22
|
+
value: result,
|
|
23
|
+
cleanup: () => {
|
|
24
|
+
set.delete(result);
|
|
25
|
+
if (!set.size) {
|
|
26
|
+
this.nodes.delete(key);
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9tLWNhY2hlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaWNvbi9kb20tY2FjaGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0E7O0dBRUc7QUFDSCxNQUFNLE9BQU8sUUFBUTtJQUduQixZQUE2QixNQUFxQjtRQUFyQixXQUFNLEdBQU4sTUFBTSxDQUFlO1FBRmpDLFVBQUssR0FBRyxJQUFJLEdBQUcsRUFBYSxDQUFDO0lBRU8sQ0FBQztJQUV0RCxHQUFHLENBQUMsR0FBTTtRQUNSLElBQUksR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLElBQUksTUFBUyxDQUFDO1FBQ2QsSUFBSSxHQUFHLEVBQUU7WUFDUCxNQUFNLEdBQU0sR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkQ7YUFBTTtZQUNMLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzFCLEdBQUcsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUMxQjtRQUVELEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFaEIsT0FBTztZQUNMLEtBQUssRUFBRSxNQUFNO1lBQ2IsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDWixHQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUNwQixJQUFJLENBQUMsR0FBSSxDQUFDLElBQUksRUFBRTtvQkFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztpQkFDeEI7WUFDSCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ2FjaGVSZXN1bHQ8Vj4ge1xuICB2YWx1ZTogVjtcbiAgY2xlYW51cDogKCkgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBET00gY2FjaGUgdGhhdCBjbG9uZXMgZXhpc3RpbmcgZWxlbWVudHMgaWYgYXZhaWxhYmxlLlxuICovXG5leHBvcnQgY2xhc3MgRG9tQ2FjaGU8VCwgViBleHRlbmRzIE5vZGUgPSBOb2RlPiB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbm9kZXMgPSBuZXcgTWFwPFQsIFNldDxWPj4oKTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGNyZWF0ZTogKGtleTogVCkgPT4gVikge31cblxuICBnZXQoa2V5OiBUKTogQ2FjaGVSZXN1bHQ8Vj4ge1xuICAgIGxldCBzZXQgPSB0aGlzLm5vZGVzLmdldChrZXkpO1xuICAgIGxldCByZXN1bHQ6IFY7XG4gICAgaWYgKHNldCkge1xuICAgICAgcmVzdWx0ID0gPFY+c2V0LnZhbHVlcygpLm5leHQoKS52YWx1ZS5jbG9uZU5vZGUodHJ1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdCA9IHRoaXMuY3JlYXRlKGtleSk7XG4gICAgICBzZXQgPSBuZXcgU2V0KCk7XG4gICAgICB0aGlzLm5vZGVzLnNldChrZXksIHNldCk7XG4gICAgfVxuXG4gICAgc2V0LmFkZChyZXN1bHQpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHZhbHVlOiByZXN1bHQsXG4gICAgICBjbGVhbnVwOiAoKSA9PiB7XG4gICAgICAgIHNldCEuZGVsZXRlKHJlc3VsdCk7XG4gICAgICAgIGlmICghc2V0IS5zaXplKSB7XG4gICAgICAgICAgdGhpcy5ub2Rlcy5kZWxldGUoa2V5KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { ChangeDetectionStrategy, Component, HostBinding, Input, } from '@angular/core';
|
|
2
|
+
import { DomCache } from './dom-cache';
|
|
3
|
+
import { iconsMap } from './icons';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
const cache = new DomCache(value => {
|
|
6
|
+
const svgText = iconsMap[value];
|
|
7
|
+
const parser = new DOMParser();
|
|
8
|
+
const svg = parser.parseFromString(svgText, 'text/xml');
|
|
9
|
+
return svg.documentElement;
|
|
10
|
+
});
|
|
11
|
+
export class IconComponent {
|
|
12
|
+
constructor(element) {
|
|
13
|
+
this.element = element;
|
|
14
|
+
this.size = 24;
|
|
15
|
+
}
|
|
16
|
+
set name(value) {
|
|
17
|
+
if (this.cached) {
|
|
18
|
+
this.cached.value.remove();
|
|
19
|
+
this.cached.cleanup();
|
|
20
|
+
this.cached = undefined;
|
|
21
|
+
}
|
|
22
|
+
if (value == null) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
this.cached = cache.get(value);
|
|
26
|
+
this.element.nativeElement.append(this.cached.value);
|
|
27
|
+
}
|
|
28
|
+
get calculateStrokeWidth() {
|
|
29
|
+
return this.strokeWidth ? this.strokeWidth : 24 / this.size;
|
|
30
|
+
}
|
|
31
|
+
ngOnDestroy() {
|
|
32
|
+
this.name = null;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
IconComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IconComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
IconComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: IconComponent, selector: "riv-icon", inputs: { name: "name", size: "size", strokeWidth: "strokeWidth" }, host: { properties: { "style.width.px": "this.size", "style.height.px": "this.size", "style.stroke-width": "this.calculateStrokeWidth" } }, ngImport: i0, template: "", styles: [":host{display:inline-block;font-size:0;line-height:0;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: IconComponent, decorators: [{
|
|
38
|
+
type: Component,
|
|
39
|
+
args: [{ selector: 'riv-icon', changeDetection: ChangeDetectionStrategy.OnPush, template: "", styles: [":host{display:inline-block;font-size:0;line-height:0;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}\n"] }]
|
|
40
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { name: [{
|
|
41
|
+
type: Input
|
|
42
|
+
}], size: [{
|
|
43
|
+
type: Input
|
|
44
|
+
}, {
|
|
45
|
+
type: HostBinding,
|
|
46
|
+
args: ['style.width.px']
|
|
47
|
+
}, {
|
|
48
|
+
type: HostBinding,
|
|
49
|
+
args: ['style.height.px']
|
|
50
|
+
}], strokeWidth: [{
|
|
51
|
+
type: Input
|
|
52
|
+
}], calculateStrokeWidth: [{
|
|
53
|
+
type: HostBinding,
|
|
54
|
+
args: ['style.stroke-width']
|
|
55
|
+
}] } });
|
|
56
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yaXYvc3JjL2xpYi9pY29uL2ljb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcml2L3NyYy9saWIvaWNvbi9pY29uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUVULFdBQVcsRUFDWCxLQUFLLEdBRU4sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFlLFFBQVEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNwRCxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFFeEQsTUFBTSxLQUFLLEdBQUcsSUFBSSxRQUFRLENBQXVCLEtBQUssQ0FBQyxFQUFFO0lBQ3ZELE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxNQUFNLE1BQU0sR0FBRyxJQUFJLFNBQVMsRUFBRSxDQUFDO0lBQy9CLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxlQUFlLENBQUMsT0FBTyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3hELE9BQU8sR0FBRyxDQUFDLGVBQWUsQ0FBQztBQUM3QixDQUFDLENBQUMsQ0FBQztBQVFILE1BQU0sT0FBTyxhQUFhO0lBR3hCLFlBQTZCLE9BQWdDO1FBQWhDLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBcUI3RCxTQUFJLEdBQWEsRUFBRSxDQUFDO0lBckI0QyxDQUFDO0lBRWpFLElBQ0ksSUFBSSxDQUFDLEtBQXVCO1FBQzlCLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNmLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUM7U0FDekI7UUFFRCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFVRCxJQUNJLG9CQUFvQjtRQUN0QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQzlELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7MEdBcENVLGFBQWE7OEZBQWIsYUFBYSxnUUN4QjFCLEVBQUE7MkZEd0JhLGFBQWE7a0JBTnpCLFNBQVM7K0JBQ0UsVUFBVSxtQkFHSCx1QkFBdUIsQ0FBQyxNQUFNO2lHQVEzQyxJQUFJO3NCQURQLEtBQUs7Z0JBbUJOLElBQUk7c0JBSEgsS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxnQkFBZ0I7O3NCQUM1QixXQUFXO3VCQUFDLGlCQUFpQjtnQkFJOUIsV0FBVztzQkFEVixLQUFLO2dCQUlGLG9CQUFvQjtzQkFEdkIsV0FBVzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYWNoZVJlc3VsdCwgRG9tQ2FjaGUgfSBmcm9tICcuL2RvbS1jYWNoZSc7XG5pbXBvcnQgeyBJY29uTmFtZXMsIEljb25TaXplLCBpY29uc01hcCB9IGZyb20gJy4vaWNvbnMnO1xuXG5jb25zdCBjYWNoZSA9IG5ldyBEb21DYWNoZTxJY29uTmFtZXMsIENoaWxkTm9kZT4odmFsdWUgPT4ge1xuICBjb25zdCBzdmdUZXh0ID0gaWNvbnNNYXBbdmFsdWVdO1xuICBjb25zdCBwYXJzZXIgPSBuZXcgRE9NUGFyc2VyKCk7XG4gIGNvbnN0IHN2ZyA9IHBhcnNlci5wYXJzZUZyb21TdHJpbmcoc3ZnVGV4dCwgJ3RleHQveG1sJyk7XG4gIHJldHVybiBzdmcuZG9jdW1lbnRFbGVtZW50O1xufSk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3Jpdi1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIEljb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGNhY2hlZDogQ2FjaGVSZXN1bHQ8Q2hpbGROb2RlPiB8IHVuZGVmaW5lZDtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7fVxuXG4gIEBJbnB1dCgpXG4gIHNldCBuYW1lKHZhbHVlOiBJY29uTmFtZXMgfCBudWxsKSB7XG4gICAgaWYgKHRoaXMuY2FjaGVkKSB7XG4gICAgICB0aGlzLmNhY2hlZC52YWx1ZS5yZW1vdmUoKTtcbiAgICAgIHRoaXMuY2FjaGVkLmNsZWFudXAoKTtcbiAgICAgIHRoaXMuY2FjaGVkID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5jYWNoZWQgPSBjYWNoZS5nZXQodmFsdWUpO1xuICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LmFwcGVuZCh0aGlzLmNhY2hlZC52YWx1ZSk7XG4gIH1cblxuICBASW5wdXQoKVxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLndpZHRoLnB4JylcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5oZWlnaHQucHgnKVxuICBzaXplOiBJY29uU2l6ZSA9IDI0O1xuXG4gIEBJbnB1dCgpXG4gIHN0cm9rZVdpZHRoOiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5zdHJva2Utd2lkdGgnKVxuICBnZXQgY2FsY3VsYXRlU3Ryb2tlV2lkdGgoKSB7XG4gICAgcmV0dXJuIHRoaXMuc3Ryb2tlV2lkdGggPyB0aGlzLnN0cm9rZVdpZHRoIDogMjQgLyB0aGlzLnNpemU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLm5hbWUgPSBudWxsO1xuICB9XG59XG4iLCIiXX0=
|
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
const Activity = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-activity">\n <polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline>\n</svg>`;
|
|
2
|
+
const AlertCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-alert-circle">\n <circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line>\n</svg>`;
|
|
3
|
+
const AlertOctagon = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-alert-octagon">\n <polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line>\n</svg>`;
|
|
4
|
+
const AlertTriangle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-alert-triangle">\n <path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line>\n</svg>`;
|
|
5
|
+
const AlignLeft = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-align-left">\n <line x1="17" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="17" y1="18" x2="3" y2="18"></line>\n</svg>`;
|
|
6
|
+
const Anchor = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-anchor">\n <circle cx="12" cy="5" r="3"></circle><line x1="12" y1="22" x2="12" y2="8"></line><path d="M5 12H2a10 10 0 0 0 20 0h-3"></path>\n</svg>`;
|
|
7
|
+
const Archive = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-archive">\n <polyline points="21 8 21 21 3 21 3 8"></polyline><rect x="1" y="3" width="22" height="5"></rect><line x1="10" y1="12" x2="14" y2="12"></line>\n</svg>`;
|
|
8
|
+
const ArrowDown = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-down">\n <line x1="12" y1="5" x2="12" y2="19"></line><polyline points="19 12 12 19 5 12"></polyline>\n</svg>`;
|
|
9
|
+
const ArrowDownLeft = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-down-left">\n <line x1="17" y1="7" x2="7" y2="17"></line><polyline points="17 17 7 17 7 7"></polyline>\n</svg>`;
|
|
10
|
+
const ArrowLeft = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-left">\n <line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline>\n</svg>`;
|
|
11
|
+
const ArrowLeftCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-left-circle">\n <circle cx="12" cy="12" r="10"></circle><polyline points="12 8 8 12 12 16"></polyline><line x1="16" y1="12" x2="8" y2="12"></line>\n</svg>`;
|
|
12
|
+
const ArrowRight = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-right">\n <line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline>\n</svg>`;
|
|
13
|
+
const ArrowUp = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-up">\n <line x1="12" y1="19" x2="12" y2="5"></line><polyline points="5 12 12 5 19 12"></polyline>\n</svg>`;
|
|
14
|
+
const ArrowUpRight = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-arrow-up-right">\n <line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline>\n</svg>`;
|
|
15
|
+
const AtSign = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-at-sign">\n <circle cx="12" cy="12" r="4"></circle><path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94"></path>\n</svg>`;
|
|
16
|
+
const BarChart2 = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-bar-chart-2">\n <line x1="18" y1="20" x2="18" y2="10"></line><line x1="12" y1="20" x2="12" y2="4"></line><line x1="6" y1="20" x2="6" y2="14"></line>\n</svg>`;
|
|
17
|
+
const Bell = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-bell">\n <path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"></path><path d="M13.73 21a2 2 0 0 1-3.46 0"></path>\n</svg>`;
|
|
18
|
+
const Book = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-book">\n <path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"></path><path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"></path>\n</svg>`;
|
|
19
|
+
const BookOpen = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-book-open">\n <path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path>\n</svg>`;
|
|
20
|
+
const Briefcase = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-briefcase">\n <rect x="2" y="7" width="20" height="14" rx="2" ry="2"></rect><path d="M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"></path>\n</svg>`;
|
|
21
|
+
const Calendar = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-calendar">\n <rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line>\n</svg>`;
|
|
22
|
+
const Check = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-check">\n <polyline points="20 6 9 17 4 12"></polyline>\n</svg>`;
|
|
23
|
+
const CheckCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-check-circle">\n <path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline>\n</svg>`;
|
|
24
|
+
const CheckSquare = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-check-square">\n <polyline points="9 11 12 14 22 4"></polyline><path d="M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"></path>\n</svg>`;
|
|
25
|
+
const ChevronDown = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" class=\"feather feather-chevron-down\">\n <polyline points=\"6 9 12 15 18 9\"></polyline>\n</svg>`;
|
|
26
|
+
const ChevronLeft = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" class=\"feather feather-chevron-left\">\n <polyline points=\"15 18 9 12 15 6\"></polyline>\n</svg>`;
|
|
27
|
+
const ChevronRight = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" class=\"feather feather-chevron-right\">\n <polyline points=\"9 18 15 12 9 6\"></polyline>\n</svg>`;
|
|
28
|
+
const ChevronsRight = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" class=\"feather feather-chevrons-right\">\n <polyline points=\"13 17 18 12 13 7\"></polyline><polyline points=\"6 17 11 12 6 7\"></polyline>\n</svg>`;
|
|
29
|
+
const ChevronsLeft = `<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" class=\"feather feather-chevrons-left\">\n <polyline points=\"11 17 6 12 11 7\"></polyline><polyline points=\"18 17 13 12 18 7\"></polyline>\n</svg>`;
|
|
30
|
+
const ChevronUp = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-chevron-up">\n <polyline points="18 15 12 9 6 15"></polyline>\n</svg>`;
|
|
31
|
+
const Clipboard = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-clipboard">\n <path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect>\n</svg>`;
|
|
32
|
+
const Clock = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-clock">\n <circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline>\n</svg>`;
|
|
33
|
+
const Coffee = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-coffee">\n <path d="M18 8h1a4 4 0 0 1 0 8h-1"></path><path d="M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4V8z"></path><line x1="6" y1="1" x2="6" y2="4"></line><line x1="10" y1="1" x2="10" y2="4"></line><line x1="14" y1="1" x2="14" y2="4"></line>\n</svg>`;
|
|
34
|
+
const Copy = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-copy">\n <rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path>\n</svg>`;
|
|
35
|
+
const CornerLeftUp = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-corner-left-up">\n <polyline points="14 9 9 4 4 9"></polyline><path d="M20 20h-7a4 4 0 0 1-4-4V4"></path>\n</svg>`;
|
|
36
|
+
const CreditCard = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-credit-card">\n <rect x="1" y="4" width="22" height="16" rx="2" ry="2"></rect><line x1="1" y1="10" x2="23" y2="10"></line>\n</svg>`;
|
|
37
|
+
const DollarSign = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-dollar-sign">\n <line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path>\n</svg>`;
|
|
38
|
+
const Download = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-download">\n <path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" y1="15" x2="12" y2="3"></line>\n</svg>`;
|
|
39
|
+
const DownloadCloud = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-download-cloud">\n <polyline points="8 17 12 21 16 17"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29"></path>\n</svg>`;
|
|
40
|
+
const Edit = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-edit">\n <path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"></path><path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"></path>\n</svg>`;
|
|
41
|
+
const Edit2 = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-edit-2">\n <path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path>\n</svg>`;
|
|
42
|
+
const ExternalLink = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-external-link">\n <path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line>\n</svg>`;
|
|
43
|
+
const Eye = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-eye">\n <path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle>\n</svg>`;
|
|
44
|
+
const EyeOff = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-eye-off">\n <path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"></path><line x1="1" y1="1" x2="23" y2="23"></line>\n</svg>`;
|
|
45
|
+
const File = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-file">\n <path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>\n</svg>`;
|
|
46
|
+
const FilePlus = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-file-plus">\n <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="12" y1="18" x2="12" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line>\n</svg>`;
|
|
47
|
+
const FileText = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-file-text">\n <path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline>\n</svg>`;
|
|
48
|
+
const Filter = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-filter">\n <polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon>\n</svg>`;
|
|
49
|
+
const Flag = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-flag">\n <path d="M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z"></path><line x1="4" y1="22" x2="4" y2="15"></line>\n</svg>`;
|
|
50
|
+
const Folder = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-folder">\n <path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path>\n</svg>`;
|
|
51
|
+
const Hash = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-hash">\n <line x1="4" y1="9" x2="20" y2="9"></line><line x1="4" y1="15" x2="20" y2="15"></line><line x1="10" y1="3" x2="8" y2="21"></line><line x1="16" y1="3" x2="14" y2="21"></line>\n</svg>`;
|
|
52
|
+
const HelpCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-help-circle">\n <circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line>\n</svg>`;
|
|
53
|
+
const Home = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-home">\n <path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline>\n</svg>`;
|
|
54
|
+
const Inbox = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-inbox">\n <polyline points="22 12 16 12 14 15 10 15 8 12 2 12"></polyline><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path>\n</svg>`;
|
|
55
|
+
const Info = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-info">\n <circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line>\n</svg>`;
|
|
56
|
+
const Key = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-key">\n <path d="M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4"></path>\n</svg>`;
|
|
57
|
+
const Layers = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-layers">\n <polygon points="12 2 2 7 12 12 22 7 12 2"></polygon><polyline points="2 17 12 22 22 17"></polyline><polyline points="2 12 12 17 22 12"></polyline>\n</svg>`;
|
|
58
|
+
const Link2 = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-link-2">\n <path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line>\n</svg>`;
|
|
59
|
+
const List = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-list">\n <line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line>\n</svg>`;
|
|
60
|
+
const Lock = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-lock">\n <rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 10 0v4"></path>\n</svg>`;
|
|
61
|
+
const Mail = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-mail">\n <path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline>\n</svg>`;
|
|
62
|
+
const MapPin = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-map-pin">\n <path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"></path><circle cx="12" cy="10" r="3"></circle>\n</svg>`;
|
|
63
|
+
const Maximize = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-maximize">\n <path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"></path>\n</svg>`;
|
|
64
|
+
const Maximize2 = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-maximize-2">\n <polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" y1="3" x2="14" y2="10"></line><line x1="3" y1="21" x2="10" y2="14"></line>\n</svg>`;
|
|
65
|
+
const Menu = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-menu">\n <line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line>\n</svg>`;
|
|
66
|
+
const MessageCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-message-circle">\n <path d="M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z"></path>\n</svg>`;
|
|
67
|
+
const Minimize2 = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-minimize-2">\n <polyline points="4 14 10 14 10 20"></polyline><polyline points="20 10 14 10 14 4"></polyline><line x1="14" y1="10" x2="21" y2="3"></line><line x1="3" y1="21" x2="10" y2="14"></line>\n</svg>`;
|
|
68
|
+
const Minus = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-minus">\n <line x1="5" y1="12" x2="19" y2="12"></line>\n</svg>`;
|
|
69
|
+
const MinusCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-minus-circle">\n <circle cx="12" cy="12" r="10"></circle><line x1="8" y1="12" x2="16" y2="12"></line>\n</svg>`;
|
|
70
|
+
const MoreHorizontal = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-more-horizontal">\n <circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle>\n</svg>`;
|
|
71
|
+
const MoreVertical = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-more-vertical">\n <circle cx="12" cy="12" r="1"></circle><circle cx="12" cy="5" r="1"></circle><circle cx="12" cy="19" r="1"></circle>\n</svg>`;
|
|
72
|
+
const Paperclip = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-paperclip">\n <path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path>\n</svg>`;
|
|
73
|
+
const Percent = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-percent">\n <line x1="19" y1="5" x2="5" y2="19"></line><circle cx="6.5" cy="6.5" r="2.5"></circle><circle cx="17.5" cy="17.5" r="2.5"></circle>\n</svg>`;
|
|
74
|
+
const Phone = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-phone">\n <path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path>\n</svg>`;
|
|
75
|
+
const PieChart = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-pie-chart">\n <path d="M21.21 15.89A10 10 0 1 1 8 2.83"></path><path d="M22 12A10 10 0 0 0 12 2v10z"></path>\n</svg>`;
|
|
76
|
+
const PlayCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-play-circle">\n <circle cx="12" cy="12" r="10"></circle><polygon points="10 8 16 12 10 16 10 8"></polygon>\n</svg>`;
|
|
77
|
+
const Plus = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-plus">\n <line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line>\n</svg>`;
|
|
78
|
+
const PlusCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-plus-circle">\n <circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line>\n</svg>`;
|
|
79
|
+
const Power = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-power">\n <path d="M18.36 6.64a9 9 0 1 1-12.73 0"></path><line x1="12" y1="2" x2="12" y2="12"></line>\n</svg>`;
|
|
80
|
+
const Printer = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-printer">\n <polyline points="6 9 6 2 18 2 18 9"></polyline><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"></path><rect x="6" y="14" width="12" height="8"></rect>\n</svg>`;
|
|
81
|
+
const RefreshCw = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-refresh-cw">\n <polyline points="23 4 23 10 17 10"></polyline><polyline points="1 20 1 14 7 14"></polyline><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path>\n</svg>`;
|
|
82
|
+
const RotateCw = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-rotate-cw">\n <polyline points="23 4 23 10 17 10"></polyline><path d="M20.49 15a9 9 0 1 1-2.12-9.36L23 10"></path>\n</svg>`;
|
|
83
|
+
const Save = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-save">\n <path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"></path><polyline points="17 21 17 13 7 13 7 21"></polyline><polyline points="7 3 7 8 15 8"></polyline>\n</svg>`;
|
|
84
|
+
const Search = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-search">\n <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>\n</svg>`;
|
|
85
|
+
const Send = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-send">\n <line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon>\n</svg>`;
|
|
86
|
+
const Settings = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-settings">\n <circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path>\n</svg>`;
|
|
87
|
+
const Share = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-share">\n <path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"></path><polyline points="16 6 12 2 8 6"></polyline><line x1="12" y1="2" x2="12" y2="15"></line>\n</svg>`;
|
|
88
|
+
const Shield = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-shield">\n <path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path>\n</svg>`;
|
|
89
|
+
const Sidebar = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-sidebar">\n <rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="3" x2="9" y2="21"></line>\n</svg>`;
|
|
90
|
+
const Slash = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-slash">\n <circle cx="12" cy="12" r="10"></circle><line x1="4.93" y1="4.93" x2="19.07" y2="19.07"></line>\n</svg>`;
|
|
91
|
+
const Smile = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-smile">\n <circle cx="12" cy="12" r="10"></circle><path d="M8 14s1.5 2 4 2 4-2 4-2"></path><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line>\n</svg>`;
|
|
92
|
+
const Star = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-star">\n <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>\n</svg>`;
|
|
93
|
+
const Sun = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-sun">\n <circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>\n</svg>`;
|
|
94
|
+
const Tag = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-tag">\n <path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path><line x1="7" y1="7" x2="7.01" y2="7"></line>\n</svg>`;
|
|
95
|
+
const Target = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-target">\n <circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="6"></circle><circle cx="12" cy="12" r="2"></circle>\n</svg>`;
|
|
96
|
+
const Trash2 = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-trash-2">\n <polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path><line x1="10" y1="11" x2="10" y2="17"></line><line x1="14" y1="11" x2="14" y2="17"></line>\n</svg>`;
|
|
97
|
+
const TrendingDown = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-trending-down">\n <polyline points="23 18 13.5 8.5 8.5 13.5 1 6"></polyline><polyline points="17 18 23 18 23 12"></polyline>\n</svg>`;
|
|
98
|
+
const TrendingUp = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-trending-up">\n <polyline points="23 6 13.5 15.5 8.5 10.5 1 18"></polyline><polyline points="17 6 23 6 23 12"></polyline>\n</svg>`;
|
|
99
|
+
const Unlock = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-unlock">\n <rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 9.9-1"></path>\n</svg>`;
|
|
100
|
+
const UploadCloud = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-upload-cloud">\n <polyline points="16 16 12 12 8 16"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3"></path><polyline points="16 16 12 12 8 16"></polyline>\n</svg>`;
|
|
101
|
+
const User = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-user">\n <path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle>\n</svg>`;
|
|
102
|
+
const UserCheck = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-user-check">\n <path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><polyline points="17 11 19 13 23 9"></polyline>\n</svg>`;
|
|
103
|
+
const UserPlus = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-user-plus">\n <path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="20" y1="8" x2="20" y2="14"></line><line x1="23" y1="11" x2="17" y2="11"></line>\n</svg>`;
|
|
104
|
+
const Users = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-users">\n <path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path>\n</svg>`;
|
|
105
|
+
const X = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-x">\n <line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line>\n</svg>`;
|
|
106
|
+
const XCircle = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-x-circle">\n <circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line>\n</svg>`;
|
|
107
|
+
const XSquare = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-x-square">\n <rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="9" x2="15" y2="15"></line><line x1="15" y1="9" x2="9" y2="15"></line>\n</svg>`;
|
|
108
|
+
const ZoomIn = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-zoom-in">\n <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line>\n</svg>`;
|
|
109
|
+
const ZoomOut = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" class="feather feather-zoom-out">\n <circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="8" y1="11" x2="14" y2="11"></line>\n</svg>`;
|
|
110
|
+
const PinActive = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 15L12 23" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/><path d="M6 1H18L15 4L16 12.5L20 15H4L8 12.5L9 4L6 1Z" fill="currentColor" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/></svg>`;
|
|
111
|
+
const PinInactive = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 15L12 23" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/><path d="M6 1H18L15 4L16 12.5L20 15H4L8 12.5L9 4L6 1Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/></svg>`;
|
|
112
|
+
const Documents = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" ><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M8.75 6c-.464 0-.91.169-1.237.469C7.184 6.769 7 7.176 7 7.6v12.8c0 .424.184.831.513 1.131.328.3.773.469 1.237.469h10.5c.464 0 .91-.169 1.237-.469.329-.3.513-.707.513-1.131V8a2 2 0 0 0-2-2H8.75z" /> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M7 18H4.75c-.464 0-.91-.169-1.237-.469A1.534 1.534 0 0 1 3 16.4V3.6c0-.424.184-.831.513-1.131C3.84 2.169 4.286 2 4.75 2H15a2 2 0 0 1 2 2v2M17 14h-6M17 18h-6M13 10h-2"/></svg>`;
|
|
113
|
+
const Exchange = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M14.5 4l4 4-4 4M9 20l-4-4 4-4M3 8h15M6 16h15"/></svg>`;
|
|
114
|
+
const Reorder = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M0,9 l24,0"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M0,15 l24,0"/></svg>`;
|
|
115
|
+
const Reorder2 = `<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="none"><path fill="currentColor" d="M8 5h3v3H8zM8 11h3v3H8zM8 17h3v3H8zM13 5h3v3h-3zM13 11h3v3h-3zM13 17h3v3h-3z"/></svg>`;
|
|
116
|
+
const Reply = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M9 17l-5-5 5-5"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M20 17v-1a4 4 0 0 0-4-4H4"/></svg>`;
|
|
117
|
+
const ReplyAll = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M11 17l-5-5 5-5"/> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M7 17l-5-5 5-5"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M22 17v-1a4 4 0 0 0-4-4H6"/></svg>`;
|
|
118
|
+
const SupportChat = `<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/><path stroke="currentColor" stroke-linecap="round" d="M12 16v1"/> <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" d="M14.562 20.63a9 9 0 1 1 3.666-2.133 5.014 5.014 0 0 0 2.272 2.834A4.977 4.977 0 0 1 18 22a4.983 4.983 0 0 1-3.438-1.37z"/></svg>`;
|
|
119
|
+
export const icons = {
|
|
120
|
+
Activity,
|
|
121
|
+
AlertCircle,
|
|
122
|
+
AlertOctagon,
|
|
123
|
+
AlertTriangle,
|
|
124
|
+
AlignLeft,
|
|
125
|
+
Anchor,
|
|
126
|
+
Archive,
|
|
127
|
+
ArrowDown,
|
|
128
|
+
ArrowDownLeft,
|
|
129
|
+
ArrowLeft,
|
|
130
|
+
ArrowLeftCircle,
|
|
131
|
+
ArrowRight,
|
|
132
|
+
ArrowUp,
|
|
133
|
+
ArrowUpRight,
|
|
134
|
+
AtSign,
|
|
135
|
+
BarChart2,
|
|
136
|
+
Bell,
|
|
137
|
+
Briefcase,
|
|
138
|
+
Book,
|
|
139
|
+
BookOpen,
|
|
140
|
+
Calendar,
|
|
141
|
+
Check,
|
|
142
|
+
CheckCircle,
|
|
143
|
+
CheckSquare,
|
|
144
|
+
ChevronDown,
|
|
145
|
+
ChevronLeft,
|
|
146
|
+
ChevronRight,
|
|
147
|
+
ChevronsLeft,
|
|
148
|
+
ChevronsRight,
|
|
149
|
+
ChevronUp,
|
|
150
|
+
Clipboard,
|
|
151
|
+
Clock,
|
|
152
|
+
Coffee,
|
|
153
|
+
Copy,
|
|
154
|
+
CornerLeftUp,
|
|
155
|
+
CreditCard,
|
|
156
|
+
DollarSign,
|
|
157
|
+
Documents,
|
|
158
|
+
Download,
|
|
159
|
+
DownloadCloud,
|
|
160
|
+
Edit,
|
|
161
|
+
Edit2,
|
|
162
|
+
Exchange,
|
|
163
|
+
ExternalLink,
|
|
164
|
+
Eye,
|
|
165
|
+
EyeOff,
|
|
166
|
+
Folder,
|
|
167
|
+
File,
|
|
168
|
+
FilePlus,
|
|
169
|
+
FileText,
|
|
170
|
+
Filter,
|
|
171
|
+
Flag,
|
|
172
|
+
Hash,
|
|
173
|
+
HelpCircle,
|
|
174
|
+
Home,
|
|
175
|
+
Inbox,
|
|
176
|
+
Info,
|
|
177
|
+
Key,
|
|
178
|
+
Layers,
|
|
179
|
+
Link2,
|
|
180
|
+
List,
|
|
181
|
+
Lock,
|
|
182
|
+
Mail,
|
|
183
|
+
MapPin,
|
|
184
|
+
Maximize,
|
|
185
|
+
Maximize2,
|
|
186
|
+
Menu,
|
|
187
|
+
MessageCircle,
|
|
188
|
+
Minimize2,
|
|
189
|
+
Minus,
|
|
190
|
+
MinusCircle,
|
|
191
|
+
MoreHorizontal,
|
|
192
|
+
MoreVertical,
|
|
193
|
+
Paperclip,
|
|
194
|
+
Phone,
|
|
195
|
+
Percent,
|
|
196
|
+
PieChart,
|
|
197
|
+
PinActive,
|
|
198
|
+
PinInactive,
|
|
199
|
+
PlayCircle,
|
|
200
|
+
Plus,
|
|
201
|
+
PlusCircle,
|
|
202
|
+
Power,
|
|
203
|
+
Printer,
|
|
204
|
+
RefreshCw,
|
|
205
|
+
Reorder,
|
|
206
|
+
Reorder2,
|
|
207
|
+
Reply,
|
|
208
|
+
ReplyAll,
|
|
209
|
+
RotateCw,
|
|
210
|
+
Save,
|
|
211
|
+
Search,
|
|
212
|
+
Send,
|
|
213
|
+
Settings,
|
|
214
|
+
Share,
|
|
215
|
+
Shield,
|
|
216
|
+
Sidebar,
|
|
217
|
+
Slash,
|
|
218
|
+
Smile,
|
|
219
|
+
Star,
|
|
220
|
+
Sun,
|
|
221
|
+
SupportChat,
|
|
222
|
+
Tag,
|
|
223
|
+
Target,
|
|
224
|
+
Trash2,
|
|
225
|
+
TrendingDown,
|
|
226
|
+
TrendingUp,
|
|
227
|
+
Unlock,
|
|
228
|
+
UploadCloud,
|
|
229
|
+
User,
|
|
230
|
+
UserCheck,
|
|
231
|
+
UserPlus,
|
|
232
|
+
Users,
|
|
233
|
+
X,
|
|
234
|
+
XCircle,
|
|
235
|
+
XSquare,
|
|
236
|
+
ZoomIn,
|
|
237
|
+
ZoomOut,
|
|
238
|
+
};
|
|
239
|
+
export const IconSizes = [12, 16, 24];
|
|
240
|
+
export const iconsMap = {};
|
|
241
|
+
for (const key in icons) {
|
|
242
|
+
iconsMap[key] = icons[key];
|
|
243
|
+
}
|
|
244
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9yaXYvc3JjL2xpYi9pY29uL2ljb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sUUFBUSxHQUFHLDJLQUEySyxDQUFDO0FBQzdMLE1BQU0sV0FBVyxHQUFHLHFQQUFxUCxDQUFDO0FBQzFRLE1BQU0sWUFBWSxHQUFHLGlUQUFpVCxDQUFDO0FBQ3ZVLE1BQU0sYUFBYSxHQUFHLHlUQUF5VCxDQUFDO0FBQ2hWLE1BQU0sU0FBUyxHQUFHLDZSQUE2UixDQUFDO0FBQ2hULE1BQU0sTUFBTSxHQUFHLDBPQUEwTyxDQUFDO0FBQzFQLE1BQU0sT0FBTyxHQUFHLDBQQUEwUCxDQUFDO0FBQzNRLE1BQU0sU0FBUyxHQUFHLDBNQUEwTSxDQUFDO0FBQzdOLE1BQU0sYUFBYSxHQUFHLDRNQUE0TSxDQUFDO0FBQ25PLE1BQU0sU0FBUyxHQUFHLHlNQUF5TSxDQUFDO0FBQzVOLE1BQU0sZUFBZSxHQUFHLHdQQUF3UCxDQUFDO0FBQ2pSLE1BQU0sVUFBVSxHQUFHLDJNQUEyTSxDQUFDO0FBQy9OLE1BQU0sT0FBTyxHQUFHLHVNQUF1TSxDQUFDO0FBQ3hOLE1BQU0sWUFBWSxHQUFHLDJNQUEyTSxDQUFDO0FBQ2pPLE1BQU0sTUFBTSxHQUFHLG1OQUFtTixDQUFDO0FBQ25PLE1BQU0sU0FBUyxHQUFHLG9QQUFvUCxDQUFDO0FBQ3ZRLE1BQU0sSUFBSSxHQUFHLGtOQUFrTixDQUFDO0FBQ2hPLE1BQU0sSUFBSSxHQUFHLDBPQUEwTyxDQUFDO0FBQ3hQLE1BQU0sUUFBUSxHQUFHLG9PQUFvTyxDQUFDO0FBQ3RQLE1BQU0sU0FBUyxHQUFHLHdPQUF3TyxDQUFDO0FBQzNQLE1BQU0sUUFBUSxHQUFHLDJTQUEyUyxDQUFDO0FBQzdULE1BQU0sS0FBSyxHQUFHLHVKQUF1SixDQUFDO0FBQ3RLLE1BQU0sV0FBVyxHQUFHLHlOQUF5TixDQUFDO0FBQzlPLE1B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LEVBQUU7SUFDdkIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBcUIsR0FBRyxDQUFDLENBQUM7Q0FDaEQiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBBY3Rpdml0eSA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItYWN0aXZpdHlcIj5cXG4gICAgPHBvbHlsaW5lIHBvaW50cz1cIjIyIDEyIDE4IDEyIDE1IDIxIDkgMyA2IDEyIDIgMTJcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBBbGVydENpcmNsZSA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItYWxlcnQtY2lyY2xlXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMTBcIj48L2NpcmNsZT48bGluZSB4MT1cIjEyXCIgeTE9XCI4XCIgeDI9XCIxMlwiIHkyPVwiMTJcIj48L2xpbmU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMTZcIiB4Mj1cIjEyLjAxXCIgeTI9XCIxNlwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQWxlcnRPY3RhZ29uID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hbGVydC1vY3RhZ29uXCI+XFxuICAgIDxwb2x5Z29uIHBvaW50cz1cIjcuODYgMiAxNi4xNCAyIDIyIDcuODYgMjIgMTYuMTQgMTYuMTQgMjIgNy44NiAyMiAyIDE2LjE0IDIgNy44NiA3Ljg2IDJcIj48L3BvbHlnb24+PGxpbmUgeDE9XCIxMlwiIHkxPVwiOFwiIHgyPVwiMTJcIiB5Mj1cIjEyXCI+PC9saW5lPjxsaW5lIHgxPVwiMTJcIiB5MT1cIjE2XCIgeDI9XCIxMi4wMVwiIHkyPVwiMTZcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEFsZXJ0VHJpYW5nbGUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWFsZXJ0LXRyaWFuZ2xlXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTAuMjkgMy44NkwxLjgyIDE4YTIgMiAwIDAgMCAxLjcxIDNoMTYuOTRhMiAyIDAgMCAwIDEuNzEtM0wxMy43MSAzLjg2YTIgMiAwIDAgMC0zLjQyIDB6XCI+PC9wYXRoPjxsaW5lIHgxPVwiMTJcIiB5MT1cIjlcIiB4Mj1cIjEyXCIgeTI9XCIxM1wiPjwvbGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCIxN1wiIHgyPVwiMTIuMDFcIiB5Mj1cIjE3XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBBbGlnbkxlZnQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWFsaWduLWxlZnRcIj5cXG4gICAgPGxpbmUgeDE9XCIxN1wiIHkxPVwiMTBcIiB4Mj1cIjNcIiB5Mj1cIjEwXCI+PC9saW5lPjxsaW5lIHgxPVwiMjFcIiB5MT1cIjZcIiB4Mj1cIjNcIiB5Mj1cIjZcIj48L2xpbmU+PGxpbmUgeDE9XCIyMVwiIHkxPVwiMTRcIiB4Mj1cIjNcIiB5Mj1cIjE0XCI+PC9saW5lPjxsaW5lIHgxPVwiMTdcIiB5MT1cIjE4XCIgeDI9XCIzXCIgeTI9XCIxOFwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQW5jaG9yID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hbmNob3JcIj5cXG4gICAgPGNpcmNsZSBjeD1cIjEyXCIgY3k9XCI1XCIgcj1cIjNcIj48L2NpcmNsZT48bGluZSB4MT1cIjEyXCIgeTE9XCIyMlwiIHgyPVwiMTJcIiB5Mj1cIjhcIj48L2xpbmU+PHBhdGggZD1cIk01IDEySDJhMTAgMTAgMCAwIDAgMjAgMGgtM1wiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgQXJjaGl2ZSA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItYXJjaGl2ZVwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMjEgOCAyMSAyMSAzIDIxIDMgOFwiPjwvcG9seWxpbmU+PHJlY3QgeD1cIjFcIiB5PVwiM1wiIHdpZHRoPVwiMjJcIiBoZWlnaHQ9XCI1XCI+PC9yZWN0PjxsaW5lIHgxPVwiMTBcIiB5MT1cIjEyXCIgeDI9XCIxNFwiIHkyPVwiMTJcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEFycm93RG93biA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItYXJyb3ctZG93blwiPlxcbiAgICA8bGluZSB4MT1cIjEyXCIgeTE9XCI1XCIgeDI9XCIxMlwiIHkyPVwiMTlcIj48L2xpbmU+PHBvbHlsaW5lIHBvaW50cz1cIjE5IDEyIDEyIDE5IDUgMTJcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBBcnJvd0Rvd25MZWZ0ID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hcnJvdy1kb3duLWxlZnRcIj5cXG4gICAgPGxpbmUgeDE9XCIxN1wiIHkxPVwiN1wiIHgyPVwiN1wiIHkyPVwiMTdcIj48L2xpbmU+PHBvbHlsaW5lIHBvaW50cz1cIjE3IDE3IDcgMTcgNyA3XCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQXJyb3dMZWZ0ID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hcnJvdy1sZWZ0XCI+XFxuICAgIDxsaW5lIHgxPVwiMTlcIiB5MT1cIjEyXCIgeDI9XCI1XCIgeTI9XCIxMlwiPjwvbGluZT48cG9seWxpbmUgcG9pbnRzPVwiMTIgMTkgNSAxMiAxMiA1XCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQXJyb3dMZWZ0Q2lyY2xlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hcnJvdy1sZWZ0LWNpcmNsZVwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PHBvbHlsaW5lIHBvaW50cz1cIjEyIDggOCAxMiAxMiAxNlwiPjwvcG9seWxpbmU+PGxpbmUgeDE9XCIxNlwiIHkxPVwiMTJcIiB4Mj1cIjhcIiB5Mj1cIjEyXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBBcnJvd1JpZ2h0ID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hcnJvdy1yaWdodFwiPlxcbiAgICA8bGluZSB4MT1cIjVcIiB5MT1cIjEyXCIgeDI9XCIxOVwiIHkyPVwiMTJcIj48L2xpbmU+PHBvbHlsaW5lIHBvaW50cz1cIjEyIDUgMTkgMTIgMTIgMTlcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBBcnJvd1VwID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hcnJvdy11cFwiPlxcbiAgICA8bGluZSB4MT1cIjEyXCIgeTE9XCIxOVwiIHgyPVwiMTJcIiB5Mj1cIjVcIj48L2xpbmU+PHBvbHlsaW5lIHBvaW50cz1cIjUgMTIgMTIgNSAxOSAxMlwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEFycm93VXBSaWdodCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItYXJyb3ctdXAtcmlnaHRcIj5cXG4gICAgPGxpbmUgeDE9XCI3XCIgeTE9XCIxN1wiIHgyPVwiMTdcIiB5Mj1cIjdcIj48L2xpbmU+PHBvbHlsaW5lIHBvaW50cz1cIjcgNyAxNyA3IDE3IDE3XCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQXRTaWduID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1hdC1zaWduXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiNFwiPjwvY2lyY2xlPjxwYXRoIGQ9XCJNMTYgOHY1YTMgMyAwIDAgMCA2IDB2LTFhMTAgMTAgMCAxIDAtMy45MiA3Ljk0XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBCYXJDaGFydDIgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWJhci1jaGFydC0yXCI+XFxuICAgIDxsaW5lIHgxPVwiMThcIiB5MT1cIjIwXCIgeDI9XCIxOFwiIHkyPVwiMTBcIj48L2xpbmU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMjBcIiB4Mj1cIjEyXCIgeTI9XCI0XCI+PC9saW5lPjxsaW5lIHgxPVwiNlwiIHkxPVwiMjBcIiB4Mj1cIjZcIiB5Mj1cIjE0XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBCZWxsID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1iZWxsXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTggOEE2IDYgMCAwIDAgNiA4YzAgNy0zIDktMyA5aDE4cy0zLTItMy05XCI+PC9wYXRoPjxwYXRoIGQ9XCJNMTMuNzMgMjFhMiAyIDAgMCAxLTMuNDYgMFwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgQm9vayA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItYm9va1wiPlxcbiAgICA8cGF0aCBkPVwiTTQgMTkuNUEyLjUgMi41IDAgMCAxIDYuNSAxN0gyMFwiPjwvcGF0aD48cGF0aCBkPVwiTTYuNSAySDIwdjIwSDYuNUEyLjUgMi41IDAgMCAxIDQgMTkuNXYtMTVBMi41IDIuNSAwIDAgMSA2LjUgMnpcIj48L3BhdGg+XFxuPC9zdmc+YDtcbmNvbnN0IEJvb2tPcGVuID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1ib29rLW9wZW5cIj5cXG4gICAgPHBhdGggZD1cIk0yIDNoNmE0IDQgMCAwIDEgNCA0djE0YTMgMyAwIDAgMC0zLTNIMnpcIj48L3BhdGg+PHBhdGggZD1cIk0yMiAzaC02YTQgNCAwIDAgMC00IDR2MTRhMyAzIDAgMCAxIDMtM2g3elwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgQnJpZWZjYXNlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1icmllZmNhc2VcIj5cXG4gICAgPHJlY3QgeD1cIjJcIiB5PVwiN1wiIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIxNFwiIHJ4PVwiMlwiIHJ5PVwiMlwiPjwvcmVjdD48cGF0aCBkPVwiTTE2IDIxVjVhMiAyIDAgMCAwLTItMmgtNGEyIDIgMCAwIDAtMiAydjE2XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBDYWxlbmRhciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItY2FsZW5kYXJcIj5cXG4gICAgPHJlY3QgeD1cIjNcIiB5PVwiNFwiIHdpZHRoPVwiMThcIiBoZWlnaHQ9XCIxOFwiIHJ4PVwiMlwiIHJ5PVwiMlwiPjwvcmVjdD48bGluZSB4MT1cIjE2XCIgeTE9XCIyXCIgeDI9XCIxNlwiIHkyPVwiNlwiPjwvbGluZT48bGluZSB4MT1cIjhcIiB5MT1cIjJcIiB4Mj1cIjhcIiB5Mj1cIjZcIj48L2xpbmU+PGxpbmUgeDE9XCIzXCIgeTE9XCIxMFwiIHgyPVwiMjFcIiB5Mj1cIjEwXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBDaGVjayA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItY2hlY2tcIj5cXG4gICAgPHBvbHlsaW5lIHBvaW50cz1cIjIwIDYgOSAxNyA0IDEyXCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQ2hlY2tDaXJjbGUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWNoZWNrLWNpcmNsZVwiPlxcbiAgICA8cGF0aCBkPVwiTTIyIDExLjA4VjEyYTEwIDEwIDAgMSAxLTUuOTMtOS4xNFwiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiMjIgNCAxMiAxNC4wMSA5IDExLjAxXCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQ2hlY2tTcXVhcmUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWNoZWNrLXNxdWFyZVwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiOSAxMSAxMiAxNCAyMiA0XCI+PC9wb2x5bGluZT48cGF0aCBkPVwiTTIxIDEydjdhMiAyIDAgMCAxLTIgMkg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDExXCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBDaGV2cm9uRG93biA9IGA8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDI0IDI0XFxcIiBjbGFzcz1cXFwiZmVhdGhlciBmZWF0aGVyLWNoZXZyb24tZG93blxcXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XFxcIjYgOSAxMiAxNSAxOCA5XFxcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBDaGV2cm9uTGVmdCA9IGA8c3ZnIHhtbG5zPVxcXCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1xcXCIgdmlld0JveD1cXFwiMCAwIDI0IDI0XFxcIiBjbGFzcz1cXFwiZmVhdGhlciBmZWF0aGVyLWNoZXZyb24tbGVmdFxcXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XFxcIjE1IDE4IDkgMTIgMTUgNlxcXCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQ2hldnJvblJpZ2h0ID0gYDxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgMjQgMjRcXFwiIGNsYXNzPVxcXCJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi1yaWdodFxcXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XFxcIjkgMTggMTUgMTIgOSA2XFxcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBDaGV2cm9uc1JpZ2h0ID0gYDxzdmcgeG1sbnM9XFxcImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXFxcIiB2aWV3Qm94PVxcXCIwIDAgMjQgMjRcXFwiIGNsYXNzPVxcXCJmZWF0aGVyIGZlYXRoZXItY2hldnJvbnMtcmlnaHRcXFwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVxcXCIxMyAxNyAxOCAxMiAxMyA3XFxcIj48L3BvbHlsaW5lPjxwb2x5bGluZSBwb2ludHM9XFxcIjYgMTcgMTEgMTIgNiA3XFxcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBDaGV2cm9uc0xlZnQgPSBgPHN2ZyB4bWxucz1cXFwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcXFwiIHZpZXdCb3g9XFxcIjAgMCAyNCAyNFxcXCIgY2xhc3M9XFxcImZlYXRoZXIgZmVhdGhlci1jaGV2cm9ucy1sZWZ0XFxcIj5cXG4gICAgPHBvbHlsaW5lIHBvaW50cz1cXFwiMTEgMTcgNiAxMiAxMSA3XFxcIj48L3BvbHlsaW5lPjxwb2x5bGluZSBwb2ludHM9XFxcIjE4IDE3IDEzIDEyIDE4IDdcXFwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IENoZXZyb25VcCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItY2hldnJvbi11cFwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMTggMTUgMTIgOSA2IDE1XCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgQ2xpcGJvYXJkID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1jbGlwYm9hcmRcIj5cXG4gICAgPHBhdGggZD1cIk0xNiA0aDJhMiAyIDAgMCAxIDIgMnYxNGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMlY2YTIgMiAwIDAgMSAyLTJoMlwiPjwvcGF0aD48cmVjdCB4PVwiOFwiIHk9XCIyXCIgd2lkdGg9XCI4XCIgaGVpZ2h0PVwiNFwiIHJ4PVwiMVwiIHJ5PVwiMVwiPjwvcmVjdD5cXG48L3N2Zz5gO1xuY29uc3QgQ2xvY2sgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWNsb2NrXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMTBcIj48L2NpcmNsZT48cG9seWxpbmUgcG9pbnRzPVwiMTIgNiAxMiAxMiAxNiAxNFwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IENvZmZlZSA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItY29mZmVlXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTggOGgxYTQgNCAwIDAgMSAwIDhoLTFcIj48L3BhdGg+PHBhdGggZD1cIk0yIDhoMTZ2OWE0IDQgMCAwIDEtNCA0SDZhNCA0IDAgMCAxLTQtNFY4elwiPjwvcGF0aD48bGluZSB4MT1cIjZcIiB5MT1cIjFcIiB4Mj1cIjZcIiB5Mj1cIjRcIj48L2xpbmU+PGxpbmUgeDE9XCIxMFwiIHkxPVwiMVwiIHgyPVwiMTBcIiB5Mj1cIjRcIj48L2xpbmU+PGxpbmUgeDE9XCIxNFwiIHkxPVwiMVwiIHgyPVwiMTRcIiB5Mj1cIjRcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IENvcHkgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWNvcHlcIj5cXG4gICAgPHJlY3QgeD1cIjlcIiB5PVwiOVwiIHdpZHRoPVwiMTNcIiBoZWlnaHQ9XCIxM1wiIHJ4PVwiMlwiIHJ5PVwiMlwiPjwvcmVjdD48cGF0aCBkPVwiTTUgMTVINGEyIDIgMCAwIDEtMi0yVjRhMiAyIDAgMCAxIDItMmg5YTIgMiAwIDAgMSAyIDJ2MVwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgQ29ybmVyTGVmdFVwID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1jb3JuZXItbGVmdC11cFwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMTQgOSA5IDQgNCA5XCI+PC9wb2x5bGluZT48cGF0aCBkPVwiTTIwIDIwaC03YTQgNCAwIDAgMS00LTRWNFwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgQ3JlZGl0Q2FyZCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItY3JlZGl0LWNhcmRcIj5cXG4gICAgPHJlY3QgeD1cIjFcIiB5PVwiNFwiIHdpZHRoPVwiMjJcIiBoZWlnaHQ9XCIxNlwiIHJ4PVwiMlwiIHJ5PVwiMlwiPjwvcmVjdD48bGluZSB4MT1cIjFcIiB5MT1cIjEwXCIgeDI9XCIyM1wiIHkyPVwiMTBcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IERvbGxhclNpZ24gPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWRvbGxhci1zaWduXCI+XFxuICAgIDxsaW5lIHgxPVwiMTJcIiB5MT1cIjFcIiB4Mj1cIjEyXCIgeTI9XCIyM1wiPjwvbGluZT48cGF0aCBkPVwiTTE3IDVIOS41YTMuNSAzLjUgMCAwIDAgMCA3aDVhMy41IDMuNSAwIDAgMSAwIDdINlwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgRG93bmxvYWQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWRvd25sb2FkXCI+XFxuICAgIDxwYXRoIGQ9XCJNMjEgMTV2NGEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnYtNFwiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiNyAxMCAxMiAxNSAxNyAxMFwiPjwvcG9seWxpbmU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMTVcIiB4Mj1cIjEyXCIgeTI9XCIzXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBEb3dubG9hZENsb3VkID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1kb3dubG9hZC1jbG91ZFwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiOCAxNyAxMiAyMSAxNiAxN1wiPjwvcG9seWxpbmU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMTJcIiB4Mj1cIjEyXCIgeTI9XCIyMVwiPjwvbGluZT48cGF0aCBkPVwiTTIwLjg4IDE4LjA5QTUgNSAwIDAgMCAxOCA5aC0xLjI2QTggOCAwIDEgMCAzIDE2LjI5XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBFZGl0ID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1lZGl0XCI+XFxuICAgIDxwYXRoIGQ9XCJNMTEgNEg0YTIgMiAwIDAgMC0yIDJ2MTRhMiAyIDAgMCAwIDIgMmgxNGEyIDIgMCAwIDAgMi0ydi03XCI+PC9wYXRoPjxwYXRoIGQ9XCJNMTguNSAyLjVhMi4xMjEgMi4xMjEgMCAwIDEgMyAzTDEyIDE1bC00IDEgMS00IDkuNS05LjV6XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBFZGl0MiA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItZWRpdC0yXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTcgM2EyLjgyOCAyLjgyOCAwIDEgMSA0IDRMNy41IDIwLjUgMiAyMmwxLjUtNS41TDE3IDN6XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBFeHRlcm5hbExpbmsgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWV4dGVybmFsLWxpbmtcIj5cXG4gICAgPHBhdGggZD1cIk0xOCAxM3Y2YTIgMiAwIDAgMS0yIDJINWEyIDIgMCAwIDEtMi0yVjhhMiAyIDAgMCAxIDItMmg2XCI+PC9wYXRoPjxwb2x5bGluZSBwb2ludHM9XCIxNSAzIDIxIDMgMjEgOVwiPjwvcG9seWxpbmU+PGxpbmUgeDE9XCIxMFwiIHkxPVwiMTRcIiB4Mj1cIjIxXCIgeTI9XCIzXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBFeWUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWV5ZVwiPlxcbiAgICA8cGF0aCBkPVwiTTEgMTJzNC04IDExLTggMTEgOCAxMSA4LTQgOC0xMSA4LTExLTgtMTEtOHpcIj48L3BhdGg+PGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIzXCI+PC9jaXJjbGU+XFxuPC9zdmc+YDtcbmNvbnN0IEV5ZU9mZiA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItZXllLW9mZlwiPlxcbiAgICA8cGF0aCBkPVwiTTE3Ljk0IDE3Ljk0QTEwLjA3IDEwLjA3IDAgMCAxIDEyIDIwYy03IDAtMTEtOC0xMS04YTE4LjQ1IDE4LjQ1IDAgMCAxIDUuMDYtNS45NE05LjkgNC4yNEE5LjEyIDkuMTIgMCAwIDEgMTIgNGM3IDAgMTEgOCAxMSA4YTE4LjUgMTguNSAwIDAgMS0yLjE2IDMuMTltLTYuNzItMS4wN2EzIDMgMCAxIDEtNC4yNC00LjI0XCI+PC9wYXRoPjxsaW5lIHgxPVwiMVwiIHkxPVwiMVwiIHgyPVwiMjNcIiB5Mj1cIjIzXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBGaWxlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1maWxlXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTMgMkg2YTIgMiAwIDAgMC0yIDJ2MTZhMiAyIDAgMCAwIDIgMmgxMmEyIDIgMCAwIDAgMi0yVjl6XCI+PC9wYXRoPjxwb2x5bGluZSBwb2ludHM9XCIxMyAyIDEzIDkgMjAgOVwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEZpbGVQbHVzID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1maWxlLXBsdXNcIj5cXG4gICAgPHBhdGggZD1cIk0xNCAySDZhMiAyIDAgMCAwLTIgMnYxNmEyIDIgMCAwIDAgMiAyaDEyYTIgMiAwIDAgMCAyLTJWOHpcIj48L3BhdGg+PHBvbHlsaW5lIHBvaW50cz1cIjE0IDIgMTQgOCAyMCA4XCI+PC9wb2x5bGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCIxOFwiIHgyPVwiMTJcIiB5Mj1cIjEyXCI+PC9saW5lPjxsaW5lIHgxPVwiOVwiIHkxPVwiMTVcIiB4Mj1cIjE1XCIgeTI9XCIxNVwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgRmlsZVRleHQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWZpbGUtdGV4dFwiPlxcbiAgICA8cGF0aCBkPVwiTTE0IDJINmEyIDIgMCAwIDAtMiAydjE2YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMlY4elwiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiMTQgMiAxNCA4IDIwIDhcIj48L3BvbHlsaW5lPjxsaW5lIHgxPVwiMTZcIiB5MT1cIjEzXCIgeDI9XCI4XCIgeTI9XCIxM1wiPjwvbGluZT48bGluZSB4MT1cIjE2XCIgeTE9XCIxN1wiIHgyPVwiOFwiIHkyPVwiMTdcIj48L2xpbmU+PHBvbHlsaW5lIHBvaW50cz1cIjEwIDkgOSA5IDggOVwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEZpbHRlciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItZmlsdGVyXCI+XFxuICAgIDxwb2x5Z29uIHBvaW50cz1cIjIyIDMgMiAzIDEwIDEyLjQ2IDEwIDE5IDE0IDIxIDE0IDEyLjQ2IDIyIDNcIj48L3BvbHlnb24+XFxuPC9zdmc+YDtcbmNvbnN0IEZsYWcgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWZsYWdcIj5cXG4gICAgPHBhdGggZD1cIk00IDE1czEtMSA0LTEgNSAyIDggMiA0LTEgNC0xVjNzLTEgMS00IDEtNS0yLTgtMi00IDEtNCAxelwiPjwvcGF0aD48bGluZSB4MT1cIjRcIiB5MT1cIjIyXCIgeDI9XCI0XCIgeTI9XCIxNVwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgRm9sZGVyID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1mb2xkZXJcIj5cXG4gICAgPHBhdGggZD1cIk0yMiAxOWEyIDIgMCAwIDEtMiAySDRhMiAyIDAgMCAxLTItMlY1YTIgMiAwIDAgMSAyLTJoNWwyIDNoOWEyIDIgMCAwIDEgMiAyelwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgSGFzaCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItaGFzaFwiPlxcbiAgICA8bGluZSB4MT1cIjRcIiB5MT1cIjlcIiB4Mj1cIjIwXCIgeTI9XCI5XCI+PC9saW5lPjxsaW5lIHgxPVwiNFwiIHkxPVwiMTVcIiB4Mj1cIjIwXCIgeTI9XCIxNVwiPjwvbGluZT48bGluZSB4MT1cIjEwXCIgeTE9XCIzXCIgeDI9XCI4XCIgeTI9XCIyMVwiPjwvbGluZT48bGluZSB4MT1cIjE2XCIgeTE9XCIzXCIgeDI9XCIxNFwiIHkyPVwiMjFcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEhlbHBDaXJjbGUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWhlbHAtY2lyY2xlXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMTBcIj48L2NpcmNsZT48cGF0aCBkPVwiTTkuMDkgOWEzIDMgMCAwIDEgNS44MyAxYzAgMi0zIDMtMyAzXCI+PC9wYXRoPjxsaW5lIHgxPVwiMTJcIiB5MT1cIjE3XCIgeDI9XCIxMi4wMVwiIHkyPVwiMTdcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEhvbWUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWhvbWVcIj5cXG4gICAgPHBhdGggZD1cIk0zIDlsOS03IDkgN3YxMWEyIDIgMCAwIDEtMiAySDVhMiAyIDAgMCAxLTItMnpcIj48L3BhdGg+PHBvbHlsaW5lIHBvaW50cz1cIjkgMjIgOSAxMiAxNSAxMiAxNSAyMlwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IEluYm94ID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1pbmJveFwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMjIgMTIgMTYgMTIgMTQgMTUgMTAgMTUgOCAxMiAyIDEyXCI+PC9wb2x5bGluZT48cGF0aCBkPVwiTTUuNDUgNS4xMUwyIDEydjZhMiAyIDAgMCAwIDIgMmgxNmEyIDIgMCAwIDAgMi0ydi02bC0zLjQ1LTYuODlBMiAyIDAgMCAwIDE2Ljc2IDRINy4yNGEyIDIgMCAwIDAtMS43OSAxLjExelwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgSW5mbyA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItaW5mb1wiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMTZcIiB4Mj1cIjEyXCIgeTI9XCIxMlwiPjwvbGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCI4XCIgeDI9XCIxMi4wMVwiIHkyPVwiOFwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgS2V5ID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1rZXlcIj5cXG4gICAgPHBhdGggZD1cIk0yMSAybC0yIDJtLTcuNjEgNy42MWE1LjUgNS41IDAgMSAxLTcuNzc4IDcuNzc4IDUuNSA1LjUgMCAwIDEgNy43NzctNy43Nzd6bTAgMEwxNS41IDcuNW0wIDBsMyAzTDIyIDdsLTMtM20tMy41IDMuNUwxOSA0XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBMYXllcnMgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWxheWVyc1wiPlxcbiAgICA8cG9seWdvbiBwb2ludHM9XCIxMiAyIDIgNyAxMiAxMiAyMiA3IDEyIDJcIj48L3BvbHlnb24+PHBvbHlsaW5lIHBvaW50cz1cIjIgMTcgMTIgMjIgMjIgMTdcIj48L3BvbHlsaW5lPjxwb2x5bGluZSBwb2ludHM9XCIyIDEyIDEyIDE3IDIyIDEyXCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgTGluazIgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLWxpbmstMlwiPlxcbiAgICA8cGF0aCBkPVwiTTE1IDdoM2E1IDUgMCAwIDEgNSA1IDUgNSAwIDAgMS01IDVoLTNtLTYgMEg2YTUgNSAwIDAgMS01LTUgNSA1IDAgMCAxIDUtNWgzXCI+PC9wYXRoPjxsaW5lIHgxPVwiOFwiIHkxPVwiMTJcIiB4Mj1cIjE2XCIgeTI9XCIxMlwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgTGlzdCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItbGlzdFwiPlxcbiAgICA8bGluZSB4MT1cIjhcIiB5MT1cIjZcIiB4Mj1cIjIxXCIgeTI9XCI2XCI+PC9saW5lPjxsaW5lIHgxPVwiOFwiIHkxPVwiMTJcIiB4Mj1cIjIxXCIgeTI9XCIxMlwiPjwvbGluZT48bGluZSB4MT1cIjhcIiB5MT1cIjE4XCIgeDI9XCIyMVwiIHkyPVwiMThcIj48L2xpbmU+PGxpbmUgeDE9XCIzXCIgeTE9XCI2XCIgeDI9XCIzLjAxXCIgeTI9XCI2XCI+PC9saW5lPjxsaW5lIHgxPVwiM1wiIHkxPVwiMTJcIiB4Mj1cIjMuMDFcIiB5Mj1cIjEyXCI+PC9saW5lPjxsaW5lIHgxPVwiM1wiIHkxPVwiMThcIiB4Mj1cIjMuMDFcIiB5Mj1cIjE4XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBMb2NrID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1sb2NrXCI+XFxuICAgIDxyZWN0IHg9XCIzXCIgeT1cIjExXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjExXCIgcng9XCIyXCIgcnk9XCIyXCI+PC9yZWN0PjxwYXRoIGQ9XCJNNyAxMVY3YTUgNSAwIDAgMSAxMCAwdjRcIj48L3BhdGg+XFxuPC9zdmc+YDtcbmNvbnN0IE1haWwgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLW1haWxcIj5cXG4gICAgPHBhdGggZD1cIk00IDRoMTZjMS4xIDAgMiAuOSAyIDJ2MTJjMCAxLjEtLjkgMi0yIDJINGMtMS4xIDAtMi0uOS0yLTJWNmMwLTEuMS45LTIgMi0yelwiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiMjIsNiAxMiwxMyAyLDZcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBNYXBQaW4gPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLW1hcC1waW5cIj5cXG4gICAgPHBhdGggZD1cIk0yMSAxMGMwIDctOSAxMy05IDEzcy05LTYtOS0xM2E5IDkgMCAwIDEgMTggMHpcIj48L3BhdGg+PGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMFwiIHI9XCIzXCI+PC9jaXJjbGU+XFxuPC9zdmc+YDtcbmNvbnN0IE1heGltaXplID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1tYXhpbWl6ZVwiPlxcbiAgICA8cGF0aCBkPVwiTTggM0g1YTIgMiAwIDAgMC0yIDJ2M20xOCAwVjVhMiAyIDAgMCAwLTItMmgtM20wIDE4aDNhMiAyIDAgMCAwIDItMnYtM00zIDE2djNhMiAyIDAgMCAwIDIgMmgzXCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBNYXhpbWl6ZTIgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLW1heGltaXplLTJcIj5cXG4gICAgPHBvbHlsaW5lIHBvaW50cz1cIjE1IDMgMjEgMyAyMSA5XCI+PC9wb2x5bGluZT48cG9seWxpbmUgcG9pbnRzPVwiOSAyMSAzIDIxIDMgMTVcIj48L3BvbHlsaW5lPjxsaW5lIHgxPVwiMjFcIiB5MT1cIjNcIiB4Mj1cIjE0XCIgeTI9XCIxMFwiPjwvbGluZT48bGluZSB4MT1cIjNcIiB5MT1cIjIxXCIgeDI9XCIxMFwiIHkyPVwiMTRcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IE1lbnUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLW1lbnVcIj5cXG4gICAgPGxpbmUgeDE9XCIzXCIgeTE9XCIxMlwiIHgyPVwiMjFcIiB5Mj1cIjEyXCI+PC9saW5lPjxsaW5lIHgxPVwiM1wiIHkxPVwiNlwiIHgyPVwiMjFcIiB5Mj1cIjZcIj48L2xpbmU+PGxpbmUgeDE9XCIzXCIgeTE9XCIxOFwiIHgyPVwiMjFcIiB5Mj1cIjE4XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBNZXNzYWdlQ2lyY2xlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1tZXNzYWdlLWNpcmNsZVwiPlxcbiAgICA8cGF0aCBkPVwiTTIxIDExLjVhOC4zOCA4LjM4IDAgMCAxLS45IDMuOCA4LjUgOC41IDAgMCAxLTcuNiA0LjcgOC4zOCA4LjM4IDAgMCAxLTMuOC0uOUwzIDIxbDEuOS01LjdhOC4zOCA4LjM4IDAgMCAxLS45LTMuOCA4LjUgOC41IDAgMCAxIDQuNy03LjYgOC4zOCA4LjM4IDAgMCAxIDMuOC0uOWguNWE4LjQ4IDguNDggMCAwIDEgOCA4di41elwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgTWluaW1pemUyID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1taW5pbWl6ZS0yXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XCI0IDE0IDEwIDE0IDEwIDIwXCI+PC9wb2x5bGluZT48cG9seWxpbmUgcG9pbnRzPVwiMjAgMTAgMTQgMTAgMTQgNFwiPjwvcG9seWxpbmU+PGxpbmUgeDE9XCIxNFwiIHkxPVwiMTBcIiB4Mj1cIjIxXCIgeTI9XCIzXCI+PC9saW5lPjxsaW5lIHgxPVwiM1wiIHkxPVwiMjFcIiB4Mj1cIjEwXCIgeTI9XCIxNFwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgTWludXMgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLW1pbnVzXCI+XFxuICAgIDxsaW5lIHgxPVwiNVwiIHkxPVwiMTJcIiB4Mj1cIjE5XCIgeTI9XCIxMlwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgTWludXNDaXJjbGUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLW1pbnVzLWNpcmNsZVwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PGxpbmUgeDE9XCI4XCIgeTE9XCIxMlwiIHgyPVwiMTZcIiB5Mj1cIjEyXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBNb3JlSG9yaXpvbnRhbCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItbW9yZS1ob3Jpem9udGFsXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMVwiPjwvY2lyY2xlPjxjaXJjbGUgY3g9XCIxOVwiIGN5PVwiMTJcIiByPVwiMVwiPjwvY2lyY2xlPjxjaXJjbGUgY3g9XCI1XCIgY3k9XCIxMlwiIHI9XCIxXCI+PC9jaXJjbGU+XFxuPC9zdmc+YDtcbmNvbnN0IE1vcmVWZXJ0aWNhbCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItbW9yZS12ZXJ0aWNhbFwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjFcIj48L2NpcmNsZT48Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjVcIiByPVwiMVwiPjwvY2lyY2xlPjxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTlcIiByPVwiMVwiPjwvY2lyY2xlPlxcbjwvc3ZnPmA7XG5jb25zdCBQYXBlcmNsaXAgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXBhcGVyY2xpcFwiPlxcbiAgICA8cGF0aCBkPVwiTTIxLjQ0IDExLjA1bC05LjE5IDkuMTlhNiA2IDAgMCAxLTguNDktOC40OWw5LjE5LTkuMTlhNCA0IDAgMCAxIDUuNjYgNS42NmwtOS4yIDkuMTlhMiAyIDAgMCAxLTIuODMtMi44M2w4LjQ5LTguNDhcIj48L3BhdGg+XFxuPC9zdmc+YDtcbmNvbnN0IFBlcmNlbnQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXBlcmNlbnRcIj5cXG4gICAgPGxpbmUgeDE9XCIxOVwiIHkxPVwiNVwiIHgyPVwiNVwiIHkyPVwiMTlcIj48L2xpbmU+PGNpcmNsZSBjeD1cIjYuNVwiIGN5PVwiNi41XCIgcj1cIjIuNVwiPjwvY2lyY2xlPjxjaXJjbGUgY3g9XCIxNy41XCIgY3k9XCIxNy41XCIgcj1cIjIuNVwiPjwvY2lyY2xlPlxcbjwvc3ZnPmA7XG5jb25zdCBQaG9uZSA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItcGhvbmVcIj5cXG4gICAgPHBhdGggZD1cIk0yMiAxNi45MnYzYTIgMiAwIDAgMS0yLjE4IDIgMTkuNzkgMTkuNzkgMCAwIDEtOC42My0zLjA3IDE5LjUgMTkuNSAwIDAgMS02LTYgMTkuNzkgMTkuNzkgMCAwIDEtMy4wNy04LjY3QTIgMiAwIDAgMSA0LjExIDJoM2EyIDIgMCAwIDEgMiAxLjcyIDEyLjg0IDEyLjg0IDAgMCAwIC43IDIuODEgMiAyIDAgMCAxLS40NSAyLjExTDguMDkgOS45MWExNiAxNiAwIDAgMCA2IDZsMS4yNy0xLjI3YTIgMiAwIDAgMSAyLjExLS40NSAxMi44NCAxMi44NCAwIDAgMCAyLjgxLjdBMiAyIDAgMCAxIDIyIDE2LjkyelwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgUGllQ2hhcnQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXBpZS1jaGFydFwiPlxcbiAgICA8cGF0aCBkPVwiTTIxLjIxIDE1Ljg5QTEwIDEwIDAgMSAxIDggMi44M1wiPjwvcGF0aD48cGF0aCBkPVwiTTIyIDEyQTEwIDEwIDAgMCAwIDEyIDJ2MTB6XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBQbGF5Q2lyY2xlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1wbGF5LWNpcmNsZVwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PHBvbHlnb24gcG9pbnRzPVwiMTAgOCAxNiAxMiAxMCAxNiAxMCA4XCI+PC9wb2x5Z29uPlxcbjwvc3ZnPmA7XG5jb25zdCBQbHVzID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1wbHVzXCI+XFxuICAgIDxsaW5lIHgxPVwiMTJcIiB5MT1cIjVcIiB4Mj1cIjEyXCIgeTI9XCIxOVwiPjwvbGluZT48bGluZSB4MT1cIjVcIiB5MT1cIjEyXCIgeDI9XCIxOVwiIHkyPVwiMTJcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFBsdXNDaXJjbGUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXBsdXMtY2lyY2xlXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiMTBcIj48L2NpcmNsZT48bGluZSB4MT1cIjEyXCIgeTE9XCI4XCIgeDI9XCIxMlwiIHkyPVwiMTZcIj48L2xpbmU+PGxpbmUgeDE9XCI4XCIgeTE9XCIxMlwiIHgyPVwiMTZcIiB5Mj1cIjEyXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBQb3dlciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItcG93ZXJcIj5cXG4gICAgPHBhdGggZD1cIk0xOC4zNiA2LjY0YTkgOSAwIDEgMS0xMi43MyAwXCI+PC9wYXRoPjxsaW5lIHgxPVwiMTJcIiB5MT1cIjJcIiB4Mj1cIjEyXCIgeTI9XCIxMlwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgUHJpbnRlciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItcHJpbnRlclwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiNiA5IDYgMiAxOCAyIDE4IDlcIj48L3BvbHlsaW5lPjxwYXRoIGQ9XCJNNiAxOEg0YTIgMiAwIDAgMS0yLTJ2LTVhMiAyIDAgMCAxIDItMmgxNmEyIDIgMCAwIDEgMiAydjVhMiAyIDAgMCAxLTIgMmgtMlwiPjwvcGF0aD48cmVjdCB4PVwiNlwiIHk9XCIxNFwiIHdpZHRoPVwiMTJcIiBoZWlnaHQ9XCI4XCI+PC9yZWN0Plxcbjwvc3ZnPmA7XG5jb25zdCBSZWZyZXNoQ3cgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXJlZnJlc2gtY3dcIj5cXG4gICAgPHBvbHlsaW5lIHBvaW50cz1cIjIzIDQgMjMgMTAgMTcgMTBcIj48L3BvbHlsaW5lPjxwb2x5bGluZSBwb2ludHM9XCIxIDIwIDEgMTQgNyAxNFwiPjwvcG9seWxpbmU+PHBhdGggZD1cIk0zLjUxIDlhOSA5IDAgMCAxIDE0Ljg1LTMuMzZMMjMgMTBNMSAxNGw0LjY0IDQuMzZBOSA5IDAgMCAwIDIwLjQ5IDE1XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBSb3RhdGVDdyA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItcm90YXRlLWN3XCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XCIyMyA0IDIzIDEwIDE3IDEwXCI+PC9wb2x5bGluZT48cGF0aCBkPVwiTTIwLjQ5IDE1YTkgOSAwIDEgMS0yLjEyLTkuMzZMMjMgMTBcIj48L3BhdGg+XFxuPC9zdmc+YDtcbmNvbnN0IFNhdmUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXNhdmVcIj5cXG4gICAgPHBhdGggZD1cIk0xOSAyMUg1YTIgMiAwIDAgMS0yLTJWNWEyIDIgMCAwIDEgMi0yaDExbDUgNXYxMWEyIDIgMCAwIDEtMiAyelwiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiMTcgMjEgMTcgMTMgNyAxMyA3IDIxXCI+PC9wb2x5bGluZT48cG9seWxpbmUgcG9pbnRzPVwiNyAzIDcgOCAxNSA4XCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgU2VhcmNoID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1zZWFyY2hcIj5cXG4gICAgPGNpcmNsZSBjeD1cIjExXCIgY3k9XCIxMVwiIHI9XCI4XCI+PC9jaXJjbGU+PGxpbmUgeDE9XCIyMVwiIHkxPVwiMjFcIiB4Mj1cIjE2LjY1XCIgeTI9XCIxNi42NVwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgU2VuZCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItc2VuZFwiPlxcbiAgICA8bGluZSB4MT1cIjIyXCIgeTE9XCIyXCIgeDI9XCIxMVwiIHkyPVwiMTNcIj48L2xpbmU+PHBvbHlnb24gcG9pbnRzPVwiMjIgMiAxNSAyMiAxMSAxMyAyIDkgMjIgMlwiPjwvcG9seWdvbj5cXG48L3N2Zz5gO1xuY29uc3QgU2V0dGluZ3MgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXNldHRpbmdzXCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiMTJcIiByPVwiM1wiPjwvY2lyY2xlPjxwYXRoIGQ9XCJNMTkuNCAxNWExLjY1IDEuNjUgMCAwIDAgLjMzIDEuODJsLjA2LjA2YTIgMiAwIDAgMSAwIDIuODMgMiAyIDAgMCAxLTIuODMgMGwtLjA2LS4wNmExLjY1IDEuNjUgMCAwIDAtMS44Mi0uMzMgMS42NSAxLjY1IDAgMCAwLTEgMS41MVYyMWEyIDIgMCAwIDEtMiAyIDIgMiAwIDAgMS0yLTJ2LS4wOUExLjY1IDEuNjUgMCAwIDAgOSAxOS40YTEuNjUgMS42NSAwIDAgMC0xLjgyLjMzbC0uMDYuMDZhMiAyIDAgMCAxLTIuODMgMCAyIDIgMCAwIDEgMC0yLjgzbC4wNi0uMDZhMS42NSAxLjY1IDAgMCAwIC4zMy0xLjgyIDEuNjUgMS42NSAwIDAgMC0xLjUxLTFIM2EyIDIgMCAwIDEtMi0yIDIgMiAwIDAgMSAyLTJoLjA5QTEuNjUgMS42NSAwIDAgMCA0LjYgOWExLjY1IDEuNjUgMCAwIDAtLjMzLTEuODJsLS4wNi0uMDZhMiAyIDAgMCAxIDAtMi44MyAyIDIgMCAwIDEgMi44MyAwbC4wNi4wNmExLjY1IDEuNjUgMCAwIDAgMS44Mi4zM0g5YTEuNjUgMS42NSAwIDAgMCAxLTEuNTFWM2EyIDIgMCAwIDEgMi0yIDIgMiAwIDAgMSAyIDJ2LjA5YTEuNjUgMS42NSAwIDAgMCAxIDEuNTEgMS42NSAxLjY1IDAgMCAwIDEuODItLjMzbC4wNi0uMDZhMiAyIDAgMCAxIDIuODMgMCAyIDIgMCAwIDEgMCAyLjgzbC0uMDYuMDZhMS42NSAxLjY1IDAgMCAwLS4zMyAxLjgyVjlhMS42NSAxLjY1IDAgMCAwIDEuNTEgMUgyMWEyIDIgMCAwIDEgMiAyIDIgMiAwIDAgMS0yIDJoLS4wOWExLjY1IDEuNjUgMCAwIDAtMS41MSAxelwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgU2hhcmUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXNoYXJlXCI+XFxuICAgIDxwYXRoIGQ9XCJNNCAxMnY4YTIgMiAwIDAgMCAyIDJoMTJhMiAyIDAgMCAwIDItMnYtOFwiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiMTYgNiAxMiAyIDggNlwiPjwvcG9seWxpbmU+PGxpbmUgeDE9XCIxMlwiIHkxPVwiMlwiIHgyPVwiMTJcIiB5Mj1cIjE1XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBTaGllbGQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXNoaWVsZFwiPlxcbiAgICA8cGF0aCBkPVwiTTEyIDIyczgtNCA4LTEwVjVsLTgtMy04IDN2N2MwIDYgOCAxMCA4IDEwelwiPjwvcGF0aD5cXG48L3N2Zz5gO1xuY29uc3QgU2lkZWJhciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItc2lkZWJhclwiPlxcbiAgICA8cmVjdCB4PVwiM1wiIHk9XCIzXCIgd2lkdGg9XCIxOFwiIGhlaWdodD1cIjE4XCIgcng9XCIyXCIgcnk9XCIyXCI+PC9yZWN0PjxsaW5lIHgxPVwiOVwiIHkxPVwiM1wiIHgyPVwiOVwiIHkyPVwiMjFcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFNsYXNoID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1zbGFzaFwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PGxpbmUgeDE9XCI0LjkzXCIgeTE9XCI0LjkzXCIgeDI9XCIxOS4wN1wiIHkyPVwiMTkuMDdcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFNtaWxlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci1zbWlsZVwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PHBhdGggZD1cIk04IDE0czEuNSAyIDQgMiA0LTIgNC0yXCI+PC9wYXRoPjxsaW5lIHgxPVwiOVwiIHkxPVwiOVwiIHgyPVwiOS4wMVwiIHkyPVwiOVwiPjwvbGluZT48bGluZSB4MT1cIjE1XCIgeTE9XCI5XCIgeDI9XCIxNS4wMVwiIHkyPVwiOVwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgU3RhciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItc3RhclwiPlxcbiAgICA8cG9seWdvbiBwb2ludHM9XCIxMiAyIDE1LjA5IDguMjYgMjIgOS4yNyAxNyAxNC4xNCAxOC4xOCAyMS4wMiAxMiAxNy43NyA1LjgyIDIxLjAyIDcgMTQuMTQgMiA5LjI3IDguOTEgOC4yNiAxMiAyXCI+PC9wb2x5Z29uPlxcbjwvc3ZnPmA7XG5jb25zdCBTdW4gPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXN1blwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjVcIj48L2NpcmNsZT48bGluZSB4MT1cIjEyXCIgeTE9XCIxXCIgeDI9XCIxMlwiIHkyPVwiM1wiPjwvbGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCIyMVwiIHgyPVwiMTJcIiB5Mj1cIjIzXCI+PC9saW5lPjxsaW5lIHgxPVwiNC4yMlwiIHkxPVwiNC4yMlwiIHgyPVwiNS42NFwiIHkyPVwiNS42NFwiPjwvbGluZT48bGluZSB4MT1cIjE4LjM2XCIgeTE9XCIxOC4zNlwiIHgyPVwiMTkuNzhcIiB5Mj1cIjE5Ljc4XCI+PC9saW5lPjxsaW5lIHgxPVwiMVwiIHkxPVwiMTJcIiB4Mj1cIjNcIiB5Mj1cIjEyXCI+PC9saW5lPjxsaW5lIHgxPVwiMjFcIiB5MT1cIjEyXCIgeDI9XCIyM1wiIHkyPVwiMTJcIj48L2xpbmU+PGxpbmUgeDE9XCI0LjIyXCIgeTE9XCIxOS43OFwiIHgyPVwiNS42NFwiIHkyPVwiMTguMzZcIj48L2xpbmU+PGxpbmUgeDE9XCIxOC4zNlwiIHkxPVwiNS42NFwiIHgyPVwiMTkuNzhcIiB5Mj1cIjQuMjJcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFRhZyA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItdGFnXCI+XFxuICAgIDxwYXRoIGQ9XCJNMjAuNTkgMTMuNDFsLTcuMTcgNy4xN2EyIDIgMCAwIDEtMi44MyAwTDIgMTJWMmgxMGw4LjU5IDguNTlhMiAyIDAgMCAxIDAgMi44MnpcIj48L3BhdGg+PGxpbmUgeDE9XCI3XCIgeTE9XCI3XCIgeDI9XCI3LjAxXCIgeTI9XCI3XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBUYXJnZXQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXRhcmdldFwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCI2XCI+PC9jaXJjbGU+PGNpcmNsZSBjeD1cIjEyXCIgY3k9XCIxMlwiIHI9XCIyXCI+PC9jaXJjbGU+XFxuPC9zdmc+YDtcbmNvbnN0IFRyYXNoMiA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItdHJhc2gtMlwiPlxcbiAgICA8cG9seWxpbmUgcG9pbnRzPVwiMyA2IDUgNiAyMSA2XCI+PC9wb2x5bGluZT48cGF0aCBkPVwiTTE5IDZ2MTRhMiAyIDAgMCAxLTIgMkg3YTIgMiAwIDAgMS0yLTJWNm0zIDBWNGEyIDIgMCAwIDEgMi0yaDRhMiAyIDAgMCAxIDIgMnYyXCI+PC9wYXRoPjxsaW5lIHgxPVwiMTBcIiB5MT1cIjExXCIgeDI9XCIxMFwiIHkyPVwiMTdcIj48L2xpbmU+PGxpbmUgeDE9XCIxNFwiIHkxPVwiMTFcIiB4Mj1cIjE0XCIgeTI9XCIxN1wiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgVHJlbmRpbmdEb3duID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci10cmVuZGluZy1kb3duXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XCIyMyAxOCAxMy41IDguNSA4LjUgMTMuNSAxIDZcIj48L3BvbHlsaW5lPjxwb2x5bGluZSBwb2ludHM9XCIxNyAxOCAyMyAxOCAyMyAxMlwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFRyZW5kaW5nVXAgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXRyZW5kaW5nLXVwXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XCIyMyA2IDEzLjUgMTUuNSA4LjUgMTAuNSAxIDE4XCI+PC9wb2x5bGluZT48cG9seWxpbmUgcG9pbnRzPVwiMTcgNiAyMyA2IDIzIDEyXCI+PC9wb2x5bGluZT5cXG48L3N2Zz5gO1xuY29uc3QgVW5sb2NrID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci11bmxvY2tcIj5cXG4gICAgPHJlY3QgeD1cIjNcIiB5PVwiMTFcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMTFcIiByeD1cIjJcIiByeT1cIjJcIj48L3JlY3Q+PHBhdGggZD1cIk03IDExVjdhNSA1IDAgMCAxIDkuOS0xXCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBVcGxvYWRDbG91ZCA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItdXBsb2FkLWNsb3VkXCI+XFxuICAgIDxwb2x5bGluZSBwb2ludHM9XCIxNiAxNiAxMiAxMiA4IDE2XCI+PC9wb2x5bGluZT48bGluZSB4MT1cIjEyXCIgeTE9XCIxMlwiIHgyPVwiMTJcIiB5Mj1cIjIxXCI+PC9saW5lPjxwYXRoIGQ9XCJNMjAuMzkgMTguMzlBNSA1IDAgMCAwIDE4IDloLTEuMjZBOCA4IDAgMSAwIDMgMTYuM1wiPjwvcGF0aD48cG9seWxpbmUgcG9pbnRzPVwiMTYgMTYgMTIgMTIgOCAxNlwiPjwvcG9seWxpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFVzZXIgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXVzZXJcIj5cXG4gICAgPHBhdGggZD1cIk0yMCAyMXYtMmE0IDQgMCAwIDAtNC00SDhhNCA0IDAgMCAwLTQgNHYyXCI+PC9wYXRoPjxjaXJjbGUgY3g9XCIxMlwiIGN5PVwiN1wiIHI9XCI0XCI+PC9jaXJjbGU+XFxuPC9zdmc+YDtcbmNvbnN0IFVzZXJDaGVjayA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItdXNlci1jaGVja1wiPlxcbiAgICA8cGF0aCBkPVwiTTE2IDIxdi0yYTQgNCAwIDAgMC00LTRINWE0IDQgMCAwIDAtNCA0djJcIj48L3BhdGg+PGNpcmNsZSBjeD1cIjguNVwiIGN5PVwiN1wiIHI9XCI0XCI+PC9jaXJjbGU+PHBvbHlsaW5lIHBvaW50cz1cIjE3IDExIDE5IDEzIDIzIDlcIj48L3BvbHlsaW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBVc2VyUGx1cyA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItdXNlci1wbHVzXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTYgMjF2LTJhNCA0IDAgMCAwLTQtNEg1YTQgNCAwIDAgMC00IDR2MlwiPjwvcGF0aD48Y2lyY2xlIGN4PVwiOC41XCIgY3k9XCI3XCIgcj1cIjRcIj48L2NpcmNsZT48bGluZSB4MT1cIjIwXCIgeTE9XCI4XCIgeDI9XCIyMFwiIHkyPVwiMTRcIj48L2xpbmU+PGxpbmUgeDE9XCIyM1wiIHkxPVwiMTFcIiB4Mj1cIjE3XCIgeTI9XCIxMVwiPjwvbGluZT5cXG48L3N2Zz5gO1xuY29uc3QgVXNlcnMgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXVzZXJzXCI+XFxuICAgIDxwYXRoIGQ9XCJNMTcgMjF2LTJhNCA0IDAgMCAwLTQtNEg1YTQgNCAwIDAgMC00IDR2MlwiPjwvcGF0aD48Y2lyY2xlIGN4PVwiOVwiIGN5PVwiN1wiIHI9XCI0XCI+PC9jaXJjbGU+PHBhdGggZD1cIk0yMyAyMXYtMmE0IDQgMCAwIDAtMy0zLjg3XCI+PC9wYXRoPjxwYXRoIGQ9XCJNMTYgMy4xM2E0IDQgMCAwIDEgMCA3Ljc1XCI+PC9wYXRoPlxcbjwvc3ZnPmA7XG5jb25zdCBYID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci14XCI+XFxuICAgIDxsaW5lIHgxPVwiMThcIiB5MT1cIjZcIiB4Mj1cIjZcIiB5Mj1cIjE4XCI+PC9saW5lPjxsaW5lIHgxPVwiNlwiIHkxPVwiNlwiIHgyPVwiMThcIiB5Mj1cIjE4XCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBYQ2lyY2xlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBjbGFzcz1cImZlYXRoZXIgZmVhdGhlci14LWNpcmNsZVwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCI+PC9jaXJjbGU+PGxpbmUgeDE9XCIxNVwiIHkxPVwiOVwiIHgyPVwiOVwiIHkyPVwiMTVcIj48L2xpbmU+PGxpbmUgeDE9XCI5XCIgeTE9XCI5XCIgeDI9XCIxNVwiIHkyPVwiMTVcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFhTcXVhcmUgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXgtc3F1YXJlXCI+XFxuICAgIDxyZWN0IHg9XCIzXCIgeT1cIjNcIiB3aWR0aD1cIjE4XCIgaGVpZ2h0PVwiMThcIiByeD1cIjJcIiByeT1cIjJcIj48L3JlY3Q+PGxpbmUgeDE9XCI5XCIgeTE9XCI5XCIgeDI9XCIxNVwiIHkyPVwiMTVcIj48L2xpbmU+PGxpbmUgeDE9XCIxNVwiIHkxPVwiOVwiIHgyPVwiOVwiIHkyPVwiMTVcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFpvb21JbiA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgY2xhc3M9XCJmZWF0aGVyIGZlYXRoZXItem9vbS1pblwiPlxcbiAgICA8Y2lyY2xlIGN4PVwiMTFcIiBjeT1cIjExXCIgcj1cIjhcIj48L2NpcmNsZT48bGluZSB4MT1cIjIxXCIgeTE9XCIyMVwiIHgyPVwiMTYuNjVcIiB5Mj1cIjE2LjY1XCI+PC9saW5lPjxsaW5lIHgxPVwiMTFcIiB5MT1cIjhcIiB4Mj1cIjExXCIgeTI9XCIxNFwiPjwvbGluZT48bGluZSB4MT1cIjhcIiB5MT1cIjExXCIgeDI9XCIxNFwiIHkyPVwiMTFcIj48L2xpbmU+XFxuPC9zdmc+YDtcbmNvbnN0IFpvb21PdXQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiIGNsYXNzPVwiZmVhdGhlciBmZWF0aGVyLXpvb20tb3V0XCI+XFxuICAgIDxjaXJjbGUgY3g9XCIxMVwiIGN5PVwiMTFcIiByPVwiOFwiPjwvY2lyY2xlPjxsaW5lIHgxPVwiMjFcIiB5MT1cIjIxXCIgeDI9XCIxNi42NVwiIHkyPVwiMTYuNjVcIj48L2xpbmU+PGxpbmUgeDE9XCI4XCIgeTE9XCIxMVwiIHgyPVwiMTRcIiB5Mj1cIjExXCI+PC9saW5lPlxcbjwvc3ZnPmA7XG5jb25zdCBQaW5BY3RpdmUgPSBgPHN2ZyB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PHBhdGggZD1cIk0xMiAxNUwxMiAyM1wiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz48cGF0aCBkPVwiTTYgMUgxOEwxNSA0TDE2IDEyLjVMMjAgMTVINEw4IDEyLjVMOSA0TDYgMVpcIiBmaWxsPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPjwvc3ZnPmA7XG5jb25zdCBQaW5JbmFjdGl2ZSA9IGA8c3ZnIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIj48cGF0aCBkPVwiTTEyIDE1TDEyIDIzXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvPjxwYXRoIGQ9XCJNNiAxSDE4TDE1IDRMMTYgMTIuNUwyMCAxNUg0TDggMTIuNUw5IDRMNiAxWlwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLz48L3N2Zz5gO1xuY29uc3QgRG9jdW1lbnRzID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGZpbGw9XCJub25lXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiID48cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTguNzUgNmMtLjQ2NCAwLS45MS4xNjktMS4yMzcuNDY5QzcuMTg0IDYuNzY5IDcgNy4xNzYgNyA3LjZ2MTIuOGMwIC40MjQuMTg0LjgzMS41MTMgMS4xMzEuMzI4LjMuNzczLjQ2OSAxLjIzNy40NjloMTAuNWMuNDY0IDAgLjkxLS4xNjkgMS4yMzctLjQ2OS4zMjktLjMuNTEzLS43MDcuNTEzLTEuMTMxVjhhMiAyIDAgMCAwLTItMkg4Ljc1elwiIC8+IDxwYXRoIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNNyAxOEg0Ljc1Yy0uNDY0IDAtLjkxLS4xNjktMS4yMzctLjQ2OUExLjUzNCAxLjUzNCAwIDAgMSAzIDE2LjRWMy42YzAtLjQyNC4xODQtLjgzMS41MTMtMS4xMzFDMy44NCAyLjE2OSA0LjI4NiAyIDQuNzUgMkgxNWEyIDIgMCAwIDEgMiAydjJNMTcgMTRoLTZNMTcgMThoLTZNMTMgMTBoLTJcIi8+PC9zdmc+YDtcbmNvbnN0IEV4Y2hhbmdlID0gYDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIGZpbGw9XCJub25lXCIgdmlld0JveD1cIjAgMCAyNCAyNFwiPjxwYXRoIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNMTQuNSA0bDQgNC00IDRNOSAyMGwtNC00IDQtNE0zIDhoMTVNNiAxNmgxNVwiLz48L3N2Zz5gO1xuY29uc3QgUmVvcmRlciA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwibm9uZVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj4gPHBhdGggc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIk0wLDkgbDI0LDBcIi8+PHBhdGggc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIk0wLDE1IGwyNCwwXCIvPjwvc3ZnPmA7XG5jb25zdCBSZW9yZGVyMiA9IGA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjI0XCIgaGVpZ2h0PVwiMjRcIiBmaWxsPVwibm9uZVwiPjxwYXRoIGZpbGw9XCJjdXJyZW50Q29sb3JcIiBkPVwiTTggNWgzdjNIOHpNOCAxMWgzdjNIOHpNOCAxN2gzdjNIOHpNMTMgNWgzdjNoLTN6TTEzIDExaDN2M2gtM3pNMTMgMTdoM3YzaC0zelwiLz48L3N2Zz5gO1xuY29uc3QgUmVwbHkgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbD1cIm5vbmVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+IDxwYXRoIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNOSAxN2wtNS01IDUtNVwiLz48cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTIwIDE3di0xYTQgNCAwIDAgMC00LTRINFwiLz48L3N2Zz5gO1xuY29uc3QgUmVwbHlBbGwgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbD1cIm5vbmVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+IDxwYXRoIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNMTEgMTdsLTUtNSA1LTVcIi8+IDxwYXRoIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIGQ9XCJNNyAxN2wtNS01IDUtNVwiLz48cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTIyIDE3di0xYTQgNCAwIDAgMC00LTRINlwiLz48L3N2Zz5gO1xuY29uc3QgU3VwcG9ydENoYXQgPSBgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgZmlsbD1cIm5vbmVcIiB2aWV3Qm94PVwiMCAwIDI0IDI0XCI+PHBhdGggc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIgZD1cIk05LjA5IDlhMyAzIDAgMCAxIDUuODMgMWMwIDItMyAzLTMgM1wiLz48cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgZD1cIk0xMiAxNnYxXCIvPiA8cGF0aCBzdHJva2U9XCJjdXJyZW50Q29sb3JcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBkPVwiTTE0LjU2MiAyMC42M2E5IDkgMCAxIDEgMy42NjYtMi4xMzMgNS4wMTQgNS4wMTQgMCAwIDAgMi4yNzIgMi44MzRBNC45NzcgNC45NzcgMCAwIDEgMTggMjJhNC45ODMgNC45ODMgMCAwIDEtMy40MzgtMS4zN3pcIi8+PC9zdmc+YDtcblxuZXhwb3J0IGNvbnN0IGljb25zID0ge1xuICBBY3Rpdml0eSxcbiAgQWxlcnRDaXJjbGUsXG4gIEFsZXJ0T2N0YWdvbixcbiAgQWxlcnRUcmlhbmdsZSxcbiAgQWxpZ25MZWZ0LFxuICBBbmNob3IsXG4gIEFyY2hpdmUsXG4gIEFycm93RG93bixcbiAgQXJyb3dEb3duTGVmdCxcbiAgQXJyb3dMZWZ0LFxuICBBcnJvd0xlZnRDaXJjbGUsXG4gIEFycm93UmlnaHQsXG4gIEFycm93VXAsXG4gIEFycm93VXBSaWdodCxcbiAgQXRTaWduLFxuICBCYXJDaGFydDIsXG4gIEJlbGwsXG4gIEJyaWVmY2FzZSxcbiAgQm9vayxcbiAgQm9va09wZW4sXG4gIENhbGVuZGFyLFxuICBDaGVjayxcbiAgQ2hlY2tDaXJjbGUsXG4gIENoZWNrU3F1YXJlLFxuICBDaGV2cm9uRG93bixcbiAgQ2hldnJvbkxlZnQsXG4gIENoZXZyb25SaWdodCxcbiAgQ2hldnJvbnNMZWZ0LFxuICBDaGV2cm9uc1JpZ2h0LFxuICBDaGV2cm9uVXAsXG4gIENsaXBib2FyZCxcbiAgQ2xvY2ssXG4gIENvZmZlZSxcbiAgQ29weSxcbiAgQ29ybmVyTGVmdFVwLFxuICBDcmVkaXRDYXJkLFxuICBEb2xsYXJTaWduLFxuICBEb2N1bWVudHMsXG4gIERvd25sb2FkLFxuICBEb3dubG9hZENsb3VkLFxuICBFZGl0LFxuICBFZGl0MixcbiAgRXhjaGFuZ2UsXG4gIEV4dGVybmFsTGluayxcbiAgRXllLFxuICBFeWVPZmYsXG4gIEZvbGRlcixcbiAgRmlsZSxcbiAgRmlsZVBsdXMsXG4gIEZpbGVUZXh0LFxuICBGaWx0ZXIsXG4gIEZsYWcsXG4gIEhhc2gsXG4gIEhlbHBDaXJjbGUsXG4gIEhvbWUsXG4gIEluYm94LFxuICBJbmZvLFxuICBLZXksXG4gIExheWVycyxcbiAgTGluazIsXG4gIExpc3QsXG4gIExvY2ssXG4gIE1haWwsXG4gIE1hcFBpbixcbiAgTWF4aW1pemUsXG4gIE1heGltaXplMixcbiAgTWVudSxcbiAgTWVzc2FnZUNpcmNsZSxcbiAgTWluaW1pemUyLFxuICBNaW51cyxcbiAgTWludXNDaXJjbGUsXG4gIE1vcmVIb3Jpem9udGFsLFxuICBNb3JlVmVydGljYWwsXG4gIFBhcGVyY2xpcCxcbiAgUGhvbmUsXG4gIFBlcmNlbnQsXG4gIFBpZUNoYXJ0LFxuICBQaW5BY3RpdmUsXG4gIFBpbkluYWN0aXZlLFxuICBQbGF5Q2lyY2xlLFxuICBQbHVzLFxuICBQbHVzQ2lyY2xlLFxuICBQb3dlcixcbiAgUHJpbnRlcixcbiAgUmVmcmVzaEN3LFxuICBSZW9yZGVyLFxuICBSZW9yZGVyMixcbiAgUmVwbHksXG4gIFJlcGx5QWxsLFxuICBSb3RhdGVDdyxcbiAgU2F2ZSxcbiAgU2VhcmNoLFxuICBTZW5kLFxuICBTZXR0aW5ncyxcbiAgU2hhcmUsXG4gIFNoaWVsZCxcbiAgU2lkZWJhcixcbiAgU2xhc2gsXG4gIFNtaWxlLFxuICBTdGFyLFxuICBTdW4sXG4gIFN1cHBvcnRDaGF0LFxuICBUYWcsXG4gIFRhcmdldCxcbiAgVHJhc2gyLFxuICBUcmVuZGluZ0Rvd24sXG4gIFRyZW5kaW5nVXAsXG4gIFVubG9jayxcbiAgVXBsb2FkQ2xvdWQsXG4gIFVzZXIsXG4gIFVzZXJDaGVjayxcbiAgVXNlclBsdXMsXG4gIFVzZXJzLFxuICBYLFxuICBYQ2lyY2xlLFxuICBYU3F1YXJlLFxuICBab29tSW4sXG4gIFpvb21PdXQsXG59O1xuXG5leHBvcnQgdHlwZSBJY29uTmFtZXMgPSBrZXlvZiB0eXBlb2YgaWNvbnM7XG5cbmV4cG9ydCBjb25zdCBJY29uU2l6ZXMgPSBbMTIsIDE2LCAyNF0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIEljb25TaXplID0gKHR5cGVvZiBJY29uU2l6ZXMpW251bWJlcl07XG5cbmV4cG9ydCBjb25zdCBpY29uc01hcDogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xuZm9yIChjb25zdCBrZXkgaW4gaWNvbnMpIHtcbiAgaWNvbnNNYXBba2V5XSA9IGljb25zWzxrZXlvZiB0eXBlb2YgaWNvbnM+a2V5XTtcbn1cbiJdfQ==
|