@po-ui/ng-components 16.3.0 → 16.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/components/po-dynamic/index.mjs +2 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-fields/po-dynamic-form-fields.component.mjs +5 -5
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/interfaces/po-dynamic-view-request.interface.mjs +2 -0
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.mjs +94 -8
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-field.interface.mjs +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.mjs +12 -3
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/services/po-dynamic-view.service.mjs +46 -0
- package/esm2022/lib/components/po-dynamic/po-dynamic.module.mjs +2 -2
- package/esm2022/lib/components/po-field/po-combo/po-combo-base.component.mjs +18 -2
- package/esm2022/lib/components/po-field/po-combo/po-combo.component.mjs +55 -21
- package/esm2022/lib/components/po-field/po-field.module.mjs +5 -4
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect-base.component.mjs +18 -2
- package/esm2022/lib/components/po-field/po-multiselect/po-multiselect.component.mjs +74 -32
- package/esm2022/lib/components/po-menu/po-menu-item/po-menu-item.component.mjs +3 -3
- package/esm2022/lib/components/po-table/po-table-base.component.mjs +12 -8
- package/esm2022/lib/components/po-table/po-table.component.mjs +7 -2
- package/esm2022/lib/components/po-tag/enums/po-tag-type.enum.mjs +4 -2
- package/esm2022/lib/components/po-tag/po-tag-base.component.mjs +3 -2
- package/fesm2022/po-ui-ng-components.mjs +320 -81
- package/fesm2022/po-ui-ng-components.mjs.map +1 -1
- package/lib/components/po-dynamic/index.d.ts +1 -0
- package/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.d.ts +8 -0
- package/lib/components/po-dynamic/po-dynamic-view/interfaces/po-dynamic-view-request.interface.d.ts +18 -0
- package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-base.component.d.ts +13 -2
- package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view-field.interface.d.ts +44 -0
- package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.component.d.ts +4 -2
- package/lib/components/po-dynamic/po-dynamic-view/services/po-dynamic-view.service.d.ts +28 -0
- package/lib/components/po-field/po-combo/po-combo-base.component.d.ts +15 -1
- package/lib/components/po-field/po-multiselect/po-multiselect-base.component.d.ts +15 -1
- package/lib/components/po-table/po-table-base.component.d.ts +1 -1
- package/lib/components/po-tag/enums/po-tag-type.enum.d.ts +4 -2
- package/lib/components/po-tag/po-tag-base.component.d.ts +2 -1
- package/package.json +4 -4
- package/po-ui-ng-components-16.4.0.tgz +0 -0
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-update/v14/index.js +1 -1
- package/schematics/ng-update/v15/index.js +1 -1
- package/schematics/ng-update/v16/index.js +1 -1
- package/schematics/ng-update/v2/index.js +1 -1
- package/schematics/ng-update/v3/index.js +1 -1
- package/schematics/ng-update/v4/index.js +1 -1
- package/schematics/ng-update/v5/index.js +1 -1
- package/schematics/ng-update/v6/index.js +1 -1
- package/esm2022/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.service.mjs +0 -18
- package/lib/components/po-dynamic/po-dynamic-view/po-dynamic-view.service.d.ts +0 -13
- package/po-ui-ng-components-16.3.0.tgz +0 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './po-dynamic-field-type.enum';
|
|
2
2
|
export * from './po-dynamic-field-force-component.enum';
|
|
3
3
|
export * from './po-dynamic-form/po-dynamic-form-field.interface';
|
|
4
|
+
export * from './po-dynamic-view/interfaces/po-dynamic-view-request.interface';
|
|
4
5
|
export * from './po-dynamic-form/po-dynamic-form-load/po-dynamic-form-load.interface';
|
|
5
6
|
export * from './po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-changed.interface';
|
|
6
7
|
export * from './po-dynamic-form/po-dynamic-form-validation/po-dynamic-form-field-validation.interface';
|
|
@@ -9,4 +10,4 @@ export * from './po-dynamic-form/po-dynamic-form.component';
|
|
|
9
10
|
export * from './po-dynamic-view/po-dynamic-view-field.interface';
|
|
10
11
|
export * from './po-dynamic-view/po-dynamic-view.component';
|
|
11
12
|
export * from './po-dynamic.module';
|
|
12
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsdUVBQXVFLENBQUM7QUFDdEYsY0FBYyxzRkFBc0YsQ0FBQztBQUNyRyxjQUFjLHlGQUF5RixDQUFDO0FBQ3hHLGNBQWMsbUZBQW1GLENBQUM7QUFDbEcsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsNkNBQTZDLENBQUM7QUFFNUQsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcG8tZHluYW1pYy1maWVsZC10eXBlLmVudW0nO1xuZXhwb3J0ICogZnJvbSAnLi9wby1keW5hbWljLWZpZWxkLWZvcmNlLWNvbXBvbmVudC5lbnVtJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZHluYW1pYy1mb3JtL3BvLWR5bmFtaWMtZm9ybS1maWVsZC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1keW5hbWljLXZpZXcvaW50ZXJmYWNlcy9wby1keW5hbWljLXZpZXctcmVxdWVzdC5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWxvYWQvcG8tZHluYW1pYy1mb3JtLWxvYWQuaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZHluYW1pYy1mb3JtL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uL3BvLWR5bmFtaWMtZm9ybS1maWVsZC1jaGFuZ2VkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tdmFsaWRhdGlvbi9wby1keW5hbWljLWZvcm0tZmllbGQtdmFsaWRhdGlvbi5pbnRlcmZhY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCAqIGZyb20gJy4vcG8tZHluYW1pYy1mb3JtL3BvLWR5bmFtaWMtZm9ybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9wby1keW5hbWljLXZpZXcvcG8tZHluYW1pYy12aWV3LWZpZWxkLmludGVyZmFjZSc7XG5leHBvcnQgKiBmcm9tICcuL3BvLWR5bmFtaWMtdmlldy9wby1keW5hbWljLXZpZXcuY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9wby1keW5hbWljLm1vZHVsZSc7XG4iXX0=
|
package/esm2022/lib/components/po-dynamic/po-dynamic-form/po-dynamic-form-field.interface.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgUG9DaGVja2JveEdyb3VwT3B0aW9uLFxuICBQb0NvbWJvRmlsdGVyLFxuICBQb0NvbWJvTGl0ZXJhbHMsXG4gIFBvRGF0ZXBpY2tlcklzb0Zvcm1hdCxcbiAgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyxcbiAgUG9Mb29rdXBGaWx0ZXIsXG4gIFBvTG9va3VwTGl0ZXJhbHMsXG4gIFBvTXVsdGlzZWxlY3RGaWx0ZXJNb2RlLFxuICBQb011bHRpc2VsZWN0TGl0ZXJhbHMsXG4gIFBvU3dpdGNoTGFiZWxQb3NpdGlvbixcbiAgUG9VcGxvYWRMaXRlcmFscyxcbiAgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zXG59IGZyb20gJy4uLy4uL3BvLWZpZWxkJztcbmltcG9ydCB7IFBvTG9va3VwQWR2YW5jZWRGaWx0ZXIgfSBmcm9tICcuLi8uLi9wby1maWVsZC9wby1sb29rdXAvaW50ZXJmYWNlcy9wby1sb29rdXAtYWR2YW5jZWQtZmlsdGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb0xvb2t1cENvbHVtbiB9IGZyb20gJy4uLy4uL3BvLWZpZWxkL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1jb2x1bW4uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvTXVsdGlzZWxlY3RPcHRpb24gfSBmcm9tICcuLi8uLi9wby1maWVsZC9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcmNlT3B0aW9uQ29tcG9uZW50RW51bSB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZmllbGQtZm9yY2UtY29tcG9uZW50LmVudW0nO1xuXG5pbXBvcnQgeyBQb0R5bmFtaWNGaWVsZCB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZmllbGQuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAdXNlZEJ5IFBvRHluYW1pY0Zvcm1Db21wb25lbnQsIFBvQWR2YW5jZWRGaWx0ZXJDb21wb25lbnQsIFBvUGFnZUR5bmFtaWNTZWFyY2hDb21wb25lbnRcbiAqXG4gKiBAZG9jc0V4dGVuZHMgUG9EeW5hbWljRmllbGRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgcGFyYSBkZWZpbmnDp8OjbyBkYXMgcHJvcHJpZWRhZGVzIGRvcyBjYW1wb3MgZGUgZW50cmFkYSBxdWUgc2Vyw6NvIGNyaWFkb3MgZGluYW1pY2FtZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb0R5bmFtaWNGb3JtRmllbGQgZXh0ZW5kcyBQb0R5bmFtaWNGaWVsZCB7XG4gIC8qKlxuICAgKiBEZWZpbmUgYXMgY29sdW5hcyBwYXJhIHV0aWxpemHDp8OjbyBkYSBidXNjYSBhdmFuw6dhZGEuIFVzYWRhIHNvbWVudGUgZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYHNlYXJjaFNlcnZpY2VgLFxuICAgKiBlc3NhIHByb3ByaWVkYWRlIGRldmUgcmVjZWJlciB1bSBhcnJheSBkZSBvYmpldG9zIHF1ZSBpbXBsZW1lbnRhbSBhIGludGVyZmFjZSBbYFBvTG9va3VwQ29sdW1uYF0oL2RvY3VtZW50YXRpb24vcG8tbG9va3VwKS5cbiAgICpcbiAgICogPiBDYXNvIHNlamFtIGluZm9ybWFkYXMgY29sdW5hcywgZGV2ZS1zZSBvYnJpZ2F0b3JpYW1lbnRlIGNvbnRlciBjb2x1bmFzIGRlZmluaWRhcyBjb21vICpsYWJlbCogZSAqdmFsdWUqIHBhcmEgdmFsb3Jlc1xuICAgKiBkZSB0ZWxhIGUgZG8gbW9kZWwgcmVzcGVjdGl2YW1lbnRlLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tcmFkaW8tZ3JvdXBgLCBgcG8tbG9va3VwYCwgYHBvLWNoZWNrYm94LWdyb3VwYC5cbiAgICovXG4gIGNvbHVtbnM/OiBBcnJheTxQb0xvb2t1cENvbHVtbj4gfCBudW1iZXI7XG5cbiAgLyoqIERlZmluZSBhIG9icmlnYXRvcmllZGFkZSBkbyBjYW1wby4gKi9cbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvcGNpb25hbCBzZXLDoSBleGliaWRhLlxuICAgKlxuICAgKiA+IEEgaW5kaWNhw6fDo28gbsOjbyBzZXLDoSBleGliaWRhLCBzZTpcbiAgICogLSBPIGNhbXBvIGZvciBgcmVxdWlyZWRgLCBvdTtcbiAgICogLSBOw6NvIHBvc3N1aXIgYGhlbHBgIGUgYGxhYmVsYC5cbiAgICovXG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTGlzdGEgZGUgb3DDp8O1ZXMgcXVlIHNlcsOjbyBleGliaWRvcyBlbSB1bSBjb21wb25lbnRlLCBwb2RlbmRvIHNlbGVjaW9uYXIgdW1hIG9ww6fDo28uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1zZWxlY3RgLCBgcG8tcmFkaW8tZ3JvdXBgLCBgcG8tY2hlY2tib3gtZ3JvdXBgLCBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKiAqL1xuICBvcHRpb25zPzpcbiAgICB8IEFycmF5PHN0cmluZz5cbiAgICB8IEFycmF5PFBvU2VsZWN0T3B0aW9uPlxuICAgIHwgQXJyYXk8UG9NdWx0aXNlbGVjdE9wdGlvbj5cbiAgICB8IEFycmF5PFBvQ2hlY2tib3hHcm91cE9wdGlvbj5cbiAgICB8IEFycmF5PGFueT47XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgcXVlIG8gdXN1w6FyaW8gZmHDp2EgbcO6bHRpcGxhIHNlbGXDp8OjbyBkZW50cm8gZGEgbGlzdGEgZGUgb3DDp8O1ZXMuXG4gICAqL1xuICBvcHRpb25zTXVsdGk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiAgU2VydmnDp28gcXVlIHNlcsOhIHV0aWxpemFkbyBwYXJhIGJ1c2NhciBvcyBpdGVucyBlIHByZWVuY2hlciBhIGxpc3RhIGRlIG9ww6fDtWVzIGRpbmFtaWNhbWVudGUuXG4gICAqICBQb2RlIHNlciBpbmZvcm1hZGEgdW1hIFVSTCBvdSB1bWEgaW5zdGFuY2lhIGRvIHNlcnZpw6dvIGJhc2VhZG8gZW0gUG9Db21ib0ZpbHRlci5cbiAgICogICoqSW1wb3J0YW50ZSoqXG4gICAqICA+IFBhcmEgcXVlIGZ1bmNpb25lIGNvcnJldGFtZW50ZSwgw6kgaW1wb3J0YW50ZSBxdWUgbyBzZXJ2acOnbyBzaWdhIG9cbiAgICogIFtndWlhIGRlIEFQSSBkbyBQTyBVSV0oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpKS5cbiAgICovXG4gIG9wdGlvbnNTZXJ2aWNlPzogc3RyaW5nIHwgUG9Db21ib0ZpbHRlcjtcblxuICAvKipcbiAgICogU2VydmnDp28gcXVlIHNlcsOhIHV0aWxpemFkbyBwYXJhIHJlYWxpemFyIGEgYnVzY2EgYXZhbsOnYWRhLiBQb2RlIHNlciB1dGlsaXphZG8gZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYGNvbHVtbnNgLlxuICAgKiBQb2RlIHNlciBzZXIgaW5mb3JtYWRhIHVtYSBVUkwgb3UgdW1hIGluc3RhbmNpYSBkbyBzZXJ2acOnbyBiYXNlYWRvIGVtIFBvTG9va3VwRmlsdGVyLlxuICAgKiAqKkltcG9ydGFudGU6KipcbiAgICogPiBDYXNvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYG9wdGlvbnNTZXJ2aWNlYCBlc3RhIHByb3ByaWVkYWRlIHNlcsOhIGlnbm9yYWRhLlxuICAgKiA+IFBhcmEgcXVlIGZ1bmNpb25lIGNvcnJldGFtZW50ZSwgw6kgaW1wb3J0YW50ZSBxdWUgbyBzZXJ2acOnbyBzaWdhIG9cbiAgICogW2d1aWEgZGUgQVBJIGRvIFBPIFVJXShodHRwczovL3BvLXVpLmlvL2d1aWRlcy9hcGkpLlxuICAgKi9cbiAgc2VhcmNoU2VydmljZT86IHN0cmluZyB8IFBvTG9va3VwRmlsdGVyO1xuXG4gIC8qKlxuICAgKiBNw6FzY2FyYSBwYXJhIG8gY2FtcG8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAuXG4gICAqID4gdGFtYsOpbSDDqSBhdHJpYnXDrWRvIGFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHR5cGU6IHRpbWVgLlxuICAgKi9cbiAgbWFzaz86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIHF1ZSBvIHZhbG9yIGRvIGNvbXBvbmVudGUgc2Vyw6EgY29uZm9ybWUgZXNwZWNpZmljYWRvIG5hIG1hc2PDoXJhLiBPIHZhbG9yIHBhZHLDo28gw6kgYGZhbHNlYC5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWlucHV0YC5cbiAgICogPiB0YW1iw6ltIMOpIGF0cmlidcOtZG8gYW8gdXRpbGl6YXIgYSBwcm9wcmllZGFkZSBgdHlwZTogdGltZWAuXG4gICAqICovXG4gIG1hc2tGb3JtYXRNb2RlbD86IGJvb2xlYW47XG5cbiAgLyoqIERlZmluZSBvIMOtY29uZSBxdWUgc2Vyw6EgZXhpYmlkbyBubyBpbsOtY2lvIGRvIGNhbXBvLlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkbyBub3MgY2FtcG9zOlxuICAgKiAtIElucHV0O1xuICAgKiAtIE51bWJlcjtcbiAgICogLSBEZWNpbWFsO1xuICAgKiAtIENvbWJvO1xuICAgKiAtIFBhc3N3b3JkO1xuICAgKlxuICAgKiA+IFZlamEgYSBkaXNwb25pYmlsaWRhZGUgZGUgw61jb25lcyBlbSBbYmlibGlvdGVjYSBkZSDDrWNvbmVzXShndWlkZXMvaWNvbnMpLlxuICAgKi9cbiAgaWNvbj86IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIC8qKiAgUXVhbnRpZGFkZSBtw6F4aW1hIGRlIGNhc2FzIGRlY2ltYWlzLlxuICAgKlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkYSBxdWFuZG8gbyBgdHlwZWAgZm9yICpjdXJyZW5jeSogb3UgKmRlY2ltYWwqLlxuICAgKi9cbiAgZGVjaW1hbHNMZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqIFF1YW50aWRhZGUgbcOheGltYSBkZSBkw61naXRvcyBhbnRlcyBkbyBzZXBhcmFkb3IgZGVjaW1hbC4gTyB2YWxvciBtw6F4aW1vIHBlcm1pdGlkbyDDqSAxM1xuICAgKlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkYSBxdWFuZG8gbyBgdHlwZWAgZm9yICpjdXJyZW5jeSogb3UgKmRlY2ltYWwqLlxuICAgKi9cbiAgdGhvdXNhbmRNYXhsZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFJlZ2V4IHBhcmEgdmFsaWRhw6fDo28gZG8gY2FtcG8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAsIGBwby1wYXNzd29yZGAuXG4gICAqICovXG4gIHBhdHRlcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhbWFuaG8gbcOtbmltbyBkZSBjYXJhY3RlcmVzLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgLlxuICAgKiAqL1xuICBtaW5MZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRhbWFuaG8gbcOheGltbyBkZSBjYXJhY3RlcmVzLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgLlxuICAgKi9cbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuXG4gIC8qKiBEZXNhYmlsaXRhIG8gY2FtcG8gY2FzbyBpbmZvcm1hciBvIHZhbG9yICp0cnVlKi4gKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKiBUZXh0byBkZSBhanVkYS4gKi9cbiAgaGVscD86IHN0cmluZztcblxuICAvKiogVGV4dG8gZXhpYmlkbyBxdWFuZG8gbyB2YWxvciBkbyBjb21wb25lbnRlIGZvciAqdHJ1ZSouICovXG4gIGJvb2xlYW5UcnVlPzogc3RyaW5nO1xuXG4gIC8qKiBUZXh0byBleGliaWRvIHF1YW5kbyBvIHZhbG9yIGRvIGNvbXBvbmVudGUgZm9yICpmYWxzZSouICovXG4gIGJvb2xlYW5GYWxzZT86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhIHNlIG8gYG1vZGVsYCByZWNlYmVyw6EgbyB2YWxvciBmb3JtYXRhZG8gcGVsYXMgcHJvcHJpZWRhZGVzIGBwLWxhYmVsLW9uYCBlIGBwLWxhYmVsLW9mZmAgb3VcbiAgICogYXBlbmFzIG8gdmFsb3IgcHVybyAoc2VtIGZvcm1hdGHDp8OjbykuXG4gICAqXG4gICAqIE8gdmFsb3IgcGFkcsOjbyDDqTogYGZhbHNlYC5cbiAgICpcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGVzdMOhIGRpc3Bvbml2ZWwgIGFwZW5hcyBwYXJhIG8gYHN3aWN0aGAuXG4gICAqL1xuICBmb3JtYXRNb2RlbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFZhbG9yIG3DoXhpbW8gYSBzZXIgaW5mb3JtYWRvIG5vIGNvbXBvbmVudGUsIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBxdWFuZG8gbyB0aXBvIGRlIGRhZG8gcG9yICpudW1iZXIqLCAqZGF0ZSogb3UgKmRhdGVUaW1lKi5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGBcbiAgICogKi9cbiAgbWF4VmFsdWU/OiBzdHJpbmcgfCBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFZhbG9yIG3DrW5pbW8gYSBzZXIgaW5mb3JtYWRvIG5vIGNvbXBvbmVudGUsIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBxdWFuZG8gbyB0aXBvIGRlIGRhZG8gcG9yICpudW1iZXIqLCAqZGF0ZSogb3UgKmRhdGVUaW1lKi5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGBcbiAgICovXG4gIG1pblZhbHVlPzogc3RyaW5nIHwgbnVtYmVyO1xuXG4gIC8qKiBRdWFudGlkYWRlIGRlIGxpbmhhcyBleGliaWRhcyBubyBgcG8tdGV4dGFyZWFgLiAqL1xuICByb3dzPzogbnVtYmVyO1xuXG4gIC8qKiBFc2NvbmRlIGEgaW5mb3JtYcOnw6NvIGVzdGlsbyAqcGFzc3dvcmQqLCBwb2RlIHNlciB1dGlsaXphZG8gcXVhbmRvIG8gdGlwbyBkZSBkYWRvIGZvciAqc3RyaW5nKi4gKi9cbiAgc2VjcmV0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRnVuw6fDo28gb3Ugc2VydmnDp28gcGFyYSB2YWxpZGFyIGFzICoqbXVkYW7Dp2FzIGRvIGNhbXBvKiouXG4gICAqXG4gICAqICogQSBwcm9wcmllZGFkZSBhY2VpdGEgb3Mgc2VndWludGVzIHRpcG9zOlxuICAgKiAtICoqU3RyaW5nKio6IEVuZHBvaW50IHVzYWRvIHBlbG8gY29tcG9uZW50ZSBwYXJhIHJlcXVpc2nDp8OjbyB2aWEgYFBPU1RgLlxuICAgKiAtICoqRnVuY3Rpb24qKjogTcOpdG9kbyBxdWUgc2Vyw6EgZXhlY3V0YWRvLlxuICAgKlxuICAgKiBBbyBzZXIgZXhlY3V0YWRvLCBpcsOhIHJlY2ViZXIgY29tbyBwYXLDom1ldHJvIHVtIG9iamV0byBjb20gbyBub21lIGRhIHByb3ByaWVkYWRlXG4gICAqIGFsdGVyYWRhIGUgbyBub3ZvIHZhbG9yLCBjb25mb3JtZSBhIGludGVyZmFjZSBgUG9EeW5hbWljRm9ybUZpZWxkQ2hhbmdlZGA6XG4gICAqXG4gICAqIGBgXG4gICAqIHsgcHJvcGVydHk6ICdwcm9wZXJ0eSBuYW1lJywgdmFsdWU6ICduZXcgdmFsdWUnIH1cbiAgICogYGBcbiAgICpcbiAgICogTyByZXRvcm5vIGRlc3RhIGZ1bsOnw6NvIGRldmUgc2VyIGRvIHRpcG8gW1BvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb25dKGRvY3VtZW50YXRpb24vcG8tZHluYW1pYy1mb3JtI3BvLWR5bmFtaWMtZm9ybS1maWVsZC12YWxpZGF0aW9uKSxcbiAgICogb25kZSBvIHVzdcOhcmlvIHBvZGVyw6EgZGV0ZXJtaW5hciBhcyBub3ZhcyBwcm9wcmllZGFkZXMgZG8gY2FtcG8uXG4gICAqIFBvciBleGVtcGxvOlxuICAgKlxuICAgKiBgYFxuICAgKiBvbkNoYW5nZUZpZWxkKGNoYW5nZVZhbHVlKTogUG9EeW5hbWljRm9ybUZpZWxkVmFsaWRhdGlvbiB7XG4gICAqXG4gICAqIGlmIChjaGFuZ2VWYWx1ZS5wcm9wZXJ0eSA9PT0gJ2JpcnRoZGF5JyAmJiAhdGhpcy52YWxpZGF0ZSgnYmlydGhkYXknKSkge1xuICAgKiAgIHJldHVybiB7XG4gICAqICAgICB2YWx1ZTogJycsXG4gICAqICAgICBmaWVsZDogeyBwcm9wZXJ0eTogJ2JpcnRoZGF5JywgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICogICAgIGZvY3VzOiB0cnVlXG4gICAqICAgfTtcbiAgICogfVxuICAgKiBgYFxuICAgKlxuICAgKiBQYXJhIHJlZmVyZW5jaWFyIGEgc3VhIGZ1bsOnw6NvIHV0aWxpemUgYSBwcm9wcmllZGFkZSBgYmluZGAsIHBvciBleGVtcGxvOlxuICAgKiBgYFxuICAgKiB7IHByb3BlcnR5OiAnc3RhdGUnLCBncmlkQ29sdW1uczogNiwgdmFsaWRhdGU6IHRoaXMubXlGdW5jdGlvbi5iaW5kKHRoaXMpIH1cbiAgICogYGBcbiAgICovXG4gIHZhbGlkYXRlPzogc3RyaW5nIHwgRnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIE9iamV0byBxdWUgc2Vyw6EgZW52aWFkbyBjb21vIHBhcsOibWV0cm8gbmFzIHJlcXVpc2nDp8O1ZXMgZGUgYnVzY2EgdXNhZG9zIHBlbG9zIGNvbXBvbmVudGVzIGBwby1sb29rdXBgIGVcbiAgICogYHBvLWNvbWJvYC5cbiAgICpcbiAgICogUG9yIGV4ZW1wbG8sIHBhcmEgbyBwYXLDom1ldHJvIGB7IGFnZTogMjMgfWAgYSBVUkwgZGEgcmVxdWlzacOnw6NvIGZpY2FyaWE6XG4gICAqXG4gICAqIGBgXG4gICAqIHVybCArID9hZ2U9MjMmZmlsdGVyPVBldGVyXG4gICAqIGBgXG4gICAqL1xuICBwYXJhbXM/OiBhbnk7XG5cbiAgLyoqXG4gICAqIE1lbnNhZ2VtIHF1ZSBzZXLDoSBhcHJlc2VudGFkYSBxdWFuZG8gbyBjYW1wbyBmaWNhciBpbnbDoWxpZG8uXG4gICAqXG4gICAqIE8gY2FtcG8gZmljYSBpbnbDoWxpZG8gcXVhbmRvIGFzIHNlZ3VpbnRlcyBwcm9wcmllZGFkZXMgbsOjbyBmb3JlbSByZXNwZWl0YWRhczpcbiAgICogIC0gcGF0dGVybjtcbiAgICogIC0gbWluVmFsdWU7XG4gICAqICAtIG1heFZhbHVlO1xuICAgKlxuICAgKiA+IEVzdGEgbWVuc2FnZW0gbsOjbyDDqSBhcHJlc2VudGFkYSBxdWFuZG8gbyBjYW1wbyBlc3RpdmVyIHZhemlvLCBtZXNtbyBxdWUgZWxlIHNlamEgcmVxdWVyaWRvLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby1wYXNzd29yZGAuXG4gICAqL1xuICBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZvcm1hdG8gZGUgZXhpYmnDp8OjbyBubyBjYW1wby5cbiAgICpcbiAgICogQW8gdXRpbGl6YXIgZXN0YSBwcm9wcmllZGFkZSBjb20gbyBgdHlwZWAgKlBvRHluYW1pY0ZpZWxkVHlwZS5EYXRlKiBvdSAqUG9EeW5hbWljRmllbGRUeXBlLkRhdGVUaW1lKixcbiAgICogcG9kZSBzZXIgdXRpbGl6YWRhIHBhcmEgZm9ybWF0YcOnw6NvIGRlIGV4aWJpw6fDo28gZGEgZGF0YTpcbiAgICpcbiAgICogVmFsb3JlcyB2w6FsaWRvczpcbiAgICpcbiAgICogLSBkZC9tbS95eXl5XG4gICAqIC0gbW0vZGQveXl5eVxuICAgKiAtIHl5eXkvbW0vZGRcbiAgICpcbiAgICpcbiAgICogVGFtYsOpbSBwb2RlLXNlIHV0aWxpemFyIGVtIGNvbmp1bnRvIGNvbSBgc2VhcmNoU2VydmljZWAsIGluZm9ybWFuZG8gdW1hIGxpc3RhIGRlIHByb3ByaWVkYWRlcyBxdWUgc2Vyw6EgdXRpbGl6YWRvXG4gICAqIHBhcmEgZm9ybWF0YcOnw6NvIGRhIGV4aWJpw6fDo28gbm8gY2FtcG8sIHBvciBleGVtcGxvOiBbXCJpZFwiLCBcIm5hbWVcIl0uXG4gICAqL1xuICBmb3JtYXQ/OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byByZXRvcm5hZG8gcXVlIHNlcsOhIHV0aWxpemFkbyBjb21vIGRlc2NyacOnw6NvIGRvIGNhbXBvLlxuICAgKlxuICAgKiBPIHZhbG9yIHBhZHLDo28gw6k6IGBsYWJlbGAuXG4gICAqXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBwb2RlIHNlciB1dGlsaXphZGEgZW0gY29uanVudG8gY29tOiBgb3B0aW9uc2AsIGBvcHRpb25zU2VydmljZWAgZSBgc2VhcmNoU2VydmljZWAuXG4gICAqL1xuICBmaWVsZExhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byByZXRvcm5hZG8gcXVlIHNlcsOhIHV0aWxpemFkbyBjb21vIHZhbG9yIGRvIGNhbXBvLlxuICAgKlxuICAgKiBPIHZhbG9yIHBhZHLDo28gw6k6IGB2YWx1ZWAuXG4gICAqXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBwb2RlIHNlciB1dGlsaXphZGEgZW0gY29uanVudG8gY29tOiBgb3B0aW9uc2AsIGBvcHRpb25zU2VydmljZWAgZSBgc2VhcmNoU2VydmljZWAuXG4gICAqL1xuICBmaWVsZFZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmZvcm1hIGEgb3JkZW0gZGUgZXhpYmnDp8OjbyBkbyBjYW1wby5cbiAgICpcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo286XG4gICAqXG4gICAqIGBgXG4gICAqIFtcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAxJywgb3JkZXI6IDIgfSxcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAyJywgb3JkZXI6IDEgfSxcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAzJyB9LFxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDQnLCBvcmRlcjogMyB9XG4gICAqIF07XG4gICAqIGBgXG4gICAqXG4gICAqIE5hIGV4aWJpw6fDo28gYSBvcmRlbSBmaWNhcsOhIGRlc3NhIGZvcm1hOlxuICAgKiBgYFxuICAgKiBbXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMicsIG9yZGVyOiAxIH0sXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMScsIG9yZGVyOiAyIH0sXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgNCcsIG9yZGVyOiAzIH0sXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMycgfVxuICAgKiBdO1xuICAgKiBgYFxuICAgKlxuICAgKiBTw7Mgc2Vyw6NvIGFjZWl0b3MgdmFsb3JlcyBjb20gbsO6bWVyb3MgaW50ZWlyb3MgbWFpb3JlcyBkbyBxdWUgemVyby5cbiAgICpcbiAgICogQ2FtcG9zIHNlbSBgb3JkZXJgIG91IGNvbSB2YWxvcmVzIG5lZ2F0aXZvcywgemVyYWRvcyBvdSBpbnbDoWxpZG9zXG4gICAqIHNlcsOjbyBvcyDDumx0aW1vcyBhIHNlcmVtIHJlbmRlcml6YWRvcyBlIHNlZ3VpcsOjbyBvIHBvc2ljaW9uYW1lbnRvIGRlbnRybyBkb1xuICAgKiBhcnJheS5cbiAgICovXG4gIG9yZGVyPzogbnVtYmVyO1xuXG4gIC8qKiBNZW5zYWdlbSBxdWUgc2Vyw6EgZXhpYmlkYSBlbnF1YW50byBvIGNhbXBvIG7Do28gZXN0aXZlciBwcmVlbmNoaWRvLiAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIGEgbG9jYWxpZGFkZSBhIHNlciB1dGlsaXphZGEgbm8gY29tcG9uZW50ZS5cbiAgICogUG9yIHBhZHLDo28gbyB2YWxvciBzZXLDoSBjb25maWd1cmFkbyBzZWd1bmRvIGEgbyBtw7NkdWxvIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcbiAgICpcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo286XG4gICAqIGBgXG4gICAqIFtcbiAgICogICB7IHByb3BlcnR5OiAnYmlydGhkYXknLCBsb2NhbGU6ICdlbicsIHR5cGU6ICdkYXRlJyB9LFxuICAgKiAgIHsgcHJvcGVydHk6ICd3YWdlJywgbG9jYWxlOiAncnUnLCB0eXBlOiAnY3VycmVuY3knIH1cbiAgICogXTtcbiAgICogYGBcbiAgICpcbiAgICogPiBQYXJhIHZlciBxdWFpcyBsaW5ndWFnZW5zIHN1cG9ydGFkYXMgYWNlc3NlIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcbiAgICogPiBBIHByb3ByaWVkYWRlIHNlcsOhIHJlcGFzc2FkYSBwYXJhIG9zIGNvbXBvbmVudGVzIHF1ZSBzdXBvcnRhbSBhIG1lc21hLlxuICAgKi9cbiAgbG9jYWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPIGNvbnRyb2xlIHBhc3NhIGEgcGVybWl0aXIgYSBlbnRyYWRhIGRlIHVtIGludGVydmFsbyBhbyBpbnbDqXMgZGUgdW0gw7puaWNvIHZhbG9yLlxuICAgKlxuICAgKiA+IEF0dWFsbWVudGUgZXNzYSBwcm9wcmllZGFkZSBlc3TDoSBkaXNwb27DrXZlbCBhcGVuYXMgcGFyYSBvIHRpcG8gJ2RhdGUnIGUgJ2RhdGVUaW1lJy5cbiAgICovXG4gIHJhbmdlPzogYm9vbGVhbjtcblxuICAvKiogSW5kaWNhIHF1ZSBvIGNhbXBvIHNlcsOhIHNvbWVudGUgbGVpdHVyYS5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby1zZWxlY3RgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgXG4gICAqL1xuICByZWFkb25seT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgYSBzZWxlw6fDo28gZGUgbcO6bHRpcGxvcyBpdGVucy5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsOioqIGBwby1sb29rdXBgLCBgcG8tdXBsb2FkYFxuICAgKi9cbiAgbXVsdGlwbGU/OiBib29sZWFuO1xuXG4gIC8qKiBTZSB2ZXJkYWRlaXJvLCBvIGNhbXBvIHJlY2ViZXLDoSB1bSBib3TDo28gcGFyYSBzZXIgbGltcG8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLCBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tY29tYm9gLCBgcG8tbG9va3VwYCwgYHBvLXBhc3N3b3JkYFxuICAgKi9cbiAgY2xlYW4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgYSBwcm9wcmllZGFkZSBuYXRpdmEgYGF1dG9jb21wbGV0ZWAgZG8gY2FtcG8gY29tbyBvZmYuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLCBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tbG9va3VwYCwgYHBvLXBhc3N3b3JkYFxuICAgKi9cbiAgbm9BdXRvY29tcGxldGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQb3Npw6fDo28gZGUgZXhpYmnDp8OjbyBkbyByw7N0dWxvIGRvIFBvU3dpdGNoLlxuICAgKiA+IFBvciBwYWRyw6NvIGV4aWJlIMOgIGRpcmVpdGEuXG4gICAqL1xuICBsYWJlbFBvc2l0aW9uPzogUG9Td2l0Y2hMYWJlbFBvc2l0aW9uO1xuXG4gIC8qKlxuICAgKiBQZXJtaXRlIGVzY29uZGVyIGEgZnVuw6fDo28gZGUgZXNwaWFyIGEgc2VuaGEgZGlnaXRhZGEgbm8gYHBvLXBhc3N3b3JkYC5cbiAgICovXG4gIGhpZGVQYXNzd29yZFBlZWs/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQYWRyw6NvIGRlIGZvcm1hdGHDp8OjbyBwYXJhIHNhw61kYSBkbyBtb2RlbCwgaW5kZXBlbmRlbnRlbWVudGUgZG8gZm9ybWF0byBkZSBlbnRyYWRhLlxuICAgKlxuICAgKiA+IFZlamEgb3MgdmFsb3JlcyB2w6FsaWRvcyBubyBgZW51bVBvRGF0ZXBpY2tlcklzb0Zvcm1hdGAuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbDoqKiBwby1kYXRlcGlja2VyXG4gICAqL1xuICBpc29Gb3JtYXQ/OiBQb0RhdGVwaWNrZXJJc29Gb3JtYXQ7XG5cbiAgLyoqXG4gICAqIE9iamV0byBjb20gYXMgbGl0ZXJhaXMgdXNhZGFzIHBhcmEgb3Mgc2VndWludGVzIGNvbXBvbmVudGVzOiBgcG8tbG9va3VwYCwgYHBvLW11bHRpc2VsZWN0YCwgYHBvLWNvbWJvYCBlIGBwby1kYXRlcGlja2VyLXJhbmdlYC5cbiAgICpcbiAgICogPiBPIG9iamV0byBwYWRyw6NvIGRlIGxpdGVyYWlzIHNlcsOhIHRyYWR1emlkbyBkZSBhY29yZG8gY29tIG8gaWRpb21hIGRvIFBvSTE4blNlcnZpY2Ugb3UgZG8gYnJvd3Nlci5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWxvb2t1cGAsIGBwby1tdWx0aXNlbGVjdGAsIGBwby1jb21ib2AsIGBwby1kYXRlcGlja2VyLXJhbmdlYFxuICAgKi9cbiAgbGl0ZXJhbHM/OiBQb0xvb2t1cExpdGVyYWxzIHwgUG9NdWx0aXNlbGVjdExpdGVyYWxzIHwgUG9Db21ib0xpdGVyYWxzIHwgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyB8IFBvVXBsb2FkTGl0ZXJhbHM7XG5cbiAgLyoqXG4gICAqIFNlIHZlcmRhZGVpcm8gYXRpdmEgYSBmdW5jaW9uYWxpZGFkZSBkZSBzY3JvbGwgaW5maW5pdG8gcGFyYSBvIGNvbWJvIG91IGxvb2t1cCwgYW8gY2hlZ2FyIGFvIGZpbSBkYSB0YWJlbGEgZXhlY3V0YXLDoSBub3ZhIGJ1c2NhIGRvcyBkYWRvcyBjb25mb3JtZSBwYWdpbmHDp8Ojby5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgYHBvLWxvb2t1cGAuXG4gICAqL1xuICBpbmZpbml0ZVNjcm9sbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERlZmluZSBvIHBlcmNlbnR1YWwgbmVjZXNzw6FyaW8gcGFyYSBkaXNwYXJhciBvIGV2ZW50byBzaG93LW1vcmUsIHF1ZSDDqSByZXNwb25zw6F2ZWwgcG9yIGNhcnJlZ2FyIG1haXMgZGFkb3Mgbm8gY29tYm8uIENhc28gbyB2YWxvciBzZWphIG1haW9yIHF1ZSAxMDAgb3UgbWVub3IgcXVlIDAsIG8gdmFsb3IgcGFkcsOjbyBzZXLDoSAxMDAlLlxuICAgKiAqKkV4ZW1wbG9zKipcbiAgICogYHsgaW5maW5pdGVTY3JvbGxEaXN0YW5jZTogODAgfWA6IFF1YW5kbyBhdGluZ2lyIDgwJSBkbyBzY3JvbGwgZG8gY29tYm8sIG8gc2hvdy1tb3JlIHNlcsOhIGRpc3BhcmFkby5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsOioqIGBwby1jb21ib2AuXG4gICAqL1xuICBpbmZpbml0ZVNjcm9sbERpc3RhbmNlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgcXVlIGEgYWx0dXJhIGRvIGNvbXBvbmVudGUgc2Vyw6EgYXV0byBhanVzdMOhdmVsLCBwb3NzdWluZG8gdW1hIGFsdHVyYSBtaW5pbWEgcG9yw6ltIGEgYWx0dXJhIG3DoXhpbWEgc2Vyw6EgZGUgYWNvcmRvIGNvbSBvIG7Dum1lcm8gZGUgaXRlbnMgc2VsZWNpb25hZG9zIGUgYSBleHRlbnPDo28gZG9zIG1lc21vcywgbWFudGVuZG8tb3Mgc2VtcHJlIHZpc8OtdmVpcy5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLW11bHRpc2VsZWN0YCwgYHBvLWxvb2t1cGAuXG4gICAqL1xuICBhdXRvSGVpZ2h0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSW50ZXJ2YWxvIHV0aWxpemFkbyBubyBgcG8tbnVtYmVyYC5cbiAgICovXG4gIHN0ZXA/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERlZmluZSBvIG1vZG8gZGUgcGVzcXVpc2EgdXRpbGl6YWRvIG5vIGZpbHRybyBkYSBsaXN0YSBkZSBzZWxlw6fDo286IGBzdGFydHNXaXRoYCwgYGNvbnRhaW5zYCBvdSBgZW5kc1dpdGhgLlxuICAgKiA+IFF1YW5kbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIHAtZmlsdGVyLXNlcnZpY2UgZXN0YSBwcm9wcmllZGFkZSBzZXLDoSBpZ25vcmFkYS5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLW11bHRpc2VsZWN0YC5cbiAgICovXG4gIGZpbHRlck1vZGU/OiBQb011bHRpc2VsZWN0RmlsdGVyTW9kZTtcblxuICAvKipcbiAgICogVmFsb3IgbcOtbmltbyBkZSBjYXJhY3RlcmVzIHBhcmEgcmVhbGl6YXIgbyBmaWx0cm8gbm8gc2VydmnDp28gZG8gYHBvLWNvbWJvYC5cbiAgICovXG4gIGZpbHRlck1pbmxlbmd0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogRGVzYWJpbGl0YSBvIGZpbHRybyBpbmljaWFsIG5vIHNlcnZpw6dvIGRvIGBwby1jb21ib2AsIHF1ZSDDqSBleGVjdXRhZG8gbm8gcHJpbWVpcm8gY2xpcXVlIG5vIGNhbXBvLlxuICAgKi9cbiAgZGlzYWJsZWRJbml0RmlsdGVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2UgdmVyZGFkZWlybywgZGVzYWJpbGl0YXLDoSBhIGJ1c2NhIGRlIHVtIGl0ZW0gdmlhIFRBQiBubyBgcG8tY29tYm9gLlxuICAgKi9cbiAgZGlzYWJsZWRUYWJGaWx0ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFc3RhIHByb3ByaWVkYWRlIGRlZmluZSBlbSBxdWFudG8gdGVtcG8gKGVtIG1pbGlzc2VndW5kb3MpLCBhZ3VhcmRhIHBhcmEgYWNpb25hciBvIGV2ZW50byBkZSBmaWx0cm8gYXDDs3MgY2FkYSBwcmVzc2lvbmFtZW50byBkZSB0ZWNsYS4gU2Vyw6EgdXRpbGl6YWRhIGFwZW5hcyBxdWFuZG8gaG91dmVyIHNlcnZpw6dvIChgcC1maWx0ZXItc2VydmljZWApLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tY29tYm9gLCBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKi9cbiAgZGVib3VuY2VUaW1lPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBJbmRpY2EgcXVlIG8gZXZlbnRvIGBwLWNoYW5nZWAgc8OzIHNlcsOhIGRpc3BhcmFkbyBhbyBjbGljYXIgb3UgcHJlc3Npb25hciBhIHRlY2xhIFwiRW50ZXJcIiBzb2JyZSB1bWEgb3DDp8OjbyBzZWxlY2lvbmFkYSBubyBgcG8tY29tYm9gLlxuICAgKi9cbiAgY2hhbmdlT25FbnRlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEluZGljYSBxdWUgYSBsaXN0YSBkZWZpbmlkYSBuYSBwcm9wcmllZGFkZSBwLW9wdGlvbnMgc2Vyw6Egb3JkZW5hZGEgcGVsYSBkZXNjcmnDp8Ojby5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgcG8tbXVsdGlzZWxlY3RcbiAgICovXG4gIHNvcnQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciBkbyBjYW1wbyBkZSBwZXNxdWlzYSBkbyBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKlxuICAgKiA+IENhc28gbyBtZXNtbyBuw6NvIHNlamEgaW5mb3JtYWRvLCBvIHZhbG9yIHBhZHLDo28gc2Vyw6EgdHJhZHV6aWRvIGNvbSBiYXNlIG5vIGlkaW9tYSBkbyBuYXZlZ2Fkb3IgKHB0LCBlcyBlIGVuKS5cbiAgICovXG4gIHBsYWNlaG9sZGVyU2VhcmNoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFc2NvbmRlIG8gY2FtcG8gZGUgcGVzcXVpc2EgZXhpc3RlbnRlIGRlbnRybyBkbyBkcm9wZG93biBkbyBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKi9cbiAgaGlkZVNlYXJjaD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEluZGljYSBzZSBvIGNhbXBvIFwiU2VsZWNpb25hciB0b2Rvc1wiIGRvIGBwby1tdWx0aXNlbGVjdGAgc2Vyw6EgZXNjb25kaWRvLlxuICAgKi9cbiAgaGlkZVNlbGVjdEFsbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIExpc3RhIGRlIG9iamV0b3MgZG9zIGNhbXBvcyBxdWUgc2Vyw6NvIGNyaWFkb3MgbmEgYnVzY2EgYXZhbsOnYWRhLlxuICAgKlxuICAgKiA+IENhc28gbsOjbyBzZWphIHBhc3NhZG8gdW0gb2JqZXRvIG91IGVudMOjbyBlbGUgZXN0ZWphIGVtIGJyYW5jbyBvIGxpbmsgZGUgYnVzY2EgYXZhbsOnYWRhIGZpY2Fyw6EgZXNjb25kaWRvLlxuICAgKlxuICAgKiBFeGVtcGxvIGRlIFVSTCBjb20gYnVzY2EgYXZhbsOnYWRhOlxuICAgKlxuICAgKiBgdXJsICsgP3BhZ2U9MSZwYWdlU2l6ZT0yMCZuYW1lPVRvbnklMjBTdGFyayZuaWNrbmFtZT1Ib21lbSUyMGRlJTIwRmVycm9gXG4gICAqXG4gICAqIENhc28gYWxndW0gcGFyw6JtZXRybyBzZWphIHVtYSBsaXN0YSwgYSBjb25jYXRlbmHDp8OjbyDDqSBmZWl0YSB1dGlsaXphbmRvIHbDrXJndWxhLiBFeGVtcGxvOlxuICAgKlxuICAgKiBgdXJsICsgP3BhZ2U9MSZwYWdlU2l6ZT0yMCZuYW1lPVRvbnklMjBTdGFyayxQZXRlciUyMFBhcmtlcixHb2hhbmBcbiAgICovXG4gIGFkdmFuY2VkRmlsdGVycz86IEFycmF5PFBvTG9va3VwQWR2YW5jZWRGaWx0ZXI+O1xuICAvKipcbiAgICogcG9kZSBzZXIgdXRpbGl6YWRhIGVtIGNvbmp1bnRvIGNvbSBhIHByb3ByaWVkYWRlIGBvcHRpb25zYCBmb3LDp2FuZG8gbyBjb21wb25lbnRlIGEgcmVuZGVyaXphciB1bSBgcG8tc2VsZWN0YCBvdSBgcG8tcmFkaW8tZ3JvdXBgLlxuICAgKlxuICAgKiBWYWxvcmVzIGFjZWl0b3M6XG4gICAqIC0gRm9yY2VPcHRpb25Db21wb25lbnRFbnVtLnJhZGlvR3JvdXBcbiAgICogLSBGb3JjZU9wdGlvbkNvbXBvbmVudEVudW0uc2VsZWN0XG4gICAqXG4gICAqID5Fc3NhIHByb3ByaWVkYWRlIHNlcsOhIGlnbm9yYWRhIGNhc28gc2VqYSB1dGlsaXphZGEgZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYG9wdGlvbnNNdWx0aWAgZSBgb3B0aW9uc1NlcnZpY2VgLlxuICAgKi9cbiAgZm9yY2VPcHRpb25zQ29tcG9uZW50VHlwZT86IEZvcmNlT3B0aW9uQ29tcG9uZW50RW51bTtcblxuICAvKipcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBhbyBmZWNoYXIgbyBwb3BvdmVyIGRvIGdlcmVuY2lhZG9yIGRlIGNvbHVuYXMgYXDDs3MgYWx0ZXJhciBhcyBjb2x1bmFzIHZpc8OtdmVpcy5cbiAgICpcbiAgICogTyBjb21wb25lbnRlIGVudmlhIGNvbW8gcGFyw6JtZXRybyB1bSBhcnJheSBkZSBzdHJpbmcgY29tIGFzIGNvbHVuYXMgdmlzw612ZWlzIGF0dWFsaXphZGFzLlxuICAgKiBQb3IgZXhlbXBsbzogW1wiaWRDYXJkXCIsIFwibmFtZVwiLCBcImhpcmVTdGF0dXNcIiwgXCJhZ2VcIl0uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzKio6IGBwby1sb29rdXBgXG4gICAqL1xuICBjaGFuZ2VWaXNpYmxlQ29sdW1ucz86IEZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gZGlzcGFyYWRvIGFvIGNsaWNhciBubyBib3TDo28gZGUgcmVzdGF1cmFyIHBhZHLDo28gbm8gZ2VyZW5jaWFkb3IgZGUgY29sdW5hcy5cbiAgICpcbiAgICogTyBjb21wb25lbnRlIGVudmlhIGNvbW8gcGFyw6JtZXRybyB1bSBhcnJheSBkZSBzdHJpbmcgY29tIGFzIGNvbHVuYXMgY29uZmlndXJhZGFzIGluaWNpYWxtZW50ZS5cbiAgICogUG9yIGV4ZW1wbG86IFtcImlkQ2FyZFwiLCBcIm5hbWVcIiwgXCJoaXJlU3RhdHVzXCIsIFwiYWdlXCJdLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpcyoqOiBgcG8tbG9va3VwYFxuICAgKi9cbiAgY29sdW1uUmVzdG9yZU1hbmFnZXI/OiBGdW5jdGlvbjtcblxuICAvKipcbiAgICogVVJMIHF1ZSBkZXZlIHNlciBmZWl0YSBhIHJlcXVpc2nDp8OjbyBjb20gb3MgYXJxdWl2b3Mgc2VsZWNpb25hZG9zLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIHVybD86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIHNlIG8gZW52aW8gZG8gYXJxdWl2byBzZXLDoSBhdXRvbcOhdGljbyBhbyBzZWxlY2lvbmFyIG8gbWVzbW8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgYXV0b1VwbG9hZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgYSBzZWxlw6fDo28gZGUgZGlyZXTDs3Jpb3MgY29udGVuZG8gdW0gb3UgbWFpcyBhcnF1aXZvcyBwYXJhIGVudmlvLlxuICAgKlxuICAgKiA+IEEgaGFiaWxpdGHDp8OjbyBkZXN0YSBwcm9wcmllZGFkZSBzZSByZXN0cmluZ2UgYXBlbmFzIMOgIHNlbGXDp8OjbyBkZSBkaXJldMOzcmlvcy5cbiAgICpcbiAgICogPiBEZWZpbmnDp8OjbyBuw6NvIHN1cG9ydGFkYSBwZWxvIGJyb3dzZXIgKipJbnRlcm5ldCBFeHBsb3JlcioqLCB0b2RhdmlhIHNlcsOhIHBvc3PDrXZlbCBhIHNlbGXDp8OjbyBkZSBhcnF1aXZvcyBwYWRyw6NvLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIGRpcmVjdG9yeT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEV4aWJlIGEgw6FyZWEgb25kZSDDqSBwb3Nzw612ZWwgYXJyYXN0YXIgZSBzZWxlY2lvbmFyIG9zIGFycXVpdm9zLiBRdWFuZG8gZXN0aXZlciBkZWZpbmlkYSwgb21pdGUgbyBib3TDo28gcGFyYSBzZWxlw6fDo28gZGUgYXJxdWl2b3NcbiAgICogYXV0b21hdGljYW1lbnRlLlxuICAgKlxuICAgKiA+IFJlY29tZW5kYW1vcyB1dGlsaXphciBhcGVuYXMgdW0gYHBvLXVwbG9hZGAgY29tIGVzdGEgZnVuY2lvbmFsaWRhZGUgcG9yIHRlbGEuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgZHJhZ0Ryb3A/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgZW0gKnBpeGVscyogYSBhbHR1cmEgZGEgw6FyZWEgb25kZSBwb2RlbSBzZXIgYXJyYXN0YWRvcyBvcyBhcnF1aXZvcy4gQSBhbHR1cmEgbcOtbmltYSBhY2VpdGEgw6kgYDE2MHB4YC5cbiAgICpcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGZ1bmNpb25hIHNvbWVudGUgc2UgYSBwcm9wcmllZGFkZSBgcC1kcmFnLWRyb3BgIGVzdGl2ZXIgaGFiaWxpdGFkYS5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBkcmFnRHJvcEhlaWdodD86IG51bWJlcjtcblxuICAvKipcbiAgICogT2JqZXRvIHF1ZSBzZWd1ZSBhIGRlZmluacOnw6NvIGRhIGludGVyZmFjZSBgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zYCxcbiAgICogcXVlIHBvc3NpYmlsaXRhIGRlZmluaXIgdGFtYW5obyBtw6F4aW1vL23DrW5pbW8gZSBleHRlbnPDo28gZG9zIGFycXVpdm9zIHBlcm1pdGlkb3MuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgcmVzdHJpY3Rpb25zPzogUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zO1xuXG4gIC8qKlxuICAgKiBPYmpldG8gcXVlIGNvbnTDqW0gb3MgY2FiZcOnYWxob3MgcXVlIHNlcsOhIGVudmlhZG8gbmEgcmVxdWlzacOnw6NvIGRvcyBhcnF1aXZvcy5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBoZWFkZXJzPzogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB9O1xuXG4gIC8qKlxuICAgKiBPY3VsdGEgdmlzdWFsbWVudGUgYXMgaW5mb3JtYcOnw7VlcyBkZSByZXN0cmnDp8O1ZXMgcGFyYSBvIHVwbG9hZC5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBoaWRlUmVzdHJpY3Rpb25zSW5mbz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9taXRlIG8gYm90w6NvIGRlIHNlbGXDp8OjbyBkZSBhcnF1aXZvcy5cbiAgICpcbiAgICogPiBDYXNvIG8gdmFsb3IgZGVmaW5pZG8gc2VqYSBgdHJ1ZWAsIGNhYmVyw6EgYW8gZGVzZW52b2x2ZWRvciBhIHJlc3BvbnNhYmlsaWRhZGVcbiAgICogcGVsYSBjaGFtYWRhIGRvIG3DqXRvZG8gYHNlbGVjdEZpbGVzKClgIHBhcmEgc2VsZcOnw6NvIGRlIGFycXVpdm9zLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIGhpZGVTZWxlY3RCdXR0b24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPbWl0ZSBvIGJvdMOjbyBkZSBlbnZpbyBkZSBhcnF1aXZvcy5cbiAgICpcbiAgICogPiBDYXNvIG8gdmFsb3IgZGVmaW5pZG8gc2VqYSBgdHJ1ZWAsIGNhYmVyw6EgYW8gZGVzZW52b2x2ZWRvciBhIHJlc3BvbnNhYmlsaWRhZGVcbiAgICogcGVsYSBjaGFtYWRhIGRvIG3DqXRvZG8gYHNlbmRGaWxlcygpYCBwYXJhIGVudmlvIGRvKHMpIGFycXVpdm8ocykgc2VsZWNpb25hZG8ocykuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgaGlkZVNlbmRCdXR0b24/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvYnJpZ2F0w7NyaW8gc2Vyw6EgZXhpYmlkYS5cbiAgICpcbiAgICogPiBOw6NvIHNlcsOhIGV4aWJpZGEgYSBpbmRpY2HDp8OjbyBzZTpcbiAgICogLSBOw6NvIHBvc3N1aXIgYHAtaGVscGAgZS9vdSBgcC1sYWJlbGAuXG4gICAqL1xuICBzaG93UmVxdWlyZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gc2Vyw6EgZGlzcGFyYWRvIHF1YW5kbyBvY29ycmVyIGFsZ3VtIGVycm8gbm8gZW52aW8gZG8gYXJxdWl2by5cbiAgICogPiBQb3IgcGFyw6JtZXRybyBzZXLDoSBwYXNzYWRvIG8gb2JqZXRvIGRvIHJldG9ybm8gcXVlIMOpIGRvIHRpcG8gYEh0dHBFcnJvclJlc3BvbnNlYC5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBvbkVycm9yPzogRnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIEV2ZW50byBzZXLDoSBkaXNwYXJhZG8gcXVhbmRvIG8gZW52aW8gZG8gYXJxdWl2byBmb3IgcmVhbGl6YWRvIGNvbSBzdWNlc3NvLlxuICAgKiA+IFBvciBwYXLDom1ldHJvIHNlcsOhIHBhc3NhZG8gbyBvYmpldG8gZG8gcmV0b3JubyBxdWUgw6kgZG8gdGlwbyBgSHR0cFJlc3BvbnNlYC5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBvblN1Y2Nlc3M/OiBGdW5jdGlvbjtcblxuICAvKipcbiAgICogRnVuw6fDo28gcXVlIHNlcsOhIGV4ZWN1dGFkYSBubyBtb21lbnRvIGRlIHJlYWxpemFyIG8gZW52aW8gZG8gYXJxdWl2byxcbiAgICogb25kZSBzZXLDoSBwb3Nzw612ZWwgYWRpY2lvbmFyIGluZm9ybWHDp8O1ZXMgYW8gcGFyw6JtZXRybyBxdWUgc2Vyw6EgZW52aWFkbyBuYSByZXF1aXNpw6fDo28uXG4gICAqIMOJIHBhc3NhZG8gcG9yIHBhcsOibWV0cm8gdW0gb2JqZXRvIGNvbSBvIGFycXVpdm8gZSBhIHByb3ByaWVkYWRlIGRhdGEgbmVzdGEgcHJvcHJpZWRhZGUgcG9kZSBzZXIgaW5mb3JtYWRvIGFsZ3VtIGRhZG8sXG4gICAqIHF1ZSBzZXLDoSBlbnZpYWRvIGVtIGNvbmp1bnRvIGNvbSBvIGFycXVpdm8gbmEgcmVxdWlzacOnw6NvLCBwb3IgZXhlbXBsbzpcbiAgICpcbiAgICogYGBgXG4gICAqICAgZXZlbnQuZGF0YSA9IHtpZDogJ2lkIGRvIHVzdcOhcmlvJ307XG4gICAqIGBgYFxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIG9uVXBsb2FkPzogRnVuY3Rpb247XG59XG4iXX0=
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgUG9DaGVja2JveEdyb3VwT3B0aW9uLFxuICBQb0NvbWJvRmlsdGVyLFxuICBQb0NvbWJvTGl0ZXJhbHMsXG4gIFBvRGF0ZXBpY2tlcklzb0Zvcm1hdCxcbiAgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyxcbiAgUG9Mb29rdXBGaWx0ZXIsXG4gIFBvTG9va3VwTGl0ZXJhbHMsXG4gIFBvTXVsdGlzZWxlY3RGaWx0ZXJNb2RlLFxuICBQb011bHRpc2VsZWN0TGl0ZXJhbHMsXG4gIFBvU3dpdGNoTGFiZWxQb3NpdGlvbixcbiAgUG9VcGxvYWRMaXRlcmFscyxcbiAgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zXG59IGZyb20gJy4uLy4uL3BvLWZpZWxkJztcbmltcG9ydCB7IFBvTG9va3VwQWR2YW5jZWRGaWx0ZXIgfSBmcm9tICcuLi8uLi9wby1maWVsZC9wby1sb29rdXAvaW50ZXJmYWNlcy9wby1sb29rdXAtYWR2YW5jZWQtZmlsdGVyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb0xvb2t1cENvbHVtbiB9IGZyb20gJy4uLy4uL3BvLWZpZWxkL3BvLWxvb2t1cC9pbnRlcmZhY2VzL3BvLWxvb2t1cC1jb2x1bW4uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvTXVsdGlzZWxlY3RPcHRpb24gfSBmcm9tICcuLi8uLi9wby1maWVsZC9wby1tdWx0aXNlbGVjdC9wby1tdWx0aXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvU2VsZWN0T3B0aW9uIH0gZnJvbSAnLi4vLi4vcG8tZmllbGQvcG8tc2VsZWN0L3BvLXNlbGVjdC1vcHRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcmNlT3B0aW9uQ29tcG9uZW50RW51bSB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZmllbGQtZm9yY2UtY29tcG9uZW50LmVudW0nO1xuXG5pbXBvcnQgeyBQb0R5bmFtaWNGaWVsZCB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZmllbGQuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBAdXNlZEJ5IFBvRHluYW1pY0Zvcm1Db21wb25lbnQsIFBvQWR2YW5jZWRGaWx0ZXJDb21wb25lbnQsIFBvUGFnZUR5bmFtaWNTZWFyY2hDb21wb25lbnRcbiAqXG4gKiBAZG9jc0V4dGVuZHMgUG9EeW5hbWljRmllbGRcbiAqXG4gKiBAZGVzY3JpcHRpb25cbiAqXG4gKiBJbnRlcmZhY2UgcGFyYSBkZWZpbmnDp8OjbyBkYXMgcHJvcHJpZWRhZGVzIGRvcyBjYW1wb3MgZGUgZW50cmFkYSBxdWUgc2Vyw6NvIGNyaWFkb3MgZGluYW1pY2FtZW50ZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQb0R5bmFtaWNGb3JtRmllbGQgZXh0ZW5kcyBQb0R5bmFtaWNGaWVsZCB7XG4gIC8qKlxuICAgKiBEZWZpbmUgYXMgY29sdW5hcyBwYXJhIHV0aWxpemHDp8OjbyBkYSBidXNjYSBhdmFuw6dhZGEuIFVzYWRhIHNvbWVudGUgZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYHNlYXJjaFNlcnZpY2VgLFxuICAgKiBlc3NhIHByb3ByaWVkYWRlIGRldmUgcmVjZWJlciB1bSBhcnJheSBkZSBvYmpldG9zIHF1ZSBpbXBsZW1lbnRhbSBhIGludGVyZmFjZSBbYFBvTG9va3VwQ29sdW1uYF0oL2RvY3VtZW50YXRpb24vcG8tbG9va3VwKS5cbiAgICpcbiAgICogPiBDYXNvIHNlamFtIGluZm9ybWFkYXMgY29sdW5hcywgZGV2ZS1zZSBvYnJpZ2F0b3JpYW1lbnRlIGNvbnRlciBjb2x1bmFzIGRlZmluaWRhcyBjb21vICpsYWJlbCogZSAqdmFsdWUqIHBhcmEgdmFsb3Jlc1xuICAgKiBkZSB0ZWxhIGUgZG8gbW9kZWwgcmVzcGVjdGl2YW1lbnRlLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tcmFkaW8tZ3JvdXBgLCBgcG8tbG9va3VwYCwgYHBvLWNoZWNrYm94LWdyb3VwYC5cbiAgICovXG4gIGNvbHVtbnM/OiBBcnJheTxQb0xvb2t1cENvbHVtbj4gfCBudW1iZXI7XG5cbiAgLyoqIERlZmluZSBhIG9icmlnYXRvcmllZGFkZSBkbyBjYW1wby4gKi9cbiAgcmVxdWlyZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgc2UgYSBpbmRpY2HDp8OjbyBkZSBjYW1wbyBvcGNpb25hbCBzZXLDoSBleGliaWRhLlxuICAgKlxuICAgKiA+IEEgaW5kaWNhw6fDo28gbsOjbyBzZXLDoSBleGliaWRhLCBzZTpcbiAgICogLSBPIGNhbXBvIGZvciBgcmVxdWlyZWRgLCBvdTtcbiAgICogLSBOw6NvIHBvc3N1aXIgYGhlbHBgIGUgYGxhYmVsYC5cbiAgICovXG4gIG9wdGlvbmFsPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTGlzdGEgZGUgb3DDp8O1ZXMgcXVlIHNlcsOjbyBleGliaWRvcyBlbSB1bSBjb21wb25lbnRlLCBwb2RlbmRvIHNlbGVjaW9uYXIgdW1hIG9ww6fDo28uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1zZWxlY3RgLCBgcG8tcmFkaW8tZ3JvdXBgLCBgcG8tY2hlY2tib3gtZ3JvdXBgLCBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKiAqL1xuICBvcHRpb25zPzpcbiAgICB8IEFycmF5PHN0cmluZz5cbiAgICB8IEFycmF5PFBvU2VsZWN0T3B0aW9uPlxuICAgIHwgQXJyYXk8UG9NdWx0aXNlbGVjdE9wdGlvbj5cbiAgICB8IEFycmF5PFBvQ2hlY2tib3hHcm91cE9wdGlvbj5cbiAgICB8IEFycmF5PGFueT47XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgcXVlIG8gdXN1w6FyaW8gZmHDp2EgbcO6bHRpcGxhIHNlbGXDp8OjbyBkZW50cm8gZGEgbGlzdGEgZGUgb3DDp8O1ZXMuXG4gICAqL1xuICBvcHRpb25zTXVsdGk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiAgU2VydmnDp28gcXVlIHNlcsOhIHV0aWxpemFkbyBwYXJhIGJ1c2NhciBvcyBpdGVucyBlIHByZWVuY2hlciBhIGxpc3RhIGRlIG9ww6fDtWVzIGRpbmFtaWNhbWVudGUuXG4gICAqICBQb2RlIHNlciBpbmZvcm1hZGEgdW1hIFVSTCBvdSB1bWEgaW5zdGFuY2lhIGRvIHNlcnZpw6dvIGJhc2VhZG8gZW0gUG9Db21ib0ZpbHRlci5cbiAgICogICoqSW1wb3J0YW50ZSoqXG4gICAqICA+IFBhcmEgcXVlIGZ1bmNpb25lIGNvcnJldGFtZW50ZSwgw6kgaW1wb3J0YW50ZSBxdWUgbyBzZXJ2acOnbyBzaWdhIG9cbiAgICogIFtndWlhIGRlIEFQSSBkbyBQTyBVSV0oaHR0cHM6Ly9wby11aS5pby9ndWlkZXMvYXBpKS5cbiAgICovXG4gIG9wdGlvbnNTZXJ2aWNlPzogc3RyaW5nIHwgUG9Db21ib0ZpbHRlcjtcblxuICAvKipcbiAgICogU2VydmnDp28gcXVlIHNlcsOhIHV0aWxpemFkbyBwYXJhIHJlYWxpemFyIGEgYnVzY2EgYXZhbsOnYWRhLiBQb2RlIHNlciB1dGlsaXphZG8gZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYGNvbHVtbnNgLlxuICAgKiBQb2RlIHNlciBzZXIgaW5mb3JtYWRhIHVtYSBVUkwgb3UgdW1hIGluc3RhbmNpYSBkbyBzZXJ2acOnbyBiYXNlYWRvIGVtIFBvTG9va3VwRmlsdGVyLlxuICAgKiAqKkltcG9ydGFudGU6KipcbiAgICogPiBDYXNvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYG9wdGlvbnNTZXJ2aWNlYCBlc3RhIHByb3ByaWVkYWRlIHNlcsOhIGlnbm9yYWRhLlxuICAgKiA+IFBhcmEgcXVlIGZ1bmNpb25lIGNvcnJldGFtZW50ZSwgw6kgaW1wb3J0YW50ZSBxdWUgbyBzZXJ2acOnbyBzaWdhIG9cbiAgICogW2d1aWEgZGUgQVBJIGRvIFBPIFVJXShodHRwczovL3BvLXVpLmlvL2d1aWRlcy9hcGkpLlxuICAgKi9cbiAgc2VhcmNoU2VydmljZT86IHN0cmluZyB8IFBvTG9va3VwRmlsdGVyO1xuXG4gIC8qKlxuICAgKiBNw6FzY2FyYSBwYXJhIG8gY2FtcG8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAuXG4gICAqID4gdGFtYsOpbSDDqSBhdHJpYnXDrWRvIGFvIHV0aWxpemFyIGEgcHJvcHJpZWRhZGUgYHR5cGU6IHRpbWVgLlxuICAgKi9cbiAgbWFzaz86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIHF1ZSBvIHZhbG9yIGRvIGNvbXBvbmVudGUgc2Vyw6EgY29uZm9ybWUgZXNwZWNpZmljYWRvIG5hIG1hc2PDoXJhLiBPIHZhbG9yIHBhZHLDo28gw6kgYGZhbHNlYC5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWlucHV0YC5cbiAgICogPiB0YW1iw6ltIMOpIGF0cmlidcOtZG8gYW8gdXRpbGl6YXIgYSBwcm9wcmllZGFkZSBgdHlwZTogdGltZWAuXG4gICAqICovXG4gIG1hc2tGb3JtYXRNb2RlbD86IGJvb2xlYW47XG5cbiAgLyoqIERlZmluZSBvIMOtY29uZSBxdWUgc2Vyw6EgZXhpYmlkbyBubyBpbsOtY2lvIGRvIGNhbXBvLlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkbyBub3MgY2FtcG9zOlxuICAgKiAtIElucHV0O1xuICAgKiAtIE51bWJlcjtcbiAgICogLSBEZWNpbWFsO1xuICAgKiAtIENvbWJvO1xuICAgKiAtIFBhc3N3b3JkO1xuICAgKlxuICAgKiA+IFZlamEgYSBkaXNwb25pYmlsaWRhZGUgZGUgw61jb25lcyBlbSBbYmlibGlvdGVjYSBkZSDDrWNvbmVzXShndWlkZXMvaWNvbnMpLlxuICAgKi9cbiAgaWNvbj86IHN0cmluZyB8IFRlbXBsYXRlUmVmPHZvaWQ+O1xuXG4gIC8qKiAgUXVhbnRpZGFkZSBtw6F4aW1hIGRlIGNhc2FzIGRlY2ltYWlzLlxuICAgKlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkYSBxdWFuZG8gbyBgdHlwZWAgZm9yICpjdXJyZW5jeSogb3UgKmRlY2ltYWwqLlxuICAgKi9cbiAgZGVjaW1hbHNMZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqIFF1YW50aWRhZGUgbcOheGltYSBkZSBkw61naXRvcyBhbnRlcyBkbyBzZXBhcmFkb3IgZGVjaW1hbC4gTyB2YWxvciBtw6F4aW1vIHBlcm1pdGlkbyDDqSAxM1xuICAgKlxuICAgKiA+IEVzdGEgcHJvcHJpZWRhZGUgc8OzIHBvZGUgc2VyIHV0aWxpemFkYSBxdWFuZG8gbyBgdHlwZWAgZm9yICpjdXJyZW5jeSogb3UgKmRlY2ltYWwqLlxuICAgKi9cbiAgdGhvdXNhbmRNYXhsZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFJlZ2V4IHBhcmEgdmFsaWRhw6fDo28gZG8gY2FtcG8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1pbnB1dGAsIGBwby1wYXNzd29yZGAuXG4gICAqICovXG4gIHBhdHRlcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhbWFuaG8gbcOtbmltbyBkZSBjYXJhY3RlcmVzLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgLlxuICAgKiAqL1xuICBtaW5MZW5ndGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRhbWFuaG8gbcOheGltbyBkZSBjYXJhY3RlcmVzLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgLlxuICAgKi9cbiAgbWF4TGVuZ3RoPzogbnVtYmVyO1xuXG4gIC8qKiBEZXNhYmlsaXRhIG8gY2FtcG8gY2FzbyBpbmZvcm1hciBvIHZhbG9yICp0cnVlKi4gKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKiBUZXh0byBkZSBhanVkYS4gKi9cbiAgaGVscD86IHN0cmluZztcblxuICAvKiogVGV4dG8gZXhpYmlkbyBxdWFuZG8gbyB2YWxvciBkbyBjb21wb25lbnRlIGZvciAqdHJ1ZSouICovXG4gIGJvb2xlYW5UcnVlPzogc3RyaW5nO1xuXG4gIC8qKiBUZXh0byBleGliaWRvIHF1YW5kbyBvIHZhbG9yIGRvIGNvbXBvbmVudGUgZm9yICpmYWxzZSouICovXG4gIGJvb2xlYW5GYWxzZT86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kaWNhIHNlIG8gYG1vZGVsYCByZWNlYmVyw6EgbyB2YWxvciBmb3JtYXRhZG8gcGVsYXMgcHJvcHJpZWRhZGVzIGBwLWxhYmVsLW9uYCBlIGBwLWxhYmVsLW9mZmAgb3VcbiAgICogYXBlbmFzIG8gdmFsb3IgcHVybyAoc2VtIGZvcm1hdGHDp8OjbykuXG4gICAqXG4gICAqIE8gdmFsb3IgcGFkcsOjbyDDqTogYGZhbHNlYC5cbiAgICpcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGVzdMOhIGRpc3Bvbml2ZWwgIGFwZW5hcyBwYXJhIG8gYHN3aWN0aGAuXG4gICAqL1xuICBmb3JtYXRNb2RlbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFZhbG9yIG3DoXhpbW8gYSBzZXIgaW5mb3JtYWRvIG5vIGNvbXBvbmVudGUsIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBxdWFuZG8gbyB0aXBvIGRlIGRhZG8gcG9yICpudW1iZXIqLCAqZGF0ZSogb3UgKmRhdGVUaW1lKi5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGBcbiAgICogKi9cbiAgbWF4VmFsdWU/OiBzdHJpbmcgfCBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFZhbG9yIG3DrW5pbW8gYSBzZXIgaW5mb3JtYWRvIG5vIGNvbXBvbmVudGUsIHBvZGVuZG8gc2VyIHV0aWxpemFkbyBxdWFuZG8gbyB0aXBvIGRlIGRhZG8gcG9yICpudW1iZXIqLCAqZGF0ZSogb3UgKmRhdGVUaW1lKi5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGBcbiAgICovXG4gIG1pblZhbHVlPzogc3RyaW5nIHwgbnVtYmVyO1xuXG4gIC8qKiBRdWFudGlkYWRlIGRlIGxpbmhhcyBleGliaWRhcyBubyBgcG8tdGV4dGFyZWFgLiAqL1xuICByb3dzPzogbnVtYmVyO1xuXG4gIC8qKiBFc2NvbmRlIGEgaW5mb3JtYcOnw6NvIGVzdGlsbyAqcGFzc3dvcmQqLCBwb2RlIHNlciB1dGlsaXphZG8gcXVhbmRvIG8gdGlwbyBkZSBkYWRvIGZvciAqc3RyaW5nKi4gKi9cbiAgc2VjcmV0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRnVuw6fDo28gb3Ugc2VydmnDp28gcGFyYSB2YWxpZGFyIGFzICoqbXVkYW7Dp2FzIGRvIGNhbXBvKiouXG4gICAqXG4gICAqICogQSBwcm9wcmllZGFkZSBhY2VpdGEgb3Mgc2VndWludGVzIHRpcG9zOlxuICAgKiAtICoqU3RyaW5nKio6IEVuZHBvaW50IHVzYWRvIHBlbG8gY29tcG9uZW50ZSBwYXJhIHJlcXVpc2nDp8OjbyB2aWEgYFBPU1RgLlxuICAgKiAtICoqRnVuY3Rpb24qKjogTcOpdG9kbyBxdWUgc2Vyw6EgZXhlY3V0YWRvLlxuICAgKlxuICAgKiBBbyBzZXIgZXhlY3V0YWRvLCBpcsOhIHJlY2ViZXIgY29tbyBwYXLDom1ldHJvIHVtIG9iamV0byBjb20gbyBub21lIGRhIHByb3ByaWVkYWRlXG4gICAqIGFsdGVyYWRhIGUgbyBub3ZvIHZhbG9yLCBjb25mb3JtZSBhIGludGVyZmFjZSBgUG9EeW5hbWljRm9ybUZpZWxkQ2hhbmdlZGA6XG4gICAqXG4gICAqIGBgXG4gICAqIHsgcHJvcGVydHk6ICdwcm9wZXJ0eSBuYW1lJywgdmFsdWU6ICduZXcgdmFsdWUnIH1cbiAgICogYGBcbiAgICpcbiAgICogTyByZXRvcm5vIGRlc3RhIGZ1bsOnw6NvIGRldmUgc2VyIGRvIHRpcG8gW1BvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb25dKGRvY3VtZW50YXRpb24vcG8tZHluYW1pYy1mb3JtI3BvLWR5bmFtaWMtZm9ybS1maWVsZC12YWxpZGF0aW9uKSxcbiAgICogb25kZSBvIHVzdcOhcmlvIHBvZGVyw6EgZGV0ZXJtaW5hciBhcyBub3ZhcyBwcm9wcmllZGFkZXMgZG8gY2FtcG8uXG4gICAqIFBvciBleGVtcGxvOlxuICAgKlxuICAgKiBgYFxuICAgKiBvbkNoYW5nZUZpZWxkKGNoYW5nZVZhbHVlKTogUG9EeW5hbWljRm9ybUZpZWxkVmFsaWRhdGlvbiB7XG4gICAqXG4gICAqIGlmIChjaGFuZ2VWYWx1ZS5wcm9wZXJ0eSA9PT0gJ2JpcnRoZGF5JyAmJiAhdGhpcy52YWxpZGF0ZSgnYmlydGhkYXknKSkge1xuICAgKiAgIHJldHVybiB7XG4gICAqICAgICB2YWx1ZTogJycsXG4gICAqICAgICBmaWVsZDogeyBwcm9wZXJ0eTogJ2JpcnRoZGF5JywgcmVxdWlyZWQ6IHRydWUgfSxcbiAgICogICAgIGZvY3VzOiB0cnVlXG4gICAqICAgfTtcbiAgICogfVxuICAgKiBgYFxuICAgKlxuICAgKiBQYXJhIHJlZmVyZW5jaWFyIGEgc3VhIGZ1bsOnw6NvIHV0aWxpemUgYSBwcm9wcmllZGFkZSBgYmluZGAsIHBvciBleGVtcGxvOlxuICAgKiBgYFxuICAgKiB7IHByb3BlcnR5OiAnc3RhdGUnLCBncmlkQ29sdW1uczogNiwgdmFsaWRhdGU6IHRoaXMubXlGdW5jdGlvbi5iaW5kKHRoaXMpIH1cbiAgICogYGBcbiAgICovXG4gIHZhbGlkYXRlPzogc3RyaW5nIHwgRnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIE9iamV0byBxdWUgc2Vyw6EgZW52aWFkbyBjb21vIHBhcsOibWV0cm8gbmFzIHJlcXVpc2nDp8O1ZXMgZGUgYnVzY2EgdXNhZG9zIHBlbG9zIGNvbXBvbmVudGVzIGBwby1sb29rdXBgIGVcbiAgICogYHBvLWNvbWJvYC5cbiAgICpcbiAgICogUG9yIGV4ZW1wbG8sIHBhcmEgbyBwYXLDom1ldHJvIGB7IGFnZTogMjMgfWAgYSBVUkwgZGEgcmVxdWlzacOnw6NvIGZpY2FyaWE6XG4gICAqXG4gICAqIGBgXG4gICAqIHVybCArID9hZ2U9MjMmZmlsdGVyPVBldGVyXG4gICAqIGBgXG4gICAqL1xuICBwYXJhbXM/OiBhbnk7XG5cbiAgLyoqXG4gICAqIE1lbnNhZ2VtIHF1ZSBzZXLDoSBhcHJlc2VudGFkYSBxdWFuZG8gbyBjYW1wbyBmaWNhciBpbnbDoWxpZG8uXG4gICAqXG4gICAqIE8gY2FtcG8gZmljYSBpbnbDoWxpZG8gcXVhbmRvIGFzIHNlZ3VpbnRlcyBwcm9wcmllZGFkZXMgbsOjbyBmb3JlbSByZXNwZWl0YWRhczpcbiAgICogIC0gcGF0dGVybjtcbiAgICogIC0gbWluVmFsdWU7XG4gICAqICAtIG1heFZhbHVlO1xuICAgKlxuICAgKiA+IEVzdGEgbWVuc2FnZW0gbsOjbyDDqSBhcHJlc2VudGFkYSBxdWFuZG8gbyBjYW1wbyBlc3RpdmVyIHZhemlvLCBtZXNtbyBxdWUgZWxlIHNlamEgcmVxdWVyaWRvLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tZGF0ZXBpY2tlcmAsIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby1wYXNzd29yZGAuXG4gICAqL1xuICBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZvcm1hdG8gZGUgZXhpYmnDp8OjbyBubyBjYW1wby5cbiAgICpcbiAgICogQW8gdXRpbGl6YXIgZXN0YSBwcm9wcmllZGFkZSBjb20gbyBgdHlwZWAgKlBvRHluYW1pY0ZpZWxkVHlwZS5EYXRlKiBvdSAqUG9EeW5hbWljRmllbGRUeXBlLkRhdGVUaW1lKixcbiAgICogcG9kZSBzZXIgdXRpbGl6YWRhIHBhcmEgZm9ybWF0YcOnw6NvIGRlIGV4aWJpw6fDo28gZGEgZGF0YTpcbiAgICpcbiAgICogVmFsb3JlcyB2w6FsaWRvczpcbiAgICpcbiAgICogLSBkZC9tbS95eXl5XG4gICAqIC0gbW0vZGQveXl5eVxuICAgKiAtIHl5eXkvbW0vZGRcbiAgICpcbiAgICpcbiAgICogVGFtYsOpbSBwb2RlLXNlIHV0aWxpemFyIGVtIGNvbmp1bnRvIGNvbSBgc2VhcmNoU2VydmljZWAsIGluZm9ybWFuZG8gdW1hIGxpc3RhIGRlIHByb3ByaWVkYWRlcyBxdWUgc2Vyw6EgdXRpbGl6YWRvXG4gICAqIHBhcmEgZm9ybWF0YcOnw6NvIGRhIGV4aWJpw6fDo28gbm8gY2FtcG8sIHBvciBleGVtcGxvOiBbXCJpZFwiLCBcIm5hbWVcIl0uXG4gICAqL1xuICBmb3JtYXQ/OiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byByZXRvcm5hZG8gcXVlIHNlcsOhIHV0aWxpemFkbyBjb21vIGRlc2NyacOnw6NvIGRvIGNhbXBvLlxuICAgKlxuICAgKiBPIHZhbG9yIHBhZHLDo28gw6k6IGBsYWJlbGAuXG4gICAqXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBwb2RlIHNlciB1dGlsaXphZGEgZW0gY29uanVudG8gY29tOiBgb3B0aW9uc2AsIGBvcHRpb25zU2VydmljZWAgZSBgc2VhcmNoU2VydmljZWAuXG4gICAqL1xuICBmaWVsZExhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOb21lIGRhIHByb3ByaWVkYWRlIGRvIG9iamV0byByZXRvcm5hZG8gcXVlIHNlcsOhIHV0aWxpemFkbyBjb21vIHZhbG9yIGRvIGNhbXBvLlxuICAgKlxuICAgKiBPIHZhbG9yIHBhZHLDo28gw6k6IGB2YWx1ZWAuXG4gICAqXG4gICAqID4gRXN0YSBwcm9wcmllZGFkZSBwb2RlIHNlciB1dGlsaXphZGEgZW0gY29uanVudG8gY29tOiBgb3B0aW9uc2AsIGBvcHRpb25zU2VydmljZWAgZSBgc2VhcmNoU2VydmljZWAuXG4gICAqL1xuICBmaWVsZFZhbHVlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJbmZvcm1hIGEgb3JkZW0gZGUgZXhpYmnDp8OjbyBkbyBjYW1wby5cbiAgICpcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo286XG4gICAqXG4gICAqIGBgXG4gICAqIFtcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAxJywgb3JkZXI6IDIgfSxcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAyJywgb3JkZXI6IDEgfSxcbiAgICogICB7IHByb3BlcnR5OiAndGVzdCAzJyB9LFxuICAgKiAgIHsgcHJvcGVydHk6ICd0ZXN0IDQnLCBvcmRlcjogMyB9XG4gICAqIF07XG4gICAqIGBgXG4gICAqXG4gICAqIE5hIGV4aWJpw6fDo28gYSBvcmRlbSBmaWNhcsOhIGRlc3NhIGZvcm1hOlxuICAgKiBgYFxuICAgKiBbXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMicsIG9yZGVyOiAxIH0sXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMScsIG9yZGVyOiAyIH0sXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgNCcsIG9yZGVyOiAzIH0sXG4gICAqICAgeyBwcm9wZXJ0eTogJ3Rlc3QgMycgfVxuICAgKiBdO1xuICAgKiBgYFxuICAgKlxuICAgKiBTw7Mgc2Vyw6NvIGFjZWl0b3MgdmFsb3JlcyBjb20gbsO6bWVyb3MgaW50ZWlyb3MgbWFpb3JlcyBkbyBxdWUgemVyby5cbiAgICpcbiAgICogQ2FtcG9zIHNlbSBgb3JkZXJgIG91IGNvbSB2YWxvcmVzIG5lZ2F0aXZvcywgemVyYWRvcyBvdSBpbnbDoWxpZG9zXG4gICAqIHNlcsOjbyBvcyDDumx0aW1vcyBhIHNlcmVtIHJlbmRlcml6YWRvcyBlIHNlZ3VpcsOjbyBvIHBvc2ljaW9uYW1lbnRvIGRlbnRybyBkb1xuICAgKiBhcnJheS5cbiAgICovXG4gIG9yZGVyPzogbnVtYmVyO1xuXG4gIC8qKiBNZW5zYWdlbSBxdWUgc2Vyw6EgZXhpYmlkYSBlbnF1YW50byBvIGNhbXBvIG7Do28gZXN0aXZlciBwcmVlbmNoaWRvLiAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIGEgbG9jYWxpZGFkZSBhIHNlciB1dGlsaXphZGEgbm8gY29tcG9uZW50ZS5cbiAgICogUG9yIHBhZHLDo28gbyB2YWxvciBzZXLDoSBjb25maWd1cmFkbyBzZWd1bmRvIGEgbyBtw7NkdWxvIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcbiAgICpcbiAgICogRXhlbXBsbyBkZSB1dGlsaXphw6fDo286XG4gICAqIGBgXG4gICAqIFtcbiAgICogICB7IHByb3BlcnR5OiAnYmlydGhkYXknLCBsb2NhbGU6ICdlbicsIHR5cGU6ICdkYXRlJyB9LFxuICAgKiAgIHsgcHJvcGVydHk6ICd3YWdlJywgbG9jYWxlOiAncnUnLCB0eXBlOiAnY3VycmVuY3knIH1cbiAgICogXTtcbiAgICogYGBcbiAgICpcbiAgICogPiBQYXJhIHZlciBxdWFpcyBsaW5ndWFnZW5zIHN1cG9ydGFkYXMgYWNlc3NlIFtgSTE4bmBdKGRvY3VtZW50YXRpb24vcG8taTE4bilcbiAgICogPiBBIHByb3ByaWVkYWRlIHNlcsOhIHJlcGFzc2FkYSBwYXJhIG9zIGNvbXBvbmVudGVzIHF1ZSBzdXBvcnRhbSBhIG1lc21hLlxuICAgKi9cbiAgbG9jYWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPIGNvbnRyb2xlIHBhc3NhIGEgcGVybWl0aXIgYSBlbnRyYWRhIGRlIHVtIGludGVydmFsbyBhbyBpbnbDqXMgZGUgdW0gw7puaWNvIHZhbG9yLlxuICAgKlxuICAgKiA+IEF0dWFsbWVudGUgZXNzYSBwcm9wcmllZGFkZSBlc3TDoSBkaXNwb27DrXZlbCBhcGVuYXMgcGFyYSBvIHRpcG8gJ2RhdGUnIGUgJ2RhdGVUaW1lJy5cbiAgICovXG4gIHJhbmdlPzogYm9vbGVhbjtcblxuICAvKiogSW5kaWNhIHF1ZSBvIGNhbXBvIHNlcsOhIHNvbWVudGUgbGVpdHVyYS5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWRhdGVwaWNrZXJgLCBgcG8tZGF0ZXBpY2tlci1yYW5nZWAsIGBwby1pbnB1dGAsIGBwby1udW1iZXJgLCBgcG8tZGVjaW1hbGAsIGBwby1zZWxlY3RgLCBgcG8tdGV4dGFyZWFgLCBgcG8tcGFzc3dvcmRgXG4gICAqL1xuICByZWFkb25seT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgYSBzZWxlw6fDo28gZGUgbcO6bHRpcGxvcyBpdGVucy5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsOioqIGBwby1sb29rdXBgLCBgcG8tdXBsb2FkYFxuICAgKi9cbiAgbXVsdGlwbGU/OiBib29sZWFuO1xuXG4gIC8qKiBTZSB2ZXJkYWRlaXJvLCBvIGNhbXBvIHJlY2ViZXLDoSB1bSBib3TDo28gcGFyYSBzZXIgbGltcG8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLCBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tY29tYm9gLCBgcG8tbG9va3VwYCwgYHBvLXBhc3N3b3JkYFxuICAgKi9cbiAgY2xlYW4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgYSBwcm9wcmllZGFkZSBuYXRpdmEgYGF1dG9jb21wbGV0ZWAgZG8gY2FtcG8gY29tbyBvZmYuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzOioqIGBwby1kYXRlcGlja2VyYCwgYHBvLWRhdGVwaWNrZXItcmFuZ2VgLCBgcG8taW5wdXRgLCBgcG8tbnVtYmVyYCwgYHBvLWRlY2ltYWxgLCBgcG8tbG9va3VwYCwgYHBvLXBhc3N3b3JkYFxuICAgKi9cbiAgbm9BdXRvY29tcGxldGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQb3Npw6fDo28gZGUgZXhpYmnDp8OjbyBkbyByw7N0dWxvIGRvIFBvU3dpdGNoLlxuICAgKiA+IFBvciBwYWRyw6NvIGV4aWJlIMOgIGRpcmVpdGEuXG4gICAqL1xuICBsYWJlbFBvc2l0aW9uPzogUG9Td2l0Y2hMYWJlbFBvc2l0aW9uO1xuXG4gIC8qKlxuICAgKiBQZXJtaXRlIGVzY29uZGVyIGEgZnVuw6fDo28gZGUgZXNwaWFyIGEgc2VuaGEgZGlnaXRhZGEgbm8gYHBvLXBhc3N3b3JkYC5cbiAgICovXG4gIGhpZGVQYXNzd29yZFBlZWs/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQYWRyw6NvIGRlIGZvcm1hdGHDp8OjbyBwYXJhIHNhw61kYSBkbyBtb2RlbCwgaW5kZXBlbmRlbnRlbWVudGUgZG8gZm9ybWF0byBkZSBlbnRyYWRhLlxuICAgKlxuICAgKiA+IFZlamEgb3MgdmFsb3JlcyB2w6FsaWRvcyBubyBgZW51bVBvRGF0ZXBpY2tlcklzb0Zvcm1hdGAuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbDoqKiBwby1kYXRlcGlja2VyXG4gICAqL1xuICBpc29Gb3JtYXQ/OiBQb0RhdGVwaWNrZXJJc29Gb3JtYXQ7XG5cbiAgLyoqXG4gICAqIE9iamV0byBjb20gYXMgbGl0ZXJhaXMgdXNhZGFzIHBhcmEgb3Mgc2VndWludGVzIGNvbXBvbmVudGVzOiBgcG8tbG9va3VwYCwgYHBvLW11bHRpc2VsZWN0YCwgYHBvLWNvbWJvYCBlIGBwby1kYXRlcGlja2VyLXJhbmdlYC5cbiAgICpcbiAgICogPiBPIG9iamV0byBwYWRyw6NvIGRlIGxpdGVyYWlzIHNlcsOhIHRyYWR1emlkbyBkZSBhY29yZG8gY29tIG8gaWRpb21hIGRvIFBvSTE4blNlcnZpY2Ugb3UgZG8gYnJvd3Nlci5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWxvb2t1cGAsIGBwby1tdWx0aXNlbGVjdGAsIGBwby1jb21ib2AsIGBwby1kYXRlcGlja2VyLXJhbmdlYFxuICAgKi9cbiAgbGl0ZXJhbHM/OiBQb0xvb2t1cExpdGVyYWxzIHwgUG9NdWx0aXNlbGVjdExpdGVyYWxzIHwgUG9Db21ib0xpdGVyYWxzIHwgUG9EYXRlcGlja2VyUmFuZ2VMaXRlcmFscyB8IFBvVXBsb2FkTGl0ZXJhbHM7XG5cbiAgLyoqXG4gICAqIFNlIHZlcmRhZGVpcm8gYXRpdmEgYSBmdW5jaW9uYWxpZGFkZSBkZSBzY3JvbGwgaW5maW5pdG8gcGFyYSBvIGNvbWJvIG91IGxvb2t1cCwgYW8gY2hlZ2FyIGFvIGZpbSBkYSB0YWJlbGEgZXhlY3V0YXLDoSBub3ZhIGJ1c2NhIGRvcyBkYWRvcyBjb25mb3JtZSBwYWdpbmHDp8Ojby5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgYHBvLWxvb2t1cGAuXG4gICAqL1xuICBpbmZpbml0ZVNjcm9sbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERlZmluZSBvIHBlcmNlbnR1YWwgbmVjZXNzw6FyaW8gcGFyYSBkaXNwYXJhciBvIGV2ZW50byBzaG93LW1vcmUsIHF1ZSDDqSByZXNwb25zw6F2ZWwgcG9yIGNhcnJlZ2FyIG1haXMgZGFkb3Mgbm8gY29tYm8uIENhc28gbyB2YWxvciBzZWphIG1haW9yIHF1ZSAxMDAgb3UgbWVub3IgcXVlIDAsIG8gdmFsb3IgcGFkcsOjbyBzZXLDoSAxMDAlLlxuICAgKiAqKkV4ZW1wbG9zKipcbiAgICogYHsgaW5maW5pdGVTY3JvbGxEaXN0YW5jZTogODAgfWA6IFF1YW5kbyBhdGluZ2lyIDgwJSBkbyBzY3JvbGwgZG8gY29tYm8sIG8gc2hvdy1tb3JlIHNlcsOhIGRpc3BhcmFkby5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsOioqIGBwby1jb21ib2AuXG4gICAqL1xuICBpbmZpbml0ZVNjcm9sbERpc3RhbmNlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgcXVlIGEgYWx0dXJhIGRvIGNvbXBvbmVudGUgc2Vyw6EgYXV0byBhanVzdMOhdmVsLCBwb3NzdWluZG8gdW1hIGFsdHVyYSBtaW5pbWEgcG9yw6ltIGEgYWx0dXJhIG3DoXhpbWEgc2Vyw6EgZGUgYWNvcmRvIGNvbSBvIG7Dum1lcm8gZGUgaXRlbnMgc2VsZWNpb25hZG9zIGUgYSBleHRlbnPDo28gZG9zIG1lc21vcywgbWFudGVuZG8tb3Mgc2VtcHJlIHZpc8OtdmVpcy5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLW11bHRpc2VsZWN0YCwgYHBvLWxvb2t1cGAuXG4gICAqL1xuICBhdXRvSGVpZ2h0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSW50ZXJ2YWxvIHV0aWxpemFkbyBubyBgcG8tbnVtYmVyYC5cbiAgICovXG4gIHN0ZXA/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERlZmluZSBvIG1vZG8gZGUgcGVzcXVpc2EgdXRpbGl6YWRvIG5vIGZpbHRybyBkYSBsaXN0YSBkZSBzZWxlw6fDo286IGBzdGFydHNXaXRoYCwgYGNvbnRhaW5zYCBvdSBgZW5kc1dpdGhgLlxuICAgKiA+IFF1YW5kbyB1dGlsaXphciBhIHByb3ByaWVkYWRlIHAtZmlsdGVyLXNlcnZpY2UgZXN0YSBwcm9wcmllZGFkZSBzZXLDoSBpZ25vcmFkYS5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLW11bHRpc2VsZWN0YC5cbiAgICovXG4gIGZpbHRlck1vZGU/OiBQb011bHRpc2VsZWN0RmlsdGVyTW9kZTtcblxuICAvKipcbiAgICogVmFsb3IgbcOtbmltbyBkZSBjYXJhY3RlcmVzIHBhcmEgcmVhbGl6YXIgbyBmaWx0cm8gbm8gc2VydmnDp28gZG8gYHBvLWNvbWJvYC5cbiAgICovXG4gIGZpbHRlck1pbmxlbmd0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogRGVzYWJpbGl0YSBvIGZpbHRybyBpbmljaWFsIG5vIHNlcnZpw6dvIGRvIGBwby1jb21ib2AsIHF1ZSDDqSBleGVjdXRhZG8gbm8gcHJpbWVpcm8gY2xpcXVlIG5vIGNhbXBvLlxuICAgKi9cbiAgZGlzYWJsZWRJbml0RmlsdGVyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2UgdmVyZGFkZWlybywgZGVzYWJpbGl0YXLDoSBhIGJ1c2NhIGRlIHVtIGl0ZW0gdmlhIFRBQiBubyBgcG8tY29tYm9gLlxuICAgKi9cbiAgZGlzYWJsZWRUYWJGaWx0ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFc3RhIHByb3ByaWVkYWRlIGRlZmluZSBlbSBxdWFudG8gdGVtcG8gKGVtIG1pbGlzc2VndW5kb3MpLCBhZ3VhcmRhIHBhcmEgYWNpb25hciBvIGV2ZW50byBkZSBmaWx0cm8gYXDDs3MgY2FkYSBwcmVzc2lvbmFtZW50byBkZSB0ZWNsYS4gU2Vyw6EgdXRpbGl6YWRhIGFwZW5hcyBxdWFuZG8gaG91dmVyIHNlcnZpw6dvIChgcC1maWx0ZXItc2VydmljZWApLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpczoqKiBgcG8tY29tYm9gLCBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKi9cbiAgZGVib3VuY2VUaW1lPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBJbmRpY2EgcXVlIG8gZXZlbnRvIGBwLWNoYW5nZWAgc8OzIHNlcsOhIGRpc3BhcmFkbyBhbyBjbGljYXIgb3UgcHJlc3Npb25hciBhIHRlY2xhIFwiRW50ZXJcIiBzb2JyZSB1bWEgb3DDp8OjbyBzZWxlY2lvbmFkYSBubyBgcG8tY29tYm9gLlxuICAgKi9cbiAgY2hhbmdlT25FbnRlcj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEluZGljYSBxdWUgYSBsaXN0YSBkZWZpbmlkYSBuYSBwcm9wcmllZGFkZSBwLW9wdGlvbnMgc2Vyw6Egb3JkZW5hZGEgcGVsYSBkZXNjcmnDp8Ojby5cbiAgICpcbiAgICogKipDb21wb25lbnRlcyBjb21wYXTDrXZlaXM6KiogYHBvLWNvbWJvYCwgcG8tbXVsdGlzZWxlY3RcbiAgICovXG4gIHNvcnQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQbGFjZWhvbGRlciBkbyBjYW1wbyBkZSBwZXNxdWlzYSBkbyBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKlxuICAgKiA+IENhc28gbyBtZXNtbyBuw6NvIHNlamEgaW5mb3JtYWRvLCBvIHZhbG9yIHBhZHLDo28gc2Vyw6EgdHJhZHV6aWRvIGNvbSBiYXNlIG5vIGlkaW9tYSBkbyBuYXZlZ2Fkb3IgKHB0LCBlcyBlIGVuKS5cbiAgICovXG4gIHBsYWNlaG9sZGVyU2VhcmNoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBFc2NvbmRlIG8gY2FtcG8gZGUgcGVzcXVpc2EgZXhpc3RlbnRlIGRlbnRybyBkbyBkcm9wZG93biBkbyBgcG8tbXVsdGlzZWxlY3RgLlxuICAgKi9cbiAgaGlkZVNlYXJjaD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEluZGljYSBzZSBvIGNhbXBvIFwiU2VsZWNpb25hciB0b2Rvc1wiIGRvIGBwby1tdWx0aXNlbGVjdGAgc2Vyw6EgZXNjb25kaWRvLlxuICAgKi9cbiAgaGlkZVNlbGVjdEFsbD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIExpc3RhIGRlIG9iamV0b3MgZG9zIGNhbXBvcyBxdWUgc2Vyw6NvIGNyaWFkb3MgbmEgYnVzY2EgYXZhbsOnYWRhLlxuICAgKlxuICAgKiA+IENhc28gbsOjbyBzZWphIHBhc3NhZG8gdW0gb2JqZXRvIG91IGVudMOjbyBlbGUgZXN0ZWphIGVtIGJyYW5jbyBvIGxpbmsgZGUgYnVzY2EgYXZhbsOnYWRhIGZpY2Fyw6EgZXNjb25kaWRvLlxuICAgKlxuICAgKiBFeGVtcGxvIGRlIFVSTCBjb20gYnVzY2EgYXZhbsOnYWRhOlxuICAgKlxuICAgKiBgdXJsICsgP3BhZ2U9MSZwYWdlU2l6ZT0yMCZuYW1lPVRvbnklMjBTdGFyayZuaWNrbmFtZT1Ib21lbSUyMGRlJTIwRmVycm9gXG4gICAqXG4gICAqIENhc28gYWxndW0gcGFyw6JtZXRybyBzZWphIHVtYSBsaXN0YSwgYSBjb25jYXRlbmHDp8OjbyDDqSBmZWl0YSB1dGlsaXphbmRvIHbDrXJndWxhLiBFeGVtcGxvOlxuICAgKlxuICAgKiBgdXJsICsgP3BhZ2U9MSZwYWdlU2l6ZT0yMCZuYW1lPVRvbnklMjBTdGFyayxQZXRlciUyMFBhcmtlcixHb2hhbmBcbiAgICovXG4gIGFkdmFuY2VkRmlsdGVycz86IEFycmF5PFBvTG9va3VwQWR2YW5jZWRGaWx0ZXI+O1xuICAvKipcbiAgICogcG9kZSBzZXIgdXRpbGl6YWRhIGVtIGNvbmp1bnRvIGNvbSBhIHByb3ByaWVkYWRlIGBvcHRpb25zYCBmb3LDp2FuZG8gbyBjb21wb25lbnRlIGEgcmVuZGVyaXphciB1bSBgcG8tc2VsZWN0YCBvdSBgcG8tcmFkaW8tZ3JvdXBgLlxuICAgKlxuICAgKiBWYWxvcmVzIGFjZWl0b3M6XG4gICAqIC0gRm9yY2VPcHRpb25Db21wb25lbnRFbnVtLnJhZGlvR3JvdXBcbiAgICogLSBGb3JjZU9wdGlvbkNvbXBvbmVudEVudW0uc2VsZWN0XG4gICAqXG4gICAqID5Fc3NhIHByb3ByaWVkYWRlIHNlcsOhIGlnbm9yYWRhIGNhc28gc2VqYSB1dGlsaXphZGEgZW0gY29uanVudG8gY29tIGEgcHJvcHJpZWRhZGUgYG9wdGlvbnNNdWx0aWAgZSBgb3B0aW9uc1NlcnZpY2VgLlxuICAgKi9cbiAgZm9yY2VPcHRpb25zQ29tcG9uZW50VHlwZT86IEZvcmNlT3B0aW9uQ29tcG9uZW50RW51bTtcblxuICAvKipcbiAgICogRXZlbnRvIGRpc3BhcmFkbyBhbyBmZWNoYXIgbyBwb3BvdmVyIGRvIGdlcmVuY2lhZG9yIGRlIGNvbHVuYXMgYXDDs3MgYWx0ZXJhciBhcyBjb2x1bmFzIHZpc8OtdmVpcy5cbiAgICpcbiAgICogTyBjb21wb25lbnRlIGVudmlhIGNvbW8gcGFyw6JtZXRybyB1bSBhcnJheSBkZSBzdHJpbmcgY29tIGFzIGNvbHVuYXMgdmlzw612ZWlzIGF0dWFsaXphZGFzLlxuICAgKiBQb3IgZXhlbXBsbzogW1wiaWRDYXJkXCIsIFwibmFtZVwiLCBcImhpcmVTdGF0dXNcIiwgXCJhZ2VcIl0uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZXMgY29tcGF0w612ZWlzKio6IGBwby1sb29rdXBgXG4gICAqL1xuICBjaGFuZ2VWaXNpYmxlQ29sdW1ucz86IEZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBFdmVudG8gZGlzcGFyYWRvIGFvIGNsaWNhciBubyBib3TDo28gZGUgcmVzdGF1cmFyIHBhZHLDo28gbm8gZ2VyZW5jaWFkb3IgZGUgY29sdW5hcy5cbiAgICpcbiAgICogTyBjb21wb25lbnRlIGVudmlhIGNvbW8gcGFyw6JtZXRybyB1bSBhcnJheSBkZSBzdHJpbmcgY29tIGFzIGNvbHVuYXMgY29uZmlndXJhZGFzIGluaWNpYWxtZW50ZS5cbiAgICogUG9yIGV4ZW1wbG86IFtcImlkQ2FyZFwiLCBcIm5hbWVcIiwgXCJoaXJlU3RhdHVzXCIsIFwiYWdlXCJdLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGVzIGNvbXBhdMOtdmVpcyoqOiBgcG8tbG9va3VwYFxuICAgKi9cbiAgY29sdW1uUmVzdG9yZU1hbmFnZXI/OiBGdW5jdGlvbjtcblxuICAvKipcbiAgICogVVJMIHF1ZSBkZXZlIHNlciBmZWl0YSBhIHJlcXVpc2nDp8OjbyBjb20gb3MgYXJxdWl2b3Mgc2VsZWNpb25hZG9zLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIHVybD86IHN0cmluZztcblxuICAvKipcbiAgICogRGVmaW5lIHNlIG8gZW52aW8gZG8gYXJxdWl2byBzZXLDoSBhdXRvbcOhdGljbyBhbyBzZWxlY2lvbmFyIG8gbWVzbW8uXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgYXV0b1VwbG9hZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFBlcm1pdGUgYSBzZWxlw6fDo28gZGUgZGlyZXTDs3Jpb3MgY29udGVuZG8gdW0gb3UgbWFpcyBhcnF1aXZvcyBwYXJhIGVudmlvLlxuICAgKlxuICAgKiA+IEEgaGFiaWxpdGHDp8OjbyBkZXN0YSBwcm9wcmllZGFkZSBzZSByZXN0cmluZ2UgYXBlbmFzIMOgIHNlbGXDp8OjbyBkZSBkaXJldMOzcmlvcy5cbiAgICpcbiAgICogPiBEZWZpbmnDp8OjbyBuw6NvIHN1cG9ydGFkYSBwZWxvIGJyb3dzZXIgKipJbnRlcm5ldCBFeHBsb3JlcioqLCB0b2RhdmlhIHNlcsOhIHBvc3PDrXZlbCBhIHNlbGXDp8OjbyBkZSBhcnF1aXZvcyBwYWRyw6NvLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIGRpcmVjdG9yeT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEV4aWJlIGEgw6FyZWEgb25kZSDDqSBwb3Nzw612ZWwgYXJyYXN0YXIgZSBzZWxlY2lvbmFyIG9zIGFycXVpdm9zLiBRdWFuZG8gZXN0aXZlciBkZWZpbmlkYSwgb21pdGUgbyBib3TDo28gcGFyYSBzZWxlw6fDo28gZGUgYXJxdWl2b3NcbiAgICogYXV0b21hdGljYW1lbnRlLlxuICAgKlxuICAgKiA+IFJlY29tZW5kYW1vcyB1dGlsaXphciBhcGVuYXMgdW0gYHBvLXVwbG9hZGAgY29tIGVzdGEgZnVuY2lvbmFsaWRhZGUgcG9yIHRlbGEuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgZHJhZ0Ryb3A/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBEZWZpbmUgZW0gKnBpeGVscyogYSBhbHR1cmEgZGEgw6FyZWEgb25kZSBwb2RlbSBzZXIgYXJyYXN0YWRvcyBvcyBhcnF1aXZvcy4gQSBhbHR1cmEgbcOtbmltYSBhY2VpdGEgw6kgYDE2MHB4YC5cbiAgICpcbiAgICogPiBFc3RhIHByb3ByaWVkYWRlIGZ1bmNpb25hIHNvbWVudGUgc2UgYSBwcm9wcmllZGFkZSBgcC1kcmFnLWRyb3BgIGVzdGl2ZXIgaGFiaWxpdGFkYS5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBkcmFnRHJvcEhlaWdodD86IG51bWJlcjtcblxuICAvKipcbiAgICogT2JqZXRvIHF1ZSBzZWd1ZSBhIGRlZmluacOnw6NvIGRhIGludGVyZmFjZSBgUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zYCxcbiAgICogcXVlIHBvc3NpYmlsaXRhIGRlZmluaXIgdGFtYW5obyBtw6F4aW1vL23DrW5pbW8gZSBleHRlbnPDo28gZG9zIGFycXVpdm9zIHBlcm1pdGlkb3MuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgcmVzdHJpY3Rpb25zPzogUG9VcGxvYWRGaWxlUmVzdHJpY3Rpb25zO1xuXG4gIC8qKlxuICAgKiBOb21lIGRvIGNhbXBvIGRlIGZvcm11bMOhcmlvIHF1ZSBzZXLDoSBlbnZpYWRvIHBhcmEgbyBzZXJ2acOnbyBpbmZvcm1hZG8gbmEgcHJvcHJpZWRhZGUgYHVybGAuXG4gICAqXG4gICAqID4gTyB2YWxvciBkZWZhdWx0IMOpIGBmaWxlc2BcbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBmb3JtRmllbGQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9iamV0byBxdWUgY29udMOpbSBvcyBjYWJlw6dhbGhvcyBxdWUgc2Vyw6EgZW52aWFkbyBuYSByZXF1aXNpw6fDo28gZG9zIGFycXVpdm9zLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIGhlYWRlcnM/OiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBBcnJheTxzdHJpbmc+IH07XG5cbiAgLyoqXG4gICAqIE9jdWx0YSB2aXN1YWxtZW50ZSBhcyBpbmZvcm1hw6fDtWVzIGRlIHJlc3RyacOnw7VlcyBwYXJhIG8gdXBsb2FkLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIGhpZGVSZXN0cmljdGlvbnNJbmZvPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT21pdGUgbyBib3TDo28gZGUgc2VsZcOnw6NvIGRlIGFycXVpdm9zLlxuICAgKlxuICAgKiA+IENhc28gbyB2YWxvciBkZWZpbmlkbyBzZWphIGB0cnVlYCwgY2FiZXLDoSBhbyBkZXNlbnZvbHZlZG9yIGEgcmVzcG9uc2FiaWxpZGFkZVxuICAgKiBwZWxhIGNoYW1hZGEgZG8gbcOpdG9kbyBgc2VsZWN0RmlsZXMoKWAgcGFyYSBzZWxlw6fDo28gZGUgYXJxdWl2b3MuXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgaGlkZVNlbGVjdEJ1dHRvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9taXRlIG8gYm90w6NvIGRlIGVudmlvIGRlIGFycXVpdm9zLlxuICAgKlxuICAgKiA+IENhc28gbyB2YWxvciBkZWZpbmlkbyBzZWphIGB0cnVlYCwgY2FiZXLDoSBhbyBkZXNlbnZvbHZlZG9yIGEgcmVzcG9uc2FiaWxpZGFkZVxuICAgKiBwZWxhIGNoYW1hZGEgZG8gbcOpdG9kbyBgc2VuZEZpbGVzKClgIHBhcmEgZW52aW8gZG8ocykgYXJxdWl2byhzKSBzZWxlY2lvbmFkbyhzKS5cbiAgICpcbiAgICogKipDb21wb25lbnRlIGNvbXBhdMOtdmVsKio6IGBwby11cGxvYWRgXG4gICAqL1xuICBoaWRlU2VuZEJ1dHRvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIERlZmluZSBzZSBhIGluZGljYcOnw6NvIGRlIGNhbXBvIG9icmlnYXTDs3JpbyBzZXLDoSBleGliaWRhLlxuICAgKlxuICAgKiA+IE7Do28gc2Vyw6EgZXhpYmlkYSBhIGluZGljYcOnw6NvIHNlOlxuICAgKiAtIE7Do28gcG9zc3VpciBgcC1oZWxwYCBlL291IGBwLWxhYmVsYC5cbiAgICovXG4gIHNob3dSZXF1aXJlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEV2ZW50byBzZXLDoSBkaXNwYXJhZG8gcXVhbmRvIG9jb3JyZXIgYWxndW0gZXJybyBubyBlbnZpbyBkbyBhcnF1aXZvLlxuICAgKiA+IFBvciBwYXLDom1ldHJvIHNlcsOhIHBhc3NhZG8gbyBvYmpldG8gZG8gcmV0b3JubyBxdWUgw6kgZG8gdGlwbyBgSHR0cEVycm9yUmVzcG9uc2VgLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIG9uRXJyb3I/OiBGdW5jdGlvbjtcblxuICAvKipcbiAgICogRXZlbnRvIHNlcsOhIGRpc3BhcmFkbyBxdWFuZG8gbyBlbnZpbyBkbyBhcnF1aXZvIGZvciByZWFsaXphZG8gY29tIHN1Y2Vzc28uXG4gICAqID4gUG9yIHBhcsOibWV0cm8gc2Vyw6EgcGFzc2FkbyBvIG9iamV0byBkbyByZXRvcm5vIHF1ZSDDqSBkbyB0aXBvIGBIdHRwUmVzcG9uc2VgLlxuICAgKlxuICAgKiAqKkNvbXBvbmVudGUgY29tcGF0w612ZWwqKjogYHBvLXVwbG9hZGBcbiAgICovXG4gIG9uU3VjY2Vzcz86IEZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBGdW7Dp8OjbyBxdWUgc2Vyw6EgZXhlY3V0YWRhIG5vIG1vbWVudG8gZGUgcmVhbGl6YXIgbyBlbnZpbyBkbyBhcnF1aXZvLFxuICAgKiBvbmRlIHNlcsOhIHBvc3PDrXZlbCBhZGljaW9uYXIgaW5mb3JtYcOnw7VlcyBhbyBwYXLDom1ldHJvIHF1ZSBzZXLDoSBlbnZpYWRvIG5hIHJlcXVpc2nDp8Ojby5cbiAgICogw4kgcGFzc2FkbyBwb3IgcGFyw6JtZXRybyB1bSBvYmpldG8gY29tIG8gYXJxdWl2byBlIGEgcHJvcHJpZWRhZGUgZGF0YSBuZXN0YSBwcm9wcmllZGFkZSBwb2RlIHNlciBpbmZvcm1hZG8gYWxndW0gZGFkbyxcbiAgICogcXVlIHNlcsOhIGVudmlhZG8gZW0gY29uanVudG8gY29tIG8gYXJxdWl2byBuYSByZXF1aXNpw6fDo28sIHBvciBleGVtcGxvOlxuICAgKlxuICAgKiBgYGBcbiAgICogICBldmVudC5kYXRhID0ge2lkOiAnaWQgZG8gdXN1w6FyaW8nfTtcbiAgICogYGBgXG4gICAqXG4gICAqICoqQ29tcG9uZW50ZSBjb21wYXTDrXZlbCoqOiBgcG8tdXBsb2FkYFxuICAgKi9cbiAgb25VcGxvYWQ/OiBGdW5jdGlvbjtcbn1cbiJdfQ==
|
|
@@ -177,7 +177,7 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_16_Template
|
|
|
177
177
|
} if (rf & 2) {
|
|
178
178
|
const field_r2 = i0.ɵɵnextContext().$implicit;
|
|
179
179
|
const ctx_r18 = i0.ɵɵnextContext(2);
|
|
180
|
-
i0.ɵɵproperty("ngModel", ctx_r18.value[field_r2.property])("ngClass", field_r2.componentClass)("p-auto-upload", field_r2.autoUpload)("p-directory", field_r2.directory)("p-disabled", ctx_r18.isDisabled(field_r2))("p-drag-drop", field_r2.dragDrop)("p-drag-drop-height", field_r2.dragDropHeight)("p-restrictions", field_r2.restrictions)("p-headers", field_r2.headers)("p-help", field_r2.help)("p-hide-restrictions-info", field_r2.hideRestrictionsInfo)("p-hide-select-button", field_r2.hideSelectButton)("p-hide-send-button", field_r2.hideSendButton)("p-multiple", field_r2.multiple)("p-label", field_r2.label)("p-literals", field_r2.literals)("name", field_r2.property)("p-optional", field_r2.optional)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-url", field_r2.url);
|
|
180
|
+
i0.ɵɵproperty("ngModel", ctx_r18.value[field_r2.property])("ngClass", field_r2.componentClass)("p-auto-upload", field_r2.autoUpload)("p-directory", field_r2.directory)("p-disabled", ctx_r18.isDisabled(field_r2))("p-drag-drop", field_r2.dragDrop)("p-drag-drop-height", field_r2.dragDropHeight)("p-restrictions", field_r2.restrictions)("p-form-field", field_r2.formField)("p-headers", field_r2.headers)("p-help", field_r2.help)("p-hide-restrictions-info", field_r2.hideRestrictionsInfo)("p-hide-select-button", field_r2.hideSelectButton)("p-hide-send-button", field_r2.hideSendButton)("p-multiple", field_r2.multiple)("p-label", field_r2.label)("p-literals", field_r2.literals)("name", field_r2.property)("p-optional", field_r2.optional)("p-required", field_r2.required)("p-show-required", field_r2.showRequired)("p-url", field_r2.url);
|
|
181
181
|
} }
|
|
182
182
|
function PoDynamicFormFieldsComponent_div_0_ng_container_1_Template(rf, ctx) { if (rf & 1) {
|
|
183
183
|
i0.ɵɵelementContainerStart(0);
|
|
@@ -196,7 +196,7 @@ function PoDynamicFormFieldsComponent_div_0_ng_container_1_Template(rf, ctx) { i
|
|
|
196
196
|
i0.ɵɵtemplate(13, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_multiselect_13_Template, 2, 23, "po-multiselect", 14);
|
|
197
197
|
i0.ɵɵtemplate(14, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_textarea_14_Template, 2, 15, "po-textarea", 15);
|
|
198
198
|
i0.ɵɵtemplate(15, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_password_15_Template, 2, 20, "po-password", 16);
|
|
199
|
-
i0.ɵɵtemplate(16, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_16_Template, 2,
|
|
199
|
+
i0.ɵɵtemplate(16, PoDynamicFormFieldsComponent_div_0_ng_container_1_po_upload_16_Template, 2, 22, "po-upload", 17);
|
|
200
200
|
i0.ɵɵelementContainerEnd();
|
|
201
201
|
} if (rf & 2) {
|
|
202
202
|
const field_r2 = ctx.$implicit;
|
|
@@ -360,7 +360,7 @@ export class PoDynamicFormFieldsComponent extends PoDynamicFormFieldsBaseCompone
|
|
|
360
360
|
} if (rf & 2) {
|
|
361
361
|
let _t;
|
|
362
362
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.components = _t);
|
|
363
|
-
} }, features: [i0.ɵɵProvidersFeature([PoDynamicFormValidationService], [{ provide: ControlContainer, useExisting: NgForm }]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["class", "po-row", 4, "ngIf"], [1, "po-row"], [4, "ngFor", "ngForOf", "ngForTrackBy"], ["class", "po-sm-12", 3, "p-label", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change", 4, "ngIf"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change", 4, "ngIf"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model", 4, "ngIf"], [1, "po-sm-12", 3, "p-label"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change"], ["component", ""], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model"]], template: function PoDynamicFormFieldsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
363
|
+
} }, features: [i0.ɵɵProvidersFeature([PoDynamicFormValidationService], [{ provide: ControlContainer, useExisting: NgForm }]), i0.ɵɵInheritDefinitionFeature, i0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [["class", "po-row", 4, "ngIf"], [1, "po-row"], [4, "ngFor", "ngForOf", "ngForTrackBy"], ["class", "po-sm-12", 3, "p-label", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change", 4, "ngIf"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change", 4, "ngIf"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model", 4, "ngIf"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-form-field", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model", 4, "ngIf"], [1, "po-sm-12", 3, "p-label"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-format", "p-help", "p-iso-format", "p-label", "p-locale", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change"], ["component", ""], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-literals", "p-max-date", "p-min-date", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-mask-format-model", "p-mask", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-readonly", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-label", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-step", "p-readonly", "p-required", "p-show-required", "p-icon", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-error-pattern", "p-disabled", "p-decimals-length", "p-thousand-maxlength", "p-icon", "p-auto-focus", "p-help", "p-label", "p-locale", "p-min", "p-max", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-field-label", "p-field-value", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-readonly", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-columns", "p-auto-focus", "p-disabled", "p-help", "p-label", "p-optional", "p-options", "p-required", "p-show-required", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-format-model", "p-help", "p-label", "p-label-off", "p-label-on", "p-label-position", "ngModelChange", "p-change"], ["p-emit-object-value", "", 3, "name", "ngModel", "ngClass", "p-auto-focus", "p-clean", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-help", "p-infinite-scroll", "p-infinite-scroll-distance", "p-label", "p-literals", "p-options", "p-optional", "p-sort", "p-required", "p-show-required", "p-icon", "p-placeholder", "p-filter-minlength", "p-filter-mode", "p-disabled-init-filter", "p-disabled-tab-filter", "p-debounce-time", "p-change-on-enter", "ngModelChange", "p-change"], ["p-field-label", "label", "p-field-value", "value", 3, "name", "ngModel", "ngClass", "p-clean", "p-columns", "p-disabled", "p-field-label", "p-field-value", "p-filter-params", "p-filter-service", "p-auto-focus", "p-auto-height", "p-help", "p-field-format", "p-infinite-scroll", "p-label", "p-literals", "p-multiple", "p-no-autocomplete", "p-optional", "p-required", "p-show-required", "p-placeholder", "p-advanced-filters", "ngModelChange", "p-change", "p-change-visible-columns", "p-restore-column-manager"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-auto-height", "p-help", "p-label", "p-literals", "p-optional", "p-options", "p-required", "p-show-required", "p-placeholder", "p-field-label", "p-field-value", "p-filter-service", "p-filter-mode", "p-debounce-time", "p-sort", "p-placeholder-search", "p-hide-search", "p-hide-select-all", "ngModelChange", "p-change"], [3, "name", "ngModel", "ngClass", "p-disabled", "p-auto-focus", "p-help", "p-label", "p-maxlength", "p-minlength", "p-optional", "p-readonly", "p-required", "p-show-required", "p-rows", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "name", "ngModel", "ngClass", "p-clean", "p-disabled", "p-error-pattern", "p-auto-focus", "p-help", "p-hide-password-peek", "p-icon", "p-label", "p-maxlength", "p-minlength", "p-no-autocomplete", "p-optional", "p-pattern", "p-readonly", "p-required", "p-show-required", "p-placeholder", "ngModelChange", "p-change", "p-change-model"], [3, "ngModel", "ngClass", "p-auto-upload", "p-directory", "p-disabled", "p-drag-drop", "p-drag-drop-height", "p-restrictions", "p-form-field", "p-headers", "p-help", "p-hide-restrictions-info", "p-hide-select-button", "p-hide-send-button", "p-multiple", "p-label", "p-literals", "name", "p-optional", "p-required", "p-show-required", "p-url", "ngModelChange", "p-error", "p-success", "p-upload", "p-change", "p-change-model"]], template: function PoDynamicFormFieldsComponent_Template(rf, ctx) { if (rf & 1) {
|
|
364
364
|
i0.ɵɵtemplate(0, PoDynamicFormFieldsComponent_div_0_Template, 2, 2, "div", 0);
|
|
365
365
|
} if (rf & 2) {
|
|
366
366
|
i0.ɵɵproperty("ngIf", ctx.visibleFields && ctx.visibleFields.length > 0);
|
|
@@ -368,9 +368,9 @@ export class PoDynamicFormFieldsComponent extends PoDynamicFormFieldsBaseCompone
|
|
|
368
368
|
}
|
|
369
369
|
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(PoDynamicFormFieldsComponent, [{
|
|
370
370
|
type: Component,
|
|
371
|
-
args: [{ selector: 'po-dynamic-form-fields', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], providers: [PoDynamicFormValidationService], template: "<div class=\"po-row\" *ngIf=\"visibleFields && visibleFields.length > 0\">\n <ng-container *ngFor=\"let field of visibleFields; trackBy: trackBy\">\n <po-divider *ngIf=\"field?.divider?.trim()\" class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n\n <po-datepicker\n #component\n *ngIf=\"compareTo(field.control, 'datepicker')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-datepicker>\n\n <po-datepicker-range\n #component\n *ngIf=\"compareTo(field.control, 'datepickerrange')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-datepicker-range>\n\n <po-input\n #component\n *ngIf=\"compareTo(field.control, 'input')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n\n <po-number\n #component\n *ngIf=\"compareTo(field.control, 'number')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n\n <po-decimal\n #component\n *ngIf=\"compareTo(field.control, 'decimal')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n\n <po-select\n #component\n *ngIf=\"compareTo(field.control, 'select')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n\n <po-radio-group\n #component\n *ngIf=\"compareTo(field.control, 'radioGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-radio-group>\n\n <po-switch\n #component\n *ngIf=\"compareTo(field.control, 'switch')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-switch>\n\n <po-combo\n #component\n *ngIf=\"compareTo(field.control, 'combo')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n >\n </po-combo>\n\n <po-lookup\n #component\n *ngIf=\"compareTo(field.control, 'lookup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n\n <po-checkbox-group\n #component\n *ngIf=\"compareTo(field.control, 'checkboxGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-checkbox-group>\n\n <po-multiselect\n #component\n *ngIf=\"compareTo(field.control, 'multiselect')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n >\n </po-multiselect>\n\n <po-textarea\n #component\n *ngIf=\"compareTo(field.control, 'textarea')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n\n <po-password\n #component\n *ngIf=\"compareTo(field.control, 'password')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n\n <po-upload\n #component\n *ngIf=\"compareTo(field.control, 'upload')\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n </ng-container>\n</div>\n" }]
|
|
371
|
+
args: [{ selector: 'po-dynamic-form-fields', viewProviders: [{ provide: ControlContainer, useExisting: NgForm }], providers: [PoDynamicFormValidationService], template: "<div class=\"po-row\" *ngIf=\"visibleFields && visibleFields.length > 0\">\n <ng-container *ngFor=\"let field of visibleFields; trackBy: trackBy\">\n <po-divider *ngIf=\"field?.divider?.trim()\" class=\"po-sm-12\" [p-label]=\"field.divider\"> </po-divider>\n\n <po-datepicker\n #component\n *ngIf=\"compareTo(field.control, 'datepicker')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-format]=\"field.format\"\n [p-help]=\"field.help\"\n [p-iso-format]=\"field.isoFormat\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-datepicker>\n\n <po-datepicker-range\n #component\n *ngIf=\"compareTo(field.control, 'datepickerrange')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-max-date]=\"field.maxValue\"\n [p-min-date]=\"field.minValue\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-datepicker-range>\n\n <po-input\n #component\n *ngIf=\"compareTo(field.control, 'input')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-mask-format-model]=\"field.maskFormatModel\"\n [p-mask]=\"field.mask\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-input>\n\n <po-number\n #component\n *ngIf=\"compareTo(field.control, 'number')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-step]=\"field.step\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-number>\n\n <po-decimal\n #component\n *ngIf=\"compareTo(field.control, 'decimal')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-disabled]=\"isDisabled(field)\"\n [p-decimals-length]=\"field.decimalsLength\"\n [p-thousand-maxlength]=\"field.thousandMaxlength\"\n [p-icon]=\"field.icon\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-locale]=\"field.locale\"\n [p-min]=\"field.minValue\"\n [p-max]=\"field.maxValue\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-decimal>\n\n <po-select\n #component\n *ngIf=\"compareTo(field.control, 'select')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-readonly]=\"field.readonly\"\n >\n </po-select>\n\n <po-radio-group\n #component\n *ngIf=\"compareTo(field.control, 'radioGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-radio-group>\n\n <po-switch\n #component\n *ngIf=\"compareTo(field.control, 'switch')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-format-model]=\"field.formatModel\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-label-off]=\"field.booleanFalse\"\n [p-label-on]=\"field.booleanTrue\"\n [p-label-position]=\"field.labelPosition\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-switch>\n\n <po-combo\n #component\n *ngIf=\"compareTo(field.control, 'combo')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n p-emit-object-value\n [p-auto-focus]=\"field.focus\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.optionsService\"\n [p-help]=\"field.help\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-infinite-scroll-distance]=\"field.infiniteScrollDistance || 100\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-options]=\"field.options\"\n [p-optional]=\"field.optional\"\n [p-sort]=\"field.sort\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field, $event)\"\n [p-icon]=\"field.icon\"\n [p-placeholder]=\"field.placeholder\"\n [p-filter-minlength]=\"field.filterMinlength\"\n [p-filter-mode]=\"field.filterMode\"\n [p-disabled-init-filter]=\"field.disabledInitFilter\"\n [p-disabled-tab-filter]=\"field.disabledTabFilter\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-change-on-enter]=\"field.changeOnEnter\"\n >\n </po-combo>\n\n <po-lookup\n #component\n *ngIf=\"compareTo(field.control, 'lookup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n p-field-label=\"label\"\n p-field-value=\"value\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-columns]=\"field.columns\"\n [p-disabled]=\"isDisabled(field)\"\n [p-field-label]=\"field.fieldLabel || 'label'\"\n [p-field-value]=\"field.fieldValue || 'value'\"\n [p-filter-params]=\"field.params\"\n [p-filter-service]=\"field.searchService\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-field-format]=\"field.format\"\n [p-infinite-scroll]=\"field.infiniteScroll\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-multiple]=\"field.multiple\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-advanced-filters]=\"field.advancedFilters\"\n (p-change-visible-columns)=\"field.changeVisibleColumns?.($event)\"\n (p-restore-column-manager)=\"field.columnRestoreManager?.($event)\"\n >\n </po-lookup>\n\n <po-checkbox-group\n #component\n *ngIf=\"compareTo(field.control, 'checkboxGroup')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-columns]=\"field.columns || 3\"\n [p-auto-focus]=\"field.focus\"\n [p-disabled]=\"isDisabled(field)\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n >\n </po-checkbox-group>\n\n <po-multiselect\n #component\n *ngIf=\"compareTo(field.control, 'multiselect')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-auto-height]=\"field.autoHeight\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [p-optional]=\"field.optional\"\n [p-options]=\"field.options\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n [p-placeholder]=\"field.placeholder\"\n [p-field-label]=\"field.fieldLabel\"\n [p-field-value]=\"field.fieldValue\"\n [p-filter-service]=\"field.optionsService\"\n [p-filter-mode]=\"field.filterMode\"\n [p-debounce-time]=\"field.debounceTime\"\n [p-sort]=\"field.sort\"\n [p-placeholder-search]=\"field.placeholderSearch\"\n [p-hide-search]=\"field.hideSearch\"\n [p-hide-select-all]=\"field.hideSelectAll\"\n >\n </po-multiselect>\n\n <po-textarea\n #component\n *ngIf=\"compareTo(field.control, 'textarea')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-disabled]=\"isDisabled(field)\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-optional]=\"field.optional\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n [p-rows]=\"field.rows\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-textarea>\n\n <po-password\n #component\n *ngIf=\"compareTo(field.control, 'password')\"\n [name]=\"field.property\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-clean]=\"field.clean\"\n [p-disabled]=\"isDisabled(field)\"\n [p-error-pattern]=\"field.errorMessage\"\n [p-auto-focus]=\"field.focus\"\n [p-help]=\"field.help\"\n [p-hide-password-peek]=\"field.hidePasswordPeek\"\n [p-icon]=\"field.icon\"\n [p-label]=\"field.label\"\n [p-maxlength]=\"field.maxLength\"\n [p-minlength]=\"field.minLength\"\n [p-no-autocomplete]=\"field.noAutocomplete\"\n [p-optional]=\"field.optional\"\n [p-pattern]=\"field.pattern\"\n [p-readonly]=\"field.readonly\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-placeholder]=\"field.placeholder\"\n >\n </po-password>\n\n <po-upload\n #component\n *ngIf=\"compareTo(field.control, 'upload')\"\n [(ngModel)]=\"value[field.property]\"\n [ngClass]=\"field.componentClass\"\n [p-auto-upload]=\"field.autoUpload\"\n [p-directory]=\"field.directory\"\n [p-disabled]=\"isDisabled(field)\"\n [p-drag-drop]=\"field.dragDrop\"\n [p-drag-drop-height]=\"field.dragDropHeight\"\n [p-restrictions]=\"field.restrictions\"\n [p-form-field]=\"field.formField\"\n [p-headers]=\"field.headers\"\n [p-help]=\"field.help\"\n [p-hide-restrictions-info]=\"field.hideRestrictionsInfo\"\n [p-hide-select-button]=\"field.hideSelectButton\"\n [p-hide-send-button]=\"field.hideSendButton\"\n [p-multiple]=\"field.multiple\"\n [p-label]=\"field.label\"\n [p-literals]=\"field.literals\"\n [name]=\"field.property\"\n (p-error)=\"field.onError($event)\"\n (p-success)=\"field.onSuccess($event)\"\n (p-upload)=\"field.onUpload($event)\"\n [p-optional]=\"field.optional\"\n [p-required]=\"field.required\"\n [p-show-required]=\"field.showRequired\"\n (p-change)=\"onChangeField(field)\"\n (p-change-model)=\"onChangeFieldModel(field)\"\n [p-url]=\"field.url\"\n >\n </po-upload>\n </ng-container>\n</div>\n" }]
|
|
372
372
|
}], function () { return [{ type: i1.TitleCasePipe }, { type: i2.PoDynamicFormValidationService }, { type: i0.ChangeDetectorRef }, { type: i3.NgForm }]; }, { components: [{
|
|
373
373
|
type: ViewChildren,
|
|
374
374
|
args: ['component']
|
|
375
375
|
}] }); })();
|
|
376
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy9wby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEQsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNMOUcsaUNBQW9HOzs7SUFBeEMsMENBQXlCOzs7O0lBRXJGLDZDQXdCQztJQXBCQyxzVkFBbUMsMFBBa0J2QixlQUFBLCtCQUFvQixDQUFBLElBbEJHO0lBcUJyQyxpQkFBZ0I7Ozs7SUF0QmQsd0NBQXVCLDRDQUFBLG9DQUFBLDJCQUFBLDJDQUFBLDBDQUFBLGdDQUFBLDZCQUFBLHlCQUFBLG9DQUFBLDJCQUFBLDZCQUFBLGlDQUFBLGlDQUFBLDhDQUFBLGlDQUFBLGlDQUFBLGlDQUFBLDBDQUFBLHVDQUFBOzs7O0lBd0J6QixtREFvQkM7SUFoQkMsa1dBQW1DLHNRQWV2QixlQUFBLCtCQUFvQixDQUFB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QUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQztTQUN2RDtRQUFDLE1BQU07WUFDTixZQUFZLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDO1NBQzFDO0lBQ0gsQ0FBQztzRkFqSVUsNEJBQTRCOzZEQUE1Qiw0QkFBNEI7Ozs7OzhDQUY1QixDQUFDLDhCQUE4QixDQUFDLEVBRDVCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lDbkJyRSw2RUFtWk07O1lBblplLHdFQUErQzs7O3VGRHNCdkQsNEJBQTRCO2NBTnhDLFNBQVM7MkJBQ0Usd0JBQXdCLGlCQUVuQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxhQUN4RCxDQUFDLDhCQUE4QixDQUFDO2tLQUdoQixVQUFVO2tCQUFwQyxZQUFZO21CQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdG9yUmVmLCBPbkNoYW5nZXMsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaXRsZUNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgUG9EeW5hbWljRm9ybUZpZWxkIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRzQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRWYWxpZGF0aW9uIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLWZpZWxkLXZhbGlkYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIEBkb2NzUHJpdmF0ZVxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIENvbXBvbmVudGUgZGUgY3JpYcOnw6NvIGRvcyBjYW1wb3MgZGluw6JtaWNvcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZHluYW1pYy1mb3JtLWZpZWxkcycsXG4gIHRlbXBsYXRlVXJsOiAncG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXG4gIHZpZXdQcm92aWRlcnM6IFt7IHByb3ZpZGU6IENvbnRyb2xDb250YWluZXIsIHVzZUV4aXN0aW5nOiBOZ0Zvcm0gfV0sXG4gIHByb3ZpZGVyczogW1BvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgUG9EeW5hbWljRm9ybUZpZWxkc0NvbXBvbmVudCBleHRlbmRzIFBvRHluYW1pY0Zvcm1GaWVsZHNCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQFZpZXdDaGlsZHJlbignY29tcG9uZW50JykgY29tcG9uZW50czogUXVlcnlMaXN0PHsgbmFtZTogc3RyaW5nOyBmb2N1czogKCkgPT4gdm9pZCB9PjtcblxuICBwcml2YXRlIHByZXZpb3VzVmFsdWUgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICB0aXRsZUNhc2VQaXBlOiBUaXRsZUNhc2VQaXBlLFxuICAgIHByaXZhdGUgdmFsaWRhdGlvblNlcnZpY2U6IFBvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZXM6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZm9ybTogTmdGb3JtXG4gICkge1xuICAgIHN1cGVyKHRpdGxlQ2FzZVBpcGUpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmZpZWxkcykge1xuICAgICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gICAgfVxuICB9XG5cbiAgZm9jdXMocHJvcGVydHk6IHN0cmluZykge1xuICAgIGNvbnN0IGZvdW5kQ29tcG9uZW50ID0gdGhpcy5jb21wb25lbnRzLmZpbmQoY29tcG9uZW50ID0+IGNvbXBvbmVudC5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGZvdW5kQ29tcG9uZW50KSB7XG4gICAgICBmb3VuZENvbXBvbmVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIGlzRGlzYWJsZWQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaWVsZC5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRm9ybTtcbiAgfVxuXG4gIGFzeW5jIG9uQ2hhbmdlRmllbGQodmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIG9iamVjdFZhbHVlPzogYW55KSB7XG4gICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgIGNvbnN0IGlzQm9vbGVhblR5cGUgPSB2aXNpYmxlRmllbGQudHlwZSA9PT0gJ2Jvb2xlYW4nO1xuICAgIGNvbnN0IGlzQ2hhbmdlZFZhbHVlRmllbGQgPSB0aGlzLnByZXZpb3VzVmFsdWVbcHJvcGVydHldICE9PSB0aGlzLnZhbHVlW3Byb3BlcnR5XTtcblxuICAgIGlmICh2aXNpYmxlRmllbGQub3B0aW9uc1NlcnZpY2UpIHtcbiAgICAgIHRoaXMub2JqZWN0VmFsdWUuZW1pdChvYmplY3RWYWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gdmVyaWZpY2Egc2UgbyBmb3JtdWxhcmlvIGVzdGEgdG91Y2hlZCBwYXJhIG7Do28gZGlzcGFyYXIgbyB2YWxpZGF0ZSBhbyBjYXJyZWdhciBhIHRlbGEuXG4gICAgaWYgKCh0aGlzLmZvcm0udG91Y2hlZCB8fCBpc0Jvb2xlYW5UeXBlKSAmJiBpc0NoYW5nZWRWYWx1ZUZpZWxkKSB7XG4gICAgICBjb25zdCB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfSA9IHRoaXMuZ2V0RmllbGQocHJvcGVydHkpO1xuXG4gICAgICBpZiAoY2hhbmdlZEZpZWxkLnZhbGlkYXRlKSB7XG4gICAgICAgIGF3YWl0IHRoaXMudmFsaWRhdGVGaWVsZChjaGFuZ2VkRmllbGQsIGNoYW5nZWRGaWVsZEluZGV4LCB2aXNpYmxlRmllbGQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZVByZXZpb3VzVmFsdWUoKTtcbiAgfVxuXG4gIC8vZW1pdGUgbyB2YWxvciBhIGNhZGEgY2FyYWN0ZXJlIGRpZ2l0YWRvIG5vIGlucHV0XG4gIG9uQ2hhbmdlRmllbGRNb2RlbCh2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGlmICh0aGlzLnZhbGlkYXRlT25JbnB1dCkge1xuICAgICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgICAgY29uc3QgeyBjaGFuZ2VkRmllbGRJbmRleCB9ID0gdGhpcy5nZXRGaWVsZChwcm9wZXJ0eSk7XG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVQcmV2aW91c1ZhbHVlKCkge1xuICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkpO1xuICB9XG5cbiAgdHJhY2tCeShpbmRleCkge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlGaWVsZFZhbGlkYXRpb24oaW5kZXg6IG51bWJlciwgdmFsaWRhdGVkRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24pIHtcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGRzW2luZGV4XTtcblxuICAgIHRoaXMuZmllbGRzW2luZGV4XSA9IHsgLi4uZmllbGQsIC4uLnZhbGlkYXRlZEZpZWxkLmZpZWxkIH07XG4gICAgdGhpcy51cGRhdGVGaWVsZHMoKTtcblxuICAgIGlmICh2YWxpZGF0ZWRGaWVsZC5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV0gPSB2YWxpZGF0ZWRGaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZXMuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHZhbGlkYXRlZEZpZWxkLmZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzKGZpZWxkLnByb3BlcnR5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEZpZWxkKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjaGFuZ2VkRmllbGRJbmRleCA9IHRoaXMuZmllbGRzLmZpbmRJbmRleChmaWVsZCA9PiBmaWVsZC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpO1xuICAgIGNvbnN0IGNoYW5nZWRGaWVsZCA9IHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XTtcblxuICAgIHJldHVybiB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfTtcbiAgfVxuXG4gIHByaXZhdGUgdHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IGlzVmFsaWRhdGFibGVGaWVsZCA9IHRoaXMudmFsaWRhdGVGaWVsZHM/Lmxlbmd0aFxuICAgICAgPyB0aGlzLnZhbGlkYXRlRmllbGRzQ2hlY2tlcih0aGlzLnZhbGlkYXRlRmllbGRzLCB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF0ucHJvcGVydHkpXG4gICAgICA6IHRydWU7XG4gICAgY29uc3QgaGFzVmFsaWRhdGlvbkZvcm0gPSB0aGlzLnZhbGlkYXRlICYmIGlzVmFsaWRhdGFibGVGaWVsZCAmJiB0aGlzLmZvcm1WYWxpZGF0ZS5vYnNlcnZlcnMubGVuZ3RoO1xuXG4gICAgaWYgKGhhc1ZhbGlkYXRpb25Gb3JtKSB7XG4gICAgICBjb25zdCB1cGRhdGVkRmllbGQgPSB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF07XG4gICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5lbWl0KHVwZGF0ZWRGaWVsZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVGaWVsZHMoKSB7XG4gICAgdGhpcy5maWVsZHNDaGFuZ2UuZW1pdCh0aGlzLmZpZWxkcyk7XG4gICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzQ2hlY2tlcih2YWxpZGF0ZUZpZWxkczogQXJyYXk8c3RyaW5nPiwgcHJvcGVydHlGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkWydwcm9wZXJ0eSddKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbGlkYXRlRmllbGRzLnNvbWUodmFsaWRhdGVGaWVsZEl0ZW0gPT4gdmFsaWRhdGVGaWVsZEl0ZW0gPT09IHByb3BlcnR5RmllbGQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB2YWxpZGF0ZUZpZWxkKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIGZpZWxkSW5kZXg6IG51bWJlciwgdmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWVbZmllbGQucHJvcGVydHldO1xuXG4gICAgY29uc3QgcHJldmlvdXNEaXNhYmxlZCA9IHZpc2libGVGaWVsZC5kaXNhYmxlZDtcbiAgICB2aXNpYmxlRmllbGQuZGlzYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuY2hhbmdlcy5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgdmFsaWRhdGVkRmllbGQgPSBhd2FpdCB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLnNlbmRGaWVsZENoYW5nZShmaWVsZCwgdmFsdWUpLnRvUHJvbWlzZSgpO1xuICAgICAgdGhpcy5hcHBseUZpZWxkVmFsaWRhdGlvbihmaWVsZEluZGV4LCB2YWxpZGF0ZWRGaWVsZCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICB2aXNpYmxlRmllbGQuZGlzYWJsZWQgPSBwcmV2aW91c0Rpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBvLXJvd1wiICpuZ0lmPVwidmlzaWJsZUZpZWxkcyAmJiB2aXNpYmxlRmllbGRzLmxlbmd0aCA+IDBcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgdmlzaWJsZUZpZWxkczsgdHJhY2tCeTogdHJhY2tCeVwiPlxuICAgIDxwby1kaXZpZGVyICpuZ0lmPVwiZmllbGQ/LmRpdmlkZXI/LnRyaW0oKVwiIGNsYXNzPVwicG8tc20tMTJcIiBbcC1sYWJlbF09XCJmaWVsZC5kaXZpZGVyXCI+IDwvcG8tZGl2aWRlcj5cblxuICAgIDxwby1kYXRlcGlja2VyXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnZGF0ZXBpY2tlcicpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZm9ybWF0XT1cImZpZWxkLmZvcm1hdFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaXNvLWZvcm1hdF09XCJmaWVsZC5pc29Gb3JtYXRcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbG9jYWxlXT1cImZpZWxkLmxvY2FsZVwiXG4gICAgICBbcC1tYXgtZGF0ZV09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1kYXRlcGlja2VyPlxuXG4gICAgPHBvLWRhdGVwaWNrZXItcmFuZ2VcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkYXRlcGlja2VycmFuZ2UnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1tYXgtZGF0ZV09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1kYXRlcGlja2VyLXJhbmdlPlxuXG4gICAgPHBvLWlucHV0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnaW5wdXQnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXNrLWZvcm1hdC1tb2RlbF09XCJmaWVsZC5tYXNrRm9ybWF0TW9kZWxcIlxuICAgICAgW3AtbWFza109XCJmaWVsZC5tYXNrXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcGF0dGVybl09XCJmaWVsZC5wYXR0ZXJuXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgID5cbiAgICA8L3BvLWlucHV0PlxuXG4gICAgPHBvLW51bWJlclxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ251bWJlcicpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1pbl09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1tYXhdPVwiZmllbGQubWF4VmFsdWVcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1zdGVwXT1cImZpZWxkLnN0ZXBcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tbnVtYmVyPlxuXG4gICAgPHBvLWRlY2ltYWxcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkZWNpbWFsJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZGVjaW1hbHMtbGVuZ3RoXT1cImZpZWxkLmRlY2ltYWxzTGVuZ3RoXCJcbiAgICAgIFtwLXRob3VzYW5kLW1heGxlbmd0aF09XCJmaWVsZC50aG91c2FuZE1heGxlbmd0aFwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbG9jYWxlXT1cImZpZWxkLmxvY2FsZVwiXG4gICAgICBbcC1taW5dPVwiZmllbGQubWluVmFsdWVcIlxuICAgICAgW3AtbWF4XT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1kZWNpbWFsPlxuXG4gICAgPHBvLXNlbGVjdFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3NlbGVjdCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgPlxuICAgIDwvcG8tc2VsZWN0PlxuXG4gICAgPHBvLXJhZGlvLWdyb3VwXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAncmFkaW9Hcm91cCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNvbHVtbnNdPVwiZmllbGQuY29sdW1ucyB8fCAzXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLXJhZGlvLWdyb3VwPlxuXG4gICAgPHBvLXN3aXRjaFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3N3aXRjaCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZvcm1hdC1tb2RlbF09XCJmaWVsZC5mb3JtYXRNb2RlbFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGFiZWwtb2ZmXT1cImZpZWxkLmJvb2xlYW5GYWxzZVwiXG4gICAgICBbcC1sYWJlbC1vbl09XCJmaWVsZC5ib29sZWFuVHJ1ZVwiXG4gICAgICBbcC1sYWJlbC1wb3NpdGlvbl09XCJmaWVsZC5sYWJlbFBvc2l0aW9uXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tc3dpdGNoPlxuXG4gICAgPHBvLWNvbWJvXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnY29tYm8nKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBwLWVtaXQtb2JqZWN0LXZhbHVlXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1maWx0ZXItcGFyYW1zXT1cImZpZWxkLnBhcmFtc1wiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5vcHRpb25zU2VydmljZVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsXCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbC1kaXN0YW5jZV09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbERpc3RhbmNlIHx8IDEwMFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atc29ydF09XCJmaWVsZC5zb3J0XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkLCAkZXZlbnQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1maWx0ZXItbWlubGVuZ3RoXT1cImZpZWxkLmZpbHRlck1pbmxlbmd0aFwiXG4gICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWVsZC5maWx0ZXJNb2RlXCJcbiAgICAgIFtwLWRpc2FibGVkLWluaXQtZmlsdGVyXT1cImZpZWxkLmRpc2FibGVkSW5pdEZpbHRlclwiXG4gICAgICBbcC1kaXNhYmxlZC10YWItZmlsdGVyXT1cImZpZWxkLmRpc2FibGVkVGFiRmlsdGVyXCJcbiAgICAgIFtwLWRlYm91bmNlLXRpbWVdPVwiZmllbGQuZGVib3VuY2VUaW1lXCJcbiAgICAgIFtwLWNoYW5nZS1vbi1lbnRlcl09XCJmaWVsZC5jaGFuZ2VPbkVudGVyXCJcbiAgICA+XG4gICAgPC9wby1jb21ibz5cblxuICAgIDxwby1sb29rdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdsb29rdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBwLWZpZWxkLWxhYmVsPVwibGFiZWxcIlxuICAgICAgcC1maWVsZC12YWx1ZT1cInZhbHVlXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWNvbHVtbnNdPVwiZmllbGQuY29sdW1uc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1maWVsZC1sYWJlbF09XCJmaWVsZC5maWVsZExhYmVsIHx8ICdsYWJlbCdcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZSB8fCAndmFsdWUnXCJcbiAgICAgIFtwLWZpbHRlci1wYXJhbXNdPVwiZmllbGQucGFyYW1zXCJcbiAgICAgIFtwLWZpbHRlci1zZXJ2aWNlXT1cImZpZWxkLnNlYXJjaFNlcnZpY2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1hdXRvLWhlaWdodF09XCJmaWVsZC5hdXRvSGVpZ2h0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1maWVsZC1mb3JtYXRdPVwiZmllbGQuZm9ybWF0XCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbF09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1tdWx0aXBsZV09XCJmaWVsZC5tdWx0aXBsZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWFkdmFuY2VkLWZpbHRlcnNdPVwiZmllbGQuYWR2YW5jZWRGaWx0ZXJzXCJcbiAgICAgIChwLWNoYW5nZS12aXNpYmxlLWNvbHVtbnMpPVwiZmllbGQuY2hhbmdlVmlzaWJsZUNvbHVtbnM/LigkZXZlbnQpXCJcbiAgICAgIChwLXJlc3RvcmUtY29sdW1uLW1hbmFnZXIpPVwiZmllbGQuY29sdW1uUmVzdG9yZU1hbmFnZXI/LigkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9wby1sb29rdXA+XG5cbiAgICA8cG8tY2hlY2tib3gtZ3JvdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdjaGVja2JveEdyb3VwJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zIHx8IDNcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tY2hlY2tib3gtZ3JvdXA+XG5cbiAgICA8cG8tbXVsdGlzZWxlY3RcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdtdWx0aXNlbGVjdCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtYXV0by1oZWlnaHRdPVwiZmllbGQuYXV0b0hlaWdodFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGl0ZXJhbHNdPVwiZmllbGQubGl0ZXJhbHNcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1maWVsZC1sYWJlbF09XCJmaWVsZC5maWVsZExhYmVsXCJcbiAgICAgIFtwLWZpZWxkLXZhbHVlXT1cImZpZWxkLmZpZWxkVmFsdWVcIlxuICAgICAgW3AtZmlsdGVyLXNlcnZpY2VdPVwiZmllbGQub3B0aW9uc1NlcnZpY2VcIlxuICAgICAgW3AtZmlsdGVyLW1vZGVdPVwiZmllbGQuZmlsdGVyTW9kZVwiXG4gICAgICBbcC1kZWJvdW5jZS10aW1lXT1cImZpZWxkLmRlYm91bmNlVGltZVwiXG4gICAgICBbcC1zb3J0XT1cImZpZWxkLnNvcnRcIlxuICAgICAgW3AtcGxhY2Vob2xkZXItc2VhcmNoXT1cImZpZWxkLnBsYWNlaG9sZGVyU2VhcmNoXCJcbiAgICAgIFtwLWhpZGUtc2VhcmNoXT1cImZpZWxkLmhpZGVTZWFyY2hcIlxuICAgICAgW3AtaGlkZS1zZWxlY3QtYWxsXT1cImZpZWxkLmhpZGVTZWxlY3RBbGxcIlxuICAgID5cbiAgICA8L3BvLW11bHRpc2VsZWN0PlxuXG4gICAgPHBvLXRleHRhcmVhXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAndGV4dGFyZWEnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgW3Atcm93c109XCJmaWVsZC5yb3dzXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tdGV4dGFyZWE+XG5cbiAgICA8cG8tcGFzc3dvcmRcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdwYXNzd29yZCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWhpZGUtcGFzc3dvcmQtcGVla109XCJmaWVsZC5oaWRlUGFzc3dvcmRQZWVrXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atbm8tYXV0b2NvbXBsZXRlXT1cImZpZWxkLm5vQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXBhdHRlcm5dPVwiZmllbGQucGF0dGVyblwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLXBhc3N3b3JkPlxuXG4gICAgPHBvLXVwbG9hZFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3VwbG9hZCcpXCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWF1dG8tdXBsb2FkXT1cImZpZWxkLmF1dG9VcGxvYWRcIlxuICAgICAgW3AtZGlyZWN0b3J5XT1cImZpZWxkLmRpcmVjdG9yeVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1kcmFnLWRyb3BdPVwiZmllbGQuZHJhZ0Ryb3BcIlxuICAgICAgW3AtZHJhZy1kcm9wLWhlaWdodF09XCJmaWVsZC5kcmFnRHJvcEhlaWdodFwiXG4gICAgICBbcC1yZXN0cmljdGlvbnNdPVwiZmllbGQucmVzdHJpY3Rpb25zXCJcbiAgICAgIFtwLWhlYWRlcnNdPVwiZmllbGQuaGVhZGVyc1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaGlkZS1yZXN0cmljdGlvbnMtaW5mb109XCJmaWVsZC5oaWRlUmVzdHJpY3Rpb25zSW5mb1wiXG4gICAgICBbcC1oaWRlLXNlbGVjdC1idXR0b25dPVwiZmllbGQuaGlkZVNlbGVjdEJ1dHRvblwiXG4gICAgICBbcC1oaWRlLXNlbmQtYnV0dG9uXT1cImZpZWxkLmhpZGVTZW5kQnV0dG9uXCJcbiAgICAgIFtwLW11bHRpcGxlXT1cImZpZWxkLm11bHRpcGxlXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIChwLWVycm9yKT1cImZpZWxkLm9uRXJyb3IoJGV2ZW50KVwiXG4gICAgICAocC1zdWNjZXNzKT1cImZpZWxkLm9uU3VjY2VzcygkZXZlbnQpXCJcbiAgICAgIChwLXVwbG9hZCk9XCJmaWVsZC5vblVwbG9hZCgkZXZlbnQpXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC11cmxdPVwiZmllbGQudXJsXCJcbiAgICA+XG4gICAgPC9wby11cGxvYWQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
|
376
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbXBvbmVudHMvcG8tZHluYW1pYy9wby1keW5hbWljLWZvcm0vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy9wby1keW5hbWljLWZvcm0tZmllbGRzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29tcG9uZW50cy9wby1keW5hbWljL3BvLWR5bmFtaWMtZm9ybS9wby1keW5hbWljLWZvcm0tZmllbGRzL3BvLWR5bmFtaWMtZm9ybS1maWVsZHMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBMEQsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUkxRCxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUNMOUcsaUNBQW9HOzs7SUFBeEMsMENBQXlCOzs7O0lBRXJGLDZDQXdCQztJQXBCQyxzVkFBbUMsMFBBa0J2QixlQUFBLCtCQUFvQixDQUFBLElBbEJHO0lBcUJyQyxpQkFBZ0I7Ozs7SUF0QmQsd0NBQXVCLDRDQUFBLG9DQUFBLDJCQUFBLDJDQUFBLDBDQUFBLGdDQUFBLDZCQUFBLHlCQUFBLG9DQUFBLDJCQUFBLDZCQUFBLGlDQUFBLGlDQUFBLDhDQUFBLGlDQUFBLGlDQUFBLGlDQUFBLDBDQUFBLHVDQUFBOzs7O0lBd0J6QixtREFvQkM7SUFoQkMsa1dBQW1DLHNRQWV2QixlQUFBLCtCQUFvQixDQUFB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Q0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDOUYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFVBQVUsRUFBRSxjQUFjLENBQUMsQ0FBQztTQUN2RDtRQUFDLE1BQU07WUFDTixZQUFZLENBQUMsUUFBUSxHQUFHLGdCQUFnQixDQUFDO1NBQzFDO0lBQ0gsQ0FBQztzRkFqSVUsNEJBQTRCOzZEQUE1Qiw0QkFBNEI7Ozs7OzhDQUY1QixDQUFDLDhCQUE4QixDQUFDLEVBRDVCLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lDbkJyRSw2RUFvWk07O1lBcFplLHdFQUErQzs7O3VGRHNCdkQsNEJBQTRCO2NBTnhDLFNBQVM7MkJBQ0Usd0JBQXdCLGlCQUVuQixDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsQ0FBQyxhQUN4RCxDQUFDLDhCQUE4QixDQUFDO2tLQUdoQixVQUFVO2tCQUFwQyxZQUFZO21CQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIENoYW5nZURldGVjdG9yUmVmLCBPbkNoYW5nZXMsIFF1ZXJ5TGlzdCwgU2ltcGxlQ2hhbmdlcywgVmlld0NoaWxkcmVuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sQ29udGFpbmVyLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaXRsZUNhc2VQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgUG9EeW5hbWljRm9ybUZpZWxkIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLWZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRzQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vcG8tZHluYW1pYy1mb3JtLWZpZWxkcy1iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb0R5bmFtaWNGb3JtRmllbGRWYWxpZGF0aW9uIH0gZnJvbSAnLi4vcG8tZHluYW1pYy1mb3JtLXZhbGlkYXRpb24vcG8tZHluYW1pYy1mb3JtLWZpZWxkLXZhbGlkYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFBvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSB9IGZyb20gJy4uL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uL3BvLWR5bmFtaWMtZm9ybS12YWxpZGF0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIEBkb2NzUHJpdmF0ZVxuICpcbiAqIEBkZXNjcmlwdGlvblxuICpcbiAqIENvbXBvbmVudGUgZGUgY3JpYcOnw6NvIGRvcyBjYW1wb3MgZGluw6JtaWNvcy5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncG8tZHluYW1pYy1mb3JtLWZpZWxkcycsXG4gIHRlbXBsYXRlVXJsOiAncG8tZHluYW1pYy1mb3JtLWZpZWxkcy5jb21wb25lbnQuaHRtbCcsXG4gIHZpZXdQcm92aWRlcnM6IFt7IHByb3ZpZGU6IENvbnRyb2xDb250YWluZXIsIHVzZUV4aXN0aW5nOiBOZ0Zvcm0gfV0sXG4gIHByb3ZpZGVyczogW1BvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgUG9EeW5hbWljRm9ybUZpZWxkc0NvbXBvbmVudCBleHRlbmRzIFBvRHluYW1pY0Zvcm1GaWVsZHNCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQFZpZXdDaGlsZHJlbignY29tcG9uZW50JykgY29tcG9uZW50czogUXVlcnlMaXN0PHsgbmFtZTogc3RyaW5nOyBmb2N1czogKCkgPT4gdm9pZCB9PjtcblxuICBwcml2YXRlIHByZXZpb3VzVmFsdWUgPSB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICB0aXRsZUNhc2VQaXBlOiBUaXRsZUNhc2VQaXBlLFxuICAgIHByaXZhdGUgdmFsaWRhdGlvblNlcnZpY2U6IFBvRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIGNoYW5nZXM6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgZm9ybTogTmdGb3JtXG4gICkge1xuICAgIHN1cGVyKHRpdGxlQ2FzZVBpcGUpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzLmZpZWxkcykge1xuICAgICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gICAgfVxuICB9XG5cbiAgZm9jdXMocHJvcGVydHk6IHN0cmluZykge1xuICAgIGNvbnN0IGZvdW5kQ29tcG9uZW50ID0gdGhpcy5jb21wb25lbnRzLmZpbmQoY29tcG9uZW50ID0+IGNvbXBvbmVudC5uYW1lID09PSBwcm9wZXJ0eSk7XG4gICAgaWYgKGZvdW5kQ29tcG9uZW50KSB7XG4gICAgICBmb3VuZENvbXBvbmVudC5mb2N1cygpO1xuICAgIH1cbiAgfVxuXG4gIGlzRGlzYWJsZWQoZmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaWVsZC5kaXNhYmxlZCB8fCB0aGlzLmRpc2FibGVkRm9ybTtcbiAgfVxuXG4gIGFzeW5jIG9uQ2hhbmdlRmllbGQodmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIG9iamVjdFZhbHVlPzogYW55KSB7XG4gICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgIGNvbnN0IGlzQm9vbGVhblR5cGUgPSB2aXNpYmxlRmllbGQudHlwZSA9PT0gJ2Jvb2xlYW4nO1xuICAgIGNvbnN0IGlzQ2hhbmdlZFZhbHVlRmllbGQgPSB0aGlzLnByZXZpb3VzVmFsdWVbcHJvcGVydHldICE9PSB0aGlzLnZhbHVlW3Byb3BlcnR5XTtcblxuICAgIGlmICh2aXNpYmxlRmllbGQub3B0aW9uc1NlcnZpY2UpIHtcbiAgICAgIHRoaXMub2JqZWN0VmFsdWUuZW1pdChvYmplY3RWYWx1ZSk7XG4gICAgfVxuXG4gICAgLy8gdmVyaWZpY2Egc2UgbyBmb3JtdWxhcmlvIGVzdGEgdG91Y2hlZCBwYXJhIG7Do28gZGlzcGFyYXIgbyB2YWxpZGF0ZSBhbyBjYXJyZWdhciBhIHRlbGEuXG4gICAgaWYgKCh0aGlzLmZvcm0udG91Y2hlZCB8fCBpc0Jvb2xlYW5UeXBlKSAmJiBpc0NoYW5nZWRWYWx1ZUZpZWxkKSB7XG4gICAgICBjb25zdCB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfSA9IHRoaXMuZ2V0RmllbGQocHJvcGVydHkpO1xuXG4gICAgICBpZiAoY2hhbmdlZEZpZWxkLnZhbGlkYXRlKSB7XG4gICAgICAgIGF3YWl0IHRoaXMudmFsaWRhdGVGaWVsZChjaGFuZ2VkRmllbGQsIGNoYW5nZWRGaWVsZEluZGV4LCB2aXNpYmxlRmllbGQpO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG5cbiAgICB0aGlzLnVwZGF0ZVByZXZpb3VzVmFsdWUoKTtcbiAgfVxuXG4gIC8vZW1pdGUgbyB2YWxvciBhIGNhZGEgY2FyYWN0ZXJlIGRpZ2l0YWRvIG5vIGlucHV0XG4gIG9uQ2hhbmdlRmllbGRNb2RlbCh2aXNpYmxlRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZCkge1xuICAgIGlmICh0aGlzLnZhbGlkYXRlT25JbnB1dCkge1xuICAgICAgY29uc3QgeyBwcm9wZXJ0eSB9ID0gdmlzaWJsZUZpZWxkO1xuICAgICAgY29uc3QgeyBjaGFuZ2VkRmllbGRJbmRleCB9ID0gdGhpcy5nZXRGaWVsZChwcm9wZXJ0eSk7XG4gICAgICB0aGlzLnRyaWdnZXJWYWxpZGF0aW9uT25Gb3JtKGNoYW5nZWRGaWVsZEluZGV4KTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVQcmV2aW91c1ZhbHVlKCkge1xuICAgIHRoaXMucHJldmlvdXNWYWx1ZSA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkodGhpcy52YWx1ZSkpO1xuICB9XG5cbiAgdHJhY2tCeShpbmRleCkge1xuICAgIHJldHVybiBpbmRleDtcbiAgfVxuXG4gIHByaXZhdGUgYXBwbHlGaWVsZFZhbGlkYXRpb24oaW5kZXg6IG51bWJlciwgdmFsaWRhdGVkRmllbGQ6IFBvRHluYW1pY0Zvcm1GaWVsZFZhbGlkYXRpb24pIHtcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMuZmllbGRzW2luZGV4XTtcblxuICAgIHRoaXMuZmllbGRzW2luZGV4XSA9IHsgLi4uZmllbGQsIC4uLnZhbGlkYXRlZEZpZWxkLmZpZWxkIH07XG4gICAgdGhpcy51cGRhdGVGaWVsZHMoKTtcblxuICAgIGlmICh2YWxpZGF0ZWRGaWVsZC5oYXNPd25Qcm9wZXJ0eSgndmFsdWUnKSkge1xuICAgICAgdGhpcy52YWx1ZVtmaWVsZC5wcm9wZXJ0eV0gPSB2YWxpZGF0ZWRGaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICB0aGlzLmNoYW5nZXMuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgaWYgKHZhbGlkYXRlZEZpZWxkLmZvY3VzKSB7XG4gICAgICB0aGlzLmZvY3VzKGZpZWxkLnByb3BlcnR5KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldEZpZWxkKHByb3BlcnR5OiBzdHJpbmcpIHtcbiAgICBjb25zdCBjaGFuZ2VkRmllbGRJbmRleCA9IHRoaXMuZmllbGRzLmZpbmRJbmRleChmaWVsZCA9PiBmaWVsZC5wcm9wZXJ0eSA9PT0gcHJvcGVydHkpO1xuICAgIGNvbnN0IGNoYW5nZWRGaWVsZCA9IHRoaXMuZmllbGRzW2NoYW5nZWRGaWVsZEluZGV4XTtcblxuICAgIHJldHVybiB7IGNoYW5nZWRGaWVsZCwgY2hhbmdlZEZpZWxkSW5kZXggfTtcbiAgfVxuXG4gIHByaXZhdGUgdHJpZ2dlclZhbGlkYXRpb25PbkZvcm0oY2hhbmdlZEZpZWxkSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IGlzVmFsaWRhdGFibGVGaWVsZCA9IHRoaXMudmFsaWRhdGVGaWVsZHM/Lmxlbmd0aFxuICAgICAgPyB0aGlzLnZhbGlkYXRlRmllbGRzQ2hlY2tlcih0aGlzLnZhbGlkYXRlRmllbGRzLCB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF0ucHJvcGVydHkpXG4gICAgICA6IHRydWU7XG4gICAgY29uc3QgaGFzVmFsaWRhdGlvbkZvcm0gPSB0aGlzLnZhbGlkYXRlICYmIGlzVmFsaWRhdGFibGVGaWVsZCAmJiB0aGlzLmZvcm1WYWxpZGF0ZS5vYnNlcnZlcnMubGVuZ3RoO1xuXG4gICAgaWYgKGhhc1ZhbGlkYXRpb25Gb3JtKSB7XG4gICAgICBjb25zdCB1cGRhdGVkRmllbGQgPSB0aGlzLmZpZWxkc1tjaGFuZ2VkRmllbGRJbmRleF07XG4gICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5lbWl0KHVwZGF0ZWRGaWVsZCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVGaWVsZHMoKSB7XG4gICAgdGhpcy5maWVsZHNDaGFuZ2UuZW1pdCh0aGlzLmZpZWxkcyk7XG4gICAgdGhpcy52aXNpYmxlRmllbGRzID0gdGhpcy5nZXRWaXNpYmxlRmllbGRzKCk7XG4gIH1cblxuICBwcml2YXRlIHZhbGlkYXRlRmllbGRzQ2hlY2tlcih2YWxpZGF0ZUZpZWxkczogQXJyYXk8c3RyaW5nPiwgcHJvcGVydHlGaWVsZDogUG9EeW5hbWljRm9ybUZpZWxkWydwcm9wZXJ0eSddKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHZhbGlkYXRlRmllbGRzLnNvbWUodmFsaWRhdGVGaWVsZEl0ZW0gPT4gdmFsaWRhdGVGaWVsZEl0ZW0gPT09IHByb3BlcnR5RmllbGQpO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyB2YWxpZGF0ZUZpZWxkKGZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQsIGZpZWxkSW5kZXg6IG51bWJlciwgdmlzaWJsZUZpZWxkOiBQb0R5bmFtaWNGb3JtRmllbGQpIHtcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMudmFsdWVbZmllbGQucHJvcGVydHldO1xuXG4gICAgY29uc3QgcHJldmlvdXNEaXNhYmxlZCA9IHZpc2libGVGaWVsZC5kaXNhYmxlZDtcbiAgICB2aXNpYmxlRmllbGQuZGlzYWJsZWQgPSB0cnVlO1xuICAgIHRoaXMuY2hhbmdlcy5kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgdmFsaWRhdGVkRmllbGQgPSBhd2FpdCB0aGlzLnZhbGlkYXRpb25TZXJ2aWNlLnNlbmRGaWVsZENoYW5nZShmaWVsZCwgdmFsdWUpLnRvUHJvbWlzZSgpO1xuICAgICAgdGhpcy5hcHBseUZpZWxkVmFsaWRhdGlvbihmaWVsZEluZGV4LCB2YWxpZGF0ZWRGaWVsZCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICB2aXNpYmxlRmllbGQuZGlzYWJsZWQgPSBwcmV2aW91c0Rpc2FibGVkO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInBvLXJvd1wiICpuZ0lmPVwidmlzaWJsZUZpZWxkcyAmJiB2aXNpYmxlRmllbGRzLmxlbmd0aCA+IDBcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgZmllbGQgb2YgdmlzaWJsZUZpZWxkczsgdHJhY2tCeTogdHJhY2tCeVwiPlxuICAgIDxwby1kaXZpZGVyICpuZ0lmPVwiZmllbGQ/LmRpdmlkZXI/LnRyaW0oKVwiIGNsYXNzPVwicG8tc20tMTJcIiBbcC1sYWJlbF09XCJmaWVsZC5kaXZpZGVyXCI+IDwvcG8tZGl2aWRlcj5cblxuICAgIDxwby1kYXRlcGlja2VyXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnZGF0ZXBpY2tlcicpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZm9ybWF0XT1cImZpZWxkLmZvcm1hdFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaXNvLWZvcm1hdF09XCJmaWVsZC5pc29Gb3JtYXRcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbG9jYWxlXT1cImZpZWxkLmxvY2FsZVwiXG4gICAgICBbcC1tYXgtZGF0ZV09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1kYXRlcGlja2VyPlxuXG4gICAgPHBvLWRhdGVwaWNrZXItcmFuZ2VcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkYXRlcGlja2VycmFuZ2UnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1tYXgtZGF0ZV09XCJmaWVsZC5tYXhWYWx1ZVwiXG4gICAgICBbcC1taW4tZGF0ZV09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICA+XG4gICAgPC9wby1kYXRlcGlja2VyLXJhbmdlPlxuXG4gICAgPHBvLWlucHV0XG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnaW5wdXQnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1jbGVhbl09XCJmaWVsZC5jbGVhblwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1lcnJvci1wYXR0ZXJuXT1cImZpZWxkLmVycm9yTWVzc2FnZVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXNrLWZvcm1hdC1tb2RlbF09XCJmaWVsZC5tYXNrRm9ybWF0TW9kZWxcIlxuICAgICAgW3AtbWFza109XCJmaWVsZC5tYXNrXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcGF0dGVybl09XCJmaWVsZC5wYXR0ZXJuXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgID5cbiAgICA8L3BvLWlucHV0PlxuXG4gICAgPHBvLW51bWJlclxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ251bWJlcicpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW1pbl09XCJmaWVsZC5taW5WYWx1ZVwiXG4gICAgICBbcC1tYXhdPVwiZmllbGQubWF4VmFsdWVcIlxuICAgICAgW3AtbWF4bGVuZ3RoXT1cImZpZWxkLm1heExlbmd0aFwiXG4gICAgICBbcC1taW5sZW5ndGhdPVwiZmllbGQubWluTGVuZ3RoXCJcbiAgICAgIFtwLW5vLWF1dG9jb21wbGV0ZV09XCJmaWVsZC5ub0F1dG9jb21wbGV0ZVwiXG4gICAgICBbcC1vcHRpb25hbF09XCJmaWVsZC5vcHRpb25hbFwiXG4gICAgICBbcC1zdGVwXT1cImZpZWxkLnN0ZXBcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tbnVtYmVyPlxuXG4gICAgPHBvLWRlY2ltYWxcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdkZWNpbWFsJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY2xlYW5dPVwiZmllbGQuY2xlYW5cIlxuICAgICAgW3AtZXJyb3ItcGF0dGVybl09XCJmaWVsZC5lcnJvck1lc3NhZ2VcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtZGVjaW1hbHMtbGVuZ3RoXT1cImZpZWxkLmRlY2ltYWxzTGVuZ3RoXCJcbiAgICAgIFtwLXRob3VzYW5kLW1heGxlbmd0aF09XCJmaWVsZC50aG91c2FuZE1heGxlbmd0aFwiXG4gICAgICBbcC1pY29uXT1cImZpZWxkLmljb25cIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbG9jYWxlXT1cImZpZWxkLmxvY2FsZVwiXG4gICAgICBbcC1taW5dPVwiZmllbGQubWluVmFsdWVcIlxuICAgICAgW3AtbWF4XT1cImZpZWxkLm1heFZhbHVlXCJcbiAgICAgIFtwLW1heGxlbmd0aF09XCJmaWVsZC5tYXhMZW5ndGhcIlxuICAgICAgW3AtbWlubGVuZ3RoXT1cImZpZWxkLm1pbkxlbmd0aFwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIChwLWNoYW5nZS1tb2RlbCk9XCJvbkNoYW5nZUZpZWxkTW9kZWwoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICA+XG4gICAgPC9wby1kZWNpbWFsPlxuXG4gICAgPHBvLXNlbGVjdFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3NlbGVjdCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgPlxuICAgIDwvcG8tc2VsZWN0PlxuXG4gICAgPHBvLXJhZGlvLWdyb3VwXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAncmFkaW9Hcm91cCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNvbHVtbnNdPVwiZmllbGQuY29sdW1ucyB8fCAzXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtZGlzYWJsZWRdPVwiaXNEaXNhYmxlZChmaWVsZClcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLW9wdGlvbnNdPVwiZmllbGQub3B0aW9uc1wiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgID5cbiAgICA8L3BvLXJhZGlvLWdyb3VwPlxuXG4gICAgPHBvLXN3aXRjaFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3N3aXRjaCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZvcm1hdC1tb2RlbF09XCJmaWVsZC5mb3JtYXRNb2RlbFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGFiZWwtb2ZmXT1cImZpZWxkLmJvb2xlYW5GYWxzZVwiXG4gICAgICBbcC1sYWJlbC1vbl09XCJmaWVsZC5ib29sZWFuVHJ1ZVwiXG4gICAgICBbcC1sYWJlbC1wb3NpdGlvbl09XCJmaWVsZC5sYWJlbFBvc2l0aW9uXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tc3dpdGNoPlxuXG4gICAgPHBvLWNvbWJvXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAnY29tYm8nKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBwLWVtaXQtb2JqZWN0LXZhbHVlXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWZpZWxkLWxhYmVsXT1cImZpZWxkLmZpZWxkTGFiZWxcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZVwiXG4gICAgICBbcC1maWx0ZXItcGFyYW1zXT1cImZpZWxkLnBhcmFtc1wiXG4gICAgICBbcC1maWx0ZXItc2VydmljZV09XCJmaWVsZC5vcHRpb25zU2VydmljZVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaW5maW5pdGUtc2Nyb2xsXT1cImZpZWxkLmluZmluaXRlU2Nyb2xsXCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbC1kaXN0YW5jZV09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbERpc3RhbmNlIHx8IDEwMFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1vcHRpb25zXT1cImZpZWxkLm9wdGlvbnNcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atc29ydF09XCJmaWVsZC5zb3J0XCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkLCAkZXZlbnQpXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1maWx0ZXItbWlubGVuZ3RoXT1cImZpZWxkLmZpbHRlck1pbmxlbmd0aFwiXG4gICAgICBbcC1maWx0ZXItbW9kZV09XCJmaWVsZC5maWx0ZXJNb2RlXCJcbiAgICAgIFtwLWRpc2FibGVkLWluaXQtZmlsdGVyXT1cImZpZWxkLmRpc2FibGVkSW5pdEZpbHRlclwiXG4gICAgICBbcC1kaXNhYmxlZC10YWItZmlsdGVyXT1cImZpZWxkLmRpc2FibGVkVGFiRmlsdGVyXCJcbiAgICAgIFtwLWRlYm91bmNlLXRpbWVdPVwiZmllbGQuZGVib3VuY2VUaW1lXCJcbiAgICAgIFtwLWNoYW5nZS1vbi1lbnRlcl09XCJmaWVsZC5jaGFuZ2VPbkVudGVyXCJcbiAgICA+XG4gICAgPC9wby1jb21ibz5cblxuICAgIDxwby1sb29rdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdsb29rdXAnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBwLWZpZWxkLWxhYmVsPVwibGFiZWxcIlxuICAgICAgcC1maWVsZC12YWx1ZT1cInZhbHVlXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWNvbHVtbnNdPVwiZmllbGQuY29sdW1uc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1maWVsZC1sYWJlbF09XCJmaWVsZC5maWVsZExhYmVsIHx8ICdsYWJlbCdcIlxuICAgICAgW3AtZmllbGQtdmFsdWVdPVwiZmllbGQuZmllbGRWYWx1ZSB8fCAndmFsdWUnXCJcbiAgICAgIFtwLWZpbHRlci1wYXJhbXNdPVwiZmllbGQucGFyYW1zXCJcbiAgICAgIFtwLWZpbHRlci1zZXJ2aWNlXT1cImZpZWxkLnNlYXJjaFNlcnZpY2VcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1hdXRvLWhlaWdodF09XCJmaWVsZC5hdXRvSGVpZ2h0XCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1maWVsZC1mb3JtYXRdPVwiZmllbGQuZm9ybWF0XCJcbiAgICAgIFtwLWluZmluaXRlLXNjcm9sbF09XCJmaWVsZC5pbmZpbml0ZVNjcm9sbFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1saXRlcmFsc109XCJmaWVsZC5saXRlcmFsc1wiXG4gICAgICBbcC1tdWx0aXBsZV09XCJmaWVsZC5tdWx0aXBsZVwiXG4gICAgICBbcC1uby1hdXRvY29tcGxldGVdPVwiZmllbGQubm9BdXRvY29tcGxldGVcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgKHAtY2hhbmdlKT1cIm9uQ2hhbmdlRmllbGQoZmllbGQpXCJcbiAgICAgIFtwLXBsYWNlaG9sZGVyXT1cImZpZWxkLnBsYWNlaG9sZGVyXCJcbiAgICAgIFtwLWFkdmFuY2VkLWZpbHRlcnNdPVwiZmllbGQuYWR2YW5jZWRGaWx0ZXJzXCJcbiAgICAgIChwLWNoYW5nZS12aXNpYmxlLWNvbHVtbnMpPVwiZmllbGQuY2hhbmdlVmlzaWJsZUNvbHVtbnM/LigkZXZlbnQpXCJcbiAgICAgIChwLXJlc3RvcmUtY29sdW1uLW1hbmFnZXIpPVwiZmllbGQuY29sdW1uUmVzdG9yZU1hbmFnZXI/LigkZXZlbnQpXCJcbiAgICA+XG4gICAgPC9wby1sb29rdXA+XG5cbiAgICA8cG8tY2hlY2tib3gtZ3JvdXBcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdjaGVja2JveEdyb3VwJylcIlxuICAgICAgW25hbWVdPVwiZmllbGQucHJvcGVydHlcIlxuICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVtmaWVsZC5wcm9wZXJ0eV1cIlxuICAgICAgW25nQ2xhc3NdPVwiZmllbGQuY29tcG9uZW50Q2xhc3NcIlxuICAgICAgW3AtY29sdW1uc109XCJmaWVsZC5jb2x1bW5zIHx8IDNcIlxuICAgICAgW3AtYXV0by1mb2N1c109XCJmaWVsZC5mb2N1c1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgPlxuICAgIDwvcG8tY2hlY2tib3gtZ3JvdXA+XG5cbiAgICA8cG8tbXVsdGlzZWxlY3RcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdtdWx0aXNlbGVjdCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtYXV0by1oZWlnaHRdPVwiZmllbGQuYXV0b0hlaWdodFwiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtbGFiZWxdPVwiZmllbGQubGFiZWxcIlxuICAgICAgW3AtbGl0ZXJhbHNdPVwiZmllbGQubGl0ZXJhbHNcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3Atb3B0aW9uc109XCJmaWVsZC5vcHRpb25zXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgICBbcC1maWVsZC1sYWJlbF09XCJmaWVsZC5maWVsZExhYmVsXCJcbiAgICAgIFtwLWZpZWxkLXZhbHVlXT1cImZpZWxkLmZpZWxkVmFsdWVcIlxuICAgICAgW3AtZmlsdGVyLXNlcnZpY2VdPVwiZmllbGQub3B0aW9uc1NlcnZpY2VcIlxuICAgICAgW3AtZmlsdGVyLW1vZGVdPVwiZmllbGQuZmlsdGVyTW9kZVwiXG4gICAgICBbcC1kZWJvdW5jZS10aW1lXT1cImZpZWxkLmRlYm91bmNlVGltZVwiXG4gICAgICBbcC1zb3J0XT1cImZpZWxkLnNvcnRcIlxuICAgICAgW3AtcGxhY2Vob2xkZXItc2VhcmNoXT1cImZpZWxkLnBsYWNlaG9sZGVyU2VhcmNoXCJcbiAgICAgIFtwLWhpZGUtc2VhcmNoXT1cImZpZWxkLmhpZGVTZWFyY2hcIlxuICAgICAgW3AtaGlkZS1zZWxlY3QtYWxsXT1cImZpZWxkLmhpZGVTZWxlY3RBbGxcIlxuICAgID5cbiAgICA8L3BvLW11bHRpc2VsZWN0PlxuXG4gICAgPHBvLXRleHRhcmVhXG4gICAgICAjY29tcG9uZW50XG4gICAgICAqbmdJZj1cImNvbXBhcmVUbyhmaWVsZC5jb250cm9sLCAndGV4dGFyZWEnKVwiXG4gICAgICBbbmFtZV09XCJmaWVsZC5wcm9wZXJ0eVwiXG4gICAgICBbKG5nTW9kZWwpXT1cInZhbHVlW2ZpZWxkLnByb3BlcnR5XVwiXG4gICAgICBbbmdDbGFzc109XCJmaWVsZC5jb21wb25lbnRDbGFzc1wiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1hdXRvLWZvY3VzXT1cImZpZWxkLmZvY3VzXCJcbiAgICAgIFtwLWhlbHBdPVwiZmllbGQuaGVscFwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atb3B0aW9uYWxdPVwiZmllbGQub3B0aW9uYWxcIlxuICAgICAgW3AtcmVhZG9ubHldPVwiZmllbGQucmVhZG9ubHlcIlxuICAgICAgW3AtcmVxdWlyZWRdPVwiZmllbGQucmVxdWlyZWRcIlxuICAgICAgW3Atc2hvdy1yZXF1aXJlZF09XCJmaWVsZC5zaG93UmVxdWlyZWRcIlxuICAgICAgW3Atcm93c109XCJmaWVsZC5yb3dzXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC1wbGFjZWhvbGRlcl09XCJmaWVsZC5wbGFjZWhvbGRlclwiXG4gICAgPlxuICAgIDwvcG8tdGV4dGFyZWE+XG5cbiAgICA8cG8tcGFzc3dvcmRcbiAgICAgICNjb21wb25lbnRcbiAgICAgICpuZ0lmPVwiY29tcGFyZVRvKGZpZWxkLmNvbnRyb2wsICdwYXNzd29yZCcpXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWNsZWFuXT1cImZpZWxkLmNsZWFuXCJcbiAgICAgIFtwLWRpc2FibGVkXT1cImlzRGlzYWJsZWQoZmllbGQpXCJcbiAgICAgIFtwLWVycm9yLXBhdHRlcm5dPVwiZmllbGQuZXJyb3JNZXNzYWdlXCJcbiAgICAgIFtwLWF1dG8tZm9jdXNdPVwiZmllbGQuZm9jdXNcIlxuICAgICAgW3AtaGVscF09XCJmaWVsZC5oZWxwXCJcbiAgICAgIFtwLWhpZGUtcGFzc3dvcmQtcGVla109XCJmaWVsZC5oaWRlUGFzc3dvcmRQZWVrXCJcbiAgICAgIFtwLWljb25dPVwiZmllbGQuaWNvblwiXG4gICAgICBbcC1sYWJlbF09XCJmaWVsZC5sYWJlbFwiXG4gICAgICBbcC1tYXhsZW5ndGhdPVwiZmllbGQubWF4TGVuZ3RoXCJcbiAgICAgIFtwLW1pbmxlbmd0aF09XCJmaWVsZC5taW5MZW5ndGhcIlxuICAgICAgW3Atbm8tYXV0b2NvbXBsZXRlXT1cImZpZWxkLm5vQXV0b2NvbXBsZXRlXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXBhdHRlcm5dPVwiZmllbGQucGF0dGVyblwiXG4gICAgICBbcC1yZWFkb25seV09XCJmaWVsZC5yZWFkb25seVwiXG4gICAgICBbcC1yZXF1aXJlZF09XCJmaWVsZC5yZXF1aXJlZFwiXG4gICAgICBbcC1zaG93LXJlcXVpcmVkXT1cImZpZWxkLnNob3dSZXF1aXJlZFwiXG4gICAgICAocC1jaGFuZ2UpPVwib25DaGFuZ2VGaWVsZChmaWVsZClcIlxuICAgICAgKHAtY2hhbmdlLW1vZGVsKT1cIm9uQ2hhbmdlRmllbGRNb2RlbChmaWVsZClcIlxuICAgICAgW3AtcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgID5cbiAgICA8L3BvLXBhc3N3b3JkPlxuXG4gICAgPHBvLXVwbG9hZFxuICAgICAgI2NvbXBvbmVudFxuICAgICAgKm5nSWY9XCJjb21wYXJlVG8oZmllbGQuY29udHJvbCwgJ3VwbG9hZCcpXCJcbiAgICAgIFsobmdNb2RlbCldPVwidmFsdWVbZmllbGQucHJvcGVydHldXCJcbiAgICAgIFtuZ0NsYXNzXT1cImZpZWxkLmNvbXBvbmVudENsYXNzXCJcbiAgICAgIFtwLWF1dG8tdXBsb2FkXT1cImZpZWxkLmF1dG9VcGxvYWRcIlxuICAgICAgW3AtZGlyZWN0b3J5XT1cImZpZWxkLmRpcmVjdG9yeVwiXG4gICAgICBbcC1kaXNhYmxlZF09XCJpc0Rpc2FibGVkKGZpZWxkKVwiXG4gICAgICBbcC1kcmFnLWRyb3BdPVwiZmllbGQuZHJhZ0Ryb3BcIlxuICAgICAgW3AtZHJhZy1kcm9wLWhlaWdodF09XCJmaWVsZC5kcmFnRHJvcEhlaWdodFwiXG4gICAgICBbcC1yZXN0cmljdGlvbnNdPVwiZmllbGQucmVzdHJpY3Rpb25zXCJcbiAgICAgIFtwLWZvcm0tZmllbGRdPVwiZmllbGQuZm9ybUZpZWxkXCJcbiAgICAgIFtwLWhlYWRlcnNdPVwiZmllbGQuaGVhZGVyc1wiXG4gICAgICBbcC1oZWxwXT1cImZpZWxkLmhlbHBcIlxuICAgICAgW3AtaGlkZS1yZXN0cmljdGlvbnMtaW5mb109XCJmaWVsZC5oaWRlUmVzdHJpY3Rpb25zSW5mb1wiXG4gICAgICBbcC1oaWRlLXNlbGVjdC1idXR0b25dPVwiZmllbGQuaGlkZVNlbGVjdEJ1dHRvblwiXG4gICAgICBbcC1oaWRlLXNlbmQtYnV0dG9uXT1cImZpZWxkLmhpZGVTZW5kQnV0dG9uXCJcbiAgICAgIFtwLW11bHRpcGxlXT1cImZpZWxkLm11bHRpcGxlXCJcbiAgICAgIFtwLWxhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgIFtwLWxpdGVyYWxzXT1cImZpZWxkLmxpdGVyYWxzXCJcbiAgICAgIFtuYW1lXT1cImZpZWxkLnByb3BlcnR5XCJcbiAgICAgIChwLWVycm9yKT1cImZpZWxkLm9uRXJyb3IoJGV2ZW50KVwiXG4gICAgICAocC1zdWNjZXNzKT1cImZpZWxkLm9uU3VjY2VzcygkZXZlbnQpXCJcbiAgICAgIChwLXVwbG9hZCk9XCJmaWVsZC5vblVwbG9hZCgkZXZlbnQpXCJcbiAgICAgIFtwLW9wdGlvbmFsXT1cImZpZWxkLm9wdGlvbmFsXCJcbiAgICAgIFtwLXJlcXVpcmVkXT1cImZpZWxkLnJlcXVpcmVkXCJcbiAgICAgIFtwLXNob3ctcmVxdWlyZWRdPVwiZmllbGQuc2hvd1JlcXVpcmVkXCJcbiAgICAgIChwLWNoYW5nZSk9XCJvbkNoYW5nZUZpZWxkKGZpZWxkKVwiXG4gICAgICAocC1jaGFuZ2UtbW9kZWwpPVwib25DaGFuZ2VGaWVsZE1vZGVsKGZpZWxkKVwiXG4gICAgICBbcC11cmxdPVwiZmllbGQudXJsXCJcbiAgICA+XG4gICAgPC9wby11cGxvYWQ+XG4gIDwvbmctY29udGFpbmVyPlxuPC9kaXY+XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG8tZHluYW1pYy12aWV3LXJlcXVlc3QuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9jb21wb25lbnRzL3BvLWR5bmFtaWMvcG8tZHluYW1pYy12aWV3L2ludGVyZmFjZXMvcG8tZHluYW1pYy12aWV3LXJlcXVlc3QuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogQHVzZWRCeSBQb0R5bmFtaWNWaWV3Q29tcG9uZW50XG4gKlxuICogQGRlc2NyaXB0aW9uXG4gKlxuICogRGVmaW5lIG8gdGlwbyBkZSBidXNjYSBjdXN0b21pemFkYSBwYXJhIHVtIGNhbXBvIGVtIGVzcGVjw61maWNvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBvRHluYW1pY1ZpZXdSZXF1ZXN0IHtcbiAgLyoqXG4gICAqIE3DqXRvZG8gcmVzcG9uc8OhdmVsIHBvciBlbnZpYXIgdW0gdmFsb3IgcXVlIHNlcsOhIGJ1c2NhZG8gbm8gc2VydmnDp28uXG4gICAqXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfEFycmF5PGFueT59IHZhbHVlIFZhbG9yIMO6bmljbyBhIHNlciBidXNjYWRvIG5hIGZvbnRlIGRlIGRhZG9zLlxuICAgKiBAcGFyYW0ge2FueX0gZmlsdGVyUGFyYW1zIFZhbG9yIG9wY2lvbmFsIHBhcmEgaW5mb3JtYXIgZmlsdHJvcyBjdXN0b21pemFkb3MuXG4gICAqL1xuICBnZXRPYmplY3RCeVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBBcnJheTxhbnk+LCBmaWx0ZXJQYXJhbXM/OiBhbnkpOiBPYnNlcnZhYmxlPGFueT47XG59XG4iXX0=
|