valtech-components 4.0.1012 → 4.0.1014

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/esm2022/lib/components/atoms/display/display.component.mjs +2 -2
  2. package/esm2022/lib/components/organisms/data-table/data-table.component.mjs +317 -35
  3. package/esm2022/lib/components/organisms/data-table/types.mjs +1 -1
  4. package/esm2022/lib/components/organisms/field-schema-editor/field-schema-editor.component.mjs +4 -1
  5. package/esm2022/lib/components/organisms/field-schema-editor/types.mjs +1 -1
  6. package/esm2022/lib/components/organisms/form/form.component.mjs +7 -1
  7. package/esm2022/lib/components/organisms/request-review-panel/request-review-panel.component.mjs +12 -4
  8. package/esm2022/lib/components/organisms/request-review-panel/types.mjs +1 -1
  9. package/esm2022/lib/components/organisms/survey-builder/survey-builder.component.mjs +386 -155
  10. package/esm2022/lib/components/organisms/survey-builder/survey-builder.i18n.mjs +15 -1
  11. package/esm2022/lib/components/organisms/survey-builder/types.mjs +1 -1
  12. package/esm2022/lib/components/types.mjs +1 -1
  13. package/esm2022/lib/services/forms/form-schema-builder.service.mjs +3 -1
  14. package/esm2022/lib/services/forms/types.mjs +1 -1
  15. package/esm2022/lib/services/requests/types.mjs +1 -1
  16. package/esm2022/lib/version.mjs +2 -2
  17. package/fesm2022/valtech-components.mjs +739 -193
  18. package/fesm2022/valtech-components.mjs.map +1 -1
  19. package/lib/components/organisms/data-table/data-table.component.d.ts +10 -1
  20. package/lib/components/organisms/data-table/types.d.ts +14 -0
  21. package/lib/components/organisms/field-schema-editor/field-schema-editor.component.d.ts +1 -0
  22. package/lib/components/organisms/field-schema-editor/types.d.ts +2 -0
  23. package/lib/components/organisms/request-review-panel/request-review-panel.component.d.ts +6 -2
  24. package/lib/components/organisms/request-review-panel/types.d.ts +15 -0
  25. package/lib/components/organisms/survey-builder/survey-builder.component.d.ts +28 -5
  26. package/lib/components/organisms/survey-builder/types.d.ts +1 -0
  27. package/lib/components/types.d.ts +2 -0
  28. package/lib/services/forms/types.d.ts +2 -0
  29. package/lib/services/requests/types.d.ts +6 -0
  30. package/lib/version.d.ts +1 -1
  31. package/package.json +1 -1
  32. package/src/lib/components/styles/typography.scss +1 -1
@@ -10,4 +10,4 @@ export const DEFAULT_EMPTY_STATE = {
10
10
  title: 'No hay datos',
11
11
  description: 'No se encontraron registros para mostrar.',
12
12
  };
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2RhdGEtdGFibGUvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBcVBBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUUzRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF3QjtJQUN0RCxJQUFJLEVBQUUsa0JBQWtCO0lBQ3hCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLFdBQVcsRUFBRSwyQ0FBMkM7Q0FDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yIH0gZnJvbSAnQGlvbmljL2NvcmUnO1xuaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBDb2x1bW4gZGVmaW5pdGlvbiBmb3IgdGhlIGRhdGEgdGFibGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlQ29sdW1uPFQgPSBhbnk+IHtcbiAgLyoqIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29sdW1uICovXG4gIGtleTogc3RyaW5nO1xuICAvKiogSGVhZGVyIGxhYmVsICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKiBQcm9wZXJ0eSBwYXRoIGluIHRoZSBkYXRhIG9iamVjdCAoc3VwcG9ydHMgZG90IG5vdGF0aW9uKSAqL1xuICBmaWVsZD86IHN0cmluZztcbiAgLyoqIENvbHVtbiB3aWR0aCAoQ1NTIHZhbHVlKSAqL1xuICB3aWR0aD86IHN0cmluZztcbiAgLyoqIE1pbmltdW0gd2lkdGggKi9cbiAgbWluV2lkdGg/OiBzdHJpbmc7XG4gIC8qKiBNYXhpbXVtIHdpZHRoICovXG4gIG1heFdpZHRoPzogc3RyaW5nO1xuICAvKiogVGV4dCBhbGlnbm1lbnQgKi9cbiAgYWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4gIC8qKiBXaGV0aGVyIHRoZSBjb2x1bW4gaXMgc29ydGFibGUgKi9cbiAgc29ydGFibGU/OiBib29sZWFuO1xuICAvKiogQ3VzdG9tIHNvcnQgZnVuY3Rpb24gKi9cbiAgc29ydEZuPzogKGE6IFQsIGI6IFQpID0+IG51bWJlcjtcbiAgLyoqIFdoZXRoZXIgdGhlIGNvbHVtbiBpcyB2aXNpYmxlICovXG4gIHZpc2libGU/OiBib29sZWFuO1xuICAvKiogQ3VzdG9tIGNlbGwgdGVtcGxhdGUgKi9cbiAgY2VsbFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqIEN1c3RvbSBoZWFkZXIgdGVtcGxhdGUgKi9cbiAgaGVhZGVyVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKiogRm9ybWF0IGZ1bmN0aW9uIGZvciBjZWxsIHZhbHVlICovXG4gIGZvcm1hdD86ICh2YWx1ZTogYW55LCByb3c6IFQpID0+IHN0cmluZztcbiAgLyoqIENTUyBjbGFzcyBmb3IgdGhlIGNvbHVtbiAqL1xuICBjc3NDbGFzcz86IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhpcyBpcyBhIHN0aWNreSBjb2x1bW4gKi9cbiAgc3RpY2t5PzogJ3N0YXJ0JyB8ICdlbmQnO1xufVxuXG4vKipcbiAqIFNvcnQgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVTb3J0IHtcbiAgLyoqIENvbHVtbiBrZXkgdG8gc29ydCBieSAqL1xuICBjb2x1bW46IHN0cmluZztcbiAgLyoqIFNvcnQgZGlyZWN0aW9uICovXG4gIGRpcmVjdGlvbjogJ2FzYycgfCAnZGVzYyc7XG59XG5cbi8qKlxuICogUGFnaW5hdGlvbiBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZVBhZ2luYXRpb24ge1xuICAvKiogQ3VycmVudCBwYWdlICgwLWluZGV4ZWQpICovXG4gIHBhZ2U6IG51bWJlcjtcbiAgLyoqIEl0ZW1zIHBlciBwYWdlICovXG4gIHBhZ2VTaXplOiBudW1iZXI7XG4gIC8qKiBUb3RhbCBudW1iZXIgb2YgaXRlbXMgKi9cbiAgdG90YWw6IG51bWJlcjtcbiAgLyoqIEF2YWlsYWJsZSBwYWdlIHNpemUgb3B0aW9ucyAqL1xuICBwYWdlU2l6ZU9wdGlvbnM/OiBudW1iZXJbXTtcbn1cblxuLyoqXG4gKiBTZWxlY3Rpb24gY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVTZWxlY3Rpb248VCA9IGFueT4ge1xuICAvKiogU2VsZWN0aW9uIG1vZGUgKi9cbiAgbW9kZTogJ25vbmUnIHwgJ3NpbmdsZScgfCAnbXVsdGlwbGUnO1xuICAvKiogQ3VycmVudGx5IHNlbGVjdGVkIGl0ZW1zICovXG4gIHNlbGVjdGVkOiBUW107XG4gIC8qKiBGdW5jdGlvbiB0byBnZXQgdW5pcXVlIElEIGZyb20gcm93ICovXG4gIHRyYWNrQnk/OiAocm93OiBUKSA9PiBhbnk7XG59XG5cbi8qKlxuICogUm93IGNsaWNrIGV2ZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZVJvd0NsaWNrRXZlbnQ8VCA9IGFueT4ge1xuICAvKiogVGhlIHJvdyBkYXRhICovXG4gIHJvdzogVDtcbiAgLyoqIFJvdyBpbmRleCAqL1xuICBpbmRleDogbnVtYmVyO1xuICAvKiogT3JpZ2luYWwgbW91c2UgZXZlbnQgKi9cbiAgZXZlbnQ6IE1vdXNlRXZlbnQ7XG59XG5cbi8qKlxuICogU2VsZWN0aW9uIGNoYW5nZSBldmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVTZWxlY3Rpb25DaGFuZ2VFdmVudDxUID0gYW55PiB7XG4gIC8qKiBTZWxlY3RlZCByb3dzICovXG4gIHNlbGVjdGVkOiBUW107XG4gIC8qKiBSb3cgdGhhdCB3YXMgY2hhbmdlZCAoaWYgc2luZ2xlIGNoYW5nZSkgKi9cbiAgY2hhbmdlZFJvdz86IFQ7XG4gIC8qKiBBY3Rpb24gcGVyZm9ybWVkICovXG4gIGFjdGlvbjogJ3NlbGVjdCcgfCAnZGVzZWxlY3QnIHwgJ3NlbGVjdEFsbCcgfCAnZGVzZWxlY3RBbGwnO1xufVxuXG4vKipcbiAqIFNvcnQgY2hhbmdlIGV2ZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZVNvcnRDaGFuZ2VFdmVudCB7XG4gIC8qKiBDb2x1bW4ga2V5ICovXG4gIGNvbHVtbjogc3RyaW5nO1xuICAvKiogU29ydCBkaXJlY3Rpb24gKi9cbiAgZGlyZWN0aW9uOiAnYXNjJyB8ICdkZXNjJyB8IG51bGw7XG59XG5cbi8qKlxuICogUGFnZSBjaGFuZ2UgZXZlbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlUGFnZUNoYW5nZUV2ZW50IHtcbiAgLyoqIE5ldyBwYWdlIG51bWJlciAqL1xuICBwYWdlOiBudW1iZXI7XG4gIC8qKiBQYWdlIHNpemUgKi9cbiAgcGFnZVNpemU6IG51bWJlcjtcbiAgLyoqIFByZXZpb3VzIHBhZ2UgKi9cbiAgcHJldmlvdXNQYWdlOiBudW1iZXI7XG59XG5cbi8qKlxuICogRW1wdHkgc3RhdGUgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVFbXB0eVN0YXRlIHtcbiAgLyoqIEljb24gdG8gZGlzcGxheSAqL1xuICBpY29uPzogc3RyaW5nO1xuICAvKiogVGl0bGUgdGV4dCAqL1xuICB0aXRsZT86IHN0cmluZztcbiAgLyoqIERlc2NyaXB0aW9uIHRleHQgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKiBDdXN0b20gdGVtcGxhdGUgKi9cbiAgdGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuXG4vKipcbiAqIExvYWRpbmcgc3RhdGUgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVMb2FkaW5nU3RhdGUge1xuICAvKiogV2hldGhlciBkYXRhIGlzIGxvYWRpbmcgKi9cbiAgbG9hZGluZzogYm9vbGVhbjtcbiAgLyoqIE51bWJlciBvZiBza2VsZXRvbiByb3dzIHRvIHNob3cgKi9cbiAgc2tlbGV0b25Sb3dzPzogbnVtYmVyO1xuICAvKiogTG9hZGluZyBtZXNzYWdlICovXG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogTWV0YWRhdGEgZm9yIHRoZSBkYXRhIHRhYmxlIGNvbXBvbmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVNZXRhZGF0YTxUID0gYW55PiB7XG4gIC8qKiBDb2x1bW4gZGVmaW5pdGlvbnMgKi9cbiAgY29sdW1uczogRGF0YVRhYmxlQ29sdW1uPFQ+W107XG4gIC8qKiBEYXRhIHJvd3MgKi9cbiAgZGF0YTogVFtdO1xuXG4gIC8vID09PSBTb3J0aW5nID09PVxuICAvKiogQ3VycmVudCBzb3J0IGNvbmZpZ3VyYXRpb24gKi9cbiAgc29ydD86IERhdGFUYWJsZVNvcnQ7XG4gIC8qKiBFbmFibGUgY2xpZW50LXNpZGUgc29ydGluZyAqL1xuICBjbGllbnRTb3J0PzogYm9vbGVhbjtcblxuICAvLyA9PT0gUGFnaW5hdGlvbiA9PT1cbiAgLyoqIFBhZ2luYXRpb24gY29uZmlndXJhdGlvbiAqL1xuICBwYWdpbmF0aW9uPzogRGF0YVRhYmxlUGFnaW5hdGlvbjtcbiAgLyoqIEVuYWJsZSBjbGllbnQtc2lkZSBwYWdpbmF0aW9uICovXG4gIGNsaWVudFBhZ2luYXRpb24/OiBib29sZWFuO1xuICAvKiogU2hvdyBwYWdpbmF0aW9uIGNvbnRyb2xzICovXG4gIHNob3dQYWdpbmF0aW9uPzogYm9vbGVhbjtcblxuICAvLyA9PT0gU2VsZWN0aW9uID09PVxuICAvKiogU2VsZWN0aW9uIGNvbmZpZ3VyYXRpb24gKi9cbiAgc2VsZWN0aW9uPzogRGF0YVRhYmxlU2VsZWN0aW9uPFQ+O1xuICAvKiogU2hvdyBzZWxlY3Rpb24gY29sdW1uICovXG4gIHNob3dTZWxlY3Rpb25Db2x1bW4/OiBib29sZWFuO1xuXG4gIC8vID09PSBEaXNwbGF5IG9wdGlvbnMgPT09XG4gIC8qKiBUYWJsZSBzaXplIHZhcmlhbnQgKi9cbiAgc2l6ZT86ICdzbWFsbCcgfCAnbWVkaXVtJyB8ICdsYXJnZSc7XG4gIC8qKiBTaG93IGJvcmRlcnMgKi9cbiAgYm9yZGVyZWQ/OiBib29sZWFuO1xuICAvKiogU3RyaXBlZCByb3dzICovXG4gIHN0cmlwZWQ/OiBib29sZWFuO1xuICAvKiogSG92ZXJhYmxlIHJvd3MgKi9cbiAgaG92ZXJhYmxlPzogYm9vbGVhbjtcbiAgLyoqIEZpeGVkIGhlYWRlciAqL1xuICBzdGlja3lIZWFkZXI/OiBib29sZWFuO1xuICAvKiogVGFibGUgbWF4IGhlaWdodCAoZW5hYmxlcyBzY3JvbGxpbmcpICovXG4gIG1heEhlaWdodD86IHN0cmluZztcbiAgLyoqIFNob3cgcm93IG51bWJlcnMgKi9cbiAgc2hvd1Jvd051bWJlcnM/OiBib29sZWFuO1xuICAvKiogUm93IG51bWJlciBzdGFydCAqL1xuICByb3dOdW1iZXJTdGFydD86IG51bWJlcjtcblxuICAvLyA9PT0gRW1wdHkgJiBMb2FkaW5nIHN0YXRlcyA9PT1cbiAgLyoqIEVtcHR5IHN0YXRlIGNvbmZpZ3VyYXRpb24gKi9cbiAgZW1wdHlTdGF0ZT86IERhdGFUYWJsZUVtcHR5U3RhdGU7XG4gIC8qKiBMb2FkaW5nIHN0YXRlICovXG4gIGxvYWRpbmdTdGF0ZT86IERhdGFUYWJsZUxvYWRpbmdTdGF0ZTtcblxuICAvLyA9PT0gU3R5bGluZyA9PT1cbiAgLyoqIEN1c3RvbSBDU1MgY2xhc3MgKi9cbiAgY3NzQ2xhc3M/OiBzdHJpbmc7XG4gIC8qKiBIZWFkZXIgY29sb3IgKi9cbiAgaGVhZGVyQ29sb3I/OiBDb2xvcjtcbiAgLyoqIFJvdyBjbGljayBlbmFibGVkICovXG4gIHJvd0NsaWNrYWJsZT86IGJvb2xlYW47XG5cbiAgLy8gPT09IE1vZGVybiBTdHlsaW5nIE9wdGlvbnMgPT09XG4gIC8qKiBFbGV2YXRpb24gbGV2ZWwgZm9yIGJveCBzaGFkb3cgKi9cbiAgZWxldmF0aW9uPzogJ25vbmUnIHwgJ2xvdycgfCAnbWVkaXVtJyB8ICdoaWdoJztcbiAgLyoqIFNob3cgZ3JhZGllbnQgYWNjZW50IG9uIHRvcCBib3JkZXIgKi9cbiAgaGVhZGVyR3JhZGllbnQ/OiBib29sZWFuO1xuICAvKiogQ2hlY2tib3ggc3R5bGUgdmFyaWFudCAqL1xuICBjaGVja2JveFN0eWxlPzogJ2RlZmF1bHQnIHwgJ2NpcmN1bGFyJztcbiAgLyoqIFJvdyBzZWxlY3Rpb24gaGlnaGxpZ2h0IHN0eWxlICovXG4gIHJvd0hpZ2hsaWdodFN0eWxlPzogJ2JhY2tncm91bmQnIHwgJ2JvcmRlci1sZWZ0JyB8ICdib3RoJztcblxuICAvLyA9PT0gQWN0aW9ucyA9PT1cbiAgLyoqIFJvdyBhY3Rpb25zIHRlbXBsYXRlICovXG4gIGFjdGlvbnNUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKiBBY3Rpb25zIGNvbHVtbiB3aWR0aCAqL1xuICBhY3Rpb25zV2lkdGg/OiBzdHJpbmc7XG4gIC8qKiBBY3Rpb25zIGNvbHVtbiBsYWJlbCAqL1xuICBhY3Rpb25zTGFiZWw/OiBzdHJpbmc7XG5cbiAgLy8gPT09IEFjY2Vzc2liaWxpdHkgPT09XG4gIC8qKiBUYWJsZSBjYXB0aW9uIGZvciBzY3JlZW4gcmVhZGVycyAqL1xuICBjYXB0aW9uPzogc3RyaW5nO1xuICAvKiogQVJJQSBsYWJlbCAqL1xuICBhcmlhTGFiZWw/OiBzdHJpbmc7XG5cbiAgLy8gPT09IFJlYWN0aXZlIGNvbnRlbnQgPT09XG4gIC8qKiBDb250ZW50IGNsYXNzIGZvciByZWFjdGl2ZSBjb250ZW50ICovXG4gIGNvbnRlbnRDbGFzcz86IHN0cmluZztcblxuICAvLyA9PT0gUmVzcG9uc2l2ZSA9PT1cbiAgLyoqIFJlc3BvbnNpdmUgbW9kZTogJ3Njcm9sbCcgKGRlZmF1bHQpIG9yICdjYXJkcycgZm9yIG1vYmlsZSBjYXJkIHZpZXcgKi9cbiAgcmVzcG9uc2l2ZU1vZGU/OiAnc2Nyb2xsJyB8ICdjYXJkcyc7XG4gIC8qKiBCcmVha3BvaW50IGZvciBjYXJkIHZpZXcgaW4gcGl4ZWxzLiBEZWZhdWx0OiA3NjggKi9cbiAgcmVzcG9uc2l2ZUJyZWFrcG9pbnQ/OiBudW1iZXI7XG4gIC8qKiBDdXN0b20gdGVtcGxhdGUgZm9yIG1vYmlsZSBjYXJkIHZpZXcgKi9cbiAgbW9iaWxlQ2FyZFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55Pjtcbn1cblxuLyoqXG4gKiBEZWZhdWx0IHBhZ2luYXRpb24gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUEFHRV9TSVpFX09QVElPTlMgPSBbMTAsIDI1LCA1MCwgMTAwXTtcblxuLyoqXG4gKiBEZWZhdWx0IGVtcHR5IHN0YXRlLlxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9FTVBUWV9TVEFURTogRGF0YVRhYmxlRW1wdHlTdGF0ZSA9IHtcbiAgaWNvbjogJ2RvY3VtZW50LW91dGxpbmUnLFxuICB0aXRsZTogJ05vIGhheSBkYXRvcycsXG4gIGRlc2NyaXB0aW9uOiAnTm8gc2UgZW5jb250cmFyb24gcmVnaXN0cm9zIHBhcmEgbW9zdHJhci4nLFxufTtcbiJdfQ==
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2RhdGEtdGFibGUvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBb1FBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztBQUUzRDs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUF3QjtJQUN0RCxJQUFJLEVBQUUsa0JBQWtCO0lBQ3hCLEtBQUssRUFBRSxjQUFjO0lBQ3JCLFdBQVcsRUFBRSwyQ0FBMkM7Q0FDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbG9yIH0gZnJvbSAnQGlvbmljL2NvcmUnO1xuaW1wb3J0IHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLyoqXG4gKiBDb2x1bW4gZGVmaW5pdGlvbiBmb3IgdGhlIGRhdGEgdGFibGUuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlQ29sdW1uPFQgPSBhbnk+IHtcbiAgLyoqIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgY29sdW1uICovXG4gIGtleTogc3RyaW5nO1xuICAvKiogSGVhZGVyIGxhYmVsICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKiBQcm9wZXJ0eSBwYXRoIGluIHRoZSBkYXRhIG9iamVjdCAoc3VwcG9ydHMgZG90IG5vdGF0aW9uKSAqL1xuICBmaWVsZD86IHN0cmluZztcbiAgLyoqIENvbHVtbiB3aWR0aCAoQ1NTIHZhbHVlKSAqL1xuICB3aWR0aD86IHN0cmluZztcbiAgLyoqIE1pbmltdW0gd2lkdGggKi9cbiAgbWluV2lkdGg/OiBzdHJpbmc7XG4gIC8qKiBNYXhpbXVtIHdpZHRoICovXG4gIG1heFdpZHRoPzogc3RyaW5nO1xuICAvKiogVGV4dCBhbGlnbm1lbnQgKi9cbiAgYWxpZ24/OiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCc7XG4gIC8qKiBXaGV0aGVyIHRoZSBjb2x1bW4gaXMgc29ydGFibGUgKi9cbiAgc29ydGFibGU/OiBib29sZWFuO1xuICAvKiogQ3VzdG9tIHNvcnQgZnVuY3Rpb24gKi9cbiAgc29ydEZuPzogKGE6IFQsIGI6IFQpID0+IG51bWJlcjtcbiAgLyoqIFdoZXRoZXIgdGhlIGNvbHVtbiBpcyB2aXNpYmxlICovXG4gIHZpc2libGU/OiBib29sZWFuO1xuICAvKiogQ3VzdG9tIGNlbGwgdGVtcGxhdGUgKi9cbiAgY2VsbFRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcbiAgLyoqIEN1c3RvbSBoZWFkZXIgdGVtcGxhdGUgKi9cbiAgaGVhZGVyVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKiogRm9ybWF0IGZ1bmN0aW9uIGZvciBjZWxsIHZhbHVlICovXG4gIGZvcm1hdD86ICh2YWx1ZTogYW55LCByb3c6IFQpID0+IHN0cmluZztcbiAgLyoqIENTUyBjbGFzcyBmb3IgdGhlIGNvbHVtbiAqL1xuICBjc3NDbGFzcz86IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhpcyBpcyBhIHN0aWNreSBjb2x1bW4gKi9cbiAgc3RpY2t5PzogJ3N0YXJ0JyB8ICdlbmQnO1xufVxuXG4vKipcbiAqIFNvcnQgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVTb3J0IHtcbiAgLyoqIENvbHVtbiBrZXkgdG8gc29ydCBieSAqL1xuICBjb2x1bW46IHN0cmluZztcbiAgLyoqIFNvcnQgZGlyZWN0aW9uICovXG4gIGRpcmVjdGlvbjogJ2FzYycgfCAnZGVzYyc7XG59XG5cbi8qKlxuICogUGFnaW5hdGlvbiBjb25maWd1cmF0aW9uLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZVBhZ2luYXRpb24ge1xuICAvKiogQ3VycmVudCBwYWdlICgwLWluZGV4ZWQpICovXG4gIHBhZ2U6IG51bWJlcjtcbiAgLyoqIEl0ZW1zIHBlciBwYWdlICovXG4gIHBhZ2VTaXplOiBudW1iZXI7XG4gIC8qKiBUb3RhbCBudW1iZXIgb2YgaXRlbXMgKi9cbiAgdG90YWw6IG51bWJlcjtcbiAgLyoqIEF2YWlsYWJsZSBwYWdlIHNpemUgb3B0aW9ucyAqL1xuICBwYWdlU2l6ZU9wdGlvbnM/OiBudW1iZXJbXTtcbn1cblxuLyoqXG4gKiBTZWxlY3Rpb24gY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVTZWxlY3Rpb248VCA9IGFueT4ge1xuICAvKiogU2VsZWN0aW9uIG1vZGUgKi9cbiAgbW9kZTogJ25vbmUnIHwgJ3NpbmdsZScgfCAnbXVsdGlwbGUnO1xuICAvKiogQ3VycmVudGx5IHNlbGVjdGVkIGl0ZW1zICovXG4gIHNlbGVjdGVkOiBUW107XG4gIC8qKiBGdW5jdGlvbiB0byBnZXQgdW5pcXVlIElEIGZyb20gcm93ICovXG4gIHRyYWNrQnk/OiAocm93OiBUKSA9PiBhbnk7XG59XG5cbi8qKlxuICogUm93IGNsaWNrIGV2ZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZVJvd0NsaWNrRXZlbnQ8VCA9IGFueT4ge1xuICAvKiogVGhlIHJvdyBkYXRhICovXG4gIHJvdzogVDtcbiAgLyoqIFJvdyBpbmRleCAqL1xuICBpbmRleDogbnVtYmVyO1xuICAvKiogT3JpZ2luYWwgbW91c2UgZXZlbnQgKi9cbiAgZXZlbnQ6IE1vdXNlRXZlbnQ7XG59XG5cbi8qKlxuICogU2VsZWN0aW9uIGNoYW5nZSBldmVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVTZWxlY3Rpb25DaGFuZ2VFdmVudDxUID0gYW55PiB7XG4gIC8qKiBTZWxlY3RlZCByb3dzICovXG4gIHNlbGVjdGVkOiBUW107XG4gIC8qKiBSb3cgdGhhdCB3YXMgY2hhbmdlZCAoaWYgc2luZ2xlIGNoYW5nZSkgKi9cbiAgY2hhbmdlZFJvdz86IFQ7XG4gIC8qKiBBY3Rpb24gcGVyZm9ybWVkICovXG4gIGFjdGlvbjogJ3NlbGVjdCcgfCAnZGVzZWxlY3QnIHwgJ3NlbGVjdEFsbCcgfCAnZGVzZWxlY3RBbGwnO1xufVxuXG4vKipcbiAqIFNvcnQgY2hhbmdlIGV2ZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZVNvcnRDaGFuZ2VFdmVudCB7XG4gIC8qKiBDb2x1bW4ga2V5ICovXG4gIGNvbHVtbjogc3RyaW5nO1xuICAvKiogU29ydCBkaXJlY3Rpb24gKi9cbiAgZGlyZWN0aW9uOiAnYXNjJyB8ICdkZXNjJyB8IG51bGw7XG59XG5cbi8qKlxuICogUGFnZSBjaGFuZ2UgZXZlbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlUGFnZUNoYW5nZUV2ZW50IHtcbiAgLyoqIE5ldyBwYWdlIG51bWJlciAqL1xuICBwYWdlOiBudW1iZXI7XG4gIC8qKiBQYWdlIHNpemUgKi9cbiAgcGFnZVNpemU6IG51bWJlcjtcbiAgLyoqIFByZXZpb3VzIHBhZ2UgKi9cbiAgcHJldmlvdXNQYWdlOiBudW1iZXI7XG59XG5cbi8qKlxuICogRW1wdHkgc3RhdGUgY29uZmlndXJhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhVGFibGVFbXB0eVN0YXRlIHtcbiAgLyoqIEljb24gdG8gZGlzcGxheSAqL1xuICBpY29uPzogc3RyaW5nO1xuICAvKiogVGl0bGUgdGV4dCAqL1xuICB0aXRsZT86IHN0cmluZztcbiAgLyoqIERlc2NyaXB0aW9uIHRleHQgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKiBDdXN0b20gdGVtcGxhdGUgKi9cbiAgdGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIERhdGFUYWJsZU1vYmlsZUNhcmRMYXlvdXQge1xuICAvKiogQ29sdW1uIGtleSBvciBrZXlzIHVzZWQgYXMgcHJpbWFyeSBjb250ZW50IGluIG1vYmlsZSBjYXJkcyAqL1xuICBwcmltYXJ5Pzogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKiBDb2x1bW4ga2V5IG9yIGtleXMgdXNlZCBhcyBzZWNvbmRhcnkgY29udGVudCBpbiBtb2JpbGUgY2FyZHMgKi9cbiAgc2Vjb25kYXJ5Pzogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKiBDb2x1bW4ga2V5cyB1c2VkIGFzIG1ldGFkYXRhIGxpbmVzIGluIG1vYmlsZSBjYXJkcyAqL1xuICBtZXRhPzogc3RyaW5nW107XG4gIC8qKiBDb2x1bW4ga2V5cyB1c2VkIGFzIHN0YXR1cyBsaW5lcyBpbiBtb2JpbGUgY2FyZHMgKi9cbiAgc3RhdHVzPzogc3RyaW5nW107XG4gIC8qKiBTaG93IGNvbHVtbnMgbm90IG1hcHBlZCBieSBhbnkgcm9sZSBhZnRlciBhcHBseWluZyB0aGlzIGxheW91dCAqL1xuICBzaG93VW5tYXBwZWRDb2x1bW5zPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBMb2FkaW5nIHN0YXRlIGNvbmZpZ3VyYXRpb24uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlTG9hZGluZ1N0YXRlIHtcbiAgLyoqIFdoZXRoZXIgZGF0YSBpcyBsb2FkaW5nICovXG4gIGxvYWRpbmc6IGJvb2xlYW47XG4gIC8qKiBOdW1iZXIgb2Ygc2tlbGV0b24gcm93cyB0byBzaG93ICovXG4gIHNrZWxldG9uUm93cz86IG51bWJlcjtcbiAgLyoqIExvYWRpbmcgbWVzc2FnZSAqL1xuICBtZXNzYWdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIE1ldGFkYXRhIGZvciB0aGUgZGF0YSB0YWJsZSBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVRhYmxlTWV0YWRhdGE8VCA9IGFueT4ge1xuICAvKiogQ29sdW1uIGRlZmluaXRpb25zICovXG4gIGNvbHVtbnM6IERhdGFUYWJsZUNvbHVtbjxUPltdO1xuICAvKiogRGF0YSByb3dzICovXG4gIGRhdGE6IFRbXTtcblxuICAvLyA9PT0gU29ydGluZyA9PT1cbiAgLyoqIEN1cnJlbnQgc29ydCBjb25maWd1cmF0aW9uICovXG4gIHNvcnQ/OiBEYXRhVGFibGVTb3J0O1xuICAvKiogRW5hYmxlIGNsaWVudC1zaWRlIHNvcnRpbmcgKi9cbiAgY2xpZW50U29ydD86IGJvb2xlYW47XG5cbiAgLy8gPT09IFBhZ2luYXRpb24gPT09XG4gIC8qKiBQYWdpbmF0aW9uIGNvbmZpZ3VyYXRpb24gKi9cbiAgcGFnaW5hdGlvbj86IERhdGFUYWJsZVBhZ2luYXRpb247XG4gIC8qKiBFbmFibGUgY2xpZW50LXNpZGUgcGFnaW5hdGlvbiAqL1xuICBjbGllbnRQYWdpbmF0aW9uPzogYm9vbGVhbjtcbiAgLyoqIFNob3cgcGFnaW5hdGlvbiBjb250cm9scyAqL1xuICBzaG93UGFnaW5hdGlvbj86IGJvb2xlYW47XG5cbiAgLy8gPT09IFNlbGVjdGlvbiA9PT1cbiAgLyoqIFNlbGVjdGlvbiBjb25maWd1cmF0aW9uICovXG4gIHNlbGVjdGlvbj86IERhdGFUYWJsZVNlbGVjdGlvbjxUPjtcbiAgLyoqIFNob3cgc2VsZWN0aW9uIGNvbHVtbiAqL1xuICBzaG93U2VsZWN0aW9uQ29sdW1uPzogYm9vbGVhbjtcblxuICAvLyA9PT0gRGlzcGxheSBvcHRpb25zID09PVxuICAvKiogVGFibGUgc2l6ZSB2YXJpYW50ICovXG4gIHNpemU/OiAnc21hbGwnIHwgJ21lZGl1bScgfCAnbGFyZ2UnO1xuICAvKiogU2hvdyBib3JkZXJzICovXG4gIGJvcmRlcmVkPzogYm9vbGVhbjtcbiAgLyoqIFN0cmlwZWQgcm93cyAqL1xuICBzdHJpcGVkPzogYm9vbGVhbjtcbiAgLyoqIEhvdmVyYWJsZSByb3dzICovXG4gIGhvdmVyYWJsZT86IGJvb2xlYW47XG4gIC8qKiBGaXhlZCBoZWFkZXIgKi9cbiAgc3RpY2t5SGVhZGVyPzogYm9vbGVhbjtcbiAgLyoqIFRhYmxlIG1heCBoZWlnaHQgKGVuYWJsZXMgc2Nyb2xsaW5nKSAqL1xuICBtYXhIZWlnaHQ/OiBzdHJpbmc7XG4gIC8qKiBTaG93IHJvdyBudW1iZXJzICovXG4gIHNob3dSb3dOdW1iZXJzPzogYm9vbGVhbjtcbiAgLyoqIFJvdyBudW1iZXIgc3RhcnQgKi9cbiAgcm93TnVtYmVyU3RhcnQ/OiBudW1iZXI7XG5cbiAgLy8gPT09IEVtcHR5ICYgTG9hZGluZyBzdGF0ZXMgPT09XG4gIC8qKiBFbXB0eSBzdGF0ZSBjb25maWd1cmF0aW9uICovXG4gIGVtcHR5U3RhdGU/OiBEYXRhVGFibGVFbXB0eVN0YXRlO1xuICAvKiogTG9hZGluZyBzdGF0ZSAqL1xuICBsb2FkaW5nU3RhdGU/OiBEYXRhVGFibGVMb2FkaW5nU3RhdGU7XG5cbiAgLy8gPT09IFN0eWxpbmcgPT09XG4gIC8qKiBDdXN0b20gQ1NTIGNsYXNzICovXG4gIGNzc0NsYXNzPzogc3RyaW5nO1xuICAvKiogSGVhZGVyIGNvbG9yICovXG4gIGhlYWRlckNvbG9yPzogQ29sb3I7XG4gIC8qKiBSb3cgY2xpY2sgZW5hYmxlZCAqL1xuICByb3dDbGlja2FibGU/OiBib29sZWFuO1xuXG4gIC8vID09PSBNb2Rlcm4gU3R5bGluZyBPcHRpb25zID09PVxuICAvKiogRWxldmF0aW9uIGxldmVsIGZvciBib3ggc2hhZG93ICovXG4gIGVsZXZhdGlvbj86ICdub25lJyB8ICdsb3cnIHwgJ21lZGl1bScgfCAnaGlnaCc7XG4gIC8qKiBTaG93IGdyYWRpZW50IGFjY2VudCBvbiB0b3AgYm9yZGVyICovXG4gIGhlYWRlckdyYWRpZW50PzogYm9vbGVhbjtcbiAgLyoqIENoZWNrYm94IHN0eWxlIHZhcmlhbnQgKi9cbiAgY2hlY2tib3hTdHlsZT86ICdkZWZhdWx0JyB8ICdjaXJjdWxhcic7XG4gIC8qKiBSb3cgc2VsZWN0aW9uIGhpZ2hsaWdodCBzdHlsZSAqL1xuICByb3dIaWdobGlnaHRTdHlsZT86ICdiYWNrZ3JvdW5kJyB8ICdib3JkZXItbGVmdCcgfCAnYm90aCc7XG5cbiAgLy8gPT09IEFjdGlvbnMgPT09XG4gIC8qKiBSb3cgYWN0aW9ucyB0ZW1wbGF0ZSAqL1xuICBhY3Rpb25zVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAvKiogQWN0aW9ucyBjb2x1bW4gd2lkdGggKi9cbiAgYWN0aW9uc1dpZHRoPzogc3RyaW5nO1xuICAvKiogQWN0aW9ucyBjb2x1bW4gbGFiZWwgKi9cbiAgYWN0aW9uc0xhYmVsPzogc3RyaW5nO1xuXG4gIC8vID09PSBBY2Nlc3NpYmlsaXR5ID09PVxuICAvKiogVGFibGUgY2FwdGlvbiBmb3Igc2NyZWVuIHJlYWRlcnMgKi9cbiAgY2FwdGlvbj86IHN0cmluZztcbiAgLyoqIEFSSUEgbGFiZWwgKi9cbiAgYXJpYUxhYmVsPzogc3RyaW5nO1xuXG4gIC8vID09PSBSZWFjdGl2ZSBjb250ZW50ID09PVxuICAvKiogQ29udGVudCBjbGFzcyBmb3IgcmVhY3RpdmUgY29udGVudCAqL1xuICBjb250ZW50Q2xhc3M/OiBzdHJpbmc7XG5cbiAgLy8gPT09IFJlc3BvbnNpdmUgPT09XG4gIC8qKiBSZXNwb25zaXZlIG1vZGU6ICdzY3JvbGwnIChkZWZhdWx0KSBvciAnY2FyZHMnIGZvciBtb2JpbGUgY2FyZCB2aWV3ICovXG4gIHJlc3BvbnNpdmVNb2RlPzogJ3Njcm9sbCcgfCAnY2FyZHMnO1xuICAvKiogQnJlYWtwb2ludCBmb3IgY2FyZCB2aWV3IGluIHBpeGVscy4gRGVmYXVsdDogNzY4ICovXG4gIHJlc3BvbnNpdmVCcmVha3BvaW50PzogbnVtYmVyO1xuICAvKiogQ3VzdG9tIHRlbXBsYXRlIGZvciBtb2JpbGUgY2FyZCB2aWV3ICovXG4gIG1vYmlsZUNhcmRUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG4gIC8qKiBNb2JpbGUgY2FyZCBtZXRhZGF0YSBhbmQgZmllbGQgbWFwcGluZyAqL1xuICBtb2JpbGVDYXJkTGF5b3V0PzogRGF0YVRhYmxlTW9iaWxlQ2FyZExheW91dDtcbn1cblxuLyoqXG4gKiBEZWZhdWx0IHBhZ2luYXRpb24gb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUEFHRV9TSVpFX09QVElPTlMgPSBbMTAsIDI1LCA1MCwgMTAwXTtcblxuLyoqXG4gKiBEZWZhdWx0IGVtcHR5IHN0YXRlLlxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9FTVBUWV9TVEFURTogRGF0YVRhYmxlRW1wdHlTdGF0ZSA9IHtcbiAgaWNvbjogJ2RvY3VtZW50LW91dGxpbmUnLFxuICB0aXRsZTogJ05vIGhheSBkYXRvcycsXG4gIGRlc2NyaXB0aW9uOiAnTm8gc2UgZW5jb250cmFyb24gcmVnaXN0cm9zIHBhcmEgbW9zdHJhci4nLFxufTtcbiJdfQ==
@@ -64,6 +64,7 @@ export class FieldSchemaEditorComponent {
64
64
  this.selectedPresetId = signal('');
65
65
  /** Se refresca con cada cambio de tipo — `needsOptions` no puede leer el control directo. */
66
66
  this.currentType = signal('TEXT');
67
+ this.currentSectionId = '';
67
68
  /** Una vez que se toca el token a mano (o se edita un campo ya guardado) deja de derivarse del label. */
68
69
  this.nameLocked = false;
69
70
  this.name = '';
@@ -119,6 +120,7 @@ export class FieldSchemaEditorComponent {
119
120
  const initial = this.props.field;
120
121
  if (initial) {
121
122
  this.fieldId = initial.id;
123
+ this.currentSectionId = initial.sectionId ?? '';
122
124
  this.nameLocked = true;
123
125
  this.name = initial.name;
124
126
  this.labelControl.setValue(initial.label ?? '');
@@ -206,6 +208,7 @@ export class FieldSchemaEditorComponent {
206
208
  placeholderText: (this.placeholderControl.value || '').trim(),
207
209
  hintText: (this.hintControl.value || '').trim(),
208
210
  type: this.coerceType(this.typeControl.value),
211
+ sectionId: this.currentSectionId,
209
212
  required: this.requiredControl.value,
210
213
  sectionLabel: (this.sectionControl.value || '').trim(),
211
214
  options: this.needsOptions() ? this.options().map((option, index) => ({ ...option, order: index })) : undefined,
@@ -372,4 +375,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
372
375
  }], changed: [{
373
376
  type: Output
374
377
  }] } });
375
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc2NoZW1hLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2ZpZWxkLXNjaGVtYS1lZGl0b3IvZmllbGQtc2NoZW1hLWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUUvRixPQUFPLEVBQUUsZUFBZSxFQUFpQixTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDM0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFFbEgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRXRFLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDO0FB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QkFBdEIsTUFBTTtnQkFPWSxPQUFPO3NCQUF6QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIGNvbXB1dGVkLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvaTE4bic7XG5pbXBvcnQgeyBGb3JtU2NoZW1hQnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3Jtcy9mb3JtLXNjaGVtYS1idWlsZGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmllbGRPcHRpb24gfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3Jtcy90eXBlcyc7XG5pbXBvcnQgeyBDb21wb25lbnRTdGF0ZXMsIElucHV0TWV0YWRhdGEsIElucHV0VHlwZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IEZvcm1GaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy90ZXh0LWlucHV0L3RleHQtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRhcmVhSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdGV4dGFyZWEtaW5wdXQvdGV4dGFyZWEtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFNlYXJjaFNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3NlbGVjdC1pbnB1dC9zZWxlY3QtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IFRvZ2dsZUlucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3RvZ2dsZS1pbnB1dC90b2dnbGUtaW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEZpZWxkT3B0aW9uc0VkaXRvckNvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy9maWVsZC1vcHRpb25zLWVkaXRvci9maWVsZC1vcHRpb25zLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRWRpdGFibGVGaWVsZERlZiwgRmllbGRTY2hlbWFFZGl0b3JNZXRhZGF0YSwgRmllbGRTY2hlbWFFZGl0b3JQcmVzZXQgfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCB7IEZJRUxEX1NDSEVNQV9FRElUT1JfSTE4TiB9IGZyb20gJy4vZmllbGQtc2NoZW1hLWVkaXRvci5pMThuJztcblxuY29uc3QgTkFNRVNQQUNFID0gJ0ZpZWxkU2NoZW1hRWRpdG9yJztcblxuLyoqXG4gKiBUaXBvcyBjdXlvIHZhbG9yIHNhbGUgZGUgdW5hIGxpc3RhIGNlcnJhZGEgcXVlIGRlZmluZSBxdWllbiBhcm1hIGVsXG4gKiBmb3JtdWxhcmlvIOKAlCBzaW4gYWwgbWVub3MgdW5hIG9wY2nDs24sIGVsIGNhbXBvIG5vIHNlIHB1ZWRlIHJlc3BvbmRlci5cbiAqIEVzcGVqbyBkZSBgZmllbGRSZXF1aXJlc09wdGlvbnNgIHF1ZSB2aXbDrWEgZHVwbGljYWRvIGVuIGJpbmdvLlxuICovXG5leHBvcnQgY29uc3QgRklFTERfVFlQRVNfV0lUSF9PUFRJT05TID0gWydTRUxFQ1QnLCAnUkFESU8nLCAnTVVMVElfU0VMRUNUJ107XG5cbmxldCBmaWVsZFVpZCA9IDA7XG5cbi8qKlxuICogdmFsLWZpZWxkLXNjaGVtYS1lZGl0b3JcbiAqXG4gKiBFZGl0YSBVTiBjYW1wbyBkZSB1biBmb3JtdWxhcmlvIGRpbsOhbWljbzogdGV4dG8sIHRpcG8sIHBsYWNlaG9sZGVyLCBub3RhLFxuICogb2JsaWdhdG9yaWVkYWQgeSBvcGNpb25lcy4gRXMgbGEgcGllemEgcXVlIGZhbHRhYmEgZW4gbGEgbGliIOKAlCBoYXN0YSBhaG9yYVxuICogZWwgw7puaWNvIGVkaXRvciBkZSBjYW1wb3MgY29uIGVzdGUgbml2ZWwgdml2w61hIGRlbnRybyBkZSBiaW5nb1xuICogKGBjaGVja291dC1maWVsZC1tb2RhbC5jb21wb25lbnQudHNgKSwgaW52aXNpYmxlIHBhcmEgZWwgcmVzdG8gZGVsIGZhY3RvcnksXG4gKiB5IGB2YWwtc3VydmV5LWJ1aWxkZXJgIGhhYsOtYSB0ZXJtaW5hZG8gY29uIHVuYSB2ZXJzacOzbiBwb2JyZSBkZSBsbyBtaXNtb1xuICogKGRvcyB0aXBvcyBmaWpvcywgc2luIHBsYWNlaG9sZGVyIG5pIG9wY2lvbmVzKS5cbiAqXG4gKiBFcyBhZ27Ds3N0aWNvIGRlIGRvbWluaW8gYSBwcm9ww7NzaXRvOlxuICogLSBlbCAqKmNhdMOhbG9nbyBkZSB0aXBvcyoqIChgYWxsb3dlZFR5cGVzYCkgbG8gZGVjaWRlIGVsIGNvbnN1bWVyLCBwb3JxdWUgZXNcbiAqICAgw6lsIHF1aWVuIHNhYmUgcXXDqSBzYWJlIHJlbmRlcml6YXIgc3UgZm9ybXVsYXJpbztcbiAqIC0gbG9zICoqcHJlc2V0cyoqIGxvcyBwYXNhIGVsIGNvbnN1bWVyLCBwb3JxdWUgXCJjb3JyZW8gZGVsIGNvbXByYWRvclwiIGVzIGRlXG4gKiAgIGNoZWNrb3V0IHkgbm8gc2lnbmlmaWNhIG5hZGEgZW4gdW5hIGVuY3Vlc3RhLlxuICpcbiAqIE5vIHRyYWUgY8Ohc2NhcmEgZGUgbW9kYWw6IGVsIGNvbnN1bWVyIGxvIGVudnVlbHZlIGVuIGB2YWwtbW9kYWwtbGF5b3V0YCAob1xuICogZW4gbG8gcXVlIHF1aWVyYSkgeSBkaXNwYXJhIGBzdWJtaXQoKWAgZGVzZGUgc3UgcHJvcGlvIGJvdMOzbiwgaWd1YWwgcXVlIGhhY2VcbiAqIGBzdXJ2ZXktY3JlYXRlLW1vZGFsYCBjb24gYHZhbC1zdXJ2ZXktYnVpbGRlcmAuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1maWVsZC1zY2hlbWEtZWRpdG9yJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIEZvcm1GaWVsZENvbXBvbmVudCxcbiAgICBUZXh0SW5wdXRDb21wb25lbnQsXG4gICAgVGV4dGFyZWFJbnB1dENvbXBvbmVudCxcbiAgICBTZWFyY2hTZWxlY3RvckNvbXBvbmVudCxcbiAgICBUb2dnbGVJbnB1dENvbXBvbmVudCxcbiAgICBGaWVsZE9wdGlvbnNFZGl0b3JDb21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGRpdiBjbGFzcz1cImZpZWxkLXNjaGVtYS1lZGl0b3JcIj5cbiAgICAgIEBpZiAoc2hvd1ByZXNldHMoKSkge1xuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldHNcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cImZpZWxkLXNjaGVtYS1lZGl0b3JfX3NlY3Rpb24tbGFiZWxcIj57eyBwcm9wcy5wcmVzZXRzVGl0bGUgfHwgdCgncHJlc2V0c1RpdGxlJykgfX08L3NwYW4+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldC1ncmlkXCI+XG4gICAgICAgICAgICBAZm9yIChwcmVzZXQgb2YgcHJvcHMucHJlc2V0czsgdHJhY2sgcHJlc2V0LmlkKSB7XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldFwiXG4gICAgICAgICAgICAgICAgW2NsYXNzLmZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldC0tc2VsZWN0ZWRdPVwic2VsZWN0ZWRQcmVzZXRJZCgpID09PSBwcmVzZXQuaWRcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RQcmVzZXQocHJlc2V0KVwiXG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8c3Ryb25nPnt7IHByZXNldC5sYWJlbCB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgIEBpZiAocHJlc2V0LmRlc2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgICA8c3Bhbj57eyBwcmVzZXQuZGVzY3JpcHRpb24gfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgfVxuXG4gICAgICA8dmFsLWZvcm0tZmllbGQgW2xhYmVsXT1cInQoJ2xhYmVsTGFiZWwnKVwiPlxuICAgICAgICA8dmFsLXRleHQtaW5wdXQgW3Byb3BzXT1cInsgY29udHJvbDogbGFiZWxDb250cm9sLCBwbGFjZWhvbGRlcjogdCgnbGFiZWxQbGFjZWhvbGRlcicpLCBzdGF0ZTogc3RhdGUoKSB9XCIgLz5cbiAgICAgIDwvdmFsLWZvcm0tZmllbGQ+XG5cbiAgICAgIDx2YWwtZm9ybS1maWVsZCBbbGFiZWxdPVwidCgndHlwZUxhYmVsJylcIj5cbiAgICAgICAgPHZhbC1zZWxlY3QtaW5wdXQgW3Byb3BzXT1cInR5cGVTZWxlY3RQcm9wcygpXCIgLz5cbiAgICAgIDwvdmFsLWZvcm0tZmllbGQ+XG5cbiAgICAgIEBpZiAocHJvcHMuc2hvd1BsYWNlaG9sZGVyICE9PSBmYWxzZSkge1xuICAgICAgICA8dmFsLWZvcm0tZmllbGQgW2xhYmVsXT1cInQoJ3BsYWNlaG9sZGVyTGFiZWwnKVwiPlxuICAgICAgICAgIDx2YWwtdGV4dGFyZWEtaW5wdXQgW3Byb3BzXT1cInsgY29udHJvbDogcGxhY2Vob2xkZXJDb250cm9sLCBhdXRvR3JvdzogdHJ1ZSwgc3RhdGU6IHN0YXRlKCkgfVwiIC8+XG4gICAgICAgIDwvdmFsLWZvcm0tZmllbGQ+XG4gICAgICB9XG5cbiAgICAgIEBpZiAocHJvcHMuc2hvd0hpbnQgIT09IGZhbHNlKSB7XG4gICAgICAgIDx2YWwtZm9ybS1maWVsZCBbbGFiZWxdPVwidCgnaGludExhYmVsJylcIj5cbiAgICAgICAgICA8dmFsLXRleHRhcmVhLWlucHV0IFtwcm9wc109XCJ7IGNvbnRyb2w6IGhpbnRDb250cm9sLCBhdXRvR3JvdzogdHJ1ZSwgc3RhdGU6IHN0YXRlKCkgfVwiIC8+XG4gICAgICAgIDwvdmFsLWZvcm0tZmllbGQ+XG4gICAgICB9XG5cbiAgICAgIDx2YWwtZm9ybS1maWVsZCBbbGFiZWxdPVwidCgnc2VjdGlvbkxhYmVsJylcIj5cbiAgICAgICAgPHZhbC10ZXh0LWlucHV0IFtwcm9wc109XCJ7IGNvbnRyb2w6IHNlY3Rpb25Db250cm9sLCBwbGFjZWhvbGRlcjogdCgnc2VjdGlvblBsYWNlaG9sZGVyJyksIHN0YXRlOiBzdGF0ZSgpIH1cIiAvPlxuICAgICAgPC92YWwtZm9ybS1maWVsZD5cblxuICAgICAgPHZhbC10b2dnbGUtaW5wdXRcbiAgICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgICBjb250cm9sOiByZXF1aXJlZENvbnRyb2wsXG4gICAgICAgICAgbGFiZWw6IHQoJ3JlcXVpcmVkTGFiZWwnKSxcbiAgICAgICAgICBzdGF0ZTogc3RhdGUoKSxcbiAgICAgICAgfVwiXG4gICAgICAvPlxuXG4gICAgICBAaWYgKG5lZWRzT3B0aW9ucygpKSB7XG4gICAgICAgICAgICA8dmFsLWZpZWxkLW9wdGlvbnMtZWRpdG9yIFtwcm9wc109XCJvcHRpb25zRWRpdG9yUHJvcHMoKVwiIChvcHRpb25zQ2hhbmdlKT1cInNldE9wdGlvbnMoJGV2ZW50KVwiIC8+XG4gICAgICB9XG5cbiAgICAgIEBpZiAodmFsaWRhdGlvbkVycm9yKCkpIHtcbiAgICAgICAgPHAgY2xhc3M9XCJmaWVsZC1zY2hlbWEtZWRpdG9yX19lcnJvclwiPnt7IHZhbGlkYXRpb25FcnJvcigpIH19PC9wPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtcbiAgICBgXG4gICAgICA6aG9zdCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmZpZWxkLXNjaGVtYS1lZGl0b3Ige1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDEycHg7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0cyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogOHB4O1xuICAgICAgfVxuICAgICAgLmZpZWxkLXNjaGVtYS1lZGl0b3JfX3NlY3Rpb24tbGFiZWwge1xuICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1tZWRpdW0sICM5Mjk0OWMpO1xuICAgICAgfVxuICAgICAgLmZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldC1ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxNjBweCwgMWZyKSk7XG4gICAgICAgIGdhcDogMTBweDtcbiAgICAgIH1cbiAgICAgIC5maWVsZC1zY2hlbWEtZWRpdG9yX19wcmVzZXQge1xuICAgICAgICBtaW4taGVpZ2h0OiA4MHB4O1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS12YWwtYm9yZGVyLWNvbG9yLCB2YXIoLS1pb24tYm9yZGVyLWNvbG9yLCByZ2JhKDAsIDAsIDAsIDAuMSkpKTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogdmFyKC0tdmFsLXJhZGl1cy1tZCwgMTJweCk7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWlvbi1jYXJkLWJhY2tncm91bmQsIHZhcigtLWlvbi1iYWNrZ3JvdW5kLWNvbG9yLCAjZmZmKSk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tdGV4dC1jb2xvcik7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICAgIC5maWVsZC1zY2hlbWEtZWRpdG9yX19wcmVzZXQgc3Ryb25nLFxuICAgICAgLmZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldCBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0IHNwYW4ge1xuICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSwgIzkyOTQ5Yyk7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0LS1zZWxlY3RlZCB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0taW9uLWNvbG9yLXByaW1hcnkpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSh2YXIoLS1pb24tY29sb3ItcHJpbWFyeS1yZ2IsIDI1NSwgMCwgMTc4KSwgMC4xNCk7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fZXJyb3Ige1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItZGFuZ2VyKTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICBgLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZFNjaGVtYUVkaXRvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHByb3BzOiBGaWVsZFNjaGVtYUVkaXRvck1ldGFkYXRhID0geyBhbGxvd2VkVHlwZXM6IFsnVEVYVCddIH07XG4gIEBPdXRwdXQoKSByZWFkb25seSBzYXZlID0gbmV3IEV2ZW50RW1pdHRlcjxFZGl0YWJsZUZpZWxkRGVmPigpO1xuICAvKipcbiAgICogRW1pdGUgZW4gY2FkYSB0ZWNsYSwgc2luIHZhbGlkYXIuIEV4aXN0ZSBwb3JxdWUgZWwgY29uc3VtZXIgbmVjZXNpdGEgZWxcbiAgICogYm9ycmFkb3IgZW4gdml2bzogc2kgc29sbyB0dXZpZXJhIGBzYXZlYCwgbG8gZXNjcml0byBhY8OhIG5vIGV4aXN0aXLDrWEgcGFyYVxuICAgKiDDqWwgaGFzdGEgcXVlIGFsZ3VpZW4gdG9xdWUgc3UgYm90w7NuIOKAlCB5IGxvIGVzY3JpdG8gRVMgbGEgaW50ZW5jacOzbiBkZWxcbiAgICogdXN1YXJpbywgbm8gdW4gYm9ycmFkb3IgcXVlIGhheWEgcXVlIGNvbmZpcm1hci5cbiAgICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBjaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxFZGl0YWJsZUZpZWxkRGVmPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgaTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgZm9ybVNjaGVtYXMgPSBpbmplY3QoRm9ybVNjaGVtYUJ1aWxkZXJTZXJ2aWNlKTtcblxuICByZWFkb25seSBsYWJlbENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycsIHsgbm9uTnVsbGFibGU6IHRydWUgfSk7XG4gIHJlYWRvbmx5IHBsYWNlaG9sZGVyQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgeyBub25OdWxsYWJsZTogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgaGludENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycsIHsgbm9uTnVsbGFibGU6IHRydWUgfSk7XG4gIHJlYWRvbmx5IHNlY3Rpb25Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnLCB7IG5vbk51bGxhYmxlOiB0cnVlIH0pO1xuICByZWFkb25seSByZXF1aXJlZENvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2wodHJ1ZSwgeyBub25OdWxsYWJsZTogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgdHlwZUNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJ1RFWFQnLCB7IG5vbk51bGxhYmxlOiB0cnVlIH0pO1xuXG4gIHJlYWRvbmx5IG9wdGlvbnMgPSBzaWduYWw8RmllbGRPcHRpb25bXT4oW10pO1xuICByZWFkb25seSB2YWxpZGF0aW9uRXJyb3IgPSBzaWduYWwoJycpO1xuICByZWFkb25seSBzZWxlY3RlZFByZXNldElkID0gc2lnbmFsKCcnKTtcbiAgLyoqIFNlIHJlZnJlc2NhIGNvbiBjYWRhIGNhbWJpbyBkZSB0aXBvIOKAlCBgbmVlZHNPcHRpb25zYCBubyBwdWVkZSBsZWVyIGVsIGNvbnRyb2wgZGlyZWN0by4gKi9cbiAgcHJpdmF0ZSByZWFkb25seSBjdXJyZW50VHlwZSA9IHNpZ25hbCgnVEVYVCcpO1xuICAvKiogVW5hIHZleiBxdWUgc2UgdG9jYSBlbCB0b2tlbiBhIG1hbm8gKG8gc2UgZWRpdGEgdW4gY2FtcG8geWEgZ3VhcmRhZG8pIGRlamEgZGUgZGVyaXZhcnNlIGRlbCBsYWJlbC4gKi9cbiAgcHJpdmF0ZSBuYW1lTG9ja2VkID0gZmFsc2U7XG4gIHByaXZhdGUgbmFtZSA9ICcnO1xuICBwcml2YXRlIGZpZWxkSWQgPSAnJztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoIXRoaXMuaTE4bi5oYXNOYW1lc3BhY2UoTkFNRVNQQUNFKSkge1xuICAgICAgdGhpcy5pMThuLnJlZ2lzdGVyRGVmYXVsdHMoTkFNRVNQQUNFLCBGSUVMRF9TQ0hFTUFfRURJVE9SX0kxOE4pO1xuICAgIH1cbiAgICB0aGlzLnR5cGVDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgdGhpcy5jdXJyZW50VHlwZS5zZXQodmFsdWUgfHwgJ1RFWFQnKTtcbiAgICAgIHRoaXMuZW1pdENoYW5nZSgpO1xuICAgIH0pO1xuICAgIHRoaXMubGFiZWxDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgaWYgKCF0aGlzLm5hbWVMb2NrZWQpIHRoaXMubmFtZSA9IHRoaXMuZm9ybVNjaGVtYXMudG9Ub2tlbih2YWx1ZSB8fCAnJyk7XG4gICAgICB0aGlzLmVtaXRDaGFuZ2UoKTtcbiAgICB9KTtcbiAgICB0aGlzLnBsYWNlaG9sZGVyQ29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHRoaXMuZW1pdENoYW5nZSgpKTtcbiAgICB0aGlzLmhpbnRDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5lbWl0Q2hhbmdlKCkpO1xuICAgIHRoaXMuc2VjdGlvbkNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVtaXRDaGFuZ2UoKSk7XG4gICAgdGhpcy5yZXF1aXJlZENvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVtaXRDaGFuZ2UoKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBpbml0aWFsID0gdGhpcy5wcm9wcy5maWVsZDtcbiAgICBpZiAoaW5pdGlhbCkge1xuICAgICAgdGhpcy5maWVsZElkID0gaW5pdGlhbC5pZDtcbiAgICAgIHRoaXMubmFtZUxvY2tlZCA9IHRydWU7XG4gICAgICB0aGlzLm5hbWUgPSBpbml0aWFsLm5hbWU7XG4gICAgICB0aGlzLmxhYmVsQ29udHJvbC5zZXRWYWx1ZShpbml0aWFsLmxhYmVsID8/ICcnKTtcbiAgICAgIHRoaXMucGxhY2Vob2xkZXJDb250cm9sLnNldFZhbHVlKGluaXRpYWwucGxhY2Vob2xkZXJUZXh0ID8/ICcnKTtcbiAgICAgIHRoaXMuaGludENvbnRyb2wuc2V0VmFsdWUoaW5pdGlhbC5oaW50VGV4dCA/PyAnJyk7XG4gICAgICB0aGlzLnNlY3Rpb25Db250cm9sLnNldFZhbHVlKGluaXRpYWwuc2VjdGlvbkxhYmVsID8/ICcnKTtcbiAgICAgIHRoaXMucmVxdWlyZWRDb250cm9sLnNldFZhbHVlKCEhaW5pdGlhbC5yZXF1aXJlZCk7XG4gICAgICB0aGlzLnR5cGVDb250cm9sLnNldFZhbHVlKHRoaXMuY29lcmNlVHlwZShpbml0aWFsLnR5cGUpKTtcbiAgICAgIHRoaXMub3B0aW9ucy5zZXQoaW5pdGlhbC5vcHRpb25zID8/IFtdKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmZpZWxkSWQgPSBgZmllbGQtJHsrK2ZpZWxkVWlkfWA7XG4gICAgdGhpcy50eXBlQ29udHJvbC5zZXRWYWx1ZSh0aGlzLmNvZXJjZVR5cGUodGhpcy50eXBlQ29udHJvbC52YWx1ZSkpO1xuICAgIGNvbnN0IGZpcnN0ID0gdGhpcy5wcm9wcy5wcmVzZXRzPy5bMF07XG4gICAgaWYgKGZpcnN0KSB0aGlzLnNlbGVjdFByZXNldChmaXJzdCk7XG4gIH1cblxuICB0KGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICB0aGlzLmkxOG4ubGFuZygpO1xuICAgIHJldHVybiB0aGlzLmkxOG4udChrZXksIE5BTUVTUEFDRSk7XG4gIH1cblxuICBzdGF0ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5zdGF0ZSA/PyBDb21wb25lbnRTdGF0ZXMuRU5BQkxFRDtcbiAgfVxuXG4gIHNob3dQcmVzZXRzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLm1vZGUgIT09ICdlZGl0JyAmJiAhIXRoaXMucHJvcHMucHJlc2V0cz8ubGVuZ3RoO1xuICB9XG5cbiAgbmVlZHNPcHRpb25zKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBGSUVMRF9UWVBFU19XSVRIX09QVElPTlMuaW5jbHVkZXModGhpcy5jdXJyZW50VHlwZSgpKTtcbiAgfVxuXG4gIHR5cGVMYWJlbCh0eXBlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnR5cGVMYWJlbHM/Llt0eXBlXSB8fCB0aGlzLnQoYHR5cGUke3R5cGV9YCk7XG4gIH1cblxuICByZWFkb25seSB0eXBlU2VsZWN0UHJvcHMgPSBjb21wdXRlZDxQYXJ0aWFsPElucHV0TWV0YWRhdGE+PigoKSA9PiB7XG4gICAgdGhpcy5pMThuLmxhbmcoKTtcbiAgICByZXR1cm4ge1xuICAgICAgY29udHJvbDogdGhpcy50eXBlQ29udHJvbCxcbiAgICAgIHR5cGU6IElucHV0VHlwZS5TRUxFQ1QsXG4gICAgICBzdGF0ZTogdGhpcy5zdGF0ZSgpLFxuICAgICAgcGxhY2Vob2xkZXI6IHRoaXMudCgndHlwZUxhYmVsJyksXG4gICAgICAvLyBhY3Rpb24tc2hlZXQgeSBubyBlbCBwb3BvdmVyIGRlZmF1bHQgZGUgSW9uaWM6IGVsIHBvcG92ZXIgc2UgYW5jbGEgYWxcbiAgICAgIC8vIGNhbXBvLCB5IGNvbiBlbCBjYW1wbyBjZXJjYSBkZWwgYm9yZGUgaW5mZXJpb3IgeSB1biBjYXTDoWxvZ28gbGFyZ29cbiAgICAgIC8vIElvbmljIGxvIHJlY29ydGEgYXJyaWJhIFkgYWJham8g4oCUIHF1ZWRhYmFuIHRpcG9zIGltcG9zaWJsZXMgZGUgZWxlZ2lyLlxuICAgICAgLy8gTGEgaG9qYSB1c2EgZWwgYWx0byBjb21wbGV0byB5IHNjcm9sbGVhIHNvbGEuXG4gICAgICBzZWxlY3RJbnRlcmZhY2U6ICdhY3Rpb24tc2hlZXQnLFxuICAgICAgb3B0aW9uczogdGhpcy5hbGxvd2VkVHlwZXMoKS5tYXAoKHR5cGUsIG9yZGVyKSA9PiAoeyBpZDogdHlwZSwgbmFtZTogdGhpcy50eXBlTGFiZWwodHlwZSksIG9yZGVyIH0pKSxcbiAgICB9O1xuICB9KTtcblxuICByZWFkb25seSBvcHRpb25zRWRpdG9yUHJvcHMgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgdGhpcy5pMThuLmxhbmcoKTtcbiAgICByZXR1cm4ge1xuICAgICAgdGl0bGU6IHRoaXMudCgnb3B0aW9uc1RpdGxlJyksXG4gICAgICBoaW50OiB0aGlzLnQoJ29wdGlvbnNIaW50JyksXG4gICAgICBhZGRMYWJlbDogdGhpcy50KCdvcHRpb25zQWRkJyksXG4gICAgICBvcHRpb25zTGFiZWw6IHRoaXMudCgnb3B0aW9uc0xpc3QnKSxcbiAgICAgIHBsYWNlaG9sZGVyOiB0aGlzLnQoJ29wdGlvbnNQbGFjZWhvbGRlcicpLFxuICAgICAgZW1wdHlUZXh0OiB0aGlzLnQoJ29wdGlvbnNFbXB0eScpLFxuICAgICAgcmVtb3ZlT3B0aW9uTGFiZWw6IHRoaXMudCgnb3B0aW9uc1JlbW92ZScpLFxuICAgICAgcmVvcmRlck9wdGlvbkxhYmVsOiB0aGlzLnQoJ29wdGlvbnNSZW9yZGVyJyksXG4gICAgICBzdGF0ZTogdGhpcy5zdGF0ZSgpLFxuICAgICAgb3B0aW9uczogdGhpcy5vcHRpb25zKCksXG4gICAgfTtcbiAgfSk7XG5cbiAgc2V0T3B0aW9ucyhvcHRpb25zOiBGaWVsZE9wdGlvbltdKTogdm9pZCB7XG4gICAgdGhpcy5vcHRpb25zLnNldChvcHRpb25zKTtcbiAgICB0aGlzLmVtaXRDaGFuZ2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdENoYW5nZSgpOiB2b2lkIHtcbiAgICAvLyBBbnRlcyBkZSBuZ09uSW5pdCBubyBoYXkgaWQ6IGVtaXRpciBhaMOtIGRhcsOtYSB1biBjYW1wbyBzaW4gaWRlbnRpZGFkLCBxdWVcbiAgICAvLyBlbCBjb25zdW1lciBubyBzYWJyw61hIGEgcXXDqSBmaWxhIGFwbGljYXIuXG4gICAgaWYgKHRoaXMuZmllbGRJZCkgdGhpcy5jaGFuZ2VkLmVtaXQodGhpcy52YWx1ZSgpKTtcbiAgfVxuXG4gIHNlbGVjdFByZXNldChwcmVzZXQ6IEZpZWxkU2NoZW1hRWRpdG9yUHJlc2V0KTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZFByZXNldElkLnNldChwcmVzZXQuaWQpO1xuICAgIGNvbnN0IHZhbHVlID0gcHJlc2V0LmZpZWxkO1xuICAgIC8vIEVsIHByZXNldCBmaWphIGVsIHRva2VuOiBcImNvcnJlbyBkZWwgY29tcHJhZG9yXCIgdGllbmUgcXVlIGxsYW1hcnNlXG4gICAgLy8gYGVtYWlsYCBhdW5xdWUgZGVzcHXDqXMgbGUgY2FtYmllbiBlbCB0ZXh0byB2aXNpYmxlLlxuICAgIHRoaXMubmFtZUxvY2tlZCA9ICEhdmFsdWUubmFtZTtcbiAgICB0aGlzLm5hbWUgPSB2YWx1ZS5uYW1lIHx8IHRoaXMuZm9ybVNjaGVtYXMudG9Ub2tlbih2YWx1ZS5sYWJlbCB8fCAnJyk7XG4gICAgdGhpcy5sYWJlbENvbnRyb2wuc2V0VmFsdWUodmFsdWUubGFiZWwgPz8gJycpO1xuICAgIHRoaXMucGxhY2Vob2xkZXJDb250cm9sLnNldFZhbHVlKHZhbHVlLnBsYWNlaG9sZGVyVGV4dCA/PyAnJyk7XG4gICAgdGhpcy5oaW50Q29udHJvbC5zZXRWYWx1ZSh2YWx1ZS5oaW50VGV4dCA/PyAnJyk7XG4gICAgdGhpcy5zZWN0aW9uQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZS5zZWN0aW9uTGFiZWwgPz8gJycpO1xuICAgIHRoaXMucmVxdWlyZWRDb250cm9sLnNldFZhbHVlKCEhdmFsdWUucmVxdWlyZWQpO1xuICAgIHRoaXMudHlwZUNvbnRyb2wuc2V0VmFsdWUodGhpcy5jb2VyY2VUeXBlKHZhbHVlLnR5cGUpKTtcbiAgICB0aGlzLm9wdGlvbnMuc2V0KHZhbHVlLm9wdGlvbnMgPz8gW10pO1xuICAgIHRoaXMuZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYSB5IGVtaXRlLiBQw7pibGljbyBhIHByb3DDs3NpdG86IGxvIGxsYW1hIGVsIGNvbnN1bWVyIGRlc2RlIGVsIGJvdMOzblxuICAgKiBkZSBzdSBwcm9waWEgY8Ohc2NhcmEgKG1vZGFsLCBww6FnaW5hIG8gYWNvcmRlw7NuKS5cbiAgICovXG4gIHN1Ym1pdCgpOiBib29sZWFuIHtcbiAgICBjb25zdCBmaWVsZCA9IHRoaXMudmFsdWUoKTtcbiAgICBpZiAoIWZpZWxkLmxhYmVsIHx8ICFmaWVsZC5uYW1lIHx8ICFmaWVsZC50eXBlKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25FcnJvci5zZXQodGhpcy50KCdlcnJvckluY29tcGxldGUnKSk7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGlmICh0aGlzLm5lZWRzT3B0aW9ucygpICYmICEoZmllbGQub3B0aW9ucz8ubGVuZ3RoID8/IDApKSB7XG4gICAgICB0aGlzLnZhbGlkYXRpb25FcnJvci5zZXQodGhpcy50KCdlcnJvck9wdGlvbnNSZXF1aXJlZCcpKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy52YWxpZGF0aW9uRXJyb3Iuc2V0KCcnKTtcbiAgICB0aGlzLnNhdmUuZW1pdChmaWVsZCk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKiogRWwgY2FtcG8gdGFsIGNvbW8gZXN0w6EgZW4gcGFudGFsbGEsIHNpbiB2YWxpZGFyLiAqL1xuICB2YWx1ZSgpOiBFZGl0YWJsZUZpZWxkRGVmIHtcbiAgICBjb25zdCBsYWJlbCA9ICh0aGlzLmxhYmVsQ29udHJvbC52YWx1ZSB8fCAnJykudHJpbSgpO1xuICAgIHJldHVybiB7XG4gICAgICBpZDogdGhpcy5maWVsZElkLFxuICAgICAgbmFtZTogdGhpcy5mb3JtU2NoZW1hcy50b1Rva2VuKHRoaXMubmFtZSB8fCBsYWJlbCksXG4gICAgICBsYWJlbCxcbiAgICAgIHBsYWNlaG9sZGVyVGV4dDogKHRoaXMucGxhY2Vob2xkZXJDb250cm9sLnZhbHVlIHx8ICcnKS50cmltKCksXG4gICAgICBoaW50VGV4dDogKHRoaXMuaGludENvbnRyb2wudmFsdWUgfHwgJycpLnRyaW0oKSxcbiAgICAgIHR5cGU6IHRoaXMuY29lcmNlVHlwZSh0aGlzLnR5cGVDb250cm9sLnZhbHVlKSxcbiAgICAgIHJlcXVpcmVkOiB0aGlzLnJlcXVpcmVkQ29udHJvbC52YWx1ZSxcbiAgICAgIHNlY3Rpb25MYWJlbDogKHRoaXMuc2VjdGlvbkNvbnRyb2wudmFsdWUgfHwgJycpLnRyaW0oKSxcbiAgICAgIG9wdGlvbnM6IHRoaXMubmVlZHNPcHRpb25zKCkgPyB0aGlzLm9wdGlvbnMoKS5tYXAoKG9wdGlvbiwgaW5kZXgpID0+ICh7IC4uLm9wdGlvbiwgb3JkZXI6IGluZGV4IH0pKSA6IHVuZGVmaW5lZCxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBhbGxvd2VkVHlwZXMoKTogc3RyaW5nW10ge1xuICAgIHJldHVybiB0aGlzLnByb3BzLmFsbG93ZWRUeXBlcz8ubGVuZ3RoID8gdGhpcy5wcm9wcy5hbGxvd2VkVHlwZXMgOiBbJ1RFWFQnXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVbiB0aXBvIGZ1ZXJhIGRlbCBjYXTDoWxvZ28gZGVsIGNvbnN1bWVyIGNhZSBhbCBwcmltZXJvIHBlcm1pdGlkby4gUGFzYSBhbFxuICAgKiBlZGl0YXIgdW4gY2FtcG8gZ3VhcmRhZG8gY29uIHVuIHRpcG8gcXVlIGxhIGFwcCB5YSBubyBvZnJlY2UgKGJpbmdvIGxvXG4gICAqIGhhY8OtYSBjb24gQVRUQUNITUVOVCBjdWFuZG8gZWwgbWVkaW8gZGUgcGFnbyBubyBsbyBhZG1pdGUpOiBzaW4gZXN0bywgZWxcbiAgICogc2VsZWN0IHF1ZWRhIGVuIHVuIHZhbG9yIHF1ZSBubyBlc3TDoSBlbiBzdSBsaXN0YSB5IHNlIHZlIHZhY8Otby5cbiAgICovXG4gIHByaXZhdGUgY29lcmNlVHlwZSh0eXBlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFsbG93ZWQgPSB0aGlzLmFsbG93ZWRUeXBlcygpO1xuICAgIHJldHVybiBhbGxvd2VkLmluY2x1ZGVzKHR5cGUpID8gdHlwZSA6IGFsbG93ZWRbMF07XG4gIH1cbn1cbiJdfQ==
378
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtc2NoZW1hLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2ZpZWxkLXNjaGVtYS1lZGl0b3IvZmllbGQtc2NoZW1hLWVkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUUvRixPQUFPLEVBQUUsZUFBZSxFQUFpQixTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDckYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDakcsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDOUYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDM0YsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0scUVBQXFFLENBQUM7QUFFbEgsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBRXRFLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDO0FB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QTJCO3FCQUM1QixZQUNTOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0ErRFQ7d0RBOERRLEtBQUs7c0JBQWIsS0FBSztnQkFDYSxJQUFJO3NCQUF0QixNQUFNO2dCQU9ZLE9BQU87c0JBQXpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgY29tcHV0ZWQsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9pMThuJztcbmltcG9ydCB7IEZvcm1TY2hlbWFCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm1zL2Zvcm0tc2NoZW1hLWJ1aWxkZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGaWVsZE9wdGlvbiB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2VzL2Zvcm1zL3R5cGVzJztcbmltcG9ydCB7IENvbXBvbmVudFN0YXRlcywgSW5wdXRNZXRhZGF0YSwgSW5wdXRUeXBlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRm9ybUZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2Zvcm0tZmllbGQvZm9ybS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL3RleHQtaW5wdXQvdGV4dC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dGFyZWFJbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uL21vbGVjdWxlcy90ZXh0YXJlYS1pbnB1dC90ZXh0YXJlYS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoU2VsZWN0b3JDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvc2VsZWN0LWlucHV0L3NlbGVjdC1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG9nZ2xlSW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9tb2xlY3VsZXMvdG9nZ2xlLWlucHV0L3RvZ2dsZS1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmllbGRPcHRpb25zRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vbW9sZWN1bGVzL2ZpZWxkLW9wdGlvbnMtZWRpdG9yL2ZpZWxkLW9wdGlvbnMtZWRpdG9yLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFZGl0YWJsZUZpZWxkRGVmLCBGaWVsZFNjaGVtYUVkaXRvck1ldGFkYXRhLCBGaWVsZFNjaGVtYUVkaXRvclByZXNldCB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgRklFTERfU0NIRU1BX0VESVRPUl9JMThOIH0gZnJvbSAnLi9maWVsZC1zY2hlbWEtZWRpdG9yLmkxOG4nO1xuXG5jb25zdCBOQU1FU1BBQ0UgPSAnRmllbGRTY2hlbWFFZGl0b3InO1xuXG4vKipcbiAqIFRpcG9zIGN1eW8gdmFsb3Igc2FsZSBkZSB1bmEgbGlzdGEgY2VycmFkYSBxdWUgZGVmaW5lIHF1aWVuIGFybWEgZWxcbiAqIGZvcm11bGFyaW8g4oCUIHNpbiBhbCBtZW5vcyB1bmEgb3BjacOzbiwgZWwgY2FtcG8gbm8gc2UgcHVlZGUgcmVzcG9uZGVyLlxuICogRXNwZWpvIGRlIGBmaWVsZFJlcXVpcmVzT3B0aW9uc2AgcXVlIHZpdsOtYSBkdXBsaWNhZG8gZW4gYmluZ28uXG4gKi9cbmV4cG9ydCBjb25zdCBGSUVMRF9UWVBFU19XSVRIX09QVElPTlMgPSBbJ1NFTEVDVCcsICdSQURJTycsICdNVUxUSV9TRUxFQ1QnXTtcblxubGV0IGZpZWxkVWlkID0gMDtcblxuLyoqXG4gKiB2YWwtZmllbGQtc2NoZW1hLWVkaXRvclxuICpcbiAqIEVkaXRhIFVOIGNhbXBvIGRlIHVuIGZvcm11bGFyaW8gZGluw6FtaWNvOiB0ZXh0bywgdGlwbywgcGxhY2Vob2xkZXIsIG5vdGEsXG4gKiBvYmxpZ2F0b3JpZWRhZCB5IG9wY2lvbmVzLiBFcyBsYSBwaWV6YSBxdWUgZmFsdGFiYSBlbiBsYSBsaWIg4oCUIGhhc3RhIGFob3JhXG4gKiBlbCDDum5pY28gZWRpdG9yIGRlIGNhbXBvcyBjb24gZXN0ZSBuaXZlbCB2aXbDrWEgZGVudHJvIGRlIGJpbmdvXG4gKiAoYGNoZWNrb3V0LWZpZWxkLW1vZGFsLmNvbXBvbmVudC50c2ApLCBpbnZpc2libGUgcGFyYSBlbCByZXN0byBkZWwgZmFjdG9yeSxcbiAqIHkgYHZhbC1zdXJ2ZXktYnVpbGRlcmAgaGFiw61hIHRlcm1pbmFkbyBjb24gdW5hIHZlcnNpw7NuIHBvYnJlIGRlIGxvIG1pc21vXG4gKiAoZG9zIHRpcG9zIGZpam9zLCBzaW4gcGxhY2Vob2xkZXIgbmkgb3BjaW9uZXMpLlxuICpcbiAqIEVzIGFnbsOzc3RpY28gZGUgZG9taW5pbyBhIHByb3DDs3NpdG86XG4gKiAtIGVsICoqY2F0w6Fsb2dvIGRlIHRpcG9zKiogKGBhbGxvd2VkVHlwZXNgKSBsbyBkZWNpZGUgZWwgY29uc3VtZXIsIHBvcnF1ZSBlc1xuICogICDDqWwgcXVpZW4gc2FiZSBxdcOpIHNhYmUgcmVuZGVyaXphciBzdSBmb3JtdWxhcmlvO1xuICogLSBsb3MgKipwcmVzZXRzKiogbG9zIHBhc2EgZWwgY29uc3VtZXIsIHBvcnF1ZSBcImNvcnJlbyBkZWwgY29tcHJhZG9yXCIgZXMgZGVcbiAqICAgY2hlY2tvdXQgeSBubyBzaWduaWZpY2EgbmFkYSBlbiB1bmEgZW5jdWVzdGEuXG4gKlxuICogTm8gdHJhZSBjw6FzY2FyYSBkZSBtb2RhbDogZWwgY29uc3VtZXIgbG8gZW52dWVsdmUgZW4gYHZhbC1tb2RhbC1sYXlvdXRgIChvXG4gKiBlbiBsbyBxdWUgcXVpZXJhKSB5IGRpc3BhcmEgYHN1Ym1pdCgpYCBkZXNkZSBzdSBwcm9waW8gYm90w7NuLCBpZ3VhbCBxdWUgaGFjZVxuICogYHN1cnZleS1jcmVhdGUtbW9kYWxgIGNvbiBgdmFsLXN1cnZleS1idWlsZGVyYC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWZpZWxkLXNjaGVtYS1lZGl0b3InLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgRm9ybUZpZWxkQ29tcG9uZW50LFxuICAgIFRleHRJbnB1dENvbXBvbmVudCxcbiAgICBUZXh0YXJlYUlucHV0Q29tcG9uZW50LFxuICAgIFNlYXJjaFNlbGVjdG9yQ29tcG9uZW50LFxuICAgIFRvZ2dsZUlucHV0Q29tcG9uZW50LFxuICAgIEZpZWxkT3B0aW9uc0VkaXRvckNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8ZGl2IGNsYXNzPVwiZmllbGQtc2NoZW1hLWVkaXRvclwiPlxuICAgICAgQGlmIChzaG93UHJlc2V0cygpKSB7XG4gICAgICAgIDxzZWN0aW9uIGNsYXNzPVwiZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0c1wiPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmllbGQtc2NoZW1hLWVkaXRvcl9fc2VjdGlvbi1sYWJlbFwiPnt7IHByb3BzLnByZXNldHNUaXRsZSB8fCB0KCdwcmVzZXRzVGl0bGUnKSB9fTwvc3Bhbj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0LWdyaWRcIj5cbiAgICAgICAgICAgIEBmb3IgKHByZXNldCBvZiBwcm9wcy5wcmVzZXRzOyB0cmFjayBwcmVzZXQuaWQpIHtcbiAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0XCJcbiAgICAgICAgICAgICAgICBbY2xhc3MuZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0LS1zZWxlY3RlZF09XCJzZWxlY3RlZFByZXNldElkKCkgPT09IHByZXNldC5pZFwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdFByZXNldChwcmVzZXQpXCJcbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzdHJvbmc+e3sgcHJlc2V0LmxhYmVsIH19PC9zdHJvbmc+XG4gICAgICAgICAgICAgICAgQGlmIChwcmVzZXQuZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgIDxzcGFuPnt7IHByZXNldC5kZXNjcmlwdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgICB9XG5cbiAgICAgIDx2YWwtZm9ybS1maWVsZCBbbGFiZWxdPVwidCgnbGFiZWxMYWJlbCcpXCI+XG4gICAgICAgIDx2YWwtdGV4dC1pbnB1dCBbcHJvcHNdPVwieyBjb250cm9sOiBsYWJlbENvbnRyb2wsIHBsYWNlaG9sZGVyOiB0KCdsYWJlbFBsYWNlaG9sZGVyJyksIHN0YXRlOiBzdGF0ZSgpIH1cIiAvPlxuICAgICAgPC92YWwtZm9ybS1maWVsZD5cblxuICAgICAgPHZhbC1mb3JtLWZpZWxkIFtsYWJlbF09XCJ0KCd0eXBlTGFiZWwnKVwiPlxuICAgICAgICA8dmFsLXNlbGVjdC1pbnB1dCBbcHJvcHNdPVwidHlwZVNlbGVjdFByb3BzKClcIiAvPlxuICAgICAgPC92YWwtZm9ybS1maWVsZD5cblxuICAgICAgQGlmIChwcm9wcy5zaG93UGxhY2Vob2xkZXIgIT09IGZhbHNlKSB7XG4gICAgICAgIDx2YWwtZm9ybS1maWVsZCBbbGFiZWxdPVwidCgncGxhY2Vob2xkZXJMYWJlbCcpXCI+XG4gICAgICAgICAgPHZhbC10ZXh0YXJlYS1pbnB1dCBbcHJvcHNdPVwieyBjb250cm9sOiBwbGFjZWhvbGRlckNvbnRyb2wsIGF1dG9Hcm93OiB0cnVlLCBzdGF0ZTogc3RhdGUoKSB9XCIgLz5cbiAgICAgICAgPC92YWwtZm9ybS1maWVsZD5cbiAgICAgIH1cblxuICAgICAgQGlmIChwcm9wcy5zaG93SGludCAhPT0gZmFsc2UpIHtcbiAgICAgICAgPHZhbC1mb3JtLWZpZWxkIFtsYWJlbF09XCJ0KCdoaW50TGFiZWwnKVwiPlxuICAgICAgICAgIDx2YWwtdGV4dGFyZWEtaW5wdXQgW3Byb3BzXT1cInsgY29udHJvbDogaGludENvbnRyb2wsIGF1dG9Hcm93OiB0cnVlLCBzdGF0ZTogc3RhdGUoKSB9XCIgLz5cbiAgICAgICAgPC92YWwtZm9ybS1maWVsZD5cbiAgICAgIH1cblxuICAgICAgPHZhbC1mb3JtLWZpZWxkIFtsYWJlbF09XCJ0KCdzZWN0aW9uTGFiZWwnKVwiPlxuICAgICAgICA8dmFsLXRleHQtaW5wdXQgW3Byb3BzXT1cInsgY29udHJvbDogc2VjdGlvbkNvbnRyb2wsIHBsYWNlaG9sZGVyOiB0KCdzZWN0aW9uUGxhY2Vob2xkZXInKSwgc3RhdGU6IHN0YXRlKCkgfVwiIC8+XG4gICAgICA8L3ZhbC1mb3JtLWZpZWxkPlxuXG4gICAgICA8dmFsLXRvZ2dsZS1pbnB1dFxuICAgICAgICBbcHJvcHNdPVwie1xuICAgICAgICAgIGNvbnRyb2w6IHJlcXVpcmVkQ29udHJvbCxcbiAgICAgICAgICBsYWJlbDogdCgncmVxdWlyZWRMYWJlbCcpLFxuICAgICAgICAgIHN0YXRlOiBzdGF0ZSgpLFxuICAgICAgICB9XCJcbiAgICAgIC8+XG5cbiAgICAgIEBpZiAobmVlZHNPcHRpb25zKCkpIHtcbiAgICAgICAgICAgIDx2YWwtZmllbGQtb3B0aW9ucy1lZGl0b3IgW3Byb3BzXT1cIm9wdGlvbnNFZGl0b3JQcm9wcygpXCIgKG9wdGlvbnNDaGFuZ2UpPVwic2V0T3B0aW9ucygkZXZlbnQpXCIgLz5cbiAgICAgIH1cblxuICAgICAgQGlmICh2YWxpZGF0aW9uRXJyb3IoKSkge1xuICAgICAgICA8cCBjbGFzcz1cImZpZWxkLXNjaGVtYS1lZGl0b3JfX2Vycm9yXCI+e3sgdmFsaWRhdGlvbkVycm9yKCkgfX08L3A+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW1xuICAgIGBcbiAgICAgIDpob3N0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGdhcDogMTJweDtcbiAgICAgIH1cbiAgICAgIC5maWVsZC1zY2hlbWEtZWRpdG9yX19wcmVzZXRzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fc2VjdGlvbi1sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogdmFyKC0taW9uLWNvbG9yLW1lZGl1bSwgIzkyOTQ5Yyk7XG4gICAgICB9XG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0LWdyaWQge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE2MHB4LCAxZnIpKTtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgfVxuICAgICAgLmZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDgwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXZhbC1ib3JkZXItY29sb3IsIHZhcigtLWlvbi1ib3JkZXItY29sb3IsIHJnYmEoMCwgMCwgMCwgMC4xKSkpO1xuICAgICAgICBib3JkZXItcmFkaXVzOiB2YXIoLS12YWwtcmFkaXVzLW1kLCAxMnB4KTtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0taW9uLWNhcmQtYmFja2dyb3VuZCwgdmFyKC0taW9uLWJhY2tncm91bmQtY29sb3IsICNmZmYpKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi10ZXh0LWNvbG9yKTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgICAgLmZpZWxkLXNjaGVtYS1lZGl0b3JfX3ByZXNldCBzdHJvbmcsXG4gICAgICAuZmllbGQtc2NoZW1hLWVkaXRvcl9fcHJlc2V0IHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIC5maWVsZC1zY2hlbWEtZWRpdG9yX19wcmVzZXQgc3BhbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1pb24tY29sb3ItbWVkaXVtLCAjOTI5NDljKTtcbiAgICAgIH1cbiAgICAgIC5maWVsZC1zY2hlbWEtZWRpdG9yX19wcmVzZXQtLXNlbGVjdGVkIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1pb24tY29sb3ItcHJpbWFyeSk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWlvbi1jb2xvci1wcmltYXJ5LXJnYiwgMjU1LCAwLCAxNzgpLCAwLjE0KTtcbiAgICAgIH1cbiAgICAgIC5maWVsZC1zY2hlbWEtZWRpdG9yX19lcnJvciB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6IHZhcigtLWlvbi1jb2xvci1kYW5nZXIpO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIGAsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZpZWxkU2NoZW1hRWRpdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgcHJvcHM6IEZpZWxkU2NoZW1hRWRpdG9yTWV0YWRhdGEgPSB7IGFsbG93ZWRUeXBlczogWydURVhUJ10gfTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNhdmUgPSBuZXcgRXZlbnRFbWl0dGVyPEVkaXRhYmxlRmllbGREZWY+KCk7XG4gIC8qKlxuICAgKiBFbWl0ZSBlbiBjYWRhIHRlY2xhLCBzaW4gdmFsaWRhci4gRXhpc3RlIHBvcnF1ZSBlbCBjb25zdW1lciBuZWNlc2l0YSBlbFxuICAgKiBib3JyYWRvciBlbiB2aXZvOiBzaSBzb2xvIHR1dmllcmEgYHNhdmVgLCBsbyBlc2NyaXRvIGFjw6Egbm8gZXhpc3RpcsOtYSBwYXJhXG4gICAqIMOpbCBoYXN0YSBxdWUgYWxndWllbiB0b3F1ZSBzdSBib3TDs24g4oCUIHkgbG8gZXNjcml0byBFUyBsYSBpbnRlbmNpw7NuIGRlbFxuICAgKiB1c3VhcmlvLCBubyB1biBib3JyYWRvciBxdWUgaGF5YSBxdWUgY29uZmlybWFyLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IGNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPEVkaXRhYmxlRmllbGREZWY+KCk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBpMThuID0gaW5qZWN0KEkxOG5TZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBmb3JtU2NoZW1hcyA9IGluamVjdChGb3JtU2NoZW1hQnVpbGRlclNlcnZpY2UpO1xuXG4gIHJlYWRvbmx5IGxhYmVsQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgeyBub25OdWxsYWJsZTogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgcGxhY2Vob2xkZXJDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnLCB7IG5vbk51bGxhYmxlOiB0cnVlIH0pO1xuICByZWFkb25seSBoaW50Q29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgeyBub25OdWxsYWJsZTogdHJ1ZSB9KTtcbiAgcmVhZG9ubHkgc2VjdGlvbkNvbnRyb2wgPSBuZXcgRm9ybUNvbnRyb2woJycsIHsgbm9uTnVsbGFibGU6IHRydWUgfSk7XG4gIHJlYWRvbmx5IHJlcXVpcmVkQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCh0cnVlLCB7IG5vbk51bGxhYmxlOiB0cnVlIH0pO1xuICByZWFkb25seSB0eXBlQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnVEVYVCcsIHsgbm9uTnVsbGFibGU6IHRydWUgfSk7XG5cbiAgcmVhZG9ubHkgb3B0aW9ucyA9IHNpZ25hbDxGaWVsZE9wdGlvbltdPihbXSk7XG4gIHJlYWRvbmx5IHZhbGlkYXRpb25FcnJvciA9IHNpZ25hbCgnJyk7XG4gIHJlYWRvbmx5IHNlbGVjdGVkUHJlc2V0SWQgPSBzaWduYWwoJycpO1xuICAvKiogU2UgcmVmcmVzY2EgY29uIGNhZGEgY2FtYmlvIGRlIHRpcG8g4oCUIGBuZWVkc09wdGlvbnNgIG5vIHB1ZWRlIGxlZXIgZWwgY29udHJvbCBkaXJlY3RvLiAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGN1cnJlbnRUeXBlID0gc2lnbmFsKCdURVhUJyk7XG4gIHByaXZhdGUgY3VycmVudFNlY3Rpb25JZCA9ICcnO1xuICAvKiogVW5hIHZleiBxdWUgc2UgdG9jYSBlbCB0b2tlbiBhIG1hbm8gKG8gc2UgZWRpdGEgdW4gY2FtcG8geWEgZ3VhcmRhZG8pIGRlamEgZGUgZGVyaXZhcnNlIGRlbCBsYWJlbC4gKi9cbiAgcHJpdmF0ZSBuYW1lTG9ja2VkID0gZmFsc2U7XG4gIHByaXZhdGUgbmFtZSA9ICcnO1xuICBwcml2YXRlIGZpZWxkSWQgPSAnJztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBpZiAoIXRoaXMuaTE4bi5oYXNOYW1lc3BhY2UoTkFNRVNQQUNFKSkge1xuICAgICAgdGhpcy5pMThuLnJlZ2lzdGVyRGVmYXVsdHMoTkFNRVNQQUNFLCBGSUVMRF9TQ0hFTUFfRURJVE9SX0kxOE4pO1xuICAgIH1cbiAgICB0aGlzLnR5cGVDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgdGhpcy5jdXJyZW50VHlwZS5zZXQodmFsdWUgfHwgJ1RFWFQnKTtcbiAgICAgIHRoaXMuZW1pdENoYW5nZSgpO1xuICAgIH0pO1xuICAgIHRoaXMubGFiZWxDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgaWYgKCF0aGlzLm5hbWVMb2NrZWQpIHRoaXMubmFtZSA9IHRoaXMuZm9ybVNjaGVtYXMudG9Ub2tlbih2YWx1ZSB8fCAnJyk7XG4gICAgICB0aGlzLmVtaXRDaGFuZ2UoKTtcbiAgICB9KTtcbiAgICB0aGlzLnBsYWNlaG9sZGVyQ29udHJvbC52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHRoaXMuZW1pdENoYW5nZSgpKTtcbiAgICB0aGlzLmhpbnRDb250cm9sLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCkgPT4gdGhpcy5lbWl0Q2hhbmdlKCkpO1xuICAgIHRoaXMuc2VjdGlvbkNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVtaXRDaGFuZ2UoKSk7XG4gICAgdGhpcy5yZXF1aXJlZENvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB0aGlzLmVtaXRDaGFuZ2UoKSk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBjb25zdCBpbml0aWFsID0gdGhpcy5wcm9wcy5maWVsZDtcbiAgICBpZiAoaW5pdGlhbCkge1xuICAgICAgdGhpcy5maWVsZElkID0gaW5pdGlhbC5pZDtcbiAgICAgIHRoaXMuY3VycmVudFNlY3Rpb25JZCA9IGluaXRpYWwuc2VjdGlvbklkID8/ICcnO1xuICAgICAgdGhpcy5uYW1lTG9ja2VkID0gdHJ1ZTtcbiAgICAgIHRoaXMubmFtZSA9IGluaXRpYWwubmFtZTtcbiAgICAgIHRoaXMubGFiZWxDb250cm9sLnNldFZhbHVlKGluaXRpYWwubGFiZWwgPz8gJycpO1xuICAgICAgdGhpcy5wbGFjZWhvbGRlckNvbnRyb2wuc2V0VmFsdWUoaW5pdGlhbC5wbGFjZWhvbGRlclRleHQgPz8gJycpO1xuICAgICAgdGhpcy5oaW50Q29udHJvbC5zZXRWYWx1ZShpbml0aWFsLmhpbnRUZXh0ID8/ICcnKTtcbiAgICAgIHRoaXMuc2VjdGlvbkNvbnRyb2wuc2V0VmFsdWUoaW5pdGlhbC5zZWN0aW9uTGFiZWwgPz8gJycpO1xuICAgICAgdGhpcy5yZXF1aXJlZENvbnRyb2wuc2V0VmFsdWUoISFpbml0aWFsLnJlcXVpcmVkKTtcbiAgICAgIHRoaXMudHlwZUNvbnRyb2wuc2V0VmFsdWUodGhpcy5jb2VyY2VUeXBlKGluaXRpYWwudHlwZSkpO1xuICAgICAgdGhpcy5vcHRpb25zLnNldChpbml0aWFsLm9wdGlvbnMgPz8gW10pO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZmllbGRJZCA9IGBmaWVsZC0keysrZmllbGRVaWR9YDtcbiAgICB0aGlzLnR5cGVDb250cm9sLnNldFZhbHVlKHRoaXMuY29lcmNlVHlwZSh0aGlzLnR5cGVDb250cm9sLnZhbHVlKSk7XG4gICAgY29uc3QgZmlyc3QgPSB0aGlzLnByb3BzLnByZXNldHM/LlswXTtcbiAgICBpZiAoZmlyc3QpIHRoaXMuc2VsZWN0UHJlc2V0KGZpcnN0KTtcbiAgfVxuXG4gIHQoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHRoaXMuaTE4bi5sYW5nKCk7XG4gICAgcmV0dXJuIHRoaXMuaTE4bi50KGtleSwgTkFNRVNQQUNFKTtcbiAgfVxuXG4gIHN0YXRlKCkge1xuICAgIHJldHVybiB0aGlzLnByb3BzLnN0YXRlID8/IENvbXBvbmVudFN0YXRlcy5FTkFCTEVEO1xuICB9XG5cbiAgc2hvd1ByZXNldHMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMubW9kZSAhPT0gJ2VkaXQnICYmICEhdGhpcy5wcm9wcy5wcmVzZXRzPy5sZW5ndGg7XG4gIH1cblxuICBuZWVkc09wdGlvbnMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIEZJRUxEX1RZUEVTX1dJVEhfT1BUSU9OUy5pbmNsdWRlcyh0aGlzLmN1cnJlbnRUeXBlKCkpO1xuICB9XG5cbiAgdHlwZUxhYmVsKHR5cGU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucHJvcHMudHlwZUxhYmVscz8uW3R5cGVdIHx8IHRoaXMudChgdHlwZSR7dHlwZX1gKTtcbiAgfVxuXG4gIHJlYWRvbmx5IHR5cGVTZWxlY3RQcm9wcyA9IGNvbXB1dGVkPFBhcnRpYWw8SW5wdXRNZXRhZGF0YT4+KCgpID0+IHtcbiAgICB0aGlzLmkxOG4ubGFuZygpO1xuICAgIHJldHVybiB7XG4gICAgICBjb250cm9sOiB0aGlzLnR5cGVDb250cm9sLFxuICAgICAgdHlwZTogSW5wdXRUeXBlLlNFTEVDVCxcbiAgICAgIHN0YXRlOiB0aGlzLnN0YXRlKCksXG4gICAgICBwbGFjZWhvbGRlcjogdGhpcy50KCd0eXBlTGFiZWwnKSxcbiAgICAgIC8vIGFjdGlvbi1zaGVldCB5IG5vIGVsIHBvcG92ZXIgZGVmYXVsdCBkZSBJb25pYzogZWwgcG9wb3ZlciBzZSBhbmNsYSBhbFxuICAgICAgLy8gY2FtcG8sIHkgY29uIGVsIGNhbXBvIGNlcmNhIGRlbCBib3JkZSBpbmZlcmlvciB5IHVuIGNhdMOhbG9nbyBsYXJnb1xuICAgICAgLy8gSW9uaWMgbG8gcmVjb3J0YSBhcnJpYmEgWSBhYmFqbyDigJQgcXVlZGFiYW4gdGlwb3MgaW1wb3NpYmxlcyBkZSBlbGVnaXIuXG4gICAgICAvLyBMYSBob2phIHVzYSBlbCBhbHRvIGNvbXBsZXRvIHkgc2Nyb2xsZWEgc29sYS5cbiAgICAgIHNlbGVjdEludGVyZmFjZTogJ2FjdGlvbi1zaGVldCcsXG4gICAgICBvcHRpb25zOiB0aGlzLmFsbG93ZWRUeXBlcygpLm1hcCgodHlwZSwgb3JkZXIpID0+ICh7IGlkOiB0eXBlLCBuYW1lOiB0aGlzLnR5cGVMYWJlbCh0eXBlKSwgb3JkZXIgfSkpLFxuICAgIH07XG4gIH0pO1xuXG4gIHJlYWRvbmx5IG9wdGlvbnNFZGl0b3JQcm9wcyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICB0aGlzLmkxOG4ubGFuZygpO1xuICAgIHJldHVybiB7XG4gICAgICB0aXRsZTogdGhpcy50KCdvcHRpb25zVGl0bGUnKSxcbiAgICAgIGhpbnQ6IHRoaXMudCgnb3B0aW9uc0hpbnQnKSxcbiAgICAgIGFkZExhYmVsOiB0aGlzLnQoJ29wdGlvbnNBZGQnKSxcbiAgICAgIG9wdGlvbnNMYWJlbDogdGhpcy50KCdvcHRpb25zTGlzdCcpLFxuICAgICAgcGxhY2Vob2xkZXI6IHRoaXMudCgnb3B0aW9uc1BsYWNlaG9sZGVyJyksXG4gICAgICBlbXB0eVRleHQ6IHRoaXMudCgnb3B0aW9uc0VtcHR5JyksXG4gICAgICByZW1vdmVPcHRpb25MYWJlbDogdGhpcy50KCdvcHRpb25zUmVtb3ZlJyksXG4gICAgICByZW9yZGVyT3B0aW9uTGFiZWw6IHRoaXMudCgnb3B0aW9uc1Jlb3JkZXInKSxcbiAgICAgIHN0YXRlOiB0aGlzLnN0YXRlKCksXG4gICAgICBvcHRpb25zOiB0aGlzLm9wdGlvbnMoKSxcbiAgICB9O1xuICB9KTtcblxuICBzZXRPcHRpb25zKG9wdGlvbnM6IEZpZWxkT3B0aW9uW10pOiB2b2lkIHtcbiAgICB0aGlzLm9wdGlvbnMuc2V0KG9wdGlvbnMpO1xuICAgIHRoaXMuZW1pdENoYW5nZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBlbWl0Q2hhbmdlKCk6IHZvaWQge1xuICAgIC8vIEFudGVzIGRlIG5nT25Jbml0IG5vIGhheSBpZDogZW1pdGlyIGFow60gZGFyw61hIHVuIGNhbXBvIHNpbiBpZGVudGlkYWQsIHF1ZVxuICAgIC8vIGVsIGNvbnN1bWVyIG5vIHNhYnLDrWEgYSBxdcOpIGZpbGEgYXBsaWNhci5cbiAgICBpZiAodGhpcy5maWVsZElkKSB0aGlzLmNoYW5nZWQuZW1pdCh0aGlzLnZhbHVlKCkpO1xuICB9XG5cbiAgc2VsZWN0UHJlc2V0KHByZXNldDogRmllbGRTY2hlbWFFZGl0b3JQcmVzZXQpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkUHJlc2V0SWQuc2V0KHByZXNldC5pZCk7XG4gICAgY29uc3QgdmFsdWUgPSBwcmVzZXQuZmllbGQ7XG4gICAgLy8gRWwgcHJlc2V0IGZpamEgZWwgdG9rZW46IFwiY29ycmVvIGRlbCBjb21wcmFkb3JcIiB0aWVuZSBxdWUgbGxhbWFyc2VcbiAgICAvLyBgZW1haWxgIGF1bnF1ZSBkZXNwdcOpcyBsZSBjYW1iaWVuIGVsIHRleHRvIHZpc2libGUuXG4gICAgdGhpcy5uYW1lTG9ja2VkID0gISF2YWx1ZS5uYW1lO1xuICAgIHRoaXMubmFtZSA9IHZhbHVlLm5hbWUgfHwgdGhpcy5mb3JtU2NoZW1hcy50b1Rva2VuKHZhbHVlLmxhYmVsIHx8ICcnKTtcbiAgICB0aGlzLmxhYmVsQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZS5sYWJlbCA/PyAnJyk7XG4gICAgdGhpcy5wbGFjZWhvbGRlckNvbnRyb2wuc2V0VmFsdWUodmFsdWUucGxhY2Vob2xkZXJUZXh0ID8/ICcnKTtcbiAgICB0aGlzLmhpbnRDb250cm9sLnNldFZhbHVlKHZhbHVlLmhpbnRUZXh0ID8/ICcnKTtcbiAgICB0aGlzLnNlY3Rpb25Db250cm9sLnNldFZhbHVlKHZhbHVlLnNlY3Rpb25MYWJlbCA/PyAnJyk7XG4gICAgdGhpcy5yZXF1aXJlZENvbnRyb2wuc2V0VmFsdWUoISF2YWx1ZS5yZXF1aXJlZCk7XG4gICAgdGhpcy50eXBlQ29udHJvbC5zZXRWYWx1ZSh0aGlzLmNvZXJjZVR5cGUodmFsdWUudHlwZSkpO1xuICAgIHRoaXMub3B0aW9ucy5zZXQodmFsdWUub3B0aW9ucyA/PyBbXSk7XG4gICAgdGhpcy5lbWl0Q2hhbmdlKCk7XG4gIH1cblxuICAvKipcbiAgICogVmFsaWRhIHkgZW1pdGUuIFDDumJsaWNvIGEgcHJvcMOzc2l0bzogbG8gbGxhbWEgZWwgY29uc3VtZXIgZGVzZGUgZWwgYm90w7NuXG4gICAqIGRlIHN1IHByb3BpYSBjw6FzY2FyYSAobW9kYWwsIHDDoWdpbmEgbyBhY29yZGXDs24pLlxuICAgKi9cbiAgc3VibWl0KCk6IGJvb2xlYW4ge1xuICAgIGNvbnN0IGZpZWxkID0gdGhpcy52YWx1ZSgpO1xuICAgIGlmICghZmllbGQubGFiZWwgfHwgIWZpZWxkLm5hbWUgfHwgIWZpZWxkLnR5cGUpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9yLnNldCh0aGlzLnQoJ2Vycm9ySW5jb21wbGV0ZScpKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKHRoaXMubmVlZHNPcHRpb25zKCkgJiYgIShmaWVsZC5vcHRpb25zPy5sZW5ndGggPz8gMCkpIHtcbiAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9yLnNldCh0aGlzLnQoJ2Vycm9yT3B0aW9uc1JlcXVpcmVkJykpO1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRpb25FcnJvci5zZXQoJycpO1xuICAgIHRoaXMuc2F2ZS5lbWl0KGZpZWxkKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKiBFbCBjYW1wbyB0YWwgY29tbyBlc3TDoSBlbiBwYW50YWxsYSwgc2luIHZhbGlkYXIuICovXG4gIHZhbHVlKCk6IEVkaXRhYmxlRmllbGREZWYge1xuICAgIGNvbnN0IGxhYmVsID0gKHRoaXMubGFiZWxDb250cm9sLnZhbHVlIHx8ICcnKS50cmltKCk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlkOiB0aGlzLmZpZWxkSWQsXG4gICAgICBuYW1lOiB0aGlzLmZvcm1TY2hlbWFzLnRvVG9rZW4odGhpcy5uYW1lIHx8IGxhYmVsKSxcbiAgICAgIGxhYmVsLFxuICAgICAgcGxhY2Vob2xkZXJUZXh0OiAodGhpcy5wbGFjZWhvbGRlckNvbnRyb2wudmFsdWUgfHwgJycpLnRyaW0oKSxcbiAgICAgIGhpbnRUZXh0OiAodGhpcy5oaW50Q29udHJvbC52YWx1ZSB8fCAnJykudHJpbSgpLFxuICAgICAgdHlwZTogdGhpcy5jb2VyY2VUeXBlKHRoaXMudHlwZUNvbnRyb2wudmFsdWUpLFxuICAgICAgc2VjdGlvbklkOiB0aGlzLmN1cnJlbnRTZWN0aW9uSWQsXG4gICAgICByZXF1aXJlZDogdGhpcy5yZXF1aXJlZENvbnRyb2wudmFsdWUsXG4gICAgICBzZWN0aW9uTGFiZWw6ICh0aGlzLnNlY3Rpb25Db250cm9sLnZhbHVlIHx8ICcnKS50cmltKCksXG4gICAgICBvcHRpb25zOiB0aGlzLm5lZWRzT3B0aW9ucygpID8gdGhpcy5vcHRpb25zKCkubWFwKChvcHRpb24sIGluZGV4KSA9PiAoeyAuLi5vcHRpb24sIG9yZGVyOiBpbmRleCB9KSkgOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgYWxsb3dlZFR5cGVzKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gdGhpcy5wcm9wcy5hbGxvd2VkVHlwZXM/Lmxlbmd0aCA/IHRoaXMucHJvcHMuYWxsb3dlZFR5cGVzIDogWydURVhUJ107XG4gIH1cblxuICAvKipcbiAgICogVW4gdGlwbyBmdWVyYSBkZWwgY2F0w6Fsb2dvIGRlbCBjb25zdW1lciBjYWUgYWwgcHJpbWVybyBwZXJtaXRpZG8uIFBhc2EgYWxcbiAgICogZWRpdGFyIHVuIGNhbXBvIGd1YXJkYWRvIGNvbiB1biB0aXBvIHF1ZSBsYSBhcHAgeWEgbm8gb2ZyZWNlIChiaW5nbyBsb1xuICAgKiBoYWPDrWEgY29uIEFUVEFDSE1FTlQgY3VhbmRvIGVsIG1lZGlvIGRlIHBhZ28gbm8gbG8gYWRtaXRlKTogc2luIGVzdG8sIGVsXG4gICAqIHNlbGVjdCBxdWVkYSBlbiB1biB2YWxvciBxdWUgbm8gZXN0w6EgZW4gc3UgbGlzdGEgeSBzZSB2ZSB2YWPDrW8uXG4gICAqL1xuICBwcml2YXRlIGNvZXJjZVR5cGUodHlwZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBhbGxvd2VkID0gdGhpcy5hbGxvd2VkVHlwZXMoKTtcbiAgICByZXR1cm4gYWxsb3dlZC5pbmNsdWRlcyh0eXBlKSA/IHR5cGUgOiBhbGxvd2VkWzBdO1xuICB9XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2ZpZWxkLXNjaGVtYS1lZGl0b3IvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFN0YXRlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGRPcHRpb24gfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3Jtcy90eXBlcyc7XG5cbi8qKlxuICogVW4gY2FtcG8gZW4gZWRpY2nDs24g4oCUIGxhIGZvcm1hIG11dGFibGUgY29uIGxhIHF1ZSB0cmFiYWphIGVsIGVkaXRvciBhbnRlcyBkZVxuICogY29udmVydGlyc2UgZW4gYEZpZWxkU2NoZW1hRGVmYCB2w61hIGBGb3JtU2NoZW1hQnVpbGRlclNlcnZpY2UuY3JlYXRlRmllbGRTY2hlbWFgLlxuICpcbiAqIE5vIGVzIGBGaWVsZFNjaGVtYURlZmAgYSBwcm9ww7NzaXRvOiBlc2UgdGlwbyBjYXJnYSBgbGFiZWxLZXlgLCBgb3JkZXJgLFxuICogYHZhbGlkYXRvcnNgIHkgbG9zIGAqRXMvKkVuYCBkZSBjb21wYXRpYmlsaWRhZCwgbmluZ3VubyBkZSBsb3MgY3VhbGVzIGVkaXRhXG4gKiB1bmEgcGVyc29uYS4gRWwgZWRpdG9yIHRyYWJhamEgY29uIGxvIHF1ZSBzZSBlc2NyaWJlIGVuIHBhbnRhbGxhIHkgZGVqYSBxdWVcbiAqIGVsIGJ1aWxkZXIgZGVyaXZlIGVsIHJlc3RvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRhYmxlRmllbGREZWYge1xuICAvKiogSWQgbG9jYWwgZXN0YWJsZSDigJQgc2lydmUgcGFyYSBgdHJhY2tgIHkgcGFyYSByZWVtcGxhemFyIGVuIGxhIGxpc3RhIGFsIGVkaXRhci4gKi9cbiAgaWQ6IHN0cmluZztcbiAgLyoqIFRva2VuIGRlbCBjYW1wbyAoZGVyaXZhZG8gZGVsIGxhYmVsIG1pZW50cmFzIG5vIHNlIGVkaXRlIGEgbWFubykuICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFRleHRvIHF1ZSBlc2NyaWJlIGxhIG9yZ2FuaXphY2nDs24uIE5vIHNlIHRyYWR1Y2UgKHJlZ2xhICM0IGRlIENMQVVERS5tZCkuICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyVGV4dDogc3RyaW5nO1xuICBoaW50VGV4dDogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG4gIHJlcXVpcmVkOiBib29sZWFuO1xuICBzZWN0aW9uTGFiZWw/OiBzdHJpbmc7XG4gIHNlY3Rpb25PcmRlcj86IG51bWJlcjtcbiAgb3B0aW9ucz86IEZpZWxkT3B0aW9uW107XG59XG5cbi8qKlxuICogVW4gcHVudG8gZGUgcGFydGlkYSBvZnJlY2lkbyBhbCBjcmVhciB1biBjYW1wby4gTG9zIGRlZmluZSBlbCBjb25zdW1lciwgbm9cbiAqIGVsIGVkaXRvcjogbG9zIHByZXNldHMgZGUgdW4gY2hlY2tvdXQgKGNvcnJlbywgdGVsw6lmb25vLCBjdXJzbykgbm8gdGllbmVuXG4gKiBuYWRhIHF1ZSB2ZXIgY29uIGxvcyBkZSB1bmEgZW5jdWVzdGEuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRTY2hlbWFFZGl0b3JQcmVzZXQge1xuICBpZDogc3RyaW5nO1xuICAvKiogVMOtdHVsbyBkZSBsYSB0YXJqZXRhIGRlbCBwcmVzZXQuICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIC8qKiBCYWphZGEgZGUgbGEgdGFyamV0YS4gT3BjaW9uYWwuICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICAvKiogVmFsb3JlcyBjb24gbG9zIHF1ZSBzZSByZWxsZW5hIGVsIGVkaXRvciBhbCBlbGVnaXJsby4gKi9cbiAgZmllbGQ6IE9taXQ8RWRpdGFibGVGaWVsZERlZiwgJ2lkJz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmllbGRTY2hlbWFFZGl0b3JNZXRhZGF0YSB7XG4gIC8qKiAnZWRpdCcgb2N1bHRhIGxvcyBwcmVzZXRzIHkgbm8gcmUtZGVyaXZhIGVsIGBuYW1lYCBkZXNkZSBlbCBsYWJlbC4gKi9cbiAgbW9kZT86ICduZXcnIHwgJ2VkaXQnO1xuICAvKiogQ2FtcG8gYSBlZGl0YXIuIEF1c2VudGUgPSBjYW1wbyBudWV2by4gKi9cbiAgZmllbGQ/OiBFZGl0YWJsZUZpZWxkRGVmIHwgbnVsbDtcbiAgLyoqXG4gICAqIENhdMOhbG9nbyBkZSB0aXBvcyBxdWUgZXN0ZSBjb25zdW1lciBvZnJlY2UuIE9ibGlnYXRvcmlvIHkgYWNvdGFkbyBhXG4gICAqIHByb3DDs3NpdG86IHF1aWVuIHVzYSBlbCBlZGl0b3IgZGVjaWRlIHF1w6kgdGlwb3MgdGllbmVuIHNlbnRpZG8gZW4gc3VcbiAgICogZG9taW5pbyAodW5hIGVuY3Vlc3RhIHDDumJsaWNhIG5vIG9mcmVjZSBBVFRBQ0hNRU5ULCB1biBjaGVja291dCBubyBvZnJlY2VcbiAgICogRU1PSklfUkFUSU5HKSB5LCBzb2JyZSB0b2RvLCBnYXJhbnRpemEgcXVlIHN1IHJlbmRlcmVyIHNlcGEgZGlidWphcmxvcy5cbiAgICovXG4gIGFsbG93ZWRUeXBlczogc3RyaW5nW107XG4gIC8qKiBFdGlxdWV0YSB2aXNpYmxlIHBvciB0aXBvLiBTaSBmYWx0YSB1bmEsIGNhZSBhbCBkZWZhdWx0IGkxOG4gZGVsIGVkaXRvci4gKi9cbiAgdHlwZUxhYmVscz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIHByZXNldHM/OiBGaWVsZFNjaGVtYUVkaXRvclByZXNldFtdO1xuICBwcmVzZXRzVGl0bGU/OiBzdHJpbmc7XG4gIC8qKiBEZWZhdWx0IHRydWUuICovXG4gIHNob3dQbGFjZWhvbGRlcj86IGJvb2xlYW47XG4gIC8qKiBEZWZhdWx0IHRydWUuICovXG4gIHNob3dIaW50PzogYm9vbGVhbjtcbiAgc3RhdGU/OiBDb21wb25lbnRTdGF0ZTtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvb3JnYW5pc21zL2ZpZWxkLXNjaGVtYS1lZGl0b3IvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudFN0YXRlIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgRmllbGRPcHRpb24gfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9mb3Jtcy90eXBlcyc7XG5cbi8qKlxuICogVW4gY2FtcG8gZW4gZWRpY2nDs24g4oCUIGxhIGZvcm1hIG11dGFibGUgY29uIGxhIHF1ZSB0cmFiYWphIGVsIGVkaXRvciBhbnRlcyBkZVxuICogY29udmVydGlyc2UgZW4gYEZpZWxkU2NoZW1hRGVmYCB2w61hIGBGb3JtU2NoZW1hQnVpbGRlclNlcnZpY2UuY3JlYXRlRmllbGRTY2hlbWFgLlxuICpcbiAqIE5vIGVzIGBGaWVsZFNjaGVtYURlZmAgYSBwcm9ww7NzaXRvOiBlc2UgdGlwbyBjYXJnYSBgbGFiZWxLZXlgLCBgb3JkZXJgLFxuICogYHZhbGlkYXRvcnNgIHkgbG9zIGAqRXMvKkVuYCBkZSBjb21wYXRpYmlsaWRhZCwgbmluZ3VubyBkZSBsb3MgY3VhbGVzIGVkaXRhXG4gKiB1bmEgcGVyc29uYS4gRWwgZWRpdG9yIHRyYWJhamEgY29uIGxvIHF1ZSBzZSBlc2NyaWJlIGVuIHBhbnRhbGxhIHkgZGVqYSBxdWVcbiAqIGVsIGJ1aWxkZXIgZGVyaXZlIGVsIHJlc3RvLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRhYmxlRmllbGREZWYge1xuICAvKiogSWQgbG9jYWwgZXN0YWJsZSDigJQgc2lydmUgcGFyYSBgdHJhY2tgIHkgcGFyYSByZWVtcGxhemFyIGVuIGxhIGxpc3RhIGFsIGVkaXRhci4gKi9cbiAgaWQ6IHN0cmluZztcbiAgLyoqIFRva2VuIGRlbCBjYW1wbyAoZGVyaXZhZG8gZGVsIGxhYmVsIG1pZW50cmFzIG5vIHNlIGVkaXRlIGEgbWFubykuICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFRleHRvIHF1ZSBlc2NyaWJlIGxhIG9yZ2FuaXphY2nDs24uIE5vIHNlIHRyYWR1Y2UgKHJlZ2xhICM0IGRlIENMQVVERS5tZCkuICovXG4gIGxhYmVsOiBzdHJpbmc7XG4gIHBsYWNlaG9sZGVyVGV4dDogc3RyaW5nO1xuICBoaW50VGV4dDogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG4gIHJlcXVpcmVkOiBib29sZWFuO1xuICBzZWN0aW9uSWQ/OiBzdHJpbmc7XG4gIHNlY3Rpb25MYWJlbD86IHN0cmluZztcbiAgc2VjdGlvblN1YnRpdGxlPzogc3RyaW5nO1xuICBzZWN0aW9uT3JkZXI/OiBudW1iZXI7XG4gIG9wdGlvbnM/OiBGaWVsZE9wdGlvbltdO1xufVxuXG4vKipcbiAqIFVuIHB1bnRvIGRlIHBhcnRpZGEgb2ZyZWNpZG8gYWwgY3JlYXIgdW4gY2FtcG8uIExvcyBkZWZpbmUgZWwgY29uc3VtZXIsIG5vXG4gKiBlbCBlZGl0b3I6IGxvcyBwcmVzZXRzIGRlIHVuIGNoZWNrb3V0IChjb3JyZW8sIHRlbMOpZm9ubywgY3Vyc28pIG5vIHRpZW5lblxuICogbmFkYSBxdWUgdmVyIGNvbiBsb3MgZGUgdW5hIGVuY3Vlc3RhLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkU2NoZW1hRWRpdG9yUHJlc2V0IHtcbiAgaWQ6IHN0cmluZztcbiAgLyoqIFTDrXR1bG8gZGUgbGEgdGFyamV0YSBkZWwgcHJlc2V0LiAqL1xuICBsYWJlbDogc3RyaW5nO1xuICAvKiogQmFqYWRhIGRlIGxhIHRhcmpldGEuIE9wY2lvbmFsLiAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqIFZhbG9yZXMgY29uIGxvcyBxdWUgc2UgcmVsbGVuYSBlbCBlZGl0b3IgYWwgZWxlZ2lybG8uICovXG4gIGZpZWxkOiBPbWl0PEVkaXRhYmxlRmllbGREZWYsICdpZCc+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZpZWxkU2NoZW1hRWRpdG9yTWV0YWRhdGEge1xuICAvKiogJ2VkaXQnIG9jdWx0YSBsb3MgcHJlc2V0cyB5IG5vIHJlLWRlcml2YSBlbCBgbmFtZWAgZGVzZGUgZWwgbGFiZWwuICovXG4gIG1vZGU/OiAnbmV3JyB8ICdlZGl0JztcbiAgLyoqIENhbXBvIGEgZWRpdGFyLiBBdXNlbnRlID0gY2FtcG8gbnVldm8uICovXG4gIGZpZWxkPzogRWRpdGFibGVGaWVsZERlZiB8IG51bGw7XG4gIC8qKlxuICAgKiBDYXTDoWxvZ28gZGUgdGlwb3MgcXVlIGVzdGUgY29uc3VtZXIgb2ZyZWNlLiBPYmxpZ2F0b3JpbyB5IGFjb3RhZG8gYVxuICAgKiBwcm9ww7NzaXRvOiBxdWllbiB1c2EgZWwgZWRpdG9yIGRlY2lkZSBxdcOpIHRpcG9zIHRpZW5lbiBzZW50aWRvIGVuIHN1XG4gICAqIGRvbWluaW8gKHVuYSBlbmN1ZXN0YSBww7pibGljYSBubyBvZnJlY2UgQVRUQUNITUVOVCwgdW4gY2hlY2tvdXQgbm8gb2ZyZWNlXG4gICAqIEVNT0pJX1JBVElORykgeSwgc29icmUgdG9kbywgZ2FyYW50aXphIHF1ZSBzdSByZW5kZXJlciBzZXBhIGRpYnVqYXJsb3MuXG4gICAqL1xuICBhbGxvd2VkVHlwZXM6IHN0cmluZ1tdO1xuICAvKiogRXRpcXVldGEgdmlzaWJsZSBwb3IgdGlwby4gU2kgZmFsdGEgdW5hLCBjYWUgYWwgZGVmYXVsdCBpMThuIGRlbCBlZGl0b3IuICovXG4gIHR5cGVMYWJlbHM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICBwcmVzZXRzPzogRmllbGRTY2hlbWFFZGl0b3JQcmVzZXRbXTtcbiAgcHJlc2V0c1RpdGxlPzogc3RyaW5nO1xuICAvKiogRGVmYXVsdCB0cnVlLiAqL1xuICBzaG93UGxhY2Vob2xkZXI/OiBib29sZWFuO1xuICAvKiogRGVmYXVsdCB0cnVlLiAqL1xuICBzaG93SGludD86IGJvb2xlYW47XG4gIHN0YXRlPzogQ29tcG9uZW50U3RhdGU7XG59XG4iXX0=