@hestia-earth/ui-components 0.0.21 → 0.0.24

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.
Files changed (32) hide show
  1. package/bundles/hestia-earth-ui-components.umd.js +149 -156
  2. package/bundles/hestia-earth-ui-components.umd.js.map +1 -1
  3. package/common/blank-node-value-delta/blank-node-value-delta.component.d.ts +1 -1
  4. package/common/delta-utils.d.ts +0 -14
  5. package/common/utils.d.ts +0 -4
  6. package/engine/engine.service.d.ts +10 -1
  7. package/esm2015/common/blank-node-value-delta/blank-node-value-delta.component.js +4 -3
  8. package/esm2015/common/delta-utils.js +1 -41
  9. package/esm2015/common/utils.js +2 -23
  10. package/esm2015/cycles/cycles-activity/cycles-activity.component.js +3 -2
  11. package/esm2015/cycles/cycles-completeness/cycles-completeness.component.js +4 -3
  12. package/esm2015/cycles/cycles-emissions/cycles-emissions.component.js +3 -2
  13. package/esm2015/cycles/cycles-emissions-chart/cycles-emissions-chart.component.js +3 -2
  14. package/esm2015/cycles/cycles-practices/cycles-practices.component.js +3 -2
  15. package/esm2015/cycles/cycles-result/cycles-result.component.js +3 -2
  16. package/esm2015/engine/engine.service.js +18 -3
  17. package/esm2015/files/files-error.model.js +8 -5
  18. package/esm2015/files/files-form/files-form.component.js +33 -6
  19. package/esm2015/files/files-form.model.js +1 -8
  20. package/esm2015/impact-assessments/impact-assessments-products/impact-assessments-products.component.js +3 -3
  21. package/esm2015/impact-assessments/impact-assessments-products-logs/impact-assessments-products-logs.component.js +6 -2
  22. package/esm2015/node/node-csv-select-headers/node-csv-select-headers.component.js +11 -7
  23. package/esm2015/node/node-logs-models/node-logs-models.component.js +14 -5
  24. package/esm2015/sites/sites.model.js +2 -2
  25. package/esm2015/terms/terms.model.js +2 -2
  26. package/fesm2015/hestia-earth-ui-components.js +84 -90
  27. package/fesm2015/hestia-earth-ui-components.js.map +1 -1
  28. package/files/files-form/files-form.component.d.ts +13 -1
  29. package/files/files-form.model.d.ts +0 -14
  30. package/impact-assessments/impact-assessments-products-logs/impact-assessments-products-logs.component.d.ts +3 -2
  31. package/node/node-csv-select-headers/node-csv-select-headers.component.d.ts +9 -3
  32. package/package.json +6 -6
@@ -1,4 +1,4 @@
1
- import { DeltaDisplayType } from '../delta-utils';
1
+ import { DeltaDisplayType } from '@hestia-earth/utils/dist/delta';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class BlankNodeValueDeltaComponent {
4
4
  private value;
@@ -3,18 +3,4 @@ export declare enum DeltaColour {
3
3
  Warning = "warning",
4
4
  Danger = "danger"
5
5
  }
6
- export declare enum DeltaDisplayType {
7
- absolute = "absolute",
8
- percent = "percent"
9
- }
10
- declare type deltaTypeMapping = {
11
- [type in DeltaDisplayType]?: (value: number, original: number) => number;
12
- };
13
- export declare const roundValue: (value: any) => number;
14
- export declare const delta: (value: any, originalValue: any, displayType?: DeltaDisplayType, mapping?: deltaTypeMapping) => number;
15
- export declare const calculatePercentDelta: (recalculated: number, original: number) => number;
16
- export declare const customDeltaFuncs: {
17
- percent: (recalculated: number, original: number) => number;
18
- };
19
6
  export declare const evaluateSuccess: (deltaValue: number) => DeltaColour;
20
- export {};
package/common/utils.d.ts CHANGED
@@ -18,7 +18,6 @@ export declare const scrollTop: () => void;
18
18
  export declare const safeJSONParse: <T>(value: string, defaultValue?: any) => any;
19
19
  export declare const safeJSONStringify: (value: string) => string;
20
20
  export declare const arrayValue: (values: any[], isAverage: boolean) => number;
21
- export declare const propertyValue: (value: string | number | ((string | number)[]), termId?: string) => number;
22
21
  export interface IGroupedNode<T> {
23
22
  nodes: T[];
24
23
  index: number;
@@ -65,11 +64,8 @@ export declare const mapsUrl: (location?: {
65
64
  lng?: number;
66
65
  name?: string;
67
66
  }) => string;
68
- export declare const keyToLabel: (key: string) => string;
69
- export declare const toDashCase: (value?: string) => string;
70
67
  export declare const defaultLabel: (node?: any) => any;
71
68
  export declare const itemColor: (index: number) => any;
72
69
  export declare const listColor: <T>(_v: T, index: number) => string;
73
- export declare const emptyValue: (value: any) => boolean;
74
70
  export declare const repeat: (times?: number) => number[];
75
71
  export declare const filenameWithoutExt: (filename?: string) => string;
@@ -3,7 +3,16 @@ import { HttpClient } from '@angular/common/http';
3
3
  import { NodeType } from '@hestia-earth/schema';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare const HE_ORCHESTRATOR_BASE_URL: InjectionToken<string>;
6
- export declare const findConfigModels: ({ models }: IOrchestratorConfig, modelId: string, modelKey: string) => IOrchestratorModelConfig[];
6
+ /**
7
+ * Find models from the orchestrator configuration.
8
+ *
9
+ * @param config The orchestrator configuration content.
10
+ * @param termId The `@id` of the Term.
11
+ * @param model The `@id` of the model.
12
+ * @param models Optional - list of models from `model-links.json` to default when orchestrator does not contain config.
13
+ * @returns List of models from orchestrator or models if set.
14
+ */
15
+ export declare const findConfigModels: (config: IOrchestratorConfig, termId: string, model: string, models?: IModel[]) => IModel[] | IOrchestratorModelConfig[];
7
16
  export declare const pathToApiDocsPath: (model: string, term?: string) => string;
8
17
  export interface IModel {
9
18
  /**
@@ -1,6 +1,7 @@
1
1
  import { Component, Input } from '@angular/core';
2
- import { DeltaDisplayType, delta, customDeltaFuncs, evaluateSuccess } from '../delta-utils';
3
- import { emptyValue } from '../utils';
2
+ import { emptyValue } from '@hestia-earth/utils/dist/term';
3
+ import { DeltaDisplayType, delta, customDeltaFuncs } from '@hestia-earth/utils/dist/delta';
4
+ import { evaluateSuccess } from '../delta-utils';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@angular/common";
6
7
  import * as i2 from "../bind-once.directive";
@@ -36,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
36
37
  }], displayType: [{
37
38
  type: Input
38
39
  }] } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2JsYW5rLW5vZGUtdmFsdWUtZGVsdGEvYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2JsYW5rLW5vZGUtdmFsdWUtZGVsdGEvYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVqRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUM7Ozs7O0FBT3RDLE1BQU0sT0FBTyw0QkFBNEI7SUFMekM7UUFXUyxnQkFBVyxHQUFHLGdCQUFnQixDQUFDLE9BQU8sQ0FBQztRQUV2QyxxQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQztLQWE1QztJQVhDLElBQVcsSUFBSTtRQUNiLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDMUYsQ0FBQzs7MEhBcEJVLDRCQUE0Qjs4R0FBNUIsNEJBQTRCLHlKQ1Z6Qyw4aEJBY0E7NEZESmEsNEJBQTRCO2tCQUx4QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLFdBQVcsRUFBRSx5Q0FBeUM7b0JBQ3RELFNBQVMsRUFBRSxDQUFDLHlDQUF5QyxDQUFDO2lCQUN2RDs4QkFHUyxLQUFLO3NCQURaLEtBQUs7Z0JBR0UsYUFBYTtzQkFEcEIsS0FBSztnQkFHQyxXQUFXO3NCQURqQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBEZWx0YURpc3BsYXlUeXBlLCBkZWx0YSwgY3VzdG9tRGVsdGFGdW5jcywgZXZhbHVhdGVTdWNjZXNzIH0gZnJvbSAnLi4vZGVsdGEtdXRpbHMnO1xuaW1wb3J0IHsgZW1wdHlWYWx1ZSB9IGZyb20gJy4uL3V0aWxzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtYmxhbmstbm9kZS12YWx1ZS1kZWx0YScsXG4gIHRlbXBsYXRlVXJsOiAnLi9ibGFuay1ub2RlLXZhbHVlLWRlbHRhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEJsYW5rTm9kZVZhbHVlRGVsdGFDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBwcml2YXRlIHZhbHVlOiBhbnk7XG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgb3JpZ2luYWxWYWx1ZTogYW55O1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGlzcGxheVR5cGUgPSBEZWx0YURpc3BsYXlUeXBlLnBlcmNlbnQ7XG5cbiAgcHVibGljIERlbHRhRGlzcGxheVR5cGUgPSBEZWx0YURpc3BsYXlUeXBlO1xuXG4gIHB1YmxpYyBnZXQgaGlkZSgpIHtcbiAgICByZXR1cm4gZW1wdHlWYWx1ZSh0aGlzLnZhbHVlKSB8fCBlbXB0eVZhbHVlKHRoaXMub3JpZ2luYWxWYWx1ZSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRlbHRhKCkge1xuICAgIHJldHVybiBkZWx0YSh0aGlzLnZhbHVlLCB0aGlzLm9yaWdpbmFsVmFsdWUsIHRoaXMuZGlzcGxheVR5cGUsIGN1c3RvbURlbHRhRnVuY3MpO1xuICB9XG5cbiAgcHVibGljIGdldCBjb2xvcigpIHtcbiAgICByZXR1cm4gdGhpcy5kaXNwbGF5VHlwZSA9PT0gRGVsdGFEaXNwbGF5VHlwZS5wZXJjZW50ID8gZXZhbHVhdGVTdWNjZXNzKHRoaXMuZGVsdGEpIDogJyc7XG4gIH1cbn1cbiIsIjxzbWFsbCBbY2xhc3MuaXMtaGlkZGVuXT1cImhpZGVcIj5cbiAgPHNwYW4gY2xhc3M9XCJoYXMtdGV4dC17e2NvbG9yfX1cIj5cbiAgICA8c3BhbiAqbmdJZj1cImRlbHRhID4gMFwiPis8L3NwYW4+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiZGlzcGxheVR5cGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkRlbHRhRGlzcGxheVR5cGUuYWJzb2x1dGVcIj5cbiAgICAgICAgPHNwYW4gKmJpbmRPbmNlPVwiZGVsdGFcIj57e2RlbHRhIHwgcHJlY2lzaW9uOjN9fTwvc3Bhbj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiRGVsdGFEaXNwbGF5VHlwZS5wZXJjZW50XCI+XG4gICAgICAgIDxzcGFuICpiaW5kT25jZT1cImRlbHRhXCI+e3tkZWx0YSB8IG51bWJlcjonMS4wLTInfX08L3NwYW4+XG4gICAgICAgIDxzcGFuPiU8L3NwYW4+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9zcGFuPlxuPC9zbWFsbD5cbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2JsYW5rLW5vZGUtdmFsdWUtZGVsdGEvYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tbW9uL2JsYW5rLW5vZGUtdmFsdWUtZGVsdGEvYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRTNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFPakQsTUFBTSxPQUFPLDRCQUE0QjtJQUx6QztRQVdTLGdCQUFXLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDO1FBRXZDLHFCQUFnQixHQUFHLGdCQUFnQixDQUFDO0tBYTVDO0lBWEMsSUFBVyxJQUFJO1FBQ2IsT0FBTyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDbkYsQ0FBQztJQUVELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMxRixDQUFDOzswSEFwQlUsNEJBQTRCOzhHQUE1Qiw0QkFBNEIseUpDWHpDLDhoQkFjQTs0RkRIYSw0QkFBNEI7a0JBTHhDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDJCQUEyQjtvQkFDckMsV0FBVyxFQUFFLHlDQUF5QztvQkFDdEQsU0FBUyxFQUFFLENBQUMseUNBQXlDLENBQUM7aUJBQ3ZEOzhCQUdTLEtBQUs7c0JBRFosS0FBSztnQkFHRSxhQUFhO3NCQURwQixLQUFLO2dCQUdDLFdBQVc7c0JBRGpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBlbXB0eVZhbHVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscy9kaXN0L3Rlcm0nO1xuaW1wb3J0IHsgRGVsdGFEaXNwbGF5VHlwZSwgZGVsdGEsIGN1c3RvbURlbHRhRnVuY3MgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3V0aWxzL2Rpc3QvZGVsdGEnO1xuXG5pbXBvcnQgeyBldmFsdWF0ZVN1Y2Nlc3MgfSBmcm9tICcuLi9kZWx0YS11dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hlLWJsYW5rLW5vZGUtdmFsdWUtZGVsdGEnLFxuICB0ZW1wbGF0ZVVybDogJy4vYmxhbmstbm9kZS12YWx1ZS1kZWx0YS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2JsYW5rLW5vZGUtdmFsdWUtZGVsdGEuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBCbGFua05vZGVWYWx1ZURlbHRhQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSB2YWx1ZTogYW55O1xuICBASW5wdXQoKVxuICBwcml2YXRlIG9yaWdpbmFsVmFsdWU6IGFueTtcbiAgQElucHV0KClcbiAgcHVibGljIGRpc3BsYXlUeXBlID0gRGVsdGFEaXNwbGF5VHlwZS5wZXJjZW50O1xuXG4gIHB1YmxpYyBEZWx0YURpc3BsYXlUeXBlID0gRGVsdGFEaXNwbGF5VHlwZTtcblxuICBwdWJsaWMgZ2V0IGhpZGUoKSB7XG4gICAgcmV0dXJuIGVtcHR5VmFsdWUodGhpcy52YWx1ZSkgfHwgZW1wdHlWYWx1ZSh0aGlzLm9yaWdpbmFsVmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGdldCBkZWx0YSgpIHtcbiAgICByZXR1cm4gZGVsdGEodGhpcy52YWx1ZSwgdGhpcy5vcmlnaW5hbFZhbHVlLCB0aGlzLmRpc3BsYXlUeXBlLCBjdXN0b21EZWx0YUZ1bmNzKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29sb3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGlzcGxheVR5cGUgPT09IERlbHRhRGlzcGxheVR5cGUucGVyY2VudCA/IGV2YWx1YXRlU3VjY2Vzcyh0aGlzLmRlbHRhKSA6ICcnO1xuICB9XG59XG4iLCI8c21hbGwgW2NsYXNzLmlzLWhpZGRlbl09XCJoaWRlXCI+XG4gIDxzcGFuIGNsYXNzPVwiaGFzLXRleHQte3tjb2xvcn19XCI+XG4gICAgPHNwYW4gKm5nSWY9XCJkZWx0YSA+IDBcIj4rPC9zcGFuPlxuICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImRpc3BsYXlUeXBlXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJEZWx0YURpc3BsYXlUeXBlLmFic29sdXRlXCI+XG4gICAgICAgIDxzcGFuICpiaW5kT25jZT1cImRlbHRhXCI+e3tkZWx0YSB8IHByZWNpc2lvbjozfX08L3NwYW4+XG4gICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkRlbHRhRGlzcGxheVR5cGUucGVyY2VudFwiPlxuICAgICAgICA8c3BhbiAqYmluZE9uY2U9XCJkZWx0YVwiPnt7ZGVsdGEgfCBudW1iZXI6JzEuMC0yJ319PC9zcGFuPlxuICAgICAgICA8c3Bhbj4lPC9zcGFuPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvc3Bhbj5cbjwvc21hbGw+XG4iXX0=
@@ -1,4 +1,3 @@
1
- import { propertyValue } from './utils';
2
1
  const SUCCESS_CRITERION_MAX_DELTA_PERCENT = 5;
3
2
  const WARNING_CRITERION_MAX_DELTA_PERCENT = 20;
4
3
  export var DeltaColour;
@@ -7,48 +6,9 @@ export var DeltaColour;
7
6
  DeltaColour["Warning"] = "warning";
8
7
  DeltaColour["Danger"] = "danger";
9
8
  })(DeltaColour || (DeltaColour = {}));
10
- export var DeltaDisplayType;
11
- (function (DeltaDisplayType) {
12
- DeltaDisplayType["absolute"] = "absolute";
13
- DeltaDisplayType["percent"] = "percent";
14
- })(DeltaDisplayType || (DeltaDisplayType = {}));
15
- const deltaPerType = {
16
- [DeltaDisplayType.absolute]: (value, original) => value - original,
17
- [DeltaDisplayType.percent]: (value, original) => ((value - original) / original) * 100
18
- };
19
- export const roundValue = (value) => +`${value}`.substring(0, 10);
20
- export const delta = (value, originalValue, displayType = DeltaDisplayType.percent, mapping) => {
21
- const vvalue = roundValue(propertyValue(value));
22
- const voriginalValue = roundValue(propertyValue(originalValue));
23
- const deltaFuncs = Object.assign(Object.assign({}, deltaPerType), mapping);
24
- const diff = vvalue === voriginalValue ? 0 : deltaFuncs[displayType](vvalue, voriginalValue);
25
- return Number.isFinite(diff) ? (diff === -0 ? 0 : diff) : 0;
26
- };
27
- var PercentDeltaConditions;
28
- (function (PercentDeltaConditions) {
29
- PercentDeltaConditions["recalculated0"] = "recalculated should be 0";
30
- PercentDeltaConditions["original0"] = "original is 0";
31
- })(PercentDeltaConditions || (PercentDeltaConditions = {}));
32
- const calculatePercentDeltaConditions = {
33
- [PercentDeltaConditions.recalculated0]: (original, recalculated) => original > 0 && recalculated === 0,
34
- [PercentDeltaConditions.original0]: (original, recalculated) => original === 0 && recalculated > 0
35
- };
36
- const calculatePercentDeltaResult = {
37
- [PercentDeltaConditions.recalculated0]: (original, recalculated) => (recalculated - original) / (original + 1),
38
- // Always considered an error so deliberately exceed SUCCESS_CRITERION_MAX_DELTA_PERCENT
39
- [PercentDeltaConditions.original0]: (original, recalculated) => Math.sign(recalculated - original),
40
- default: (original, recalculated) => (recalculated - original) / original
41
- };
42
- export const calculatePercentDelta = (recalculated, original) => {
43
- const matchingCondition = Object.values(PercentDeltaConditions).find((value) => calculatePercentDeltaConditions[value](original, recalculated)) || 'default';
44
- return calculatePercentDeltaResult[matchingCondition](original, recalculated) * 100;
45
- };
46
- export const customDeltaFuncs = {
47
- [DeltaDisplayType.percent]: calculatePercentDelta
48
- };
49
9
  export const evaluateSuccess = (deltaValue) => Math.abs(deltaValue) < SUCCESS_CRITERION_MAX_DELTA_PERCENT
50
10
  ? DeltaColour.Success
51
11
  : Math.abs(deltaValue) < WARNING_CRITERION_MAX_DELTA_PERCENT
52
12
  ? DeltaColour.Warning
53
13
  : DeltaColour.Danger;
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdGEtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2RlbHRhLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFFeEMsTUFBTSxtQ0FBbUMsR0FBRyxDQUFDLENBQUM7QUFDOUMsTUFBTSxtQ0FBbUMsR0FBRyxFQUFFLENBQUM7QUFFL0MsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQixrQ0FBbUIsQ0FBQTtJQUNuQixrQ0FBbUIsQ0FBQTtJQUNuQixnQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBSlcsV0FBVyxLQUFYLFdBQVcsUUFJdEI7QUFFRCxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQzFCLHlDQUFxQixDQUFBO0lBQ3JCLHVDQUFtQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxnQkFBZ0IsS0FBaEIsZ0JBQWdCLFFBRzNCO0FBTUQsTUFBTSxZQUFZLEdBQXFCO0lBQ3JDLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxLQUFLLEdBQUcsUUFBUTtJQUNsRSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxRQUFRLENBQUMsR0FBRyxHQUFHO0NBQ3ZGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBRXZFLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRyxDQUNuQixLQUFVLEVBQ1YsYUFBa0Is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QUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLG1DQUFtQztRQUMxRCxDQUFDLENBQUMsV0FBVyxDQUFDLE9BQU87UUFDckIsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnLi91dGlscyc7XG5cbmNvbnN0IFNVQ0NFU1NfQ1JJVEVSSU9OX01BWF9ERUxUQV9QRVJDRU5UID0gNTtcbmNvbnN0IFdBUk5JTkdfQ1JJVEVSSU9OX01BWF9ERUxUQV9QRVJDRU5UID0gMjA7XG5cbmV4cG9ydCBlbnVtIERlbHRhQ29sb3VyIHtcbiAgU3VjY2VzcyA9ICdzdWNjZXNzJyxcbiAgV2FybmluZyA9ICd3YXJuaW5nJyxcbiAgRGFuZ2VyID0gJ2Rhbmdlcidcbn1cblxuZXhwb3J0IGVudW0gRGVsdGFEaXNwbGF5VHlwZSB7XG4gIGFic29sdXRlID0gJ2Fic29sdXRlJyxcbiAgcGVyY2VudCA9ICdwZXJjZW50J1xufVxuXG50eXBlIGRlbHRhVHlwZU1hcHBpbmcgPSB7XG4gIFt0eXBlIGluIERlbHRhRGlzcGxheVR5cGVdPzogKHZhbHVlOiBudW1iZXIsIG9yaWdpbmFsOiBudW1iZXIpID0+IG51bWJlcjtcbn07XG5cbmNvbnN0IGRlbHRhUGVyVHlwZTogZGVsdGFUeXBlTWFwcGluZyA9IHtcbiAgW0RlbHRhRGlzcGxheVR5cGUuYWJzb2x1dGVdOiAodmFsdWUsIG9yaWdpbmFsKSA9PiB2YWx1ZSAtIG9yaWdpbmFsLFxuICBbRGVsdGFEaXNwbGF5VHlwZS5wZXJjZW50XTogKHZhbHVlLCBvcmlnaW5hbCkgPT4gKCh2YWx1ZSAtIG9yaWdpbmFsKSAvIG9yaWdpbmFsKSAqIDEwMFxufTtcblxuZXhwb3J0IGNvbnN0IHJvdW5kVmFsdWUgPSAodmFsdWU6IGFueSkgPT4gK2Ake3ZhbHVlfWAuc3Vic3RyaW5nKDAsIDEwKTtcblxuZXhwb3J0IGNvbnN0IGRlbHRhID0gKFxuICB2YWx1ZTogYW55LFxuICBvcmlnaW5hbFZhbHVlOiBhbnksXG4gIGRpc3BsYXlUeXBlID0gRGVsdGFEaXNwbGF5VHlwZS5wZXJjZW50LFxuICBtYXBwaW5nPzogZGVsdGFUeXBlTWFwcGluZ1xuKSA9PiB7XG4gIGNvbnN0IHZ2YWx1ZSA9IHJvdW5kVmFsdWUocHJvcGVydHlWYWx1ZSh2YWx1ZSkpO1xuICBjb25zdCB2b3JpZ2luYWxWYWx1ZSA9IHJvdW5kVmFsdWUocHJvcGVydHlWYWx1ZShvcmlnaW5hbFZhbHVlKSk7XG4gIGNvbnN0IGRlbHRhRnVuY3MgPSB7IC4uLmRlbHRhUGVyVHlwZSwgLi4ubWFwcGluZyB9O1xuICBjb25zdCBkaWZmID0gdnZhbHVlID09PSB2b3JpZ2luYWxWYWx1ZSA/IDAgOiBkZWx0YUZ1bmNzW2Rpc3BsYXlUeXBlXSEodnZhbHVlLCB2b3JpZ2luYWxWYWx1ZSk7XG4gIHJldHVybiBOdW1iZXIuaXNGaW5pdGUoZGlmZikgPyAoZGlmZiA9PT0gLTAgPyAwIDogZGlmZikgOiAwO1xufTtcblxuZW51bSBQZXJjZW50RGVsdGFDb25kaXRpb25zIHtcbiAgcmVjYWxjdWxhdGVkMCA9ICdyZWNhbGN1bGF0ZWQgc2hvdWxkIGJlIDAnLFxuICBvcmlnaW5hbDAgPSAnb3JpZ2luYWwgaXMgMCdcbn1cblxuY29uc3QgY2FsY3VsYXRlUGVyY2VudERlbHRhQ29uZGl0aW9uczoge1xuICBba2V5IGluIFBlcmNlbnREZWx0YUNvbmRpdGlvbnNdOiAob3JpZ2luYWw6IG51bWJlciwgcmVjYWxjdWxhdGVkOiBudW1iZXIpID0+IGJvb2xlYW47XG59ID0ge1xuICBbUGVyY2VudERlbHRhQ29uZGl0aW9ucy5yZWNhbGN1bGF0ZWQwXTogKG9yaWdpbmFsLCByZWNhbGN1bGF0ZWQpID0+IG9yaWdpbmFsID4gMCAmJiByZWNhbGN1bGF0ZWQgPT09IDAsXG4gIFtQZXJjZW50RGVsdGFDb25kaXRpb25zLm9yaWdpbmFsMF06IChvcmlnaW5hbCwgcmVjYWxjdWxhdGVkKSA9PiBvcmlnaW5hbCA9PT0gMCAmJiByZWNhbGN1bGF0ZWQgPiAwXG59O1xuXG5jb25zdCBjYWxjdWxhdGVQZXJjZW50RGVsdGFSZXN1bHQ6IHtcbiAgW2tleSBpbiBQZXJjZW50RGVsdGFDb25kaXRpb25zIHwgJ2RlZmF1bHQnXTogKG9yaWdpbmFsOiBudW1iZXIsIHJlY2FsY3VsYXRlZDogbnVtYmVyKSA9PiBudW1iZXI7XG59ID0ge1xuICBbUGVyY2VudERlbHRhQ29uZGl0aW9ucy5yZWNhbGN1bGF0ZWQwXTogKG9yaWdpbmFsLCByZWNhbGN1bGF0ZWQpID0+IChyZWNhbGN1bGF0ZWQgLSBvcmlnaW5hbCkgLyAob3JpZ2luYWwgKyAxKSxcbiAgLy8gQWx3YXlzIGNvbnNpZGVyZWQgYW4gZXJyb3Igc28gZGVsaWJlcmF0ZWx5IGV4Y2VlZCBTVUNDRVNTX0NSSVRFUklPTl9NQVhfREVMVEFfUEVSQ0VOVFxuICBbUGVyY2VudERlbHRhQ29uZGl0aW9ucy5vcmlnaW5hbDBdOiAob3JpZ2luYWwsIHJlY2FsY3VsYXRlZCkgPT4gTWF0aC5zaWduKHJlY2FsY3VsYXRlZCAtIG9yaWdpbmFsKSxcbiAgZGVmYXVsdDogKG9yaWdpbmFsLCByZWNhbGN1bGF0ZWQpID0+IChyZWNhbGN1bGF0ZWQgLSBvcmlnaW5hbCkgLyBvcmlnaW5hbFxufTtcblxuZXhwb3J0IGNvbnN0IGNhbGN1bGF0ZVBlcmNlbnREZWx0YSA9IChyZWNhbGN1bGF0ZWQ6IG51bWJlciwgb3JpZ2luYWw6IG51bWJlcikgPT4ge1xuICBjb25zdCBtYXRjaGluZ0NvbmRpdGlvbiA9XG4gICAgT2JqZWN0LnZhbHVlcyhQZXJjZW50RGVsdGFDb25kaXRpb25zKS5maW5kKCh2YWx1ZSkgPT5cbiAgICAgIGNhbGN1bGF0ZVBlcmNlbnREZWx0YUNvbmRpdGlvbnNbdmFsdWVdKG9yaWdpbmFsLCByZWNhbGN1bGF0ZWQpXG4gICAgKSB8fCAnZGVmYXVsdCc7XG4gIHJldHVybiBjYWxjdWxhdGVQZXJjZW50RGVsdGFSZXN1bHRbbWF0Y2hpbmdDb25kaXRpb25dKG9yaWdpbmFsLCByZWNhbGN1bGF0ZWQpICogMTAwO1xufTtcblxuZXhwb3J0IGNvbnN0IGN1c3RvbURlbHRhRnVuY3MgPSB7XG4gIFtEZWx0YURpc3BsYXlUeXBlLnBlcmNlbnRdOiBjYWxjdWxhdGVQZXJjZW50RGVsdGFcbn07XG5cbmV4cG9ydCBjb25zdCBldmFsdWF0ZVN1Y2Nlc3MgPSAoZGVsdGFWYWx1ZTogbnVtYmVyKSA9PlxuICBNYXRoLmFicyhkZWx0YVZhbHVlKSA8IFNVQ0NFU1NfQ1JJVEVSSU9OX01BWF9ERUxUQV9QRVJDRU5UXG4gICAgPyBEZWx0YUNvbG91ci5TdWNjZXNzXG4gICAgOiBNYXRoLmFicyhkZWx0YVZhbHVlKSA8IFdBUk5JTkdfQ1JJVEVSSU9OX01BWF9ERUxUQV9QRVJDRU5UXG4gICAgICA/IERlbHRhQ29sb3VyLldhcm5pbmdcbiAgICAgIDogRGVsdGFDb2xvdXIuRGFuZ2VyO1xuIl19
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdGEtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL2RlbHRhLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sbUNBQW1DLEdBQUcsQ0FBQyxDQUFDO0FBQzlDLE1BQU0sbUNBQW1DLEdBQUcsRUFBRSxDQUFDO0FBRS9DLE1BQU0sQ0FBTixJQUFZLFdBSVg7QUFKRCxXQUFZLFdBQVc7SUFDckIsa0NBQW1CLENBQUE7SUFDbkIsa0NBQW1CLENBQUE7SUFDbkIsZ0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFdBQVcsS0FBWCxXQUFXLFFBSXRCO0FBRUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsVUFBa0IsRUFBRSxFQUFFLENBQ3BELElBQUksQ0FBQyxHQUFHLENBQUMsVUFBVSxDQUFDLEdBQUcsbUNBQW1DO0lBQ3hELENBQUMsQ0FBQyxXQUFXLENBQUMsT0FBTztJQUNyQixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsR0FBRyxtQ0FBbUM7UUFDMUQsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPO1FBQ3JCLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgU1VDQ0VTU19DUklURVJJT05fTUFYX0RFTFRBX1BFUkNFTlQgPSA1O1xuY29uc3QgV0FSTklOR19DUklURVJJT05fTUFYX0RFTFRBX1BFUkNFTlQgPSAyMDtcblxuZXhwb3J0IGVudW0gRGVsdGFDb2xvdXIge1xuICBTdWNjZXNzID0gJ3N1Y2Nlc3MnLFxuICBXYXJuaW5nID0gJ3dhcm5pbmcnLFxuICBEYW5nZXIgPSAnZGFuZ2VyJ1xufVxuXG5leHBvcnQgY29uc3QgZXZhbHVhdGVTdWNjZXNzID0gKGRlbHRhVmFsdWU6IG51bWJlcikgPT5cbiAgTWF0aC5hYnMoZGVsdGFWYWx1ZSkgPCBTVUNDRVNTX0NSSVRFUklPTl9NQVhfREVMVEFfUEVSQ0VOVFxuICAgID8gRGVsdGFDb2xvdXIuU3VjY2Vzc1xuICAgIDogTWF0aC5hYnMoZGVsdGFWYWx1ZSkgPCBXQVJOSU5HX0NSSVRFUklPTl9NQVhfREVMVEFfUEVSQ0VOVFxuICAgICAgPyBEZWx0YUNvbG91ci5XYXJuaW5nXG4gICAgICA6IERlbHRhQ29sb3VyLkRhbmdlcjtcbiJdfQ==
@@ -2,8 +2,7 @@ const get = require('lodash.get');
2
2
  import { getColor } from 'random-material-color';
3
3
  import { NodeType, EmissionMethodTier } from '@hestia-earth/schema';
4
4
  import { fileToExt } from '@hestia-earth/api';
5
- import { isEmpty } from '@hestia-earth/utils';
6
- import { getArrayTreatment } from '@hestia-earth/glossary';
5
+ import { propertyValue } from '@hestia-earth/utils/dist/term';
7
6
  export const gitHome = 'https://gitlab.com/hestia-earth';
8
7
  export const gitRawBaseUrl = 'https://glcdn.githack.com/hestia-earth';
9
8
  export const gitBranch = () => ['dev', 'staging'].some(env => baseUrl().includes(env)) ? 'develop' : 'master';
@@ -66,11 +65,6 @@ export const safeJSONParse = (value, defaultValue) => {
66
65
  };
67
66
  export const safeJSONStringify = (value) => typeof value === 'string' ? value : JSON.stringify(value);
68
67
  export const arrayValue = (values, isAverage) => (values || []).reduce((prev, curr) => prev + parseFloat(`${curr}`), 0) / (isAverage ? values.length : 1);
69
- export const propertyValue = (value, termId) => typeof value === 'undefined' || value === null ?
70
- null :
71
- (Array.isArray(value) ?
72
- arrayValue(value, (termId ? getArrayTreatment(termId) : null) === 'mean') :
73
- parseFloat(`${value}`));
74
68
  ;
75
69
  ;
76
70
  export const grouppedKeys = (values) => Object.entries(values).map(([key, value]) => ({ key, value }));
@@ -135,20 +129,6 @@ const mapsQuery = 'https://www.google.com/maps/search/?api=1&query=';
135
129
  export const mapsUrl = (location) => location ? (location.lat && location.lng ?
136
130
  `${mapsQuery}${location.lat},${location.lng}` :
137
131
  (location.name ? `${mapsQuery}${encodeURI(location.name)}` : undefined)) : undefined;
138
- export const keyToLabel = (key) => `${key[0].toUpperCase()}${key.replace(/([a-z])([A-Z])/g, '$1 $2')
139
- .replace(/([_])([a-zA-Z])/g, g => ` ${g[1].toUpperCase()}`)
140
- .substring(1)}`;
141
- export const toDashCase = (value) => value ?
142
- value
143
- // handle dates followed by capital letter
144
- .replace(/([\d]{4})([A-Z]{1})/g, g => `${g.substring(0, 4)}-${g[4].toLowerCase()}`)
145
- // handle molecules
146
- .replace(/([\d]{1}[A-Z]{1})/g, g => g.toLowerCase())
147
- // handle all capital letters
148
- .replace(/([A-Z])/g, g => `-${g[0].toLowerCase()}`)
149
- // handle years
150
- .replace(/([0-9]{4})/g, g => `-${g}`) :
151
- null;
152
132
  const nodeDefaultLabel = {
153
133
  [NodeType.ImpactAssessment]: ({ name, country, endDate, product }) => name ? name.replace(`${product === null || product === void 0 ? void 0 : product.name}, `, '') : [
154
134
  product === null || product === void 0 ? void 0 : product.name,
@@ -160,11 +140,10 @@ const nodeDefaultLabel = {
160
140
  export const defaultLabel = (node) => node ? (node['@type'] in nodeDefaultLabel ? nodeDefaultLabel[node['@type']](node) : node.name) || node['@id'] || node.id : '';
161
141
  export const itemColor = (index) => getColor({ text: `${index}` });
162
142
  export const listColor = (_v, index) => itemColor(index);
163
- export const emptyValue = (value) => isEmpty(value) || isNaN(propertyValue(value));
164
143
  export const repeat = (times = 0) => (Array.from(Array(times), Math.random));
165
144
  export const filenameWithoutExt = (filename = '') => {
166
145
  const file = fileToExt(filename, '');
167
146
  // remove last .
168
147
  return file.endsWith('.') ? file.substring(0, file.length - 1) : file;
169
148
  };
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxFQUNMLFFBQVEsRUFBb0Usa0JBQWtCLEVBQy9GLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUzRCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsaUNBQWlDLENBQUM7QUFDekQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLHdDQUF3QyxDQUFDO0FBQ3RFLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7QUFFOUcsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsR0FBRyxFQUFFOztJQUMxQixPQUFBLENBQUEsTUFBQSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sMENBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFDLENBQUM7UUFDN0MsOEJB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QUMsQ0FBQztBQUUzRSxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBSSxFQUFLLEVBQUUsS0FBYSxFQUFVLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7QUFFL0UsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0FBRXhGLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxRQUFRLEdBQUcsRUFBRSxFQUFFLEVBQUU7SUFDbEQsTUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNyQyxnQkFBZ0I7SUFDaEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDeEUsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgZ2V0ID0gcmVxdWlyZSgnbG9kYXNoLmdldCcpO1xuaW1wb3J0IHsgZ2V0Q29sb3IgfSBmcm9tICdyYW5kb20tbWF0ZXJpYWwtY29sb3InO1xuaW1wb3J0IHtcbiAgTm9kZVR5cGUsIFRlcm0sIEpTT05MRCwgSUN5Y2xlSlNPTkxELCBJU2l0ZUpTT05MRCwgSUltcGFjdEFzc2Vzc21lbnRKU09OTEQsIEVtaXNzaW9uTWV0aG9kVGllciwgSVRlcm1KU09OTERcbn0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuaW1wb3J0IHsgZmlsZVRvRXh0IH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9hcGknO1xuaW1wb3J0IHsgaXNFbXB0eSB9IGZyb20gJ0BoZXN0aWEtZWFydGgvdXRpbHMnO1xuaW1wb3J0IHsgZ2V0QXJyYXlUcmVhdG1lbnQgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2dsb3NzYXJ5JztcblxuZXhwb3J0IGNvbnN0IGdpdEhvbWUgPSAnaHR0cHM6Ly9naXRsYWIuY29tL2hlc3RpYS1lYXJ0aCc7XG5leHBvcnQgY29uc3QgZ2l0UmF3QmFzZVVybCA9ICdodHRwczovL2dsY2RuLmdpdGhhY2suY29tL2hlc3RpYS1lYXJ0aCc7XG5leHBvcnQgY29uc3QgZ2l0QnJhbmNoID0gKCkgPT4gWydkZXYnLCAnc3RhZ2luZyddLnNvbWUoZW52ID0+IGJhc2VVcmwoKS5pbmNsdWRlcyhlbnYpKSA/ICdkZXZlbG9wJyA6ICdtYXN0ZXInO1xuXG5leHBvcnQgY29uc3QgaXNDaHJvbWUgPSAoKSA9PiB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudC5pbmNsdWRlcygnQ2hyb21lJyk7XG5cbmV4cG9ydCBjb25zdCBiYXNlVXJsID0gKCkgPT5cbiAgd2luZG93LmxvY2F0aW9uLm9yaWdpbj8uaW5jbHVkZXMoJ2xvY2FsaG9zdCcpID9cbiAgICAnaHR0cHM6Ly93d3ctZGV2Lmhlc3RpYS5lYXJ0aCcgOlxuICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4/LmluY2x1ZGVzKCdoZXN0aWEuZWFydGgnKSA/XG4gICAgICB3aW5kb3cubG9jYXRpb24ub3JpZ2luIDpcbiAgICAgICdodHRwczovL3d3dy5oZXN0aWEuZWFydGgnO1xuXG5leHBvcnQgY29uc3QgaXNFeHRlcm5hbCA9ICgpID0+IGJhc2VVcmwoKSAhPT0gd2luZG93LmxvY2F0aW9uLm9yaWdpbjtcblxuY29uc3QgcGFyc2VFcnJvclN0YXR1cyA9IChlcnJvcjogYW55KSA9PiAoZXJyb3I/LnN0YXR1c1RleHQgfHwgJycpLnRvTG93ZXJDYXNlKCkucmVwbGFjZSgvXFxzL2csICctJyk7XG5cbmNvbnN0IHBhcnNlRXJyb3JNZXNzYWdlID0gKGVycm9yOiBhbnkpID0+XG4gIGdldChlcnJvciwgJ2Vycm9yLmVycm9yJywgZ2V0KGVycm9yLCAnZXJyb3IubWVzc2FnZScsIGdldChlcnJvciwgJ2Vycm9yJywgZ2V0KGVycm9yLCAnbWVzc2FnZScsIGVycm9yKSkpKTtcblxuZXhwb3J0IGNvbnN0IGhhbmRsZUFQSUVycm9yID0gKGVycm9yOiBhbnkpID0+IHtcbiAgdHJ5IHtcbiAgICBlcnJvciA9IHBhcnNlRXJyb3JNZXNzYWdlKGVycm9yKTtcbiAgfVxuICBjYXRjaCAoXykgeyB9XG4gIHRocm93IGVycm9yO1xufTtcblxuZXhwb3J0IGNvbnN0IGVycm9yVGV4dCA9IChlcnJvcjogYW55KTogc3RyaW5nID0+IHtcbiAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gZXJyb3I7XG4gIH1cbiAgY29uc3QgZXJyID0gcGFyc2VFcnJvck1lc3NhZ2UoZXJyb3IpO1xuICByZXR1cm4gcGFyc2VFcnJvclN0YXR1cyhlcnIpIHx8IGVycjtcbn07XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJQYXJhbXMgPSAob2JqOiBhbnkpID0+IHtcbiAgY29uc3QgcmVzOiB7XG4gICAgW3g6IHN0cmluZ106IHN0cmluZztcbiAgfSA9IHt9O1xuICBPYmplY3Qua2V5cyhvYmopLnNvcnQoKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgY29uc3QgdmFsdWUgPSBvYmpba2V5XTtcbiAgICBpZiAodmFsdWUgJiYgdmFsdWUgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICByZXNba2V5XSA9IGAke3ZhbHVlfWA7XG4gICAgfVxuICB9KTtcbiAgcmV0dXJuIHJlcztcbn07XG5cbmV4cG9ydCBjb25zdCB3YWl0Rm9yID0gKHZhcmlhYmxlOiBzdHJpbmcsIGNhbGxiYWNrOiAoKSA9PiB2b2lkKSA9PiB7XG4gIGlmICh2YXJpYWJsZSBpbiB3aW5kb3cpIHtcbiAgICByZXR1cm4gY2FsbGJhY2soKTtcbiAgfVxuICBzZXRUaW1lb3V0KCgpID0+IHdhaXRGb3IodmFyaWFibGUsIGNhbGxiYWNrKSwgMTAwKTtcbn07XG5cbmV4cG9ydCBjb25zdCBib3R0b20gPSAoZWxlbWVudDogSFRNTEVsZW1lbnQpID0+IGVsZW1lbnQub2Zmc2V0VG9wICsgZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS5oZWlnaHQ7XG5cbmV4cG9ydCBjb25zdCBpc1Njcm9sbGVkQmVsb3cgPSAoZWxlbWVudDogSFRNTEVsZW1lbnQpID0+IGVsZW1lbnQgPyB3aW5kb3cuc2Nyb2xsWSA+IGJvdHRvbShlbGVtZW50KSA6IGZhbHNlO1xuXG5leHBvcnQgY29uc3Qgc2Nyb2xsVG9FbCA9IChpZDogc3RyaW5nLCByZXRyaWVzID0gMCkgPT4ge1xuICBjb25zdCBlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTtcbiAgc2V0VGltZW91dCgoKSA9PiBlbCA/IGVsLnNjcm9sbEludG9WaWV3KCkgOiAocmV0cmllcyA8IDEwID8gc2Nyb2xsVG9FbChpZCwgcmV0cmllcyArIDEpIDogbnVsbCksIDEwMCk7XG59O1xuXG5leHBvcnQgY29uc3Qgc2Nyb2xsVG9wID0gKCkgPT4gd2luZG93LnNjcm9sbFRvKDAsIDApO1xuXG5leHBvcnQgY29uc3Qgc2FmZUpTT05QYXJzZSA9IDxUPih2YWx1ZTogc3RyaW5nLCBkZWZhdWx0VmFsdWU/OiBhbnkpID0+IHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IEpTT04ucGFyc2UodmFsdWUpIGFzIFQgOiB2YWx1ZTtcbiAgfVxuICBjYXRjaCAoZXJyKSB7XG4gICAgcmV0dXJuIGRlZmF1bHRWYWx1ZTtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IHNhZmVKU09OU3RyaW5naWZ5ID0gKHZhbHVlOiBzdHJpbmcpID0+IHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZSA6IEpTT04uc3RyaW5naWZ5KHZhbHVlKTtcblxuZXhwb3J0IGNvbnN0IGFycmF5VmFsdWUgPSAodmFsdWVzOiBhbnlbXSwgaXNBdmVyYWdlOiBib29sZWFuKSA9PlxuICAodmFsdWVzIHx8IFtdKS5yZWR1Y2UoKHByZXY6IG51bWJlciwgY3VycikgPT4gcHJldiArIHBhcnNlRmxvYXQoYCR7Y3Vycn1gKSwgMCkgLyAoaXNBdmVyYWdlID8gdmFsdWVzLmxlbmd0aCA6IDEpO1xuXG5leHBvcnQgY29uc3QgcHJvcGVydHlWYWx1ZSA9ICh2YWx1ZTogc3RyaW5nIHwgbnVtYmVyIHwgKChzdHJpbmcgfCBudW1iZXIpW10pLCB0ZXJtSWQ/OiBzdHJpbmcpOiBudW1iZXIgPT5cbiAgdHlwZW9mIHZhbHVlID09PSAndW5kZWZpbmVkJyB8fCB2YWx1ZSA9PT0gbnVsbCA/XG4gICAgbnVsbCBhcyBhbnkgOlxuICAgIChcbiAgICAgIEFycmF5LmlzQXJyYXkodmFsdWUpID9cbiAgICAgICAgYXJyYXlWYWx1ZSh2YWx1ZSwgKHRlcm1JZCA/IGdldEFycmF5VHJlYXRtZW50KHRlcm1JZCkgOiBudWxsKSA9PT0gJ21lYW4nKSA6XG4gICAgICAgIHBhcnNlRmxvYXQoYCR7dmFsdWV9YClcbiAgICApO1xuXG5leHBvcnQgaW50ZXJmYWNlIElHcm91cGVkTm9kZTxUPiB7XG4gIG5vZGVzOiBUW107XG4gIGluZGV4OiBudW1iZXI7XG4gIHZhbHVlOiBudW1iZXJbXTtcbiAgZGF0ZXM/OiBhbnlbXTtcbiAgc2Q/OiBudW1iZXJbXTtcbiAgbWluPzogbnVtYmVyW107XG4gIG1heD86IG51bWJlcltdO1xuICBpbnB1dHM/OiBhbnlbXTtcbiAgZGVwdGhVcHBlcj86IG51bWJlcltdO1xuICBkZXB0aExvd2VyPzogbnVtYmVyW107XG4gIHN0YXJ0RGF0ZT86IHN0cmluZ1tdO1xuICBlbmREYXRlPzogc3RyaW5nW107XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIElHcm91cGVkTm9kZXNWYWx1ZXM8VD4ge1xuICBbbm9kZUlkOiBzdHJpbmddOiBJR3JvdXBlZE5vZGU8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdyb3VwZWROb2Rlc1ZhbHVlPFQ+IHtcbiAgdGVybTogSVRlcm1KU09OTEQ7XG4gIC8qKlxuICAgKiBFbmFibGUgb3JkZXJpbmcgbnkgbWV0aG9kVGllclxuICAgKi9cbiAgbWV0aG9kVGllck9yZGVyOiBudW1iZXI7XG4gIHZhbHVlczogSUdyb3VwZWROb2Rlc1ZhbHVlczxUPjtcbiAgb3JpZ2luYWxWYWx1ZXM6IHtcbiAgICBbbm9kZUlkOiBzdHJpbmddOiB7XG4gICAgICB2YWx1ZTogbnVtYmVyO1xuICAgIH07XG4gIH07XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIElHcm91cGVkTm9kZXM8VD4ge1xuICBbdGVybUlkOiBzdHJpbmddOiBJR3JvdXBlZE5vZGVzVmFsdWU8VD47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdyb3VwZWRLZXlzPFQ+IHtcbiAga2V5OiBzdHJpbmc7XG4gIHZhbHVlOiBJR3JvdXBlZE5vZGVzVmFsdWU8VD47XG59XG5cbmV4cG9ydCBjb25zdCBncm91cHBlZEtleXMgPSA8VD4odmFsdWVzOiBJR3JvdXBlZE5vZGVzPFQ+KTogSUdyb3VwZWRLZXlzPFQ+W10gPT5cbiAgT2JqZWN0LmVudHJpZXModmFsdWVzKS5tYXAoKFtrZXksIHZhbHVlXSkgPT4gKHsga2V5LCB2YWx1ZSB9KSk7XG5cbmNvbnN0IGNvbmNhdEJsYW5rTm9kZVZhbHVlID0gKHZhbHVlOiBhbnksIG5ld1ZhbHVlOiBhbnkpID0+IHtcbiAgY29uc3QgdmFsdWVBcnJheSA9IEFycmF5LmlzQXJyYXkodmFsdWUpID8gdmFsdWUgOiBbdmFsdWVdO1xuICBjb25zdCBuZXdWYWx1ZUFycmF5ID0gQXJyYXkuaXNBcnJheShuZXdWYWx1ZSkgPyBuZXdWYWx1ZSA6IFtuZXdWYWx1ZV07XG4gIHJldHVybiBbLi4udmFsdWVBcnJheSwgLi4ubmV3VmFsdWVBcnJheV07XG59O1xuXG5jb25zdCBtZXRob2RUaWVyT3JkZXIgPSAobWV0aG9kVGllcjogRW1pc3Npb25NZXRob2RUaWVyKSA9PiBbXG4gIEVtaXNzaW9uTWV0aG9kVGllci5tZWFzdXJlZCxcbiAgRW1pc3Npb25NZXRob2RUaWVyWyd0aWVyIDMnXSxcbiAgRW1pc3Npb25NZXRob2RUaWVyWyd0aWVyIDInXSxcbiAgRW1pc3Npb25NZXRob2RUaWVyWyd0aWVyIDEnXSxcbiAgRW1pc3Npb25NZXRob2RUaWVyLmJhY2tncm91bmRcbl0uaW5kZXhPZihtZXRob2RUaWVyKTtcblxuY29uc3QgaXNNZXRob2RNb2RlbEFsbG93ZWQgPSAobm9kZTogYW55LCBmaWx0ZXJNZXRob2Q/OiBUZXJtKSA9PlxuICAhZmlsdGVyTWV0aG9kIHx8ICFub2RlWydtZXRob2RNb2RlbCddIHx8IG5vZGVbJ21ldGhvZE1vZGVsJ11bJ0BpZCddID09PSBmaWx0ZXJNZXRob2RbJ0BpZCddO1xuXG5leHBvcnQgY29uc3QgZ3JvdXBwZWRWYWx1ZUtleXMgPSBbXG4gICdkYXRlcycsICdzZCcsICdtaW4nLCAnbWF4JywgJ2lucHV0cycsICdkZXB0aFVwcGVyJywgJ2RlcHRoTG93ZXInLCAnc3RhcnREYXRlJywgJ2VuZERhdGUnLFxuICAnbWV0aG9kVGllcicsICdtZXRob2RNb2RlbCdcbl07XG5cbmV4cG9ydCBjb25zdCBncm91cE5vZGVzQnlUZXJtID0gPFQgZXh0ZW5kcyBJQ3ljbGVKU09OTEQgfCBJSW1wYWN0QXNzZXNzbWVudEpTT05MRCB8IElTaXRlSlNPTkxELCBSPihcbiAgbm9kZXM6IFRbXSA9IFtdLFxuICBrZXk6ICdpbXBhY3RzJyB8ICdlbWlzc2lvbnNSZXNvdXJjZVVzZScgfCAnaW5wdXRzJyB8ICdwcm9kdWN0cycgfCAncHJhY3RpY2VzJyB8ICdlbWlzc2lvbnMnIHwgJ21lYXN1cmVtZW50cycsXG4gIG9yaWdpbmFsVmFsdWVzOiBUW10gPSBbXSxcbiAgZmlsdGVyTWV0aG9kPzogVGVybVxuKTogSUdyb3VwZWROb2RlczxSPiA9PiB7XG4gIGNvbnN0IGdyb3VwczogSUdyb3VwZWROb2RlczxSPiA9IG5vZGVzLnJlZHVjZSgocHJldiwgbm9kZSwgaW5kZXgpID0+IChub2RlW2tleV0gfHwgW10pLnJlZHVjZSgoZ3JvdXAsIGJsYW5rTm9kZSkgPT4ge1xuICAgIGlmICghaXNNZXRob2RNb2RlbEFsbG93ZWQoYmxhbmtOb2RlLCBmaWx0ZXJNZXRob2QpKSB7XG4gICAgICByZXR1cm4gZ3JvdXA7XG4gICAgfVxuXG4gICAgY29uc3Qgbm9kZUlkID0gbm9kZVsnQGlkJ107XG4gICAgY29uc3QgdGVybUlkID0gYmxhbmtOb2RlLnRlcm1bJ0BpZCddO1xuICAgIGdyb3VwW3Rlcm1JZF0gPSBncm91cFt0ZXJtSWRdIHx8IHtcbiAgICAgIHRlcm06IGJsYW5rTm9kZS50ZXJtLFxuICAgICAgbWV0aG9kVGllck9yZGVyOiBtZXRob2RUaWVyT3JkZXIoYmxhbmtOb2RlLm1ldGhvZFRpZXIpLFxuICAgICAgdmFsdWVzOiB7fSxcbiAgICAgIG9yaWdpbmFsVmFsdWVzOiB7fVxuICAgIH07XG4gICAgZ3JvdXBbdGVybUlkXS52YWx1ZXNbbm9kZUlkXSA9IGdyb3VwW3Rlcm1JZF0udmFsdWVzW25vZGVJZF0gfHwgeyBpbmRleCwgbm9kZXM6IFtdLCB2YWx1ZTogW10gfTtcbiAgICBncm91cFt0ZXJtSWRdLnZhbHVlc1tub2RlSWRdLm5vZGVzLnB1c2goYmxhbmtOb2RlKTtcbiAgICBncm91cFt0ZXJtSWRdLnZhbHVlc1tub2RlSWRdLnZhbHVlID0gY29uY2F0QmxhbmtOb2RlVmFsdWUoXG4gICAgICBncm91cFt0ZXJtSWRdLnZhbHVlc1tub2RlSWRdLnZhbHVlLFxuICAgICAgYmxhbmtOb2RlLnZhbHVlXG4gICAgKTtcbiAgICBncm91cHBlZFZhbHVlS2V5cy5mb3JFYWNoKGFycmF5S2V5ID0+IHtcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gZ2V0KGJsYW5rTm9kZSwgYXJyYXlLZXksIFtdKTtcbiAgICAgIGdyb3VwW3Rlcm1JZF0udmFsdWVzW25vZGVJZF1bYXJyYXlLZXldID0gW1xuICAgICAgICAuLi4oZ3JvdXBbdGVybUlkXS52YWx1ZXNbbm9kZUlkXVthcnJheUtleV0gfHwgW10pLFxuICAgICAgICAuLi4oQXJyYXkuaXNBcnJheShuZXdWYWx1ZSkgPyBuZXdWYWx1ZSA6IFtuZXdWYWx1ZV0pXG4gICAgICBdO1xuICAgIH0pO1xuICAgIHJldHVybiBncm91cDtcbiAgfSwgcHJldiksIHt9IGFzIElHcm91cGVkTm9kZXM8Uj4pO1xuXG4gIC8vIGNvbXBpbGUgb3JpZ2luYWwgdmFsdWVzXG4gIE9iamVjdC52YWx1ZXMoZ3JvdXBzKS5tYXAoZ3JvdXAgPT4ge1xuICAgIE9iamVjdC5rZXlzKGdyb3VwLnZhbHVlcykubWFwKG5vZGVJZCA9PiB7XG4gICAgICBjb25zdCB7IGluZGV4IH0gPSBncm91cC52YWx1ZXNbbm9kZUlkXTtcbiAgICAgIGNvbnN0IHRlcm1JZCA9IGdyb3VwLnRlcm1bJ0BpZCddO1xuICAgICAgY29uc3Qgb3JpZ2luYWxWYWx1ZSA9IGdldChvcmlnaW5hbFZhbHVlcywgYFske2luZGV4fV0uJHtrZXl9YCwgW10pLmZpbHRlcigodmFsOiBhbnkpID0+IHZhbC50ZXJtWydAaWQnXSA9PT0gdGVybUlkKTtcbiAgICAgIGlmIChvcmlnaW5hbFZhbHVlLmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3QgdmFsdWUgPSBvcmlnaW5hbFZhbHVlLnJlZHVjZSgoYXJyYXk6IGFueVtdLCBjdXJyOiBhbnkpID0+IGNvbmNhdEJsYW5rTm9kZVZhbHVlKFxuICAgICAgICAgIGFycmF5LFxuICAgICAgICAgIGN1cnIudmFsdWVcbiAgICAgICAgKSwgW10pO1xuICAgICAgICBncm91cC5vcmlnaW5hbFZhbHVlc1tub2RlSWRdID0geyB2YWx1ZTogcHJvcGVydHlWYWx1ZSh2YWx1ZSwgdGVybUlkKSB9O1xuICAgICAgfVxuICAgIH0pO1xuICB9KTtcblxuICByZXR1cm4gZ3JvdXBzO1xufTtcblxuZXhwb3J0IGNvbnN0IGVsbGlwc2lzID0gKHRleHQgPSAnJywgbWF4bGVuZ3RoID0gMjApID0+XG4gIHRleHQubGVuZ3RoID4gbWF4bGVuZ3RoID8gYCR7dGV4dC5zdWJzdHJpbmcoMCwgbWF4bGVuZ3RoKX0uLi5gIDogdGV4dDtcblxuY29uc3QgbWFwc1F1ZXJ5ID0gJ2h0dHBzOi8vd3d3Lmdvb2dsZS5jb20vbWFwcy9zZWFyY2gvP2FwaT0xJnF1ZXJ5PSc7XG5cbmV4cG9ydCBjb25zdCBtYXBzVXJsID0gKGxvY2F0aW9uPzogeyBsYXQ/OiBudW1iZXI7IGxuZz86IG51bWJlcjsgbmFtZT86IHN0cmluZyB9KSA9PlxuICBsb2NhdGlvbiA/IChcbiAgICBsb2NhdGlvbi5sYXQgJiYgbG9jYXRpb24ubG5nID9cbiAgICAgIGAke21hcHNRdWVyeX0ke2xvY2F0aW9uLmxhdH0sJHtsb2NhdGlvbi5sbmd9YCA6XG4gICAgICAobG9jYXRpb24ubmFtZSA/IGAke21hcHNRdWVyeX0ke2VuY29kZVVSSShsb2NhdGlvbi5uYW1lKX1gIDogdW5kZWZpbmVkKVxuICApIDogdW5kZWZpbmVkO1xuXG5leHBvcnQgY29uc3Qga2V5VG9MYWJlbCA9IChrZXk6IHN0cmluZykgPT5cbiAgYCR7a2V5WzBdLnRvVXBwZXJDYXNlKCl9JHtcbiAgICBrZXkucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywgJyQxICQyJylcbiAgICAgIC5yZXBsYWNlKC8oW19dKShbYS16QS1aXSkvZywgZyA9PiBgICR7Z1sxXS50b1VwcGVyQ2FzZSgpfWApXG4gICAgICAuc3Vic3RyaW5nKDEpXG4gIH1gO1xuXG5leHBvcnQgY29uc3QgdG9EYXNoQ2FzZSA9ICh2YWx1ZT86IHN0cmluZykgPT5cbiAgdmFsdWUgP1xuICAgIHZhbHVlXG4gICAgICAvLyBoYW5kbGUgZGF0ZXMgZm9sbG93ZWQgYnkgY2FwaXRhbCBsZXR0ZXJcbiAgICAgIC5yZXBsYWNlKC8oW1xcZF17NH0pKFtBLVpdezF9KS9nLCBnID0+IGAke2cuc3Vic3RyaW5nKDAsIDQpfS0ke2dbNF0udG9Mb3dlckNhc2UoKX1gKVxuICAgICAgLy8gaGFuZGxlIG1vbGVjdWxlc1xuICAgICAgLnJlcGxhY2UoLyhbXFxkXXsxfVtBLVpdezF9KS9nLCBnID0+IGcudG9Mb3dlckNhc2UoKSlcbiAgICAgIC8vIGhhbmRsZSBhbGwgY2FwaXRhbCBsZXR0ZXJzXG4gICAgICAucmVwbGFjZSgvKFtBLVpdKS9nLCBnID0+IGAtJHtnWzBdLnRvTG93ZXJDYXNlKCl9YClcbiAgICAgIC8vIGhhbmRsZSB5ZWFyc1xuICAgICAgLnJlcGxhY2UoLyhbMC05XXs0fSkvZywgZyA9PiBgLSR7Z31gKSA6XG4gICAgbnVsbDtcblxuY29uc3Qgbm9kZURlZmF1bHRMYWJlbDoge1xuICBbdHlwZSBpbiBOb2RlVHlwZV0/OiAoZGF0YTogSlNPTkxEPGFueT4pID0+IHN0cmluZztcbn0gPSB7XG4gIFtOb2RlVHlwZS5JbXBhY3RBc3Nlc3NtZW50XTogKHsgbmFtZSwgY291bnRyeSwgZW5kRGF0ZSwgcHJvZHVjdCB9OiBJSW1wYWN0QXNzZXNzbWVudEpTT05MRCkgPT5cbiAgICBuYW1lID8gbmFtZS5yZXBsYWNlKGAke3Byb2R1Y3Q/Lm5hbWV9LCBgLCAnJykgOiBbXG4gICAgICBwcm9kdWN0Py5uYW1lLFxuICAgICAgY291bnRyeT8ubmFtZSxcbiAgICAgIGVuZERhdGVcbiAgICBdLmZpbHRlcihCb29sZWFuKS5qb2luKCcsICcpLFxuICBbTm9kZVR5cGUuU2l0ZV06ICh7IG5hbWUsIGRlc2NyaXB0aW9uIH06IElTaXRlSlNPTkxEKSA9PiBuYW1lIHx8IGRlc2NyaXB0aW9uIVxufTtcblxuZXhwb3J0IGNvbnN0IGRlZmF1bHRMYWJlbCA9IChub2RlPzogYW55KSA9PlxuICBub2RlID8gKFxuICAgIG5vZGVbJ0B0eXBlJ10gaW4gbm9kZURlZmF1bHRMYWJlbCA/IG5vZGVEZWZhdWx0TGFiZWxbbm9kZVsnQHR5cGUnXV0obm9kZSkgOiBub2RlLm5hbWVcbiAgKSB8fCBub2RlWydAaWQnXSB8fCBub2RlLmlkIDogJyc7XG5cbmV4cG9ydCBjb25zdCBpdGVtQ29sb3IgPSAoaW5kZXg6IG51bWJlcikgPT4gZ2V0Q29sb3IoeyB0ZXh0OiBgJHtpbmRleH1gIH0pO1xuXG5leHBvcnQgY29uc3QgbGlzdENvbG9yID0gPFQ+KF92OiBULCBpbmRleDogbnVtYmVyKTogc3RyaW5nID0+IGl0ZW1Db2xvcihpbmRleCk7XG5cbmV4cG9ydCBjb25zdCBlbXB0eVZhbHVlID0gKHZhbHVlOiBhbnkpID0+IGlzRW1wdHkodmFsdWUpIHx8IGlzTmFOKHByb3BlcnR5VmFsdWUodmFsdWUpKTtcblxuZXhwb3J0IGNvbnN0IHJlcGVhdCA9ICh0aW1lcyA9IDApID0+IChBcnJheS5mcm9tKEFycmF5KHRpbWVzKSwgTWF0aC5yYW5kb20pKTtcblxuZXhwb3J0IGNvbnN0IGZpbGVuYW1lV2l0aG91dEV4dCA9IChmaWxlbmFtZSA9ICcnKSA9PiB7XG4gIGNvbnN0IGZpbGUgPSBmaWxlVG9FeHQoZmlsZW5hbWUsICcnKTtcbiAgLy8gcmVtb3ZlIGxhc3QgLlxuICByZXR1cm4gZmlsZS5lbmRzV2l0aCgnLicpID8gZmlsZS5zdWJzdHJpbmcoMCwgZmlsZS5sZW5ndGggLSAxKSA6IGZpbGU7XG59O1xuIl19
149
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tbW9uL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztBQUNsQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxFQUNMLFFBQVEsRUFBb0Usa0JBQWtCLEVBQy9GLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU5RCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsaUNBQWlDLENBQUM7QUFDekQsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLHdDQUF3QyxDQUFDO0FBQ3RFLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUM7QUFFOUcsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsR0FBRyxFQUFFOztJQUMxQixPQUFBLENBQUEsTUFBQSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sMENBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxFQUFDLENBQUM7UUFDN0MsOEJBQThCLENBQUMsQ0FBQztRQUNoQyxDQUFBLE1BQUEsTUFBTSxDQUFDLFFBQVEs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QUFNLElBQUksR0FBRyxTQUFTLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3JDLGdCQUFnQjtJQUNoQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUN4RSxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJjb25zdCBnZXQgPSByZXF1aXJlKCdsb2Rhc2guZ2V0Jyk7XG5pbXBvcnQgeyBnZXRDb2xvciB9IGZyb20gJ3JhbmRvbS1tYXRlcmlhbC1jb2xvcic7XG5pbXBvcnQge1xuICBOb2RlVHlwZSwgVGVybSwgSlNPTkxELCBJQ3ljbGVKU09OTEQsIElTaXRlSlNPTkxELCBJSW1wYWN0QXNzZXNzbWVudEpTT05MRCwgRW1pc3Npb25NZXRob2RUaWVyLCBJVGVybUpTT05MRFxufSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5pbXBvcnQgeyBmaWxlVG9FeHQgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscy9kaXN0L3Rlcm0nO1xuXG5leHBvcnQgY29uc3QgZ2l0SG9tZSA9ICdodHRwczovL2dpdGxhYi5jb20vaGVzdGlhLWVhcnRoJztcbmV4cG9ydCBjb25zdCBnaXRSYXdCYXNlVXJsID0gJ2h0dHBzOi8vZ2xjZG4uZ2l0aGFjay5jb20vaGVzdGlhLWVhcnRoJztcbmV4cG9ydCBjb25zdCBnaXRCcmFuY2ggPSAoKSA9PiBbJ2RldicsICdzdGFnaW5nJ10uc29tZShlbnYgPT4gYmFzZVVybCgpLmluY2x1ZGVzKGVudikpID8gJ2RldmVsb3AnIDogJ21hc3Rlcic7XG5cbmV4cG9ydCBjb25zdCBpc0Nocm9tZSA9ICgpID0+IHdpbmRvdy5uYXZpZ2F0b3IudXNlckFnZW50LmluY2x1ZGVzKCdDaHJvbWUnKTtcblxuZXhwb3J0IGNvbnN0IGJhc2VVcmwgPSAoKSA9PlxuICB3aW5kb3cubG9jYXRpb24ub3JpZ2luPy5pbmNsdWRlcygnbG9jYWxob3N0JykgP1xuICAgICdodHRwczovL3d3dy1kZXYuaGVzdGlhLmVhcnRoJyA6XG4gICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbj8uaW5jbHVkZXMoJ2hlc3RpYS5lYXJ0aCcpID9cbiAgICAgIHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gOlxuICAgICAgJ2h0dHBzOi8vd3d3Lmhlc3RpYS5lYXJ0aCc7XG5cbmV4cG9ydCBjb25zdCBpc0V4dGVybmFsID0gKCkgPT4gYmFzZVVybCgpICE9PSB3aW5kb3cubG9jYXRpb24ub3JpZ2luO1xuXG5jb25zdCBwYXJzZUVycm9yU3RhdHVzID0gKGVycm9yOiBhbnkpID0+IChlcnJvcj8uc3RhdHVzVGV4dCB8fCAnJykudG9Mb3dlckNhc2UoKS5yZXBsYWNlKC9cXHMvZywgJy0nKTtcblxuY29uc3QgcGFyc2VFcnJvck1lc3NhZ2UgPSAoZXJyb3I6IGFueSkgPT5cbiAgZ2V0KGVycm9yLCAnZXJyb3IuZXJyb3InLCBnZXQoZXJyb3IsICdlcnJvci5tZXNzYWdlJywgZ2V0KGVycm9yLCAnZXJyb3InLCBnZXQoZXJyb3IsICdtZXNzYWdlJywgZXJyb3IpKSkpO1xuXG5leHBvcnQgY29uc3QgaGFuZGxlQVBJRXJyb3IgPSAoZXJyb3I6IGFueSkgPT4ge1xuICB0cnkge1xuICAgIGVycm9yID0gcGFyc2VFcnJvck1lc3NhZ2UoZXJyb3IpO1xuICB9XG4gIGNhdGNoIChfKSB7IH1cbiAgdGhyb3cgZXJyb3I7XG59O1xuXG5leHBvcnQgY29uc3QgZXJyb3JUZXh0ID0gKGVycm9yOiBhbnkpOiBzdHJpbmcgPT4ge1xuICBpZiAodHlwZW9mIGVycm9yID09PSAnc3RyaW5nJykge1xuICAgIHJldHVybiBlcnJvcjtcbiAgfVxuICBjb25zdCBlcnIgPSBwYXJzZUVycm9yTWVzc2FnZShlcnJvcik7XG4gIHJldHVybiBwYXJzZUVycm9yU3RhdHVzKGVycikgfHwgZXJyO1xufTtcblxuZXhwb3J0IGNvbnN0IGZpbHRlclBhcmFtcyA9IChvYmo6IGFueSkgPT4ge1xuICBjb25zdCByZXM6IHtcbiAgICBbeDogc3RyaW5nXTogc3RyaW5nO1xuICB9ID0ge307XG4gIE9iamVjdC5rZXlzKG9iaikuc29ydCgpLmZvckVhY2goa2V5ID0+IHtcbiAgICBjb25zdCB2YWx1ZSA9IG9ialtrZXldO1xuICAgIGlmICh2YWx1ZSAmJiB2YWx1ZSAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIHJlc1trZXldID0gYCR7dmFsdWV9YDtcbiAgICB9XG4gIH0pO1xuICByZXR1cm4gcmVzO1xufTtcblxuZXhwb3J0IGNvbnN0IHdhaXRGb3IgPSAodmFyaWFibGU6IHN0cmluZywgY2FsbGJhY2s6ICgpID0+IHZvaWQpID0+IHtcbiAgaWYgKHZhcmlhYmxlIGluIHdpbmRvdykge1xuICAgIHJldHVybiBjYWxsYmFjaygpO1xuICB9XG4gIHNldFRpbWVvdXQoKCkgPT4gd2FpdEZvcih2YXJpYWJsZSwgY2FsbGJhY2spLCAxMDApO1xufTtcblxuZXhwb3J0IGNvbnN0IGJvdHRvbSA9IChlbGVtZW50OiBIVE1MRWxlbWVudCkgPT4gZWxlbWVudC5vZmZzZXRUb3AgKyBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLmhlaWdodDtcblxuZXhwb3J0IGNvbnN0IGlzU2Nyb2xsZWRCZWxvdyA9IChlbGVtZW50OiBIVE1MRWxlbWVudCkgPT4gZWxlbWVudCA/IHdpbmRvdy5zY3JvbGxZID4gYm90dG9tKGVsZW1lbnQpIDogZmFsc2U7XG5cbmV4cG9ydCBjb25zdCBzY3JvbGxUb0VsID0gKGlkOiBzdHJpbmcsIHJldHJpZXMgPSAwKSA9PiB7XG4gIGNvbnN0IGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoaWQpO1xuICBzZXRUaW1lb3V0KCgpID0+IGVsID8gZWwuc2Nyb2xsSW50b1ZpZXcoKSA6IChyZXRyaWVzIDwgMTAgPyBzY3JvbGxUb0VsKGlkLCByZXRyaWVzICsgMSkgOiBudWxsKSwgMTAwKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzY3JvbGxUb3AgPSAoKSA9PiB3aW5kb3cuc2Nyb2xsVG8oMCwgMCk7XG5cbmV4cG9ydCBjb25zdCBzYWZlSlNPTlBhcnNlID0gPFQ+KHZhbHVlOiBzdHJpbmcsIGRlZmF1bHRWYWx1ZT86IGFueSkgPT4ge1xuICB0cnkge1xuICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gSlNPTi5wYXJzZSh2YWx1ZSkgYXMgVCA6IHZhbHVlO1xuICB9XG4gIGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4gZGVmYXVsdFZhbHVlO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3Qgc2FmZUpTT05TdHJpbmdpZnkgPSAodmFsdWU6IHN0cmluZykgPT4gdHlwZW9mIHZhbHVlID09PSAnc3RyaW5nJyA/IHZhbHVlIDogSlNPTi5zdHJpbmdpZnkodmFsdWUpO1xuXG5leHBvcnQgY29uc3QgYXJyYXlWYWx1ZSA9ICh2YWx1ZXM6IGFueVtdLCBpc0F2ZXJhZ2U6IGJvb2xlYW4pID0+XG4gICh2YWx1ZXMgfHwgW10pLnJlZHVjZSgocHJldjogbnVtYmVyLCBjdXJyKSA9PiBwcmV2ICsgcGFyc2VGbG9hdChgJHtjdXJyfWApLCAwKSAvIChpc0F2ZXJhZ2UgPyB2YWx1ZXMubGVuZ3RoIDogMSk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdyb3VwZWROb2RlPFQ+IHtcbiAgbm9kZXM6IFRbXTtcbiAgaW5kZXg6IG51bWJlcjtcbiAgdmFsdWU6IG51bWJlcltdO1xuICBkYXRlcz86IGFueVtdO1xuICBzZD86IG51bWJlcltdO1xuICBtaW4/OiBudW1iZXJbXTtcbiAgbWF4PzogbnVtYmVyW107XG4gIGlucHV0cz86IGFueVtdO1xuICBkZXB0aFVwcGVyPzogbnVtYmVyW107XG4gIGRlcHRoTG93ZXI/OiBudW1iZXJbXTtcbiAgc3RhcnREYXRlPzogc3RyaW5nW107XG4gIGVuZERhdGU/OiBzdHJpbmdbXTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdyb3VwZWROb2Rlc1ZhbHVlczxUPiB7XG4gIFtub2RlSWQ6IHN0cmluZ106IElHcm91cGVkTm9kZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR3JvdXBlZE5vZGVzVmFsdWU8VD4ge1xuICB0ZXJtOiBJVGVybUpTT05MRDtcbiAgLyoqXG4gICAqIEVuYWJsZSBvcmRlcmluZyBueSBtZXRob2RUaWVyXG4gICAqL1xuICBtZXRob2RUaWVyT3JkZXI6IG51bWJlcjtcbiAgdmFsdWVzOiBJR3JvdXBlZE5vZGVzVmFsdWVzPFQ+O1xuICBvcmlnaW5hbFZhbHVlczoge1xuICAgIFtub2RlSWQ6IHN0cmluZ106IHtcbiAgICAgIHZhbHVlOiBudW1iZXI7XG4gICAgfTtcbiAgfTtcbn07XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUdyb3VwZWROb2RlczxUPiB7XG4gIFt0ZXJtSWQ6IHN0cmluZ106IElHcm91cGVkTm9kZXNWYWx1ZTxUPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJR3JvdXBlZEtleXM8VD4ge1xuICBrZXk6IHN0cmluZztcbiAgdmFsdWU6IElHcm91cGVkTm9kZXNWYWx1ZTxUPjtcbn1cblxuZXhwb3J0IGNvbnN0IGdyb3VwcGVkS2V5cyA9IDxUPih2YWx1ZXM6IElHcm91cGVkTm9kZXM8VD4pOiBJR3JvdXBlZEtleXM8VD5bXSA9PlxuICBPYmplY3QuZW50cmllcyh2YWx1ZXMpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiAoeyBrZXksIHZhbHVlIH0pKTtcblxuY29uc3QgY29uY2F0QmxhbmtOb2RlVmFsdWUgPSAodmFsdWU6IGFueSwgbmV3VmFsdWU6IGFueSkgPT4ge1xuICBjb25zdCB2YWx1ZUFycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV07XG4gIGNvbnN0IG5ld1ZhbHVlQXJyYXkgPSBBcnJheS5pc0FycmF5KG5ld1ZhbHVlKSA/IG5ld1ZhbHVlIDogW25ld1ZhbHVlXTtcbiAgcmV0dXJuIFsuLi52YWx1ZUFycmF5LCAuLi5uZXdWYWx1ZUFycmF5XTtcbn07XG5cbmNvbnN0IG1ldGhvZFRpZXJPcmRlciA9IChtZXRob2RUaWVyOiBFbWlzc2lvbk1ldGhvZFRpZXIpID0+IFtcbiAgRW1pc3Npb25NZXRob2RUaWVyLm1lYXN1cmVkLFxuICBFbWlzc2lvbk1ldGhvZFRpZXJbJ3RpZXIgMyddLFxuICBFbWlzc2lvbk1ldGhvZFRpZXJbJ3RpZXIgMiddLFxuICBFbWlzc2lvbk1ldGhvZFRpZXJbJ3RpZXIgMSddLFxuICBFbWlzc2lvbk1ldGhvZFRpZXIuYmFja2dyb3VuZFxuXS5pbmRleE9mKG1ldGhvZFRpZXIpO1xuXG5jb25zdCBpc01ldGhvZE1vZGVsQWxsb3dlZCA9IChub2RlOiBhbnksIGZpbHRlck1ldGhvZD86IFRlcm0pID0+XG4gICFmaWx0ZXJNZXRob2QgfHwgIW5vZGVbJ21ldGhvZE1vZGVsJ10gfHwgbm9kZVsnbWV0aG9kTW9kZWwnXVsnQGlkJ10gPT09IGZpbHRlck1ldGhvZFsnQGlkJ107XG5cbmV4cG9ydCBjb25zdCBncm91cHBlZFZhbHVlS2V5cyA9IFtcbiAgJ2RhdGVzJywgJ3NkJywgJ21pbicsICdtYXgnLCAnaW5wdXRzJywgJ2RlcHRoVXBwZXInLCAnZGVwdGhMb3dlcicsICdzdGFydERhdGUnLCAnZW5kRGF0ZScsXG4gICdtZXRob2RUaWVyJywgJ21ldGhvZE1vZGVsJ1xuXTtcblxuZXhwb3J0IGNvbnN0IGdyb3VwTm9kZXNCeVRlcm0gPSA8VCBleHRlbmRzIElDeWNsZUpTT05MRCB8IElJbXBhY3RBc3Nlc3NtZW50SlNPTkxEIHwgSVNpdGVKU09OTEQsIFI+KFxuICBub2RlczogVFtdID0gW10sXG4gIGtleTogJ2ltcGFjdHMnIHwgJ2VtaXNzaW9uc1Jlc291cmNlVXNlJyB8ICdpbnB1dHMnIHwgJ3Byb2R1Y3RzJyB8ICdwcmFjdGljZXMnIHwgJ2VtaXNzaW9ucycgfCAnbWVhc3VyZW1lbnRzJyxcbiAgb3JpZ2luYWxWYWx1ZXM6IFRbXSA9IFtdLFxuICBmaWx0ZXJNZXRob2Q/OiBUZXJtXG4pOiBJR3JvdXBlZE5vZGVzPFI+ID0+IHtcbiAgY29uc3QgZ3JvdXBzOiBJR3JvdXBlZE5vZGVzPFI+ID0gbm9kZXMucmVkdWNlKChwcmV2LCBub2RlLCBpbmRleCkgPT4gKG5vZGVba2V5XSB8fCBbXSkucmVkdWNlKChncm91cCwgYmxhbmtOb2RlKSA9PiB7XG4gICAgaWYgKCFpc01ldGhvZE1vZGVsQWxsb3dlZChibGFua05vZGUsIGZpbHRlck1ldGhvZCkpIHtcbiAgICAgIHJldHVybiBncm91cDtcbiAgICB9XG5cbiAgICBjb25zdCBub2RlSWQgPSBub2RlWydAaWQnXTtcbiAgICBjb25zdCB0ZXJtSWQgPSBibGFua05vZGUudGVybVsnQGlkJ107XG4gICAgZ3JvdXBbdGVybUlkXSA9IGdyb3VwW3Rlcm1JZF0gfHwge1xuICAgICAgdGVybTogYmxhbmtOb2RlLnRlcm0sXG4gICAgICBtZXRob2RUaWVyT3JkZXI6IG1ldGhvZFRpZXJPcmRlcihibGFua05vZGUubWV0aG9kVGllciksXG4gICAgICB2YWx1ZXM6IHt9LFxuICAgICAgb3JpZ2luYWxWYWx1ZXM6IHt9XG4gICAgfTtcbiAgICBncm91cFt0ZXJtSWRdLnZhbHVlc1tub2RlSWRdID0gZ3JvdXBbdGVybUlkXS52YWx1ZXNbbm9kZUlkXSB8fCB7IGluZGV4LCBub2RlczogW10sIHZhbHVlOiBbXSB9O1xuICAgIGdyb3VwW3Rlcm1JZF0udmFsdWVzW25vZGVJZF0ubm9kZXMucHVzaChibGFua05vZGUpO1xuICAgIGdyb3VwW3Rlcm1JZF0udmFsdWVzW25vZGVJZF0udmFsdWUgPSBjb25jYXRCbGFua05vZGVWYWx1ZShcbiAgICAgIGdyb3VwW3Rlcm1JZF0udmFsdWVzW25vZGVJZF0udmFsdWUsXG4gICAgICBibGFua05vZGUudmFsdWVcbiAgICApO1xuICAgIGdyb3VwcGVkVmFsdWVLZXlzLmZvckVhY2goYXJyYXlLZXkgPT4ge1xuICAgICAgY29uc3QgbmV3VmFsdWUgPSBnZXQoYmxhbmtOb2RlLCBhcnJheUtleSwgW10pO1xuICAgICAgZ3JvdXBbdGVybUlkXS52YWx1ZXNbbm9kZUlkXVthcnJheUtleV0gPSBbXG4gICAgICAgIC4uLihncm91cFt0ZXJtSWRdLnZhbHVlc1tub2RlSWRdW2FycmF5S2V5XSB8fCBbXSksXG4gICAgICAgIC4uLihBcnJheS5pc0FycmF5KG5ld1ZhbHVlKSA/IG5ld1ZhbHVlIDogW25ld1ZhbHVlXSlcbiAgICAgIF07XG4gICAgfSk7XG4gICAgcmV0dXJuIGdyb3VwO1xuICB9LCBwcmV2KSwge30gYXMgSUdyb3VwZWROb2RlczxSPik7XG5cbiAgLy8gY29tcGlsZSBvcmlnaW5hbCB2YWx1ZXNcbiAgT2JqZWN0LnZhbHVlcyhncm91cHMpLm1hcChncm91cCA9PiB7XG4gICAgT2JqZWN0LmtleXMoZ3JvdXAudmFsdWVzKS5tYXAobm9kZUlkID0+IHtcbiAgICAgIGNvbnN0IHsgaW5kZXggfSA9IGdyb3VwLnZhbHVlc1tub2RlSWRdO1xuICAgICAgY29uc3QgdGVybUlkID0gZ3JvdXAudGVybVsnQGlkJ107XG4gICAgICBjb25zdCBvcmlnaW5hbFZhbHVlID0gZ2V0KG9yaWdpbmFsVmFsdWVzLCBgWyR7aW5kZXh9XS4ke2tleX1gLCBbXSkuZmlsdGVyKCh2YWw6IGFueSkgPT4gdmFsLnRlcm1bJ0BpZCddID09PSB0ZXJtSWQpO1xuICAgICAgaWYgKG9yaWdpbmFsVmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgICBjb25zdCB2YWx1ZSA9IG9yaWdpbmFsVmFsdWUucmVkdWNlKChhcnJheTogYW55W10sIGN1cnI6IGFueSkgPT4gY29uY2F0QmxhbmtOb2RlVmFsdWUoXG4gICAgICAgICAgYXJyYXksXG4gICAgICAgICAgY3Vyci52YWx1ZVxuICAgICAgICApLCBbXSk7XG4gICAgICAgIGdyb3VwLm9yaWdpbmFsVmFsdWVzW25vZGVJZF0gPSB7IHZhbHVlOiBwcm9wZXJ0eVZhbHVlKHZhbHVlLCB0ZXJtSWQpIH07XG4gICAgICB9XG4gICAgfSk7XG4gIH0pO1xuXG4gIHJldHVybiBncm91cHM7XG59O1xuXG5leHBvcnQgY29uc3QgZWxsaXBzaXMgPSAodGV4dCA9ICcnLCBtYXhsZW5ndGggPSAyMCkgPT5cbiAgdGV4dC5sZW5ndGggPiBtYXhsZW5ndGggPyBgJHt0ZXh0LnN1YnN0cmluZygwLCBtYXhsZW5ndGgpfS4uLmAgOiB0ZXh0O1xuXG5jb25zdCBtYXBzUXVlcnkgPSAnaHR0cHM6Ly93d3cuZ29vZ2xlLmNvbS9tYXBzL3NlYXJjaC8/YXBpPTEmcXVlcnk9JztcblxuZXhwb3J0IGNvbnN0IG1hcHNVcmwgPSAobG9jYXRpb24/OiB7IGxhdD86IG51bWJlcjsgbG5nPzogbnVtYmVyOyBuYW1lPzogc3RyaW5nIH0pID0+XG4gIGxvY2F0aW9uID8gKFxuICAgIGxvY2F0aW9uLmxhdCAmJiBsb2NhdGlvbi5sbmcgP1xuICAgICAgYCR7bWFwc1F1ZXJ5fSR7bG9jYXRpb24ubGF0fSwke2xvY2F0aW9uLmxuZ31gIDpcbiAgICAgIChsb2NhdGlvbi5uYW1lID8gYCR7bWFwc1F1ZXJ5fSR7ZW5jb2RlVVJJKGxvY2F0aW9uLm5hbWUpfWAgOiB1bmRlZmluZWQpXG4gICkgOiB1bmRlZmluZWQ7XG5cbmNvbnN0IG5vZGVEZWZhdWx0TGFiZWw6IHtcbiAgW3R5cGUgaW4gTm9kZVR5cGVdPzogKGRhdGE6IEpTT05MRDxhbnk+KSA9PiBzdHJpbmc7XG59ID0ge1xuICBbTm9kZVR5cGUuSW1wYWN0QXNzZXNzbWVudF06ICh7IG5hbWUsIGNvdW50cnksIGVuZERhdGUsIHByb2R1Y3QgfTogSUltcGFjdEFzc2Vzc21lbnRKU09OTEQpID0+XG4gICAgbmFtZSA/IG5hbWUucmVwbGFjZShgJHtwcm9kdWN0Py5uYW1lfSwgYCwgJycpIDogW1xuICAgICAgcHJvZHVjdD8ubmFtZSxcbiAgICAgIGNvdW50cnk/Lm5hbWUsXG4gICAgICBlbmREYXRlXG4gICAgXS5maWx0ZXIoQm9vbGVhbikuam9pbignLCAnKSxcbiAgW05vZGVUeXBlLlNpdGVdOiAoeyBuYW1lLCBkZXNjcmlwdGlvbiB9OiBJU2l0ZUpTT05MRCkgPT4gbmFtZSB8fCBkZXNjcmlwdGlvbiFcbn07XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0TGFiZWwgPSAobm9kZT86IGFueSkgPT5cbiAgbm9kZSA/IChcbiAgICBub2RlWydAdHlwZSddIGluIG5vZGVEZWZhdWx0TGFiZWwgPyBub2RlRGVmYXVsdExhYmVsW25vZGVbJ0B0eXBlJ11dKG5vZGUpIDogbm9kZS5uYW1lXG4gICkgfHwgbm9kZVsnQGlkJ10gfHwgbm9kZS5pZCA6ICcnO1xuXG5leHBvcnQgY29uc3QgaXRlbUNvbG9yID0gKGluZGV4OiBudW1iZXIpID0+IGdldENvbG9yKHsgdGV4dDogYCR7aW5kZXh9YCB9KTtcblxuZXhwb3J0IGNvbnN0IGxpc3RDb2xvciA9IDxUPihfdjogVCwgaW5kZXg6IG51bWJlcik6IHN0cmluZyA9PiBpdGVtQ29sb3IoaW5kZXgpO1xuXG5leHBvcnQgY29uc3QgcmVwZWF0ID0gKHRpbWVzID0gMCkgPT4gKEFycmF5LmZyb20oQXJyYXkodGltZXMpLCBNYXRoLnJhbmRvbSkpO1xuXG5leHBvcnQgY29uc3QgZmlsZW5hbWVXaXRob3V0RXh0ID0gKGZpbGVuYW1lID0gJycpID0+IHtcbiAgY29uc3QgZmlsZSA9IGZpbGVUb0V4dChmaWxlbmFtZSwgJycpO1xuICAvLyByZW1vdmUgbGFzdCAuXG4gIHJldHVybiBmaWxlLmVuZHNXaXRoKCcuJykgPyBmaWxlLnN1YnN0cmluZygwLCBmaWxlLmxlbmd0aCAtIDEpIDogZmlsZTtcbn07XG4iXX0=
@@ -1,6 +1,7 @@
1
1
  import { Component, Input } from '@angular/core';
2
2
  import { DataState } from '@hestia-earth/api';
3
- import { baseUrl, propertyValue, groupNodesByTerm, grouppedKeys, defaultLabel } from '../../common/utils';
3
+ import { propertyValue } from '@hestia-earth/utils/dist/term';
4
+ import { baseUrl, groupNodesByTerm, grouppedKeys, defaultLabel } from '../../common/utils';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@fortawesome/angular-fontawesome";
6
7
  import * as i2 from "../../node/node-link/node-link.component";
@@ -83,4 +84,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
83
84
  }], enableCompare: [{
84
85
  type: Input
85
86
  }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ljbGVzLWFjdGl2aXR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jeWNsZXMvY3ljbGVzLWFjdGl2aXR5L2N5Y2xlcy1hY3Rpdml0eS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1hY3Rpdml0eS9jeWNsZXMtYWN0aXZpdHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUk5QyxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxnQkFBZ0IsRUFBZ0IsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFGeEgsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFJMUMsSUFBSyxJQUdKO0FBSEQsV0FBSyxJQUFJO0lBQ1AsdUJBQWUsQ0FBQTtJQUNmLHFCQUFhLENBQUE7QUFDZixDQUFDLEVBSEksSUFBSSxLQUFKLElBQUksUUFHUjtBQU9ELE1BQU0sT0FBTyx1QkFBdUI7SUFMcEM7UUFPUyxtQkFBYyxHQUFtQixFQUFFLENBQUM7UUFFcEMsV0FBTSxHQUFtQixFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUl4QixrQkFBYSxHQUFHLElBQUksQ0FBQztRQUVyQixZQUFPLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBRyxhQUFhLENBQUM7UUFDOUIsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFDNUIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsU0FBSSxHQUFHLElBQUksQ0FBQztRQUNaLGlCQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUxQixXQUFNLEdBQWdDLEVBQUUsQ0FBQztRQUN6QyxhQUFRLEdBQTRCLEVBQUUsQ0FBQztLQWlDL0M7SUEvQkMsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksUUFBUSxJQUFJLE9BQU8sRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUN0QjtRQUNELElBQUksV0FBVyxJQUFJLE9BQU8sRUFBRTtZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDaEM7SUFDSCxDQUFDO0lBRU0sU0FBUyxDQUFDLE1BQWMsRUFBRSxJQUFrQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQy9DLENBQUM7SUFFTyxNQUFNO1FBQ1osTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQTRCLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEUsTUFBTSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBd0IsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9HLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBWSxFQUFFLE9BQVk7UUFDN0MsT0FBTyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQW1CO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7O3FIQXBEVSx1QkFBdUI7eUdBQXZCLHVCQUF1Qiw2TkNqQnBDLDB3TUErSUE7NEZEOUhhLHVCQUF1QjtrQkFMbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsa0NBQWtDO29CQUMvQyxTQUFTLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztpQkFDaEQ7OEJBR1EsY0FBYztzQkFEcEIsS0FBSztnQkFHQyxNQUFNO3NCQURaLEtBQUs7Z0JBR0MsUUFBUTtzQkFEZCxLQUFLO2dCQUdDLFNBQVM7c0JBRGYsS0FBSztnQkFHQyxhQUFhO3NCQURuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU3RhdGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyBJQ3ljbGVKU09OTEQsIElucHV0IGFzIEhlc3RpYUlucHV0LCBQcm9kdWN0IH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuY29uc3Qgb3JkZXJCeSA9IHJlcXVpcmUoJ2xvZGFzaC5vcmRlcmJ5Jyk7XG5cbmltcG9ydCB7IGJhc2VVcmwsIHByb3BlcnR5VmFsdWUsIGdyb3VwTm9kZXNCeVRlcm0sIElHcm91cGVkS2V5cywgZ3JvdXBwZWRLZXlzLCBkZWZhdWx0TGFiZWwgfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbHMnO1xuXG5lbnVtIFZpZXcge1xuICB0YWJsZSA9ICd0YWJsZScsXG4gIGxvZ3MgPSAnbG9ncydcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtY3ljbGVzLWFjdGl2aXR5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N5Y2xlcy1hY3Rpdml0eS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2N5Y2xlcy1hY3Rpdml0eS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEN5Y2xlc0FjdGl2aXR5Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgcHVibGljIG9yaWdpbmFsVmFsdWVzOiBJQ3ljbGVKU09OTERbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgY3ljbGVzOiBJQ3ljbGVKU09OTERbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWQ6IHN0cmluZ1tdID0gW107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkYXRhU3RhdGU/OiBEYXRhU3RhdGU7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBlbmFibGVDb21wYXJlID0gdHJ1ZTtcblxuICBwdWJsaWMgYmFzZVVybCA9IGJhc2VVcmwoKTtcbiAgcHVibGljIHByb3BlcnR5VmFsdWUgPSBwcm9wZXJ0eVZhbHVlO1xuICBwdWJsaWMgZGVmYXVsdExhYmVsID0gZGVmYXVsdExhYmVsO1xuICBwdWJsaWMgc2hvd0Rvd25sb2FkID0gZmFsc2U7XG4gIHB1YmxpYyBWaWV3ID0gVmlldztcbiAgcHVibGljIHNlbGVjdGVkVmlldyA9IFZpZXcudGFibGU7XG5cbiAgcHVibGljIGlucHV0czogSUdyb3VwZWRLZXlzPEhlc3RpYUlucHV0PltdID0gW107XG4gIHB1YmxpYyBwcm9kdWN0czogSUdyb3VwZWRLZXlzPFByb2R1Y3Q+W10gPSBbXTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCdjeWNsZXMnIGluIGNoYW5nZXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnVwZGF0ZSgpO1xuICAgIH1cbiAgICBpZiAoJ2RhdGFTdGF0ZScgaW4gY2hhbmdlcykge1xuICAgICAgdGhpcy5zZWxlY3RlZFZpZXcgPSBWaWV3LnRhYmxlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0cmFja0J5SWQoX2luZGV4OiBudW1iZXIsIGl0ZW06IElDeWNsZUpTT05MRCkge1xuICAgIHJldHVybiBpdGVtWydAaWQnXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcmlnaW5hbCgpIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhU3RhdGUgPT09IERhdGFTdGF0ZS5vcmlnaW5hbDtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlKCkge1xuICAgIGNvbnN0IGlucHV0c1BlckN5Y2xlID0gZ3JvdXBOb2Rlc0J5VGVybTxJQ3ljbGVKU09OTEQsIEhlc3RpYUlucHV0Pih0aGlzLmN5Y2xlcywgJ2lucHV0cycsIHRoaXMub3JpZ2luYWxWYWx1ZXMpO1xuICAgIHRoaXMuaW5wdXRzID0gb3JkZXJCeShncm91cHBlZEtleXMoaW5wdXRzUGVyQ3ljbGUpLCBbJ2tleSddLCBbJ2FzYyddKTtcbiAgICBjb25zdCBwcm9kdWN0c1BlckN5Y2xlID0gZ3JvdXBOb2Rlc0J5VGVybTxJQ3ljbGVKU09OTEQsIFByb2R1Y3Q+KHRoaXMuY3ljbGVzLCAncHJvZHVjdHMnLCB0aGlzLm9yaWdpbmFsVmFsdWVzKTtcbiAgICB0aGlzLnByb2R1Y3RzID0gb3JkZXJCeShncm91cHBlZEtleXMocHJvZHVjdHNQZXJDeWNsZSksIFsna2V5J10sIFsnYXNjJ10pO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVBvcG92ZXIocG9wb3ZlcjogYW55LCBjb250ZXh0OiBhbnkpIHtcbiAgICByZXR1cm4gcG9wb3Zlci5pc09wZW4oKSA/IHBvcG92ZXIuY2xvc2UoKSA6IHBvcG92ZXIub3Blbihjb250ZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKGN5Y2xlOiBJQ3ljbGVKU09OTEQpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZC5sZW5ndGggPT09IDAgfHwgdGhpcy5zZWxlY3RlZC5pbmNsdWRlcyhjeWNsZVsnQGlkJ10pO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaW5wdXRzLmxlbmd0aCB8fCBwcm9kdWN0cy5sZW5ndGg7IGVsc2UgZW1wdHlUYWJsZVwiPlxuICA8ZGl2IGNsYXNzPVwiY29sdW1ucyBpcy12YXJpYWJsZSBpcy0yIG0tMFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaXMtaGlkZGVuLW1vYmlsZVwiPjwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaXMtbmFycm93XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmllbGQgaGFzLWFkZG9uc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbFwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtc21hbGxcIiBbY2xhc3MuaXMtYWN0aXZlXT1cInNlbGVjdGVkVmlldyA9PT0gVmlldy50YWJsZVwiIChjbGljayk9XCJzZWxlY3RlZFZpZXcgPSBWaWV3LnRhYmxlXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24gaXMtc21hbGxcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cImxpc3RcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3Bhbj5UYWJsZSB2aWV3PC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2xcIiAqbmdJZj1cIiFpc09yaWdpbmFsICYmIGN5Y2xlcy5sZW5ndGggPT09IDFcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLXNtYWxsXCIgW2NsYXNzLmlzLWFjdGl2ZV09XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcubG9nc1wiIChjbGljayk9XCJzZWxlY3RlZFZpZXcgPSBWaWV3LmxvZ3NcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBpcy1zbWFsbFwiPlxuICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwiY2FsY3VsYXRvclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPlJlY2FsY3VsYXRpb25zIGxvZ3M8L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJweC0zIHBiLTNcIiBbY2xhc3MuaXMtaGlkZGVuXT1cInNlbGVjdGVkVmlldyAhPT0gVmlldy50YWJsZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJoYXMtdGV4dC1yaWdodCBtYi0yXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLWRhcmsgaXMtb3V0bGluZWQgaXMtc21hbGxcIiAoY2xpY2spPVwic2hvd0Rvd25sb2FkID0gdHJ1ZVwiPlxuICAgICAgICA8ZmEtaWNvbiBpY29uPVwiZG93bmxvYWRcIj48L2ZhLWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicGwtMlwiPkRvd25sb2FkIChDU1YpPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29udGFpbmVyIGRhdGEtdGFibGUtY29udGFpbmVyIG1iLTFcIj5cbiAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGlzLW5hcnJvdyBkYXRhLXRhYmxlIGhhcy1jaGlsZHJlbi17e2lucHV0cy5sZW5ndGggKyBwcm9kdWN0cy5sZW5ndGh9fVwiPlxuICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIGNsYXNzPVwid2lkdGgtYXV0b1wiPjwvdGg+XG4gICAgICAgICAgICA8dGg+PC90aD5cbiAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgcHJvZHVjdCBvZiBwcm9kdWN0c1wiXG4gICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cInByb2R1Y3QudmFsdWUudGVybS5uYW1lXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGhlLW5vZGUtbGluayBbbm9kZV09XCJwcm9kdWN0LnZhbHVlLnRlcm1cIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57e3Byb2R1Y3QudmFsdWUudGVybS5uYW1lIHwgZWxsaXBzaXM6MzB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9oZS1ub2RlLWxpbms+XG4gICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBpbnB1dCBvZiBpbnB1dHNcIlxuICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJpbnB1dC52YWx1ZS50ZXJtLm5hbWVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aGUtbm9kZS1saW5rIFtub2RlXT1cImlucHV0LnZhbHVlLnRlcm1cIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57e2lucHV0LnZhbHVlLnRlcm0ubmFtZSB8IGVsbGlwc2lzOjMwfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCBjbGFzcz1cIndpZHRoLWF1dG9cIj48L3RoPlxuICAgICAgICAgICAgPHRoPlxuICAgICAgICAgICAgICA8YSBbaHJlZl09XCJiYXNlVXJsICsgJy9zY2hlbWEvQ3ljbGUjZnVuY3Rpb25hbFVuaXQnXCIgdGFyZ2V0PVwiX2JsYW5rXCI+RnVuY3Rpb25hbCB1bml0PC9hPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgcHJvZHVjdCBvZiBwcm9kdWN0c1wiXG4gICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cInByb2R1Y3QudmFsdWUudGVybS51bml0c1wiXG4gICAgICAgICAgICA+e3twcm9kdWN0LnZhbHVlLnRlcm0udW5pdHN9fTwvdGg+XG4gICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGlucHV0IG9mIGlucHV0c1wiXG4gICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImlucHV0LnZhbHVlLnRlcm0udW5pdHNcIlxuICAgICAgICAgICAgPnt7aW5wdXQudmFsdWUudGVybS51bml0c319PC90aD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3RoZWFkPlxuICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY3ljbGUgb2YgY3ljbGVzOyB0cmFja0J5OiB0cmFja0J5SWQ7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDx0ciAqbmdJZj1cImlzU2VsZWN0ZWQoY3ljbGUpXCI+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cIndpZHRoLWF1dG9cIiBbYXR0ci50aXRsZV09XCJkZWZhdWx0TGFiZWwoY3ljbGUpXCI+XG4gICAgICAgICAgICAgICAgPGhlLW5vZGUtbGluayBbbm9kZV09XCJjeWNsZVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1ub3dyYXAgaGFzLXRleHQtZWxsaXBzaXNcIj57e2kgKyAxfX0uIHt7ZGVmYXVsdExhYmVsKGN5Y2xlKX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgPGhlLWN5Y2xlcy1mdW5jdGlvbmFsLXVuaXQtbWVhc3VyZSBbY3ljbGVdPVwiY3ljbGVcIj48L2hlLWN5Y2xlcy1mdW5jdGlvbmFsLXVuaXQtbWVhc3VyZT5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiaXMtbm93cmFwXCIgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgcHJvZHVjdHNcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cInByb2R1Y3QudmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV07IGVsc2UgZW1wdHlWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInRyaWdnZXItcG9wb3ZlclwiXG4gICAgICAgICAgICAgICAgICBbbmdiUG9wb3Zlcl09XCJkZXRhaWxzXCIgW2F1dG9DbG9zZV09XCInb3V0c2lkZSdcIlxuICAgICAgICAgICAgICAgICAgdHJpZ2dlcnM9XCJtYW51YWxcIiAjcD1cIm5nYlBvcG92ZXJcIiBwbGFjZW1lbnQ9XCJsZWZ0XCIgY29udGFpbmVyPVwiYm9keVwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUG9wb3ZlcihwLCB7IGRhdGE6IHByb2R1Y3QudmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV0sIGN5Y2xlOiBjeWNsZSwga2V5OiAncHJvZHVjdHMnIH0pXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBwb2ludGVyPnt7cHJvcGVydHlWYWx1ZShwcm9kdWN0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLnZhbHVlLCBwcm9kdWN0LnZhbHVlLnRlcm1bJ0BpZCddKSB8IHByZWNpc2lvbjozIHwgZGVmYXVsdDonLSd9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxoZS1ibGFuay1ub2RlLXN0YXRlIGNsYXNzPVwibWwtMVwiXG4gICAgICAgICAgICAgICAgICAgIFtub2RlXT1cInByb2R1Y3QudmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV0ubm9kZXNbMF1cIlxuICAgICAgICAgICAgICAgICAgICBrZXk9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICA+PC9oZS1ibGFuay1ub2RlLXN0YXRlPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiaXMtbm93cmFwXCIgKm5nRm9yPVwibGV0IGlucHV0IG9mIGlucHV0c1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiaW5wdXQudmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV07IGVsc2UgZW1wdHlWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInRyaWdnZXItcG9wb3ZlclwiXG4gICAgICAgICAgICAgICAgICBbbmdiUG9wb3Zlcl09XCJkZXRhaWxzXCIgW2F1dG9DbG9zZV09XCInb3V0c2lkZSdcIlxuICAgICAgICAgICAgICAgICAgdHJpZ2dlcnM9XCJtYW51YWxcIiAjcD1cIm5nYlBvcG92ZXJcIiBwbGFjZW1lbnQ9XCJsZWZ0XCIgY29udGFpbmVyPVwiYm9keVwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUG9wb3ZlcihwLCB7IGRhdGE6IGlucHV0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLCBjeWNsZTogY3ljbGUsIGtleTogJ2lucHV0cycgfSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIHBvaW50ZXI+e3twcm9wZXJ0eVZhbHVlKGlucHV0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLnZhbHVlLCBpbnB1dC52YWx1ZS50ZXJtWydAaWQnXSkgfCBwcmVjaXNpb246MyB8IGRlZmF1bHQ6Jy0nfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8aGUtYmxhbmstbm9kZS1zdGF0ZSBjbGFzcz1cIm1sLTFcIlxuICAgICAgICAgICAgICAgICAgICBbbm9kZV09XCJpbnB1dC52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXS5ub2Rlc1swXVwiXG4gICAgICAgICAgICAgICAgICAgIGtleT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgID48L2hlLWJsYW5rLW5vZGUtc3RhdGU+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC90Ym9keT5cbiAgICAgIDwvdGFibGU+XG4gICAgPC9kaXY+XG5cbiAgICA8aGUtYmxhbmstbm9kZS1zdGF0ZS1ub3RpY2UgW2RhdGFTdGF0ZV09XCJkYXRhU3RhdGVcIj48L2hlLWJsYW5rLW5vZGUtc3RhdGUtbm90aWNlPlxuICA8L2Rpdj5cblxuICA8aGUtY3ljbGVzLWFjdGl2aXR5LWxvZ3MgKm5nSWY9XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcubG9ncyAmJiAhaXNPcmlnaW5hbFwiXG4gICAgW29yaWdpbmFsXT1cIm9yaWdpbmFsVmFsdWVzWzBdXCJcbiAgICBbcmVjYWxjdWxhdGVkXT1cImN5Y2xlc1swXVwiXG4gID48L2hlLWN5Y2xlcy1hY3Rpdml0eS1sb2dzPlxuPC9uZy1jb250YWluZXI+XG5cbjxoZS1ub2RlLWNzdi1leHBvcnQtY29uZmlybSAqbmdJZj1cInNob3dEb3dubG9hZFwiXG4gIFtub2Rlc109XCJjeWNsZXNcIiBmaWxlbmFtZT1cImN5Y2xlLWlucHV0cy1wcm9kdWN0cy5jc3ZcIiBbaXNVcGxvYWRdPVwiZmFsc2VcIlxuICBbaGVhZGVyS2V5c109XCJbJ2N5Y2xlLmlkJywgJ2N5Y2xlLkBpZCcsICdjeWNsZS5pbnB1dHMuJywgJ2N5Y2xlLnByb2R1Y3RzLiddXCJcbiAgKGNsb3NlZCk9XCJzaG93RG93bmxvYWQgPSBmYWxzZVwiXG4+PC9oZS1ub2RlLWNzdi1leHBvcnQtY29uZmlybT5cblxuPG5nLXRlbXBsYXRlICNlbXB0eVRhYmxlPlxuICA8ZGl2IGNsYXNzPVwicGFuZWwtYmxvY2tcIj5cbiAgICA8c3Bhbj5ObyBhY3Rpdml0eSBkYXRhPC9zcGFuPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHlWYWx1ZT5cbiAgPHNwYW4+LTwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGV0YWlscyBsZXQtbm9kZT1cImN5Y2xlXCIgbGV0LWRhdGE9XCJkYXRhXCIgbGV0LWtleT1cImtleVwiPlxuICA8cD48Yj57e25vZGUubmFtZX19PC9iPjwvcD5cbiAgPGhlLW5vZGUtdmFsdWUtZGV0YWlsc1xuICAgIFtkYXRhXT1cImRhdGFcIiBbbm9kZVR5cGVdPVwibm9kZVsnQHR5cGUnXVwiIFtkYXRhS2V5XT1cImtleVwiXG4gID48L2hlLW5vZGUtdmFsdWUtZGV0YWlscz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ljbGVzLWFjdGl2aXR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jeWNsZXMvY3ljbGVzLWFjdGl2aXR5L2N5Y2xlcy1hY3Rpdml0eS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1hY3Rpdml0eS9jeWNsZXMtYWN0aXZpdHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUc5QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBZ0IsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7QUFIekcsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFLMUMsSUFBSyxJQUdKO0FBSEQsV0FBSyxJQUFJO0lBQ1AsdUJBQWUsQ0FBQTtJQUNmLHFCQUFhLENBQUE7QUFDZixDQUFDLEVBSEksSUFBSSxLQUFKLElBQUksUUFHUjtBQU9ELE1BQU0sT0FBTyx1QkFBdUI7SUFMcEM7UUFPUyxtQkFBYyxHQUFtQixFQUFFLENBQUM7UUFFcEMsV0FBTSxHQUFtQixFQUFFLENBQUM7UUFFNUIsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUl4QixrQkFBYSxHQUFHLElBQUksQ0FBQztRQUVyQixZQUFPLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDcEIsa0JBQWEsR0FBRyxhQUFhLENBQUM7UUFDOUIsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFDNUIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsU0FBSSxHQUFHLElBQUksQ0FBQztRQUNaLGlCQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUUxQixXQUFNLEdBQWdDLEVBQUUsQ0FBQztRQUN6QyxhQUFRLEdBQTRCLEVBQUUsQ0FBQztLQWlDL0M7SUEvQkMsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksUUFBUSxJQUFJLE9BQU8sRUFBRTtZQUN2QixPQUFPLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztTQUN0QjtRQUNELElBQUksV0FBVyxJQUFJLE9BQU8sRUFBRTtZQUMxQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDaEM7SUFDSCxDQUFDO0lBRU0sU0FBUyxDQUFDLE1BQWMsRUFBRSxJQUFrQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxTQUFTLENBQUMsUUFBUSxDQUFDO0lBQy9DLENBQUM7SUFFTyxNQUFNO1FBQ1osTUFBTSxjQUFjLEdBQUcsZ0JBQWdCLENBQTRCLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUMvRyxJQUFJLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdEUsTUFBTSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBd0IsSUFBSSxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQy9HLElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFTSxhQUFhLENBQUMsT0FBWSxFQUFFLE9BQVk7UUFDN0MsT0FBTyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwRSxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQW1CO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7O3FIQXBEVSx1QkFBdUI7eUdBQXZCLHVCQUF1Qiw2TkNsQnBDLDB3TUErSUE7NEZEN0hhLHVCQUF1QjtrQkFMbkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixXQUFXLEVBQUUsa0NBQWtDO29CQUMvQyxTQUFTLEVBQUUsQ0FBQyxrQ0FBa0MsQ0FBQztpQkFDaEQ7OEJBR1EsY0FBYztzQkFEcEIsS0FBSztnQkFHQyxNQUFNO3NCQURaLEtBQUs7Z0JBR0MsUUFBUTtzQkFEZCxLQUFLO2dCQUdDLFNBQVM7c0JBRGYsS0FBSztnQkFHQyxhQUFhO3NCQURuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU3RhdGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyBJQ3ljbGVKU09OTEQsIElucHV0IGFzIEhlc3RpYUlucHV0LCBQcm9kdWN0IH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuY29uc3Qgb3JkZXJCeSA9IHJlcXVpcmUoJ2xvZGFzaC5vcmRlcmJ5Jyk7XG5pbXBvcnQgeyBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscy9kaXN0L3Rlcm0nO1xuXG5pbXBvcnQgeyBiYXNlVXJsLCBncm91cE5vZGVzQnlUZXJtLCBJR3JvdXBlZEtleXMsIGdyb3VwcGVkS2V5cywgZGVmYXVsdExhYmVsIH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWxzJztcblxuZW51bSBWaWV3IHtcbiAgdGFibGUgPSAndGFibGUnLFxuICBsb2dzID0gJ2xvZ3MnXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hlLWN5Y2xlcy1hY3Rpdml0eScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jeWNsZXMtYWN0aXZpdHkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jeWNsZXMtYWN0aXZpdHkuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDeWNsZXNBY3Rpdml0eUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvcmlnaW5hbFZhbHVlczogSUN5Y2xlSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGN5Y2xlczogSUN5Y2xlSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIHNlbGVjdGVkOiBzdHJpbmdbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGF0YVN0YXRlPzogRGF0YVN0YXRlO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZW5hYmxlQ29tcGFyZSA9IHRydWU7XG5cbiAgcHVibGljIGJhc2VVcmwgPSBiYXNlVXJsKCk7XG4gIHB1YmxpYyBwcm9wZXJ0eVZhbHVlID0gcHJvcGVydHlWYWx1ZTtcbiAgcHVibGljIGRlZmF1bHRMYWJlbCA9IGRlZmF1bHRMYWJlbDtcbiAgcHVibGljIHNob3dEb3dubG9hZCA9IGZhbHNlO1xuICBwdWJsaWMgVmlldyA9IFZpZXc7XG4gIHB1YmxpYyBzZWxlY3RlZFZpZXcgPSBWaWV3LnRhYmxlO1xuXG4gIHB1YmxpYyBpbnB1dHM6IElHcm91cGVkS2V5czxIZXN0aWFJbnB1dD5bXSA9IFtdO1xuICBwdWJsaWMgcHJvZHVjdHM6IElHcm91cGVkS2V5czxQcm9kdWN0PltdID0gW107XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICgnY3ljbGVzJyBpbiBjaGFuZ2VzKSB7XG4gICAgICByZXR1cm4gdGhpcy51cGRhdGUoKTtcbiAgICB9XG4gICAgaWYgKCdkYXRhU3RhdGUnIGluIGNoYW5nZXMpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRWaWV3ID0gVmlldy50YWJsZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgdHJhY2tCeUlkKF9pbmRleDogbnVtYmVyLCBpdGVtOiBJQ3ljbGVKU09OTEQpIHtcbiAgICByZXR1cm4gaXRlbVsnQGlkJ107XG4gIH1cblxuICBwdWJsaWMgZ2V0IGlzT3JpZ2luYWwoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0YVN0YXRlID09PSBEYXRhU3RhdGUub3JpZ2luYWw7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZSgpIHtcbiAgICBjb25zdCBpbnB1dHNQZXJDeWNsZSA9IGdyb3VwTm9kZXNCeVRlcm08SUN5Y2xlSlNPTkxELCBIZXN0aWFJbnB1dD4odGhpcy5jeWNsZXMsICdpbnB1dHMnLCB0aGlzLm9yaWdpbmFsVmFsdWVzKTtcbiAgICB0aGlzLmlucHV0cyA9IG9yZGVyQnkoZ3JvdXBwZWRLZXlzKGlucHV0c1BlckN5Y2xlKSwgWydrZXknXSwgWydhc2MnXSk7XG4gICAgY29uc3QgcHJvZHVjdHNQZXJDeWNsZSA9IGdyb3VwTm9kZXNCeVRlcm08SUN5Y2xlSlNPTkxELCBQcm9kdWN0Pih0aGlzLmN5Y2xlcywgJ3Byb2R1Y3RzJywgdGhpcy5vcmlnaW5hbFZhbHVlcyk7XG4gICAgdGhpcy5wcm9kdWN0cyA9IG9yZGVyQnkoZ3JvdXBwZWRLZXlzKHByb2R1Y3RzUGVyQ3ljbGUpLCBbJ2tleSddLCBbJ2FzYyddKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVQb3BvdmVyKHBvcG92ZXI6IGFueSwgY29udGV4dDogYW55KSB7XG4gICAgcmV0dXJuIHBvcG92ZXIuaXNPcGVuKCkgPyBwb3BvdmVyLmNsb3NlKCkgOiBwb3BvdmVyLm9wZW4oY29udGV4dCk7XG4gIH1cblxuICBwdWJsaWMgaXNTZWxlY3RlZChjeWNsZTogSUN5Y2xlSlNPTkxEKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWQubGVuZ3RoID09PSAwIHx8IHRoaXMuc2VsZWN0ZWQuaW5jbHVkZXMoY3ljbGVbJ0BpZCddKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImlucHV0cy5sZW5ndGggfHwgcHJvZHVjdHMubGVuZ3RoOyBlbHNlIGVtcHR5VGFibGVcIj5cbiAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtdmFyaWFibGUgaXMtMiBtLTBcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLWhpZGRlbi1tb2JpbGVcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLW5hcnJvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGhhcy1hZGRvbnNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2xcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLXNtYWxsXCIgW2NsYXNzLmlzLWFjdGl2ZV09XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcudGFibGVcIiAoY2xpY2spPVwic2VsZWN0ZWRWaWV3ID0gVmlldy50YWJsZVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXNtYWxsXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJsaXN0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+VGFibGUgdmlldzwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sXCIgKm5nSWY9XCIhaXNPcmlnaW5hbCAmJiBjeWNsZXMubGVuZ3RoID09PSAxXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1zbWFsbFwiIFtjbGFzcy5pcy1hY3RpdmVdPVwic2VsZWN0ZWRWaWV3ID09PSBWaWV3LmxvZ3NcIiAoY2xpY2spPVwic2VsZWN0ZWRWaWV3ID0gVmlldy5sb2dzXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24gaXMtc21hbGxcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cImNhbGN1bGF0b3JcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3Bhbj5SZWNhbGN1bGF0aW9ucyBsb2dzPC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwicHgtMyBwYi0zXCIgW2NsYXNzLmlzLWhpZGRlbl09XCJzZWxlY3RlZFZpZXcgIT09IFZpZXcudGFibGVcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaGFzLXRleHQtcmlnaHQgbWItMlwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1kYXJrIGlzLW91dGxpbmVkIGlzLXNtYWxsXCIgKGNsaWNrKT1cInNob3dEb3dubG9hZCA9IHRydWVcIj5cbiAgICAgICAgPGZhLWljb24gaWNvbj1cImRvd25sb2FkXCI+PC9mYS1pY29uPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInBsLTJcIj5Eb3dubG9hZCAoQ1NWKTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lciBkYXRhLXRhYmxlLWNvbnRhaW5lciBtYi0xXCI+XG4gICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSBpcy1uYXJyb3cgZGF0YS10YWJsZSBoYXMtY2hpbGRyZW4te3tpbnB1dHMubGVuZ3RoICsgcHJvZHVjdHMubGVuZ3RofX1cIj5cbiAgICAgICAgPHRoZWFkPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCBjbGFzcz1cIndpZHRoLWF1dG9cIj48L3RoPlxuICAgICAgICAgICAgPHRoPjwvdGg+XG4gICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgcHJvZHVjdHNcIlxuICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJwcm9kdWN0LnZhbHVlLnRlcm0ubmFtZVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxoZS1ub2RlLWxpbmsgW25vZGVdPVwicHJvZHVjdC52YWx1ZS50ZXJtXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3twcm9kdWN0LnZhbHVlLnRlcm0ubmFtZSB8IGVsbGlwc2lzOjMwfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgaW5wdXQgb2YgaW5wdXRzXCJcbiAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiaW5wdXQudmFsdWUudGVybS5uYW1lXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGhlLW5vZGUtbGluayBbbm9kZV09XCJpbnB1dC52YWx1ZS50ZXJtXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3tpbnB1dC52YWx1ZS50ZXJtLm5hbWUgfCBlbGxpcHNpczozMH19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2hlLW5vZGUtbGluaz5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggY2xhc3M9XCJ3aWR0aC1hdXRvXCI+PC90aD5cbiAgICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgICAgPGEgW2hyZWZdPVwiYmFzZVVybCArICcvc2NoZW1hL0N5Y2xlI2Z1bmN0aW9uYWxVbml0J1wiIHRhcmdldD1cIl9ibGFua1wiPkZ1bmN0aW9uYWwgdW5pdDwvYT5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgcHJvZHVjdHNcIlxuICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJwcm9kdWN0LnZhbHVlLnRlcm0udW5pdHNcIlxuICAgICAgICAgICAgPnt7cHJvZHVjdC52YWx1ZS50ZXJtLnVuaXRzfX08L3RoPlxuICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBpbnB1dCBvZiBpbnB1dHNcIlxuICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJpbnB1dC52YWx1ZS50ZXJtLnVuaXRzXCJcbiAgICAgICAgICAgID57e2lucHV0LnZhbHVlLnRlcm0udW5pdHN9fTwvdGg+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90aGVhZD5cbiAgICAgICAgPHRib2R5PlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGN5Y2xlIG9mIGN5Y2xlczsgdHJhY2tCeTogdHJhY2tCeUlkOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICA8dHIgKm5nSWY9XCJpc1NlbGVjdGVkKGN5Y2xlKVwiPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ3aWR0aC1hdXRvXCIgW2F0dHIudGl0bGVdPVwiZGVmYXVsdExhYmVsKGN5Y2xlKVwiPlxuICAgICAgICAgICAgICAgIDxoZS1ub2RlLWxpbmsgW25vZGVdPVwiY3ljbGVcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXMtbm93cmFwIGhhcy10ZXh0LWVsbGlwc2lzXCI+e3tpICsgMX19LiB7e2RlZmF1bHRMYWJlbChjeWNsZSl9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2hlLW5vZGUtbGluaz5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgIDxoZS1jeWNsZXMtZnVuY3Rpb25hbC11bml0LW1lYXN1cmUgW2N5Y2xlXT1cImN5Y2xlXCI+PC9oZS1jeWNsZXMtZnVuY3Rpb25hbC11bml0LW1lYXN1cmU+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImlzLW5vd3JhcFwiICpuZ0Zvcj1cImxldCBwcm9kdWN0IG9mIHByb2R1Y3RzXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJwcm9kdWN0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dOyBlbHNlIGVtcHR5VmFsdWVcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmlnZ2VyLXBvcG92ZXJcIlxuICAgICAgICAgICAgICAgICAgW25nYlBvcG92ZXJdPVwiZGV0YWlsc1wiIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCJcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXJzPVwibWFudWFsXCIgI3A9XCJuZ2JQb3BvdmVyXCIgcGxhY2VtZW50PVwibGVmdFwiIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVBvcG92ZXIocCwgeyBkYXRhOiBwcm9kdWN0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLCBjeWNsZTogY3ljbGUsIGtleTogJ3Byb2R1Y3RzJyB9KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gcG9pbnRlcj57e3Byb3BlcnR5VmFsdWUocHJvZHVjdC52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXS52YWx1ZSwgcHJvZHVjdC52YWx1ZS50ZXJtWydAaWQnXSkgfCBwcmVjaXNpb246MyB8IGRlZmF1bHQ6Jy0nfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8aGUtYmxhbmstbm9kZS1zdGF0ZSBjbGFzcz1cIm1sLTFcIlxuICAgICAgICAgICAgICAgICAgICBbbm9kZV09XCJwcm9kdWN0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLm5vZGVzWzBdXCJcbiAgICAgICAgICAgICAgICAgICAga2V5PVwidmFsdWVcIlxuICAgICAgICAgICAgICAgICAgPjwvaGUtYmxhbmstbm9kZS1zdGF0ZT5cbiAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImlzLW5vd3JhcFwiICpuZ0Zvcj1cImxldCBpbnB1dCBvZiBpbnB1dHNcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImlucHV0LnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dOyBlbHNlIGVtcHR5VmFsdWVcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmlnZ2VyLXBvcG92ZXJcIlxuICAgICAgICAgICAgICAgICAgW25nYlBvcG92ZXJdPVwiZGV0YWlsc1wiIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCJcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXJzPVwibWFudWFsXCIgI3A9XCJuZ2JQb3BvdmVyXCIgcGxhY2VtZW50PVwibGVmdFwiIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVBvcG92ZXIocCwgeyBkYXRhOiBpbnB1dC52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXSwgY3ljbGU6IGN5Y2xlLCBrZXk6ICdpbnB1dHMnIH0pXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBwb2ludGVyPnt7cHJvcGVydHlWYWx1ZShpbnB1dC52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXS52YWx1ZSwgaW5wdXQudmFsdWUudGVybVsnQGlkJ10pIHwgcHJlY2lzaW9uOjMgfCBkZWZhdWx0OictJ319PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPGhlLWJsYW5rLW5vZGUtc3RhdGUgY2xhc3M9XCJtbC0xXCJcbiAgICAgICAgICAgICAgICAgICAgW25vZGVdPVwiaW5wdXQudmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV0ubm9kZXNbMF1cIlxuICAgICAgICAgICAgICAgICAgICBrZXk9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICA+PC9oZS1ibGFuay1ub2RlLXN0YXRlPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L3RhYmxlPlxuICAgIDwvZGl2PlxuXG4gICAgPGhlLWJsYW5rLW5vZGUtc3RhdGUtbm90aWNlIFtkYXRhU3RhdGVdPVwiZGF0YVN0YXRlXCI+PC9oZS1ibGFuay1ub2RlLXN0YXRlLW5vdGljZT5cbiAgPC9kaXY+XG5cbiAgPGhlLWN5Y2xlcy1hY3Rpdml0eS1sb2dzICpuZ0lmPVwic2VsZWN0ZWRWaWV3ID09PSBWaWV3LmxvZ3MgJiYgIWlzT3JpZ2luYWxcIlxuICAgIFtvcmlnaW5hbF09XCJvcmlnaW5hbFZhbHVlc1swXVwiXG4gICAgW3JlY2FsY3VsYXRlZF09XCJjeWNsZXNbMF1cIlxuICA+PC9oZS1jeWNsZXMtYWN0aXZpdHktbG9ncz5cbjwvbmctY29udGFpbmVyPlxuXG48aGUtbm9kZS1jc3YtZXhwb3J0LWNvbmZpcm0gKm5nSWY9XCJzaG93RG93bmxvYWRcIlxuICBbbm9kZXNdPVwiY3ljbGVzXCIgZmlsZW5hbWU9XCJjeWNsZS1pbnB1dHMtcHJvZHVjdHMuY3N2XCIgW2lzVXBsb2FkXT1cImZhbHNlXCJcbiAgW2hlYWRlcktleXNdPVwiWydjeWNsZS5pZCcsICdjeWNsZS5AaWQnLCAnY3ljbGUuaW5wdXRzLicsICdjeWNsZS5wcm9kdWN0cy4nXVwiXG4gIChjbG9zZWQpPVwic2hvd0Rvd25sb2FkID0gZmFsc2VcIlxuPjwvaGUtbm9kZS1jc3YtZXhwb3J0LWNvbmZpcm0+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHlUYWJsZT5cbiAgPGRpdiBjbGFzcz1cInBhbmVsLWJsb2NrXCI+XG4gICAgPHNwYW4+Tm8gYWN0aXZpdHkgZGF0YTwvc3Bhbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2VtcHR5VmFsdWU+XG4gIDxzcGFuPi08L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RldGFpbHMgbGV0LW5vZGU9XCJjeWNsZVwiIGxldC1kYXRhPVwiZGF0YVwiIGxldC1rZXk9XCJrZXlcIj5cbiAgPHA+PGI+e3tub2RlLm5hbWV9fTwvYj48L3A+XG4gIDxoZS1ub2RlLXZhbHVlLWRldGFpbHNcbiAgICBbZGF0YV09XCJkYXRhXCIgW25vZGVUeXBlXT1cIm5vZGVbJ0B0eXBlJ11cIiBbZGF0YUtleV09XCJrZXlcIlxuICA+PC9oZS1ub2RlLXZhbHVlLWRldGFpbHM+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -1,5 +1,6 @@
1
1
  import { Component, Input } from '@angular/core';
2
- import { defaultLabel, keyToLabel } from '../../common/utils';
2
+ import { keyToLabel } from '@hestia-earth/utils';
3
+ import { defaultLabel } from '../../common/utils';
3
4
  import { baseUrl } from '../../common/utils';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "../../node/node-link/node-link.component";
@@ -7,7 +8,7 @@ import * as i2 from "../../common/blank-node-state/blank-node-state.component";
7
8
  import * as i3 from "../../common/blank-node-state-notice/blank-node-state-notice.component";
8
9
  import * as i4 from "@angular/common";
9
10
  const ignoreKeys = [
10
- '@type', 'added', 'updated', 'addedVersion', 'updatedVersion'
11
+ '@type', 'type', 'added', 'updated', 'addedVersion', 'updatedVersion'
11
12
  ];
12
13
  export class CyclesCompletenessComponent {
13
14
  constructor() {
@@ -44,4 +45,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
44
45
  }], dataState: [{
45
46
  type: Input
46
47
  }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ljbGVzLWNvbXBsZXRlbmVzcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1jb21wbGV0ZW5lc3MvY3ljbGVzLWNvbXBsZXRlbmVzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1jb21wbGV0ZW5lc3MvY3ljbGVzLWNvbXBsZXRlbmVzcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBRTdDLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxnQkFBZ0I7Q0FDOUQsQ0FBQztBQU9GLE1BQU0sT0FBTywyQkFBMkI7SUFMeEM7UUFPUyxXQUFNLEdBQW1CLEVBQUUsQ0FBQztRQUUzQixhQUFRLEdBQWEsRUFBRSxDQUFDO1FBSXpCLFlBQU8sR0FBRyxPQUFPLEVBQUUsQ0FBQztRQUNwQixpQkFBWSxHQUFHLFlBQVksQ0FBQztRQUM1QixlQUFVLEdBQUcsVUFBVSxDQUFDO0tBY2hDO0lBWlEsU0FBUyxDQUFDLE1BQWMsRUFBRSxJQUFrQjtRQUNqRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxnQkFBZ0I7UUFDekIsTUFBTSxDQUFDLEtBQUssQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDNUIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLGdCQUFnQixLQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3BHLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBbUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7eUhBdkJVLDJCQUEyQjs2R0FBM0IsMkJBQTJCLDBJQ2hCeEMsa3BEQXVDQTs0RkR2QmEsMkJBQTJCO2tCQUx2QyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFdBQVcsRUFBRSxzQ0FBc0M7b0JBQ25ELFNBQVMsRUFBRSxDQUFDLHNDQUFzQyxDQUFDO2lCQUNwRDs4QkFHUSxNQUFNO3NCQURaLEtBQUs7Z0JBR0UsUUFBUTtzQkFEZixLQUFLO2dCQUdDLFNBQVM7c0JBRGYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERhdGFTdGF0ZSB9IGZyb20gJ0BoZXN0aWEtZWFydGgvYXBpJztcbmltcG9ydCB7IElDeWNsZUpTT05MRCB9IGZyb20gJ0BoZXN0aWEtZWFydGgvc2NoZW1hJztcblxuaW1wb3J0IHsgZGVmYXVsdExhYmVsLCBrZXlUb0xhYmVsIH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWxzJztcbmltcG9ydCB7IGJhc2VVcmwgfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbHMnO1xuXG5jb25zdCBpZ25vcmVLZXlzID0gW1xuICAnQHR5cGUnLCAnYWRkZWQnLCAndXBkYXRlZCcsICdhZGRlZFZlcnNpb24nLCAndXBkYXRlZFZlcnNpb24nXG5dO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1jeWNsZXMtY29tcGxldGVuZXNzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N5Y2xlcy1jb21wbGV0ZW5lc3MuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jeWNsZXMtY29tcGxldGVuZXNzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3ljbGVzQ29tcGxldGVuZXNzQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIGN5Y2xlczogSUN5Y2xlSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZWxlY3RlZDogc3RyaW5nW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGRhdGFTdGF0ZT86IERhdGFTdGF0ZTtcblxuICBwdWJsaWMgYmFzZVVybCA9IGJhc2VVcmwoKTtcbiAgcHVibGljIGRlZmF1bHRMYWJlbCA9IGRlZmF1bHRMYWJlbDtcbiAgcHVibGljIGtleVRvTGFiZWwgPSBrZXlUb0xhYmVsO1xuXG4gIHB1YmxpYyB0cmFja0J5SWQoX2luZGV4OiBudW1iZXIsIGl0ZW06IElDeWNsZUpTT05MRCkge1xuICAgIHJldHVybiBpdGVtWydAaWQnXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29tcGxldGVuZXNzS2V5cygpIHtcbiAgICBjb25zdCBbY3ljbGVdID0gdGhpcy5jeWNsZXM7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGN5Y2xlPy5kYXRhQ29tcGxldGVuZXNzIHx8IHt9KS5maWx0ZXIoa2V5ID0+ICFpZ25vcmVLZXlzLmluY2x1ZGVzKGtleSkpLnNvcnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKGN5Y2xlOiBJQ3ljbGVKU09OTEQpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZC5sZW5ndGggPT09IDAgfHwgdGhpcy5zZWxlY3RlZC5pbmNsdWRlcyhjeWNsZVsnQGlkJ10pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicC0zXCIgKm5nSWY9XCJjeWNsZXMubGVuZ3RoOyBlbHNlIGVtcHR5VGFibGVcIj5cbiAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lciBkYXRhLXRhYmxlLWNvbnRhaW5lciBtYi0xXCI+XG4gICAgPHRhYmxlIGNsYXNzPVwidGFibGUgaXMtbmFycm93IGRhdGEtdGFibGUgaGFzLWNoaWxkcmVuLXt7Y3ljbGVzLmxlbmd0aH19XCI+XG4gICAgICA8dGhlYWQ+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGggY2xhc3M9XCJ3aWR0aC1hdXRvXCI+PC90aD5cbiAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbXBsZXRlbmVzcyBvZiBjb21wbGV0ZW5lc3NLZXlzXCJcbiAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImNvbXBsZXRlbmVzc1wiXG4gICAgICAgICAgPjxhIFtocmVmXT1cImJhc2VVcmwgKyAnL3NjaGVtYS9Db21wbGV0ZW5lc3MjJyArIGNvbXBsZXRlbmVzc1wiIHRhcmdldD1cIl9ibGFua1wiPnt7a2V5VG9MYWJlbChjb21wbGV0ZW5lc3MpfX08L2E+PC90aD5cbiAgICAgICAgPC90cj5cbiAgICAgIDwvdGhlYWQ+XG4gICAgICA8dGJvZHk+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGN5Y2xlIG9mIGN5Y2xlczsgdHJhY2tCeTogdHJhY2tCeUlkOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgPHRyICpuZ0lmPVwiaXNTZWxlY3RlZChjeWNsZSlcIj5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIndpZHRoLWF1dG9cIiBbYXR0ci50aXRsZV09XCJkZWZhdWx0TGFiZWwoY3ljbGUpXCI+XG4gICAgICAgICAgICAgIDxoZS1ub2RlLWxpbmsgW25vZGVdPVwiY3ljbGVcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImlzLW5vd3JhcCBoYXMtdGV4dC1lbGxpcHNpc1wiPnt7aSArIDF9fS4ge3tkZWZhdWx0TGFiZWwoY3ljbGUpfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cImlzLW5vd3JhcFwiICpuZ0Zvcj1cImxldCBjb21wbGV0ZW5lc3Mgb2YgY29tcGxldGVuZXNzS2V5c1wiPlxuICAgICAgICAgICAgICA8c3Bhbj57e2N5Y2xlLmRhdGFDb21wbGV0ZW5lc3NbY29tcGxldGVuZXNzXSA/ICdDb21wbGV0ZScgOiAnSW5jb21wbGV0ZSd9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPGhlLWJsYW5rLW5vZGUtc3RhdGUgY2xhc3M9XCJtbC0xXCJcbiAgICAgICAgICAgICAgICBbbm9kZV09XCJjeWNsZS5kYXRhQ29tcGxldGVuZXNzXCJcbiAgICAgICAgICAgICAgICBba2V5XT1cImNvbXBsZXRlbmVzc1wiXG4gICAgICAgICAgICAgID48L2hlLWJsYW5rLW5vZGUtc3RhdGU+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC90Ym9keT5cbiAgICA8L3RhYmxlPlxuICA8L2Rpdj5cbiAgPGhlLWJsYW5rLW5vZGUtc3RhdGUtbm90aWNlIFtkYXRhU3RhdGVdPVwiZGF0YVN0YXRlXCIgW3Nob3dBZ2dyZWdhdGVkXT1cImZhbHNlXCI+PC9oZS1ibGFuay1ub2RlLXN0YXRlLW5vdGljZT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2VtcHR5VGFibGU+XG4gIDxkaXYgY2xhc3M9XCJwYW5lbC1ibG9ja1wiPlxuICAgIDxzcGFuPk5vIGNvbXBsZXRlbmVzcyBkYXRhPC9zcGFuPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ljbGVzLWNvbXBsZXRlbmVzcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1jb21wbGV0ZW5lc3MvY3ljbGVzLWNvbXBsZXRlbmVzcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1jb21wbGV0ZW5lc3MvY3ljbGVzLWNvbXBsZXRlbmVzcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7O0FBRTdDLE1BQU0sVUFBVSxHQUFHO0lBQ2pCLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCO0NBQ3RFLENBQUM7QUFPRixNQUFNLE9BQU8sMkJBQTJCO0lBTHhDO1FBT1MsV0FBTSxHQUFtQixFQUFFLENBQUM7UUFFM0IsYUFBUSxHQUFhLEVBQUUsQ0FBQztRQUl6QixZQUFPLEdBQUcsT0FBTyxFQUFFLENBQUM7UUFDcEIsaUJBQVksR0FBRyxZQUFZLENBQUM7UUFDNUIsZUFBVSxHQUFHLFVBQVUsQ0FBQztLQWNoQztJQVpRLFNBQVMsQ0FBQyxNQUFjLEVBQUUsSUFBa0I7UUFDakQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzVCLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxnQkFBZ0IsS0FBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwRyxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQW1CO1FBQ25DLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7O3lIQXZCVSwyQkFBMkI7NkdBQTNCLDJCQUEyQiwwSUNqQnhDLGtwREF1Q0E7NEZEdEJhLDJCQUEyQjtrQkFMdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxXQUFXLEVBQUUsc0NBQXNDO29CQUNuRCxTQUFTLEVBQUUsQ0FBQyxzQ0FBc0MsQ0FBQztpQkFDcEQ7OEJBR1EsTUFBTTtzQkFEWixLQUFLO2dCQUdFLFFBQVE7c0JBRGYsS0FBSztnQkFHQyxTQUFTO3NCQURmLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU3RhdGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyBJQ3ljbGVKU09OTEQgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5pbXBvcnQgeyBrZXlUb0xhYmVsIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscyc7XG5cbmltcG9ydCB7IGRlZmF1bHRMYWJlbCB9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlscyc7XG5pbXBvcnQgeyBiYXNlVXJsIH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWxzJztcblxuY29uc3QgaWdub3JlS2V5cyA9IFtcbiAgJ0B0eXBlJywgJ3R5cGUnLCAnYWRkZWQnLCAndXBkYXRlZCcsICdhZGRlZFZlcnNpb24nLCAndXBkYXRlZFZlcnNpb24nXG5dO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1jeWNsZXMtY29tcGxldGVuZXNzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N5Y2xlcy1jb21wbGV0ZW5lc3MuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jeWNsZXMtY29tcGxldGVuZXNzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3ljbGVzQ29tcGxldGVuZXNzQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIGN5Y2xlczogSUN5Y2xlSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBzZWxlY3RlZDogc3RyaW5nW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGRhdGFTdGF0ZT86IERhdGFTdGF0ZTtcblxuICBwdWJsaWMgYmFzZVVybCA9IGJhc2VVcmwoKTtcbiAgcHVibGljIGRlZmF1bHRMYWJlbCA9IGRlZmF1bHRMYWJlbDtcbiAgcHVibGljIGtleVRvTGFiZWwgPSBrZXlUb0xhYmVsO1xuXG4gIHB1YmxpYyB0cmFja0J5SWQoX2luZGV4OiBudW1iZXIsIGl0ZW06IElDeWNsZUpTT05MRCkge1xuICAgIHJldHVybiBpdGVtWydAaWQnXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY29tcGxldGVuZXNzS2V5cygpIHtcbiAgICBjb25zdCBbY3ljbGVdID0gdGhpcy5jeWNsZXM7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKGN5Y2xlPy5kYXRhQ29tcGxldGVuZXNzIHx8IHt9KS5maWx0ZXIoa2V5ID0+ICFpZ25vcmVLZXlzLmluY2x1ZGVzKGtleSkpLnNvcnQoKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKGN5Y2xlOiBJQ3ljbGVKU09OTEQpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZC5sZW5ndGggPT09IDAgfHwgdGhpcy5zZWxlY3RlZC5pbmNsdWRlcyhjeWNsZVsnQGlkJ10pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicC0zXCIgKm5nSWY9XCJjeWNsZXMubGVuZ3RoOyBlbHNlIGVtcHR5VGFibGVcIj5cbiAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lciBkYXRhLXRhYmxlLWNvbnRhaW5lciBtYi0xXCI+XG4gICAgPHRhYmxlIGNsYXNzPVwidGFibGUgaXMtbmFycm93IGRhdGEtdGFibGUgaGFzLWNoaWxkcmVuLXt7Y3ljbGVzLmxlbmd0aH19XCI+XG4gICAgICA8dGhlYWQ+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGggY2xhc3M9XCJ3aWR0aC1hdXRvXCI+PC90aD5cbiAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGNvbXBsZXRlbmVzcyBvZiBjb21wbGV0ZW5lc3NLZXlzXCJcbiAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImNvbXBsZXRlbmVzc1wiXG4gICAgICAgICAgPjxhIFtocmVmXT1cImJhc2VVcmwgKyAnL3NjaGVtYS9Db21wbGV0ZW5lc3MjJyArIGNvbXBsZXRlbmVzc1wiIHRhcmdldD1cIl9ibGFua1wiPnt7a2V5VG9MYWJlbChjb21wbGV0ZW5lc3MpfX08L2E+PC90aD5cbiAgICAgICAgPC90cj5cbiAgICAgIDwvdGhlYWQ+XG4gICAgICA8dGJvZHk+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGN5Y2xlIG9mIGN5Y2xlczsgdHJhY2tCeTogdHJhY2tCeUlkOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgPHRyICpuZ0lmPVwiaXNTZWxlY3RlZChjeWNsZSlcIj5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIndpZHRoLWF1dG9cIiBbYXR0ci50aXRsZV09XCJkZWZhdWx0TGFiZWwoY3ljbGUpXCI+XG4gICAgICAgICAgICAgIDxoZS1ub2RlLWxpbmsgW25vZGVdPVwiY3ljbGVcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImlzLW5vd3JhcCBoYXMtdGV4dC1lbGxpcHNpc1wiPnt7aSArIDF9fS4ge3tkZWZhdWx0TGFiZWwoY3ljbGUpfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cImlzLW5vd3JhcFwiICpuZ0Zvcj1cImxldCBjb21wbGV0ZW5lc3Mgb2YgY29tcGxldGVuZXNzS2V5c1wiPlxuICAgICAgICAgICAgICA8c3Bhbj57e2N5Y2xlLmRhdGFDb21wbGV0ZW5lc3NbY29tcGxldGVuZXNzXSA/ICdDb21wbGV0ZScgOiAnSW5jb21wbGV0ZSd9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPGhlLWJsYW5rLW5vZGUtc3RhdGUgY2xhc3M9XCJtbC0xXCJcbiAgICAgICAgICAgICAgICBbbm9kZV09XCJjeWNsZS5kYXRhQ29tcGxldGVuZXNzXCJcbiAgICAgICAgICAgICAgICBba2V5XT1cImNvbXBsZXRlbmVzc1wiXG4gICAgICAgICAgICAgID48L2hlLWJsYW5rLW5vZGUtc3RhdGU+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC90Ym9keT5cbiAgICA8L3RhYmxlPlxuICA8L2Rpdj5cbiAgPGhlLWJsYW5rLW5vZGUtc3RhdGUtbm90aWNlIFtkYXRhU3RhdGVdPVwiZGF0YVN0YXRlXCIgW3Nob3dBZ2dyZWdhdGVkXT1cImZhbHNlXCI+PC9oZS1ibGFuay1ub2RlLXN0YXRlLW5vdGljZT5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2VtcHR5VGFibGU+XG4gIDxkaXYgY2xhc3M9XCJwYW5lbC1ibG9ja1wiPlxuICAgIDxzcGFuPk5vIGNvbXBsZXRlbmVzcyBkYXRhPC9zcGFuPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -1,6 +1,7 @@
1
1
  import { Component, Input } from '@angular/core';
2
2
  import { DataState } from '@hestia-earth/api';
3
- import { baseUrl, propertyValue, groupNodesByTerm, grouppedKeys, defaultLabel } from '../../common/utils';
3
+ import { propertyValue } from '@hestia-earth/utils/dist/term';
4
+ import { baseUrl, groupNodesByTerm, grouppedKeys, defaultLabel } from '../../common/utils';
4
5
  import * as i0 from "@angular/core";
5
6
  import * as i1 from "@fortawesome/angular-fontawesome";
6
7
  import * as i2 from "../../node/node-link/node-link.component";
@@ -79,4 +80,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
79
80
  }], dataState: [{
80
81
  type: Input
81
82
  }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1lbWlzc2lvbnMvY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1lbWlzc2lvbnMvY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBSTlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFnQixZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFGeEgsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFJMUMsSUFBSyxJQUlKO0FBSkQsV0FBSyxJQUFJO0lBQ1AsdUJBQWUsQ0FBQTtJQUNmLHVCQUFlLENBQUE7SUFDZixxQkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpJLElBQUksS0FBSixJQUFJLFFBSVI7QUFPRCxNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBT1MsbUJBQWMsR0FBbUIsRUFBRSxDQUFDO1FBRXBDLFdBQU0sR0FBbUIsRUFBRSxDQUFDO1FBRTVCLGFBQVEsR0FBYSxFQUFFLENBQUM7UUFJeEIsWUFBTyxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLGtCQUFhLEdBQUcsYUFBYSxDQUFDO1FBQzlCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO1FBQzVCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLFNBQUksR0FBRyxJQUFJLENBQUM7UUFDWixpQkFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFMUIsY0FBUyxHQUE2QixFQUFFLENBQUM7S0ErQmpEO0lBN0JDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLFFBQVEsSUFBSSxPQUFPLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDdEI7UUFDRCxJQUFJLFdBQVcsSUFBSSxPQUFPLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFjLEVBQUUsSUFBa0I7UUFDakQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUMvQyxDQUFDO0lBRU8sTUFBTTtRQUNaLE1BQU0saUJBQWlCLEdBQUcsZ0JBQWdCLENBQXlCLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsSCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUcsQ0FBQztJQUVNLGFBQWEsQ0FBQyxPQUFZLEVBQUUsT0FBWTtRQUM3QyxPQUFPLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBbUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7c0hBL0NVLHdCQUF3QjswR0FBeEIsd0JBQXdCLDhMQ2xCckMsd2tMQW9JQTs0RkRsSGEsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFdBQVcsRUFBRSxtQ0FBbUM7b0JBQ2hELFNBQVMsRUFBRSxDQUFDLG1DQUFtQyxDQUFDO2lCQUNqRDs4QkFHUSxjQUFjO3NCQURwQixLQUFLO2dCQUdDLE1BQU07c0JBRFosS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU3RhdGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyBJQ3ljbGVKU09OTEQsIEVtaXNzaW9uIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuY29uc3Qgb3JkZXJCeSA9IHJlcXVpcmUoJ2xvZGFzaC5vcmRlcmJ5Jyk7XG5cbmltcG9ydCB7IGJhc2VVcmwsIHByb3BlcnR5VmFsdWUsIGdyb3VwTm9kZXNCeVRlcm0sIElHcm91cGVkS2V5cywgZ3JvdXBwZWRLZXlzLCBkZWZhdWx0TGFiZWwgfSBmcm9tICcuLi8uLi9jb21tb24vdXRpbHMnO1xuXG5lbnVtIFZpZXcge1xuICB0YWJsZSA9ICd0YWJsZScsXG4gIGNoYXJ0ID0gJ2NoYXJ0JyxcbiAgbG9ncyA9ICdsb2dzJ1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZS1jeWNsZXMtZW1pc3Npb25zJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2N5Y2xlcy1lbWlzc2lvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jeWNsZXMtZW1pc3Npb25zLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ3ljbGVzRW1pc3Npb25zQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KClcbiAgcHVibGljIG9yaWdpbmFsVmFsdWVzOiBJQ3ljbGVKU09OTERbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgY3ljbGVzOiBJQ3ljbGVKU09OTERbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2VsZWN0ZWQ6IHN0cmluZ1tdID0gW107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBkYXRhU3RhdGU/OiBEYXRhU3RhdGU7XG5cbiAgcHVibGljIGJhc2VVcmwgPSBiYXNlVXJsKCk7XG4gIHB1YmxpYyBwcm9wZXJ0eVZhbHVlID0gcHJvcGVydHlWYWx1ZTtcbiAgcHVibGljIGRlZmF1bHRMYWJlbCA9IGRlZmF1bHRMYWJlbDtcbiAgcHVibGljIHNob3dEb3dubG9hZCA9IGZhbHNlO1xuICBwdWJsaWMgVmlldyA9IFZpZXc7XG4gIHB1YmxpYyBzZWxlY3RlZFZpZXcgPSBWaWV3LnRhYmxlO1xuXG4gIHB1YmxpYyBlbWlzc2lvbnM6IElHcm91cGVkS2V5czxFbWlzc2lvbj5bXSA9IFtdO1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoJ2N5Y2xlcycgaW4gY2hhbmdlcykge1xuICAgICAgcmV0dXJuIHRoaXMudXBkYXRlKCk7XG4gICAgfVxuICAgIGlmICgnZGF0YVN0YXRlJyBpbiBjaGFuZ2VzKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkVmlldyA9IFZpZXcudGFibGU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHRyYWNrQnlJZChfaW5kZXg6IG51bWJlciwgaXRlbTogSUN5Y2xlSlNPTkxEKSB7XG4gICAgcmV0dXJuIGl0ZW1bJ0BpZCddO1xuICB9XG5cbiAgcHVibGljIGdldCBpc09yaWdpbmFsKCkge1xuICAgIHJldHVybiB0aGlzLmRhdGFTdGF0ZSA9PT0gRGF0YVN0YXRlLm9yaWdpbmFsO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGUoKSB7XG4gICAgY29uc3QgZW1pc3Npb25zUGVyQ3ljbGUgPSBncm91cE5vZGVzQnlUZXJtPElDeWNsZUpTT05MRCwgRW1pc3Npb24+KHRoaXMuY3ljbGVzLCAnZW1pc3Npb25zJywgdGhpcy5vcmlnaW5hbFZhbHVlcyk7XG4gICAgdGhpcy5lbWlzc2lvbnMgPSBvcmRlckJ5KGdyb3VwcGVkS2V5cyhlbWlzc2lvbnNQZXJDeWNsZSksIFsndmFsdWUubWV0aG9kVGllck9yZGVyJywgJ2tleSddLCBbJ2FzYycsICdhc2MnXSk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlUG9wb3Zlcihwb3BvdmVyOiBhbnksIGNvbnRleHQ6IGFueSkge1xuICAgIHJldHVybiBwb3BvdmVyLmlzT3BlbigpID8gcG9wb3Zlci5jbG9zZSgpIDogcG9wb3Zlci5vcGVuKGNvbnRleHQpO1xuICB9XG5cbiAgcHVibGljIGlzU2VsZWN0ZWQoY3ljbGU6IElDeWNsZUpTT05MRCkge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkLmxlbmd0aCA9PT0gMCB8fCB0aGlzLnNlbGVjdGVkLmluY2x1ZGVzKGN5Y2xlWydAaWQnXSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJlbWlzc2lvbnMubGVuZ3RoOyBlbHNlIGVtcHR5VGFibGVcIj5cbiAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtdmFyaWFibGUgaXMtMiBtLTBcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLWhpZGRlbi1tb2JpbGVcIj48L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLW5hcnJvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cImZpZWxkIGhhcy1hZGRvbnNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2xcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLXNtYWxsXCIgW2NsYXNzLmlzLWFjdGl2ZV09XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcudGFibGVcIiAoY2xpY2spPVwic2VsZWN0ZWRWaWV3ID0gVmlldy50YWJsZVwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXNtYWxsXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJsaXN0XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+VGFibGUgdmlldzwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sXCIgKm5nSWY9XCJjeWNsZXMubGVuZ3RoID4gMVwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtc21hbGxcIiBbY2xhc3MuaXMtYWN0aXZlXT1cInNlbGVjdGVkVmlldyA9PT0gVmlldy5jaGFydFwiIChjbGljayk9XCJzZWxlY3RlZFZpZXcgPSBWaWV3LmNoYXJ0XCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImljb24gaXMtc21hbGxcIj5cbiAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cImNoYXJ0LWJhclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPkNoYXJ0IHZpZXc8L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbFwiICpuZ0lmPVwiIWlzT3JpZ2luYWwgJiYgY3ljbGVzLmxlbmd0aCA9PT0gMVwiPlxuICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtc21hbGxcIiBbY2xhc3MuaXMtYWN0aXZlXT1cInNlbGVjdGVkVmlldyA9PT0gVmlldy5sb2dzXCIgKGNsaWNrKT1cInNlbGVjdGVkVmlldyA9IFZpZXcubG9nc1wiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXNtYWxsXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJjYWxjdWxhdG9yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4+UmVjYWxjdWxhdGlvbnMgbG9nczwvc3Bhbj5cbiAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG5cbiAgPGRpdiBjbGFzcz1cInB4LTMgcGItM1wiIFtjbGFzcy5pcy1oaWRkZW5dPVwic2VsZWN0ZWRWaWV3ICE9PSBWaWV3LnRhYmxlXCI+XG4gICAgPGRpdiBjbGFzcz1cImhhcy10ZXh0LXJpZ2h0IG1iLTJcIj5cbiAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b24gaXMtZGFyayBpcy1vdXRsaW5lZCBpcy1zbWFsbFwiIChjbGljayk9XCJzaG93RG93bmxvYWQgPSB0cnVlXCI+XG4gICAgICAgIDxmYS1pY29uIGljb249XCJkb3dubG9hZFwiPjwvZmEtaWNvbj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJwbC0yXCI+RG93bmxvYWQgKENTVik8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb250YWluZXIgZGF0YS10YWJsZS1jb250YWluZXIgbWItMVwiPlxuICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgaXMtbmFycm93IGRhdGEtdGFibGUgaGFzLWNoaWxkcmVuLXt7ZW1pc3Npb25zLmxlbmd0aH19XCI+XG4gICAgICAgIDx0aGVhZD5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggY2xhc3M9XCJ3aWR0aC1hdXRvXCI+PC90aD5cbiAgICAgICAgICAgIDx0aD48L3RoPlxuICAgICAgICAgICAgPHRoICpuZ0Zvcj1cImxldCBlbWlzc2lvbiBvZiBlbWlzc2lvbnNcIlxuICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCJlbWlzc2lvbi52YWx1ZS50ZXJtLm5hbWVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8aGUtbm9kZS1saW5rIFtub2RlXT1cImVtaXNzaW9uLnZhbHVlLnRlcm1cIj5cbiAgICAgICAgICAgICAgICA8c3Bhbj57e2VtaXNzaW9uLnZhbHVlLnRlcm0ubmFtZSB8IGVsbGlwc2lzOjMwfX08L3NwYW4+XG4gICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aCBjbGFzcz1cIndpZHRoLWF1dG9cIj48L3RoPlxuICAgICAgICAgICAgPHRoPlxuICAgICAgICAgICAgICA8YSBbaHJlZl09XCJiYXNlVXJsICsgJy9zY2hlbWEvQ3ljbGUjZnVuY3Rpb25hbFVuaXQnXCIgdGFyZ2V0PVwiX2JsYW5rXCI+RnVuY3Rpb25hbCB1bml0PC9hPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgZW1pc3Npb24gb2YgZW1pc3Npb25zXCJcbiAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiZW1pc3Npb24udmFsdWUudGVybS51bml0c1wiXG4gICAgICAgICAgICA+e3tlbWlzc2lvbi52YWx1ZS50ZXJtLnVuaXRzfX08L3RoPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGhlYWQ+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjeWNsZSBvZiBjeWNsZXM7IHRyYWNrQnk6IHRyYWNrQnlJZDsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICAgICAgPHRyICpuZ0lmPVwiaXNTZWxlY3RlZChjeWNsZSlcIj5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwid2lkdGgtYXV0b1wiIFthdHRyLnRpdGxlXT1cImRlZmF1bHRMYWJlbChjeWNsZSlcIj5cbiAgICAgICAgICAgICAgICA8aGUtbm9kZS1saW5rIFtub2RlXT1cImN5Y2xlXCI+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImlzLW5vd3JhcCBoYXMtdGV4dC1lbGxpcHNpc1wiPnt7aSArIDF9fS4ge3tkZWZhdWx0TGFiZWwoY3ljbGUpfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgPC9oZS1ub2RlLWxpbms+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICA8aGUtY3ljbGVzLWZ1bmN0aW9uYWwtdW5pdC1tZWFzdXJlIFtjeWNsZV09XCJjeWNsZXNbMF1cIj48L2hlLWN5Y2xlcy1mdW5jdGlvbmFsLXVuaXQtbWVhc3VyZT5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiaXMtbm93cmFwXCIgKm5nRm9yPVwibGV0IGVtaXNzaW9uIG9mIGVtaXNzaW9uc1wiPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiZW1pc3Npb24udmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV07IGVsc2UgZW1wdHlWYWx1ZVwiXG4gICAgICAgICAgICAgICAgICBjbGFzcz1cInRyaWdnZXItcG9wb3ZlclwiXG4gICAgICAgICAgICAgICAgICBbbmdiUG9wb3Zlcl09XCJkZXRhaWxzXCIgW2F1dG9DbG9zZV09XCInb3V0c2lkZSdcIlxuICAgICAgICAgICAgICAgICAgdHJpZ2dlcnM9XCJtYW51YWxcIiAjcD1cIm5nYlBvcG92ZXJcIiBwbGFjZW1lbnQ9XCJsZWZ0XCIgY29udGFpbmVyPVwiYm9keVwiXG4gICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUG9wb3ZlcihwLCB7IGRhdGE6IGVtaXNzaW9uLnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLCBjeWNsZTogY3ljbGUsIGtleTogJ2VtaXNzaW9ucycgfSlcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIHBvaW50ZXI+e3twcm9wZXJ0eVZhbHVlKGVtaXNzaW9uLnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dLnZhbHVlLCBlbWlzc2lvbi52YWx1ZS50ZXJtWydAaWQnXSkgfCBwcmVjaXNpb246MyB8IGRlZmF1bHQ6Jy0nfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8aGUtYmxhbmstbm9kZS1zdGF0ZSBjbGFzcz1cIm1sLTFcIlxuICAgICAgICAgICAgICAgICAgICBbbm9kZV09XCJlbWlzc2lvbi52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXS5ub2Rlc1swXVwiXG4gICAgICAgICAgICAgICAgICAgIGtleT1cInZhbHVlXCJcbiAgICAgICAgICAgICAgICAgID48L2hlLWJsYW5rLW5vZGUtc3RhdGU+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC90Ym9keT5cbiAgICAgIDwvdGFibGU+XG4gICAgPC9kaXY+XG5cbiAgICA8aGUtYmxhbmstbm9kZS1zdGF0ZS1ub3RpY2UgW2RhdGFTdGF0ZV09XCJkYXRhU3RhdGVcIiBbc2hvd0RlbGV0ZWRdPVwidHJ1ZVwiPjwvaGUtYmxhbmstbm9kZS1zdGF0ZS1ub3RpY2U+XG4gIDwvZGl2PlxuXG4gIDxoZS1jeWNsZXMtZW1pc3Npb25zLWNoYXJ0ICpuZ0lmPVwiY3ljbGVzLmxlbmd0aCA+IDFcIiBbY2xhc3MuaXMtaGlkZGVuXT1cInNlbGVjdGVkVmlldyAhPT0gVmlldy5jaGFydFwiXG4gICAgW2N5Y2xlc109XCJjeWNsZXNcIiBbc2VsZWN0ZWRdPVwic2VsZWN0ZWRcIlxuICA+PC9oZS1jeWNsZXMtZW1pc3Npb25zLWNoYXJ0PlxuXG4gIDxoZS1jeWNsZXMtZW1pc3Npb25zLWxvZ3MgKm5nSWY9XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcubG9ncyAmJiAhaXNPcmlnaW5hbFwiXG4gICAgW2N5Y2xlXT1cImN5Y2xlc1swXVwiXG4gICAgW29yaWdpbmFsVmFsdWVzXT1cIm9yaWdpbmFsVmFsdWVzWzBdPy5lbWlzc2lvbnNcIlxuICAgIFtyZWNhbGN1bGF0ZWRWYWx1ZXNdPVwiY3ljbGVzWzBdPy5lbWlzc2lvbnNcIlxuICA+PC9oZS1jeWNsZXMtZW1pc3Npb25zLWxvZ3M+XG48L25nLWNvbnRhaW5lcj5cblxuPGhlLW5vZGUtY3N2LWV4cG9ydC1jb25maXJtICpuZ0lmPVwic2hvd0Rvd25sb2FkXCJcbiAgW25vZGVzXT1cImN5Y2xlc1wiIGZpbGVuYW1lPVwiY3ljbGUtZW1pc3Npb25zLmNzdlwiIFtpc1VwbG9hZF09XCJmYWxzZVwiXG4gIFtoZWFkZXJLZXlzXT1cIlsnY3ljbGUuaWQnLCAnY3ljbGUuQGlkJywgJ2N5Y2xlLmVtaXNzaW9ucy4nXVwiXG4gIChjbG9zZWQpPVwic2hvd0Rvd25sb2FkID0gZmFsc2VcIlxuPjwvaGUtbm9kZS1jc3YtZXhwb3J0LWNvbmZpcm0+XG5cbjxuZy10ZW1wbGF0ZSAjZW1wdHlUYWJsZT5cbiAgPGRpdiBjbGFzcz1cInBhbmVsLWJsb2NrXCI+XG4gICAgPHNwYW4+Tm8gZGF0YTwvc3Bhbj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2VtcHR5VmFsdWU+XG4gIDxzcGFuPi08L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2RldGFpbHMgbGV0LW5vZGU9XCJjeWNsZVwiIGxldC1kYXRhPVwiZGF0YVwiIGxldC1rZXk9XCJrZXlcIj5cbiAgPHA+PGI+e3tub2RlLm5hbWV9fTwvYj48L3A+XG4gIDxoZS1ub2RlLXZhbHVlLWRldGFpbHNcbiAgICBbZGF0YV09XCJkYXRhXCIgW25vZGVUeXBlXT1cIm5vZGVbJ0B0eXBlJ11cIiBbZGF0YUtleV09XCJrZXlcIlxuICA+PC9oZS1ub2RlLXZhbHVlLWRldGFpbHM+XG48L25nLXRlbXBsYXRlPlxuIl19
83
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1lbWlzc2lvbnMvY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9zcmMvY3ljbGVzL2N5Y2xlcy1lbWlzc2lvbnMvY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFnQixZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFIekcsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFLMUMsSUFBSyxJQUlKO0FBSkQsV0FBSyxJQUFJO0lBQ1AsdUJBQWUsQ0FBQTtJQUNmLHVCQUFlLENBQUE7SUFDZixxQkFBYSxDQUFBO0FBQ2YsQ0FBQyxFQUpJLElBQUksS0FBSixJQUFJLFFBSVI7QUFPRCxNQUFNLE9BQU8sd0JBQXdCO0lBTHJDO1FBT1MsbUJBQWMsR0FBbUIsRUFBRSxDQUFDO1FBRXBDLFdBQU0sR0FBbUIsRUFBRSxDQUFDO1FBRTVCLGFBQVEsR0FBYSxFQUFFLENBQUM7UUFJeEIsWUFBTyxHQUFHLE9BQU8sRUFBRSxDQUFDO1FBQ3BCLGtCQUFhLEdBQUcsYUFBYSxDQUFDO1FBQzlCLGlCQUFZLEdBQUcsWUFBWSxDQUFDO1FBQzVCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBQ3JCLFNBQUksR0FBRyxJQUFJLENBQUM7UUFDWixpQkFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7UUFFMUIsY0FBUyxHQUE2QixFQUFFLENBQUM7S0ErQmpEO0lBN0JDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLFFBQVEsSUFBSSxPQUFPLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDdEI7UUFDRCxJQUFJLFdBQVcsSUFBSSxPQUFPLEVBQUU7WUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1NBQ2hDO0lBQ0gsQ0FBQztJQUVNLFNBQVMsQ0FBQyxNQUFjLEVBQUUsSUFBa0I7UUFDakQsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxDQUFDLFFBQVEsQ0FBQztJQUMvQyxDQUFDO0lBRU8sTUFBTTtRQUNaLE1BQU0saUJBQWlCLEdBQUcsZ0JBQWdCLENBQXlCLElBQUksQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNsSCxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDOUcsQ0FBQztJQUVNLGFBQWEsQ0FBQyxPQUFZLEVBQUUsT0FBWTtRQUM3QyxPQUFPLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTSxVQUFVLENBQUMsS0FBbUI7UUFDbkMsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDNUUsQ0FBQzs7c0hBL0NVLHdCQUF3QjswR0FBeEIsd0JBQXdCLDhMQ25CckMsd2tMQW9JQTs0RkRqSGEsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFdBQVcsRUFBRSxtQ0FBbUM7b0JBQ2hELFNBQVMsRUFBRSxDQUFDLG1DQUFtQyxDQUFDO2lCQUNqRDs4QkFHUSxjQUFjO3NCQURwQixLQUFLO2dCQUdDLE1BQU07c0JBRFosS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRhU3RhdGUgfSBmcm9tICdAaGVzdGlhLWVhcnRoL2FwaSc7XG5pbXBvcnQgeyBJQ3ljbGVKU09OTEQsIEVtaXNzaW9uIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuY29uc3Qgb3JkZXJCeSA9IHJlcXVpcmUoJ2xvZGFzaC5vcmRlcmJ5Jyk7XG5pbXBvcnQgeyBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscy9kaXN0L3Rlcm0nO1xuXG5pbXBvcnQgeyBiYXNlVXJsLCBncm91cE5vZGVzQnlUZXJtLCBJR3JvdXBlZEtleXMsIGdyb3VwcGVkS2V5cywgZGVmYXVsdExhYmVsIH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWxzJztcblxuZW51bSBWaWV3IHtcbiAgdGFibGUgPSAndGFibGUnLFxuICBjaGFydCA9ICdjaGFydCcsXG4gIGxvZ3MgPSAnbG9ncydcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtY3ljbGVzLWVtaXNzaW9ucycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jeWNsZXMtZW1pc3Npb25zLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY3ljbGVzLWVtaXNzaW9ucy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEN5Y2xlc0VtaXNzaW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvcmlnaW5hbFZhbHVlczogSUN5Y2xlSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGN5Y2xlczogSUN5Y2xlSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHVibGljIHNlbGVjdGVkOiBzdHJpbmdbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZGF0YVN0YXRlPzogRGF0YVN0YXRlO1xuXG4gIHB1YmxpYyBiYXNlVXJsID0gYmFzZVVybCgpO1xuICBwdWJsaWMgcHJvcGVydHlWYWx1ZSA9IHByb3BlcnR5VmFsdWU7XG4gIHB1YmxpYyBkZWZhdWx0TGFiZWwgPSBkZWZhdWx0TGFiZWw7XG4gIHB1YmxpYyBzaG93RG93bmxvYWQgPSBmYWxzZTtcbiAgcHVibGljIFZpZXcgPSBWaWV3O1xuICBwdWJsaWMgc2VsZWN0ZWRWaWV3ID0gVmlldy50YWJsZTtcblxuICBwdWJsaWMgZW1pc3Npb25zOiBJR3JvdXBlZEtleXM8RW1pc3Npb24+W10gPSBbXTtcblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgaWYgKCdjeWNsZXMnIGluIGNoYW5nZXMpIHtcbiAgICAgIHJldHVybiB0aGlzLnVwZGF0ZSgpO1xuICAgIH1cbiAgICBpZiAoJ2RhdGFTdGF0ZScgaW4gY2hhbmdlcykge1xuICAgICAgdGhpcy5zZWxlY3RlZFZpZXcgPSBWaWV3LnRhYmxlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyB0cmFja0J5SWQoX2luZGV4OiBudW1iZXIsIGl0ZW06IElDeWNsZUpTT05MRCkge1xuICAgIHJldHVybiBpdGVtWydAaWQnXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaXNPcmlnaW5hbCgpIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhU3RhdGUgPT09IERhdGFTdGF0ZS5vcmlnaW5hbDtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlKCkge1xuICAgIGNvbnN0IGVtaXNzaW9uc1BlckN5Y2xlID0gZ3JvdXBOb2Rlc0J5VGVybTxJQ3ljbGVKU09OTEQsIEVtaXNzaW9uPih0aGlzLmN5Y2xlcywgJ2VtaXNzaW9ucycsIHRoaXMub3JpZ2luYWxWYWx1ZXMpO1xuICAgIHRoaXMuZW1pc3Npb25zID0gb3JkZXJCeShncm91cHBlZEtleXMoZW1pc3Npb25zUGVyQ3ljbGUpLCBbJ3ZhbHVlLm1ldGhvZFRpZXJPcmRlcicsICdrZXknXSwgWydhc2MnLCAnYXNjJ10pO1xuICB9XG5cbiAgcHVibGljIHRvZ2dsZVBvcG92ZXIocG9wb3ZlcjogYW55LCBjb250ZXh0OiBhbnkpIHtcbiAgICByZXR1cm4gcG9wb3Zlci5pc09wZW4oKSA/IHBvcG92ZXIuY2xvc2UoKSA6IHBvcG92ZXIub3Blbihjb250ZXh0KTtcbiAgfVxuXG4gIHB1YmxpYyBpc1NlbGVjdGVkKGN5Y2xlOiBJQ3ljbGVKU09OTEQpIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZC5sZW5ndGggPT09IDAgfHwgdGhpcy5zZWxlY3RlZC5pbmNsdWRlcyhjeWNsZVsnQGlkJ10pO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZW1pc3Npb25zLmxlbmd0aDsgZWxzZSBlbXB0eVRhYmxlXCI+XG4gIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLXZhcmlhYmxlIGlzLTIgbS0wXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpcy1oaWRkZW4tbW9iaWxlXCI+PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpcy1uYXJyb3dcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZCBoYXMtYWRkb25zXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sXCI+XG4gICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBpcy1zbWFsbFwiIFtjbGFzcy5pcy1hY3RpdmVdPVwic2VsZWN0ZWRWaWV3ID09PSBWaWV3LnRhYmxlXCIgKGNsaWNrKT1cInNlbGVjdGVkVmlldyA9IFZpZXcudGFibGVcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBpcy1zbWFsbFwiPlxuICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwibGlzdFwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPlRhYmxlIHZpZXc8L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29udHJvbFwiICpuZ0lmPVwiY3ljbGVzLmxlbmd0aCA+IDFcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLXNtYWxsXCIgW2NsYXNzLmlzLWFjdGl2ZV09XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcuY2hhcnRcIiAoY2xpY2spPVwic2VsZWN0ZWRWaWV3ID0gVmlldy5jaGFydFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpY29uIGlzLXNtYWxsXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJjaGFydC1iYXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICA8c3Bhbj5DaGFydCB2aWV3PC9zcGFuPlxuICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2xcIiAqbmdJZj1cIiFpc09yaWdpbmFsICYmIGN5Y2xlcy5sZW5ndGggPT09IDFcIj5cbiAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLXNtYWxsXCIgW2NsYXNzLmlzLWFjdGl2ZV09XCJzZWxlY3RlZFZpZXcgPT09IFZpZXcubG9nc1wiIChjbGljayk9XCJzZWxlY3RlZFZpZXcgPSBWaWV3LmxvZ3NcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbiBpcy1zbWFsbFwiPlxuICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwiY2FsY3VsYXRvclwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuPlJlY2FsY3VsYXRpb25zIGxvZ3M8L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJweC0zIHBiLTNcIiBbY2xhc3MuaXMtaGlkZGVuXT1cInNlbGVjdGVkVmlldyAhPT0gVmlldy50YWJsZVwiPlxuICAgIDxkaXYgY2xhc3M9XCJoYXMtdGV4dC1yaWdodCBtYi0yXCI+XG4gICAgICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uIGlzLWRhcmsgaXMtb3V0bGluZWQgaXMtc21hbGxcIiAoY2xpY2spPVwic2hvd0Rvd25sb2FkID0gdHJ1ZVwiPlxuICAgICAgICA8ZmEtaWNvbiBpY29uPVwiZG93bmxvYWRcIj48L2ZhLWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicGwtMlwiPkRvd25sb2FkIChDU1YpPC9zcGFuPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29udGFpbmVyIGRhdGEtdGFibGUtY29udGFpbmVyIG1iLTFcIj5cbiAgICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGlzLW5hcnJvdyBkYXRhLXRhYmxlIGhhcy1jaGlsZHJlbi17e2VtaXNzaW9ucy5sZW5ndGh9fVwiPlxuICAgICAgICA8dGhlYWQ+XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRoIGNsYXNzPVwid2lkdGgtYXV0b1wiPjwvdGg+XG4gICAgICAgICAgICA8dGg+PC90aD5cbiAgICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgZW1pc3Npb24gb2YgZW1pc3Npb25zXCJcbiAgICAgICAgICAgICAgW2F0dHIudGl0bGVdPVwiZW1pc3Npb24udmFsdWUudGVybS5uYW1lXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGhlLW5vZGUtbGluayBbbm9kZV09XCJlbWlzc2lvbi52YWx1ZS50ZXJtXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4+e3tlbWlzc2lvbi52YWx1ZS50ZXJtLm5hbWUgfCBlbGxpcHNpczozMH19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2hlLW5vZGUtbGluaz5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGggY2xhc3M9XCJ3aWR0aC1hdXRvXCI+PC90aD5cbiAgICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgICAgPGEgW2hyZWZdPVwiYmFzZVVybCArICcvc2NoZW1hL0N5Y2xlI2Z1bmN0aW9uYWxVbml0J1wiIHRhcmdldD1cIl9ibGFua1wiPkZ1bmN0aW9uYWwgdW5pdDwvYT5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGVtaXNzaW9uIG9mIGVtaXNzaW9uc1wiXG4gICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cImVtaXNzaW9uLnZhbHVlLnRlcm0udW5pdHNcIlxuICAgICAgICAgICAgPnt7ZW1pc3Npb24udmFsdWUudGVybS51bml0c319PC90aD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3RoZWFkPlxuICAgICAgICA8dGJvZHk+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY3ljbGUgb2YgY3ljbGVzOyB0cmFja0J5OiB0cmFja0J5SWQ7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgICAgIDx0ciAqbmdJZj1cImlzU2VsZWN0ZWQoY3ljbGUpXCI+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cIndpZHRoLWF1dG9cIiBbYXR0ci50aXRsZV09XCJkZWZhdWx0TGFiZWwoY3ljbGUpXCI+XG4gICAgICAgICAgICAgICAgPGhlLW5vZGUtbGluayBbbm9kZV09XCJjeWNsZVwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1ub3dyYXAgaGFzLXRleHQtZWxsaXBzaXNcIj57e2kgKyAxfX0uIHt7ZGVmYXVsdExhYmVsKGN5Y2xlKX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgPGhlLWN5Y2xlcy1mdW5jdGlvbmFsLXVuaXQtbWVhc3VyZSBbY3ljbGVdPVwiY3ljbGVzWzBdXCI+PC9oZS1jeWNsZXMtZnVuY3Rpb25hbC11bml0LW1lYXN1cmU+XG4gICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDx0ZCBjbGFzcz1cImlzLW5vd3JhcFwiICpuZ0Zvcj1cImxldCBlbWlzc2lvbiBvZiBlbWlzc2lvbnNcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImVtaXNzaW9uLnZhbHVlLnZhbHVlc1tjeWNsZVsnQGlkJ11dOyBlbHNlIGVtcHR5VmFsdWVcIlxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0cmlnZ2VyLXBvcG92ZXJcIlxuICAgICAgICAgICAgICAgICAgW25nYlBvcG92ZXJdPVwiZGV0YWlsc1wiIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCJcbiAgICAgICAgICAgICAgICAgIHRyaWdnZXJzPVwibWFudWFsXCIgI3A9XCJuZ2JQb3BvdmVyXCIgcGxhY2VtZW50PVwibGVmdFwiIGNvbnRhaW5lcj1cImJvZHlcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRvZ2dsZVBvcG92ZXIocCwgeyBkYXRhOiBlbWlzc2lvbi52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXSwgY3ljbGU6IGN5Y2xlLCBrZXk6ICdlbWlzc2lvbnMnIH0pXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICA8c3BhbiBwb2ludGVyPnt7cHJvcGVydHlWYWx1ZShlbWlzc2lvbi52YWx1ZS52YWx1ZXNbY3ljbGVbJ0BpZCddXS52YWx1ZSwgZW1pc3Npb24udmFsdWUudGVybVsnQGlkJ10pIHwgcHJlY2lzaW9uOjMgfCBkZWZhdWx0OictJ319PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPGhlLWJsYW5rLW5vZGUtc3RhdGUgY2xhc3M9XCJtbC0xXCJcbiAgICAgICAgICAgICAgICAgICAgW25vZGVdPVwiZW1pc3Npb24udmFsdWUudmFsdWVzW2N5Y2xlWydAaWQnXV0ubm9kZXNbMF1cIlxuICAgICAgICAgICAgICAgICAgICBrZXk9XCJ2YWx1ZVwiXG4gICAgICAgICAgICAgICAgICA+PC9oZS1ibGFuay1ub2RlLXN0YXRlPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L3RhYmxlPlxuICAgIDwvZGl2PlxuXG4gICAgPGhlLWJsYW5rLW5vZGUtc3RhdGUtbm90aWNlIFtkYXRhU3RhdGVdPVwiZGF0YVN0YXRlXCIgW3Nob3dEZWxldGVkXT1cInRydWVcIj48L2hlLWJsYW5rLW5vZGUtc3RhdGUtbm90aWNlPlxuICA8L2Rpdj5cblxuICA8aGUtY3ljbGVzLWVtaXNzaW9ucy1jaGFydCAqbmdJZj1cImN5Y2xlcy5sZW5ndGggPiAxXCIgW2NsYXNzLmlzLWhpZGRlbl09XCJzZWxlY3RlZFZpZXcgIT09IFZpZXcuY2hhcnRcIlxuICAgIFtjeWNsZXNdPVwiY3ljbGVzXCIgW3NlbGVjdGVkXT1cInNlbGVjdGVkXCJcbiAgPjwvaGUtY3ljbGVzLWVtaXNzaW9ucy1jaGFydD5cblxuICA8aGUtY3ljbGVzLWVtaXNzaW9ucy1sb2dzICpuZ0lmPVwic2VsZWN0ZWRWaWV3ID09PSBWaWV3LmxvZ3MgJiYgIWlzT3JpZ2luYWxcIlxuICAgIFtjeWNsZV09XCJjeWNsZXNbMF1cIlxuICAgIFtvcmlnaW5hbFZhbHVlc109XCJvcmlnaW5hbFZhbHVlc1swXT8uZW1pc3Npb25zXCJcbiAgICBbcmVjYWxjdWxhdGVkVmFsdWVzXT1cImN5Y2xlc1swXT8uZW1pc3Npb25zXCJcbiAgPjwvaGUtY3ljbGVzLWVtaXNzaW9ucy1sb2dzPlxuPC9uZy1jb250YWluZXI+XG5cbjxoZS1ub2RlLWNzdi1leHBvcnQtY29uZmlybSAqbmdJZj1cInNob3dEb3dubG9hZFwiXG4gIFtub2Rlc109XCJjeWNsZXNcIiBmaWxlbmFtZT1cImN5Y2xlLWVtaXNzaW9ucy5jc3ZcIiBbaXNVcGxvYWRdPVwiZmFsc2VcIlxuICBbaGVhZGVyS2V5c109XCJbJ2N5Y2xlLmlkJywgJ2N5Y2xlLkBpZCcsICdjeWNsZS5lbWlzc2lvbnMuJ11cIlxuICAoY2xvc2VkKT1cInNob3dEb3dubG9hZCA9IGZhbHNlXCJcbj48L2hlLW5vZGUtY3N2LWV4cG9ydC1jb25maXJtPlxuXG48bmctdGVtcGxhdGUgI2VtcHR5VGFibGU+XG4gIDxkaXYgY2xhc3M9XCJwYW5lbC1ibG9ja1wiPlxuICAgIDxzcGFuPk5vIGRhdGE8L3NwYW4+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNlbXB0eVZhbHVlPlxuICA8c3Bhbj4tPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNkZXRhaWxzIGxldC1ub2RlPVwiY3ljbGVcIiBsZXQtZGF0YT1cImRhdGFcIiBsZXQta2V5PVwia2V5XCI+XG4gIDxwPjxiPnt7bm9kZS5uYW1lfX08L2I+PC9wPlxuICA8aGUtbm9kZS12YWx1ZS1kZXRhaWxzXG4gICAgW2RhdGFdPVwiZGF0YVwiIFtub2RlVHlwZV09XCJub2RlWydAdHlwZSddXCIgW2RhdGFLZXldPVwia2V5XCJcbiAgPjwvaGUtbm9kZS12YWx1ZS1kZXRhaWxzPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==