@pega/angular-sdk-components 0.23.6 → 0.24.1
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/_bridge/angular-pconnect.mjs +14 -2
- package/esm2022/lib/_bridge/helpers/sdk-pega-component-map.mjs +3 -1
- package/esm2022/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.mjs +6 -3
- package/esm2022/lib/_components/designSystemExtension/operator/operator.component.mjs +9 -5
- package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +2 -2
- package/esm2022/lib/_components/field/check-box/check-box.component.mjs +107 -42
- package/esm2022/lib/_components/field/group/group.component.mjs +6 -3
- package/esm2022/lib/_components/field/multiselect/multiselect.component.mjs +311 -0
- package/esm2022/lib/_components/field/multiselect/utils.mjs +187 -0
- package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +3 -3
- package/esm2022/lib/_components/field/time/time.component.mjs +5 -3
- package/esm2022/lib/_components/field/url/url.component.mjs +5 -3
- package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +6 -6
- package/esm2022/lib/_components/infra/multi-step/multi-step.component.mjs +3 -3
- package/esm2022/lib/_components/infra/navbar/navbar.component.mjs +6 -3
- package/esm2022/lib/_components/template/case-summary/case-summary.component.mjs +33 -4
- package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +8 -3
- package/esm2022/lib/_components/template/list-view/list-view.component.mjs +23 -25
- package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +2 -2
- package/esm2022/lib/_components/template/simple-table-manual/simple-table-manual.component.mjs +41 -12
- package/esm2022/lib/_components/template/wss-nav-bar/wss-nav-bar.component.mjs +5 -3
- package/esm2022/lib/_components/widget/attachment/attachment.component.mjs +7 -3
- package/esm2022/lib/_helpers/instructions-utils.mjs +36 -0
- package/esm2022/lib/_helpers/utils.mjs +2 -2
- package/fesm2022/pega-angular-sdk-components.mjs +778 -112
- package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
- package/lib/_bridge/angular-pconnect.d.ts +2 -0
- package/lib/_bridge/helpers/sdk-pega-component-map.d.ts +2 -0
- package/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.d.ts +2 -0
- package/lib/_components/designSystemExtension/operator/operator.component.d.ts +2 -1
- package/lib/_components/field/check-box/check-box.component.d.ts +18 -0
- package/lib/_components/field/multiselect/multiselect.component.d.ts +64 -0
- package/lib/_components/field/multiselect/utils.d.ts +8 -0
- package/lib/_components/field/time/time.component.d.ts +1 -0
- package/lib/_components/field/url/url.component.d.ts +1 -0
- package/lib/_components/infra/navbar/navbar.component.d.ts +2 -0
- package/lib/_components/template/case-summary/case-summary.component.d.ts +2 -0
- package/lib/_components/template/field-value-list/field-value-list.component.d.ts +2 -1
- package/lib/_components/template/list-view/list-view.component.d.ts +0 -2
- package/lib/_components/template/simple-table-manual/simple-table-manual.component.d.ts +2 -0
- package/lib/_components/template/wss-nav-bar/wss-nav-bar.component.d.ts +2 -0
- package/lib/_components/widget/attachment/attachment.component.d.ts +4 -0
- package/lib/_helpers/instructions-utils.d.ts +4 -0
- package/lib/doc/KeyReleaseUpdates.md +1 -1
- package/package.json +1 -1
|
@@ -121,7 +121,7 @@ export const buildFieldsForTable = (configFields, fields, showDeleteButton) => {
|
|
|
121
121
|
type: 'text',
|
|
122
122
|
label: fields[index].config.label || fields[index].config.caption,
|
|
123
123
|
fillAvailableSpace: !!field.config.fillAvailableSpace,
|
|
124
|
-
id: index
|
|
124
|
+
id: `${index}`,
|
|
125
125
|
name: field.config.value.substr(4),
|
|
126
126
|
cellRenderer: TABLE_CELL,
|
|
127
127
|
sort: false,
|
|
@@ -267,4 +267,4 @@ export const createPConnect = (contextName, referenceList, pageReference) => {
|
|
|
267
267
|
const { getPConnect } = PCore.createPConnect(config);
|
|
268
268
|
return getPConnect();
|
|
269
269
|
};
|
|
270
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zaW1wbGUtdGFibGUtbWFudWFsL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztBQUV4Qyw0RUFBNEU7QUFDNUUsMEJBQTBCO0FBQzFCLFNBQVMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLO0lBQ2pDLElBQUksS0FBSyxDQUFDO0lBQ1YsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO1FBQ2xCLEtBQUssTUFBTTtZQUNULEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxNQUFNO1lBQ1QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixLQUFLLEdBQUcsR0FBRyxDQUFDO1lBQ1osTUFBTTtRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCLEtBQUssVUFBVTtZQUNiLEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxVQUFVLENBQUM7UUFDaEIsS0FBSyxXQUFXO1lBQ2QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixnREFBZ0Q7WUFDaEQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxN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fSBmcm9tICcuLi8uLi8uLi9faGVscGVycy9jb21tb24nO1xuXG5leHBvcnQgY29uc3QgVEFCTEVfQ0VMTCA9ICdTZGtSZW5kZXJlcic7XG5leHBvcnQgY29uc3QgREVMRVRFX0lDT04gPSAnRGVsZXRlSWNvbic7XG5cbi8vIEJVRy02MTUyNTM6IFdvcmthcm91bmQgZm9yIGF1dG9zaXplIGluIHRhYmxlIHdpdGggbGF6eSBsb2FkaW5nIGNvbXBvbmVudHNcbi8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG5mdW5jdGlvbiBnZXRGaWVsZFdpZHRoKGZpZWxkLCBsYWJlbCkge1xuICBsZXQgd2lkdGg7XG4gIHN3aXRjaCAoZmllbGQudHlwZSkge1xuICAgIGNhc2UgJ1RpbWUnOlxuICAgICAgd2lkdGggPSAxNTA7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdEYXRlJzpcbiAgICAgIHdpZHRoID0gMTYwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnRGF0ZVRpbWUnOlxuICAgICAgd2lkdGggPSAyMDU7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdBdXRvQ29tcGxldGUnOlxuICAgIGNhc2UgJ1RleHRBcmVhJzpcbiAgICAgIHdpZHRoID0gMTkwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnQ3VycmVuY3knOlxuICAgIGNhc2UgJ1RleHRJbnB1dCc6XG4gICAgICB3aWR0aCA9IDE4MjtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0NoZWNrYm94JzpcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jYXNlLWRlY2xhcmF0aW9uc1xuICAgICAgY29uc3QgdGV4dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3NwYW4nKTtcbiAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQodGV4dCk7XG4gICAgICB0ZXh0LnN0eWxlLmZvbnRTaXplID0gJzEzcHgnO1xuICAgICAgdGV4dC5zdHlsZS5wb3NpdGlvbiA9ICdhYnNvbHV0ZSc7XG4gICAgICB0ZXh0LmlubmVySFRNTCA9IGxhYmVsO1xuICAgICAgd2lkdGggPSBNYXRoLmNlaWwodGV4dC5jbGllbnRXaWR0aCkgKyAzMDtcbiAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGV4dCk7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgd2lkdGggPSAxODA7XG4gIH1cbiAgcmV0dXJuIHdpZHRoO1xufVxuXG5leHBvcnQgY29uc3QgZ2V0Q29udGV4dCA9IHRoZVBDb25uID0+IHtcbiAgY29uc3QgY29udGV4dE5hbWUgPSB0aGVQQ29ubi5nZXRDb250ZXh0TmFtZSgpO1xuICBjb25zdCBwYWdlUmVmZXJlbmNlID0gdGhlUENvbm4uZ2V0UGFnZVJlZmVyZW5jZSgpO1xuICAvLyA4LjcgY2hhbmdlID0gcmVmZXJlbmNlTGlzdCBtYXkgbm93IGJlIGluIHRvcC1sZXZlbCBvZiBzdGF0ZSBwcm9wcyxcbiAgLy8gIG5vdCBhbHdheXMgaW4gY29uZmlnIG9mIHN0YXRlIHByb3BzXG4gIGxldCB7IHJlZmVyZW5jZUxpc3QgfSA9IHRoZVBDb25uLmdldFN0YXRlUHJvcHMoKT8uY29uZmlnIHx8IHRoZVBDb25uLmdldFN0YXRlUHJvcHMoKTtcbiAgY29uc3QgcGFnZVJlZmVyZW5jZUZvclJvd3MgPSByZWZlcmVuY2VMaXN0LnN0YXJ0c1dpdGgoJy4nKSA/IGAke3BhZ2VSZWZlcmVuY2V9LiR7cmVmZXJlbmNlTGlzdC5zdWJzdHJpbmcoMSl9YCA6IHJlZmVyZW5jZUxpc3Q7XG5cbiAgLy8gcmVtb3ZpbmcgXCJjYXNlSW5mby5jb250ZW50XCIgcHJlZml4IHRvIGF2b2lkIHNldHRpbmcgaXQgYXMgYSB0YXJnZXQgd2hpbGUgcHJlcGFyaW5nIHBhZ2VJbnN0cnVjdGlvbnNcbiAgcmVmZXJlbmNlTGlzdCA9IHBhZ2VSZWZlcmVuY2VGb3JSb3dzLnJlcGxhY2UoUENvcmUuZ2V0Q29uc3RhbnRzKCkuQ0FTRV9JTkZPLkNBU0VfSU5GT19DT05URU5ULCAnJyk7XG5cbiAgcmV0dXJuIHtcbiAgICBjb250ZXh0TmFtZSxcbiAgICByZWZlcmVuY2VMaXN0U3RyOiByZWZlcmVuY2VMaXN0LFxuICAgIHBhZ2VSZWZlcmVuY2VGb3JSb3dzXG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgcG9wdWxhdGVSb3dLZXkgPSByYXdEYXRhID0+IHtcbiAgcmV0dXJuIHJhd0RhdGEubWFwKChyb3csIGluZGV4KSA9PiB7XG4gICAgcmV0dXJuIHsgLi4ucm93LCBpbmRleCB9O1xuICB9KTtcbn07XG5cbmV4cG9ydCBjb25zdCBnZXRBcGlDb250ZXh0ID0gKHByb2Nlc3NlZERhdGEsIHBDb25uZWN0LCByZW9yZGVyQ0IpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBmZXRjaERhdGE6ICgpID0+IHtcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgICAgcmVzb2x2ZSh7XG4gICAgICAgICAgZGF0YTogcHJvY2Vzc2VkRGF0YSxcbiAgICAgICAgICBmaWx0ZXJlZFJlY29yZENvdW50OiBwcm9jZXNzZWREYXRhLmxlbmd0aCxcbiAgICAgICAgICB0b3RhbFJlY29yZENvdW50OiBwcm9jZXNzZWREYXRhLmxlbmd0aFxuICAgICAgICB9KTtcbiAgICAgIH0pO1xuICAgIH0sXG4gICAgZmV0Y2hQZXJzb25hbGl6YXRpb25zOiAoKSA9PiB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHt9KTtcbiAgICB9LFxuICAgIGFwcGx5Um93UmVvcmRlcjogKHNvdXJjZUtleSwgZGVzdGluYXRpb25LZXkpID0+IHtcbiAgICAgIC8vIGluZGV4ZXMgYXJlIGtleXMgZm9yIHNpbXBsZSB0YWJsZSBzbywgaXQgc2hvdWxkIHdvcmsuXG4gICAgICByZW9yZGVyQ0IoKTtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocENvbm5lY3QuZ2V0TGlzdEFjdGlvbnMoKS5yZW9yZGVyKHBhcnNlSW50KHNvdXJjZUtleSwgMTApLCBwYXJzZUludChkZXN0aW5hdGlvbktleSwgMTApKSk7XG4gICAgfVxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1aWxkTWV0YUZvckxpc3RWaWV3ID0gKGZpZWxkTWV0YWRhdGEsIGZpZWxkcywgdHlwZSwgcnVsZUNsYXNzLCBuYW1lLCBwcm9wZXJ0eUxhYmVsLCBpc0RhdGFPYmplY3QsIHBhcmFtZXRlcnMpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lLFxuICAgIGNvbmZpZzoge1xuICAgICAgdHlwZSxcbiAgICAgIHJlZmVyZW5jZUxpc3Q6IGZpZWxkTWV0YWRhdGEuZGF0YXNvdXJjZS5uYW1lLFxuICAgICAgcGFyYW1ldGVyczogcGFyYW1ldGVycyA/PyBmaWVsZE1ldGFkYXRhLmRhdGFzb3VyY2UucGFyYW1ldGVycyxcbiAgICAgIHBlcnNvbmFsaXphdGlvbjogZmFsc2UsXG4gICAgICBpc0RhdGFPYmplY3QsXG4gICAgICBncm91cGluZzogdHJ1ZSxcbiAgICAgIGdsb2JhbFNlYXJjaDogdHJ1ZSxcbiAgICAgIHJlb3JkZXJGaWVsZHM6IHRydWUsXG4gICAgICB0b2dnbGVGaWVsZFZpc2liaWxpdHk6IHRydWUsXG4gICAgICB0aXRsZTogcHJvcGVydHlMYWJlbCxcbiAgICAgIHBlcnNvbmFsaXphdGlvbklkOiAnJyAvKiBUT0RPICovLFxuICAgICAgdGVtcGxhdGU6ICdMaXN0VmlldycsXG4gICAgICBwcmVzZXRzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAncHJlc2V0cycsXG4gICAgICAgICAgdGVtcGxhdGU6ICdUYWJsZScsXG4gICAgICAgICAgY29uZmlnOiB7fSxcbiAgICAgICAgICBjaGlsZHJlbjogW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICBuYW1lOiAnQ29sdW1ucycsXG4gICAgICAgICAgICAgIHR5cGU6ICdSZWdpb24nLFxuICAgICAgICAgICAgICBjaGlsZHJlbjogZmllbGRzXG4gICAgICAgICAgICB9XG4gICAgICAgICAgXSxcbiAgICAgICAgICBsYWJlbDogcHJvcGVydHlMYWJlbCxcbiAgICAgICAgICBpZDogJ1BfJyAvKiBUT0RPICovXG4gICAgICAgIH1cbiAgICAgIF0sXG4gICAgICBydWxlQ2xhc3NcbiAgICB9XG4gIH07XG59O1xuXG5leHBvcnQgY29uc3QgYnVpbGRGaWVsZHNGb3JUYWJsZSA9IChjb25maWdGaWVsZHMsIGZpZWxkcywgc2hvd0RlbGV0ZUJ1dHRvbikgPT4ge1xuICBjb25zdCBmaWVsZERlZnMgPSBjb25maWdGaWVsZHM/Lm1hcCgoZmllbGQsIGluZGV4KSA9PiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6ICd0ZXh0JyxcbiAgICAgIGxhYmVsOiBmaWVsZHNbaW5kZXhdLmNvbmZpZy5sYWJlbCB8fCBmaWVsZHNbaW5kZXhdLmNvbmZpZy5jYXB0aW9uLFxuICAgICAgZmlsbEF2YWlsYWJsZVNwYWNlOiAhIWZpZWxkLmNvbmZpZy5maWxsQXZhaWxhYmxlU3BhY2UsXG4gICAgICBpZDogaW5kZXgsXG4gICAgICBuYW1lOiBmaWVsZC5jb25maWcudmFsdWUuc3Vic3RyKDQpLFxuICAgICAgY2VsbFJlbmRlcmVyOiBUQUJMRV9DRUxMLFxuICAgICAgc29ydDogZmFsc2UsXG4gICAgICBub0NvbnRleHRNZW51OiB0cnVlLFxuICAgICAgc2hvd01lbnU6IGZhbHNlLFxuICAgICAgbWV0YToge1xuICAgICAgICAuLi5maWVsZFxuICAgICAgfSxcbiAgICAgIC8vIEJVRy02MTUyNTM6IFdvcmthcm91bmQgZm9yIGF1dG9zaXplIGluIHRhYmxlIHdpdGggbGF6eSBsb2FkaW5nIGNvbXBvbmVudHNcbiAgICAgIHdpZHRoOiBnZXRGaWVsZFdpZHRoKGZpZWxkLCBmaWVsZHNbaW5kZXhdLmNvbmZpZy5sYWJlbClcbiAgICB9O1xuICB9KTtcblxuICAvLyBPTkxZIGFkZCBERUxFVEVfSUNPTiB0byBmaWVsZHMgd2hlbiB0aGUgdGFibGUgaXMgcmVxdWVzdGVkIGFzIEVESVRBQkxFXG4gIGlmIChzaG93RGVsZXRlQnV0dG9uKSB7XG4gICAgZmllbGREZWZzLnB1c2goe1xuICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgbGFiZWw6ICcnLFxuICAgICAgbmFtZTogREVMRVRFX0lDT04sXG4gICAgICBpZDogZmllbGREZWZzLmxlbmd0aCxcbiAgICAgIGNlbGxSZW5kZXJlcjogREVMRVRFX0lDT04sXG4gICAgICBzb3J0OiBmYWxzZSxcbiAgICAgIG5vQ29udGV4dE1lbnU6IHRydWUsXG4gICAgICBzaG93TWVudTogZmFsc2UsXG4gICAgICAvLyBCVUctNjE1MjUzOiBXb3JrYXJvdW5kIGZvciBhdXRvc2l6ZSBpbiB0YWJsZSB3aXRoIGxhenkgbG9hZGluZyBjb21wb25lbnRzXG4gICAgICB3aWR0aDogNDZcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBmaWVsZERlZnM7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWV0YUZvclRhYmxlID0gKGZpZWxkcywgcmVuZGVyTW9kZSkgPT4ge1xuICByZXR1cm4ge1xuICAgIGhlaWdodDoge1xuICAgICAgbWluSGVpZ2h0OiAnYXV0bycsXG4gICAgICBmaXRIZWlnaHRUb0VsZW1lbnQ6ICdmaXRIZWlnaHRUb0VsZW1lbnQnLFxuICAgICAgZGVsdGFBZGp1c3RtZW50OiAnZGVsdGFBZGp1c3RtZW50JyxcbiAgICAgIGF1dG9TaXplOiB0cnVlXG4gICAgfSxcbiAgICBmaWVsZERlZnM6IGZpZWxkcyxcbiAgICBpdGVtS2V5OiAnaW5kZXgnLFxuICAgIGdyb3VwaW5nOiBmYWxzZSxcbiAgICByZW9yZGVyRmllbGRzOiBmYWxzZSxcbiAgICByZW9yZGVySXRlbXM6IHJlbmRlck1vZGUgPT09ICdFZGl0YWJsZScsXG4gICAgZHJhZ0hhbmRsZTogcmVuZGVyTW9kZSA9PT0gJ0VkaXRhYmxlJyxcbiAgICBnbG9iYWxTZWFyY2g6IGZhbHNlLFxuICAgIHBlcnNvbmFsaXphdGlvbjogZmFsc2UsXG4gICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiBmYWxzZSxcbiAgICB0b29sYmFyOiBmYWxzZSxcbiAgICBmb290ZXI6IGZhbHNlLFxuICAgIGZpbHRlckV4cHJlc3Npb246IG51bGwsXG4gICAgZWRpdGluZzogZmFsc2UsXG4gICAgdGltZXpvbmU6IFBDb3JlLmdldEVudmlyb25tZW50SW5mbygpLmdldFRpbWVab25lKClcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJEYXRhQnlEYXRlID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGxldCB2YWx1ZSA9IGl0ZW1bZmlsdGVyT2JqLnJlZl0gIT0gbnVsbCA/PyBpdGVtW2ZpbHRlck9iai5yZWZdICE9ICcnID8gZ2V0U2Vjb25kcyhpdGVtW2ZpbHRlck9iai5yZWZdKSA6IG51bGw7XG4gIGxldCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlICE9IG51bGwgJiYgZmlsdGVyT2JqLmNvbnRhaW5zRmlsdGVyVmFsdWUgIT0gJycgPyBnZXRTZWNvbmRzKGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlKSA6IG51bGw7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdub3RlcXVhbCc6XG4gICAgICAvLyBiZWNhc3VlIGZpbHRlclZhbHVlIGlzIGluIG1pbnV0ZXMsIG5lZWQgdG8gaGF2ZSBhIHJhbmdlIG9mIGxlc3MgdGhhbiA2MCBzZWNvbnNcblxuICAgICAgaWYgKHZhbHVlICE9IG51bGwgJiYgZmlsdGVyVmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAvLyBnZXQgcmlkIG9mIG1pbGxpc2Vjb25zXG4gICAgICAgIHZhbHVlIC89IDEwMDA7XG4gICAgICAgIGZpbHRlclZhbHVlIC89IDEwMDA7XG5cbiAgICAgICAgY29uc3QgZGlmZiA9IHZhbHVlIC0gZmlsdGVyVmFsdWU7XG4gICAgICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IDYwKSB7XG4gICAgICAgICAgYktlZXAgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICBjYXNlICdhZnRlcic6XG4gICAgICBpZiAodmFsdWUgPCBmaWx0ZXJWYWx1ZSkge1xuICAgICAgICBiS2VlcCA9IGZhbHNlO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnYmVmb3JlJzpcbiAgICAgIGlmICh2YWx1ZSA+IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdudWxsJzpcbiAgICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdub3RudWxsJzpcbiAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG5leHBvcnQgY29uc3QgZmlsdGVyRGF0YUJ5Q29tbW9uRmllbGRzID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGNvbnN0IHZhbHVlID0gaXRlbVtmaWx0ZXJPYmoucmVmXS50b0xvd2VyQ2FzZSgpO1xuICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdjb250YWlucyc6XG4gICAgICBpZiAodmFsdWUuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPCAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdlcXVhbHMnOlxuICAgICAgaWYgKHZhbHVlICE9IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdzdGFydHN3aXRoJzpcbiAgICAgIGlmICh2YWx1ZS5pbmRleE9mKGZpbHRlclZhbHVlKSAhPSAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG4vKipcbiAqIFRoaXMgbWV0aG9kIHJldHVybnMgYSBjYWxsQmFjayBmdW5jdGlvbiBmb3IgQWRkIGFjdGlvbi5cbiAqIEBwYXJhbSB7b2JqZWN0fSBwQ29ubmVjdCAtIFBDb25uZWN0IG9iamVjdFxuICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gaW5kZXggb2YgdGhlIHBhZ2UgbGlzdCB0byBhZGRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEFkZFJvd0NhbGxiYWNrID0gKHBDb25uZWN0LCBpbmRleCkgPT4ge1xuICByZXR1cm4gKCkgPT4gcENvbm5lY3QuZ2V0TGlzdEFjdGlvbnMoKS5pbnNlcnQoe30sIGluZGV4KTtcbn07XG5cbi8qKlxuICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIFBDb25uZWN0IG9iamVjdCB3aXRoIHByb3BlciBvcHRpb25zIGZvciBBZGQgYW5kIERlbGV0ZSBhY3Rpb25zXG4gKiBAcGFyYW0ge3N0cmluZ30gY29udGV4dE5hbWUgLSBjb250ZXh0TmFtZVxuICogQHBhcmFtIHtzdHJpbmd9IHJlZmVyZW5jZUxpc3QgLSByZWZlcmVuY2VMaXN0XG4gKiBAcGFyYW0ge3N0cmluZ30gcGFnZVJlZmVyZW5jZSAtIHBhZ2VSZWZlcmVuY2VcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVBDb25uZWN0ID0gKGNvbnRleHROYW1lLCByZWZlcmVuY2VMaXN0LCBwYWdlUmVmZXJlbmNlKSA9PiB7XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgY29udGV4dDogY29udGV4dE5hbWUsXG4gICAgcGFnZVJlZmVyZW5jZSxcbiAgICByZWZlcmVuY2VMaXN0XG4gIH07XG5cbiAgLy8gY3JlYXRlIFBDb25uZWN0IG9iamVjdFxuICBjb25zdCBjb25maWcgPSB7IG1ldGE6IHt9LCBvcHRpb25zIH07XG4gIGNvbnN0IHsgZ2V0UENvbm5lY3QgfSA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KGNvbmZpZyk7XG5cbiAgcmV0dXJuIGdldFBDb25uZWN0KCk7XG59O1xuIl19
|
|
270
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVscGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy90ZW1wbGF0ZS9zaW1wbGUtdGFibGUtbWFudWFsL2hlbHBlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUM7QUFDeEMsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztBQUV4Qyw0RUFBNEU7QUFDNUUsMEJBQTBCO0FBQzFCLFNBQVMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLO0lBQ2pDLElBQUksS0FBSyxDQUFDO0lBQ1YsUUFBUSxLQUFLLENBQUMsSUFBSSxFQUFFO1FBQ2xCLEtBQUssTUFBTTtZQUNULEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxNQUFNO1lBQ1QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixLQUFLLEdBQUcsR0FBRyxDQUFDO1lBQ1osTUFBTTtRQUNSLEtBQUssY0FBYyxDQUFDO1FBQ3BCLEtBQUssVUFBVTtZQUNiLEtBQUssR0FBRyxHQUFHLENBQUM7WUFDWixNQUFNO1FBQ1IsS0FBSyxVQUFVLENBQUM7UUFDaEIsS0FBSyxXQUFXO1lBQ2QsS0FBSyxHQUFHLEdBQUcsQ0FBQztZQUNaLE1BQU07UUFDUixLQUFLLFVBQVU7WUFDYixnREFBZ0Q7WUFDaEQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUM1QyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNoQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1lBQ2pDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO1lBQ3ZCLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDekMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsTUFBTTtRQUNSO1lBQ0UsS0FBSyxHQUFHLEdBQUcsQ0FBQztLQUNmO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFFBQVEsQ0FBQyxFQUFFO0lBQ25DLE1BQU0sV0FBVyxHQUFHLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUM5QyxNQUFNLGFBQWEsR0FBRyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUNsRCxxRUFBcUU7SUFDckUsdUNBQXVDO0lBQ3ZDLElBQUksRUFBRSxhQUFhLEVBQUUsR0FBRyxRQUFRLENBQUMsYUFBYSxFQUFFLEVBQUUsTUFBTSxJQUFJLFFBQVEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUNyRixNQUFNLG9CQUFvQixHQUFHLGFBQWEsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsYUFBYSxJQUFJLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO0lBRTlILHNHQUFzRztJQUN0RyxhQUFhLEdBQUcsb0JBQW9CLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxTQUFTLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFbkcsT0FBTztRQUNMLFdBQVc7UUFDWCxnQkFBZ0IsRUFBRSxhQUFhO1FBQy9CLG9CQUFvQjtLQUNyQixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxFQUFFO0lBQ3RDLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsRUFBRTtRQUNoQyxPQUFPLEVBQUUsR0FBRyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDM0IsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxhQUFhLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxFQUFFO0lBQ2xFLE9BQU87UUFDTCxTQUFTLEVBQUUsR0FBRyxFQUFFO1lBQ2QsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDM0IsT0FBTyxDQUFDO29CQUNOLElBQUksRUFBRSxhQUFhO29CQUNuQixtQkFBbUIsRUFBRSxhQUFhLENBQUMsTUFBTTtvQkFDekMsZ0JBQWdCLEVBQUUsYUFBYSxDQUFDLE1BQU07aUJBQ3ZDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUNELHFCQUFxQixFQUFFLEdBQUcsRUFBRTtZQUMxQixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELGVBQWUsRUFBRSxDQUFDLFNBQVMsRUFBRSxjQUFjLEVBQUUsRUFBRTtZQUM3Qyx3REFBd0Q7WUFDeEQsU0FBUyxFQUFFLENBQUM7WUFDWixPQUFPLE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25ILENBQUM7S0FDRixDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLEVBQUU7SUFDNUgsT0FBTztRQUNMLElBQUk7UUFDSixNQUFNLEVBQUU7WUFDTixJQUFJO1lBQ0osYUFBYSxFQUFFLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSTtZQUM1QyxVQUFVLEVBQUUsVUFBVSxJQUFJLGFBQWEsQ0FBQyxVQUFVLENBQUMsVUFBVTtZQUM3RCxlQUFlLEVBQUUsS0FBSztZQUN0QixZQUFZO1lBQ1osUUFBUSxFQUFFLElBQUk7WUFDZCxZQUFZLEVBQUUsSUFBSTtZQUNsQixhQUFhLEVBQUUsSUFBSTtZQUNuQixxQkFBcUIsRUFBRSxJQUFJO1lBQzNCLEtBQUssRUFBRSxhQUFhO1lBQ3BCLGlCQUFpQixFQUFFLEVBQUUsQ0FBQyxVQUFVO1lBQ2hDLFFBQVEsRUFBRSxVQUFVO1lBQ3BCLE9BQU8sRUFBRTtnQkFDUDtvQkFDRSxJQUFJLEVBQUUsU0FBUztvQkFDZixRQUFRLEVBQUUsT0FBTztvQkFDakIsTUFBTSxFQUFFLEVBQUU7b0JBQ1YsUUFBUSxFQUFFO3dCQUNSOzRCQUNFLElBQUksRUFBRSxTQUFTOzRCQUNmLElBQUksRUFBRSxRQUFROzRCQUNkLFFBQVEsRUFBRSxNQUFNO3lCQUNqQjtxQkFDRjtvQkFDRCxLQUFLLEVBQUUsYUFBYTtvQkFDcEIsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVO2lCQUNwQjthQUNGO1lBQ0QsU0FBUztTQUNWO0tBQ0YsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxFQUFFO0lBQzVFLE1BQU0sU0FBUyxHQUFHLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUU7UUFDbkQsT0FBTztZQUNMLElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTztZQUNqRSxrQkFBa0IsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxrQkFBa0I7WUFDckQsRUFBRSxFQUFFLEdBQUcsS0FBSyxFQUFFO1lBQ2QsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDbEMsWUFBWSxFQUFFLFVBQVU7WUFDeEIsSUFBSSxFQUFFLEtBQUs7WUFDWCxhQUFhLEVBQUUsSUFBSTtZQUNuQixRQUFRLEVBQUUsS0FBSztZQUNmLElBQUksRUFBRTtnQkFDSixHQUFHLEtBQUs7YUFDVDtZQUNELDRFQUE0RTtZQUM1RSxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztTQUN4RCxDQUFDO0lBQ0osQ0FBQyxDQUFDLENBQUM7SUFFSCx5RUFBeUU7SUFDekUsSUFBSSxnQkFBZ0IsRUFBRTtRQUNwQixTQUFTLENBQUMsSUFBSSxDQUFDO1lBQ2IsSUFBSSxFQUFFLE1BQU07WUFDWixLQUFLLEVBQUUsRUFBRTtZQUNULElBQUksRUFBRSxXQUFXO1lBQ2pCLEVBQUUsRUFBRSxTQUFTLENBQUMsTUFBTTtZQUNwQixZQUFZLEVBQUUsV0FBVztZQUN6QixJQUFJLEVBQUUsS0FBSztZQUNYLGFBQWEsRUFBRSxJQUFJO1lBQ25CLFFBQVEsRUFBRSxLQUFLO1lBQ2YsNEVBQTRFO1lBQzVFLEtBQUssRUFBRSxFQUFFO1NBQ1YsQ0FBQyxDQUFDO0tBQ0o7SUFFRCxPQUFPLFNBQVMsQ0FBQztBQUNuQixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsRUFBRTtJQUN2RCxPQUFPO1FBQ0wsTUFBTSxFQUFFO1lBQ04sU0FBUyxFQUFFLE1BQU07WUFDakIsa0JBQWtCLEVBQUUsb0JBQW9CO1lBQ3hDLGVBQWUsRUFBRSxpQkFBaUI7WUFDbEMsUUFBUSxFQUFFLElBQUk7U0FDZjtRQUNELFNBQVMsRUFBRSxNQUFNO1FBQ2pCLE9BQU8sRUFBRSxPQUFPO1FBQ2hCLFFBQVEsRUFBRSxLQUFLO1FBQ2YsYUFBYSxFQUFFLEtBQUs7UUFDcEIsWUFBWSxFQUFFLFVBQVUsS0FBSyxVQUFVO1FBQ3ZDLFVBQVUsRUFBRSxVQUFVLEtBQUssVUFBVTtRQUNyQyxZQUFZLEVBQUUsS0FBSztRQUNuQixlQUFlLEVBQUUsS0FBSztRQUN0QixxQkFBcUIsRUFBRSxLQUFLO1FBQzVCLE9BQU8sRUFBRSxLQUFLO1FBQ2QsTUFBTSxFQUFFLEtBQUs7UUFDYixnQkFBZ0IsRUFBRSxJQUFJO1FBQ3RCLE9BQU8sRUFBRSxLQUFLO1FBQ2QsUUFBUSxFQUFFLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLFdBQVcsRUFBRTtLQUNuRCxDQUFDO0FBQ0osQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxJQUFJLEVBQUUsU0FBUyxFQUFFLEVBQUU7SUFDbEQsSUFBSSxLQUFLLENBQUM7SUFDVixJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzlHLElBQUksV0FBVyxHQUFHLFNBQVMsQ0FBQyxtQkFBbUIsSUFBSSxJQUFJLElBQUksU0FBUyxDQUFDLG1CQUFtQixJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFFbEosUUFBUSxTQUFTLENBQUMsY0FBYyxFQUFFO1FBQ2hDLEtBQUssVUFBVTtZQUNiLGlGQUFpRjtZQUVqRixJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksV0FBVyxJQUFJLElBQUksRUFBRTtnQkFDeEMseUJBQXlCO2dCQUN6QixLQUFLLElBQUksSUFBSSxDQUFDO2dCQUNkLFdBQVcsSUFBSSxJQUFJLENBQUM7Z0JBRXBCLE1BQU0sSUFBSSxHQUFHLEtBQUssR0FBRyxXQUFXLENBQUM7Z0JBQ2pDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxFQUFFO29CQUMxQixLQUFLLEdBQUcsS0FBSyxDQUFDO2lCQUNmO2FBQ0Y7WUFFRCxNQUFNO1FBQ1IsS0FBSyxPQUFPO1lBQ1YsSUFBSSxLQUFLLEdBQUcsV0FBVyxFQUFFO2dCQUN2QixLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQ2Y7WUFDRCxNQUFNO1FBQ1IsS0FBSyxRQUFRO1lBQ1gsSUFBSSxLQUFLLEdBQUcsV0FBVyxFQUFFO2dCQUN2QixLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQ2Y7WUFDRCxNQUFNO1FBQ1IsS0FBSyxNQUFNO1lBQ1QsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO2dCQUNqQixLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQ2Y7WUFDRCxNQUFNO1FBQ1IsS0FBSyxTQUFTO1lBQ1osSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO2dCQUNqQixLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQ2Y7WUFDRCxNQUFNO1FBQ1I7WUFDRSxNQUFNO0tBQ1Q7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHdCQUF3QixHQUFHLENBQUMsSUFBSSxFQUFFLFNBQVMsRUFBRSxFQUFFO0lBQzFELElBQUksS0FBSyxDQUFDO0lBQ1YsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNoRCxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsbUJBQW1CLENBQUMsV0FBVyxFQUFFLENBQUM7SUFFaEUsUUFBUSxTQUFTLENBQUMsY0FBYyxFQUFFO1FBQ2hDLEtBQUssVUFBVTtZQUNiLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2xDLEtBQUssR0FBRyxLQUFLLENBQUM7YUFDZjtZQUNELE1BQU07UUFDUixLQUFLLFFBQVE7WUFDWCxJQUFJLEtBQUssSUFBSSxXQUFXLEVBQUU7Z0JBQ3hCLEtBQUssR0FBRyxLQUFLLENBQUM7YUFDZjtZQUNELE1BQU07UUFDUixLQUFLLFlBQVk7WUFDZixJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNuQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2FBQ2Y7WUFDRCxNQUFNO1FBQ1I7WUFDRSxNQUFNO0tBQ1Q7SUFFRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUUsRUFBRTtJQUNuRCxPQUFPLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO0FBQzNELENBQUMsQ0FBQztBQUVGOzs7OztHQUtHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLENBQUMsV0FBVyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsRUFBRTtJQUMxRSxNQUFNLE9BQU8sR0FBRztRQUNkLE9BQU8sRUFBRSxXQUFXO1FBQ3BCLGFBQWE7UUFDYixhQUFhO0tBQ2QsQ0FBQztJQUVGLHlCQUF5QjtJQUN6QixNQUFNLE1BQU0sR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDckMsTUFBTSxFQUFFLFdBQVcsRUFBRSxHQUFHLEtBQUssQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFckQsT0FBTyxXQUFXLEVBQUUsQ0FBQztBQUN2QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRTZWNvbmRzIH0gZnJvbSAnLi4vLi4vLi4vX2hlbHBlcnMvY29tbW9uJztcblxuZXhwb3J0IGNvbnN0IFRBQkxFX0NFTEwgPSAnU2RrUmVuZGVyZXInO1xuZXhwb3J0IGNvbnN0IERFTEVURV9JQ09OID0gJ0RlbGV0ZUljb24nO1xuXG4vLyBCVUctNjE1MjUzOiBXb3JrYXJvdW5kIGZvciBhdXRvc2l6ZSBpbiB0YWJsZSB3aXRoIGxhenkgbG9hZGluZyBjb21wb25lbnRzXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuZnVuY3Rpb24gZ2V0RmllbGRXaWR0aChmaWVsZCwgbGFiZWwpIHtcbiAgbGV0IHdpZHRoO1xuICBzd2l0Y2ggKGZpZWxkLnR5cGUpIHtcbiAgICBjYXNlICdUaW1lJzpcbiAgICAgIHdpZHRoID0gMTUwO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnRGF0ZSc6XG4gICAgICB3aWR0aCA9IDE2MDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0RhdGVUaW1lJzpcbiAgICAgIHdpZHRoID0gMjA1O1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnQXV0b0NvbXBsZXRlJzpcbiAgICBjYXNlICdUZXh0QXJlYSc6XG4gICAgICB3aWR0aCA9IDE5MDtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0N1cnJlbmN5JzpcbiAgICBjYXNlICdUZXh0SW5wdXQnOlxuICAgICAgd2lkdGggPSAxODI7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdDaGVja2JveCc6XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY2FzZS1kZWNsYXJhdGlvbnNcbiAgICAgIGNvbnN0IHRleHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XG4gICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRleHQpO1xuICAgICAgdGV4dC5zdHlsZS5mb250U2l6ZSA9ICcxM3B4JztcbiAgICAgIHRleHQuc3R5bGUucG9zaXRpb24gPSAnYWJzb2x1dGUnO1xuICAgICAgdGV4dC5pbm5lckhUTUwgPSBsYWJlbDtcbiAgICAgIHdpZHRoID0gTWF0aC5jZWlsKHRleHQuY2xpZW50V2lkdGgpICsgMzA7XG4gICAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKHRleHQpO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIHdpZHRoID0gMTgwO1xuICB9XG4gIHJldHVybiB3aWR0aDtcbn1cblxuZXhwb3J0IGNvbnN0IGdldENvbnRleHQgPSB0aGVQQ29ubiA9PiB7XG4gIGNvbnN0IGNvbnRleHROYW1lID0gdGhlUENvbm4uZ2V0Q29udGV4dE5hbWUoKTtcbiAgY29uc3QgcGFnZVJlZmVyZW5jZSA9IHRoZVBDb25uLmdldFBhZ2VSZWZlcmVuY2UoKTtcbiAgLy8gOC43IGNoYW5nZSA9IHJlZmVyZW5jZUxpc3QgbWF5IG5vdyBiZSBpbiB0b3AtbGV2ZWwgb2Ygc3RhdGUgcHJvcHMsXG4gIC8vICBub3QgYWx3YXlzIGluIGNvbmZpZyBvZiBzdGF0ZSBwcm9wc1xuICBsZXQgeyByZWZlcmVuY2VMaXN0IH0gPSB0aGVQQ29ubi5nZXRTdGF0ZVByb3BzKCk/LmNvbmZpZyB8fCB0aGVQQ29ubi5nZXRTdGF0ZVByb3BzKCk7XG4gIGNvbnN0IHBhZ2VSZWZlcmVuY2VGb3JSb3dzID0gcmVmZXJlbmNlTGlzdC5zdGFydHNXaXRoKCcuJykgPyBgJHtwYWdlUmVmZXJlbmNlfS4ke3JlZmVyZW5jZUxpc3Quc3Vic3RyaW5nKDEpfWAgOiByZWZlcmVuY2VMaXN0O1xuXG4gIC8vIHJlbW92aW5nIFwiY2FzZUluZm8uY29udGVudFwiIHByZWZpeCB0byBhdm9pZCBzZXR0aW5nIGl0IGFzIGEgdGFyZ2V0IHdoaWxlIHByZXBhcmluZyBwYWdlSW5zdHJ1Y3Rpb25zXG4gIHJlZmVyZW5jZUxpc3QgPSBwYWdlUmVmZXJlbmNlRm9yUm93cy5yZXBsYWNlKFBDb3JlLmdldENvbnN0YW50cygpLkNBU0VfSU5GTy5DQVNFX0lORk9fQ09OVEVOVCwgJycpO1xuXG4gIHJldHVybiB7XG4gICAgY29udGV4dE5hbWUsXG4gICAgcmVmZXJlbmNlTGlzdFN0cjogcmVmZXJlbmNlTGlzdCxcbiAgICBwYWdlUmVmZXJlbmNlRm9yUm93c1xuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHBvcHVsYXRlUm93S2V5ID0gcmF3RGF0YSA9PiB7XG4gIHJldHVybiByYXdEYXRhLm1hcCgocm93LCBpbmRleCkgPT4ge1xuICAgIHJldHVybiB7IC4uLnJvdywgaW5kZXggfTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgZ2V0QXBpQ29udGV4dCA9IChwcm9jZXNzZWREYXRhLCBwQ29ubmVjdCwgcmVvcmRlckNCKSA9PiB7XG4gIHJldHVybiB7XG4gICAgZmV0Y2hEYXRhOiAoKSA9PiB7XG4gICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICAgIHJlc29sdmUoe1xuICAgICAgICAgIGRhdGE6IHByb2Nlc3NlZERhdGEsXG4gICAgICAgICAgZmlsdGVyZWRSZWNvcmRDb3VudDogcHJvY2Vzc2VkRGF0YS5sZW5ndGgsXG4gICAgICAgICAgdG90YWxSZWNvcmRDb3VudDogcHJvY2Vzc2VkRGF0YS5sZW5ndGhcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9LFxuICAgIGZldGNoUGVyc29uYWxpemF0aW9uczogKCkgPT4ge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSh7fSk7XG4gICAgfSxcbiAgICBhcHBseVJvd1Jlb3JkZXI6IChzb3VyY2VLZXksIGRlc3RpbmF0aW9uS2V5KSA9PiB7XG4gICAgICAvLyBpbmRleGVzIGFyZSBrZXlzIGZvciBzaW1wbGUgdGFibGUgc28sIGl0IHNob3VsZCB3b3JrLlxuICAgICAgcmVvcmRlckNCKCk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHBDb25uZWN0LmdldExpc3RBY3Rpb25zKCkucmVvcmRlcihwYXJzZUludChzb3VyY2VLZXksIDEwKSwgcGFyc2VJbnQoZGVzdGluYXRpb25LZXksIDEwKSkpO1xuICAgIH1cbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBidWlsZE1ldGFGb3JMaXN0VmlldyA9IChmaWVsZE1ldGFkYXRhLCBmaWVsZHMsIHR5cGUsIHJ1bGVDbGFzcywgbmFtZSwgcHJvcGVydHlMYWJlbCwgaXNEYXRhT2JqZWN0LCBwYXJhbWV0ZXJzKSA9PiB7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBjb25maWc6IHtcbiAgICAgIHR5cGUsXG4gICAgICByZWZlcmVuY2VMaXN0OiBmaWVsZE1ldGFkYXRhLmRhdGFzb3VyY2UubmFtZSxcbiAgICAgIHBhcmFtZXRlcnM6IHBhcmFtZXRlcnMgPz8gZmllbGRNZXRhZGF0YS5kYXRhc291cmNlLnBhcmFtZXRlcnMsXG4gICAgICBwZXJzb25hbGl6YXRpb246IGZhbHNlLFxuICAgICAgaXNEYXRhT2JqZWN0LFxuICAgICAgZ3JvdXBpbmc6IHRydWUsXG4gICAgICBnbG9iYWxTZWFyY2g6IHRydWUsXG4gICAgICByZW9yZGVyRmllbGRzOiB0cnVlLFxuICAgICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiB0cnVlLFxuICAgICAgdGl0bGU6IHByb3BlcnR5TGFiZWwsXG4gICAgICBwZXJzb25hbGl6YXRpb25JZDogJycgLyogVE9ETyAqLyxcbiAgICAgIHRlbXBsYXRlOiAnTGlzdFZpZXcnLFxuICAgICAgcHJlc2V0czogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ3ByZXNldHMnLFxuICAgICAgICAgIHRlbXBsYXRlOiAnVGFibGUnLFxuICAgICAgICAgIGNvbmZpZzoge30sXG4gICAgICAgICAgY2hpbGRyZW46IFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgbmFtZTogJ0NvbHVtbnMnLFxuICAgICAgICAgICAgICB0eXBlOiAnUmVnaW9uJyxcbiAgICAgICAgICAgICAgY2hpbGRyZW46IGZpZWxkc1xuICAgICAgICAgICAgfVxuICAgICAgICAgIF0sXG4gICAgICAgICAgbGFiZWw6IHByb3BlcnR5TGFiZWwsXG4gICAgICAgICAgaWQ6ICdQXycgLyogVE9ETyAqL1xuICAgICAgICB9XG4gICAgICBdLFxuICAgICAgcnVsZUNsYXNzXG4gICAgfVxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1aWxkRmllbGRzRm9yVGFibGUgPSAoY29uZmlnRmllbGRzLCBmaWVsZHMsIHNob3dEZWxldGVCdXR0b24pID0+IHtcbiAgY29uc3QgZmllbGREZWZzID0gY29uZmlnRmllbGRzPy5tYXAoKGZpZWxkLCBpbmRleCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiAndGV4dCcsXG4gICAgICBsYWJlbDogZmllbGRzW2luZGV4XS5jb25maWcubGFiZWwgfHwgZmllbGRzW2luZGV4XS5jb25maWcuY2FwdGlvbixcbiAgICAgIGZpbGxBdmFpbGFibGVTcGFjZTogISFmaWVsZC5jb25maWcuZmlsbEF2YWlsYWJsZVNwYWNlLFxuICAgICAgaWQ6IGAke2luZGV4fWAsXG4gICAgICBuYW1lOiBmaWVsZC5jb25maWcudmFsdWUuc3Vic3RyKDQpLFxuICAgICAgY2VsbFJlbmRlcmVyOiBUQUJMRV9DRUxMLFxuICAgICAgc29ydDogZmFsc2UsXG4gICAgICBub0NvbnRleHRNZW51OiB0cnVlLFxuICAgICAgc2hvd01lbnU6IGZhbHNlLFxuICAgICAgbWV0YToge1xuICAgICAgICAuLi5maWVsZFxuICAgICAgfSxcbiAgICAgIC8vIEJVRy02MTUyNTM6IFdvcmthcm91bmQgZm9yIGF1dG9zaXplIGluIHRhYmxlIHdpdGggbGF6eSBsb2FkaW5nIGNvbXBvbmVudHNcbiAgICAgIHdpZHRoOiBnZXRGaWVsZFdpZHRoKGZpZWxkLCBmaWVsZHNbaW5kZXhdLmNvbmZpZy5sYWJlbClcbiAgICB9O1xuICB9KTtcblxuICAvLyBPTkxZIGFkZCBERUxFVEVfSUNPTiB0byBmaWVsZHMgd2hlbiB0aGUgdGFibGUgaXMgcmVxdWVzdGVkIGFzIEVESVRBQkxFXG4gIGlmIChzaG93RGVsZXRlQnV0dG9uKSB7XG4gICAgZmllbGREZWZzLnB1c2goe1xuICAgICAgdHlwZTogJ3RleHQnLFxuICAgICAgbGFiZWw6ICcnLFxuICAgICAgbmFtZTogREVMRVRFX0lDT04sXG4gICAgICBpZDogZmllbGREZWZzLmxlbmd0aCxcbiAgICAgIGNlbGxSZW5kZXJlcjogREVMRVRFX0lDT04sXG4gICAgICBzb3J0OiBmYWxzZSxcbiAgICAgIG5vQ29udGV4dE1lbnU6IHRydWUsXG4gICAgICBzaG93TWVudTogZmFsc2UsXG4gICAgICAvLyBCVUctNjE1MjUzOiBXb3JrYXJvdW5kIGZvciBhdXRvc2l6ZSBpbiB0YWJsZSB3aXRoIGxhenkgbG9hZGluZyBjb21wb25lbnRzXG4gICAgICB3aWR0aDogNDZcbiAgICB9KTtcbiAgfVxuXG4gIHJldHVybiBmaWVsZERlZnM7XG59O1xuXG5leHBvcnQgY29uc3QgY3JlYXRlTWV0YUZvclRhYmxlID0gKGZpZWxkcywgcmVuZGVyTW9kZSkgPT4ge1xuICByZXR1cm4ge1xuICAgIGhlaWdodDoge1xuICAgICAgbWluSGVpZ2h0OiAnYXV0bycsXG4gICAgICBmaXRIZWlnaHRUb0VsZW1lbnQ6ICdmaXRIZWlnaHRUb0VsZW1lbnQnLFxuICAgICAgZGVsdGFBZGp1c3RtZW50OiAnZGVsdGFBZGp1c3RtZW50JyxcbiAgICAgIGF1dG9TaXplOiB0cnVlXG4gICAgfSxcbiAgICBmaWVsZERlZnM6IGZpZWxkcyxcbiAgICBpdGVtS2V5OiAnaW5kZXgnLFxuICAgIGdyb3VwaW5nOiBmYWxzZSxcbiAgICByZW9yZGVyRmllbGRzOiBmYWxzZSxcbiAgICByZW9yZGVySXRlbXM6IHJlbmRlck1vZGUgPT09ICdFZGl0YWJsZScsXG4gICAgZHJhZ0hhbmRsZTogcmVuZGVyTW9kZSA9PT0gJ0VkaXRhYmxlJyxcbiAgICBnbG9iYWxTZWFyY2g6IGZhbHNlLFxuICAgIHBlcnNvbmFsaXphdGlvbjogZmFsc2UsXG4gICAgdG9nZ2xlRmllbGRWaXNpYmlsaXR5OiBmYWxzZSxcbiAgICB0b29sYmFyOiBmYWxzZSxcbiAgICBmb290ZXI6IGZhbHNlLFxuICAgIGZpbHRlckV4cHJlc3Npb246IG51bGwsXG4gICAgZWRpdGluZzogZmFsc2UsXG4gICAgdGltZXpvbmU6IFBDb3JlLmdldEVudmlyb25tZW50SW5mbygpLmdldFRpbWVab25lKClcbiAgfTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaWx0ZXJEYXRhQnlEYXRlID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGxldCB2YWx1ZSA9IGl0ZW1bZmlsdGVyT2JqLnJlZl0gIT0gbnVsbCA/PyBpdGVtW2ZpbHRlck9iai5yZWZdICE9ICcnID8gZ2V0U2Vjb25kcyhpdGVtW2ZpbHRlck9iai5yZWZdKSA6IG51bGw7XG4gIGxldCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlICE9IG51bGwgJiYgZmlsdGVyT2JqLmNvbnRhaW5zRmlsdGVyVmFsdWUgIT0gJycgPyBnZXRTZWNvbmRzKGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlKSA6IG51bGw7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdub3RlcXVhbCc6XG4gICAgICAvLyBiZWNhc3VlIGZpbHRlclZhbHVlIGlzIGluIG1pbnV0ZXMsIG5lZWQgdG8gaGF2ZSBhIHJhbmdlIG9mIGxlc3MgdGhhbiA2MCBzZWNvbnNcblxuICAgICAgaWYgKHZhbHVlICE9IG51bGwgJiYgZmlsdGVyVmFsdWUgIT0gbnVsbCkge1xuICAgICAgICAvLyBnZXQgcmlkIG9mIG1pbGxpc2Vjb25zXG4gICAgICAgIHZhbHVlIC89IDEwMDA7XG4gICAgICAgIGZpbHRlclZhbHVlIC89IDEwMDA7XG5cbiAgICAgICAgY29uc3QgZGlmZiA9IHZhbHVlIC0gZmlsdGVyVmFsdWU7XG4gICAgICAgIGlmIChkaWZmID49IDAgJiYgZGlmZiA8IDYwKSB7XG4gICAgICAgICAgYktlZXAgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBicmVhaztcbiAgICBjYXNlICdhZnRlcic6XG4gICAgICBpZiAodmFsdWUgPCBmaWx0ZXJWYWx1ZSkge1xuICAgICAgICBiS2VlcCA9IGZhbHNlO1xuICAgICAgfVxuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnYmVmb3JlJzpcbiAgICAgIGlmICh2YWx1ZSA+IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdudWxsJzpcbiAgICAgIGlmICh2YWx1ZSAhPSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdub3RudWxsJzpcbiAgICAgIGlmICh2YWx1ZSA9PSBudWxsKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG5leHBvcnQgY29uc3QgZmlsdGVyRGF0YUJ5Q29tbW9uRmllbGRzID0gKGl0ZW0sIGZpbHRlck9iaikgPT4ge1xuICBsZXQgYktlZXA7XG4gIGNvbnN0IHZhbHVlID0gaXRlbVtmaWx0ZXJPYmoucmVmXS50b0xvd2VyQ2FzZSgpO1xuICBjb25zdCBmaWx0ZXJWYWx1ZSA9IGZpbHRlck9iai5jb250YWluc0ZpbHRlclZhbHVlLnRvTG93ZXJDYXNlKCk7XG5cbiAgc3dpdGNoIChmaWx0ZXJPYmouY29udGFpbnNGaWx0ZXIpIHtcbiAgICBjYXNlICdjb250YWlucyc6XG4gICAgICBpZiAodmFsdWUuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPCAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdlcXVhbHMnOlxuICAgICAgaWYgKHZhbHVlICE9IGZpbHRlclZhbHVlKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBjYXNlICdzdGFydHN3aXRoJzpcbiAgICAgIGlmICh2YWx1ZS5pbmRleE9mKGZpbHRlclZhbHVlKSAhPSAwKSB7XG4gICAgICAgIGJLZWVwID0gZmFsc2U7XG4gICAgICB9XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgYnJlYWs7XG4gIH1cblxuICByZXR1cm4gYktlZXA7XG59O1xuXG4vKipcbiAqIFRoaXMgbWV0aG9kIHJldHVybnMgYSBjYWxsQmFjayBmdW5jdGlvbiBmb3IgQWRkIGFjdGlvbi5cbiAqIEBwYXJhbSB7b2JqZWN0fSBwQ29ubmVjdCAtIFBDb25uZWN0IG9iamVjdFxuICogQHBhcmFtIHtudW1iZXJ9IGluZGV4IC0gaW5kZXggb2YgdGhlIHBhZ2UgbGlzdCB0byBhZGRcbiAqL1xuZXhwb3J0IGNvbnN0IGdldEFkZFJvd0NhbGxiYWNrID0gKHBDb25uZWN0LCBpbmRleCkgPT4ge1xuICByZXR1cm4gKCkgPT4gcENvbm5lY3QuZ2V0TGlzdEFjdGlvbnMoKS5pbnNlcnQoe30sIGluZGV4KTtcbn07XG5cbi8qKlxuICogVGhpcyBtZXRob2QgY3JlYXRlcyBhIFBDb25uZWN0IG9iamVjdCB3aXRoIHByb3BlciBvcHRpb25zIGZvciBBZGQgYW5kIERlbGV0ZSBhY3Rpb25zXG4gKiBAcGFyYW0ge3N0cmluZ30gY29udGV4dE5hbWUgLSBjb250ZXh0TmFtZVxuICogQHBhcmFtIHtzdHJpbmd9IHJlZmVyZW5jZUxpc3QgLSByZWZlcmVuY2VMaXN0XG4gKiBAcGFyYW0ge3N0cmluZ30gcGFnZVJlZmVyZW5jZSAtIHBhZ2VSZWZlcmVuY2VcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVBDb25uZWN0ID0gKGNvbnRleHROYW1lLCByZWZlcmVuY2VMaXN0LCBwYWdlUmVmZXJlbmNlKSA9PiB7XG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgY29udGV4dDogY29udGV4dE5hbWUsXG4gICAgcGFnZVJlZmVyZW5jZSxcbiAgICByZWZlcmVuY2VMaXN0XG4gIH07XG5cbiAgLy8gY3JlYXRlIFBDb25uZWN0IG9iamVjdFxuICBjb25zdCBjb25maWcgPSB7IG1ldGE6IHt9LCBvcHRpb25zIH07XG4gIGNvbnN0IHsgZ2V0UENvbm5lY3QgfSA9IFBDb3JlLmNyZWF0ZVBDb25uZWN0KGNvbmZpZyk7XG5cbiAgcmV0dXJuIGdldFBDb25uZWN0KCk7XG59O1xuIl19
|