@hestia-earth/ui-components 0.0.23 → 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.
- package/bundles/hestia-earth-ui-components.umd.js +88 -138
- package/bundles/hestia-earth-ui-components.umd.js.map +1 -1
- package/common/blank-node-value-delta/blank-node-value-delta.component.d.ts +1 -1
- package/common/delta-utils.d.ts +0 -14
- package/common/utils.d.ts +0 -4
- package/esm2015/common/blank-node-value-delta/blank-node-value-delta.component.js +4 -3
- package/esm2015/common/delta-utils.js +1 -41
- package/esm2015/common/utils.js +2 -23
- package/esm2015/cycles/cycles-activity/cycles-activity.component.js +3 -2
- package/esm2015/cycles/cycles-completeness/cycles-completeness.component.js +3 -2
- package/esm2015/cycles/cycles-emissions/cycles-emissions.component.js +3 -2
- package/esm2015/cycles/cycles-emissions-chart/cycles-emissions-chart.component.js +3 -2
- package/esm2015/cycles/cycles-practices/cycles-practices.component.js +3 -2
- package/esm2015/cycles/cycles-result/cycles-result.component.js +3 -2
- package/esm2015/engine/engine.service.js +3 -2
- package/esm2015/files/files-error.model.js +3 -3
- package/esm2015/files/files-form/files-form.component.js +33 -6
- package/esm2015/files/files-form.model.js +1 -8
- package/esm2015/impact-assessments/impact-assessments-products/impact-assessments-products.component.js +3 -3
- package/esm2015/node/node-logs-models/node-logs-models.component.js +4 -3
- package/esm2015/sites/sites.model.js +2 -2
- package/esm2015/terms/terms.model.js +2 -2
- package/fesm2015/hestia-earth-ui-components.js +39 -77
- package/fesm2015/hestia-earth-ui-components.js.map +1 -1
- package/files/files-form/files-form.component.d.ts +13 -1
- package/files/files-form.model.d.ts +0 -14
- package/package.json +3 -3
|
@@ -4,10 +4,11 @@ import { Component, Input } from '@angular/core';
|
|
|
4
4
|
import { from } from 'rxjs';
|
|
5
5
|
import { distinct, filter, reduce, toArray, map, distinctUntilChanged, switchMap } from 'rxjs/operators';
|
|
6
6
|
import { EmissionMethodTier, NodeType, TermTermType } from '@hestia-earth/schema';
|
|
7
|
-
import { unique } from '@hestia-earth/utils';
|
|
7
|
+
import { unique, keyToLabel } from '@hestia-earth/utils';
|
|
8
|
+
import { propertyValue } from '@hestia-earth/utils/dist/term';
|
|
8
9
|
import { findConfigModels } from '../../engine/engine.service';
|
|
9
10
|
import { matchTermType, matchType } from '../../search/search.model';
|
|
10
|
-
import { baseUrl, isExternal
|
|
11
|
+
import { baseUrl, isExternal } from '../../common/utils';
|
|
11
12
|
import * as i0 from "@angular/core";
|
|
12
13
|
import * as i1 from "../../search/search.service";
|
|
13
14
|
import * as i2 from "../../engine/engine.service";
|
|
@@ -275,4 +276,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
275
276
|
}], filteredType: [{
|
|
276
277
|
type: Input
|
|
277
278
|
}] } });
|
|
278
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1sb2dzLW1vZGVscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbm9kZS9ub2RlLWxvZ3MtbW9kZWxzL25vZGUtbG9ncy1tb2RlbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL25vZGUvbm9kZS1sb2dzLW1vZGVscy9ub2RlLWxvZ3MtbW9kZWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQkFBK0I7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFjLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RyxPQUFPLEVBQ0ssa0JBQWtCLEVBQThDLFFBQVEsRUFBRSxZQUFZLEVBQ2pHLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSzdDLE9BQU8sRUFBd0MsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNyRyxPQUFPLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXJFLE9BQU8sRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQVBwRixNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDbEMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFnQzFDLE1BQU0sWUFBWSxHQUFHLENBQUMsTUFBYSxFQUFFLE1BQWMsRUFBRSxFQUFFO0lB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Q0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FDMUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksT0FBTyxDQUFDO2dCQUMvQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxDQUNuQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztxSEFqUVUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsNlFDMUdwQyx3alVBMk9BOzRGRGpJYSx1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsV0FBVyxFQUFFLG1DQUFtQztvQkFDaEQsU0FBUyxFQUFFLENBQUMsbUNBQW1DLENBQUM7aUJBQ2pEO29JQVFTLFFBQVE7c0JBRGYsS0FBSztnQkFNRSxPQUFPO3NCQURkLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUdDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBR0Usa0JBQWtCO3NCQUR6QixLQUFLO2dCQUdFLEtBQUs7c0JBRFosS0FBSztnQkFHRSxJQUFJO3NCQURYLEtBQUs7Z0JBR0MsWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGNvbXBsZXhpdHkgKi9cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3QsIGZpbHRlciwgcmVkdWNlLCB0b0FycmF5LCBtYXAsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBFbWlzc2lvbiwgRW1pc3Npb25NZXRob2RUaWVyLCBJVGVybUpTT05MRCwgUHJvZHVjdCwgSW5wdXQgYXMgSGVzdGlhSW5wdXQsIE5vZGVUeXBlLCBUZXJtVGVybVR5cGVcbn0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuaW1wb3J0IHsgdW5pcXVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscyc7XG5jb25zdCBnZXQgPSByZXF1aXJlKCdsb2Rhc2guZ2V0Jyk7XG5jb25zdCBvcmRlckJ5ID0gcmVxdWlyZSgnbG9kYXNoLm9yZGVyYnknKTtcblxuaW1wb3J0IHsgSU5vZGVMb2dzLCBJTm9kZVRlcm1Mb2dzIH0gZnJvbSAnLi4vbm9kZS5zZXJ2aWNlJztcbmltcG9ydCB7IEhlRW5naW5lU2VydmljZSwgSU9yY2hlc3RyYXRvckNvbmZpZywgZmluZENvbmZpZ01vZGVscyB9IGZyb20gJy4uLy4uL2VuZ2luZS9lbmdpbmUuc2VydmljZSc7XG5pbXBvcnQgeyBtYXRjaFRlcm1UeXBlLCBtYXRjaFR5cGUgfSBmcm9tICcuLi8uLi9zZWFyY2gvc2VhcmNoLm1vZGVsJztcbmltcG9ydCB7IEhlU2VhcmNoU2VydmljZSB9IGZyb20gJy4uLy4uL3NlYXJjaC9zZWFyY2guc2VydmljZSc7XG5pbXBvcnQgeyBiYXNlVXJsLCBpc0V4dGVybmFsLCBrZXlUb0xhYmVsLCBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnLi4vLi4vY29tbW9uL3V0aWxzJztcblxudHlwZSBzdWJWYWx1ZUtleXMgPSAnaW5wdXQnIHwgJ3Byb3BlcnR5JztcblxuaW50ZXJmYWNlIElCbGFua05vZGVMb2dTdWJWYWx1ZSB7XG4gIGtleTogc3ViVmFsdWVLZXlzIHwgJ2JhY2tncm91bmREYXRhJztcbiAgdmFsdWU6IGFueTtcbiAgY29uZmlnTW9kZWxzOiBzdHJpbmdbXTtcbn1cblxuaW50ZXJmYWNlIElCbGFua05vZGVMb2cge1xuICBpc09wZW46IGJvb2xlYW47XG4gIGNhbk9wZW46IGJvb2xlYW47XG4gIHRlcm06IElUZXJtSlNPTkxEO1xuICB0eXBlPzogc3RyaW5nO1xuICBjb25maWdNb2RlbHM6IHN0cmluZ1tdO1xuICBvcmlnaW5hbDogbnVtYmVyO1xuICByZWNhbGN1bGF0ZWQ6IG51bWJlcjtcbiAgaXNPcmlnaW5hbDogYm9vbGVhbjtcbiAgaXNSZWNhbGN1bGF0ZWQ6IGJvb2xlYW47XG4gIGhhc0RhdGE6IGJvb2xlYW47XG4gIGxvZ3M/OiBJTm9kZVRlcm1Mb2dzO1xuICBrZXlzOiBzdHJpbmdbXTtcbiAgc3ViVmFsdWVzOiBJQmxhbmtOb2RlTG9nU3ViVmFsdWVbXTtcbn1cblxuY29uc3QgcmVkdWNlVmFsdWVzID0gKHZhbHVlczogYW55W10sIHRlcm1JZDogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHByb3BlcnR5VmFsdWVzID0gdmFsdWVzXG4gICAgLm1hcCgoeyB2YWx1ZSB9KSA9PiBwcm9wZXJ0eVZhbHVlKHZhbHVlLCB0ZXJtSWQpKVxuICAgIC8vIHByb3BlcnR5VmFsdWUgbWF5IHJldHVybiBudWxsIGlmIHRoZSB2YWx1ZSBpcyBudWxsIG9yIHVuZGVmaW5lZCwgdGhlcmVmb3JlIHJlbW92ZSB0aGVtIGZyb20gdG90YWxcbiAgICAuZmlsdGVyKHYgPT4gdiAhPT0gbnVsbCk7XG4gIHJldHVybiBwcm9wZXJ0eVZhbHVlcy5sZW5ndGggPyBwcm9wZXJ0eVZhbHVlcy5yZWR1Y2UoKHAsIHYpID0+IHAgKyB2LCAwKSA6IHVuZGVmaW5lZDtcbn07XG5cbmNvbnN0IGxvZ1N1YlZhbHVlID0gKGxvZ3M6IElOb2RlVGVybUxvZ3MsIGtleTogc3RyaW5nLCBwcm9wOiBzdWJWYWx1ZUtleXMpID0+XG4gIGxvZ3Nba2V5XVtwcm9wXSA/IChcbiAgICBBcnJheS5pc0FycmF5KGxvZ3Nba2V5XVtwcm9wXSkgP1xuICAgICAgKGxvZ3Nba2V5XVtwcm9wXSBhcyBzdHJpbmdbXSkubWFwKHZhbHVlID0+ICh7IGtleTogcHJvcCwgdmFsdWUgfSBhcyBJQmxhbmtOb2RlTG9nU3ViVmFsdWUpKTpcbiAgICAgIHsga2V5OiBwcm9wLCB2YWx1ZTogbG9nc1trZXldW3Byb3BdIH0gYXMgSUJsYW5rTm9kZUxvZ1N1YlZhbHVlXG4gICkgOiB1bmRlZmluZWQ7XG5cbmNvbnN0IGlzQmFja2dyb3VuZE5vSW5wdXQgPSAobG9nczogSU5vZGVUZXJtTG9ncywga2V5OiBzdHJpbmcpID0+XG4gIGxvZ3Nba2V5XS5tZXRob2RUaWVyID09PSBFbWlzc2lvbk1ldGhvZFRpZXIuYmFja2dyb3VuZCAmJiAhbG9nc1trZXldLmlucHV0O1xuXG5jb25zdCBsb2dTdWJWYWx1ZXMgPSAobG9nczogSU5vZGVUZXJtTG9ncyk6IElCbGFua05vZGVMb2dTdWJWYWx1ZVtdID0+XG4gIE9iamVjdC5rZXlzKGxvZ3MpXG4gICAgLmZsYXRNYXAoa2V5ID0+XG4gICAgICBbXG4gICAgICAgIGxvZ1N1YlZhbHVlKGxvZ3MsIGtleSwgJ2lucHV0JyksXG4gICAgICAgIGxvZ1N1YlZhbHVlKGxvZ3MsIGtleSwgJ3Byb3BlcnR5JyksXG4gICAgICAgIC8vIGZvciBiYWNrZ3JvdW5kIGRhdGEgd2l0aG91dCBpbnB1dCwgY29udmVydCB0ZXJtIHRvIGlucHV0IHNvIGl0IGlzIGRpc3BsYXllZCBiZWxvdyB0aGUgdGVybVxuICAgICAgICBpc0JhY2tncm91bmROb0lucHV0KGxvZ3MsIGtleSkgPyB7IGtleTogJ2JhY2tncm91bmREYXRhJyB9IGFzIElCbGFua05vZGVMb2dTdWJWYWx1ZSA6IHVuZGVmaW5lZFxuICAgICAgXS5mbGF0KClcbiAgICAgIC5maWx0ZXIoQm9vbGVhbilcbiAgICAgIC5tYXAodiA9PiAoeyAuLi52LCBjb25maWdNb2RlbHM6IFtrZXldIH0pKSk7XG5cbmNvbnN0IGxvZ0tleXMgPSAobG9nczogSU5vZGVUZXJtTG9ncykgPT4gT2JqZWN0LmtleXMobG9ncykuZmlsdGVyKGtleSA9PiBsb2dzW2tleV0uaXNLZXkpO1xuXG5lbnVtIExvZ1N0YXR1cyB7XG4gIHN1Y2Nlc3MgPSAnc3VjY2Vzc2Z1bCcsXG4gIGVycm9yID0gJ2ZhaWxlZCcsXG4gIHNraXBIaWVyYXJjaHkgPSAnbm90IHJ1biAobW9kZWwgaGlnaGVyIHVwIGhpZXJhcmNoeSBydW4gaW5zdGVhZCknLFxuICBkYXRhUHJvdmlkZWQgPSAnbm90IHJ1biAodXNlciBwcm92aWRlZCBkYXRhIHJldGFpbmVkKScsXG4gIG5vdFJlcXVpcmVkID0gJ25vdCBydW4gKG5vdCByZXF1aXJlZCB0byBydW4pJ1xufVxuXG5jb25zdCBsb2dJY29uOiB7XG4gIFtzdGF0dXMgaW4gTG9nU3RhdHVzXTogc3RyaW5nIHwgc3RyaW5nW107XG59ID0ge1xuICBbTG9nU3RhdHVzLnN1Y2Nlc3NdOiAnY2hlY2snLFxuICBbTG9nU3RhdHVzLmVycm9yXTogJ3RpbWVzJyxcbiAgW0xvZ1N0YXR1cy5za2lwSGllcmFyY2h5XTogWydmYXInLCAnY2lyY2xlJ10sXG4gIFtMb2dTdGF0dXMuZGF0YVByb3ZpZGVkXTogJ2NpcmNsZScsXG4gIFtMb2dTdGF0dXMubm90UmVxdWlyZWRdOiAnbWludXMtY2lyY2xlJ1xufTtcblxuY29uc3QgbG9nQ29sb3I6IHtcbiAgW3N0YXR1cyBpbiBMb2dTdGF0dXNdOiBzdHJpbmc7XG59ID0ge1xuICBbTG9nU3RhdHVzLnN1Y2Nlc3NdOiAnc3VjY2VzcycsXG4gIFtMb2dTdGF0dXMuZXJyb3JdOiAnZGFuZ2VyJyxcbiAgW0xvZ1N0YXR1cy5za2lwSGllcmFyY2h5XTogJ2RhcmsnLFxuICBbTG9nU3RhdHVzLmRhdGFQcm92aWRlZF06ICdkYXJrJyxcbiAgW0xvZ1N0YXR1cy5ub3RSZXF1aXJlZF06ICdncmV5J1xufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGUtbm9kZS1sb2dzLW1vZGVscycsXG4gIHRlbXBsYXRlVXJsOiAnLi9ub2RlLWxvZ3MtbW9kZWxzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbm9kZS1sb2dzLW1vZGVscy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIE5vZGVMb2dzTW9kZWxzQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHJpdmF0ZSBjb25maWc/OiBJT3JjaGVzdHJhdG9yQ29uZmlnO1xuICBwcml2YXRlIG1vZGVsczogSVRlcm1KU09OTERbXSA9IFtdO1xuICBwcml2YXRlIGFsbFRlcm1zOiBJVGVybUpTT05MRFtdID0gW107XG4gIHByaXZhdGUgYWxsQmxhbmtOb2RlczogSUJsYW5rTm9kZUxvZ1tdID0gW107XG5cbiAgQElucHV0KClcbiAgcHJpdmF0ZSBub2RlVHlwZT86IE5vZGVUeXBlO1xuICAvKipcbiAgICogUmVzdHJpY3QgbW9kZWxzIGJ5IGtleS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgbm9kZUtleT86IHN0cmluZztcbiAgQElucHV0KClcbiAgcHVibGljIGxvZ3NVcmw/OiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBvcmlnaW5hbFZhbHVlczogKEVtaXNzaW9uIHwgUHJvZHVjdCB8IEhlc3RpYUlucHV0KVtdID0gW107XG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgcmVjYWxjdWxhdGVkVmFsdWVzOiAoRW1pc3Npb24gfCBQcm9kdWN0IHwgSGVzdGlhSW5wdXQpW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSB0ZXJtczogSVRlcm1KU09OTERbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwcml2YXRlIGxvZ3M/OiBJTm9kZUxvZ3M7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJlZFR5cGU/OiBzdHJpbmc7XG5cbiAgcHVibGljIGJhc2VVcmwgPSBiYXNlVXJsKCk7XG4gIHB1YmxpYyBpc0V4dGVybmFsID0gaXNFeHRlcm5hbCgpO1xuICBwdWJsaWMgbG9hZGluZyA9IHRydWU7XG4gIHB1YmxpYyBibGFua05vZGVzOiBJQmxhbmtOb2RlTG9nW10gPSBbXTtcbiAgcHVibGljIG1ldGhvZE1vZGVsc0NvdW50ID0gMDtcbiAgcHVibGljIG1ldGhvZHNCeUlkPzogYW55O1xuICBwdWJsaWMgb25seVdpdGhEYXRhID0gdHJ1ZTtcblxuICBwdWJsaWMgc2hvd0xlZ2VuZCA9IHRydWU7XG4gIHB1YmxpYyBMb2dTdGF0dXMgPSBMb2dTdGF0dXM7XG4gIHB1YmxpYyBsb2dJY29uID0gbG9nSWNvbjtcbiAgcHVibGljIGxvZ0NvbG9yID0gbG9nQ29sb3I7XG5cbiAgcHVibGljIHRlcm0/OiBzdHJpbmc7XG4gIHB1YmxpYyBzdWdnZXN0VGVybSA9ICh0ZXh0JDogT2JzZXJ2YWJsZTxzdHJpbmc+KSA9PlxuICAgIHRleHQkLnBpcGUoXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc3dpdGNoTWFwKHYgPT4gdGhpcy5zdWdnZXN0QnlUZXJtKHYpKSxcbiAgICApO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgc2VhcmNoU2VydmljZTogSGVTZWFyY2hTZXJ2aWNlLFxuICAgIHByaXZhdGUgaGVzdGlhRW5naW5lU2VydmljZTogSGVFbmdpbmVTZXJ2aWNlXG4gICkgeyB9XG5cbiAgYXN5bmMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jb25maWcgPSBhd2FpdCB0aGlzLmhlc3RpYUVuZ2luZVNlcnZpY2Uub2NoZXN0cmF0b3JDb25maWcodGhpcy5ub2RlVHlwZSEpO1xuXG4gICAgY29uc3QgeyByZXN1bHRzOiBtb2RlbHMgfSA9IGF3YWl0IHRoaXMuc2VhcmNoU2VydmljZS5zZWFyY2g8SVRlcm1KU09OTEQsIE5vZGVUeXBlLlRlcm0+KHtcbiAgICAgIGZpZWxkczogWydAdHlwZScsICdAaWQnLCAnbmFtZSddLFxuICAgICAgbGltaXQ6IDEwMDAsXG4gICAgICBxdWVyeToge1xuICAgICAgICBib29sOiB7XG4gICAgICAgICAgbXVzdDogW1xuICAgICAgICAgICAgbWF0Y2hUeXBlKE5vZGVUeXBlLlRlcm0pLFxuICAgICAgICAgICAgbWF0Y2hUZXJtVHlwZShUZXJtVGVybVR5cGUubW9kZWwpXG4gICAgICAgICAgXVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5tb2RlbHMgPSBtb2RlbHM7XG5cbiAgICB0aGlzLm1ldGhvZHNCeUlkID0gYXdhaXQgZnJvbSh0aGlzLm1vZGVscykucGlwZShcbiAgICAgIGZpbHRlcih2ID0+ICEhdiksXG4gICAgICBkaXN0aW5jdCh2ID0+IHZbJ0BpZCddKSxcbiAgICAgIHJlZHVjZSgocHJldiwgY3VycikgPT4gKHsgLi4ucHJldiwgW2N1cnJbJ0BpZCddXTogY3VyciB9KSwge30pXG4gICAgKS50b1Byb21pc2UoKTtcblxuICAgIC8vIGZyb20gYG1vZGVsLWxpbmtzLmpzb25gIGZpbGVcbiAgICBjb25zdCBhbGxNb2RlbHMgPSBhd2FpdCB0aGlzLmhlc3RpYUVuZ2luZVNlcnZpY2UubW9kZWxzKCk7XG5cbiAgICBjb25zdCBvcmlnaW5hbFZhbHVlcyA9ICh0aGlzLm9yaWdpbmFsVmFsdWVzIHx8IFtdKS5maWx0ZXIodmFsdWUgPT4gISh2YWx1ZSBhcyBhbnkpLmRlbGV0ZWQpO1xuICAgIGNvbnN0IHJlY2FsY3VsYXRlZFZhbHVlcyA9ICh0aGlzLnJlY2FsY3VsYXRlZFZhbHVlcyB8fCBbXSkuZmlsdGVyKHZhbHVlID0+ICEodmFsdWUgYXMgYW55KS5kZWxldGVkKTtcbiAgICBjb25zdCB0eXBlID0gb3JpZ2luYWxWYWx1ZXMubGVuZ3RoID9cbiAgICAgIG9yaWdpbmFsVmFsdWVzWzBdWydAdHlwZSddIHx8IG9yaWdpbmFsVmFsdWVzWzBdLnR5cGUgOlxuICAgICAgcmVjYWxjdWxhdGVkVmFsdWVzLmxlbmd0aCA/XG4gICAgICAgIHJlY2FsY3VsYXRlZFZhbHVlc1swXVsnQHR5cGUnXSB8fCByZWNhbGN1bGF0ZWRWYWx1ZXNbMF0udHlwZSA6XG4gICAgICAgIHVuZGVmaW5lZDtcbiAgICB0aGlzLmFsbFRlcm1zID0gYXdhaXQgdGhpcy5mZXRjaEFsbFRlcm1zKCk7XG4gICAgdGhpcy5hbGxCbGFua05vZGVzID0gdGhpcy5hbGxUZXJtcy5mbGF0TWFwKHRlcm0gPT4ge1xuICAgICAgY29uc3QgdGVybUxvZ3MgPSBnZXQodGhpcy5sb2dzLCB0ZXJtWydAaWQnXSwge30pIGFzIElOb2RlVGVybUxvZ3M7XG4gICAgICBjb25zdCBvcmlnaW5hbCA9IG9yaWdpbmFsVmFsdWVzLmZpbHRlcih2ID0+IHRlcm1bJ0BpZCddID09PSB2LnRlcm0hWydAaWQnXSk7XG4gICAgICBjb25zdCByZWNhbGN1bGF0ZWQgPSByZWNhbGN1bGF0ZWRWYWx1ZXMuZmlsdGVyKHYgPT4gdGVybVsnQGlkJ10gPT09IHYudGVybSFbJ0BpZCddKTtcbiAgICAgIGNvbnN0IGhhc0RhdGEgPSAhIW9yaWdpbmFsLmxlbmd0aCB8fCAhIXJlY2FsY3VsYXRlZC5sZW5ndGggfHwgT2JqZWN0LmtleXModGVybUxvZ3MpLmxlbmd0aCA+IDA7XG4gICAgICBjb25zdCBjb25maWdNb2RlbHMgPSB1bmlxdWUoW1xuICAgICAgICAuLi5maW5kQ29uZmlnTW9kZWxzKHRoaXMuY29uZmlnISwgdGVybVsnQGlkJ10sIHRoaXMubm9kZUtleSEsIGFsbE1vZGVscykubWFwKCh7IG1vZGVsIH0pID0+IG1vZGVsIGFzIHN0cmluZyksXG4gICAgICAgIC4uLk9iamVjdC5rZXlzKHRlcm1Mb2dzKS5maWx0ZXIoa2V5ID0+ICFpc0JhY2tncm91bmROb0lucHV0KHRlcm1Mb2dzLCBrZXkpKVxuICAgICAgXSkuZmlsdGVyKGtleSA9PiAhKFxuICAgICAgICBrZXkgaW4gdGVybUxvZ3NcbiAgICAgICkgfHwgKFxuICAgICAgICAhdGVybUxvZ3Nba2V5XS5pc0tleSAmJiAhdGVybUxvZ3Nba2V5XS5pbnB1dCAmJiAhdGVybUxvZ3Nba2V5XS5wcm9wZXJ0eVxuICAgICAgKSk7XG4gICAgICBjb25zdCBrZXlzID0gbG9nS2V5cyh0ZXJtTG9ncyk7XG4gICAgICBjb25zdCBzdWJWYWx1ZXMgPSBsb2dTdWJWYWx1ZXModGVybUxvZ3MpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXNPcGVuOiB0cnVlLFxuICAgICAgICBjYW5PcGVuOiBrZXlzLmxlbmd0aCA+IDAgfHwgc3ViVmFsdWVzLmxlbmd0aCA+IDAsXG4gICAgICAgIHRlcm0sXG4gICAgICAgIHR5cGUsXG4gICAgICAgIGNvbmZpZ01vZGVscyxcbiAgICAgICAgb3JpZ2luYWw6IHJlZHVjZVZhbHVlcyhvcmlnaW5hbCwgdGVybVsnQGlkJ10pLFxuICAgICAgICByZWNhbGN1bGF0ZWQ6IHJlZHVjZVZhbHVlcyhyZWNhbGN1bGF0ZWQsIHRlcm1bJ0BpZCddKSxcbiAgICAgICAgaXNPcmlnaW5hbDogISFvcmlnaW5hbC5sZW5ndGgsXG4gICAgICAgIGlzUmVjYWxjdWxhdGVkOiByZWNhbGN1bGF0ZWQuc29tZSh2ID0+IChbXG4gICAgICAgICAgLi4uKHYuYWRkZWQgfHwgW10pLFxuICAgICAgICAgIC4uLih2LnVwZGF0ZWQgfHwgW10pXG4gICAgICAgIF0pLmluY2x1ZGVzKCd2YWx1ZScpKSxcbiAgICAgICAgaGFzRGF0YSxcbiAgICAgICAgbG9nczogdGVybUxvZ3MsXG4gICAgICAgIGtleXMsXG4gICAgICAgIHN1YlZhbHVlc1xuICAgICAgfTtcbiAgICB9KTtcbiAgICB0aGlzLm1ldGhvZE1vZGVsc0NvdW50ID0gTWF0aC5tYXguYXBwbHkoTWF0aC5tYXgsIHRoaXMuYWxsQmxhbmtOb2Rlcy5mbGF0TWFwKHYgPT4gW1xuICAgICAgdi5jb25maWdNb2RlbHMubGVuZ3RoLFxuICAgICAgLi4udi5zdWJWYWx1ZXMubWFwKHMgPT4gcy5jb25maWdNb2RlbHM/Lmxlbmd0aCA/PyAwKVxuICAgIF0pKTtcblxuICAgIHRoaXMuZmlsdGVyUmVzdWx0cygpO1xuXG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIGZldGNoQWxsVGVybXMoKSB7XG4gICAgcmV0dXJuIGZyb20oXG4gICAgICB0aGlzLnRlcm1zLmxlbmd0aCA/XG4gICAgICAgIHRoaXMudGVybXMgOlxuICAgICAgICBbXG4gICAgICAgICAgLi4uKHRoaXMub3JpZ2luYWxWYWx1ZXMgfHwgW10pLm1hcCgoeyB0ZXJtIH0pID0+IHRlcm0pLFxuICAgICAgICAgIC4uLih0aGlzLnJlY2FsY3VsYXRlZFZhbHVlcyB8fCBbXSkubWFwKCh7IHRlcm0gfSkgPT4gdGVybSlcbiAgICAgICAgXVxuICAgICkucGlwZShcbiAgICAgIGRpc3RpbmN0KHYgPT4gdiFbJ0BpZCddKSxcbiAgICAgIHRvQXJyYXkoKSxcbiAgICAgIG1hcCh2ID0+IG9yZGVyQnkodiwgWyduYW1lJ10sIFsnYXNjJ10pKVxuICAgICkudG9Qcm9taXNlKCk7XG4gIH1cblxuICBwcml2YXRlIHN1Z2dlc3RCeVRlcm0odGVybTogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGZyb20odGhpcy5hbGxUZXJtcykucGlwZShcbiAgICAgIG1hcCh2ID0+IHYubmFtZSksXG4gICAgICBmaWx0ZXIodiA9PiB2LnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGVybS50b0xvd2VyQ2FzZSgpKSksXG4gICAgICB0b0FycmF5KClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHRyYWNrQnlCbGFua05vZGUoX2luZGV4OiBudW1iZXIsIG5vZGU6IElCbGFua05vZGVMb2cpIHtcbiAgICByZXR1cm4gbm9kZS50ZXJtWydAaWQnXTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVQb3BvdmVyKHBvcG92ZXIsIGNvbnRleHQpIHtcbiAgICByZXR1cm4gcG9wb3Zlci5pc09wZW4oKSA/IHBvcG92ZXIuY2xvc2UoKSA6IHBvcG92ZXIub3Blbihjb250ZXh0KTtcbiAgfVxuXG4gIHByaXZhdGUgaXNCYWNrZ3JvdW5kKHsgbG9ncyB9OiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9nID0gbG9ncyFbbWV0aG9kSWRdO1xuICAgIHJldHVybiBsb2c/Lm1ldGhvZFRpZXIgPT09IEVtaXNzaW9uTWV0aG9kVGllci5iYWNrZ3JvdW5kO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1JlcXVpcmVkKHsgbG9ncyB9OiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9nID0gbG9ncyFbbWV0aG9kSWRdO1xuICAgIHJldHVybiAhKCdzaG91bGRSdW5PcmNoZXN0cmF0b3InIGluIGxvZykgfHwgbG9nLnNob3VsZFJ1bk9yY2hlc3RyYXRvcjtcbiAgfVxuXG4gIHByaXZhdGUgc2hvdWxkUnVuKHsgbG9ncyB9OiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9nID0gbG9ncyFbbWV0aG9kSWRdO1xuICAgIHJldHVybiBsb2cuc2hvdWxkUnVuO1xuICB9XG5cbiAgcHJpdmF0ZSBpc1VzZXJQcm92aWRlZChub2RlOiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9nID0gbm9kZS5sb2dzIVttZXRob2RJZF07XG4gICAgcmV0dXJuIFtcbiAgICAgIHR5cGVvZiBub2RlLm9yaWdpbmFsID09PSAndW5kZWZpbmVkJywgLy8gaGFzIHZhbHVlXG4gICAgICBub2RlLmlzUmVjYWxjdWxhdGVkLCAvLyBpcyBub3QgcmVjYWxjdWxhdGVkXG4gICAgICB0aGlzLmlzQmFja2dyb3VuZChub2RlLCBtZXRob2RJZCksIC8vIGlzIG5vdCBiYWNrZ3JvdW5kIGRhdGFcbiAgICAgIGxvZz8uaXNLZXksIC8vIGlzIG5vdCBrZXlcbiAgICAgIHRoaXMuaGFzTG9nKG5vZGUsIG1ldGhvZElkLCBmYWxzZSkgLy8gc2tpcCBpZiBjb250YWlucyBsb2dzIG90aGVyIHRoYW4gb3JjaGVzdHJhdG9yXG4gICAgXS5ldmVyeSh2ID0+ICF2KTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZFN1YlZhbHVlKG5vZGU6IElCbGFua05vZGVMb2csIGluZGV4OiBudW1iZXIsIHN1YlZhbHVlPzogSUJsYW5rTm9kZUxvZ1N1YlZhbHVlKSB7XG4gICAgY29uc3QgbWV0aG9kSWQgPSB0aGlzLmdldE1ldGhvZElkQXQobm9kZSwgaW5kZXgsIHN1YlZhbHVlKTtcbiAgICBjb25zdCBsb2cgPSBnZXQobm9kZS5sb2dzIVttZXRob2RJZF0sIHN1YlZhbHVlPy5rZXksIG51bGwpO1xuICAgIHJldHVybiAhc3ViVmFsdWU/LnZhbHVlIHx8IChcbiAgICAgIC8vIGlucHV0L3Byb3BlcnR5IGNhbiBiZSBhbiBhcnJheVxuICAgICAgQXJyYXkuaXNBcnJheShsb2cpID8gbG9nLmluY2x1ZGVzKHN1YlZhbHVlPy52YWx1ZSkgOiBsb2cgPT09IHN1YlZhbHVlPy52YWx1ZVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgZ2V0TWV0aG9kSWRBdChub2RlOiBJQmxhbmtOb2RlTG9nLCBpbmRleDogbnVtYmVyLCBzdWJWYWx1ZT86IElCbGFua05vZGVMb2dTdWJWYWx1ZSkge1xuICAgIGNvbnN0IHsgY29uZmlnTW9kZWxzIH0gPSBzdWJWYWx1ZSB8fCBub2RlO1xuICAgIHJldHVybiBjb25maWdNb2RlbHNbaW5kZXhdO1xuICB9XG5cbiAgcHVibGljIG1ldGhvZE5hbWUoeyBsb2dzIH06IElCbGFua05vZGVMb2csIG1ldGhvZElkOiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5tZXRob2RzQnlJZFttZXRob2RJZF0/Lm5hbWUgfHxcbiAgICAgIGxvZ3MhW21ldGhvZElkXT8ua2V5IHx8XG4gICAgICBsb2dzIVttZXRob2RJZF0/Lm1vZGVsIHx8XG4gICAgICAobWV0aG9kSWQgPyBrZXlUb0xhYmVsKG1ldGhvZElkKSA6ICcnKTtcbiAgfVxuXG4gIHB1YmxpYyBoYXNMb2coeyBsb2dzIH06IElCbGFua05vZGVMb2csIG1ldGhvZElkOiBzdHJpbmcsIHdpdGhPcmNoZXN0cmF0b3IgPSB0cnVlKSB7XG4gICAgcmV0dXJuIG1ldGhvZElkIGluIGxvZ3MhICYmIChcbiAgICAgICdzaG91bGRSdW4nIGluIGxvZ3MhW21ldGhvZElkXSB8fFxuICAgICAgKHdpdGhPcmNoZXN0cmF0b3IgJiYgJ3Nob3VsZFJ1bk9yY2hlc3RyYXRvcicgaW4gbG9ncyFbbWV0aG9kSWRdKVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgaGFzTG9nRGV0YWlscyhub2RlOiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgY29uc3QgbG9nID0gbm9kZS5sb2dzIVttZXRob2RJZF07XG4gICAgcmV0dXJuIFtcbiAgICAgIExvZ1N0YXR1cy5zdWNjZXNzLFxuICAgICAgTG9nU3RhdHVzLmVycm9yXG4gICAgXS5pbmNsdWRlcyh0aGlzLmxvZ1N0YXR1cyhub2RlLCBtZXRob2RJZCkpICYmIChcbiAgICAgIGxvZz8ucmVxdWlyZW1lbnRzIHx8IGxvZz8ubG9ncyB8fCBsb2c/Lm1pc3NpbmdMb29rdXBzPy5sZW5ndGhcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGxvZ1N0YXR1cyhub2RlOiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaXNVc2VyUHJvdmlkZWQobm9kZSwgbWV0aG9kSWQpID9cbiAgICAgIExvZ1N0YXR1cy5kYXRhUHJvdmlkZWQgOlxuICAgICAgKFxuICAgICAgICB0aGlzLmhhc0xvZyhub2RlLCBtZXRob2RJZCkgP1xuICAgICAgICAgIChcbiAgICAgICAgICAgIHRoaXMuaXNSZXF1aXJlZChub2RlLCBtZXRob2RJZCkgP1xuICAgICAgICAgICAgICAoXG4gICAgICAgICAgICAgICAgdGhpcy5zaG91bGRSdW4obm9kZSwgbWV0aG9kSWQpID9cbiAgICAgICAgICAgICAgICAgIExvZ1N0YXR1cy5zdWNjZXNzIDpcbiAgICAgICAgICAgICAgICAgIExvZ1N0YXR1cy5lcnJvclxuICAgICAgICAgICAgICApIDpcbiAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIG5vZGUuaXNSZWNhbGN1bGF0ZWQgP1xuICAgICAgICAgICAgICAgICAgTG9nU3RhdHVzLnNraXBIaWVyYXJjaHkgOlxuICAgICAgICAgICAgICAgICAgTG9nU3RhdHVzLm5vdFJlcXVpcmVkXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICApIDpcbiAgICAgICAgICBMb2dTdGF0dXMuc2tpcEhpZXJhcmNoeVxuICAgICAgKTtcbiAgfVxuXG4gIHB1YmxpYyByZXF1aXJlbWVudENvbG9yKHZhbHVlOiBhbnkpIHtcbiAgICByZXR1cm4gIXZhbHVlIHx8IFsnTm9uZScsICdGYWxzZScsICcwJywgJzAuMCddLmluY2x1ZGVzKHZhbHVlKSA/ICdkYW5nZXInIDogJ3doaXRlJztcbiAgfVxuXG4gIHB1YmxpYyBmaWx0ZXJSZXN1bHRzKCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5ibGFua05vZGVzID0gdGhpcy5hbGxCbGFua05vZGVzLmZpbHRlcigoeyBoYXNEYXRhLCB0ZXJtOiB7IG5hbWUgfSB9KSA9PlxuICAgICAgICAoIXRoaXMub25seVdpdGhEYXRhIHx8IGhhc0RhdGEpICYmXG4gICAgICAgICghdGhpcy50ZXJtIHx8IG5hbWUgPT09IHRoaXMudGVybSlcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJweC0zIHBiLTNcIj5cbiAgPGRpdiBjbGFzcz1cImhhcy10ZXh0LXJpZ2h0IG1iLTJcIiAqbmdJZj1cIiFpc0V4dGVybmFsXCI+XG4gICAgPGEgY2xhc3M9XCJpcy1zaXplLTdcIiAqbmdJZj1cImxvZ3NVcmxcIiBbaHJlZl09XCJsb2dzVXJsXCIgdGFyZ2V0PVwiX2JsYW5rXCI+XG4gICAgICA8ZmEtaWNvbiBpY29uPVwiZXh0ZXJuYWwtbGluay1hbHRcIj48L2ZhLWljb24+XG4gICAgICA8c3BhbiBjbGFzcz1cInBsLTJcIj5PcGVuIEZ1bGwgTG9nczwvc3Bhbj5cbiAgICA8L2E+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJ0YWJsZS1jb250YWluZXIgZGF0YS10YWJsZS1jb250YWluZXIgbWItMVwiPlxuICAgIDx0YWJsZSBjbGFzcz1cInRhYmxlIGlzLW5hcnJvdyBkYXRhLXRhYmxlXCI+XG4gICAgICA8dGhlYWQ+XG4gICAgICAgIDx0cj5cbiAgICAgICAgICA8dGggY2xhc3M9XCJ3aWR0aC1hdXRvXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRcIj5cbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRyb2wgaXMtZXhwYW5kZWQgaGFzLWljb25zLXJpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPGlucHV0IGNsYXNzPVwiaW5wdXQgc2VhcmNoLWlucHV0IGlzLXNtYWxsXCJcbiAgICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwidGVybVwiIG5hbWU9XCJ0ZXJtXCJcbiAgICAgICAgICAgICAgICAgIHBsYWNlaG9sZGVyPVwiRmlsdGVyIGJ5IG5hbWVcIlxuICAgICAgICAgICAgICAgICAgW2VkaXRhYmxlXT1cImZhbHNlXCJcbiAgICAgICAgICAgICAgICAgIFtuZ2JUeXBlYWhlYWRdPVwic3VnZ2VzdFRlcm1cIlxuICAgICAgICAgICAgICAgICAgKHNlbGVjdEl0ZW0pPVwiZmlsdGVyUmVzdWx0cygpXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGEgY2xhc3M9XCJpY29uIGlzLXNtYWxsIGlzLXJpZ2h0XCJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5pcy1oaWRkZW5dPVwiIXRlcm1cIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInRlcm0gPSAnJzsgZmlsdGVyUmVzdWx0cygpO1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cInRpbWVzXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5PcmlnaW5hbDwvdGg+XG4gICAgICAgICAgPHRoPlJlY2FsY3VsYXRlZDwvdGg+XG4gICAgICAgICAgPHRoICpuZ0lmPVwib3JpZ2luYWxWYWx1ZXM/Lmxlbmd0aFwiPkRpZmZlcmVuY2U8L3RoPlxuICAgICAgICAgIDx0aCAqbmdGb3I9XCJsZXQgYyBvZiBtZXRob2RNb2RlbHNDb3VudCB8IHRpbWVzOyBsZXQgaSA9IGluZGV4XCI+KHt7aSArIDF9fSk8L3RoPlxuICAgICAgICA8L3RyPlxuICAgICAgPC90aGVhZD5cbiAgICAgIDx0Ym9keT5cbiAgICAgICAgPHRyICpuZ0lmPVwibG9hZGluZ1wiPlxuICAgICAgICAgIDx0ZCBjb2xzcGFuPVwiNVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImhhcy10ZXh0LWNlbnRlciBweS0zXCI+XG4gICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJzcGlubmVyXCIgW3B1bHNlXT1cInRydWVcIiBzaXplPVwibGdcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8L3RkPlxuICAgICAgICA8L3RyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBibGFua05vZGUgb2YgYmxhbmtOb2RlczsgdHJhY2tCeTogdHJhY2tCeUJsYW5rTm9kZVwiPlxuICAgICAgICAgIDx0ciBbY2xhc3MuaGFzLXN1Yi1yb3dzXT1cImJsYW5rTm9kZS5jYW5PcGVuXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJ3aWR0aC1hdXRvXCIgW2F0dHIudGl0bGVdPVwiYmxhbmtOb2RlLnRlcm0ubmFtZVwiPlxuICAgICAgICAgICAgICA8YSBjbGFzcz1cImlzLWlubGluZS1ibG9jayBpcy1hbGlnbi10b3AgcHItMiBvcGVuLW5vZGVcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJibGFua05vZGUuaXNPcGVuID0gIWJsYW5rTm9kZS5pc09wZW5cIlxuICAgICAgICAgICAgICAgICpuZ0lmPVwiYmxhbmtOb2RlLmNhbk9wZW5cIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGZhLWljb24gaWNvbj1cImFuZ2xlLWRvd25cIiBbY2xhc3MuaXMtaGlkZGVuXT1cIiFibGFua05vZGUuaXNPcGVuXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJhbmdsZS1yaWdodFwiIFtjbGFzcy5pcy1oaWRkZW5dPVwiYmxhbmtOb2RlLmlzT3BlblwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICA8aGUtbm9kZS1saW5rIGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrXCIgW25vZGVdPVwiYmxhbmtOb2RlLnRlcm1cIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImlzLW5vd3JhcCBoYXMtdGV4dC1lbGxpcHNpc1wiPnt7YmxhbmtOb2RlLnRlcm0ubmFtZX19PC9zcGFuPlxuICAgICAgICAgICAgICA8L2hlLW5vZGUtbGluaz5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgIDxzcGFuPnt7YmxhbmtOb2RlLm9yaWdpbmFsIHwgcHJlY2lzaW9uOjMgfCBkZWZhdWx0OictJ319PC9zcGFuPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCIhYmxhbmtOb2RlLmlzT3JpZ2luYWwgfHwgYmxhbmtOb2RlLmlzUmVjYWxjdWxhdGVkOyBlbHNlIG5vdFVwZGF0ZWRcIj5cbiAgICAgICAgICAgICAgICB7e2JsYW5rTm9kZS5yZWNhbGN1bGF0ZWQgfCBwcmVjaXNpb246MyB8IGRlZmF1bHQ6Jy0nfX1cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCAqbmdJZj1cIm9yaWdpbmFsVmFsdWVzPy5sZW5ndGhcIiBjbGFzcz1cImlzLW5vd3JhcFwiPlxuICAgICAgICAgICAgICA8aGUtYmxhbmstbm9kZS12YWx1ZS1kZWx0YSAqbmdJZj1cImJsYW5rTm9kZS5pc1JlY2FsY3VsYXRlZFwiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cImJsYW5rTm9kZS5yZWNhbGN1bGF0ZWRcIlxuICAgICAgICAgICAgICAgIFtvcmlnaW5hbFZhbHVlXT1cImJsYW5rTm9kZS5vcmlnaW5hbFwiXG4gICAgICAgICAgICAgID48L2hlLWJsYW5rLW5vZGUtdmFsdWUtZGVsdGE+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJsYW5rTm9kZU1vZGVsczsgY29udGV4dDoge2JsYW5rTm9kZTogYmxhbmtOb2RlfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvdHI+XG5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiYmxhbmtOb2RlLmtleXM/Lmxlbmd0aFwiPlxuICAgICAgICAgICAgPHRyXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBrZXkgb2YgYmxhbmtOb2RlLmtleXNcIlxuICAgICAgICAgICAgICBbY2xhc3MuaXMtaGlkZGVuXT1cIiFibGFua05vZGUuaXNPcGVuXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmhhcy1zdWItcm93c109XCJibGFua05vZGUuc3ViVmFsdWVzPy5sZW5ndGhcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJ3aWR0aC1hdXRvXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBsLTMgaGFzLXRleHQtbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwci0xIGlzLWFsaWduLXRvcFwiPkZpZWxkOjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrXCIgKm5nSWY9XCJibGFua05vZGUudHlwZVwiXG4gICAgICAgICAgICAgICAgICAgIFtocmVmXT1cImJhc2VVcmwgKyAnL3NjaGVtYS8nICsgYmxhbmtOb2RlLnR5cGUgKyAnIycgKyBrZXlcIiB0YXJnZXQ9XCJfYmxhbmtcIiBbdGl0bGVdPVwia2V5XCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1ub3dyYXAgaGFzLXRleHQtZWxsaXBzaXNcIj57e2tleX19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1pbmxpbmUtYmxvY2sgaXMtYWxpZ24tdG9wXCIgKm5nSWY9XCIhYmxhbmtOb2RlLnR5cGVcIj57e2tleX19PC9zcGFuPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJvcmlnaW5hbFZhbHVlcz8ubGVuZ3RoID8gMyA6IDJcIj48L3RkPlxuICAgICAgICAgICAgICA8dGQgY2xhc3M9XCJibGFuay1ub2RlLWluZGV4LWtleVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJibGFua05vZGVNb2RlbDsgY29udGV4dDoge2JsYW5rTm9kZTogYmxhbmtOb2RlLCBtZXRob2RJZDoga2V5fVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8dGQgKm5nSWY9XCJtZXRob2RNb2RlbHNDb3VudCA+IDFcIiBbYXR0ci5jb2xzcGFuXT1cIm1ldGhvZE1vZGVsc0NvdW50IC0gMVwiPjwvdGQ+XG4gICAgICAgICAgICA8L3RyPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgICAgPHRyXG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgc3ViVmFsdWUgb2YgYmxhbmtOb2RlLnN1YlZhbHVlc1wiXG4gICAgICAgICAgICBbY2xhc3MuaXMtaGlkZGVuXT1cIiFibGFua05vZGUuaXNPcGVuXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwbC0zIGhhcy10ZXh0LWxlZnRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrIGlzLW5vd3JhcCBoYXMtdGV4dC1lbGxpcHNpc1wiPlxuICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1hbGlnbi10b3BcIj57e3N1YlZhbHVlLmtleSB8IGtleVRvTGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzdWJWYWx1ZS52YWx1ZVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInByLTEgaXMtYWxpZ24tdG9wXCI+Ojwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwic3ViVmFsdWUua2V5XCI+XG4gICAgICAgICAgICAgICAgICAgICAgPHNwYW4gKm5nU3dpdGNoQ2FzZT1cIidiYWNrZ3JvdW5kRGF0YSdcIj57e3N1YlZhbHVlLnZhbHVlIHwga2V5VG9MYWJlbH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nU3dpdGNoRGVmYXVsdD5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxoZS1ub2RlLWxpbmsgY2xhc3M9XCJpcy1pbmxpbmUtYmxvY2tcIiBbbm9kZV09XCJ7J0B0eXBlJzonVGVybScsJ0BpZCc6c3ViVmFsdWUudmFsdWV9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXMtbm93cmFwIGhhcy10ZXh0LWVsbGlwc2lzXCI+e3tzdWJWYWx1ZS52YWx1ZSB8IGtleVRvTGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvaGUtbm9kZS1saW5rPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQgW2F0dHIuY29sc3Bhbl09XCJvcmlnaW5hbFZhbHVlcz8ubGVuZ3RoID8gMyA6IDJcIj48L3RkPlxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJsYW5rTm9kZU1vZGVsczsgY29udGV4dDoge2JsYW5rTm9kZTogYmxhbmtOb2RlLCBzdWJWYWx1ZTogc3ViVmFsdWV9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICA8L3Rib2R5PlxuICAgIDwvdGFibGU+XG4gIDwvZGl2PlxuXG4gIDxkaXYgY2xhc3M9XCJpcy1zaXplLTcgaXMtaXRhbGljXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbHVtbnMgaXMtdmFyaWFibGUgaXMtMSBteS0wXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGlzLW5hcnJvd1wiPlxuICAgICAgICA8cD5cbiAgICAgICAgICA8YSBjbGFzcz1cImlzLWlubGluZS1ibG9jayBwci0yXCJcbiAgICAgICAgICAgIChjbGljayk9XCJzaG93TGVnZW5kID0gIXNob3dMZWdlbmRcIlxuICAgICAgICAgID5cbiAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJhbmdsZS1kb3duXCIgW2NsYXNzLmlzLWhpZGRlbl09XCIhc2hvd0xlZ2VuZFwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJhbmdsZS1yaWdodFwiIFtjbGFzcy5pcy1oaWRkZW5dPVwic2hvd0xlZ2VuZFwiPjwvZmEtaWNvbj5cbiAgICAgICAgICA8L2E+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1pbmxpbmUtYmxvY2tcIj5MZWdlbmQ6PC9zcGFuPlxuICAgICAgICA8L3A+XG4gICAgICAgIDx1bCBjbGFzcz1cImNvbnRlbnQgcGwtMlwiIFtjbGFzcy5pcy1oaWRkZW5dPVwiIXNob3dMZWdlbmRcIj5cbiAgICAgICAgICA8bGlcbiAgICAgICAgICAgIGNsYXNzPVwiaGFzLXRleHQte3tsb2dDb2xvcltzdGF0dXMudmFsdWVdfX1cIlxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHN0YXR1cyBvZiBMb2dTdGF0dXMgfCBrZXlzXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZmEtaWNvbiBbaWNvbl09XCJsb2dJY29uW3N0YXR1cy52YWx1ZV1cIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cInBsLTFcIj57e3N0YXR1cy52YWx1ZX19PC9zcGFuPlxuICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJjb2x1bW4gaGFzLXRleHQtcmlnaHRcIiAqbmdJZj1cImZpbHRlcmVkVHlwZVwiPlxuICAgICAgICA8bGFiZWwgY2xhc3M9XCJpcy1pbmxpbmUtYmxvY2sgY2hlY2tib3hcIj5cbiAgICAgICAgICA8aW5wdXQgdHlwZT1cImNoZWNrYm94XCIgY2xhc3M9XCJzZWxlY3RvclwiXG4gICAgICAgICAgICBbKG5nTW9kZWwpXT1cIm9ubHlXaXRoRGF0YVwiXG4gICAgICAgICAgICAoY2hhbmdlKT1cImZpbHRlclJlc3VsdHMoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibWwtMlwiPlNob3cgb25seSByZWNhbGN1bGF0ZWQge3tmaWx0ZXJlZFR5cGUgfCBwbHVyYWxpemV9fTwvc3Bhbj5cbiAgICAgICAgPC9sYWJlbD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48bmctdGVtcGxhdGUgI2JsYW5rTm9kZU1vZGVscyBsZXQtYmxhbmtOb2RlPVwiYmxhbmtOb2RlXCIgbGV0LXN1YlZhbHVlPVwic3ViVmFsdWVcIj5cbiAgPHRkIGNsYXNzPVwiYmxhbmstbm9kZS1pbmRleC17e2l9fVwiICpuZ0Zvcj1cImxldCBjIG9mIG1ldGhvZE1vZGVsc0NvdW50IHwgdGltZXM7IGxldCBpID0gaW5kZXhcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidmFsaWRTdWJWYWx1ZShibGFua05vZGUsIGksIHN1YlZhbHVlKVwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImdldE1ldGhvZElkQXQoYmxhbmtOb2RlLCBpLCBzdWJWYWx1ZSk7IGxldCBtZXRob2RJZFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYmxhbmtOb2RlTW9kZWw7IGNvbnRleHQ6IHtibGFua05vZGU6IGJsYW5rTm9kZSwgbWV0aG9kSWQ6IG1ldGhvZElkfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvdGQ+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2JsYW5rTm9kZU1vZGVsIGxldC1ibGFua05vZGU9XCJibGFua05vZGVcIiBsZXQtbWV0aG9kSWQ9XCJtZXRob2RJZFwiPlxuICA8c3BhblxuICAgIFtjbGFzcy50cmlnZ2VyLXBvcG92ZXJdPVwiaGFzTG9nRGV0YWlscyhibGFua05vZGUsIG1ldGhvZElkKVwiXG4gICAgW25nYlBvcG92ZXJdPVwibG9nRGV0YWlsc1wiIFthdXRvQ2xvc2VdPVwiJ291dHNpZGUnXCJcbiAgICB0cmlnZ2Vycz1cIm1hbnVhbFwiICNwPVwibmdiUG9wb3ZlclwiIHBsYWNlbWVudD1cImxlZnRcIiBjb250YWluZXI9XCJib2R5XCJcbiAgICAoY2xpY2spPVwiaGFzTG9nRGV0YWlscyhibGFua05vZGUsIG1ldGhvZElkKSA/IHRvZ2dsZVBvcG92ZXIocCwgeyBsb2c6IGJsYW5rTm9kZS5sb2dzW21ldGhvZElkXSB9KSA6IG51bGxcIlxuICA+XG4gICAgPHNwYW4gY2xhc3M9XCJpcy1jYXBpdGFsaXplZFwiPnt7bWV0aG9kTmFtZShibGFua05vZGUsIG1ldGhvZElkKX19PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwicGwtMVwiICpuZ0lmPVwiaGFzTG9nKGJsYW5rTm9kZSwgbWV0aG9kSWQpICYmIGJsYW5rTm9kZS5sb2dzW21ldGhvZElkXS5tZXRob2RUaWVyXCI+W3t7YmxhbmtOb2RlLmxvZ3NbbWV0aG9kSWRdLm1ldGhvZFRpZXJ9fV08L3NwYW4+XG4gICAgPHNwYW4gY2xhc3M9XCJwbC0xIGhhcy10ZXh0LXt7bG9nQ29sb3JbbG9nU3RhdHVzKGJsYW5rTm9kZSwgbWV0aG9kSWQpXX19XCI+XG4gICAgICA8ZmEtaWNvbiBbaWNvbl09XCJsb2dJY29uW2xvZ1N0YXR1cyhibGFua05vZGUsIG1ldGhvZElkKV1cIj48L2ZhLWljb24+XG4gICAgPC9zcGFuPlxuICA8L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI25vdFVwZGF0ZWQ+XG4gIDxzcGFuPm5vdCB1cGRhdGVkPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNsb2dEZXRhaWxzIGxldC1sb2c9XCJsb2dcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImxvZy5yZXF1aXJlbWVudHNcIj5cbiAgICA8cCAqbmdGb3I9XCJsZXQga2V5IG9mIGxvZy5yZXF1aXJlbWVudHMgfCBrZXlzXCIgY2xhc3M9XCJoYXMtdGV4dC17e3JlcXVpcmVtZW50Q29sb3Ioa2V5LnZhbHVlKX19XCI+XG4gICAgICB7e2tleS5rZXl9fToge3trZXkudmFsdWV9fVxuICAgIDwvcD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2cubG9nc1wiPlxuICAgIDxwICpuZ0Zvcj1cImxldCBrZXkgb2YgbG9nLmxvZ3MgfCBrZXlzXCI+XG4gICAgICB7e2tleS5rZXl9fToge3trZXkudmFsdWV9fVxuICAgIDwvcD5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2cubWlzc2luZ0xvb2t1cHM/Lmxlbmd0aFwiPlxuICAgIDxwIGNsYXNzPVwibXQtMlwiPk1pc3NpbmcgbG9va3Vwczo8L3A+XG5cbiAgICA8ZGl2IGNsYXNzPVwidGFibGUtY29udGFpbmVyIGRhdGEtdGFibGUtY29udGFpbmVyXCI+XG4gICAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSBpcy1mdWxsd2lkdGggbWItMFwiPlxuICAgICAgICA8dGhlYWQgY2xhc3M9XCJoYXMtYmFja2dyb3VuZC1ibGFja1wiPlxuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoYXMtdGV4dC13aGl0ZVwiPkZpbGVuYW1lPC9zcGFuPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJoYXMtdGV4dC13aGl0ZVwiPkNvbHVtbiBUaXRsZTwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGFzLXRleHQtd2hpdGVcIj5Sb3cgKHRlcm0uaWQpPC9zcGFuPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3RoZWFkPlxuICAgICAgICA8dGJvZHkgY2xhc3M9XCJoYXMtYmFja2dyb3VuZC1ibGFjayBoYXMtdGV4dC13aGl0ZVwiPlxuICAgICAgICAgIDx0ciAqbmdGb3I9XCJsZXQgZGF0YSBvZiBsb2cubWlzc2luZ0xvb2t1cHNcIj5cbiAgICAgICAgICAgIDx0ZD57e2RhdGEuZmlsZW5hbWV9fTwvdGQ+XG4gICAgICAgICAgICA8dGQ+e3tkYXRhLmNvbHVtbn19PC90ZD5cbiAgICAgICAgICAgIDx0ZD57e2RhdGEudGVybUlkfX08L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvdGJvZHk+XG4gICAgICA8L3RhYmxlPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
279
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1sb2dzLW1vZGVscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbm9kZS9ub2RlLWxvZ3MtbW9kZWxzL25vZGUtbG9ncy1tb2RlbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL25vZGUvbm9kZS1sb2dzLW1vZGVscy9ub2RlLWxvZ3MtbW9kZWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQkFBK0I7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxFQUFjLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN4QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RyxPQUFPLEVBQ0ssa0JBQWtCLEVBQThDLFFBQVEsRUFBRSxZQUFZLEVBQ2pHLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFLOUQsT0FBTyxFQUF3QyxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFckUsT0FBTyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztBQVB6RCxNQUFNLEdBQUcsR0FBRyxPQUFPLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDbEMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7QUFnQzFDLE1BQU0sWUFBWSxHQUFH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QUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FDMUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksT0FBTyxDQUFDO2dCQUMvQixDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxDQUNuQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztxSEFqUVUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsNlFDM0dwQyx3alVBMk9BOzRGRGhJYSx1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsV0FBVyxFQUFFLG1DQUFtQztvQkFDaEQsU0FBUyxFQUFFLENBQUMsbUNBQW1DLENBQUM7aUJBQ2pEO29JQVFTLFFBQVE7c0JBRGYsS0FBSztnQkFNRSxPQUFPO3NCQURkLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUdDLGNBQWM7c0JBRHBCLEtBQUs7Z0JBR0Usa0JBQWtCO3NCQUR6QixLQUFLO2dCQUdFLEtBQUs7c0JBRFosS0FBSztnQkFHRSxJQUFJO3NCQURYLEtBQUs7Z0JBR0MsWUFBWTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIGNvbXBsZXhpdHkgKi9cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZnJvbSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3QsIGZpbHRlciwgcmVkdWNlLCB0b0FycmF5LCBtYXAsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICBFbWlzc2lvbiwgRW1pc3Npb25NZXRob2RUaWVyLCBJVGVybUpTT05MRCwgUHJvZHVjdCwgSW5wdXQgYXMgSGVzdGlhSW5wdXQsIE5vZGVUeXBlLCBUZXJtVGVybVR5cGVcbn0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuaW1wb3J0IHsgdW5pcXVlLCBrZXlUb0xhYmVsIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscyc7XG5pbXBvcnQgeyBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscy9kaXN0L3Rlcm0nO1xuY29uc3QgZ2V0ID0gcmVxdWlyZSgnbG9kYXNoLmdldCcpO1xuY29uc3Qgb3JkZXJCeSA9IHJlcXVpcmUoJ2xvZGFzaC5vcmRlcmJ5Jyk7XG5cbmltcG9ydCB7IElOb2RlTG9ncywgSU5vZGVUZXJtTG9ncyB9IGZyb20gJy4uL25vZGUuc2VydmljZSc7XG5pbXBvcnQgeyBIZUVuZ2luZVNlcnZpY2UsIElPcmNoZXN0cmF0b3JDb25maWcsIGZpbmRDb25maWdNb2RlbHMgfSBmcm9tICcuLi8uLi9lbmdpbmUvZW5naW5lLnNlcnZpY2UnO1xuaW1wb3J0IHsgbWF0Y2hUZXJtVHlwZSwgbWF0Y2hUeXBlIH0gZnJvbSAnLi4vLi4vc2VhcmNoL3NlYXJjaC5tb2RlbCc7XG5pbXBvcnQgeyBIZVNlYXJjaFNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZWFyY2gvc2VhcmNoLnNlcnZpY2UnO1xuaW1wb3J0IHsgYmFzZVVybCwgaXNFeHRlcm5hbCB9IGZyb20gJy4uLy4uL2NvbW1vbi91dGlscyc7XG5cbnR5cGUgc3ViVmFsdWVLZXlzID0gJ2lucHV0JyB8ICdwcm9wZXJ0eSc7XG5cbmludGVyZmFjZSBJQmxhbmtOb2RlTG9nU3ViVmFsdWUge1xuICBrZXk6IHN1YlZhbHVlS2V5cyB8ICdiYWNrZ3JvdW5kRGF0YSc7XG4gIHZhbHVlOiBhbnk7XG4gIGNvbmZpZ01vZGVsczogc3RyaW5nW107XG59XG5cbmludGVyZmFjZSBJQmxhbmtOb2RlTG9nIHtcbiAgaXNPcGVuOiBib29sZWFuO1xuICBjYW5PcGVuOiBib29sZWFuO1xuICB0ZXJtOiBJVGVybUpTT05MRDtcbiAgdHlwZT86IHN0cmluZztcbiAgY29uZmlnTW9kZWxzOiBzdHJpbmdbXTtcbiAgb3JpZ2luYWw6IG51bWJlcjtcbiAgcmVjYWxjdWxhdGVkOiBudW1iZXI7XG4gIGlzT3JpZ2luYWw6IGJvb2xlYW47XG4gIGlzUmVjYWxjdWxhdGVkOiBib29sZWFuO1xuICBoYXNEYXRhOiBib29sZWFuO1xuICBsb2dzPzogSU5vZGVUZXJtTG9ncztcbiAga2V5czogc3RyaW5nW107XG4gIHN1YlZhbHVlczogSUJsYW5rTm9kZUxvZ1N1YlZhbHVlW107XG59XG5cbmNvbnN0IHJlZHVjZVZhbHVlcyA9ICh2YWx1ZXM6IGFueVtdLCB0ZXJtSWQ6IHN0cmluZykgPT4ge1xuICBjb25zdCBwcm9wZXJ0eVZhbHVlcyA9IHZhbHVlc1xuICAgIC5tYXAoKHsgdmFsdWUgfSkgPT4gcHJvcGVydHlWYWx1ZSh2YWx1ZSwgdGVybUlkKSlcbiAgICAvLyBwcm9wZXJ0eVZhbHVlIG1heSByZXR1cm4gbnVsbCBpZiB0aGUgdmFsdWUgaXMgbnVsbCBvciB1bmRlZmluZWQsIHRoZXJlZm9yZSByZW1vdmUgdGhlbSBmcm9tIHRvdGFsXG4gICAgLmZpbHRlcih2ID0+IHYgIT09IG51bGwpO1xuICByZXR1cm4gcHJvcGVydHlWYWx1ZXMubGVuZ3RoID8gcHJvcGVydHlWYWx1ZXMucmVkdWNlKChwLCB2KSA9PiBwICsgdiwgMCkgOiB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBsb2dTdWJWYWx1ZSA9IChsb2dzOiBJTm9kZVRlcm1Mb2dzLCBrZXk6IHN0cmluZywgcHJvcDogc3ViVmFsdWVLZXlzKSA9PlxuICBsb2dzW2tleV1bcHJvcF0gPyAoXG4gICAgQXJyYXkuaXNBcnJheShsb2dzW2tleV1bcHJvcF0pID9cbiAgICAgIChsb2dzW2tleV1bcHJvcF0gYXMgc3RyaW5nW10pLm1hcCh2YWx1ZSA9PiAoeyBrZXk6IHByb3AsIHZhbHVlIH0gYXMgSUJsYW5rTm9kZUxvZ1N1YlZhbHVlKSk6XG4gICAgICB7IGtleTogcHJvcCwgdmFsdWU6IGxvZ3Nba2V5XVtwcm9wXSB9IGFzIElCbGFua05vZGVMb2dTdWJWYWx1ZVxuICApIDogdW5kZWZpbmVkO1xuXG5jb25zdCBpc0JhY2tncm91bmROb0lucHV0ID0gKGxvZ3M6IElOb2RlVGVybUxvZ3MsIGtleTogc3RyaW5nKSA9PlxuICBsb2dzW2tleV0ubWV0aG9kVGllciA9PT0gRW1pc3Npb25NZXRob2RUaWVyLmJhY2tncm91bmQgJiYgIWxvZ3Nba2V5XS5pbnB1dDtcblxuY29uc3QgbG9nU3ViVmFsdWVzID0gKGxvZ3M6IElOb2RlVGVybUxvZ3MpOiBJQmxhbmtOb2RlTG9nU3ViVmFsdWVbXSA9PlxuICBPYmplY3Qua2V5cyhsb2dzKVxuICAgIC5mbGF0TWFwKGtleSA9PlxuICAgICAgW1xuICAgICAgICBsb2dTdWJWYWx1ZShsb2dzLCBrZXksICdpbnB1dCcpLFxuICAgICAgICBsb2dTdWJWYWx1ZShsb2dzLCBrZXksICdwcm9wZXJ0eScpLFxuICAgICAgICAvLyBmb3IgYmFja2dyb3VuZCBkYXRhIHdpdGhvdXQgaW5wdXQsIGNvbnZlcnQgdGVybSB0byBpbnB1dCBzbyBpdCBpcyBkaXNwbGF5ZWQgYmVsb3cgdGhlIHRlcm1cbiAgICAgICAgaXNCYWNrZ3JvdW5kTm9JbnB1dChsb2dzLCBrZXkpID8geyBrZXk6ICdiYWNrZ3JvdW5kRGF0YScgfSBhcyBJQmxhbmtOb2RlTG9nU3ViVmFsdWUgOiB1bmRlZmluZWRcbiAgICAgIF0uZmxhdCgpXG4gICAgICAuZmlsdGVyKEJvb2xlYW4pXG4gICAgICAubWFwKHYgPT4gKHsgLi4udiwgY29uZmlnTW9kZWxzOiBba2V5XSB9KSkpO1xuXG5jb25zdCBsb2dLZXlzID0gKGxvZ3M6IElOb2RlVGVybUxvZ3MpID0+IE9iamVjdC5rZXlzKGxvZ3MpLmZpbHRlcihrZXkgPT4gbG9nc1trZXldLmlzS2V5KTtcblxuZW51bSBMb2dTdGF0dXMge1xuICBzdWNjZXNzID0gJ3N1Y2Nlc3NmdWwnLFxuICBlcnJvciA9ICdmYWlsZWQnLFxuICBza2lwSGllcmFyY2h5ID0gJ25vdCBydW4gKG1vZGVsIGhpZ2hlciB1cCBoaWVyYXJjaHkgcnVuIGluc3RlYWQpJyxcbiAgZGF0YVByb3ZpZGVkID0gJ25vdCBydW4gKHVzZXIgcHJvdmlkZWQgZGF0YSByZXRhaW5lZCknLFxuICBub3RSZXF1aXJlZCA9ICdub3QgcnVuIChub3QgcmVxdWlyZWQgdG8gcnVuKSdcbn1cblxuY29uc3QgbG9nSWNvbjoge1xuICBbc3RhdHVzIGluIExvZ1N0YXR1c106IHN0cmluZyB8IHN0cmluZ1tdO1xufSA9IHtcbiAgW0xvZ1N0YXR1cy5zdWNjZXNzXTogJ2NoZWNrJyxcbiAgW0xvZ1N0YXR1cy5lcnJvcl06ICd0aW1lcycsXG4gIFtMb2dTdGF0dXMuc2tpcEhpZXJhcmNoeV06IFsnZmFyJywgJ2NpcmNsZSddLFxuICBbTG9nU3RhdHVzLmRhdGFQcm92aWRlZF06ICdjaXJjbGUnLFxuICBbTG9nU3RhdHVzLm5vdFJlcXVpcmVkXTogJ21pbnVzLWNpcmNsZSdcbn07XG5cbmNvbnN0IGxvZ0NvbG9yOiB7XG4gIFtzdGF0dXMgaW4gTG9nU3RhdHVzXTogc3RyaW5nO1xufSA9IHtcbiAgW0xvZ1N0YXR1cy5zdWNjZXNzXTogJ3N1Y2Nlc3MnLFxuICBbTG9nU3RhdHVzLmVycm9yXTogJ2RhbmdlcicsXG4gIFtMb2dTdGF0dXMuc2tpcEhpZXJhcmNoeV06ICdkYXJrJyxcbiAgW0xvZ1N0YXR1cy5kYXRhUHJvdmlkZWRdOiAnZGFyaycsXG4gIFtMb2dTdGF0dXMubm90UmVxdWlyZWRdOiAnZ3JleSdcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2hlLW5vZGUtbG9ncy1tb2RlbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vbm9kZS1sb2dzLW1vZGVscy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25vZGUtbG9ncy1tb2RlbHMuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOb2RlTG9nc01vZGVsc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgY29uZmlnPzogSU9yY2hlc3RyYXRvckNvbmZpZztcbiAgcHJpdmF0ZSBtb2RlbHM6IElUZXJtSlNPTkxEW10gPSBbXTtcbiAgcHJpdmF0ZSBhbGxUZXJtczogSVRlcm1KU09OTERbXSA9IFtdO1xuICBwcml2YXRlIGFsbEJsYW5rTm9kZXM6IElCbGFua05vZGVMb2dbXSA9IFtdO1xuXG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgbm9kZVR5cGU/OiBOb2RlVHlwZTtcbiAgLyoqXG4gICAqIFJlc3RyaWN0IG1vZGVscyBieSBrZXkuXG4gICAqL1xuICBASW5wdXQoKVxuICBwcml2YXRlIG5vZGVLZXk/OiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBsb2dzVXJsPzogc3RyaW5nO1xuICBASW5wdXQoKVxuICBwdWJsaWMgb3JpZ2luYWxWYWx1ZXM6IChFbWlzc2lvbiB8IFByb2R1Y3QgfCBIZXN0aWFJbnB1dClbXSA9IFtdO1xuICBASW5wdXQoKVxuICBwcml2YXRlIHJlY2FsY3VsYXRlZFZhbHVlczogKEVtaXNzaW9uIHwgUHJvZHVjdCB8IEhlc3RpYUlucHV0KVtdID0gW107XG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgdGVybXM6IElUZXJtSlNPTkxEW10gPSBbXTtcbiAgQElucHV0KClcbiAgcHJpdmF0ZSBsb2dzPzogSU5vZGVMb2dzO1xuICBASW5wdXQoKVxuICBwdWJsaWMgZmlsdGVyZWRUeXBlPzogc3RyaW5nO1xuXG4gIHB1YmxpYyBiYXNlVXJsID0gYmFzZVVybCgpO1xuICBwdWJsaWMgaXNFeHRlcm5hbCA9IGlzRXh0ZXJuYWwoKTtcbiAgcHVibGljIGxvYWRpbmcgPSB0cnVlO1xuICBwdWJsaWMgYmxhbmtOb2RlczogSUJsYW5rTm9kZUxvZ1tdID0gW107XG4gIHB1YmxpYyBtZXRob2RNb2RlbHNDb3VudCA9IDA7XG4gIHB1YmxpYyBtZXRob2RzQnlJZD86IGFueTtcbiAgcHVibGljIG9ubHlXaXRoRGF0YSA9IHRydWU7XG5cbiAgcHVibGljIHNob3dMZWdlbmQgPSB0cnVlO1xuICBwdWJsaWMgTG9nU3RhdHVzID0gTG9nU3RhdHVzO1xuICBwdWJsaWMgbG9nSWNvbiA9IGxvZ0ljb247XG4gIHB1YmxpYyBsb2dDb2xvciA9IGxvZ0NvbG9yO1xuXG4gIHB1YmxpYyB0ZXJtPzogc3RyaW5nO1xuICBwdWJsaWMgc3VnZ2VzdFRlcm0gPSAodGV4dCQ6IE9ic2VydmFibGU8c3RyaW5nPikgPT5cbiAgICB0ZXh0JC5waXBlKFxuICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgIHN3aXRjaE1hcCh2ID0+IHRoaXMuc3VnZ2VzdEJ5VGVybSh2KSksXG4gICAgKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHNlYXJjaFNlcnZpY2U6IEhlU2VhcmNoU2VydmljZSxcbiAgICBwcml2YXRlIGhlc3RpYUVuZ2luZVNlcnZpY2U6IEhlRW5naW5lU2VydmljZVxuICApIHsgfVxuXG4gIGFzeW5jIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29uZmlnID0gYXdhaXQgdGhpcy5oZXN0aWFFbmdpbmVTZXJ2aWNlLm9jaGVzdHJhdG9yQ29uZmlnKHRoaXMubm9kZVR5cGUhKTtcblxuICAgIGNvbnN0IHsgcmVzdWx0czogbW9kZWxzIH0gPSBhd2FpdCB0aGlzLnNlYXJjaFNlcnZpY2Uuc2VhcmNoPElUZXJtSlNPTkxELCBOb2RlVHlwZS5UZXJtPih7XG4gICAgICBmaWVsZHM6IFsnQHR5cGUnLCAnQGlkJywgJ25hbWUnXSxcbiAgICAgIGxpbWl0OiAxMDAwLFxuICAgICAgcXVlcnk6IHtcbiAgICAgICAgYm9vbDoge1xuICAgICAgICAgIG11c3Q6IFtcbiAgICAgICAgICAgIG1hdGNoVHlwZShOb2RlVHlwZS5UZXJtKSxcbiAgICAgICAgICAgIG1hdGNoVGVybVR5cGUoVGVybVRlcm1UeXBlLm1vZGVsKVxuICAgICAgICAgIF1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuICAgIHRoaXMubW9kZWxzID0gbW9kZWxzO1xuXG4gICAgdGhpcy5tZXRob2RzQnlJZCA9IGF3YWl0IGZyb20odGhpcy5tb2RlbHMpLnBpcGUoXG4gICAgICBmaWx0ZXIodiA9PiAhIXYpLFxuICAgICAgZGlzdGluY3QodiA9PiB2WydAaWQnXSksXG4gICAgICByZWR1Y2UoKHByZXYsIGN1cnIpID0+ICh7IC4uLnByZXYsIFtjdXJyWydAaWQnXV06IGN1cnIgfSksIHt9KVxuICAgICkudG9Qcm9taXNlKCk7XG5cbiAgICAvLyBmcm9tIGBtb2RlbC1saW5rcy5qc29uYCBmaWxlXG4gICAgY29uc3QgYWxsTW9kZWxzID0gYXdhaXQgdGhpcy5oZXN0aWFFbmdpbmVTZXJ2aWNlLm1vZGVscygpO1xuXG4gICAgY29uc3Qgb3JpZ2luYWxWYWx1ZXMgPSAodGhpcy5vcmlnaW5hbFZhbHVlcyB8fCBbXSkuZmlsdGVyKHZhbHVlID0+ICEodmFsdWUgYXMgYW55KS5kZWxldGVkKTtcbiAgICBjb25zdCByZWNhbGN1bGF0ZWRWYWx1ZXMgPSAodGhpcy5yZWNhbGN1bGF0ZWRWYWx1ZXMgfHwgW10pLmZpbHRlcih2YWx1ZSA9PiAhKHZhbHVlIGFzIGFueSkuZGVsZXRlZCk7XG4gICAgY29uc3QgdHlwZSA9IG9yaWdpbmFsVmFsdWVzLmxlbmd0aCA/XG4gICAgICBvcmlnaW5hbFZhbHVlc1swXVsnQHR5cGUnXSB8fCBvcmlnaW5hbFZhbHVlc1swXS50eXBlIDpcbiAgICAgIHJlY2FsY3VsYXRlZFZhbHVlcy5sZW5ndGggP1xuICAgICAgICByZWNhbGN1bGF0ZWRWYWx1ZXNbMF1bJ0B0eXBlJ10gfHwgcmVjYWxjdWxhdGVkVmFsdWVzWzBdLnR5cGUgOlxuICAgICAgICB1bmRlZmluZWQ7XG4gICAgdGhpcy5hbGxUZXJtcyA9IGF3YWl0IHRoaXMuZmV0Y2hBbGxUZXJtcygpO1xuICAgIHRoaXMuYWxsQmxhbmtOb2RlcyA9IHRoaXMuYWxsVGVybXMuZmxhdE1hcCh0ZXJtID0+IHtcbiAgICAgIGNvbnN0IHRlcm1Mb2dzID0gZ2V0KHRoaXMubG9ncywgdGVybVsnQGlkJ10sIHt9KSBhcyBJTm9kZVRlcm1Mb2dzO1xuICAgICAgY29uc3Qgb3JpZ2luYWwgPSBvcmlnaW5hbFZhbHVlcy5maWx0ZXIodiA9PiB0ZXJtWydAaWQnXSA9PT0gdi50ZXJtIVsnQGlkJ10pO1xuICAgICAgY29uc3QgcmVjYWxjdWxhdGVkID0gcmVjYWxjdWxhdGVkVmFsdWVzLmZpbHRlcih2ID0+IHRlcm1bJ0BpZCddID09PSB2LnRlcm0hWydAaWQnXSk7XG4gICAgICBjb25zdCBoYXNEYXRhID0gISFvcmlnaW5hbC5sZW5ndGggfHwgISFyZWNhbGN1bGF0ZWQubGVuZ3RoIHx8IE9iamVjdC5rZXlzKHRlcm1Mb2dzKS5sZW5ndGggPiAwO1xuICAgICAgY29uc3QgY29uZmlnTW9kZWxzID0gdW5pcXVlKFtcbiAgICAgICAgLi4uZmluZENvbmZpZ01vZGVscyh0aGlzLmNvbmZpZyEsIHRlcm1bJ0BpZCddLCB0aGlzLm5vZGVLZXkhLCBhbGxNb2RlbHMpLm1hcCgoeyBtb2RlbCB9KSA9PiBtb2RlbCBhcyBzdHJpbmcpLFxuICAgICAgICAuLi5PYmplY3Qua2V5cyh0ZXJtTG9ncykuZmlsdGVyKGtleSA9PiAhaXNCYWNrZ3JvdW5kTm9JbnB1dCh0ZXJtTG9ncywga2V5KSlcbiAgICAgIF0pLmZpbHRlcihrZXkgPT4gIShcbiAgICAgICAga2V5IGluIHRlcm1Mb2dzXG4gICAgICApIHx8IChcbiAgICAgICAgIXRlcm1Mb2dzW2tleV0uaXNLZXkgJiYgIXRlcm1Mb2dzW2tleV0uaW5wdXQgJiYgIXRlcm1Mb2dzW2tleV0ucHJvcGVydHlcbiAgICAgICkpO1xuICAgICAgY29uc3Qga2V5cyA9IGxvZ0tleXModGVybUxvZ3MpO1xuICAgICAgY29uc3Qgc3ViVmFsdWVzID0gbG9nU3ViVmFsdWVzKHRlcm1Mb2dzKTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlzT3BlbjogdHJ1ZSxcbiAgICAgICAgY2FuT3Blbjoga2V5cy5sZW5ndGggPiAwIHx8IHN1YlZhbHVlcy5sZW5ndGggPiAwLFxuICAgICAgICB0ZXJtLFxuICAgICAgICB0eXBlLFxuICAgICAgICBjb25maWdNb2RlbHMsXG4gICAgICAgIG9yaWdpbmFsOiByZWR1Y2VWYWx1ZXMob3JpZ2luYWwsIHRlcm1bJ0BpZCddKSxcbiAgICAgICAgcmVjYWxjdWxhdGVkOiByZWR1Y2VWYWx1ZXMocmVjYWxjdWxhdGVkLCB0ZXJtWydAaWQnXSksXG4gICAgICAgIGlzT3JpZ2luYWw6ICEhb3JpZ2luYWwubGVuZ3RoLFxuICAgICAgICBpc1JlY2FsY3VsYXRlZDogcmVjYWxjdWxhdGVkLnNvbWUodiA9PiAoW1xuICAgICAgICAgIC4uLih2LmFkZGVkIHx8IFtdKSxcbiAgICAgICAgICAuLi4odi51cGRhdGVkIHx8IFtdKVxuICAgICAgICBdKS5pbmNsdWRlcygndmFsdWUnKSksXG4gICAgICAgIGhhc0RhdGEsXG4gICAgICAgIGxvZ3M6IHRlcm1Mb2dzLFxuICAgICAgICBrZXlzLFxuICAgICAgICBzdWJWYWx1ZXNcbiAgICAgIH07XG4gICAgfSk7XG4gICAgdGhpcy5tZXRob2RNb2RlbHNDb3VudCA9IE1hdGgubWF4LmFwcGx5KE1hdGgubWF4LCB0aGlzLmFsbEJsYW5rTm9kZXMuZmxhdE1hcCh2ID0+IFtcbiAgICAgIHYuY29uZmlnTW9kZWxzLmxlbmd0aCxcbiAgICAgIC4uLnYuc3ViVmFsdWVzLm1hcChzID0+IHMuY29uZmlnTW9kZWxzPy5sZW5ndGggPz8gMClcbiAgICBdKSk7XG5cbiAgICB0aGlzLmZpbHRlclJlc3VsdHMoKTtcblxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBmZXRjaEFsbFRlcm1zKCkge1xuICAgIHJldHVybiBmcm9tKFxuICAgICAgdGhpcy50ZXJtcy5sZW5ndGggP1xuICAgICAgICB0aGlzLnRlcm1zIDpcbiAgICAgICAgW1xuICAgICAgICAgIC4uLih0aGlzLm9yaWdpbmFsVmFsdWVzIHx8IFtdKS5tYXAoKHsgdGVybSB9KSA9PiB0ZXJtKSxcbiAgICAgICAgICAuLi4odGhpcy5yZWNhbGN1bGF0ZWRWYWx1ZXMgfHwgW10pLm1hcCgoeyB0ZXJtIH0pID0+IHRlcm0pXG4gICAgICAgIF1cbiAgICApLnBpcGUoXG4gICAgICBkaXN0aW5jdCh2ID0+IHYhWydAaWQnXSksXG4gICAgICB0b0FycmF5KCksXG4gICAgICBtYXAodiA9PiBvcmRlckJ5KHYsIFsnbmFtZSddLCBbJ2FzYyddKSlcbiAgICApLnRvUHJvbWlzZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBzdWdnZXN0QnlUZXJtKHRlcm06IHN0cmluZykge1xuICAgIHJldHVybiBmcm9tKHRoaXMuYWxsVGVybXMpLnBpcGUoXG4gICAgICBtYXAodiA9PiB2Lm5hbWUpLFxuICAgICAgZmlsdGVyKHYgPT4gdi50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRlcm0udG9Mb3dlckNhc2UoKSkpLFxuICAgICAgdG9BcnJheSgpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyB0cmFja0J5QmxhbmtOb2RlKF9pbmRleDogbnVtYmVyLCBub2RlOiBJQmxhbmtOb2RlTG9nKSB7XG4gICAgcmV0dXJuIG5vZGUudGVybVsnQGlkJ107XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlUG9wb3Zlcihwb3BvdmVyLCBjb250ZXh0KSB7XG4gICAgcmV0dXJuIHBvcG92ZXIuaXNPcGVuKCkgPyBwb3BvdmVyLmNsb3NlKCkgOiBwb3BvdmVyLm9wZW4oY29udGV4dCk7XG4gIH1cblxuICBwcml2YXRlIGlzQmFja2dyb3VuZCh7IGxvZ3MgfTogSUJsYW5rTm9kZUxvZywgbWV0aG9kSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGxvZyA9IGxvZ3MhW21ldGhvZElkXTtcbiAgICByZXR1cm4gbG9nPy5tZXRob2RUaWVyID09PSBFbWlzc2lvbk1ldGhvZFRpZXIuYmFja2dyb3VuZDtcbiAgfVxuXG4gIHByaXZhdGUgaXNSZXF1aXJlZCh7IGxvZ3MgfTogSUJsYW5rTm9kZUxvZywgbWV0aG9kSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGxvZyA9IGxvZ3MhW21ldGhvZElkXTtcbiAgICByZXR1cm4gISgnc2hvdWxkUnVuT3JjaGVzdHJhdG9yJyBpbiBsb2cpIHx8IGxvZy5zaG91bGRSdW5PcmNoZXN0cmF0b3I7XG4gIH1cblxuICBwcml2YXRlIHNob3VsZFJ1bih7IGxvZ3MgfTogSUJsYW5rTm9kZUxvZywgbWV0aG9kSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGxvZyA9IGxvZ3MhW21ldGhvZElkXTtcbiAgICByZXR1cm4gbG9nLnNob3VsZFJ1bjtcbiAgfVxuXG4gIHByaXZhdGUgaXNVc2VyUHJvdmlkZWQobm9kZTogSUJsYW5rTm9kZUxvZywgbWV0aG9kSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGxvZyA9IG5vZGUubG9ncyFbbWV0aG9kSWRdO1xuICAgIHJldHVybiBbXG4gICAgICB0eXBlb2Ygbm9kZS5vcmlnaW5hbCA9PT0gJ3VuZGVmaW5lZCcsIC8vIGhhcyB2YWx1ZVxuICAgICAgbm9kZS5pc1JlY2FsY3VsYXRlZCwgLy8gaXMgbm90IHJlY2FsY3VsYXRlZFxuICAgICAgdGhpcy5pc0JhY2tncm91bmQobm9kZSwgbWV0aG9kSWQpLCAvLyBpcyBub3QgYmFja2dyb3VuZCBkYXRhXG4gICAgICBsb2c/LmlzS2V5LCAvLyBpcyBub3Qga2V5XG4gICAgICB0aGlzLmhhc0xvZyhub2RlLCBtZXRob2RJZCwgZmFsc2UpIC8vIHNraXAgaWYgY29udGFpbnMgbG9ncyBvdGhlciB0aGFuIG9yY2hlc3RyYXRvclxuICAgIF0uZXZlcnkodiA9PiAhdik7XG4gIH1cblxuICBwdWJsaWMgdmFsaWRTdWJWYWx1ZShub2RlOiBJQmxhbmtOb2RlTG9nLCBpbmRleDogbnVtYmVyLCBzdWJWYWx1ZT86IElCbGFua05vZGVMb2dTdWJWYWx1ZSkge1xuICAgIGNvbnN0IG1ldGhvZElkID0gdGhpcy5nZXRNZXRob2RJZEF0KG5vZGUsIGluZGV4LCBzdWJWYWx1ZSk7XG4gICAgY29uc3QgbG9nID0gZ2V0KG5vZGUubG9ncyFbbWV0aG9kSWRdLCBzdWJWYWx1ZT8ua2V5LCBudWxsKTtcbiAgICByZXR1cm4gIXN1YlZhbHVlPy52YWx1ZSB8fCAoXG4gICAgICAvLyBpbnB1dC9wcm9wZXJ0eSBjYW4gYmUgYW4gYXJyYXlcbiAgICAgIEFycmF5LmlzQXJyYXkobG9nKSA/IGxvZy5pbmNsdWRlcyhzdWJWYWx1ZT8udmFsdWUpIDogbG9nID09PSBzdWJWYWx1ZT8udmFsdWVcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldE1ldGhvZElkQXQobm9kZTogSUJsYW5rTm9kZUxvZywgaW5kZXg6IG51bWJlciwgc3ViVmFsdWU/OiBJQmxhbmtOb2RlTG9nU3ViVmFsdWUpIHtcbiAgICBjb25zdCB7IGNvbmZpZ01vZGVscyB9ID0gc3ViVmFsdWUgfHwgbm9kZTtcbiAgICByZXR1cm4gY29uZmlnTW9kZWxzW2luZGV4XTtcbiAgfVxuXG4gIHB1YmxpYyBtZXRob2ROYW1lKHsgbG9ncyB9OiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMubWV0aG9kc0J5SWRbbWV0aG9kSWRdPy5uYW1lIHx8XG4gICAgICBsb2dzIVttZXRob2RJZF0/LmtleSB8fFxuICAgICAgbG9ncyFbbWV0aG9kSWRdPy5tb2RlbCB8fFxuICAgICAgKG1ldGhvZElkID8ga2V5VG9MYWJlbChtZXRob2RJZCkgOiAnJyk7XG4gIH1cblxuICBwdWJsaWMgaGFzTG9nKHsgbG9ncyB9OiBJQmxhbmtOb2RlTG9nLCBtZXRob2RJZDogc3RyaW5nLCB3aXRoT3JjaGVzdHJhdG9yID0gdHJ1ZSkge1xuICAgIHJldHVybiBtZXRob2RJZCBpbiBsb2dzISAmJiAoXG4gICAgICAnc2hvdWxkUnVuJyBpbiBsb2dzIVttZXRob2RJZF0gfHxcbiAgICAgICh3aXRoT3JjaGVzdHJhdG9yICYmICdzaG91bGRSdW5PcmNoZXN0cmF0b3InIGluIGxvZ3MhW21ldGhvZElkXSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGhhc0xvZ0RldGFpbHMobm9kZTogSUJsYW5rTm9kZUxvZywgbWV0aG9kSWQ6IHN0cmluZykge1xuICAgIGNvbnN0IGxvZyA9IG5vZGUubG9ncyFbbWV0aG9kSWRdO1xuICAgIHJldHVybiBbXG4gICAgICBMb2dTdGF0dXMuc3VjY2VzcyxcbiAgICAgIExvZ1N0YXR1cy5lcnJvclxuICAgIF0uaW5jbHVkZXModGhpcy5sb2dTdGF0dXMobm9kZSwgbWV0aG9kSWQpKSAmJiAoXG4gICAgICBsb2c/LnJlcXVpcmVtZW50cyB8fCBsb2c/LmxvZ3MgfHwgbG9nPy5taXNzaW5nTG9va3Vwcz8ubGVuZ3RoXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBsb2dTdGF0dXMobm9kZTogSUJsYW5rTm9kZUxvZywgbWV0aG9kSWQ6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmlzVXNlclByb3ZpZGVkKG5vZGUsIG1ldGhvZElkKSA/XG4gICAgICBMb2dTdGF0dXMuZGF0YVByb3ZpZGVkIDpcbiAgICAgIChcbiAgICAgICAgdGhpcy5oYXNMb2cobm9kZSwgbWV0aG9kSWQpID9cbiAgICAgICAgICAoXG4gICAgICAgICAgICB0aGlzLmlzUmVxdWlyZWQobm9kZSwgbWV0aG9kSWQpID9cbiAgICAgICAgICAgICAgKFxuICAgICAgICAgICAgICAgIHRoaXMuc2hvdWxkUnVuKG5vZGUsIG1ldGhvZElkKSA/XG4gICAgICAgICAgICAgICAgICBMb2dTdGF0dXMuc3VjY2VzcyA6XG4gICAgICAgICAgICAgICAgICBMb2dTdGF0dXMuZXJyb3JcbiAgICAgICAgICAgICAgKSA6XG4gICAgICAgICAgICAgIChcbiAgICAgICAgICAgICAgICBub2RlLmlzUmVjYWxjdWxhdGVkID9cbiAgICAgICAgICAgICAgICAgIExvZ1N0YXR1cy5za2lwSGllcmFyY2h5IDpcbiAgICAgICAgICAgICAgICAgIExvZ1N0YXR1cy5ub3RSZXF1aXJlZFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgKSA6XG4gICAgICAgICAgTG9nU3RhdHVzLnNraXBIaWVyYXJjaHlcbiAgICAgICk7XG4gIH1cblxuICBwdWJsaWMgcmVxdWlyZW1lbnRDb2xvcih2YWx1ZTogYW55KSB7XG4gICAgcmV0dXJuICF2YWx1ZSB8fCBbJ05vbmUnLCAnRmFsc2UnLCAnMCcsICcwLjAnXS5pbmNsdWRlcyh2YWx1ZSkgPyAnZGFuZ2VyJyA6ICd3aGl0ZSc7XG4gIH1cblxuICBwdWJsaWMgZmlsdGVyUmVzdWx0cygpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuYmxhbmtOb2RlcyA9IHRoaXMuYWxsQmxhbmtOb2Rlcy5maWx0ZXIoKHsgaGFzRGF0YSwgdGVybTogeyBuYW1lIH0gfSkgPT5cbiAgICAgICAgKCF0aGlzLm9ubHlXaXRoRGF0YSB8fCBoYXNEYXRhKSAmJlxuICAgICAgICAoIXRoaXMudGVybSB8fCBuYW1lID09PSB0aGlzLnRlcm0pXG4gICAgICApO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHgtMyBwYi0zXCI+XG4gIDxkaXYgY2xhc3M9XCJoYXMtdGV4dC1yaWdodCBtYi0yXCIgKm5nSWY9XCIhaXNFeHRlcm5hbFwiPlxuICAgIDxhIGNsYXNzPVwiaXMtc2l6ZS03XCIgKm5nSWY9XCJsb2dzVXJsXCIgW2hyZWZdPVwibG9nc1VybFwiIHRhcmdldD1cIl9ibGFua1wiPlxuICAgICAgPGZhLWljb24gaWNvbj1cImV4dGVybmFsLWxpbmstYWx0XCI+PC9mYS1pY29uPlxuICAgICAgPHNwYW4gY2xhc3M9XCJwbC0yXCI+T3BlbiBGdWxsIExvZ3M8L3NwYW4+XG4gICAgPC9hPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwidGFibGUtY29udGFpbmVyIGRhdGEtdGFibGUtY29udGFpbmVyIG1iLTFcIj5cbiAgICA8dGFibGUgY2xhc3M9XCJ0YWJsZSBpcy1uYXJyb3cgZGF0YS10YWJsZVwiPlxuICAgICAgPHRoZWFkPlxuICAgICAgICA8dHI+XG4gICAgICAgICAgPHRoIGNsYXNzPVwid2lkdGgtYXV0b1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250cm9sIGlzLWV4cGFuZGVkIGhhcy1pY29ucy1yaWdodFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCBjbGFzcz1cImlucHV0IHNlYXJjaC1pbnB1dCBpcy1zbWFsbFwiXG4gICAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInRlcm1cIiBuYW1lPVwidGVybVwiXG4gICAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cIkZpbHRlciBieSBuYW1lXCJcbiAgICAgICAgICAgICAgICAgIFtlZGl0YWJsZV09XCJmYWxzZVwiXG4gICAgICAgICAgICAgICAgICBbbmdiVHlwZWFoZWFkXT1cInN1Z2dlc3RUZXJtXCJcbiAgICAgICAgICAgICAgICAgIChzZWxlY3RJdGVtKT1cImZpbHRlclJlc3VsdHMoKVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxhIGNsYXNzPVwiaWNvbiBpcy1zbWFsbCBpcy1yaWdodFwiXG4gICAgICAgICAgICAgICAgICBbY2xhc3MuaXMtaGlkZGVuXT1cIiF0ZXJtXCJcbiAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0ZXJtID0gJyc7IGZpbHRlclJlc3VsdHMoKTtcIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJ0aW1lc1wiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+T3JpZ2luYWw8L3RoPlxuICAgICAgICAgIDx0aD5SZWNhbGN1bGF0ZWQ8L3RoPlxuICAgICAgICAgIDx0aCAqbmdJZj1cIm9yaWdpbmFsVmFsdWVzPy5sZW5ndGhcIj5EaWZmZXJlbmNlPC90aD5cbiAgICAgICAgICA8dGggKm5nRm9yPVwibGV0IGMgb2YgbWV0aG9kTW9kZWxzQ291bnQgfCB0aW1lczsgbGV0IGkgPSBpbmRleFwiPih7e2kgKyAxfX0pPC90aD5cbiAgICAgICAgPC90cj5cbiAgICAgIDwvdGhlYWQ+XG4gICAgICA8dGJvZHk+XG4gICAgICAgIDx0ciAqbmdJZj1cImxvYWRpbmdcIj5cbiAgICAgICAgICA8dGQgY29sc3Bhbj1cIjVcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoYXMtdGV4dC1jZW50ZXIgcHktM1wiPlxuICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwic3Bpbm5lclwiIFtwdWxzZV09XCJ0cnVlXCIgc2l6ZT1cImxnXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC90ZD5cbiAgICAgICAgPC90cj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYmxhbmtOb2RlIG9mIGJsYW5rTm9kZXM7IHRyYWNrQnk6IHRyYWNrQnlCbGFua05vZGVcIj5cbiAgICAgICAgICA8dHIgW2NsYXNzLmhhcy1zdWItcm93c109XCJibGFua05vZGUuY2FuT3BlblwiPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwid2lkdGgtYXV0b1wiIFthdHRyLnRpdGxlXT1cImJsYW5rTm9kZS50ZXJtLm5hbWVcIj5cbiAgICAgICAgICAgICAgPGEgY2xhc3M9XCJpcy1pbmxpbmUtYmxvY2sgaXMtYWxpZ24tdG9wIHByLTIgb3Blbi1ub2RlXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiYmxhbmtOb2RlLmlzT3BlbiA9ICFibGFua05vZGUuaXNPcGVuXCJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImJsYW5rTm9kZS5jYW5PcGVuXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxmYS1pY29uIGljb249XCJhbmdsZS1kb3duXCIgW2NsYXNzLmlzLWhpZGRlbl09XCIhYmxhbmtOb2RlLmlzT3BlblwiPjwvZmEtaWNvbj5cbiAgICAgICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwiYW5nbGUtcmlnaHRcIiBbY2xhc3MuaXMtaGlkZGVuXT1cImJsYW5rTm9kZS5pc09wZW5cIj48L2ZhLWljb24+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgPGhlLW5vZGUtbGluayBjbGFzcz1cImlzLWlubGluZS1ibG9ja1wiIFtub2RlXT1cImJsYW5rTm9kZS50ZXJtXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJpcy1ub3dyYXAgaGFzLXRleHQtZWxsaXBzaXNcIj57e2JsYW5rTm9kZS50ZXJtLm5hbWV9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPC9oZS1ub2RlLWxpbms+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICA8c3Bhbj57e2JsYW5rTm9kZS5vcmlnaW5hbCB8IHByZWNpc2lvbjozIHwgZGVmYXVsdDonLSd9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwiIWJsYW5rTm9kZS5pc09yaWdpbmFsIHx8IGJsYW5rTm9kZS5pc1JlY2FsY3VsYXRlZDsgZWxzZSBub3RVcGRhdGVkXCI+XG4gICAgICAgICAgICAgICAge3tibGFua05vZGUucmVjYWxjdWxhdGVkIHwgcHJlY2lzaW9uOjMgfCBkZWZhdWx0OictJ319XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQgKm5nSWY9XCJvcmlnaW5hbFZhbHVlcz8ubGVuZ3RoXCIgY2xhc3M9XCJpcy1ub3dyYXBcIj5cbiAgICAgICAgICAgICAgPGhlLWJsYW5rLW5vZGUtdmFsdWUtZGVsdGEgKm5nSWY9XCJibGFua05vZGUuaXNSZWNhbGN1bGF0ZWRcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJibGFua05vZGUucmVjYWxjdWxhdGVkXCJcbiAgICAgICAgICAgICAgICBbb3JpZ2luYWxWYWx1ZV09XCJibGFua05vZGUub3JpZ2luYWxcIlxuICAgICAgICAgICAgICA+PC9oZS1ibGFuay1ub2RlLXZhbHVlLWRlbHRhPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJibGFua05vZGVNb2RlbHM7IGNvbnRleHQ6IHtibGFua05vZGU6IGJsYW5rTm9kZX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICA8L3RyPlxuXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImJsYW5rTm9kZS5rZXlzPy5sZW5ndGhcIj5cbiAgICAgICAgICAgIDx0clxuICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQga2V5IG9mIGJsYW5rTm9kZS5rZXlzXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmlzLWhpZGRlbl09XCIhYmxhbmtOb2RlLmlzT3BlblwiXG4gICAgICAgICAgICAgIFtjbGFzcy5oYXMtc3ViLXJvd3NdPVwiYmxhbmtOb2RlLnN1YlZhbHVlcz8ubGVuZ3RoXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwid2lkdGgtYXV0b1wiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwbC0zIGhhcy10ZXh0LWxlZnRcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHItMSBpcy1hbGlnbi10b3BcIj5GaWVsZDo8L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8YSBjbGFzcz1cImlzLWlubGluZS1ibG9ja1wiICpuZ0lmPVwiYmxhbmtOb2RlLnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICBbaHJlZl09XCJiYXNlVXJsICsgJy9zY2hlbWEvJyArIGJsYW5rTm9kZS50eXBlICsgJyMnICsga2V5XCIgdGFyZ2V0PVwiX2JsYW5rXCIgW3RpdGxlXT1cImtleVwiXG4gICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXMtbm93cmFwIGhhcy10ZXh0LWVsbGlwc2lzXCI+e3trZXl9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrIGlzLWFsaWduLXRvcFwiICpuZ0lmPVwiIWJsYW5rTm9kZS50eXBlXCI+e3trZXl9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkIFthdHRyLmNvbHNwYW5dPVwib3JpZ2luYWxWYWx1ZXM/Lmxlbmd0aCA/IDMgOiAyXCI+PC90ZD5cbiAgICAgICAgICAgICAgPHRkIGNsYXNzPVwiYmxhbmstbm9kZS1pbmRleC1rZXlcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiYmxhbmtOb2RlTW9kZWw7IGNvbnRleHQ6IHtibGFua05vZGU6IGJsYW5rTm9kZSwgbWV0aG9kSWQ6IGtleX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPHRkICpuZ0lmPVwibWV0aG9kTW9kZWxzQ291bnQgPiAxXCIgW2F0dHIuY29sc3Bhbl09XCJtZXRob2RNb2RlbHNDb3VudCAtIDFcIj48L3RkPlxuICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgIDx0clxuICAgICAgICAgICAgKm5nRm9yPVwibGV0IHN1YlZhbHVlIG9mIGJsYW5rTm9kZS5zdWJWYWx1ZXNcIlxuICAgICAgICAgICAgW2NsYXNzLmlzLWhpZGRlbl09XCIhYmxhbmtOb2RlLmlzT3BlblwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGwtMyBoYXMtdGV4dC1sZWZ0XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlzLWlubGluZS1ibG9jayBpcy1ub3dyYXAgaGFzLXRleHQtZWxsaXBzaXNcIj5cbiAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXMtYWxpZ24tdG9wXCI+e3tzdWJWYWx1ZS5rZXkgfCBrZXlUb0xhYmVsfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic3ViVmFsdWUudmFsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwci0xIGlzLWFsaWduLXRvcFwiPjo8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cInN1YlZhbHVlLmtleVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuICpuZ1N3aXRjaENhc2U9XCInYmFja2dyb3VuZERhdGEnXCI+e3tzdWJWYWx1ZS52YWx1ZSB8IGtleVRvTGFiZWx9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1N3aXRjaERlZmF1bHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8aGUtbm9kZS1saW5rIGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrXCIgW25vZGVdPVwieydAdHlwZSc6J1Rlcm0nLCdAaWQnOnN1YlZhbHVlLnZhbHVlfVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImlzLW5vd3JhcCBoYXMtdGV4dC1lbGxpcHNpc1wiPnt7c3ViVmFsdWUudmFsdWUgfCBrZXlUb0xhYmVsfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2hlLW5vZGUtbGluaz5cbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgPHRkIFthdHRyLmNvbHNwYW5dPVwib3JpZ2luYWxWYWx1ZXM/Lmxlbmd0aCA/IDMgOiAyXCI+PC90ZD5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJibGFua05vZGVNb2RlbHM7IGNvbnRleHQ6IHtibGFua05vZGU6IGJsYW5rTm9kZSwgc3ViVmFsdWU6IHN1YlZhbHVlfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgPC90Ym9keT5cbiAgICA8L3RhYmxlPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiaXMtc2l6ZS03IGlzLWl0YWxpY1wiPlxuICAgIDxkaXYgY2xhc3M9XCJjb2x1bW5zIGlzLXZhcmlhYmxlIGlzLTEgbXktMFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbHVtbiBpcy1uYXJyb3dcIj5cbiAgICAgICAgPHA+XG4gICAgICAgICAgPGEgY2xhc3M9XCJpcy1pbmxpbmUtYmxvY2sgcHItMlwiXG4gICAgICAgICAgICAoY2xpY2spPVwic2hvd0xlZ2VuZCA9ICFzaG93TGVnZW5kXCJcbiAgICAgICAgICA+XG4gICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwiYW5nbGUtZG93blwiIFtjbGFzcy5pcy1oaWRkZW5dPVwiIXNob3dMZWdlbmRcIj48L2ZhLWljb24+XG4gICAgICAgICAgICA8ZmEtaWNvbiBpY29uPVwiYW5nbGUtcmlnaHRcIiBbY2xhc3MuaXMtaGlkZGVuXT1cInNob3dMZWdlbmRcIj48L2ZhLWljb24+XG4gICAgICAgICAgPC9hPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrXCI+TGVnZW5kOjwvc3Bhbj5cbiAgICAgICAgPC9wPlxuICAgICAgICA8dWwgY2xhc3M9XCJjb250ZW50IHBsLTJcIiBbY2xhc3MuaXMtaGlkZGVuXT1cIiFzaG93TGVnZW5kXCI+XG4gICAgICAgICAgPGxpXG4gICAgICAgICAgICBjbGFzcz1cImhhcy10ZXh0LXt7bG9nQ29sb3Jbc3RhdHVzLnZhbHVlXX19XCJcbiAgICAgICAgICAgICpuZ0Zvcj1cImxldCBzdGF0dXMgb2YgTG9nU3RhdHVzIHwga2V5c1wiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPGZhLWljb24gW2ljb25dPVwibG9nSWNvbltzdGF0dXMudmFsdWVdXCI+PC9mYS1pY29uPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbC0xXCI+e3tzdGF0dXMudmFsdWV9fTwvc3Bhbj5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICA8L3VsPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiY29sdW1uIGhhcy10ZXh0LXJpZ2h0XCIgKm5nSWY9XCJmaWx0ZXJlZFR5cGVcIj5cbiAgICAgICAgPGxhYmVsIGNsYXNzPVwiaXMtaW5saW5lLWJsb2NrIGNoZWNrYm94XCI+XG4gICAgICAgICAgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiIGNsYXNzPVwic2VsZWN0b3JcIlxuICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJvbmx5V2l0aERhdGFcIlxuICAgICAgICAgICAgKGNoYW5nZSk9XCJmaWx0ZXJSZXN1bHRzKClcIlxuICAgICAgICAgID5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cIm1sLTJcIj5TaG93IG9ubHkgcmVjYWxjdWxhdGVkIHt7ZmlsdGVyZWRUeXBlIHwgcGx1cmFsaXplfX08L3NwYW4+XG4gICAgICAgIDwvbGFiZWw+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNibGFua05vZGVNb2RlbHMgbGV0LWJsYW5rTm9kZT1cImJsYW5rTm9kZVwiIGxldC1zdWJWYWx1ZT1cInN1YlZhbHVlXCI+XG4gIDx0ZCBjbGFzcz1cImJsYW5rLW5vZGUtaW5kZXgte3tpfX1cIiAqbmdGb3I9XCJsZXQgYyBvZiBtZXRob2RNb2RlbHNDb3VudCB8IHRpbWVzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInZhbGlkU3ViVmFsdWUoYmxhbmtOb2RlLCBpLCBzdWJWYWx1ZSlcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJnZXRNZXRob2RJZEF0KGJsYW5rTm9kZSwgaSwgc3ViVmFsdWUpOyBsZXQgbWV0aG9kSWRcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImJsYW5rTm9kZU1vZGVsOyBjb250ZXh0OiB7YmxhbmtOb2RlOiBibGFua05vZGUsIG1ldGhvZElkOiBtZXRob2RJZH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L3RkPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNibGFua05vZGVNb2RlbCBsZXQtYmxhbmtOb2RlPVwiYmxhbmtOb2RlXCIgbGV0LW1ldGhvZElkPVwibWV0aG9kSWRcIj5cbiAgPHNwYW5cbiAgICBbY2xhc3MudHJpZ2dlci1wb3BvdmVyXT1cImhhc0xvZ0RldGFpbHMoYmxhbmtOb2RlLCBtZXRob2RJZClcIlxuICAgIFtuZ2JQb3BvdmVyXT1cImxvZ0RldGFpbHNcIiBbYXV0b0Nsb3NlXT1cIidvdXRzaWRlJ1wiXG4gICAgdHJpZ2dlcnM9XCJtYW51YWxcIiAjcD1cIm5nYlBvcG92ZXJcIiBwbGFjZW1lbnQ9XCJsZWZ0XCIgY29udGFpbmVyPVwiYm9keVwiXG4gICAgKGNsaWNrKT1cImhhc0xvZ0RldGFpbHMoYmxhbmtOb2RlLCBtZXRob2RJZCkgPyB0b2dnbGVQb3BvdmVyKHAsIHsgbG9nOiBibGFua05vZGUubG9nc1ttZXRob2RJZF0gfSkgOiBudWxsXCJcbiAgPlxuICAgIDxzcGFuIGNsYXNzPVwiaXMtY2FwaXRhbGl6ZWRcIj57e21ldGhvZE5hbWUoYmxhbmtOb2RlLCBtZXRob2RJZCl9fTwvc3Bhbj5cbiAgICA8c3BhbiBjbGFzcz1cInBsLTFcIiAqbmdJZj1cImhhc0xvZyhibGFua05vZGUsIG1ldGhvZElkKSAmJiBibGFua05vZGUubG9nc1ttZXRob2RJZF0ubWV0aG9kVGllclwiPlt7e2JsYW5rTm9kZS5sb2dzW21ldGhvZElkXS5tZXRob2RUaWVyfX1dPC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwicGwtMSBoYXMtdGV4dC17e2xvZ0NvbG9yW2xvZ1N0YXR1cyhibGFua05vZGUsIG1ldGhvZElkKV19fVwiPlxuICAgICAgPGZhLWljb24gW2ljb25dPVwibG9nSWNvbltsb2dTdGF0dXMoYmxhbmtOb2RlLCBtZXRob2RJZCldXCI+PC9mYS1pY29uPlxuICAgIDwvc3Bhbj5cbiAgPC9zcGFuPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNub3RVcGRhdGVkPlxuICA8c3Bhbj5ub3QgdXBkYXRlZDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbG9nRGV0YWlscyBsZXQtbG9nPVwibG9nXCI+XG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJsb2cucmVxdWlyZW1lbnRzXCI+XG4gICAgPHAgKm5nRm9yPVwibGV0IGtleSBvZiBsb2cucmVxdWlyZW1lbnRzIHwga2V5c1wiIGNsYXNzPVwiaGFzLXRleHQte3tyZXF1aXJlbWVudENvbG9yKGtleS52YWx1ZSl9fVwiPlxuICAgICAge3trZXkua2V5fX06IHt7a2V5LnZhbHVlfX1cbiAgICA8L3A+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9nLmxvZ3NcIj5cbiAgICA8cCAqbmdGb3I9XCJsZXQga2V5IG9mIGxvZy5sb2dzIHwga2V5c1wiPlxuICAgICAge3trZXkua2V5fX06IHt7a2V5LnZhbHVlfX1cbiAgICA8L3A+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ0lmPVwibG9nLm1pc3NpbmdMb29rdXBzPy5sZW5ndGhcIj5cbiAgICA8cCBjbGFzcz1cIm10LTJcIj5NaXNzaW5nIGxvb2t1cHM6PC9wPlxuXG4gICAgPGRpdiBjbGFzcz1cInRhYmxlLWNvbnRhaW5lciBkYXRhLXRhYmxlLWNvbnRhaW5lclwiPlxuICAgICAgPHRhYmxlIGNsYXNzPVwidGFibGUgaXMtZnVsbHdpZHRoIG1iLTBcIj5cbiAgICAgICAgPHRoZWFkIGNsYXNzPVwiaGFzLWJhY2tncm91bmQtYmxhY2tcIj5cbiAgICAgICAgICA8dHI+XG4gICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGFzLXRleHQtd2hpdGVcIj5GaWxlbmFtZTwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICA8dGg+XG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiaGFzLXRleHQtd2hpdGVcIj5Db2x1bW4gVGl0bGU8L3NwYW4+XG4gICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgPHRoPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImhhcy10ZXh0LXdoaXRlXCI+Um93ICh0ZXJtLmlkKTwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgPC90aGVhZD5cbiAgICAgICAgPHRib2R5IGNsYXNzPVwiaGFzLWJhY2tncm91bmQtYmxhY2sgaGFzLXRleHQtd2hpdGVcIj5cbiAgICAgICAgICA8dHIgKm5nRm9yPVwibGV0IGRhdGEgb2YgbG9nLm1pc3NpbmdMb29rdXBzXCI+XG4gICAgICAgICAgICA8dGQ+e3tkYXRhLmZpbGVuYW1lfX08L3RkPlxuICAgICAgICAgICAgPHRkPnt7ZGF0YS5jb2x1bW59fTwvdGQ+XG4gICAgICAgICAgICA8dGQ+e3tkYXRhLnRlcm1JZH19PC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICA8L3Rib2R5PlxuICAgICAgPC90YWJsZT5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { propertyValue } from '
|
|
1
|
+
import { propertyValue } from '@hestia-earth/utils/dist/term';
|
|
2
2
|
export const maxAreaSize = 5000;
|
|
3
3
|
export const siteTooBig = ({ area }) => area && area / 100 > maxAreaSize;
|
|
4
4
|
const hasMultipleValues = (values) => (values || []).length > 1;
|
|
@@ -7,4 +7,4 @@ const weighedAverage = ({ value, depthLower, depthUpper }) => value.reduce((prev
|
|
|
7
7
|
export const measurementValue = ({ value, depthLower, depthUpper }, termId) => hasMultipleValues(value) && hasMultipleValues(depthLower) && hasMultipleValues(depthUpper) ?
|
|
8
8
|
weighedAverage({ value, depthLower, depthUpper }) :
|
|
9
9
|
propertyValue(value, termId);
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2l0ZXMvc2l0ZXMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBVTlELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUM7QUFFaEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQWUsRUFBRSxFQUFFLENBQUMsSUFBSSxJQUFJLElBQUksR0FBRyxHQUFHLEdBQUcsV0FBVyxDQUFDO0FBRXRGLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxNQUFhLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7QUFFdkUsTUFBTSxjQUFjLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFzQyxFQUFFLEVBQUUsQ0FDL0YsS0FBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxVQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEcsS0FBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxVQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFFN0YsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUE2QixFQUFFLE1BQWMsRUFBRSxFQUFFLENBQy9HLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFVBQVcsQ0FBQyxJQUFJLGlCQUFpQixDQUFDLFVBQVcsQ0FBQyxDQUFDLENBQUM7SUFDNUYsY0FBYyxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkQsYUFBYSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5vZGVUeXBlLCBJU2l0ZUpTT05MRCwgTWVhc3VyZW1lbnQgfSBmcm9tICdAaGVzdGlhLWVhcnRoL3NjaGVtYSc7XG5pbXBvcnQgeyBwcm9wZXJ0eVZhbHVlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC91dGlscy9kaXN0L3Rlcm0nO1xuXG5pbXBvcnQgeyBJR3JvdXBlZE5vZGUgfSBmcm9tICcuLi9jb21tb24vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElTaXRlSlNPTkxERXh0ZW5kZWQgZXh0ZW5kcyBJU2l0ZUpTT05MRCB7XG4gIHJlbGF0ZWQ6IHtcbiAgICBbdHlwZSBpbiBOb2RlVHlwZV0/OiBzdHJpbmdbXTtcbiAgfTtcbn1cblxuZXhwb3J0IGNvbnN0IG1heEFyZWFTaXplID0gNTAwMDtcblxuZXhwb3J0IGNvbnN0IHNpdGVUb29CaWcgPSAoeyBhcmVhIH06IElTaXRlSlNPTkxEKSA9PiBhcmVhICYmIGFyZWEgLyAxMDAgPiBtYXhBcmVhU2l6ZTtcblxuY29uc3QgaGFzTXVsdGlwbGVWYWx1ZXMgPSAodmFsdWVzOiBhbnlbXSkgPT4gKHZhbHVlcyB8fCBbXSkubGVuZ3RoID4gMTtcblxuY29uc3Qgd2VpZ2hlZEF2ZXJhZ2UgPSAoeyB2YWx1ZSwgZGVwdGhMb3dlciwgZGVwdGhVcHBlciB9OiBQYXJ0aWFsPElHcm91cGVkTm9kZTxNZWFzdXJlbWVudD4+KSA9PlxuICB2YWx1ZSEucmVkdWNlKChwcmV2LCBjdXJyLCBpbmRleCkgPT4gcHJldiArIChjdXJyICogKGRlcHRoTG93ZXIhW2luZGV4XSAtIGRlcHRoVXBwZXIhW2luZGV4XSkpLCAwKSAvXG4gIHZhbHVlIS5yZWR1Y2UoKHByZXYsIF9jdXJyLCBpbmRleCkgPT4gcHJldiArIChkZXB0aExvd2VyIVtpbmRleF0gLSBkZXB0aFVwcGVyIVtpbmRleF0pLCAwKTtcblxuZXhwb3J0IGNvbnN0IG1lYXN1cmVtZW50VmFsdWUgPSAoeyB2YWx1ZSwgZGVwdGhMb3dlciwgZGVwdGhVcHBlciB9OiBJR3JvdXBlZE5vZGU8TWVhc3VyZW1lbnQ+LCB0ZXJtSWQ6IHN0cmluZykgPT5cbiAgaGFzTXVsdGlwbGVWYWx1ZXModmFsdWUpICYmIGhhc011bHRpcGxlVmFsdWVzKGRlcHRoTG93ZXIhKSAmJiBoYXNNdWx0aXBsZVZhbHVlcyhkZXB0aFVwcGVyISkgP1xuICAgIHdlaWdoZWRBdmVyYWdlKHsgdmFsdWUsIGRlcHRoTG93ZXIsIGRlcHRoVXBwZXIgfSkgOlxuICAgIHByb3BlcnR5VmFsdWUodmFsdWUsIHRlcm1JZCk7XG4iXX0=
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TermTermType, isExpandable } from '@hestia-earth/schema';
|
|
2
|
-
import { keyToLabel } from '
|
|
2
|
+
import { keyToLabel } from '@hestia-earth/utils';
|
|
3
3
|
export const termProperties = (term) => Object.keys(term).filter(key => !isExpandable(term[key]) && ![
|
|
4
4
|
'pinned', 'expanded', 'extended', 'selected', 'loading',
|
|
5
5
|
'_score', '@type', '@id', '@context', 'createdAt',
|
|
@@ -181,4 +181,4 @@ export const sortOrder = [
|
|
|
181
181
|
TermTermType.pesticideBrandName,
|
|
182
182
|
TermTermType.standardsLabels
|
|
183
183
|
];
|
|
184
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVybXMvdGVybXMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFckYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTdDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQXdCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUNsRixHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDbEMsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVM7SUFDdkQsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVc7SUFDakQsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxlQUFlO0NBQzFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUNoQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFLGlCQUFpQixFQUFzQixFQUFFLEdBQXNCLEVBQUUsRUFBRSxDQUNwRyxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEVBQUUsWUFBWSxFQUFzQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLElBQUksRUFBRSxZQUFZLElBQUksRUFB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LFdBQVc7SUFDeEIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLFFBQVE7SUFDckIsWUFBWSxDQUFDLFVBQVU7SUFDdkIsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLElBQUk7SUFDakIsWUFBWSxDQUFDLHFCQUFxQjtJQUNsQyxZQUFZLENBQUMsWUFBWTtJQUN6QixZQUFZLENBQUMscUJBQXFCO0lBQ2xDLFlBQVksQ0FBQyxnQkFBZ0I7SUFDN0IsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLE9BQU87SUFDcEIsWUFBWSxDQUFDLGlCQUFpQjtJQUM5QixZQUFZLENBQUMsU0FBUztJQUN0QixZQUFZLENBQUMsaUJBQWlCO0lBQzlCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxRQUFRO0lBQ3JCLFlBQVksQ0FBQyxZQUFZO0lBQ3pCLFlBQVksQ0FBQyxpQkFBaUI7SUFDOUIsWUFBWSxDQUFDLFFBQVE7SUFDckIsWUFBWSxDQUFDLGNBQWM7SUFDM0IsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLFVBQVU7SUFDdkIsWUFBWSxDQUFDLFNBQVM7SUFDdEIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLHNCQUFzQjtJQUNuQyxZQUFZLENBQUMsaUJBQWlCO0lBQzlCLFlBQVksQ0FBQyx5QkFBeUI7SUFDdEMsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLGtCQUFrQjtJQUMvQixZQUFZLENBQUMsZUFBZTtDQUM3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVybSwgSVRlcm1KU09OTEQsIFRlcm1UZXJtVHlwZSwgaXNFeHBhbmRhYmxlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuXG5pbXBvcnQgeyBrZXlUb0xhYmVsIH0gZnJvbSAnLi4vY29tbW9uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IHRlcm1Qcm9wZXJ0aWVzID0gKHRlcm06IFRlcm0gfCBJVGVybUpTT05MRCkgPT4gT2JqZWN0LmtleXModGVybSkuZmlsdGVyKFxuICBrZXkgPT4gIWlzRXhwYW5kYWJsZSh0ZXJtW2tleV0pICYmICFbXG4gICAgJ3Bpbm5lZCcsICdleHBhbmRlZCcsICdleHRlbmRlZCcsICdzZWxlY3RlZCcsICdsb2FkaW5nJyxcbiAgICAnX3Njb3JlJywgJ0B0eXBlJywgJ0BpZCcsICdAY29udGV4dCcsICdjcmVhdGVkQXQnLFxuICAgICduYW1lJywgJ3N5bm9ueW1zJywgJ3Rlcm1UeXBlJywgJ2xvY2F0aW9uJywgJ3Byb3BlcnRpZXMnLCAnc2NoZW1hVmVyc2lvbidcbiAgXS5pbmNsdWRlcyhrZXkpXG4pO1xuXG5leHBvcnQgY29uc3QgZmluZFByb3BlcnR5QnlJZCA9ICh7IGRlZmF1bHRQcm9wZXJ0aWVzIH06IFRlcm0gfCBJVGVybUpTT05MRCwga2V5OiBrZXlvZiBJVGVybUpTT05MRCkgPT5cbiAgKGRlZmF1bHRQcm9wZXJ0aWVzIHx8IFtdKS5maW5kKCh7IHRlcm0gfSkgPT4gdGVybSFbJ0BpZCddID09PSBrZXkpO1xuXG5leHBvcnQgY29uc3QgdGVybUxvY2F0aW9uTmFtZSA9ICh7IGdhZG1GdWxsTmFtZSB9OiBUZXJtIHwgSVRlcm1KU09OTEQpID0+ICh7XG4gIG5hbWU6IGdhZG1GdWxsTmFtZSB8fCAnJ1xufSk7XG5cbmV4cG9ydCBjb25zdCB0ZXJtTG9jYXRpb24gPSAoeyBsYXRpdHVkZSwgbG9uZ2l0dWRlIH06IFRlcm0gfCBJVGVybUpTT05MRCkgPT4gKHtcbiAgbGF0OiBsYXRpdHVkZSEsXG4gIGxuZzogbG9uZ2l0dWRlIVxufSk7XG5cbmNvbnN0IHRlcm1UeXBlVG9MYWJlbDoge1xuICBbdHlwZSBpbiBUZXJtVGVybVR5cGVdPzogc3RyaW5nO1xufSA9IHtcbiAgW1Rlcm1UZXJtVHlwZS5tZXRob2RFbWlzc2lvblJlc291cmNlVXNlXTogJ01ldGhvZCAoRW1pc3Npb25zKScsXG4gIFtUZXJtVGVybVR5cGUubWV0aG9kTWVhc3VyZW1lbnRdOiAnTWV0aG9kIChNZWFzdXJlbWVudCknLFxuICBbVGVybVRlcm1UeXBlLnBlc3RpY2lkZUFJXTogJ1Blc3RpY2lkZSBBY3RpdmUgSW5ncmVkaWVudCcsXG4gIFtUZXJtVGVybVR5cGUuc3RhbmRhcmRzTGFiZWxzXTogJ1N0YW5kYXJkcyAmIExhYmVscycsXG4gIFtUZXJtVGVybVR5cGUudXNkYVNvaWxUeXBlXTogJ1VTREEgU29pbCBUeXBlJ1xufTtcblxuZXhwb3J0IGNvbnN0IHRlcm1UeXBlTGFiZWwgPSAodHlwZTogVGVybVRlcm1UeXBlIHwgc3RyaW5nID0gJ04vQScpOiBzdHJpbmcgPT5cbiAgdHlwZSBpbiB0ZXJtVHlwZVRvTGFiZWwgPyB0ZXJtVHlwZVRvTGFiZWxbdHlwZV0gOiBrZXlUb0xhYmVsKHR5cGUpO1xuXG5leHBvcnQgaW50ZXJmYWNlIElUZXJtVHlwZUVsZW0ge1xuICBsYWJlbD86IHN0cmluZztcbiAgdGVybVR5cGU6IFRlcm1UZXJtVHlwZSB8IHN0cmluZztcbiAgY2hpbGRyZW4/OiBJVGVybVR5cGVFbGVtW107XG4gIHZpc2libGU/OiBib29sZWFuO1xuICBjb3VudD86IG51bWJlcjtcbn1cblxuY29uc3QgdGVybVR5cGVzVG9DaGlsZHJlbiA9ICh0ZXJtVHlwZXM6IFRlcm1UZXJtVHlwZVtdKSA9PlxuICB0ZXJtVHlwZXMubWFwKHRlcm1UeXBlID0+ICh7IGxhYmVsOiB0ZXJtVHlwZUxhYmVsKHRlcm1UeXBlKSwgdGVybVR5cGUgfSBhcyBJVGVybVR5cGVFbGVtKSk7XG5cbmNvbnN0IGdyb3Vwczoge1xuICBbdHlwZTogc3RyaW5nXTogSVRlcm1UeXBlRWxlbTtcbn0gPSBPYmplY3QuZnJlZXplKHtcbiAgW1Rlcm1UZXJtVHlwZS5lbWlzc2lvbl06IHtcbiAgICBsYWJlbDogJ0VtaXNzaW9ucyAmIFJlc291cmNlIFVzZScsXG4gICAgdGVybVR5cGU6ICdFbWlzc2lvbnMgJiBSZXNvdXJjZSBVc2UnLFxuICAgIGNoaWxkcmVuOiB0ZXJtVHlwZXNUb0NoaWxkcmVuKFtcbiAgICAgIFRlcm1UZXJtVHlwZS5lbWlzc2lvbixcbiAgICAgIFRlcm1UZXJtVHlwZS5yZXNvdXJjZVVzZSxcbiAgICAgIFRlcm1UZXJtVHlwZS5tb2RlbCxcbiAgICAgIFRlcm1UZXJtVHlwZS5jaGFyYWN0ZXJpc2VkSW5kaWNhdG9yLFxuICAgICAgVGVybVRlcm1UeXBlLmVuZHBvaW50SW5kaWNhdG9yLFxuICAgICAgVGVybVRlcm1UeXBlLm1ldGhvZEVtaXNzaW9uUmVzb3VyY2VVc2VcbiAgICBdKVxuICB9LFxuICBbVGVybVRlcm1UeXBlLnJlZ2lvbl06IHtcbiAgICBsYWJlbDogdGVybVR5cGVMYWJlbChUZXJtVGVybVR5cGUucmVnaW9uKSxcbiAgICB0ZXJtVHlwZTogVGVybVRlcm1UeXBlLnJlZ2lvbixcbiAgICBjaGlsZHJlbjogW11cbiAgfSxcbiAgaW5mcmFzdHJ1Y3R1cmU6IHtcbiAgICBsYWJlbDogJ0luZnJhc3RydWN0dXJlICYgRXF1aXBtZW50JyxcbiAgICB0ZXJtVHlwZTogJ0luZnJhc3RydWN0dXJlICYgRXF1aXBtZW50JyxcbiAgICBjaGlsZHJlbjogdGVybVR5cGVzVG9DaGlsZHJlbihbXG4gICAgICBUZXJtVGVybVR5cGUuYnVpbGRpbmcsXG4gICAgICBUZXJtVGVybVR5cGUuY3JvcFByb3RlY3Rpb24sXG4gICAgICBUZXJtVGVybVR5cGUuY3JvcFN1cHBvcnQsXG4gICAgICBUZXJtVGVybVR5cGUuaXJyaWdhdGlvbixcbiAgICAgIFRlcm1UZXJtVHlwZS5tYWNoaW5lcnlcbiAgICBdKVxuICB9LFxuICBpbnB1dDoge1xuICAgIGxhYmVsOiAnSW5wdXRzJyxcbiAgICB0ZXJtVHlwZTogJ0lucHV0cycsXG4gICAgY2hpbGRyZW46IHRlcm1UeXBlc1RvQ2hpbGRyZW4oW1xuICAgICAgVGVybVRlcm1UeXBlLmFudGliaW90aWMsXG4gICAgICBUZXJtVGVybVR5cGUuZWxlY3RyaWNpdHksXG4gICAgICBUZXJtVGVybVR5cGUuZnVlbCxcbiAgICAgIFRlcm1UZXJtVHlwZS5tYXRlcmlhbCxcbiAgICAgIFRlcm1UZXJtVHlwZS5pbm9yZ2FuaWNGZXJ0aWxpemVyLFxuICAgICAgVGVybVRlcm1UeXBlLm9yZ2FuaWNGZXJ0aWxpemVyLFxuICAgICAgVGVybVRlcm1UeXBlLm90aGVyLFxuICAgICAgVGVybVRlcm1UeXBlLnBlc3RpY2lkZUFJLFxuICAgICAgVGVybVRlcm1UeXBlLnBlc3RpY2lkZUJyYW5kTmFtZSxcbiAgICAgIFRlcm1UZXJtVHlwZS5zb2lsQW1lbmRtZW50LFxuICAgICAgVGVybVRlcm1UeXBlLnRyYW5zcG9ydCxcbiAgICAgIFRlcm1UZXJtVHlwZS53YXRlclxuICAgIF0pXG4gIH0sXG4gIFtUZXJtVGVybVR5cGUubWVhc3VyZW1lbnRdOiB7XG4gICAgbGFiZWw6ICdNZWFzdXJlbWVudHMnLFxuICAgIHRlcm1UeXBlOiAnTWVhc3VyZW1lbnRzJyxcbiAgICBjaGlsZHJlbjogdGVybVR5cGVzVG9DaGlsZHJlbihbXG4gICAgICBUZXJtVGVybVR5cGUubWVhc3VyZW1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUuc29pbFRleHR1cmUsXG4gICAgICBUZXJtVGVybVR5cGUuc29pbFR5cGUsXG4gICAgICBUZXJtVGVybVR5cGUudXNkYVNvaWxUeXBlLFxuICAgICAgVGVybVRlcm1UeXBlLm1ldGhvZE1lYXN1cmVtZW50XG4gICAgXSlcbiAgfSxcbiAgcHJhY3RpY2U6IHtcbiAgICBsYWJlbDogJ1ByYWN0aWNlcycsXG4gICAgdGVybVR5cGU6ICdQcm9kdWN0aW9uIFByYWN0aWNlcycsXG4gICAgY2hpbGRyZW46IHRlcm1UeXBlc1RvQ2hpbGRyZW4oW1xuICAgICAgVGVybVRlcm1UeXBlLmFuaW1hbE1hbmFnZW1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUuYXF1YWN1bHR1cmVNYW5hZ2VtZW50LFxuICAgICAgVGVybVRlcm1UeXBlLmJpb2RpdmVyc2l0eSxcbiAgICAgIFRlcm1UZXJtVHlwZS5jcm9wRXN0YWJsaXNobWVudCxcbiAgICAgIFRlcm1UZXJtVHlwZS5jcm9wUmVzaWR1ZU1hbmFnZW1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUuZXhjcmV0YU1hbmFnZW1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUubGFuZFVzZU1hbmFnZW1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUub3BlcmF0aW9uLFxuICAgICAgVGVybVRlcm1UeXBlLnN0YW5kYXJkc0xhYmVscyxcbiAgICAgIFRlcm1UZXJtVHlwZS5zeXN0ZW0sXG4gICAgICBUZXJtVGVybVR5cGUudGlsbGFnZSxcbiAgICAgIFRlcm1UZXJtVHlwZS53YXRlclJlZ2ltZSxcbiAgICBdKVxuICB9LFxuICBwcm9kdWN0OiB7XG4gICAgbGFiZWw6ICdQcm9kdWN0cycsXG4gICAgdGVybVR5cGU6ICdQcm9kdWN0cycsXG4gICAgY2hpbGRyZW46IHRlcm1UeXBlc1RvQ2hpbGRyZW4oW1xuICAgICAgVGVybVRlcm1UeXBlLmNyb3AsXG4gICAgICBUZXJtVGVybVR5cGUuY3JvcFJlc2lkdWUsXG4gICAgICBUZXJtVGVybVR5cGUuZXhjcmV0YSxcbiAgICAgIFRlcm1UZXJtVHlwZS5saXZlQW5pbWFsLFxuICAgICAgVGVybVRlcm1UeXBlLmxpdmVBcXVhdGljU3BlY2llcyxcbiAgICAgIFRlcm1UZXJtVHlwZS5hbmltYWxQcm9kdWN0LFxuICAgICAgVGVybVRlcm1UeXBlLnByb2Nlc3NlZEZvb2RcbiAgICBdKVxuICB9LFxuICBbVGVybVRlcm1UeXBlLnByb3BlcnR5XToge1xuICAgIGxhYmVsOiB0ZXJtVHlwZUxhYmVsKFRlcm1UZXJtVHlwZS5wcm9wZXJ0eSksXG4gICAgdGVybVR5cGU6IFRlcm1UZXJtVHlwZS5wcm9wZXJ0eSxcbiAgICBjaGlsZHJlbjogW11cbiAgfVxufSk7XG5cbmV4cG9ydCBjb25zdCB0ZXJtVHlwZUdyb3VwczogSVRlcm1UeXBlRWxlbVtdID0gW1xuICBncm91cHMucHJvcGVydHksXG4gIGdyb3Vwcy5yZWdpb24sXG4gIGdyb3Vwcy5pbnB1dCxcbiAgZ3JvdXBzLmVtaXNzaW9uLFxuICBncm91cHMucHJvZHVjdCxcbiAgZ3JvdXBzLnByYWN0aWNlLFxuICBncm91cHMubWVhc3VyZW1lbnQsXG4gIGdyb3Vwcy5pbmZyYXN0cnVjdHVyZVxuXTtcblxuY29uc3QgdGVybVRvUGFyZW50OiB7XG4gIFt0eXBlIGluIFRlcm1UZXJtVHlwZV0/OiBzdHJpbmc7XG59ID0ge1xuICBbVGVybVRlcm1UeXBlLnByb3BlcnR5XTogJ1Byb3BlcnRpZXMnLFxuICBbVGVybVRlcm1UeXBlLnJlZ2lvbl06ICdHZW9ncmFwaGllcydcbn07XG5cbmV4cG9ydCBjb25zdCB0ZXJtQ2hpbGRUb1BhcmVudCA9ICh0ZXJtVHlwZTogc3RyaW5nKTogSVRlcm1UeXBlRWxlbSA9PlxuICB0ZXJtVHlwZUdyb3Vwcy5maW5kKCh7IGNoaWxkcmVuIH0pID0+IChjaGlsZHJlbiB8fCBbXSkuc29tZShjaGlsZCA9PiBjaGlsZC50ZXJtVHlwZSA9PT0gdGVybVR5cGUpKSB8fFxuICB7IHRlcm1UeXBlOiB0ZXJtVG9QYXJlbnRbdGVybVR5cGVdIH07XG5cbmV4cG9ydCBjb25zdCBzb3J0T3JkZXI6IFRlcm1UZXJtVHlwZVtdID0gW1xuICBUZXJtVGVybVR5cGUucHJvcGVydHksXG4gIFRlcm1UZXJtVHlwZS5jcm9wLFxuICBUZXJtVGVybVR5cGUuY3JvcFJlc2lkdWUsXG4gIFRlcm1UZXJtVHlwZS5hbmltYWxQcm9kdWN0LFxuICBUZXJtVGVybVR5cGUubGl2ZUFuaW1hbCxcbiAgVGVybVRlcm1UeXBlLmxpdmVBcXVhdGljU3BlY2llcyxcbiAgVGVybVRlcm1UeXBlLnByb2Nlc3NlZEZvb2QsXG4gIFRlcm1UZXJtVHlwZS5lbWlzc2lvbixcbiAgVGVybVRlcm1UeXBlLnJlc291cmNlVXNlLFxuICBUZXJtVGVybVR5cGUuaW5vcmdhbmljRmVydGlsaXplcixcbiAgVGVybVRlcm1UeXBlLm9yZ2FuaWNGZXJ0aWxpemVyLFxuICBUZXJtVGVybVR5cGUuc29pbEFtZW5kbWVudCxcbiAgVGVybVRlcm1UeXBlLnNvaWxUZXh0dXJlLFxuICBUZXJtVGVybVR5cGUud2F0ZXIsXG4gIFRlcm1UZXJtVHlwZS5tYXRlcmlhbCxcbiAgVGVybVRlcm1UeXBlLmFudGliaW90aWMsXG4gIFRlcm1UZXJtVHlwZS5lbGVjdHJpY2l0eSxcbiAgVGVybVRlcm1UeXBlLmZ1ZWwsXG4gIFRlcm1UZXJtVHlwZS5hcXVhY3VsdHVyZU1hbmFnZW1lbnQsXG4gIFRlcm1UZXJtVHlwZS5iaW9kaXZlcnNpdHksXG4gIFRlcm1UZXJtVHlwZS5jcm9wUmVzaWR1ZU1hbmFnZW1lbnQsXG4gIFRlcm1UZXJtVHlwZS5hbmltYWxNYW5hZ2VtZW50LFxuICBUZXJtVGVybVR5cGUud2F0ZXJSZWdpbWUsXG4gIFRlcm1UZXJtVHlwZS5zeXN0ZW0sXG4gIFRlcm1UZXJtVHlwZS50aWxsYWdlLFxuICBUZXJtVGVybVR5cGUubGFuZFVzZU1hbmFnZW1lbnQsXG4gIFRlcm1UZXJtVHlwZS5vcGVyYXRpb24sXG4gIFRlcm1UZXJtVHlwZS5jcm9wRXN0YWJsaXNobWVudCxcbiAgVGVybVRlcm1UeXBlLm1lYXN1cmVtZW50LFxuICBUZXJtVGVybVR5cGUuc29pbFR5cGUsXG4gIFRlcm1UZXJtVHlwZS51c2RhU29pbFR5cGUsXG4gIFRlcm1UZXJtVHlwZS5tZXRob2RNZWFzdXJlbWVudCxcbiAgVGVybVRlcm1UeXBlLmJ1aWxkaW5nLFxuICBUZXJtVGVybVR5cGUuY3JvcFByb3RlY3Rpb24sXG4gIFRlcm1UZXJtVHlwZS5jcm9wU3VwcG9ydCxcbiAgVGVybVRlcm1UeXBlLmlycmlnYXRpb24sXG4gIFRlcm1UZXJtVHlwZS5tYWNoaW5lcnksXG4gIFRlcm1UZXJtVHlwZS5tb2RlbCxcbiAgVGVybVRlcm1UeXBlLmNoYXJhY3RlcmlzZWRJbmRpY2F0b3IsXG4gIFRlcm1UZXJtVHlwZS5lbmRwb2ludEluZGljYXRvcixcbiAgVGVybVRlcm1UeXBlLm1ldGhvZEVtaXNzaW9uUmVzb3VyY2VVc2UsXG4gIFRlcm1UZXJtVHlwZS5vdGhlcixcbiAgVGVybVRlcm1UeXBlLnJlZ2lvbixcbiAgVGVybVRlcm1UeXBlLnBlc3RpY2lkZUFJLFxuICBUZXJtVGVybVR5cGUucGVzdGljaWRlQnJhbmROYW1lLFxuICBUZXJtVGVybVR5cGUuc3RhbmRhcmRzTGFiZWxzXG5dO1xuIl19
|
|
184
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVybXMubW9kZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdGVybXMvdGVybXMubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFxQixZQUFZLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDckYsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRWpELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxDQUFDLElBQXdCLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUNsRixHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDbEMsUUFBUSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFNBQVM7SUFDdkQsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFdBQVc7SUFDakQsTUFBTSxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxlQUFlO0NBQzFFLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUNoQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxFQUFFLGlCQUFpQixFQUFzQixFQUFFLEdBQXNCLEVBQUUsRUFBRSxDQUNwRyxDQUFDLGlCQUFpQixJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxDQUFDLElBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEVBQUUsWUFBWSxFQUFzQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLElBQUksRUFBRSxZQUFZLElBQUksRUFB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LFdBQVc7SUFDeEIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLFFBQVE7SUFDckIsWUFBWSxDQUFDLFVBQVU7SUFDdkIsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLElBQUk7SUFDakIsWUFBWSxDQUFDLHFCQUFxQjtJQUNsQyxZQUFZLENBQUMsWUFBWTtJQUN6QixZQUFZLENBQUMscUJBQXFCO0lBQ2xDLFlBQVksQ0FBQyxnQkFBZ0I7SUFDN0IsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLE9BQU87SUFDcEIsWUFBWSxDQUFDLGlCQUFpQjtJQUM5QixZQUFZLENBQUMsU0FBUztJQUN0QixZQUFZLENBQUMsaUJBQWlCO0lBQzlCLFlBQVksQ0FBQyxXQUFXO0lBQ3hCLFlBQVksQ0FBQyxRQUFRO0lBQ3JCLFlBQVksQ0FBQyxZQUFZO0lBQ3pCLFlBQVksQ0FBQyxpQkFBaUI7SUFDOUIsWUFBWSxDQUFDLFFBQVE7SUFDckIsWUFBWSxDQUFDLGNBQWM7SUFDM0IsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLFVBQVU7SUFDdkIsWUFBWSxDQUFDLFNBQVM7SUFDdEIsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLHNCQUFzQjtJQUNuQyxZQUFZLENBQUMsaUJBQWlCO0lBQzlCLFlBQVksQ0FBQyx5QkFBeUI7SUFDdEMsWUFBWSxDQUFDLEtBQUs7SUFDbEIsWUFBWSxDQUFDLE1BQU07SUFDbkIsWUFBWSxDQUFDLFdBQVc7SUFDeEIsWUFBWSxDQUFDLGtCQUFrQjtJQUMvQixZQUFZLENBQUMsZUFBZTtDQUM3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVybSwgSVRlcm1KU09OTEQsIFRlcm1UZXJtVHlwZSwgaXNFeHBhbmRhYmxlIH0gZnJvbSAnQGhlc3RpYS1lYXJ0aC9zY2hlbWEnO1xuaW1wb3J0IHsga2V5VG9MYWJlbCB9IGZyb20gJ0BoZXN0aWEtZWFydGgvdXRpbHMnO1xuXG5leHBvcnQgY29uc3QgdGVybVByb3BlcnRpZXMgPSAodGVybTogVGVybSB8IElUZXJtSlNPTkxEKSA9PiBPYmplY3Qua2V5cyh0ZXJtKS5maWx0ZXIoXG4gIGtleSA9PiAhaXNFeHBhbmRhYmxlKHRlcm1ba2V5XSkgJiYgIVtcbiAgICAncGlubmVkJywgJ2V4cGFuZGVkJywgJ2V4dGVuZGVkJywgJ3NlbGVjdGVkJywgJ2xvYWRpbmcnLFxuICAgICdfc2NvcmUnLCAnQHR5cGUnLCAnQGlkJywgJ0Bjb250ZXh0JywgJ2NyZWF0ZWRBdCcsXG4gICAgJ25hbWUnLCAnc3lub255bXMnLCAndGVybVR5cGUnLCAnbG9jYXRpb24nLCAncHJvcGVydGllcycsICdzY2hlbWFWZXJzaW9uJ1xuICBdLmluY2x1ZGVzKGtleSlcbik7XG5cbmV4cG9ydCBjb25zdCBmaW5kUHJvcGVydHlCeUlkID0gKHsgZGVmYXVsdFByb3BlcnRpZXMgfTogVGVybSB8IElUZXJtSlNPTkxELCBrZXk6IGtleW9mIElUZXJtSlNPTkxEKSA9PlxuICAoZGVmYXVsdFByb3BlcnRpZXMgfHwgW10pLmZpbmQoKHsgdGVybSB9KSA9PiB0ZXJtIVsnQGlkJ10gPT09IGtleSk7XG5cbmV4cG9ydCBjb25zdCB0ZXJtTG9jYXRpb25OYW1lID0gKHsgZ2FkbUZ1bGxOYW1lIH06IFRlcm0gfCBJVGVybUpTT05MRCkgPT4gKHtcbiAgbmFtZTogZ2FkbUZ1bGxOYW1lIHx8ICcnXG59KTtcblxuZXhwb3J0IGNvbnN0IHRlcm1Mb2NhdGlvbiA9ICh7IGxhdGl0dWRlLCBsb25naXR1ZGUgfTogVGVybSB8IElUZXJtSlNPTkxEKSA9PiAoe1xuICBsYXQ6IGxhdGl0dWRlISxcbiAgbG5nOiBsb25naXR1ZGUhXG59KTtcblxuY29uc3QgdGVybVR5cGVUb0xhYmVsOiB7XG4gIFt0eXBlIGluIFRlcm1UZXJtVHlwZV0/OiBzdHJpbmc7XG59ID0ge1xuICBbVGVybVRlcm1UeXBlLm1ldGhvZEVtaXNzaW9uUmVzb3VyY2VVc2VdOiAnTWV0aG9kIChFbWlzc2lvbnMpJyxcbiAgW1Rlcm1UZXJtVHlwZS5tZXRob2RNZWFzdXJlbWVudF06ICdNZXRob2QgKE1lYXN1cmVtZW50KScsXG4gIFtUZXJtVGVybVR5cGUucGVzdGljaWRlQUldOiAnUGVzdGljaWRlIEFjdGl2ZSBJbmdyZWRpZW50JyxcbiAgW1Rlcm1UZXJtVHlwZS5zdGFuZGFyZHNMYWJlbHNdOiAnU3RhbmRhcmRzICYgTGFiZWxzJyxcbiAgW1Rlcm1UZXJtVHlwZS51c2RhU29pbFR5cGVdOiAnVVNEQSBTb2lsIFR5cGUnXG59O1xuXG5leHBvcnQgY29uc3QgdGVybVR5cGVMYWJlbCA9ICh0eXBlOiBUZXJtVGVybVR5cGUgfCBzdHJpbmcgPSAnTi9BJyk6IHN0cmluZyA9PlxuICB0eXBlIGluIHRlcm1UeXBlVG9MYWJlbCA/IHRlcm1UeXBlVG9MYWJlbFt0eXBlXSA6IGtleVRvTGFiZWwodHlwZSk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVRlcm1UeXBlRWxlbSB7XG4gIGxhYmVsPzogc3RyaW5nO1xuICB0ZXJtVHlwZTogVGVybVRlcm1UeXBlIHwgc3RyaW5nO1xuICBjaGlsZHJlbj86IElUZXJtVHlwZUVsZW1bXTtcbiAgdmlzaWJsZT86IGJvb2xlYW47XG4gIGNvdW50PzogbnVtYmVyO1xufVxuXG5jb25zdCB0ZXJtVHlwZXNUb0NoaWxkcmVuID0gKHRlcm1UeXBlczogVGVybVRlcm1UeXBlW10pID0+XG4gIHRlcm1UeXBlcy5tYXAodGVybVR5cGUgPT4gKHsgbGFiZWw6IHRlcm1UeXBlTGFiZWwodGVybVR5cGUpLCB0ZXJtVHlwZSB9IGFzIElUZXJtVHlwZUVsZW0pKTtcblxuY29uc3QgZ3JvdXBzOiB7XG4gIFt0eXBlOiBzdHJpbmddOiBJVGVybVR5cGVFbGVtO1xufSA9IE9iamVjdC5mcmVlemUoe1xuICBbVGVybVRlcm1UeXBlLmVtaXNzaW9uXToge1xuICAgIGxhYmVsOiAnRW1pc3Npb25zICYgUmVzb3VyY2UgVXNlJyxcbiAgICB0ZXJtVHlwZTogJ0VtaXNzaW9ucyAmIFJlc291cmNlIFVzZScsXG4gICAgY2hpbGRyZW46IHRlcm1UeXBlc1RvQ2hpbGRyZW4oW1xuICAgICAgVGVybVRlcm1UeXBlLmVtaXNzaW9uLFxuICAgICAgVGVybVRlcm1UeXBlLnJlc291cmNlVXNlLFxuICAgICAgVGVybVRlcm1UeXBlLm1vZGVsLFxuICAgICAgVGVybVRlcm1UeXBlLmNoYXJhY3RlcmlzZWRJbmRpY2F0b3IsXG4gICAgICBUZXJtVGVybVR5cGUuZW5kcG9pbnRJbmRpY2F0b3IsXG4gICAgICBUZXJtVGVybVR5cGUubWV0aG9kRW1pc3Npb25SZXNvdXJjZVVzZVxuICAgIF0pXG4gIH0sXG4gIFtUZXJtVGVybVR5cGUucmVnaW9uXToge1xuICAgIGxhYmVsOiB0ZXJtVHlwZUxhYmVsKFRlcm1UZXJtVHlwZS5yZWdpb24pLFxuICAgIHRlcm1UeXBlOiBUZXJtVGVybVR5cGUucmVnaW9uLFxuICAgIGNoaWxkcmVuOiBbXVxuICB9LFxuICBpbmZyYXN0cnVjdHVyZToge1xuICAgIGxhYmVsOiAnSW5mcmFzdHJ1Y3R1cmUgJiBFcXVpcG1lbnQnLFxuICAgIHRlcm1UeXBlOiAnSW5mcmFzdHJ1Y3R1cmUgJiBFcXVpcG1lbnQnLFxuICAgIGNoaWxkcmVuOiB0ZXJtVHlwZXNUb0NoaWxkcmVuKFtcbiAgICAgIFRlcm1UZXJtVHlwZS5idWlsZGluZyxcbiAgICAgIFRlcm1UZXJtVHlwZS5jcm9wUHJvdGVjdGlvbixcbiAgICAgIFRlcm1UZXJtVHlwZS5jcm9wU3VwcG9ydCxcbiAgICAgIFRlcm1UZXJtVHlwZS5pcnJpZ2F0aW9uLFxuICAgICAgVGVybVRlcm1UeXBlLm1hY2hpbmVyeVxuICAgIF0pXG4gIH0sXG4gIGlucHV0OiB7XG4gICAgbGFiZWw6ICdJbnB1dHMnLFxuICAgIHRlcm1UeXBlOiAnSW5wdXRzJyxcbiAgICBjaGlsZHJlbjogdGVybVR5cGVzVG9DaGlsZHJlbihbXG4gICAgICBUZXJtVGVybVR5cGUuYW50aWJpb3RpYyxcbiAgICAgIFRlcm1UZXJtVHlwZS5lbGVjdHJpY2l0eSxcbiAgICAgIFRlcm1UZXJtVHlwZS5mdWVsLFxuICAgICAgVGVybVRlcm1UeXBlLm1hdGVyaWFsLFxuICAgICAgVGVybVRlcm1UeXBlLmlub3JnYW5pY0ZlcnRpbGl6ZXIsXG4gICAgICBUZXJtVGVybVR5cGUub3JnYW5pY0ZlcnRpbGl6ZXIsXG4gICAgICBUZXJtVGVybVR5cGUub3RoZXIsXG4gICAgICBUZXJtVGVybVR5cGUucGVzdGljaWRlQUksXG4gICAgICBUZXJtVGVybVR5cGUucGVzdGljaWRlQnJhbmROYW1lLFxuICAgICAgVGVybVRlcm1UeXBlLnNvaWxBbWVuZG1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUudHJhbnNwb3J0LFxuICAgICAgVGVybVRlcm1UeXBlLndhdGVyXG4gICAgXSlcbiAgfSxcbiAgW1Rlcm1UZXJtVHlwZS5tZWFzdXJlbWVudF06IHtcbiAgICBsYWJlbDogJ01lYXN1cmVtZW50cycsXG4gICAgdGVybVR5cGU6ICdNZWFzdXJlbWVudHMnLFxuICAgIGNoaWxkcmVuOiB0ZXJtVHlwZXNUb0NoaWxkcmVuKFtcbiAgICAgIFRlcm1UZXJtVHlwZS5tZWFzdXJlbWVudCxcbiAgICAgIFRlcm1UZXJtVHlwZS5zb2lsVGV4dHVyZSxcbiAgICAgIFRlcm1UZXJtVHlwZS5zb2lsVHlwZSxcbiAgICAgIFRlcm1UZXJtVHlwZS51c2RhU29pbFR5cGUsXG4gICAgICBUZXJtVGVybVR5cGUubWV0aG9kTWVhc3VyZW1lbnRcbiAgICBdKVxuICB9LFxuICBwcmFjdGljZToge1xuICAgIGxhYmVsOiAnUHJhY3RpY2VzJyxcbiAgICB0ZXJtVHlwZTogJ1Byb2R1Y3Rpb24gUHJhY3RpY2VzJyxcbiAgICBjaGlsZHJlbjogdGVybVR5cGVzVG9DaGlsZHJlbihbXG4gICAgICBUZXJtVGVybVR5cGUuYW5pbWFsTWFuYWdlbWVudCxcbiAgICAgIFRlcm1UZXJtVHlwZS5hcXVhY3VsdHVyZU1hbmFnZW1lbnQsXG4gICAgICBUZXJtVGVybVR5cGUuYmlvZGl2ZXJzaXR5LFxuICAgICAgVGVybVRlcm1UeXBlLmNyb3BFc3RhYmxpc2htZW50LFxuICAgICAgVGVybVRlcm1UeXBlLmNyb3BSZXNpZHVlTWFuYWdlbWVudCxcbiAgICAgIFRlcm1UZXJtVHlwZS5leGNyZXRhTWFuYWdlbWVudCxcbiAgICAgIFRlcm1UZXJtVHlwZS5sYW5kVXNlTWFuYWdlbWVudCxcbiAgICAgIFRlcm1UZXJtVHlwZS5vcGVyYXRpb24sXG4gICAgICBUZXJtVGVybVR5cGUuc3RhbmRhcmRzTGFiZWxzLFxuICAgICAgVGVybVRlcm1UeXBlLnN5c3RlbSxcbiAgICAgIFRlcm1UZXJtVHlwZS50aWxsYWdlLFxuICAgICAgVGVybVRlcm1UeXBlLndhdGVyUmVnaW1lLFxuICAgIF0pXG4gIH0sXG4gIHByb2R1Y3Q6IHtcbiAgICBsYWJlbDogJ1Byb2R1Y3RzJyxcbiAgICB0ZXJtVHlwZTogJ1Byb2R1Y3RzJyxcbiAgICBjaGlsZHJlbjogdGVybVR5cGVzVG9DaGlsZHJlbihbXG4gICAgICBUZXJtVGVybVR5cGUuY3JvcCxcbiAgICAgIFRlcm1UZXJtVHlwZS5jcm9wUmVzaWR1ZSxcbiAgICAgIFRlcm1UZXJtVHlwZS5leGNyZXRhLFxuICAgICAgVGVybVRlcm1UeXBlLmxpdmVBbmltYWwsXG4gICAgICBUZXJtVGVybVR5cGUubGl2ZUFxdWF0aWNTcGVjaWVzLFxuICAgICAgVGVybVRlcm1UeXBlLmFuaW1hbFByb2R1Y3QsXG4gICAgICBUZXJtVGVybVR5cGUucHJvY2Vzc2VkRm9vZFxuICAgIF0pXG4gIH0sXG4gIFtUZXJtVGVybVR5cGUucHJvcGVydHldOiB7XG4gICAgbGFiZWw6IHRlcm1UeXBlTGFiZWwoVGVybVRlcm1UeXBlLnByb3BlcnR5KSxcbiAgICB0ZXJtVHlwZTogVGVybVRlcm1UeXBlLnByb3BlcnR5LFxuICAgIGNoaWxkcmVuOiBbXVxuICB9XG59KTtcblxuZXhwb3J0IGNvbnN0IHRlcm1UeXBlR3JvdXBzOiBJVGVybVR5cGVFbGVtW10gPSBbXG4gIGdyb3Vwcy5wcm9wZXJ0eSxcbiAgZ3JvdXBzLnJlZ2lvbixcbiAgZ3JvdXBzLmlucHV0LFxuICBncm91cHMuZW1pc3Npb24sXG4gIGdyb3Vwcy5wcm9kdWN0LFxuICBncm91cHMucHJhY3RpY2UsXG4gIGdyb3Vwcy5tZWFzdXJlbWVudCxcbiAgZ3JvdXBzLmluZnJhc3RydWN0dXJlXG5dO1xuXG5jb25zdCB0ZXJtVG9QYXJlbnQ6IHtcbiAgW3R5cGUgaW4gVGVybVRlcm1UeXBlXT86IHN0cmluZztcbn0gPSB7XG4gIFtUZXJtVGVybVR5cGUucHJvcGVydHldOiAnUHJvcGVydGllcycsXG4gIFtUZXJtVGVybVR5cGUucmVnaW9uXTogJ0dlb2dyYXBoaWVzJ1xufTtcblxuZXhwb3J0IGNvbnN0IHRlcm1DaGlsZFRvUGFyZW50ID0gKHRlcm1UeXBlOiBzdHJpbmcpOiBJVGVybVR5cGVFbGVtID0+XG4gIHRlcm1UeXBlR3JvdXBzLmZpbmQoKHsgY2hpbGRyZW4gfSkgPT4gKGNoaWxkcmVuIHx8IFtdKS5zb21lKGNoaWxkID0+IGNoaWxkLnRlcm1UeXBlID09PSB0ZXJtVHlwZSkpIHx8XG4gIHsgdGVybVR5cGU6IHRlcm1Ub1BhcmVudFt0ZXJtVHlwZV0gfTtcblxuZXhwb3J0IGNvbnN0IHNvcnRPcmRlcjogVGVybVRlcm1UeXBlW10gPSBbXG4gIFRlcm1UZXJtVHlwZS5wcm9wZXJ0eSxcbiAgVGVybVRlcm1UeXBlLmNyb3AsXG4gIFRlcm1UZXJtVHlwZS5jcm9wUmVzaWR1ZSxcbiAgVGVybVRlcm1UeXBlLmFuaW1hbFByb2R1Y3QsXG4gIFRlcm1UZXJtVHlwZS5saXZlQW5pbWFsLFxuICBUZXJtVGVybVR5cGUubGl2ZUFxdWF0aWNTcGVjaWVzLFxuICBUZXJtVGVybVR5cGUucHJvY2Vzc2VkRm9vZCxcbiAgVGVybVRlcm1UeXBlLmVtaXNzaW9uLFxuICBUZXJtVGVybVR5cGUucmVzb3VyY2VVc2UsXG4gIFRlcm1UZXJtVHlwZS5pbm9yZ2FuaWNGZXJ0aWxpemVyLFxuICBUZXJtVGVybVR5cGUub3JnYW5pY0ZlcnRpbGl6ZXIsXG4gIFRlcm1UZXJtVHlwZS5zb2lsQW1lbmRtZW50LFxuICBUZXJtVGVybVR5cGUuc29pbFRleHR1cmUsXG4gIFRlcm1UZXJtVHlwZS53YXRlcixcbiAgVGVybVRlcm1UeXBlLm1hdGVyaWFsLFxuICBUZXJtVGVybVR5cGUuYW50aWJpb3RpYyxcbiAgVGVybVRlcm1UeXBlLmVsZWN0cmljaXR5LFxuICBUZXJtVGVybVR5cGUuZnVlbCxcbiAgVGVybVRlcm1UeXBlLmFxdWFjdWx0dXJlTWFuYWdlbWVudCxcbiAgVGVybVRlcm1UeXBlLmJpb2RpdmVyc2l0eSxcbiAgVGVybVRlcm1UeXBlLmNyb3BSZXNpZHVlTWFuYWdlbWVudCxcbiAgVGVybVRlcm1UeXBlLmFuaW1hbE1hbmFnZW1lbnQsXG4gIFRlcm1UZXJtVHlwZS53YXRlclJlZ2ltZSxcbiAgVGVybVRlcm1UeXBlLnN5c3RlbSxcbiAgVGVybVRlcm1UeXBlLnRpbGxhZ2UsXG4gIFRlcm1UZXJtVHlwZS5sYW5kVXNlTWFuYWdlbWVudCxcbiAgVGVybVRlcm1UeXBlLm9wZXJhdGlvbixcbiAgVGVybVRlcm1UeXBlLmNyb3BFc3RhYmxpc2htZW50LFxuICBUZXJtVGVybVR5cGUubWVhc3VyZW1lbnQsXG4gIFRlcm1UZXJtVHlwZS5zb2lsVHlwZSxcbiAgVGVybVRlcm1UeXBlLnVzZGFTb2lsVHlwZSxcbiAgVGVybVRlcm1UeXBlLm1ldGhvZE1lYXN1cmVtZW50LFxuICBUZXJtVGVybVR5cGUuYnVpbGRpbmcsXG4gIFRlcm1UZXJtVHlwZS5jcm9wUHJvdGVjdGlvbixcbiAgVGVybVRlcm1UeXBlLmNyb3BTdXBwb3J0LFxuICBUZXJtVGVybVR5cGUuaXJyaWdhdGlvbixcbiAgVGVybVRlcm1UeXBlLm1hY2hpbmVyeSxcbiAgVGVybVRlcm1UeXBlLm1vZGVsLFxuICBUZXJtVGVybVR5cGUuY2hhcmFjdGVyaXNlZEluZGljYXRvcixcbiAgVGVybVRlcm1UeXBlLmVuZHBvaW50SW5kaWNhdG9yLFxuICBUZXJtVGVybVR5cGUubWV0aG9kRW1pc3Npb25SZXNvdXJjZVVzZSxcbiAgVGVybVRlcm1UeXBlLm90aGVyLFxuICBUZXJtVGVybVR5cGUucmVnaW9uLFxuICBUZXJtVGVybVR5cGUucGVzdGljaWRlQUksXG4gIFRlcm1UZXJtVHlwZS5wZXN0aWNpZGVCcmFuZE5hbWUsXG4gIFRlcm1UZXJtVHlwZS5zdGFuZGFyZHNMYWJlbHNcbl07XG4iXX0=
|