@cqa-lib/cqa-ui 1.1.281 → 1.1.283

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.
@@ -31,8 +31,13 @@ export class CreateStepGroupComponent {
31
31
  ? 'Group 1 selected step into a container'
32
32
  : `Group ${n} selected steps into a container`;
33
33
  }
34
- /** Display label for a step in the "Steps to group" list (same pattern as normal-step display). */
34
+ /** Display label for a step in the "Steps to group" list (same as main step list - use action when available). */
35
35
  getStepDisplayLabel(step, index) {
36
+ // Prefer step.action - it matches the full display in the step list (e.g. "Enter @|password| in the Email")
37
+ const rawAction = step.action != null && String(step.action).trim() !== '' ? String(step.action) : '';
38
+ if (rawAction) {
39
+ return this.stripHtml(rawAction);
40
+ }
36
41
  if (isNormalStepConfig(step)) {
37
42
  return this.getNormalStepLabel(step);
38
43
  }
@@ -56,6 +61,15 @@ export class CreateStepGroupComponent {
56
61
  }
57
62
  return `Step ${index + 1}`;
58
63
  }
64
+ /** Strip HTML tags for plain-text display (action may contain spans for badges). */
65
+ stripHtml(html) {
66
+ if (typeof document !== 'undefined') {
67
+ const tmp = document.createElement('div');
68
+ tmp.innerHTML = html;
69
+ return (tmp.textContent || tmp.innerText || '').trim();
70
+ }
71
+ return html.replace(/<[^>]*>/g, '').replace(/&nbsp;/g, ' ').trim();
72
+ }
59
73
  getNormalStepLabel(step) {
60
74
  const params = step.parameters ?? [];
61
75
  const getParam = (name) => params.find((p) => p.name?.toLowerCase() === name.toLowerCase());
@@ -111,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.4.0", ngImpor
111
125
  }], cancelled: [{
112
126
  type: Output
113
127
  }] } });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXN0ZXAtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi90ZXN0LWNhc2UtZGV0YWlscy9jcmVhdGUtc3RlcC1ncm91cC9jcmVhdGUtc3RlcC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3Rlc3QtY2FzZS1kZXRhaWxzL2NyZWF0ZS1zdGVwLWdyb3VwL2NyZWF0ZS1zdGVwLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBSUwsa0JBQWtCLEdBQ25CLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQU1sQzs7Ozs7R0FLRztBQU1ILE1BQU0sT0FBTyx3QkFBd0I7SUFRbkMsWUFBNkIsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFQbkMsaUJBQVksR0FBeUIsRUFBRSxDQUFDO1FBRXZDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQTJCLENBQUM7UUFDMUQsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFLN0MsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNoRSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVE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QUNFLHVCQUF1QixRQUUzQixFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7a0dBR3JCLFlBQVk7c0JBQXBCLEtBQUs7Z0JBRUksV0FBVztzQkFBcEIsTUFBTTtnQkFDRyxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1xuICBUZXN0Q2FzZVN0ZXBDb25maWcsXG4gIE5vcm1hbFN0ZXBDb25maWcsXG4gIFRlc3RDYXNlRXZlbnRUeXBlLFxuICBpc05vcm1hbFN0ZXBDb25maWcsXG59IGZyb20gJy4uL3Rlc3QtY2FzZS1zdGVwLm1vZGVscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU3RlcEdyb3VwRm9ybURhdGEge1xuICBncm91cE5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDcmVhdGUgU3RlcCBHcm91cCBwYW5lbC9tb2RhbCBmb3IgVGVzdCBDYXNlIERldGFpbHMuXG4gKiBGb2xsb3dzIHRoZSBzYW1lIHN0cnVjdHVyZSBhbmQgdmFsaWRhdGlvbiBwYXR0ZXJuIGFzIFRlc3QgRGF0YSBNb2RhbCBhbmQgTG9vcCBTdGVwLlxuICogRGlzcGxheXMgc2VsZWN0ZWQgc3RlcHMgYW5kIGFsbG93cyBuYW1pbmcgdGhlIG5ldyBncm91cDsgZW1pdHMgY3JlYXRlR3JvdXAgd2l0aCBncm91cCBuYW1lXG4gKiBzbyB0aGUgaG9zdCBjYW4gY3JlYXRlIHRoZSBzdGVwIGdyb3VwIGFuZCByZXBsYWNlIHNlbGVjdGVkIHN0ZXBzIHdpdGggaXQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2NxYS1jcmVhdGUtc3RlcC1ncm91cCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jcmVhdGUtc3RlcC1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIGhvc3Q6IHsgY2xhc3M6ICdjcWEtdWktcm9vdCcgfSxcbn0pXG5leHBvcnQgY2xhc3MgQ3JlYXRlU3RlcEdyb3VwQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc3RlcHNUb0dyb3VwOiBUZXN0Q2FzZVN0ZXBDb25maWdbXSA9IFtdO1xuXG4gIEBPdXRwdXQoKSBjcmVhdGVHcm91cCA9IG5ldyBFdmVudEVtaXR0ZXI8Q3JlYXRlU3RlcEdyb3VwRm9ybURhdGE+KCk7XG4gIEBPdXRwdXQoKSBjYW5jZWxsZWQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgZm9ybTogRm9ybUdyb3VwO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgZmI6IEZvcm1CdWlsZGVyKSB7XG4gICAgdGhpcy5mb3JtID0gdGhpcy5mYi5ncm91cCh7XG4gICAgICBncm91cE5hbWU6IFsnJywgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluTGVuZ3RoKDEpXV0sXG4gICAgfSk7XG4gIH1cblxuICBnZXQgc3RlcHNDb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnN0ZXBzVG9Hcm91cD8ubGVuZ3RoID8/IDA7XG4gIH1cblxuICBnZXQgc3VidGl0bGVUZXh0KCk6IHN0cmluZyB7XG4gICAgY29uc3QgbiA9IHRoaXMuc3RlcHNDb3VudDtcbiAgICByZXR1cm4gbiA9PT0gMVxuICAgICAgPyAnR3JvdXAgMSBzZWxlY3RlZCBzdGVwIGludG8gYSBjb250YWluZXInXG4gICAgICA6IGBHcm91cCAke259IHNlbGVjdGVkIHN0ZXBzIGludG8gYSBjb250YWluZXJgO1xuICB9XG5cbiAgLyoqIERpc3BsYXkgbGFiZWwgZm9yIGEgc3RlcCBpbiB0aGUgXCJTdGVwcyB0byBncm91cFwiIGxpc3QgKHNhbWUgcGF0dGVybiBhcyBub3JtYWwtc3RlcCBkaXNwbGF5KS4gKi9cbiAgZ2V0U3RlcERpc3BsYXlMYWJlbChzdGVwOiBUZXN0Q2FzZVN0ZXBDb25maWcsIGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmIChpc05vcm1hbFN0ZXBDb25maWcoc3RlcCkpIHtcbiAgICAgIHJldHVybiB0aGlzLmdldE5vcm1hbFN0ZXBMYWJlbChzdGVwKTtcbiAgICB9XG4gICAgaWYgKCdncm91cE5hbWUnIGluIHN0ZXAgJiYgc3RlcC5ncm91cE5hbWUpIHtcbiAgICAgIHJldHVybiBzdGVwLmdyb3VwTmFtZTtcbiAgICB9XG4gICAgaWYgKCdjb25kaXRpb24nIGluIHN0ZXAgJiYgc3RlcC5jb25kaXRpb24pIHtcbiAgICAgIHJldHVybiBzdGVwLmNvbmRpdGlvbjtcbiAgICB9XG4gICAgaWYgKCdsb29wVHlwZScgaW4gc3RlcCkge1xuICAgICAgY29uc3QgbG9vcCA9IHN0ZXAgYXMgeyBsb29wVHlwZTogc3RyaW5nOyB0ZXN0RGF0YVByb2ZpbGU/OiBzdHJpbmc7IGNvbmRpdGlvbj86IHN0cmluZyB9O1xuICAgICAgaWYgKGxvb3AubG9vcFR5cGUgPT09ICdmb3InICYmIGxvb3AudGVzdERhdGFQcm9maWxlKSB7XG4gICAgICAgIHJldHVybiBgRm9yIGxvb3A6ICR7bG9vcC50ZXN0RGF0YVByb2ZpbGV9YDtcbiAgICAgIH1cbiAgICAgIGlmIChsb29wLmxvb3BUeXBlID09PSAnd2hpbGUnICYmIGxvb3AuY29uZGl0aW9uKSB7XG4gICAgICAgIHJldHVybiBgV2hpbGU6ICR7bG9vcC5jb25kaXRpb259YDtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHN0ZXAuZGVzY3JpcHRpb24pIHtcbiAgICAgIHJldHVybiBzdGVwLmRlc2NyaXB0aW9uO1xuICAgIH1cbiAgICByZXR1cm4gYFN0ZXAgJHtpbmRleCArIDF9YDtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9ybWFsU3RlcExhYmVsKHN0ZXA6IE5vcm1hbFN0ZXBDb25maWcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcmFtcyA9IHN0ZXAucGFyYW1ldGVycyA/PyBbXTtcbiAgICBjb25zdCBnZXRQYXJhbSA9IChuYW1lOiBzdHJpbmcpID0+XG4gICAgICBwYXJhbXMuZmluZCgocCkgPT4gcC5uYW1lPy50b0xvd2VyQ2FzZSgpID09PSBuYW1lLnRvTG93ZXJDYXNlKCkpO1xuICAgIGNvbnN0IHZhbCA9IChwOiB7IHZhbHVlPzogc3RyaW5nOyBkaXNwbGF5VmFsdWU/OiBzdHJpbmcgfSB8IHVuZGVmaW5lZCkgPT5cbiAgICAgIHA/LmRpc3BsYXlWYWx1ZSA/PyBwPy52YWx1ZSA/PyAnJztcblxuICAgIHN3aXRjaCAoc3RlcC5ldmVudFR5cGUgYXMgVGVzdENhc2VFdmVudFR5cGUpIHtcbiAgICAgIGNhc2UgJ25hdmlnYXRlJzoge1xuICAgICAgICBjb25zdCB1cmwgPSBnZXRQYXJhbSgndXJsJyk7XG4gICAgICAgIHJldHVybiB1cmwgPyBgTmF2aWdhdGUgdG8gJHt2YWwodXJsKX1gIDogJ05hdmlnYXRlJztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2FpLWFnZW50Jzoge1xuICAgICAgICBjb25zdCBpbnN0cnVjdGlvbnMgPSBnZXRQYXJhbSgnaW5zdHJ1Y3Rpb25zJykgPz8gZ2V0UGFyYW0oJ2Rlc2NyaXB0aW9uJyk7XG4gICAgICAgIHJldHVybiB2YWwoaW5zdHJ1Y3Rpb25zKSB8fCAnQUkgQWdlbnQgc3RlcCc7XG4gICAgICB9XG4gICAgICBjYXNlICd0eXBlJzpcbiAgICAgICAgcmV0dXJuIHZhbChnZXRQYXJhbSgndGV4dCcpKSB8fCAnVHlwZSc7XG4gICAgICBjYXNlICdjbGljayc6XG4gICAgICAgIHJldHVybiB2YWwoZ2V0UGFyYW0oJ3NlbGVjdG9yJykpID8gYENsaWNrICR7dmFsKGdldFBhcmFtKCdzZWxlY3RvcicpKX1gIDogJ0NsaWNrJztcbiAgICAgIGNhc2UgJ3ZlcmlmeSc6XG4gICAgICAgIHJldHVybiB2YWwoZ2V0UGFyYW0oJ2Rlc2NyaXB0aW9uJykpIHx8ICdWZXJpZnknO1xuICAgICAgY2FzZSAnY3VzdG9tJzoge1xuICAgICAgICBjb25zdCBkZXNjID0gZ2V0UGFyYW0oJ2Rlc2NyaXB0aW9uJykgPz8gZ2V0UGFyYW0oJ2FjdGlvbicpO1xuICAgICAgICByZXR1cm4gdmFsKGRlc2MpIHx8ICdDdXN0b20gc3RlcCc7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdmFsKGdldFBhcmFtKCdkZXNjcmlwdGlvbicpKSB8fCB2YWwocGFyYW1zWzBdKSB8fCAnU3RlcCc7XG4gICAgfVxuICB9XG5cbiAgb25DYW5jZWwoKTogdm9pZCB7XG4gICAgdGhpcy5jYW5jZWxsZWQuZW1pdCgpO1xuICB9XG5cbiAgb25DcmVhdGVHcm91cCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQgfHwgdGhpcy5zdGVwc0NvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBncm91cE5hbWUgPSAodGhpcy5mb3JtLmdldCgnZ3JvdXBOYW1lJyk/LnZhbHVlID8/ICcnKS50cmltKCk7XG4gICAgaWYgKCFncm91cE5hbWUpIHtcbiAgICAgIHRoaXMuZm9ybS5nZXQoJ2dyb3VwTmFtZScpPy5zZXRFcnJvcnMoeyByZXF1aXJlZDogdHJ1ZSB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jcmVhdGVHcm91cC5lbWl0KHsgZ3JvdXBOYW1lIH0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiY3FhLWJnLXdoaXRlIGNxYS1yb3VuZGVkLVsxMnB4XSBjcWEtc2hhZG93LWxnIGNxYS1ib3JkZXIgY3FhLWJvcmRlci1zb2xpZCBjcWEtYm9yZGVyLVsjRTVFN0VCXSBjcWEtdy1mdWxsIGNxYS1tYXgtdy1bNTAwcHhdIGNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTQgY3FhLXAtNiBjcWEtYm94LWJvcmRlciBjcWEtbWluLWgtMFwiPlxuICA8IS0tIEhlYWRlcjogdGl0bGUgKyBjbG9zZSAoWCkgLS0+XG4gIDxkaXYgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtc3RhcnQgY3FhLWp1c3RpZnktYmV0d2VlbiBjcWEtZ2FwLTJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtMSBjcWEtbWluLXctMFwiPlxuICAgICAgPGgyIGNsYXNzPVwiY3FhLXRleHQtWzE2cHhdIGNxYS1sZWFkaW5nLVsyNHB4XSBjcWEtZm9udC1ib2xkIGNxYS10ZXh0LVsjMTExODI3XSBjcWEtbS0wXCI+XG4gICAgICAgIENyZWF0ZSBzdGVwIGdyb3VwXG4gICAgICA8L2gyPlxuICAgICAgPHAgY2xhc3M9XCJjcWEtdGV4dC1bMTRweF0gY3FhLWxlYWRpbmctWzIwcHhdIGNxYS10ZXh0LVsjNjQ3NDhCXSBjcWEtbS0wXCI+XG4gICAgICAgIHt7IHN1YnRpdGxlVGV4dCB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIlxuICAgICAgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1qdXN0aWZ5LWNlbnRlciBjcWEtbWluLWgtNyBjcWEtbWluLXctNyBjcWEtcm91bmRlZCBjcWEtdGV4dC1bIzZCNzI4MF0gaG92ZXI6Y3FhLWJnLVsjRjNGNEY2XSBjcWEtcC0wIGNxYS1mbGV4LXNocmluay0wXCJcbiAgICAgIHRpdGxlPVwiQ2xvc2VcIlxuICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlXCI+XG4gICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgPHBhdGggZD1cIk0xOCA2TDYgMThNNiA2bDEyIDEyXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuICA8IS0tIEdyb3VwIG5hbWUgKiAtLT5cbiAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTEuNVwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImNxYS10ZXh0LXNtIGNxYS1mb250LW1lZGl1bSBjcWEtdGV4dC1bIzE2MTYxN11cIj5cbiAgICAgIEdyb3VwIG5hbWUgPHNwYW4gY2xhc3M9XCJjcWEtdGV4dC1yZWQtNTAwXCI+Kjwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuICAgIDxjcWEtY3VzdG9tLWlucHV0XG4gICAgICBwbGFjZWhvbGRlcj1cImUuZy4sIEF1dGhlbnRpY2F0aW9uIGZsb3dcIlxuICAgICAgW3ZhbHVlXT1cImZvcm0uZ2V0KCdncm91cE5hbWUnKT8udmFsdWVcIlxuICAgICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICAgIHNpemU9XCJtZFwiXG4gICAgICAodmFsdWVDaGFuZ2UpPVwiZm9ybS5nZXQoJ2dyb3VwTmFtZScpPy5zZXRWYWx1ZSgkZXZlbnQpOyBmb3JtLmdldCgnZ3JvdXBOYW1lJyk/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKVwiPlxuICAgIDwvY3FhLWN1c3RvbS1pbnB1dD5cbiAgICA8cCAqbmdJZj1cImZvcm0uZ2V0KCdncm91cE5hbWUnKT8uaW52YWxpZCAmJiBmb3JtLmdldCgnZ3JvdXBOYW1lJyk/LnRvdWNoZWRcIiBjbGFzcz1cImNxYS10ZXh0LXhzIGNxYS10ZXh0LXJlZC01MDAgY3FhLW0tMFwiPlxuICAgICAgR3JvdXAgbmFtZSBpcyByZXF1aXJlZC5cbiAgICA8L3A+XG4gIDwvZGl2PlxuXG4gIDwhLS0gU3RlcHMgdG8gZ3JvdXAgKE4pIC0tPlxuICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtMlwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImNxYS1mb250LXNlbWlib2xkIGNxYS10ZXh0LVsxMnB4XSBjcWEtbGVhZGluZy1bMTAwJV0gY3FhLXRyYWNraW5nLW5vcm1hbCBjcWEtdGV4dC1bIzBBMEEwQV0gY3FhLWFsaWduLW1pZGRsZVwiPlxuICAgICAgU3RlcHMgdG8gZ3JvdXAgKHt7IHN0ZXBzQ291bnQgfX0pXG4gICAgPC9sYWJlbD5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLXNjcm9sbGJhci1oaWRlIGNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTIgY3FhLW1heC1oLVsyMDBweF0gY3FhLW92ZXJmbG93LXktYXV0byBjcWEtcm91bmRlZC1bOHB4XSBjcWEtcC1bNnB4XSBjcWEtYm9yZGVyIGNxYS1ib3JkZXItc29saWQgY3FhLWJvcmRlci1bcmdiYSgwLDAsMCwwLjEpXVwiPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdGb3I9XCJsZXQgc3RlcCBvZiBzdGVwc1RvR3JvdXA7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1jZW50ZXIgY3FhLWdhcC0yIGNxYS1yb3VuZGVkLVs0cHhdIGNxYS1weS1bNHB4XSBjcWEtcHgtWzhweF0gY3FhLWJnLVtyZ2JhKDIxNiwyMTcsMjUyLDAuMyldXCI+XG4gICAgICAgIDwhLS0gTnVtYmVyZWQgYmFkZ2UgLS0+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1qdXN0aWZ5LWNlbnRlciBjcWEtdy03IGNxYS1oLTcgY3FhLXJvdW5kZWQtZnVsbCBjcWEtYmctWyMzRjQzRUVdIGNxYS10ZXh0LXdoaXRlIGNxYS10ZXh0LVsxMHB4XSBjcWEtbGVhZGluZy1bMTVweF0gY3FhLWZvbnQtbWVkaXVtIGNxYS1mbGV4LXNocmluay0wXCI+XG4gICAgICAgICAge3sgaSArIDEgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNxYS1mb250LW1lZGl1bSBjcWEtdGV4dC1bMTBweF0gY3FhLWxlYWRpbmctWzE1cHhdIGNxYS10cmFja2luZy1bMHB4XSBjcWEtdGV4dC1bIzBCMEIwQ10gY3FhLWZsZXgtMSBjcWEtbWluLXctMCBjcWEtdHJ1bmNhdGVcIj5cbiAgICAgICAgICB7eyBnZXRTdGVwRGlzcGxheUxhYmVsKHN0ZXAsIGkpIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIEFjdGlvbnM6IENhbmNlbCB8IENyZWF0ZSBncm91cCAtLT5cbiAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1zdHJldGNoIGNxYS13LWZ1bGwgY3FhLWdhcC0zXCI+XG4gICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4LTEgY3FhLW1pbi13LTBcIj5cbiAgICAgIDxjcWEtYnV0dG9uXG4gICAgICAgIHZhcmlhbnQ9XCJvdXRsaW5lZFwiXG4gICAgICAgIGJ0blNpemU9XCJsZ1wiXG4gICAgICAgIHRleHQ9XCJDYW5jZWxcIlxuICAgICAgICBbZnVsbFdpZHRoXT1cInRydWVcIlxuICAgICAgICBbY3VzdG9tQ2xhc3NdPVwiJ2NxYS10ZXh0LVsxNHB4XSBjcWEtcHktWzlweF0gY3FhLWJvcmRlci1bIzQxNDE0Nl0nXCJcbiAgICAgICAgKGNsaWNrZWQpPVwib25DYW5jZWwoKVwiPlxuICAgICAgPC9jcWEtYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjcWEtZmxleC0xIGNxYS1taW4tdy0wXCI+XG4gICAgICA8Y3FhLWJ1dHRvblxuICAgICAgICB2YXJpYW50PVwiZmlsbGVkXCJcbiAgICAgICAgYnRuU2l6ZT1cImxnXCJcbiAgICAgICAgdGV4dD1cIkNyZWF0ZSBncm91cFwiXG4gICAgICAgIFtmdWxsV2lkdGhdPVwidHJ1ZVwiXG4gICAgICAgIFtjdXN0b21DbGFzc109XCInY3FhLXRleHQtWzE0cHhdIGNxYS1weS1bOXB4XSBjcWEtYm9yZGVyLVsjM0Y0M0VFXSBjcWEtYmctWyMzRjQzRUVdJ1wiXG4gICAgICAgIChjbGlja2VkKT1cIm9uQ3JlYXRlR3JvdXAoKVwiPlxuICAgICAgPC9jcWEtYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLXN0ZXAtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi90ZXN0LWNhc2UtZGV0YWlscy9jcmVhdGUtc3RlcC1ncm91cC9jcmVhdGUtc3RlcC1ncm91cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL3Rlc3QtY2FzZS1kZXRhaWxzL2NyZWF0ZS1zdGVwLWdyb3VwL2NyZWF0ZS1zdGVwLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUEwQixVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNwRSxPQUFPLEVBSUwsa0JBQWtCLEdBQ25CLE1BQU0sMEJBQTBCLENBQUM7Ozs7OztBQU1sQzs7Ozs7R0FLRztBQU1ILE1BQU0sT0FBTyx3QkFBd0I7SUFRbkMsWUFBNkIsRUFBZTtRQUFmLE9BQUUsR0FBRixFQUFFLENBQWE7UUFQbkMsaUJBQVksR0FBeUIsRUFBRSxDQUFDO1FBRXZDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQTJCLENBQUM7UUFDMUQsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7UUFLN0MsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN4QixTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNoRSxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLE1BQU0sSUFBSSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVE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QyxDQUFDLElBQUksTUFBTSxDQUFDO1NBQ25FO0lBQ0gsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLENBQUMsRUFBRTtZQUM5QyxJQUFJLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDN0IsT0FBTztTQUNSO1FBQ0QsTUFBTSxTQUFTLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDbkUsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1lBQzFELE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDOztxSEFoSFUsd0JBQXdCO3lHQUF4Qix3QkFBd0IsaU5DeEJyQyxtMkhBc0ZBOzJGRDlEYSx3QkFBd0I7a0JBTHBDLFNBQVM7K0JBQ0UsdUJBQXVCLFFBRTNCLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRTtrR0FHckIsWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxXQUFXO3NCQUFwQixNQUFNO2dCQUNHLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7XG4gIFRlc3RDYXNlU3RlcENvbmZpZyxcbiAgTm9ybWFsU3RlcENvbmZpZyxcbiAgVGVzdENhc2VFdmVudFR5cGUsXG4gIGlzTm9ybWFsU3RlcENvbmZpZyxcbn0gZnJvbSAnLi4vdGVzdC1jYXNlLXN0ZXAubW9kZWxzJztcblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVTdGVwR3JvdXBGb3JtRGF0YSB7XG4gIGdyb3VwTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIENyZWF0ZSBTdGVwIEdyb3VwIHBhbmVsL21vZGFsIGZvciBUZXN0IENhc2UgRGV0YWlscy5cbiAqIEZvbGxvd3MgdGhlIHNhbWUgc3RydWN0dXJlIGFuZCB2YWxpZGF0aW9uIHBhdHRlcm4gYXMgVGVzdCBEYXRhIE1vZGFsIGFuZCBMb29wIFN0ZXAuXG4gKiBEaXNwbGF5cyBzZWxlY3RlZCBzdGVwcyBhbmQgYWxsb3dzIG5hbWluZyB0aGUgbmV3IGdyb3VwOyBlbWl0cyBjcmVhdGVHcm91cCB3aXRoIGdyb3VwIG5hbWVcbiAqIHNvIHRoZSBob3N0IGNhbiBjcmVhdGUgdGhlIHN0ZXAgZ3JvdXAgYW5kIHJlcGxhY2Ugc2VsZWN0ZWQgc3RlcHMgd2l0aCBpdC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3FhLWNyZWF0ZS1zdGVwLWdyb3VwJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NyZWF0ZS1zdGVwLWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgaG9zdDogeyBjbGFzczogJ2NxYS11aS1yb290JyB9LFxufSlcbmV4cG9ydCBjbGFzcyBDcmVhdGVTdGVwR3JvdXBDb21wb25lbnQge1xuICBASW5wdXQoKSBzdGVwc1RvR3JvdXA6IFRlc3RDYXNlU3RlcENvbmZpZ1tdID0gW107XG5cbiAgQE91dHB1dCgpIGNyZWF0ZUdyb3VwID0gbmV3IEV2ZW50RW1pdHRlcjxDcmVhdGVTdGVwR3JvdXBGb3JtRGF0YT4oKTtcbiAgQE91dHB1dCgpIGNhbmNlbGxlZCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIpIHtcbiAgICB0aGlzLmZvcm0gPSB0aGlzLmZiLmdyb3VwKHtcbiAgICAgIGdyb3VwTmFtZTogWycnLCBbVmFsaWRhdG9ycy5yZXF1aXJlZCwgVmFsaWRhdG9ycy5taW5MZW5ndGgoMSldXSxcbiAgICB9KTtcbiAgfVxuXG4gIGdldCBzdGVwc0NvdW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc3RlcHNUb0dyb3VwPy5sZW5ndGggPz8gMDtcbiAgfVxuXG4gIGdldCBzdWJ0aXRsZVRleHQoKTogc3RyaW5nIHtcbiAgICBjb25zdCBuID0gdGhpcy5zdGVwc0NvdW50O1xuICAgIHJldHVybiBuID09PSAxXG4gICAgICA/ICdHcm91cCAxIHNlbGVjdGVkIHN0ZXAgaW50byBhIGNvbnRhaW5lcidcbiAgICAgIDogYEdyb3VwICR7bn0gc2VsZWN0ZWQgc3RlcHMgaW50byBhIGNvbnRhaW5lcmA7XG4gIH1cblxuICAvKiogRGlzcGxheSBsYWJlbCBmb3IgYSBzdGVwIGluIHRoZSBcIlN0ZXBzIHRvIGdyb3VwXCIgbGlzdCAoc2FtZSBhcyBtYWluIHN0ZXAgbGlzdCAtIHVzZSBhY3Rpb24gd2hlbiBhdmFpbGFibGUpLiAqL1xuICBnZXRTdGVwRGlzcGxheUxhYmVsKHN0ZXA6IFRlc3RDYXNlU3RlcENvbmZpZywgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgLy8gUHJlZmVyIHN0ZXAuYWN0aW9uIC0gaXQgbWF0Y2hlcyB0aGUgZnVsbCBkaXNwbGF5IGluIHRoZSBzdGVwIGxpc3QgKGUuZy4gXCJFbnRlciBAfHBhc3N3b3JkfCBpbiB0aGUgRW1haWxcIilcbiAgICBjb25zdCByYXdBY3Rpb24gPSBzdGVwLmFjdGlvbiAhPSBudWxsICYmIFN0cmluZyhzdGVwLmFjdGlvbikudHJpbSgpICE9PSAnJyA/IFN0cmluZyhzdGVwLmFjdGlvbikgOiAnJztcbiAgICBpZiAocmF3QWN0aW9uKSB7XG4gICAgICByZXR1cm4gdGhpcy5zdHJpcEh0bWwocmF3QWN0aW9uKTtcbiAgICB9XG4gICAgaWYgKGlzTm9ybWFsU3RlcENvbmZpZyhzdGVwKSkge1xuICAgICAgcmV0dXJuIHRoaXMuZ2V0Tm9ybWFsU3RlcExhYmVsKHN0ZXApO1xuICAgIH1cbiAgICBpZiAoJ2dyb3VwTmFtZScgaW4gc3RlcCAmJiBzdGVwLmdyb3VwTmFtZSkge1xuICAgICAgcmV0dXJuIHN0ZXAuZ3JvdXBOYW1lO1xuICAgIH1cbiAgICBpZiAoJ2NvbmRpdGlvbicgaW4gc3RlcCAmJiBzdGVwLmNvbmRpdGlvbikge1xuICAgICAgcmV0dXJuIHN0ZXAuY29uZGl0aW9uO1xuICAgIH1cbiAgICBpZiAoJ2xvb3BUeXBlJyBpbiBzdGVwKSB7XG4gICAgICBjb25zdCBsb29wID0gc3RlcCBhcyB7IGxvb3BUeXBlOiBzdHJpbmc7IHRlc3REYXRhUHJvZmlsZT86IHN0cmluZzsgY29uZGl0aW9uPzogc3RyaW5nIH07XG4gICAgICBpZiAobG9vcC5sb29wVHlwZSA9PT0gJ2ZvcicgJiYgbG9vcC50ZXN0RGF0YVByb2ZpbGUpIHtcbiAgICAgICAgcmV0dXJuIGBGb3IgbG9vcDogJHtsb29wLnRlc3REYXRhUHJvZmlsZX1gO1xuICAgICAgfVxuICAgICAgaWYgKGxvb3AubG9vcFR5cGUgPT09ICd3aGlsZScgJiYgbG9vcC5jb25kaXRpb24pIHtcbiAgICAgICAgcmV0dXJuIGBXaGlsZTogJHtsb29wLmNvbmRpdGlvbn1gO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoc3RlcC5kZXNjcmlwdGlvbikge1xuICAgICAgcmV0dXJuIHN0ZXAuZGVzY3JpcHRpb247XG4gICAgfVxuICAgIHJldHVybiBgU3RlcCAke2luZGV4ICsgMX1gO1xuICB9XG5cbiAgLyoqIFN0cmlwIEhUTUwgdGFncyBmb3IgcGxhaW4tdGV4dCBkaXNwbGF5IChhY3Rpb24gbWF5IGNvbnRhaW4gc3BhbnMgZm9yIGJhZGdlcykuICovXG4gIHByaXZhdGUgc3RyaXBIdG1sKGh0bWw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgIGNvbnN0IHRtcCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgdG1wLmlubmVySFRNTCA9IGh0bWw7XG4gICAgICByZXR1cm4gKHRtcC50ZXh0Q29udGVudCB8fCB0bXAuaW5uZXJUZXh0IHx8ICcnKS50cmltKCk7XG4gICAgfVxuICAgIHJldHVybiBodG1sLnJlcGxhY2UoLzxbXj5dKj4vZywgJycpLnJlcGxhY2UoLyZuYnNwOy9nLCAnICcpLnRyaW0oKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0Tm9ybWFsU3RlcExhYmVsKHN0ZXA6IE5vcm1hbFN0ZXBDb25maWcpOiBzdHJpbmcge1xuICAgIGNvbnN0IHBhcmFtcyA9IHN0ZXAucGFyYW1ldGVycyA/PyBbXTtcbiAgICBjb25zdCBnZXRQYXJhbSA9IChuYW1lOiBzdHJpbmcpID0+XG4gICAgICBwYXJhbXMuZmluZCgocCkgPT4gcC5uYW1lPy50b0xvd2VyQ2FzZSgpID09PSBuYW1lLnRvTG93ZXJDYXNlKCkpO1xuICAgIGNvbnN0IHZhbCA9IChwOiB7IHZhbHVlPzogc3RyaW5nOyBkaXNwbGF5VmFsdWU/OiBzdHJpbmcgfSB8IHVuZGVmaW5lZCkgPT5cbiAgICAgIHA/LmRpc3BsYXlWYWx1ZSA/PyBwPy52YWx1ZSA/PyAnJztcblxuICAgIHN3aXRjaCAoc3RlcC5ldmVudFR5cGUgYXMgVGVzdENhc2VFdmVudFR5cGUpIHtcbiAgICAgIGNhc2UgJ25hdmlnYXRlJzoge1xuICAgICAgICBjb25zdCB1cmwgPSBnZXRQYXJhbSgndXJsJyk7XG4gICAgICAgIHJldHVybiB1cmwgPyBgTmF2aWdhdGUgdG8gJHt2YWwodXJsKX1gIDogJ05hdmlnYXRlJztcbiAgICAgIH1cbiAgICAgIGNhc2UgJ2FpLWFnZW50Jzoge1xuICAgICAgICBjb25zdCBpbnN0cnVjdGlvbnMgPSBnZXRQYXJhbSgnaW5zdHJ1Y3Rpb25zJykgPz8gZ2V0UGFyYW0oJ2Rlc2NyaXB0aW9uJyk7XG4gICAgICAgIHJldHVybiB2YWwoaW5zdHJ1Y3Rpb25zKSB8fCAnQUkgQWdlbnQgc3RlcCc7XG4gICAgICB9XG4gICAgICBjYXNlICd0eXBlJzpcbiAgICAgICAgcmV0dXJuIHZhbChnZXRQYXJhbSgndGV4dCcpKSB8fCAnVHlwZSc7XG4gICAgICBjYXNlICdjbGljayc6XG4gICAgICAgIHJldHVybiB2YWwoZ2V0UGFyYW0oJ3NlbGVjdG9yJykpID8gYENsaWNrICR7dmFsKGdldFBhcmFtKCdzZWxlY3RvcicpKX1gIDogJ0NsaWNrJztcbiAgICAgIGNhc2UgJ3ZlcmlmeSc6XG4gICAgICAgIHJldHVybiB2YWwoZ2V0UGFyYW0oJ2Rlc2NyaXB0aW9uJykpIHx8ICdWZXJpZnknO1xuICAgICAgY2FzZSAnY3VzdG9tJzoge1xuICAgICAgICBjb25zdCBkZXNjID0gZ2V0UGFyYW0oJ2Rlc2NyaXB0aW9uJykgPz8gZ2V0UGFyYW0oJ2FjdGlvbicpO1xuICAgICAgICByZXR1cm4gdmFsKGRlc2MpIHx8ICdDdXN0b20gc3RlcCc7XG4gICAgICB9XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdmFsKGdldFBhcmFtKCdkZXNjcmlwdGlvbicpKSB8fCB2YWwocGFyYW1zWzBdKSB8fCAnU3RlcCc7XG4gICAgfVxuICB9XG5cbiAgb25DYW5jZWwoKTogdm9pZCB7XG4gICAgdGhpcy5jYW5jZWxsZWQuZW1pdCgpO1xuICB9XG5cbiAgb25DcmVhdGVHcm91cCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mb3JtLmludmFsaWQgfHwgdGhpcy5zdGVwc0NvdW50ID09PSAwKSB7XG4gICAgICB0aGlzLmZvcm0ubWFya0FsbEFzVG91Y2hlZCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBncm91cE5hbWUgPSAodGhpcy5mb3JtLmdldCgnZ3JvdXBOYW1lJyk/LnZhbHVlID8/ICcnKS50cmltKCk7XG4gICAgaWYgKCFncm91cE5hbWUpIHtcbiAgICAgIHRoaXMuZm9ybS5nZXQoJ2dyb3VwTmFtZScpPy5zZXRFcnJvcnMoeyByZXF1aXJlZDogdHJ1ZSB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5jcmVhdGVHcm91cC5lbWl0KHsgZ3JvdXBOYW1lIH0pO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwiY3FhLWJnLXdoaXRlIGNxYS1yb3VuZGVkLVsxMnB4XSBjcWEtc2hhZG93LWxnIGNxYS1ib3JkZXIgY3FhLWJvcmRlci1zb2xpZCBjcWEtYm9yZGVyLVsjRTVFN0VCXSBjcWEtdy1mdWxsIGNxYS1tYXgtdy1bNTAwcHhdIGNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTQgY3FhLXAtNiBjcWEtYm94LWJvcmRlciBjcWEtbWluLWgtMFwiPlxuICA8IS0tIEhlYWRlcjogdGl0bGUgKyBjbG9zZSAoWCkgLS0+XG4gIDxkaXYgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtc3RhcnQgY3FhLWp1c3RpZnktYmV0d2VlbiBjcWEtZ2FwLTJcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtMSBjcWEtbWluLXctMFwiPlxuICAgICAgPGgyIGNsYXNzPVwiY3FhLXRleHQtWzE2cHhdIGNxYS1sZWFkaW5nLVsyNHB4XSBjcWEtZm9udC1ib2xkIGNxYS10ZXh0LVsjMTExODI3XSBjcWEtbS0wXCI+XG4gICAgICAgIENyZWF0ZSBzdGVwIGdyb3VwXG4gICAgICA8L2gyPlxuICAgICAgPHAgY2xhc3M9XCJjcWEtdGV4dC1bMTRweF0gY3FhLWxlYWRpbmctWzIwcHhdIGNxYS10ZXh0LVsjNjQ3NDhCXSBjcWEtbS0wXCI+XG4gICAgICAgIHt7IHN1YnRpdGxlVGV4dCB9fVxuICAgICAgPC9wPlxuICAgIDwvZGl2PlxuICAgIDxidXR0b25cbiAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsKClcIlxuICAgICAgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1qdXN0aWZ5LWNlbnRlciBjcWEtbWluLWgtNyBjcWEtbWluLXctNyBjcWEtcm91bmRlZCBjcWEtdGV4dC1bIzZCNzI4MF0gaG92ZXI6Y3FhLWJnLVsjRjNGNEY2XSBjcWEtcC0wIGNxYS1mbGV4LXNocmluay0wXCJcbiAgICAgIHRpdGxlPVwiQ2xvc2VcIlxuICAgICAgYXJpYS1sYWJlbD1cIkNsb3NlXCI+XG4gICAgICA8c3ZnIHdpZHRoPVwiMjBcIiBoZWlnaHQ9XCIyMFwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cImN1cnJlbnRDb2xvclwiIHN0cm9rZS13aWR0aD1cIjJcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgPHBhdGggZD1cIk0xOCA2TDYgMThNNiA2bDEyIDEyXCIgLz5cbiAgICAgIDwvc3ZnPlxuICAgIDwvYnV0dG9uPlxuICA8L2Rpdj5cblxuICA8IS0tIEdyb3VwIG5hbWUgKiAtLT5cbiAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTEuNVwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImNxYS10ZXh0LXNtIGNxYS1mb250LW1lZGl1bSBjcWEtdGV4dC1bIzE2MTYxN11cIj5cbiAgICAgIEdyb3VwIG5hbWUgPHNwYW4gY2xhc3M9XCJjcWEtdGV4dC1yZWQtNTAwXCI+Kjwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuICAgIDxjcWEtY3VzdG9tLWlucHV0XG4gICAgICBwbGFjZWhvbGRlcj1cImUuZy4sIEF1dGhlbnRpY2F0aW9uIGZsb3dcIlxuICAgICAgW3ZhbHVlXT1cImZvcm0uZ2V0KCdncm91cE5hbWUnKT8udmFsdWVcIlxuICAgICAgW2Z1bGxXaWR0aF09XCJ0cnVlXCJcbiAgICAgIHNpemU9XCJtZFwiXG4gICAgICAodmFsdWVDaGFuZ2UpPVwiZm9ybS5nZXQoJ2dyb3VwTmFtZScpPy5zZXRWYWx1ZSgkZXZlbnQpOyBmb3JtLmdldCgnZ3JvdXBOYW1lJyk/LnVwZGF0ZVZhbHVlQW5kVmFsaWRpdHkoKVwiPlxuICAgIDwvY3FhLWN1c3RvbS1pbnB1dD5cbiAgICA8cCAqbmdJZj1cImZvcm0uZ2V0KCdncm91cE5hbWUnKT8uaW52YWxpZCAmJiBmb3JtLmdldCgnZ3JvdXBOYW1lJyk/LnRvdWNoZWRcIiBjbGFzcz1cImNxYS10ZXh0LXhzIGNxYS10ZXh0LXJlZC01MDAgY3FhLW0tMFwiPlxuICAgICAgR3JvdXAgbmFtZSBpcyByZXF1aXJlZC5cbiAgICA8L3A+XG4gIDwvZGl2PlxuXG4gIDwhLS0gU3RlcHMgdG8gZ3JvdXAgKE4pIC0tPlxuICA8ZGl2IGNsYXNzPVwiY3FhLWZsZXggY3FhLWZsZXgtY29sIGNxYS1nYXAtMlwiPlxuICAgIDxsYWJlbCBjbGFzcz1cImNxYS1mb250LXNlbWlib2xkIGNxYS10ZXh0LVsxMnB4XSBjcWEtbGVhZGluZy1bMTAwJV0gY3FhLXRyYWNraW5nLW5vcm1hbCBjcWEtdGV4dC1bIzBBMEEwQV0gY3FhLWFsaWduLW1pZGRsZVwiPlxuICAgICAgU3RlcHMgdG8gZ3JvdXAgKHt7IHN0ZXBzQ291bnQgfX0pXG4gICAgPC9sYWJlbD5cbiAgICA8ZGl2IGNsYXNzPVwiY3FhLXNjcm9sbGJhci1oaWRlIGNxYS1mbGV4IGNxYS1mbGV4LWNvbCBjcWEtZ2FwLTIgY3FhLW1heC1oLVsyMDBweF0gY3FhLW92ZXJmbG93LXktYXV0byBjcWEtcm91bmRlZC1bOHB4XSBjcWEtcC1bNnB4XSBjcWEtYm9yZGVyIGNxYS1ib3JkZXItc29saWQgY3FhLWJvcmRlci1bcmdiYSgwLDAsMCwwLjEpXVwiPlxuICAgICAgPGRpdlxuICAgICAgICAqbmdGb3I9XCJsZXQgc3RlcCBvZiBzdGVwc1RvR3JvdXA7IGxldCBpID0gaW5kZXhcIlxuICAgICAgICBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1jZW50ZXIgY3FhLWdhcC0yIGNxYS1yb3VuZGVkLVs0cHhdIGNxYS1weS1bNHB4XSBjcWEtcHgtWzhweF0gY3FhLWJnLVtyZ2JhKDIxNiwyMTcsMjUyLDAuMyldXCI+XG4gICAgICAgIDwhLS0gTnVtYmVyZWQgYmFkZ2UgLS0+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgY2xhc3M9XCJjcWEtZmxleCBjcWEtaXRlbXMtY2VudGVyIGNxYS1qdXN0aWZ5LWNlbnRlciBjcWEtdy03IGNxYS1oLTcgY3FhLXJvdW5kZWQtZnVsbCBjcWEtYmctWyMzRjQzRUVdIGNxYS10ZXh0LXdoaXRlIGNxYS10ZXh0LVsxMHB4XSBjcWEtbGVhZGluZy1bMTVweF0gY3FhLWZvbnQtbWVkaXVtIGNxYS1mbGV4LXNocmluay0wXCI+XG4gICAgICAgICAge3sgaSArIDEgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImNxYS1mb250LW1lZGl1bSBjcWEtdGV4dC1bMTBweF0gY3FhLWxlYWRpbmctWzE1cHhdIGNxYS10cmFja2luZy1bMHB4XSBjcWEtdGV4dC1bIzBCMEIwQ10gY3FhLWZsZXgtMSBjcWEtbWluLXctMCBjcWEtdHJ1bmNhdGVcIj5cbiAgICAgICAgICB7eyBnZXRTdGVwRGlzcGxheUxhYmVsKHN0ZXAsIGkpIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8IS0tIEFjdGlvbnM6IENhbmNlbCB8IENyZWF0ZSBncm91cCAtLT5cbiAgPGRpdiBjbGFzcz1cImNxYS1mbGV4IGNxYS1pdGVtcy1zdHJldGNoIGNxYS13LWZ1bGwgY3FhLWdhcC0zXCI+XG4gICAgPGRpdiBjbGFzcz1cImNxYS1mbGV4LTEgY3FhLW1pbi13LTBcIj5cbiAgICAgIDxjcWEtYnV0dG9uXG4gICAgICAgIHZhcmlhbnQ9XCJvdXRsaW5lZFwiXG4gICAgICAgIGJ0blNpemU9XCJsZ1wiXG4gICAgICAgIHRleHQ9XCJDYW5jZWxcIlxuICAgICAgICBbZnVsbFdpZHRoXT1cInRydWVcIlxuICAgICAgICBbY3VzdG9tQ2xhc3NdPVwiJ2NxYS10ZXh0LVsxNHB4XSBjcWEtcHktWzlweF0gY3FhLWJvcmRlci1bIzQxNDE0Nl0nXCJcbiAgICAgICAgKGNsaWNrZWQpPVwib25DYW5jZWwoKVwiPlxuICAgICAgPC9jcWEtYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJjcWEtZmxleC0xIGNxYS1taW4tdy0wXCI+XG4gICAgICA8Y3FhLWJ1dHRvblxuICAgICAgICB2YXJpYW50PVwiZmlsbGVkXCJcbiAgICAgICAgYnRuU2l6ZT1cImxnXCJcbiAgICAgICAgdGV4dD1cIkNyZWF0ZSBncm91cFwiXG4gICAgICAgIFtmdWxsV2lkdGhdPVwidHJ1ZVwiXG4gICAgICAgIFtjdXN0b21DbGFzc109XCInY3FhLXRleHQtWzE0cHhdIGNxYS1weS1bOXB4XSBjcWEtYm9yZGVyLVsjM0Y0M0VFXSBjcWEtYmctWyMzRjQzRUVdJ1wiXG4gICAgICAgIChjbGlja2VkKT1cIm9uQ3JlYXRlR3JvdXAoKVwiPlxuICAgICAgPC9jcWEtYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19