@igo2/geo 18.0.0-next.6 → 18.0.0-next.7

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 (40) hide show
  1. package/esm2022/lib/datasource/shared/datasources/arcgisrest-datasource.mjs +1 -1
  2. package/esm2022/lib/datasource/shared/datasources/carto-datasource.mjs +1 -1
  3. package/esm2022/lib/datasource/shared/datasources/cluster-datasource.mjs +1 -1
  4. package/esm2022/lib/datasource/shared/datasources/feature-datasource.mjs +1 -1
  5. package/esm2022/lib/datasource/shared/datasources/imagearcgisrest-datasource.mjs +1 -1
  6. package/esm2022/lib/datasource/shared/datasources/mvt-datasource.mjs +1 -1
  7. package/esm2022/lib/datasource/shared/datasources/osm-datasource.mjs +1 -1
  8. package/esm2022/lib/datasource/shared/datasources/tilearcgisrest-datasource.mjs +1 -1
  9. package/esm2022/lib/datasource/shared/datasources/tiledebug-datasource.mjs +1 -1
  10. package/esm2022/lib/datasource/shared/datasources/websocket-datasource.mjs +1 -1
  11. package/esm2022/lib/datasource/shared/datasources/wfs-datasource.mjs +66 -2
  12. package/esm2022/lib/datasource/shared/datasources/wms-datasource.mjs +1 -1
  13. package/esm2022/lib/datasource/shared/datasources/wms-wfs.utils.mjs +7 -5
  14. package/esm2022/lib/datasource/shared/datasources/wmts-datasource.mjs +1 -1
  15. package/esm2022/lib/datasource/shared/datasources/xyz-datasource.mjs +1 -1
  16. package/esm2022/lib/filter/shared/ogc-filter.mjs +7 -2
  17. package/esm2022/lib/import-export/import-export/import-export.component.mjs +196 -315
  18. package/esm2022/lib/import-export/shared/export.interface.mjs +1 -1
  19. package/esm2022/lib/import-export/shared/export.service.mjs +278 -88
  20. package/esm2022/lib/import-export/shared/export.type.mjs +9 -9
  21. package/esm2022/lib/import-export/shared/export.utils.mjs +5 -1
  22. package/esm2022/lib/layer/shared/layer.service.mjs +1 -1
  23. package/esm2022/lib/layer/shared/layers/image-layer.mjs +1 -1
  24. package/esm2022/lib/layer/shared/layers/tile-layer.mjs +1 -1
  25. package/esm2022/lib/layer/shared/layers/vector-layer.mjs +12 -15
  26. package/esm2022/lib/layer/shared/layers/vectortile-layer.mjs +1 -1
  27. package/esm2022/lib/map/wake-lock-button/wake-lock-button.component.mjs +1 -2
  28. package/fesm2022/igo2-geo.mjs +3146 -3008
  29. package/fesm2022/igo2-geo.mjs.map +1 -1
  30. package/lib/datasource/shared/datasources/wfs-datasource.d.ts +15 -0
  31. package/lib/import-export/import-export/import-export.component.d.ts +22 -14
  32. package/lib/import-export/shared/export.interface.d.ts +10 -3
  33. package/lib/import-export/shared/export.service.d.ts +31 -15
  34. package/lib/import-export/shared/export.type.d.ts +8 -16
  35. package/lib/import-export/shared/export.utils.d.ts +2 -0
  36. package/lib/layer/shared/layers/vector-layer.d.ts +0 -3
  37. package/locale/en.geo.json +8 -3
  38. package/locale/fr.geo.json +8 -3
  39. package/package.json +6 -6
  40. package/src/_index.scss +2 -1
@@ -44,4 +44,8 @@ export function entitiesToRowData(entities, columns) {
44
44
  });
45
45
  });
46
46
  }
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvaW1wb3J0LWV4cG9ydC9zaGFyZWQvZXhwb3J0LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx5QkFBeUIsRUFDekIsaUJBQWlCLEVBQ2xCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU3RCxNQUFNLFVBQVUscUJBQXFCLENBQ25DLEtBQVksRUFDWixjQUE4QjtJQUU5QixJQUFJLEtBQUssWUFBWSwwQkFBMEIsRUFBRSxDQUFDO1FBQ2hELDBCQUEwQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNDLE9BQU87SUFDVCxDQUFDO0lBQ0QsY0FBYyxDQUFDLEtBQUssQ0FDbEIsNEJBQTRCLEVBQzVCLDZCQUE2QixDQUM5QixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxjQUE4QjtJQUNwRSxjQUFjLENBQUMsT0FBTyxDQUNwQiw2QkFBNkIsRUFDN0IsOEJBQThCLENBQy9CLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLGNBQThCO0lBQ3ZFLGNBQWMsQ0FBQyxLQUFLLENBQ2xCLDZCQUE2QixFQUM3Qiw4QkFBOEIsQ0FDL0IsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBYSxFQUFFLFFBQWdCLEVBQUUsU0FBUyxHQUFHLEdBQUc7SUFDMUUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVksRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzlELE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsZUFBZSxDQUFDLFVBQVUsRUFBRSx3QkFBd0IsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUNsRSxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLFFBQWtCLEVBQ2xCLE9BQTRCO0lBRTVCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFO1FBQ3JDLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQXlCLEVBQUUsRUFBRTtZQUMvQyxJQUFJLGFBQWEsQ0FBQztZQUNsQixJQUNFLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUztnQkFDN0IsTUFBTSxDQUFDLFFBQVEsS0FBSyx5QkFBeUIsQ0FBQyxPQUFPLEVBQ3JELENBQUM7Z0JBQ0QsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7WUFDdkMsQ0FBQztZQUNELGFBQWEsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7WUFDbEUsT0FBTyxhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEVudGl0eVRhYmxlQ29sdW1uLFxuICBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyLFxuICBnZXRFbnRpdHlQcm9wZXJ0eVxufSBmcm9tICdAaWdvMi9jb21tb24vZW50aXR5JztcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9tZXNzYWdlJztcbmltcG9ydCB7IGRvd25sb2FkQ29udGVudCB9IGZyb20gJ0BpZ28yL3V0aWxzJztcblxuaW1wb3J0IHsgRXhwb3J0Tm90aGluZ1RvRXhwb3J0RXJyb3IgfSBmcm9tICcuL2V4cG9ydC5lcnJvcnMnO1xuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRmlsZUV4cG9ydEVycm9yKFxuICBlcnJvcjogRXJyb3IsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuKSB7XG4gIGlmIChlcnJvciBpbnN0YW5jZW9mIEV4cG9ydE5vdGhpbmdUb0V4cG9ydEVycm9yKSB7XG4gICAgaGFuZGxlTm90aGluZ1RvRXhwb3J0RXJyb3IobWVzc2FnZVNlcnZpY2UpO1xuICAgIHJldHVybjtcbiAgfVxuICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAnaWdvLmdlby5leHBvcnQuZmFpbGVkLnRleHQnLFxuICAgICdpZ28uZ2VvLmV4cG9ydC5mYWlsZWQudGl0bGUnXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlRXhwb3J0U3VjY2VzcyhtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UpIHtcbiAgbWVzc2FnZVNlcnZpY2Uuc3VjY2VzcyhcbiAgICAnaWdvLmdlby5leHBvcnQuc3VjY2Vzcy50ZXh0JyxcbiAgICAnaWdvLmdlby5leHBvcnQuc3VjY2Vzcy50aXRsZSdcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU5vdGhpbmdUb0V4cG9ydEVycm9yKG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSkge1xuICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAnaWdvLmdlby5leHBvcnQubm90aGluZy50ZXh0JyxcbiAgICAnaWdvLmdlby5leHBvcnQubm90aGluZy50aXRsZSdcbiAgKTtcbn1cblxuLyoqXG4gKiBFeHBvcnQgYXJyYXkgdG8gQ1NWXG4gKlxuICogQHBhcmFtIHJvd3MgQXJyYXkgb2YgYXJyYXlzIHRvIGV4cG9ydCBhcyBDU1ZcbiAqIEBwYXJhbSBzZXBhcmF0b3IgQ2VsbCBzZXBhcmF0b3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cG9ydFRvQ1NWKHJvd3M6IGFueVtdW10sIGZpbGVOYW1lOiBzdHJpbmcsIHNlcGFyYXRvciA9ICc7Jykge1xuICBjb25zdCBsaW5lcyA9IHJvd3MubWFwKChyb3c6IGFueVtdW10pID0+IHJvdy5qb2luKHNlcGFyYXRvcikpO1xuICBjb25zdCBjc3ZDb250ZW50ID0gbGluZXMuam9pbignXFxuJyk7XG4gIGRvd25sb2FkQ29udGVudChjc3ZDb250ZW50LCAndGV4dC9jc3Y7Y2hhcnNldD11dGYtOCcsIGZpbGVOYW1lKTtcbn1cblxuLyoqXG4gKiBSZXR1cm4gYW4gYXJyYXkgb2YgdmFsdWVzIGZyb20gYW4gYXJyYXkgb2YgZW50aXRpZXMuXG4gKlxuICogQHBhcmFtIGVudGl0aWVzIEFycmF5IG9mIGVudGl0aWVzXG4gKiBAcGFyYW0gc2NvbHVtbnMgQ29sdW1ucyBkZWZpbml0aW9uIG9mIHRoZSBvdXRwdXQgZGF0YVxuICovXG5leHBvcnQgZnVuY3Rpb24gZW50aXRpZXNUb1Jvd0RhdGEoXG4gIGVudGl0aWVzOiBvYmplY3RbXSxcbiAgY29sdW1uczogRW50aXR5VGFibGVDb2x1bW5bXVxuKSB7XG4gIHJldHVybiBlbnRpdGllcy5tYXAoKGVudGl0eTogb2JqZWN0KSA9PiB7XG4gICAgcmV0dXJuIGNvbHVtbnMubWFwKChjb2x1bW46IEVudGl0eVRhYmxlQ29sdW1uKSA9PiB7XG4gICAgICBsZXQgdmFsdWVBY2Nlc3NvcjtcbiAgICAgIGlmIChcbiAgICAgICAgY29sdW1uLnJlbmRlcmVyID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgY29sdW1uLnJlbmRlcmVyID09PSBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyLkRlZmF1bHRcbiAgICAgICkge1xuICAgICAgICB2YWx1ZUFjY2Vzc29yID0gY29sdW1uLnZhbHVlQWNjZXNzb3I7XG4gICAgICB9XG4gICAgICB2YWx1ZUFjY2Vzc29yID0gdmFsdWVBY2Nlc3NvciA/IHZhbHVlQWNjZXNzb3IgOiBnZXRFbnRpdHlQcm9wZXJ0eTtcbiAgICAgIHJldHVybiB2YWx1ZUFjY2Vzc29yKGVudGl0eSwgY29sdW1uLm5hbWUpO1xuICAgIH0pO1xuICB9KTtcbn1cbiJdfQ==
47
+ export function isCsvExport(format) {
48
+ const legacyCsv = ['CSVsemicolon', 'CSVcomma'];
49
+ return format === 'CSV' || legacyCsv.includes(format);
50
+ }
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwb3J0LnV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZ2VvL3NyYy9saWIvaW1wb3J0LWV4cG9ydC9zaGFyZWQvZXhwb3J0LnV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx5QkFBeUIsRUFDekIsaUJBQWlCLEVBQ2xCLE1BQU0scUJBQXFCLENBQUM7QUFFN0IsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUU5QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUc3RCxNQUFNLFVBQVUscUJBQXFCLENBQ25DLEtBQVksRUFDWixjQUE4QjtJQUU5QixJQUFJLEtBQUssWUFBWSwwQkFBMEIsRUFBRSxDQUFDO1FBQ2hELDBCQUEwQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQzNDLE9BQU87SUFDVCxDQUFDO0lBQ0QsY0FBYyxDQUFDLEtBQUssQ0FDbEIsNEJBQTRCLEVBQzVCLDZCQUE2QixDQUM5QixDQUFDO0FBQ0osQ0FBQztBQUVELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxjQUE4QjtJQUNwRSxjQUFjLENBQUMsT0FBTyxDQUNwQiw2QkFBNkIsRUFDN0IsOEJBQThCLENBQy9CLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxVQUFVLDBCQUEwQixDQUFDLGNBQThCO0lBQ3ZFLGNBQWMsQ0FBQyxLQUFLLENBQ2xCLDZCQUE2QixFQUM3Qiw4QkFBOEIsQ0FDL0IsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxXQUFXLENBQUMsSUFBYSxFQUFFLFFBQWdCLEVBQUUsU0FBUyxHQUFHLEdBQUc7SUFDMUUsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVksRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO0lBQzlELE1BQU0sVUFBVSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsZUFBZSxDQUFDLFVBQVUsRUFBRSx3QkFBd0IsRUFBRSxRQUFRLENBQUMsQ0FBQztBQUNsRSxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLFFBQWtCLEVBQ2xCLE9BQTRCO0lBRTVCLE9BQU8sUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQWMsRUFBRSxFQUFFO1FBQ3JDLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQXlCLEVBQUUsRUFBRTtZQUMvQyxJQUFJLGFBQWEsQ0FBQztZQUNsQixJQUNFLE1BQU0sQ0FBQyxRQUFRLEtBQUssU0FBUztnQkFDN0IsTUFBTSxDQUFDLFFBQVEsS0FBSyx5QkFBeUIsQ0FBQyxPQUFPLEVBQ3JELENBQUM7Z0JBQ0QsYUFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUM7WUFDdkMsQ0FBQztZQUNELGFBQWEsR0FBRyxhQUFhLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUM7WUFDbEUsT0FBTyxhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sVUFBVSxXQUFXLENBQUMsTUFBdUI7SUFDakQsTUFBTSxTQUFTLEdBQWtDLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQzlFLE9BQU8sTUFBTSxLQUFLLEtBQUssSUFBSSxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQTRCLENBQUMsQ0FBQztBQUM5RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRW50aXR5VGFibGVDb2x1bW4sXG4gIEVudGl0eVRhYmxlQ29sdW1uUmVuZGVyZXIsXG4gIGdldEVudGl0eVByb3BlcnR5XG59IGZyb20gJ0BpZ28yL2NvbW1vbi9lbnRpdHknO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lc3NhZ2UnO1xuaW1wb3J0IHsgZG93bmxvYWRDb250ZW50IH0gZnJvbSAnQGlnbzIvdXRpbHMnO1xuXG5pbXBvcnQgeyBFeHBvcnROb3RoaW5nVG9FeHBvcnRFcnJvciB9IGZyb20gJy4vZXhwb3J0LmVycm9ycyc7XG5pbXBvcnQgeyBBbnlFeHBvcnRGb3JtYXQsIEV4cG9ydEZvcm1hdExlZ2FjeSB9IGZyb20gJy4vZXhwb3J0LnR5cGUnO1xuXG5leHBvcnQgZnVuY3Rpb24gaGFuZGxlRmlsZUV4cG9ydEVycm9yKFxuICBlcnJvcjogRXJyb3IsXG4gIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuKSB7XG4gIGlmIChlcnJvciBpbnN0YW5jZW9mIEV4cG9ydE5vdGhpbmdUb0V4cG9ydEVycm9yKSB7XG4gICAgaGFuZGxlTm90aGluZ1RvRXhwb3J0RXJyb3IobWVzc2FnZVNlcnZpY2UpO1xuICAgIHJldHVybjtcbiAgfVxuICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAnaWdvLmdlby5leHBvcnQuZmFpbGVkLnRleHQnLFxuICAgICdpZ28uZ2VvLmV4cG9ydC5mYWlsZWQudGl0bGUnXG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBoYW5kbGVGaWxlRXhwb3J0U3VjY2VzcyhtZXNzYWdlU2VydmljZTogTWVzc2FnZVNlcnZpY2UpIHtcbiAgbWVzc2FnZVNlcnZpY2Uuc3VjY2VzcyhcbiAgICAnaWdvLmdlby5leHBvcnQuc3VjY2Vzcy50ZXh0JyxcbiAgICAnaWdvLmdlby5leHBvcnQuc3VjY2Vzcy50aXRsZSdcbiAgKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGhhbmRsZU5vdGhpbmdUb0V4cG9ydEVycm9yKG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSkge1xuICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAnaWdvLmdlby5leHBvcnQubm90aGluZy50ZXh0JyxcbiAgICAnaWdvLmdlby5leHBvcnQubm90aGluZy50aXRsZSdcbiAgKTtcbn1cblxuLyoqXG4gKiBFeHBvcnQgYXJyYXkgdG8gQ1NWXG4gKlxuICogQHBhcmFtIHJvd3MgQXJyYXkgb2YgYXJyYXlzIHRvIGV4cG9ydCBhcyBDU1ZcbiAqIEBwYXJhbSBzZXBhcmF0b3IgQ2VsbCBzZXBhcmF0b3JcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGV4cG9ydFRvQ1NWKHJvd3M6IGFueVtdW10sIGZpbGVOYW1lOiBzdHJpbmcsIHNlcGFyYXRvciA9ICc7Jykge1xuICBjb25zdCBsaW5lcyA9IHJvd3MubWFwKChyb3c6IGFueVtdW10pID0+IHJvdy5qb2luKHNlcGFyYXRvcikpO1xuICBjb25zdCBjc3ZDb250ZW50ID0gbGluZXMuam9pbignXFxuJyk7XG4gIGRvd25sb2FkQ29udGVudChjc3ZDb250ZW50LCAndGV4dC9jc3Y7Y2hhcnNldD11dGYtOCcsIGZpbGVOYW1lKTtcbn1cblxuLyoqXG4gKiBSZXR1cm4gYW4gYXJyYXkgb2YgdmFsdWVzIGZyb20gYW4gYXJyYXkgb2YgZW50aXRpZXMuXG4gKlxuICogQHBhcmFtIGVudGl0aWVzIEFycmF5IG9mIGVudGl0aWVzXG4gKiBAcGFyYW0gc2NvbHVtbnMgQ29sdW1ucyBkZWZpbml0aW9uIG9mIHRoZSBvdXRwdXQgZGF0YVxuICovXG5leHBvcnQgZnVuY3Rpb24gZW50aXRpZXNUb1Jvd0RhdGEoXG4gIGVudGl0aWVzOiBvYmplY3RbXSxcbiAgY29sdW1uczogRW50aXR5VGFibGVDb2x1bW5bXVxuKSB7XG4gIHJldHVybiBlbnRpdGllcy5tYXAoKGVudGl0eTogb2JqZWN0KSA9PiB7XG4gICAgcmV0dXJuIGNvbHVtbnMubWFwKChjb2x1bW46IEVudGl0eVRhYmxlQ29sdW1uKSA9PiB7XG4gICAgICBsZXQgdmFsdWVBY2Nlc3NvcjtcbiAgICAgIGlmIChcbiAgICAgICAgY29sdW1uLnJlbmRlcmVyID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgY29sdW1uLnJlbmRlcmVyID09PSBFbnRpdHlUYWJsZUNvbHVtblJlbmRlcmVyLkRlZmF1bHRcbiAgICAgICkge1xuICAgICAgICB2YWx1ZUFjY2Vzc29yID0gY29sdW1uLnZhbHVlQWNjZXNzb3I7XG4gICAgICB9XG4gICAgICB2YWx1ZUFjY2Vzc29yID0gdmFsdWVBY2Nlc3NvciA/IHZhbHVlQWNjZXNzb3IgOiBnZXRFbnRpdHlQcm9wZXJ0eTtcbiAgICAgIHJldHVybiB2YWx1ZUFjY2Vzc29yKGVudGl0eSwgY29sdW1uLm5hbWUpO1xuICAgIH0pO1xuICB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ3N2RXhwb3J0KGZvcm1hdDogQW55RXhwb3J0Rm9ybWF0KTogYm9vbGVhbiB7XG4gIGNvbnN0IGxlZ2FjeUNzdjogUGFydGlhbDxFeHBvcnRGb3JtYXRMZWdhY3k+W10gPSBbJ0NTVnNlbWljb2xvbicsICdDU1Zjb21tYSddO1xuICByZXR1cm4gZm9ybWF0ID09PSAnQ1NWJyB8fCBsZWdhY3lDc3YuaW5jbHVkZXMoZm9ybWF0IGFzIEV4cG9ydEZvcm1hdExlZ2FjeSk7XG59XG4iXX0=
@@ -270,4 +270,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
270
270
  }] }, { type: i7.AuthInterceptor, decorators: [{
271
271
  type: Optional
272
272
  }] }] });
273
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTFDLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBR3BDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDL0UsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsYUFBYSxFQUNiLGFBQWEsRUFDYix3QkFBd0IsRUFDeEIsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYixhQUFhLEVBQ2IsY0FBYyxFQUNkLG1CQUFtQixFQUNuQixhQUFhLEVBQ2QsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENB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QUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNuQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7YUFDbEMsQ0FBQyxDQUNILENBQUM7WUFDRixPQUFPLGFBQWEsQ0FDbEIsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FDcEMsQ0FDRixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7d0dBbFdVLFlBQVk7NEdBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPSSxRQUFROzswQkFDUixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEF1dGhJbnRlcmNlcHRvciB9IGZyb20gJ0BpZ28yL2F1dGgnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lc3NhZ2UnO1xuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tICdAaWdvMi91dGlscyc7XG5cbmltcG9ydCBvbExheWVyVmVjdG9yVGlsZSBmcm9tICdvbC9sYXllci9WZWN0b3JUaWxlJztcbmltcG9ydCB7IFN0eWxlIH0gZnJvbSAnb2wvc3R5bGUnO1xuaW1wb3J0ICogYXMgb2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XG5pbXBvcnQgeyBTdHlsZUxpa2UgYXMgT2xTdHlsZUxpa2UgfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5cbmltcG9ydCB7IHN0eWxlZnVuY3Rpb24gfSBmcm9tICdvbC1tYXBib3gtc3R5bGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGNvbmNhdE1hcCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBEYXRhU291cmNlU2VydmljZSB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge1xuICBBcmNHSVNSZXN0RGF0YVNvdXJjZSxcbiAgQ2FydG9EYXRhU291cmNlLFxuICBDbHVzdGVyRGF0YVNvdXJjZSxcbiAgRmVhdHVyZURhdGFTb3VyY2UsXG4gIEltYWdlQXJjR0lTUmVzdERhdGFTb3VyY2UsXG4gIE1WVERhdGFTb3VyY2UsXG4gIE9TTURhdGFTb3VyY2UsXG4gIFRpbGVBcmNHSVNSZXN0RGF0YVNvdXJjZSxcbiAgVGlsZURlYnVnRGF0YVNvdXJjZSxcbiAgV0ZTRGF0YVNvdXJjZSxcbiAgV01TRGF0YVNvdXJjZSxcbiAgV01UU0RhdGFTb3VyY2UsXG4gIFdlYlNvY2tldERhdGFTb3VyY2UsXG4gIFhZWkRhdGFTb3VyY2Vcbn0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMnO1xuaW1wb3J0IHsgTGF5ZXJEQlNlcnZpY2UgfSBmcm9tICcuLi8uLi9vZmZsaW5lL2xheWVyREIvbGF5ZXJEQi5zZXJ2aWNlJztcbmltcG9ydCB7IEdlb05ldHdvcmtTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vb2ZmbGluZS9zaGFyZWQvZ2VvLW5ldHdvcmsuc2VydmljZSc7XG5pbXBvcnQgeyBTdHlsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zdHlsZS9zdHlsZS1zZXJ2aWNlL3N0eWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgY29tcHV0ZU1WVE9wdGlvbnNPbkhvdmVyIH0gZnJvbSAnLi4vdXRpbHMvbGF5ZXIudXRpbHMnO1xuaW1wb3J0IHtcbiAgQW55TGF5ZXJPcHRpb25zLFxuICBJbWFnZUxheWVyLFxuICBJbWFnZUxheWVyT3B0aW9ucyxcbiAgTGF5ZXIsXG4gIExheWVyT3B0aW9ucyxcbiAgVGlsZUxheWVyLFxuICBUaWxlTGF5ZXJPcHRpb25zLFxuICBWZWN0b3JMYXllcixcbiAgVmVjdG9yTGF5ZXJPcHRpb25zLFxuICBWZWN0b3JUaWxlTGF5ZXIsXG4gIFZlY3RvclRpbGVMYXllck9wdGlvbnNcbn0gZnJvbSAnLi9sYXllcnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMYXllclNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBzdHlsZVNlcnZpY2U6IFN0eWxlU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGFTb3VyY2VTZXJ2aWNlOiBEYXRhU291cmNlU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIGdlb05ldHdvcmtTZXJ2aWNlPzogR2VvTmV0d29ya1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBsYXllckRCU2VydmljZT86IExheWVyREJTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge31cblxuICBjcmVhdGVMYXllcihsYXllck9wdGlvbnM6IEFueUxheWVyT3B0aW9ucyk6IExheWVyIHtcbiAgICBpZiAoIWxheWVyT3B0aW9ucy5zb3VyY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBsYXllck9wdGlvbnMuc291cmNlLm9wdGlvbnMgJiZcbiAgICAgIGxheWVyT3B0aW9ucy5zb3VyY2Uub3B0aW9ucy5fbGF5ZXJPcHRpb25zRnJvbVNvdXJjZVxuICAgICkge1xuICAgICAgbGF5ZXJPcHRpb25zID0gT2JqZWN0VXRpbHMubWVyZ2VEZWVwKFxuICAgICAgICBsYXllck9wdGlvbnMuc291cmNlLm9wdGlvbnMuX2xheWVyT3B0aW9uc0Zyb21Tb3VyY2UsXG4gICAgICAgIGxheWVyT3B0aW9ucyB8fCB7fVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBsZXQgbGF5ZXI7XG4gICAgc3dpdGNoIChsYXllck9wdGlvbnMuc291cmNlLmNvbnN0cnVjdG9yKSB7XG4gICAgICBjYXNlIE9TTURhdGFTb3VyY2U6XG4gICAgICBjYXNlIFdNVFNEYXRhU291cmNlOlxuICAgICAgY2FzZSBYWVpEYXRhU291cmNlOlxuICAgICAgY2FzZSBUaWxlRGVidWdEYXRhU291cmNlOlxuICAgICAgY2FzZSBDYXJ0b0RhdGFTb3VyY2U6XG4gICAgICBjYXNlIFRpbGVBcmNHSVNSZXN0RGF0YVNvdXJjZTpcbiAgICAgICAgbGF5ZXIgPSB0aGlzLmNyZWF0ZVRpbGVMYXllcihsYXllck9wdGlvbnMgYXMgVGlsZUxheWVyT3B0aW9ucyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBGZWF0dXJlRGF0YVNvdXJjZTpcbiAgICAgIGNhc2UgV0ZTRGF0YVNvdXJjZTpcbiAgICAgIGNhc2UgQXJjR0lTUmVzdERhdGFTb3VyY2U6XG4gICAgICBjYXNlIFdlYlNvY2tldERhdGFTb3VyY2U6XG4gICAgICBjYXNlIENsdXN0ZXJEYXRhU291cmNlOlxuICAgICAgICBsYXllciA9IHRoaXMuY3JlYXRlVmVjdG9yTGF5ZXIobGF5ZXJPcHRpb25zIGFzIFZlY3RvckxheWVyT3B0aW9ucyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBJbWFnZUFyY0dJU1Jlc3REYXRhU291cmNlOlxuICAgICAgY2FzZSBXTVNEYXRhU291cmNlOlxuICAgICAgICBsYXllciA9IHRoaXMuY3JlYXRlSW1hZ2VMYXllcihsYXllck9wdGlvbnMgYXMgSW1hZ2VMYXllck9wdGlvbnMpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgTVZURGF0YVNvdXJjZToge1xuICAgICAgICBjb25zdCBfbGF5ZXJPcHRpb25zID0gY29tcHV0ZU1WVE9wdGlvbnNPbkhvdmVyKGxheWVyT3B0aW9ucyk7XG4gICAgICAgIGxheWVyID0gdGhpcy5jcmVhdGVWZWN0b3JUaWxlTGF5ZXIoXG4gICAgICAgICAgX2xheWVyT3B0aW9ucyBhcyBWZWN0b3JUaWxlTGF5ZXJPcHRpb25zXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxheWVyO1xuICB9XG5cbiAgY3JlYXRlQXN5bmNMYXllcihcbiAgICBfbGF5ZXJPcHRpb25zOiBBbnlMYXllck9wdGlvbnMsXG4gICAgZGV0YWlsZWRDb250ZXh0VXJpPzogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8TGF5ZXI+IHtcbiAgICBjb25zdCBsYXllck9wdGlvbnMgPSBjb21wdXRlTVZUT3B0aW9uc09uSG92ZXIoX2xheWVyT3B0aW9ucyk7XG4gICAgaWYgKGxheWVyT3B0aW9ucy5zb3VyY2UpIHtcbiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoZCkgPT4gZC5uZXh0KHRoaXMuY3JlYXRlTGF5ZXIobGF5ZXJPcHRpb25zKSkpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlXG4gICAgICAuY3JlYXRlQXN5bmNEYXRhU291cmNlKGxheWVyT3B0aW9ucy5zb3VyY2VPcHRpb25zLCBkZXRhaWxlZENvbnRleHRVcmkpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChzb3VyY2UpID0+IHtcbiAgICAgICAgICBpZiAoc291cmNlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUxheWVyKE9iamVjdC5hc3NpZ24obGF5ZXJPcHRpb25zLCB7IHNvdXJjZSB9KSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVJbWFnZUxheWVyKGxheWVyT3B0aW9uczogSW1hZ2VMYXllck9wdGlvbnMpOiBJbWFnZUxheWVyIHtcbiAgICByZXR1cm4gbmV3IEltYWdlTGF5ZXIoXG4gICAgICBsYXllck9wdGlvbnMsXG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgdGhpcy5hdXRoSW50ZXJjZXB0b3JcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUaWxlTGF5ZXIobGF5ZXJPcHRpb25zOiBUaWxlTGF5ZXJPcHRpb25zKTogVGlsZUxheWVyIHtcbiAgICByZXR1cm4gbmV3IFRpbGVMYXllcihcbiAgICAgIGxheWVyT3B0aW9ucyxcbiAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UsXG4gICAgICB0aGlzLmF1dGhJbnRlcmNlcHRvclxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVZlY3RvckxheWVyKGxheWVyT3B0aW9uczogVmVjdG9yTGF5ZXJPcHRpb25zKTogVmVjdG9yTGF5ZXIge1xuICAgIGxldCBzdHlsZTogU3R5bGVbXSB8IFN0eWxlIHwgT2xTdHlsZUxpa2UgPSBsYXllck9wdGlvbnMuc3R5bGU7XG4gICAgbGV0IGlnb0xheWVyOiBWZWN0b3JMYXllcjtcblxuICAgIGlmICghbGF5ZXJPcHRpb25zLmlnb1N0eWxlKSB7XG4gICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUgPSB7fTtcbiAgICB9XG4gICAgY29uc3QgbGVnYWN5U3R5bGVPcHRpb25zID0gW1xuICAgICAgJ3N0eWxlQnlBdHRyaWJ1dGUnLFxuICAgICAgJ2hvdmVyU3R5bGUnLFxuICAgICAgJ21hcGJveFN0eWxlJyxcbiAgICAgICdjbHVzdGVyQmFzZVN0eWxlJyxcbiAgICAgICdzdHlsZSdcbiAgICBdO1xuICAgIC8vIGhhbmRsaW5nIGxlZ2FjeSBwcm9wZXJ0eS5cbiAgICB0aGlzLmhhbmRsZUxlZ2FjeVN0eWxlcyhsYXllck9wdGlvbnMsIGxlZ2FjeVN0eWxlT3B0aW9ucyk7XG4gICAgaWYgKFxuICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlLmlnb1N0eWxlT2JqZWN0ICYmXG4gICAgICAhbGF5ZXJPcHRpb25zLmlkYkluZm8/LnN0b3JlVG9JZGJcbiAgICApIHtcbiAgICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+XG4gICAgICAgIHRoaXMuc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlKFxuICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5pZ29TdHlsZU9iamVjdCxcbiAgICAgICAgICBmZWF0dXJlLFxuICAgICAgICAgIHJlc29sdXRpb25cbiAgICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlLmlnb1N0eWxlT2JqZWN0ICYmXG4gICAgICBsYXllck9wdGlvbnMuaWRiSW5mbz8uc3RvcmVUb0lkYlxuICAgICkge1xuICAgICAgLy8gdGVtcG9yYXJ5IGZpeCB0b2RvIDogaGFuZGxlIGl0IHdpdGggZ2Vvc3R5bGVyLlxuICAgICAgc3R5bGUgPSB0aGlzLnN0eWxlU2VydmljZS5wYXJzZVN0eWxlKFxuICAgICAgICAnc3R5bGUnLFxuICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUuaWdvU3R5bGVPYmplY3RcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGxheWVyT3B0aW9ucy5zb3VyY2UgaW5zdGFuY2VvZiBBcmNHSVNSZXN0RGF0YVNvdXJjZSkge1xuICAgICAgY29uc3Qgc291cmNlID0gbGF5ZXJPcHRpb25zLnNvdXJjZSBhcyBBcmNHSVNSZXN0RGF0YVNvdXJjZTtcbiAgICAgIHN0eWxlID0gc291cmNlLm9wdGlvbnMucGFyYW1zLnN0eWxlO1xuICAgIH0gZWxzZSBpZiAobGF5ZXJPcHRpb25zLmlnb1N0eWxlPy5zdHlsZUJ5QXR0cmlidXRlKSB7XG4gICAgICBjb25zdCBzZXJ2aWNlU3R5bGUgPSB0aGlzLnN0eWxlU2VydmljZTtcbiAgICAgIGxheWVyT3B0aW9ucy5zdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiBzZXJ2aWNlU3R5bGUuY3JlYXRlU3R5bGVCeUF0dHJpYnV0ZShcbiAgICAgICAgICBmZWF0dXJlLFxuICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5zdHlsZUJ5QXR0cmlidXRlLFxuICAgICAgICAgIHJlc29sdXRpb25cbiAgICAgICAgKTtcbiAgICAgIH07XG4gICAgICBpZ29MYXllciA9IG5ldyBWZWN0b3JMYXllcihcbiAgICAgICAgbGF5ZXJPcHRpb25zLFxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgICB0aGlzLmF1dGhJbnRlcmNlcHRvcixcbiAgICAgICAgdGhpcy5nZW9OZXR3b3JrU2VydmljZSxcbiAgICAgICAgdGhpcy5nZW9OZXR3b3JrU2VydmljZT8uZ2VvREJTZXJ2aWNlLFxuICAgICAgICB0aGlzLmxheWVyREJTZXJ2aWNlXG4gICAgICApO1xuICAgIH1cblxuICAgIGlmIChsYXllck9wdGlvbnMuc291cmNlIGluc3RhbmNlb2YgQ2x1c3RlckRhdGFTb3VyY2UpIHtcbiAgICAgIGNvbnN0IHNlcnZpY2VTdHlsZSA9IHRoaXMuc3R5bGVTZXJ2aWNlO1xuICAgICAgY29uc3QgYmFzZVN0eWxlID0gbGF5ZXJPcHRpb25zLmlnb1N0eWxlLmNsdXN0ZXJCYXNlU3R5bGU7XG4gICAgICBsYXllck9wdGlvbnMuc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xuICAgICAgICByZXR1cm4gc2VydmljZVN0eWxlLmNyZWF0ZUNsdXN0ZXJTdHlsZShcbiAgICAgICAgICBmZWF0dXJlLFxuICAgICAgICAgIHJlc29sdXRpb24sXG4gICAgICAgICAgbGF5ZXJPcHRpb25zLmNsdXN0ZXJQYXJhbSxcbiAgICAgICAgICBiYXNlU3R5bGVcbiAgICAgICAgKTtcbiAgICAgIH07XG4gICAgICBpZ29MYXllciA9IG5ldyBWZWN0b3JMYXllcihcbiAgICAgICAgbGF5ZXJPcHRpb25zLFxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgICB0aGlzLmF1dGhJbnRlcmNlcHRvcixcbiAgICAgICAgdGhpcy5nZW9OZXR3b3JrU2VydmljZSxcbiAgICAgICAgdGhpcy5nZW9OZXR3b3JrU2VydmljZT8uZ2VvREJTZXJ2aWNlLFxuICAgICAgICB0aGlzLmxheWVyREJTZXJ2aWNlXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGxheWVyT3B0aW9uc09sID0gT2JqZWN0LmFzc2lnbih7fSwgbGF5ZXJPcHRpb25zLCB7XG4gICAgICBzdHlsZVxuICAgIH0pO1xuXG4gICAgaWYgKCFpZ29MYXllcikge1xuICAgICAgaWdvTGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoXG4gICAgICAgIGxheWVyT3B0aW9uc09sLFxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgICB0aGlzLmF1dGhJbnRlcmNlcHRvcixcbiAgICAgICAgdGhpcy5nZW9OZXR3b3JrU2VydmljZSxcbiAgICAgICAgdGhpcy5nZW9OZXR3b3JrU2VydmljZT8uZ2VvREJTZXJ2aWNlLFxuICAgICAgICB0aGlzLmxheWVyREJTZXJ2aWNlXG4gICAgICApO1xuICAgIH1cblxuICAgIHRoaXMuYXBwbHlNYXBib3hTdHlsZShpZ29MYXllciwgbGF5ZXJPcHRpb25zT2wgYXMgYW55KTtcblxuICAgIHJldHVybiBpZ29MYXllcjtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlTGVnYWN5U3R5bGVzKGxheWVyT3B0aW9ucywgbGVnYWN5U3R5bGVPcHRpb25zOiBzdHJpbmdbXSkge1xuICAgIGxlZ2FjeVN0eWxlT3B0aW9ucy5tYXAoKGxlZ2FjeU9wdGlvbikgPT4ge1xuICAgICAgaWYgKGxheWVyT3B0aW9uc1tsZWdhY3lPcHRpb25dKSB7XG4gICAgICAgIGxldCBuZXdLZXkgPSBsZWdhY3lPcHRpb247XG4gICAgICAgIGlmIChsZWdhY3lPcHRpb24gPT09ICdzdHlsZScpIHtcbiAgICAgICAgICBpZiAobGF5ZXJPcHRpb25zW2xlZ2FjeU9wdGlvbl0gaW5zdGFuY2VvZiBvbFN0eWxlLlN0eWxlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmICh0eXBlb2YgbGF5ZXJPcHRpb25zW2xlZ2FjeU9wdGlvbl0gPT09ICdvYmplY3QnKSB7XG4gICAgICAgICAgICBuZXdLZXkgPSAnaWdvU3R5bGVPYmplY3QnO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZVtuZXdLZXldID0gbGF5ZXJPcHRpb25zW2xlZ2FjeU9wdGlvbl07XG4gICAgICAgIGRlbGV0ZSBsYXllck9wdGlvbnNbbGVnYWN5T3B0aW9uXTtcbiAgICAgICAgY29uc29sZS53YXJuKGBcbiAgICAgICAgVGhlIGxvY2F0aW9uIG9mIHRoaXMgc3R5bGUgb3B0aW9uICgke2xlZ2FjeU9wdGlvbn0pIGlzIGRlcHJlY2F0ZWQuXG4gICAgICAgIFBsZWFzZSBtb3ZlIHRoaXMgcHJvcGVydHkgd2l0aGluIGlnb1N0eWxlIHByb3BlcnR5LlxuICAgICAgICBFeDogJHtsZWdhY3lPcHRpb259OiB7Li4ufSBtdXN0IGJlIHRyYW5zZmVyZWQgdG8gaWdvU3R5bGU6IHsgJHtuZXdLZXl9OiB7Li4ufSB9XG4gICAgICAgIFRoaXMgbGVnYWN5IGNvbnZlcnNpb24gd2lsbCBiZSBkZWxldGVkIGluIDIwMjQuXG4gICAgICAgIGApO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVWZWN0b3JUaWxlTGF5ZXIoXG4gICAgbGF5ZXJPcHRpb25zOiBWZWN0b3JUaWxlTGF5ZXJPcHRpb25zXG4gICk6IFZlY3RvclRpbGVMYXllciB7XG4gICAgbGV0IHN0eWxlOiBTdHlsZVtdIHwgU3R5bGUgfCBPbFN0eWxlTGlrZTtcbiAgICBsZXQgaWdvTGF5ZXI6IFZlY3RvclRpbGVMYXllcjtcblxuICAgIGlmICghbGF5ZXJPcHRpb25zLmlnb1N0eWxlKSB7XG4gICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUgPSB7fTtcbiAgICB9XG4gICAgY29uc3QgbGVnYWN5U3R5bGVPcHRpb25zID0gW1xuICAgICAgJ3N0eWxlQnlBdHRyaWJ1dGUnLFxuICAgICAgJ2hvdmVyU3R5bGUnLFxuICAgICAgJ21hcGJveFN0eWxlJyxcbiAgICAgICdzdHlsZSdcbiAgICBdO1xuICAgIC8vIGhhbmRsaW5nIGxlZ2FjeSBwcm9wZXJ0eS5cbiAgICB0aGlzLmhhbmRsZUxlZ2FjeVN0eWxlcyhsYXllck9wdGlvbnMsIGxlZ2FjeVN0eWxlT3B0aW9ucyk7XG5cbiAgICBpZiAobGF5ZXJPcHRpb25zLmlnb1N0eWxlLmlnb1N0eWxlT2JqZWN0KSB7XG4gICAgICBzdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PlxuICAgICAgICB0aGlzLnN0eWxlU2VydmljZS5jcmVhdGVTdHlsZShcbiAgICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUuaWdvU3R5bGVPYmplY3QsXG4gICAgICAgICAgZmVhdHVyZSxcbiAgICAgICAgICByZXNvbHV0aW9uXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGxheWVyT3B0aW9ucy5pZ29TdHlsZS5zdHlsZUJ5QXR0cmlidXRlKSB7XG4gICAgICBjb25zdCBzZXJ2aWNlU3R5bGUgPSB0aGlzLnN0eWxlU2VydmljZTtcbiAgICAgIGxheWVyT3B0aW9ucy5zdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiBzZXJ2aWNlU3R5bGUuY3JlYXRlU3R5bGVCeUF0dHJpYnV0ZShcbiAgICAgICAgICBmZWF0dXJlLFxuICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5zdHlsZUJ5QXR0cmlidXRlLFxuICAgICAgICAgIHJlc29sdXRpb25cbiAgICAgICAgKTtcbiAgICAgIH07XG4gICAgICBpZ29MYXllciA9IG5ldyBWZWN0b3JUaWxlTGF5ZXIoXG4gICAgICAgIGxheWVyT3B0aW9ucyxcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZSxcbiAgICAgICAgdGhpcy5hdXRoSW50ZXJjZXB0b3JcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgbGF5ZXJPcHRpb25zT2wgPSBPYmplY3QuYXNzaWduKHt9LCBsYXllck9wdGlvbnMsIHtcbiAgICAgIHN0eWxlXG4gICAgfSk7XG5cbiAgICBpZiAoIWlnb0xheWVyKSB7XG4gICAgICBpZ29MYXllciA9IG5ldyBWZWN0b3JUaWxlTGF5ZXIoXG4gICAgICAgIGxheWVyT3B0aW9uc09sLFxuICAgICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgICB0aGlzLmF1dGhJbnRlcmNlcHRvclxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmFwcGx5TWFwYm94U3R5bGUoaWdvTGF5ZXIsIGxheWVyT3B0aW9uc09sKTtcbiAgICByZXR1cm4gaWdvTGF5ZXI7XG4gIH1cblxuICBwcml2YXRlIGFwcGx5TWFwYm94U3R5bGUobGF5ZXI6IExheWVyLCBsYXllck9wdGlvbnM6IFZlY3RvclRpbGVMYXllck9wdGlvbnMpIHtcbiAgICBpZiAobGF5ZXJPcHRpb25zLmlnb1N0eWxlPy5tYXBib3hTdHlsZSkge1xuICAgICAgdGhpcy5nZXRTdHVmZihsYXllck9wdGlvbnMuaWdvU3R5bGUubWFwYm94U3R5bGUudXJsKS5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgICBpZiAocmVzLnNwcml0ZSkge1xuICAgICAgICAgIGNvbnN0IHVybCA9IHRoaXMuZ2V0QWJzb2x1dGVVcmwoXG4gICAgICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUubWFwYm94U3R5bGUudXJsLFxuICAgICAgICAgICAgcmVzLnNwcml0ZVxuICAgICAgICAgICk7XG4gICAgICAgICAgdGhpcy5nZXRTdHVmZih1cmwgKyAnLmpzb24nKS5zdWJzY3JpYmUoKHJlczIpID0+IHtcbiAgICAgICAgICAgIHN0eWxlZnVuY3Rpb24oXG4gICAgICAgICAgICAgIGxheWVyLm9sIGFzIG9sTGF5ZXJWZWN0b3JUaWxlLFxuICAgICAgICAgICAgICByZXMsXG4gICAgICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5tYXBib3hTdHlsZS5zb3VyY2UsXG4gICAgICAgICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgcmVzMixcbiAgICAgICAgICAgICAgdXJsICsgJy5wbmcnXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHN0eWxlZnVuY3Rpb24oXG4gICAgICAgICAgICBsYXllci5vbCBhcyBvbExheWVyVmVjdG9yVGlsZSxcbiAgICAgICAgICAgIHJlcyxcbiAgICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5tYXBib3hTdHlsZS5zb3VyY2VcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGdldFN0dWZmKHVybDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodXJsKS5waXBlKFxuICAgICAgbWFwKChyZXM6IGFueSkgPT4gcmVzKSxcbiAgICAgIGNhdGNoRXJyb3IoKGVycikgPT4ge1xuICAgICAgICBjb25zb2xlLmxvZygnTm8gc3R5bGUgd2FzIGZvdW5kJyk7XG4gICAgICAgIHJldHVybiBvZihlcnIpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRBYnNvbHV0ZVVybChzb3VyY2UsIHVybCkge1xuICAgIGNvbnN0IHIgPSBuZXcgUmVnRXhwKCdeaHR0cHwvLycsICdpJyk7XG4gICAgaWYgKHIudGVzdCh1cmwpKSB7XG4gICAgICByZXR1cm4gdXJsO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoc291cmNlLnN1YnN0cihzb3VyY2UubGVuZ3RoIC0gMSkgPT09ICcvJykge1xuICAgICAgICByZXR1cm4gc291cmNlICsgdXJsO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIHNvdXJjZSArICcvJyArIHVybDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBjcmVhdGVBc3luY0lkYkxheWVycyhjb250ZXh0VXJpID0gJyonKTogT2JzZXJ2YWJsZTxMYXllcltdPiB7XG4gICAgcmV0dXJuIHRoaXMubGF5ZXJEQlNlcnZpY2U/LmdldEFsbCgpLnBpcGUoXG4gICAgICBjb25jYXRNYXAoKHJlcykgPT4ge1xuICAgICAgICBjb25zdCBpZGJMYXllcnMgPVxuICAgICAgICAgIGNvbnRleHRVcmkgIT09ICcqJ1xuICAgICAgICAgICAgPyByZXMuZmlsdGVyKChsKSA9PiBsLmRldGFpbGVkQ29udGV4dFVyaSA9PT0gY29udGV4dFVyaSlcbiAgICAgICAgICAgIDogcmVzO1xuICAgICAgICBjb25zdCBsYXllcnNPcHRpb25zOiBMYXllck9wdGlvbnNbXSA9IGlkYkxheWVycy5tYXAoKGlkYmwpID0+XG4gICAgICAgICAgT2JqZWN0LmFzc2lnbih7fSwgaWRibC5sYXllck9wdGlvbnMsIHtcbiAgICAgICAgICAgIHNvdXJjZU9wdGlvbnM6IGlkYmwuc291cmNlT3B0aW9uc1xuICAgICAgICAgIH0pXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFxuICAgICAgICAgIGxheWVyc09wdGlvbnMubWFwKChsYXllck9wdGlvbnMpID0+XG4gICAgICAgICAgICB0aGlzLmNyZWF0ZUFzeW5jTGF5ZXIobGF5ZXJPcHRpb25zKVxuICAgICAgICAgIClcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxufVxuIl19
273
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSTFDLE9BQU8sS0FBSyxPQUFPLE1BQU0sVUFBVSxDQUFDO0FBR3BDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLGFBQWEsRUFBRSxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFNUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDL0UsT0FBTyxFQUNMLG9CQUFvQixFQUNwQixlQUFlLEVBQ2YsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUNqQix5QkFBeUIsRUFDekIsYUFBYSxFQUNiLGFBQWEsRUFDYix3QkFBd0IsRUFDeEIsbUJBQW1CLEVBQ25CLGFBQWEsRUFDYixhQUFhLEVBQ2IsY0FBYyxFQUNkLG1CQUFtQixFQUNuQixhQUFhLEVBQ2QsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENB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QUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFO2dCQUNuQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7YUFDbEMsQ0FBQyxDQUNILENBQUM7WUFDRixPQUFPLGFBQWEsQ0FDbEIsYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFlBQVksRUFBRSxFQUFFLENBQ2pDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FDcEMsQ0FDRixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7d0dBcFdVLFlBQVk7NEdBQVosWUFBWSxjQUZYLE1BQU07OzRGQUVQLFlBQVk7a0JBSHhCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPSSxRQUFROzswQkFDUixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdGFibGUsIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEF1dGhJbnRlcmNlcHRvciB9IGZyb20gJ0BpZ28yL2F1dGgnO1xuaW1wb3J0IHsgTWVzc2FnZVNlcnZpY2UgfSBmcm9tICdAaWdvMi9jb3JlL21lc3NhZ2UnO1xuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tICdAaWdvMi91dGlscyc7XG5cbmltcG9ydCBvbExheWVyVmVjdG9yVGlsZSBmcm9tICdvbC9sYXllci9WZWN0b3JUaWxlJztcbmltcG9ydCB7IFN0eWxlIH0gZnJvbSAnb2wvc3R5bGUnO1xuaW1wb3J0ICogYXMgb2xTdHlsZSBmcm9tICdvbC9zdHlsZSc7XG5pbXBvcnQgeyBTdHlsZUxpa2UgYXMgT2xTdHlsZUxpa2UgfSBmcm9tICdvbC9zdHlsZS9TdHlsZSc7XG5cbmltcG9ydCB7IHN0eWxlZnVuY3Rpb24gfSBmcm9tICdvbC1tYXBib3gtc3R5bGUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgY29tYmluZUxhdGVzdCwgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGNhdGNoRXJyb3IsIGNvbmNhdE1hcCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBEYXRhU291cmNlU2VydmljZSB9IGZyb20gJy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQge1xuICBBcmNHSVNSZXN0RGF0YVNvdXJjZSxcbiAgQ2FydG9EYXRhU291cmNlLFxuICBDbHVzdGVyRGF0YVNvdXJjZSxcbiAgRmVhdHVyZURhdGFTb3VyY2UsXG4gIEltYWdlQXJjR0lTUmVzdERhdGFTb3VyY2UsXG4gIE1WVERhdGFTb3VyY2UsXG4gIE9TTURhdGFTb3VyY2UsXG4gIFRpbGVBcmNHSVNSZXN0RGF0YVNvdXJjZSxcbiAgVGlsZURlYnVnRGF0YVNvdXJjZSxcbiAgV0ZTRGF0YVNvdXJjZSxcbiAgV01TRGF0YVNvdXJjZSxcbiAgV01UU0RhdGFTb3VyY2UsXG4gIFdlYlNvY2tldERhdGFTb3VyY2UsXG4gIFhZWkRhdGFTb3VyY2Vcbn0gZnJvbSAnLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMnO1xuaW1wb3J0IHsgTGF5ZXJEQlNlcnZpY2UgfSBmcm9tICcuLi8uLi9vZmZsaW5lL2xheWVyREIvbGF5ZXJEQi5zZXJ2aWNlJztcbmltcG9ydCB7IEdlb05ldHdvcmtTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vb2ZmbGluZS9zaGFyZWQvZ2VvLW5ldHdvcmsuc2VydmljZSc7XG5pbXBvcnQgeyBTdHlsZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zdHlsZS9zdHlsZS1zZXJ2aWNlL3N0eWxlLnNlcnZpY2UnO1xuaW1wb3J0IHsgY29tcHV0ZU1WVE9wdGlvbnNPbkhvdmVyIH0gZnJvbSAnLi4vdXRpbHMvbGF5ZXIudXRpbHMnO1xuaW1wb3J0IHtcbiAgQW55TGF5ZXJPcHRpb25zLFxuICBJbWFnZUxheWVyLFxuICBJbWFnZUxheWVyT3B0aW9ucyxcbiAgTGF5ZXIsXG4gIExheWVyT3B0aW9ucyxcbiAgVGlsZUxheWVyLFxuICBUaWxlTGF5ZXJPcHRpb25zLFxuICBWZWN0b3JMYXllcixcbiAgVmVjdG9yTGF5ZXJPcHRpb25zLFxuICBWZWN0b3JUaWxlTGF5ZXIsXG4gIFZlY3RvclRpbGVMYXllck9wdGlvbnNcbn0gZnJvbSAnLi9sYXllcnMnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBMYXllclNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJpdmF0ZSBzdHlsZVNlcnZpY2U6IFN0eWxlU2VydmljZSxcbiAgICBwcml2YXRlIGRhdGFTb3VyY2VTZXJ2aWNlOiBEYXRhU291cmNlU2VydmljZSxcbiAgICBwcml2YXRlIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBAT3B0aW9uYWwoKSBwcml2YXRlIGdlb05ldHdvcmtTZXJ2aWNlPzogR2VvTmV0d29ya1NlcnZpY2UsXG4gICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBsYXllckRCU2VydmljZT86IExheWVyREJTZXJ2aWNlLFxuICAgIEBPcHRpb25hbCgpIHByaXZhdGUgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge31cblxuICBjcmVhdGVMYXllcihsYXllck9wdGlvbnM6IEFueUxheWVyT3B0aW9ucyk6IExheWVyIHtcbiAgICBpZiAoIWxheWVyT3B0aW9ucy5zb3VyY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBsYXllck9wdGlvbnMuc291cmNlLm9wdGlvbnMgJiZcbiAgICAgIGxheWVyT3B0aW9ucy5zb3VyY2Uub3B0aW9ucy5fbGF5ZXJPcHRpb25zRnJvbVNvdXJjZVxuICAgICkge1xuICAgICAgbGF5ZXJPcHRpb25zID0gT2JqZWN0VXRpbHMubWVyZ2VEZWVwKFxuICAgICAgICBsYXllck9wdGlvbnMuc291cmNlLm9wdGlvbnMuX2xheWVyT3B0aW9uc0Zyb21Tb3VyY2UsXG4gICAgICAgIGxheWVyT3B0aW9ucyB8fCB7fVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBsZXQgbGF5ZXI7XG4gICAgc3dpdGNoIChsYXllck9wdGlvbnMuc291cmNlLmNvbnN0cnVjdG9yKSB7XG4gICAgICBjYXNlIE9TTURhdGFTb3VyY2U6XG4gICAgICBjYXNlIFdNVFNEYXRhU291cmNlOlxuICAgICAgY2FzZSBYWVpEYXRhU291cmNlOlxuICAgICAgY2FzZSBUaWxlRGVidWdEYXRhU291cmNlOlxuICAgICAgY2FzZSBDYXJ0b0RhdGFTb3VyY2U6XG4gICAgICBjYXNlIFRpbGVBcmNHSVNSZXN0RGF0YVNvdXJjZTpcbiAgICAgICAgbGF5ZXIgPSB0aGlzLmNyZWF0ZVRpbGVMYXllcihsYXllck9wdGlvbnMgYXMgVGlsZUxheWVyT3B0aW9ucyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBGZWF0dXJlRGF0YVNvdXJjZTpcbiAgICAgIGNhc2UgV0ZTRGF0YVNvdXJjZTpcbiAgICAgIGNhc2UgQXJjR0lTUmVzdERhdGFTb3VyY2U6XG4gICAgICBjYXNlIFdlYlNvY2tldERhdGFTb3VyY2U6XG4gICAgICBjYXNlIENsdXN0ZXJEYXRhU291cmNlOlxuICAgICAgICBsYXllciA9IHRoaXMuY3JlYXRlVmVjdG9yTGF5ZXIobGF5ZXJPcHRpb25zIGFzIFZlY3RvckxheWVyT3B0aW9ucyk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSBJbWFnZUFyY0dJU1Jlc3REYXRhU291cmNlOlxuICAgICAgY2FzZSBXTVNEYXRhU291cmNlOlxuICAgICAgICBsYXllciA9IHRoaXMuY3JlYXRlSW1hZ2VMYXllcihsYXllck9wdGlvbnMgYXMgSW1hZ2VMYXllck9wdGlvbnMpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgTVZURGF0YVNvdXJjZToge1xuICAgICAgICBjb25zdCBfbGF5ZXJPcHRpb25zID0gY29tcHV0ZU1WVE9wdGlvbnNPbkhvdmVyKGxheWVyT3B0aW9ucyk7XG4gICAgICAgIGxheWVyID0gdGhpcy5jcmVhdGVWZWN0b3JUaWxlTGF5ZXIoXG4gICAgICAgICAgX2xheWVyT3B0aW9ucyBhcyBWZWN0b3JUaWxlTGF5ZXJPcHRpb25zXG4gICAgICAgICk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuXG4gICAgcmV0dXJuIGxheWVyO1xuICB9XG5cbiAgY3JlYXRlQXN5bmNMYXllcihcbiAgICBfbGF5ZXJPcHRpb25zOiBBbnlMYXllck9wdGlvbnMsXG4gICAgZGV0YWlsZWRDb250ZXh0VXJpPzogc3RyaW5nXG4gICk6IE9ic2VydmFibGU8TGF5ZXI+IHtcbiAgICBjb25zdCBsYXllck9wdGlvbnMgPSBjb21wdXRlTVZUT3B0aW9uc09uSG92ZXIoX2xheWVyT3B0aW9ucyk7XG4gICAgaWYgKGxheWVyT3B0aW9ucy5zb3VyY2UpIHtcbiAgICAgIHJldHVybiBuZXcgT2JzZXJ2YWJsZSgoZCkgPT4gZC5uZXh0KHRoaXMuY3JlYXRlTGF5ZXIobGF5ZXJPcHRpb25zKSkpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRhdGFTb3VyY2VTZXJ2aWNlXG4gICAgICAuY3JlYXRlQXN5bmNEYXRhU291cmNlKGxheWVyT3B0aW9ucy5zb3VyY2VPcHRpb25zLCBkZXRhaWxlZENvbnRleHRVcmkpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChzb3VyY2UpID0+IHtcbiAgICAgICAgICBpZiAoc291cmNlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIHJldHVybiB0aGlzLmNyZWF0ZUxheWVyKE9iamVjdC5hc3NpZ24obGF5ZXJPcHRpb25zLCB7IHNvdXJjZSB9KSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVJbWFnZUxheWVyKGxheWVyT3B0aW9uczogSW1hZ2VMYXllck9wdGlvbnMpOiBJbWFnZUxheWVyIHtcbiAgICByZXR1cm4gbmV3IEltYWdlTGF5ZXIoXG4gICAgICBsYXllck9wdGlvbnMsXG4gICAgICB0aGlzLm1lc3NhZ2VTZXJ2aWNlLFxuICAgICAgdGhpcy5hdXRoSW50ZXJjZXB0b3JcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVUaWxlTGF5ZXIobGF5ZXJPcHRpb25zOiBUaWxlTGF5ZXJPcHRpb25zKTogVGlsZUxheWVyIHtcbiAgICByZXR1cm4gbmV3IFRpbGVMYXllcihcbiAgICAgIGxheWVyT3B0aW9ucyxcbiAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UsXG4gICAgICB0aGlzLmF1dGhJbnRlcmNlcHRvclxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZVZlY3RvckxheWVyKGxheWVyT3B0aW9uczogVmVjdG9yTGF5ZXJPcHRpb25zKTogVmVjdG9yTGF5ZXIge1xuICAgIGxldCBzdHlsZTogU3R5bGVbXSB8IFN0eWxlIHwgT2xTdHlsZUxpa2UgPSBsYXllck9wdGlvbnMuc3R5bGU7XG4gICAgbGV0IGlnb0xheWVyOiBWZWN0b3JMYXllcjtcblxuICAgIGlmICghbGF5ZXJPcHRpb25zLmlnb1N0eWxlKSB7XG4gICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUgPSB7fTtcbiAgICB9XG4gICAgY29uc3QgbGVnYWN5U3R5bGVPcHRpb25zID0gW1xuICAgICAgJ3N0eWxlQnlBdHRyaWJ1dGUnLFxuICAgICAgJ2hvdmVyU3R5bGUnLFxuICAgICAgJ21hcGJveFN0eWxlJyxcbiAgICAgICdjbHVzdGVyQmFzZVN0eWxlJyxcbiAgICAgICdzdHlsZSdcbiAgICBdO1xuICAgIC8vIGhhbmRsaW5nIGxlZ2FjeSBwcm9wZXJ0eS5cbiAgICB0aGlzLmhhbmRsZUxlZ2FjeVN0eWxlcyhsYXllck9wdGlvbnMsIGxlZ2FjeVN0eWxlT3B0aW9ucyk7XG4gICAgaWYgKFxuICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlLmlnb1N0eWxlT2JqZWN0ICYmXG4gICAgICAhbGF5ZXJPcHRpb25zLmlkYkluZm8/LnN0b3JlVG9JZGJcbiAgICApIHtcbiAgICAgIHN0eWxlID0gKGZlYXR1cmUsIHJlc29sdXRpb24pID0+XG4gICAgICAgIHRoaXMuc3R5bGVTZXJ2aWNlLmNyZWF0ZVN0eWxlKFxuICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5pZ29TdHlsZU9iamVjdCxcbiAgICAgICAgICBmZWF0dXJlLFxuICAgICAgICAgIHJlc29sdXRpb25cbiAgICAgICAgKTtcbiAgICB9IGVsc2UgaWYgKFxuICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlLmlnb1N0eWxlT2JqZWN0ICYmXG4gICAgICBsYXllck9wdGlvbnMuaWRiSW5mbz8uc3RvcmVUb0lkYlxuICAgICkge1xuICAgICAgLy8gdGVtcG9yYXJ5IGZpeCB0b2RvIDogaGFuZGxlIGl0IHdpdGggZ2Vvc3R5bGVyLlxuICAgICAgc3R5bGUgPSB0aGlzLnN0eWxlU2VydmljZS5wYXJzZVN0eWxlKFxuICAgICAgICAnc3R5bGUnLFxuICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUuaWdvU3R5bGVPYmplY3RcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGxheWVyT3B0aW9ucy5zb3VyY2UgaW5zdGFuY2VvZiBBcmNHSVNSZXN0RGF0YVNvdXJjZSkge1xuICAgICAgY29uc3Qgc291cmNlID0gbGF5ZXJPcHRpb25zLnNvdXJjZSBhcyBBcmNHSVNSZXN0RGF0YVNvdXJjZTtcbiAgICAgIHN0eWxlID0gc291cmNlLm9wdGlvbnMucGFyYW1zLnN0eWxlO1xuICAgIH0gZWxzZSBpZiAobGF5ZXJPcHRpb25zLmlnb1N0eWxlPy5zdHlsZUJ5QXR0cmlidXRlKSB7XG4gICAgICBjb25zdCBzZXJ2aWNlU3R5bGUgPSB0aGlzLnN0eWxlU2VydmljZTtcbiAgICAgIGxheWVyT3B0aW9ucy5zdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiBzZXJ2aWNlU3R5bGUuY3JlYXRlU3R5bGVCeUF0dHJpYnV0ZShcbiAgICAgICAgICBmZWF0dXJlLFxuICAgICAgICAgIGxheWVyT3B0aW9ucy5pZ29TdHlsZS5zdHlsZUJ5QXR0cmlidXRlLFxuICAgICAgICAgIHJlc29sdXRpb25cbiAgICAgICAgKTtcbiAgICAgIH07XG5cbiAgICAgIGlnb0xheWVyID0gbmV3IFZlY3RvckxheWVyKFxuICAgICAgICBsYXllck9wdGlvbnMsXG4gICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UsXG4gICAgICAgIHRoaXMuYXV0aEludGVyY2VwdG9yLFxuICAgICAgICB0aGlzLmdlb05ldHdvcmtTZXJ2aWNlLFxuICAgICAgICB0aGlzLmdlb05ldHdvcmtTZXJ2aWNlPy5nZW9EQlNlcnZpY2UsXG4gICAgICAgIHRoaXMubGF5ZXJEQlNlcnZpY2VcbiAgICAgICk7XG4gICAgfVxuXG4gICAgaWYgKGxheWVyT3B0aW9ucy5zb3VyY2UgaW5zdGFuY2VvZiBDbHVzdGVyRGF0YVNvdXJjZSkge1xuICAgICAgY29uc3Qgc2VydmljZVN0eWxlID0gdGhpcy5zdHlsZVNlcnZpY2U7XG4gICAgICBjb25zdCBiYXNlU3R5bGUgPSBsYXllck9wdGlvbnMuaWdvU3R5bGUuY2x1c3RlckJhc2VTdHlsZTtcbiAgICAgIGxheWVyT3B0aW9ucy5zdHlsZSA9IChmZWF0dXJlLCByZXNvbHV0aW9uKSA9PiB7XG4gICAgICAgIHJldHVybiBzZXJ2aWNlU3R5bGUuY3JlYXRlQ2x1c3RlclN0eWxlKFxuICAgICAgICAgIGZlYXR1cmUsXG4gICAgICAgICAgcmVzb2x1dGlvbixcbiAgICAgICAgICBsYXllck9wdGlvbnMuY2x1c3RlclBhcmFtLFxuICAgICAgICAgIGJhc2VTdHlsZVxuICAgICAgICApO1xuICAgICAgfTtcblxuICAgICAgaWdvTGF5ZXIgPSBuZXcgVmVjdG9yTGF5ZXIoXG4gICAgICAgIGxheWVyT3B0aW9ucyxcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZSxcbiAgICAgICAgdGhpcy5hdXRoSW50ZXJjZXB0b3IsXG4gICAgICAgIHRoaXMuZ2VvTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIHRoaXMuZ2VvTmV0d29ya1NlcnZpY2U/Lmdlb0RCU2VydmljZSxcbiAgICAgICAgdGhpcy5sYXllckRCU2VydmljZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBsYXllck9wdGlvbnNPbCA9IE9iamVjdC5hc3NpZ24oe30sIGxheWVyT3B0aW9ucywge1xuICAgICAgc3R5bGVcbiAgICB9KTtcblxuICAgIGlmICghaWdvTGF5ZXIpIHtcbiAgICAgIGlnb0xheWVyID0gbmV3IFZlY3RvckxheWVyKFxuICAgICAgICBsYXllck9wdGlvbnNPbCxcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZSxcbiAgICAgICAgdGhpcy5hdXRoSW50ZXJjZXB0b3IsXG4gICAgICAgIHRoaXMuZ2VvTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIHRoaXMuZ2VvTmV0d29ya1NlcnZpY2U/Lmdlb0RCU2VydmljZSxcbiAgICAgICAgdGhpcy5sYXllckRCU2VydmljZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICB0aGlzLmFwcGx5TWFwYm94U3R5bGUoaWdvTGF5ZXIsIGxheWVyT3B0aW9uc09sIGFzIGFueSk7XG5cbiAgICByZXR1cm4gaWdvTGF5ZXI7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZUxlZ2FjeVN0eWxlcyhsYXllck9wdGlvbnMsIGxlZ2FjeVN0eWxlT3B0aW9uczogc3RyaW5nW10pIHtcbiAgICBsZWdhY3lTdHlsZU9wdGlvbnMubWFwKChsZWdhY3lPcHRpb24pID0+IHtcbiAgICAgIGlmIChsYXllck9wdGlvbnNbbGVnYWN5T3B0aW9uXSkge1xuICAgICAgICBsZXQgbmV3S2V5ID0gbGVnYWN5T3B0aW9uO1xuICAgICAgICBpZiAobGVnYWN5T3B0aW9uID09PSAnc3R5bGUnKSB7XG4gICAgICAgICAgaWYgKGxheWVyT3B0aW9uc1tsZWdhY3lPcHRpb25dIGluc3RhbmNlb2Ygb2xTdHlsZS5TdHlsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpZiAodHlwZW9mIGxheWVyT3B0aW9uc1tsZWdhY3lPcHRpb25dID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgbmV3S2V5ID0gJ2lnb1N0eWxlT2JqZWN0JztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGVbbmV3S2V5XSA9IGxheWVyT3B0aW9uc1tsZWdhY3lPcHRpb25dO1xuICAgICAgICBkZWxldGUgbGF5ZXJPcHRpb25zW2xlZ2FjeU9wdGlvbl07XG4gICAgICAgIGNvbnNvbGUud2FybihgXG4gICAgICAgIFRoZSBsb2NhdGlvbiBvZiB0aGlzIHN0eWxlIG9wdGlvbiAoJHtsZWdhY3lPcHRpb259KSBpcyBkZXByZWNhdGVkLlxuICAgICAgICBQbGVhc2UgbW92ZSB0aGlzIHByb3BlcnR5IHdpdGhpbiBpZ29TdHlsZSBwcm9wZXJ0eS5cbiAgICAgICAgRXg6ICR7bGVnYWN5T3B0aW9ufTogey4uLn0gbXVzdCBiZSB0cmFuc2ZlcmVkIHRvIGlnb1N0eWxlOiB7ICR7bmV3S2V5fTogey4uLn0gfVxuICAgICAgICBUaGlzIGxlZ2FjeSBjb252ZXJzaW9uIHdpbGwgYmUgZGVsZXRlZCBpbiAyMDI0LlxuICAgICAgICBgKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlVmVjdG9yVGlsZUxheWVyKFxuICAgIGxheWVyT3B0aW9uczogVmVjdG9yVGlsZUxheWVyT3B0aW9uc1xuICApOiBWZWN0b3JUaWxlTGF5ZXIge1xuICAgIGxldCBzdHlsZTogU3R5bGVbXSB8IFN0eWxlIHwgT2xTdHlsZUxpa2U7XG4gICAgbGV0IGlnb0xheWVyOiBWZWN0b3JUaWxlTGF5ZXI7XG5cbiAgICBpZiAoIWxheWVyT3B0aW9ucy5pZ29TdHlsZSkge1xuICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlID0ge307XG4gICAgfVxuICAgIGNvbnN0IGxlZ2FjeVN0eWxlT3B0aW9ucyA9IFtcbiAgICAgICdzdHlsZUJ5QXR0cmlidXRlJyxcbiAgICAgICdob3ZlclN0eWxlJyxcbiAgICAgICdtYXBib3hTdHlsZScsXG4gICAgICAnc3R5bGUnXG4gICAgXTtcbiAgICAvLyBoYW5kbGluZyBsZWdhY3kgcHJvcGVydHkuXG4gICAgdGhpcy5oYW5kbGVMZWdhY3lTdHlsZXMobGF5ZXJPcHRpb25zLCBsZWdhY3lTdHlsZU9wdGlvbnMpO1xuXG4gICAgaWYgKGxheWVyT3B0aW9ucy5pZ29TdHlsZS5pZ29TdHlsZU9iamVjdCkge1xuICAgICAgc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT5cbiAgICAgICAgdGhpcy5zdHlsZVNlcnZpY2UuY3JlYXRlU3R5bGUoXG4gICAgICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlLmlnb1N0eWxlT2JqZWN0LFxuICAgICAgICAgIGZlYXR1cmUsXG4gICAgICAgICAgcmVzb2x1dGlvblxuICAgICAgICApO1xuICAgIH1cblxuICAgIGlmIChsYXllck9wdGlvbnMuaWdvU3R5bGUuc3R5bGVCeUF0dHJpYnV0ZSkge1xuICAgICAgY29uc3Qgc2VydmljZVN0eWxlID0gdGhpcy5zdHlsZVNlcnZpY2U7XG4gICAgICBsYXllck9wdGlvbnMuc3R5bGUgPSAoZmVhdHVyZSwgcmVzb2x1dGlvbikgPT4ge1xuICAgICAgICByZXR1cm4gc2VydmljZVN0eWxlLmNyZWF0ZVN0eWxlQnlBdHRyaWJ1dGUoXG4gICAgICAgICAgZmVhdHVyZSxcbiAgICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUuc3R5bGVCeUF0dHJpYnV0ZSxcbiAgICAgICAgICByZXNvbHV0aW9uXG4gICAgICAgICk7XG4gICAgICB9O1xuICAgICAgaWdvTGF5ZXIgPSBuZXcgVmVjdG9yVGlsZUxheWVyKFxuICAgICAgICBsYXllck9wdGlvbnMsXG4gICAgICAgIHRoaXMubWVzc2FnZVNlcnZpY2UsXG4gICAgICAgIHRoaXMuYXV0aEludGVyY2VwdG9yXG4gICAgICApO1xuICAgIH1cblxuICAgIGNvbnN0IGxheWVyT3B0aW9uc09sID0gT2JqZWN0LmFzc2lnbih7fSwgbGF5ZXJPcHRpb25zLCB7XG4gICAgICBzdHlsZVxuICAgIH0pO1xuXG4gICAgaWYgKCFpZ29MYXllcikge1xuICAgICAgaWdvTGF5ZXIgPSBuZXcgVmVjdG9yVGlsZUxheWVyKFxuICAgICAgICBsYXllck9wdGlvbnNPbCxcbiAgICAgICAgdGhpcy5tZXNzYWdlU2VydmljZSxcbiAgICAgICAgdGhpcy5hdXRoSW50ZXJjZXB0b3JcbiAgICAgICk7XG4gICAgfVxuXG4gICAgdGhpcy5hcHBseU1hcGJveFN0eWxlKGlnb0xheWVyLCBsYXllck9wdGlvbnNPbCk7XG4gICAgcmV0dXJuIGlnb0xheWVyO1xuICB9XG5cbiAgcHJpdmF0ZSBhcHBseU1hcGJveFN0eWxlKGxheWVyOiBMYXllciwgbGF5ZXJPcHRpb25zOiBWZWN0b3JUaWxlTGF5ZXJPcHRpb25zKSB7XG4gICAgaWYgKGxheWVyT3B0aW9ucy5pZ29TdHlsZT8ubWFwYm94U3R5bGUpIHtcbiAgICAgIHRoaXMuZ2V0U3R1ZmYobGF5ZXJPcHRpb25zLmlnb1N0eWxlLm1hcGJveFN0eWxlLnVybCkuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgaWYgKHJlcy5zcHJpdGUpIHtcbiAgICAgICAgICBjb25zdCB1cmwgPSB0aGlzLmdldEFic29sdXRlVXJsKFxuICAgICAgICAgICAgbGF5ZXJPcHRpb25zLmlnb1N0eWxlLm1hcGJveFN0eWxlLnVybCxcbiAgICAgICAgICAgIHJlcy5zcHJpdGVcbiAgICAgICAgICApO1xuICAgICAgICAgIHRoaXMuZ2V0U3R1ZmYodXJsICsgJy5qc29uJykuc3Vic2NyaWJlKChyZXMyKSA9PiB7XG4gICAgICAgICAgICBzdHlsZWZ1bmN0aW9uKFxuICAgICAgICAgICAgICBsYXllci5vbCBhcyBvbExheWVyVmVjdG9yVGlsZSxcbiAgICAgICAgICAgICAgcmVzLFxuICAgICAgICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUubWFwYm94U3R5bGUuc291cmNlLFxuICAgICAgICAgICAgICB1bmRlZmluZWQsXG4gICAgICAgICAgICAgIHJlczIsXG4gICAgICAgICAgICAgIHVybCArICcucG5nJ1xuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzdHlsZWZ1bmN0aW9uKFxuICAgICAgICAgICAgbGF5ZXIub2wgYXMgb2xMYXllclZlY3RvclRpbGUsXG4gICAgICAgICAgICByZXMsXG4gICAgICAgICAgICBsYXllck9wdGlvbnMuaWdvU3R5bGUubWFwYm94U3R5bGUuc291cmNlXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRTdHVmZih1cmw6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCkucGlwZShcbiAgICAgIG1hcCgocmVzOiBhbnkpID0+IHJlcyksXG4gICAgICBjYXRjaEVycm9yKChlcnIpID0+IHtcbiAgICAgICAgY29uc29sZS5sb2coJ05vIHN0eWxlIHdhcyBmb3VuZCcpO1xuICAgICAgICByZXR1cm4gb2YoZXJyKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0QWJzb2x1dGVVcmwoc291cmNlLCB1cmwpIHtcbiAgICBjb25zdCByID0gbmV3IFJlZ0V4cCgnXmh0dHB8Ly8nLCAnaScpO1xuICAgIGlmIChyLnRlc3QodXJsKSkge1xuICAgICAgcmV0dXJuIHVybDtcbiAgICB9IGVsc2Uge1xuICAgICAgaWYgKHNvdXJjZS5zdWJzdHIoc291cmNlLmxlbmd0aCAtIDEpID09PSAnLycpIHtcbiAgICAgICAgcmV0dXJuIHNvdXJjZSArIHVybDtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBzb3VyY2UgKyAnLycgKyB1cmw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlQXN5bmNJZGJMYXllcnMoY29udGV4dFVyaSA9ICcqJyk6IE9ic2VydmFibGU8TGF5ZXJbXT4ge1xuICAgIHJldHVybiB0aGlzLmxheWVyREJTZXJ2aWNlPy5nZXRBbGwoKS5waXBlKFxuICAgICAgY29uY2F0TWFwKChyZXMpID0+IHtcbiAgICAgICAgY29uc3QgaWRiTGF5ZXJzID1cbiAgICAgICAgICBjb250ZXh0VXJpICE9PSAnKidcbiAgICAgICAgICAgID8gcmVzLmZpbHRlcigobCkgPT4gbC5kZXRhaWxlZENvbnRleHRVcmkgPT09IGNvbnRleHRVcmkpXG4gICAgICAgICAgICA6IHJlcztcbiAgICAgICAgY29uc3QgbGF5ZXJzT3B0aW9uczogTGF5ZXJPcHRpb25zW10gPSBpZGJMYXllcnMubWFwKChpZGJsKSA9PlxuICAgICAgICAgIE9iamVjdC5hc3NpZ24oe30sIGlkYmwubGF5ZXJPcHRpb25zLCB7XG4gICAgICAgICAgICBzb3VyY2VPcHRpb25zOiBpZGJsLnNvdXJjZU9wdGlvbnNcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgICByZXR1cm4gY29tYmluZUxhdGVzdChcbiAgICAgICAgICBsYXllcnNPcHRpb25zLm1hcCgobGF5ZXJPcHRpb25zKSA9PlxuICAgICAgICAgICAgdGhpcy5jcmVhdGVBc3luY0xheWVyKGxheWVyT3B0aW9ucylcbiAgICAgICAgICApXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -67,4 +67,4 @@ export class ImageLayer extends Layer {
67
67
  xhr.send();
68
68
  }
69
69
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtbGF5ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9zaGFyZWQvbGF5ZXJzL2ltYWdlLWxheWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sWUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBTTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWhDLE1BQU0sT0FBTyxVQUFXLFNBQVEsS0FBSztJQVMxQjtJQUNBO0lBTEQsT0FBTyxDQUFlO0lBRTlCLFlBQ0UsT0FBMEIsRUFDbkIsY0FBOEIsRUFDOUIsZUFBaUM7UUFFeEMsS0FBSyxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFIekMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQUd4QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25DLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxhQUFhO1FBQ3JCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEQsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQW1CO1NBQ2hELENBQUMsQ0FBQztRQUVILE1BQU0sS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxTQUFTLEVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDNUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzFFLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUF1QjtRQUNuQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU8sWUFBWSxDQUNsQixJQUFJLEVBQ0osR0FBVyxFQUNYLFdBQTRCLEVBQzVCLGNBQThCO1FBRTlCLE1BQU0sR0FBRyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFFakMsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkUsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2QsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1lBQzFCLEdBQUcsR0FBRyxxQkFBcUIsQ0FBQztRQUM5QixDQUFDO1FBQ0QsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDckIsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQzFCLE9BQU87UUFDVCxDQUFDO1FBRUQsR0FBRyxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUM7UUFFakMsR0FBRyxDQUFDLE1BQU0sR0FBRztZQUNYLE1BQU0sZUFBZSxHQUFHLElBQUksVUFBVSxDQUFFLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvRCxNQUFNLGNBQWMsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNqRSxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsd0JBQXdCLENBQUMsRUFBRSxDQUFDO2dCQUN0RCxjQUFjLENBQUMsS0FBSyxDQUNsQiwwQ0FBMEMsRUFDMUMscUNBQXFDLENBQ3RDLENBQUM7WUFDSixDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQztRQUNqQyxDQUFDLENBQUM7UUFDRixHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoSW50ZXJjZXB0b3IgfSBmcm9tICdAaWdvMi9hdXRoJztcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9tZXNzYWdlJztcblxuaW1wb3J0IG9sTGF5ZXJJbWFnZSBmcm9tICdvbC9sYXllci9JbWFnZSc7XG5pbXBvcnQgb2xTb3VyY2VJbWFnZSBmcm9tICdvbC9zb3VyY2UvSW1hZ2UnO1xuXG5pbXBvcnQgeyBJbWFnZUFyY0dJU1Jlc3REYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvaW1hZ2VhcmNnaXNyZXN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgV01TRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3dtcy1kYXRhc291cmNlJztcbmltcG9ydCB0eXBlIHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgSW1hZ2VXYXRjaGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvaW1hZ2Utd2F0Y2hlcic7XG5pbXBvcnQgeyBJbWFnZUxheWVyT3B0aW9ucyB9IGZyb20gJy4vaW1hZ2UtbGF5ZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi9sYXllcic7XG5cbmV4cG9ydCBjbGFzcyBJbWFnZUxheWVyIGV4dGVuZHMgTGF5ZXIge1xuICBwdWJsaWMgZGVjbGFyZSBkYXRhU291cmNlOiBXTVNEYXRhU291cmNlIHwgSW1hZ2VBcmNHSVNSZXN0RGF0YVNvdXJjZTtcbiAgcHVibGljIGRlY2xhcmUgb3B0aW9uczogSW1hZ2VMYXllck9wdGlvbnM7XG4gIHB1YmxpYyBkZWNsYXJlIG9sOiBvbExheWVySW1hZ2U8b2xTb3VyY2VJbWFnZT47XG5cbiAgcHJpdmF0ZSB3YXRjaGVyOiBJbWFnZVdhdGNoZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgb3B0aW9uczogSW1hZ2VMYXllck9wdGlvbnMsXG4gICAgcHVibGljIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwdWJsaWMgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge1xuICAgIHN1cGVyKG9wdGlvbnMsIG1lc3NhZ2VTZXJ2aWNlLCBhdXRoSW50ZXJjZXB0b3IpO1xuICAgIHRoaXMud2F0Y2hlciA9IG5ldyBJbWFnZVdhdGNoZXIodGhpcywgdGhpcy5tZXNzYWdlU2VydmljZSk7XG4gICAgdGhpcy5zdGF0dXMkID0gdGhpcy53YXRjaGVyLnN0YXR1cyQ7XG4gICAgdGhpcy5zdGF0dXMkLnN1YnNjcmliZSgodmFsU3RhdHVzKSA9PiB7XG4gICAgICBpZiAodmFsU3RhdHVzID09PSAwKSB7XG4gICAgICAgIHRoaXMub2xMb2FkaW5nUHJvYmxlbSA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlT2xMYXllcigpOiBvbExheWVySW1hZ2U8b2xTb3VyY2VJbWFnZT4ge1xuICAgIGNvbnN0IG9sT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMub3B0aW9ucywge1xuICAgICAgc291cmNlOiB0aGlzLm9wdGlvbnMuc291cmNlLm9sIGFzIG9sU291cmNlSW1hZ2VcbiAgICB9KTtcblxuICAgIGNvbnN0IGltYWdlID0gbmV3IG9sTGF5ZXJJbWFnZShvbE9wdGlvbnMpO1xuICAgIGlmICh0aGlzLmF1dGhJbnRlcmNlcHRvcikge1xuICAgICAgKGltYWdlLmdldFNvdXJjZSgpIGFzIGFueSkuc2V0SW1hZ2VMb2FkRnVuY3Rpb24oKHRpbGUsIHNyYykgPT4ge1xuICAgICAgICB0aGlzLmN1c3RvbUxvYWRlcih0aWxlLCBzcmMsIHRoaXMuYXV0aEludGVyY2VwdG9yLCB0aGlzLm1lc3NhZ2VTZXJ2aWNlKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBpbWFnZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRNYXAobWFwOiBJZ29NYXAgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAobWFwID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMud2F0Y2hlci51bnN1YnNjcmliZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLndhdGNoZXIuc3Vic2NyaWJlKCgpID0+IHZvaWQgMSk7XG4gICAgfVxuICAgIHN1cGVyLnNldE1hcChtYXApO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21Mb2FkZXIoXG4gICAgdGlsZSxcbiAgICBzcmM6IHN0cmluZyxcbiAgICBpbnRlcmNlcHRvcjogQXV0aEludGVyY2VwdG9yLFxuICAgIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuICApIHtcbiAgICBjb25zdCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblxuICAgIGNvbnN0IGFsdGVyZWRVcmxXaXRoS2V5QXV0aCA9IGludGVyY2VwdG9yLmFsdGVyVXJsV2l0aEtleUF1dGgoc3JjKTtcbiAgICBsZXQgdXJsID0gc3JjO1xuICAgIGlmIChhbHRlcmVkVXJsV2l0aEtleUF1dGgpIHtcbiAgICAgIHVybCA9IGFsdGVyZWRVcmxXaXRoS2V5QXV0aDtcbiAgICB9XG4gICAgeGhyLm9wZW4oJ0dFVCcsIHVybCk7XG4gICAgY29uc3QgaW50ZXJjZXB0ZWQgPSBpbnRlcmNlcHRvci5pbnRlcmNlcHRYaHIoeGhyLCB1cmwpO1xuICAgIGlmICghaW50ZXJjZXB0ZWQpIHtcbiAgICAgIHhoci5hYm9ydCgpO1xuICAgICAgdGlsZS5nZXRJbWFnZSgpLnNyYyA9IHVybDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB4aHIucmVzcG9uc2VUeXBlID0gJ2FycmF5YnVmZmVyJztcblxuICAgIHhoci5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhcnJheUJ1ZmZlclZpZXcgPSBuZXcgVWludDhBcnJheSgodGhpcyBhcyBhbnkpLnJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlU3RyaW5nID0gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGFycmF5QnVmZmVyVmlldyk7XG4gICAgICBpZiAocmVzcG9uc2VTdHJpbmcuaW5jbHVkZXMoJ1NlcnZpY2VFeGNlcHRpb25SZXBvcnQnKSkge1xuICAgICAgICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAgICAgICAnaWdvLmdlby5kYXRhU291cmNlLm9wdGlvbnNBcGlVbmF2YWlsYWJsZScsXG4gICAgICAgICAgJ2lnby5nZW8uZGF0YVNvdXJjZS51bmF2YWlsYWJsZVRpdGxlJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFthcnJheUJ1ZmZlclZpZXddLCB7IHR5cGU6ICdpbWFnZS9wbmcnIH0pO1xuICAgICAgY29uc3QgdXJsQ3JlYXRvciA9IHdpbmRvdy5VUkw7XG4gICAgICBjb25zdCBpbWFnZVVybCA9IHVybENyZWF0b3IuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xuICAgICAgdGlsZS5nZXRJbWFnZSgpLnNyYyA9IGltYWdlVXJsO1xuICAgIH07XG4gICAgeGhyLnNlbmQoKTtcbiAgfVxufVxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UtbGF5ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9nZW8vc3JjL2xpYi9sYXllci9zaGFyZWQvbGF5ZXJzL2ltYWdlLWxheWVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sWUFBWSxNQUFNLGdCQUFnQixDQUFDO0FBTTFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBRWhDLE1BQU0sT0FBTyxVQUFXLFNBQVEsS0FBSztJQVMxQjtJQUNBO0lBTEQsT0FBTyxDQUFlO0lBRTlCLFlBQ0UsT0FBMEIsRUFDbkIsY0FBOEIsRUFDOUIsZUFBaUM7UUFFeEMsS0FBSyxDQUFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFIekMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLG9CQUFlLEdBQWYsZUFBZSxDQUFrQjtRQUd4QyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDM0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO1lBQ25DLElBQUksU0FBUyxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUNwQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO1lBQy9CLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxhQUFhO1FBQ3JCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEQsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQW1CO1NBQ2hELENBQUMsQ0FBQztRQUVILE1BQU0sS0FBSyxHQUFHLElBQUksWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQzFDLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3hCLEtBQUssQ0FBQyxTQUFTLEVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsRUFBRTtnQkFDNUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzFFLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUF1QjtRQUNuQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzdCLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUN2QyxDQUFDO1FBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNwQixDQUFDO0lBRU8sWUFBWSxDQUNsQixJQUFJLEVBQ0osR0FBVyxFQUNYLFdBQTRCLEVBQzVCLGNBQThCO1FBRTlCLE1BQU0sR0FBRyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFFakMsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkUsSUFBSSxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2QsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1lBQzFCLEdBQUcsR0FBRyxxQkFBcUIsQ0FBQztRQUM5QixDQUFDO1FBQ0QsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDckIsTUFBTSxXQUFXLEdBQUcsV0FBVyxDQUFDLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ2pCLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNaLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1lBQzFCLE9BQU87UUFDVCxDQUFDO1FBRUQsR0FBRyxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUM7UUFFakMsR0FBRyxDQUFDLE1BQU0sR0FBRztZQUNYLE1BQU0sZUFBZSxHQUFHLElBQUksVUFBVSxDQUFFLElBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUMvRCxNQUFNLGNBQWMsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUNqRSxJQUFJLGNBQWMsQ0FBQyxRQUFRLENBQUMsd0JBQXdCLENBQUMsRUFBRSxDQUFDO2dCQUN0RCxjQUFjLENBQUMsS0FBSyxDQUNsQiwwQ0FBMEMsRUFDMUMscUNBQXFDLENBQ3RDLENBQUM7WUFDSixDQUFDO1lBQ0QsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7WUFDOUIsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQztRQUNqQyxDQUFDLENBQUM7UUFDRixHQUFHLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDYixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdXRoSW50ZXJjZXB0b3IgfSBmcm9tICdAaWdvMi9hdXRoJztcbmltcG9ydCB7IE1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnQGlnbzIvY29yZS9tZXNzYWdlJztcblxuaW1wb3J0IG9sTGF5ZXJJbWFnZSBmcm9tICdvbC9sYXllci9JbWFnZSc7XG5pbXBvcnQgb2xTb3VyY2VJbWFnZSBmcm9tICdvbC9zb3VyY2UvSW1hZ2UnO1xuXG5pbXBvcnQgeyBJbWFnZUFyY0dJU1Jlc3REYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvaW1hZ2VhcmNnaXNyZXN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgV01TRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3dtcy1kYXRhc291cmNlJztcbmltcG9ydCB0eXBlIHsgSWdvTWFwIH0gZnJvbSAnLi4vLi4vLi4vbWFwL3NoYXJlZC9tYXAnO1xuaW1wb3J0IHsgSW1hZ2VXYXRjaGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvaW1hZ2Utd2F0Y2hlcic7XG5pbXBvcnQgeyBJbWFnZUxheWVyT3B0aW9ucyB9IGZyb20gJy4vaW1hZ2UtbGF5ZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi9sYXllcic7XG5cbmV4cG9ydCBjbGFzcyBJbWFnZUxheWVyIGV4dGVuZHMgTGF5ZXIge1xuICBkZWNsYXJlIHB1YmxpYyBkYXRhU291cmNlOiBXTVNEYXRhU291cmNlIHwgSW1hZ2VBcmNHSVNSZXN0RGF0YVNvdXJjZTtcbiAgZGVjbGFyZSBwdWJsaWMgb3B0aW9uczogSW1hZ2VMYXllck9wdGlvbnM7XG4gIGRlY2xhcmUgcHVibGljIG9sOiBvbExheWVySW1hZ2U8b2xTb3VyY2VJbWFnZT47XG5cbiAgcHJpdmF0ZSB3YXRjaGVyOiBJbWFnZVdhdGNoZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgb3B0aW9uczogSW1hZ2VMYXllck9wdGlvbnMsXG4gICAgcHVibGljIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZSxcbiAgICBwdWJsaWMgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge1xuICAgIHN1cGVyKG9wdGlvbnMsIG1lc3NhZ2VTZXJ2aWNlLCBhdXRoSW50ZXJjZXB0b3IpO1xuICAgIHRoaXMud2F0Y2hlciA9IG5ldyBJbWFnZVdhdGNoZXIodGhpcywgdGhpcy5tZXNzYWdlU2VydmljZSk7XG4gICAgdGhpcy5zdGF0dXMkID0gdGhpcy53YXRjaGVyLnN0YXR1cyQ7XG4gICAgdGhpcy5zdGF0dXMkLnN1YnNjcmliZSgodmFsU3RhdHVzKSA9PiB7XG4gICAgICBpZiAodmFsU3RhdHVzID09PSAwKSB7XG4gICAgICAgIHRoaXMub2xMb2FkaW5nUHJvYmxlbSA9IHRydWU7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlT2xMYXllcigpOiBvbExheWVySW1hZ2U8b2xTb3VyY2VJbWFnZT4ge1xuICAgIGNvbnN0IG9sT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMub3B0aW9ucywge1xuICAgICAgc291cmNlOiB0aGlzLm9wdGlvbnMuc291cmNlLm9sIGFzIG9sU291cmNlSW1hZ2VcbiAgICB9KTtcblxuICAgIGNvbnN0IGltYWdlID0gbmV3IG9sTGF5ZXJJbWFnZShvbE9wdGlvbnMpO1xuICAgIGlmICh0aGlzLmF1dGhJbnRlcmNlcHRvcikge1xuICAgICAgKGltYWdlLmdldFNvdXJjZSgpIGFzIGFueSkuc2V0SW1hZ2VMb2FkRnVuY3Rpb24oKHRpbGUsIHNyYykgPT4ge1xuICAgICAgICB0aGlzLmN1c3RvbUxvYWRlcih0aWxlLCBzcmMsIHRoaXMuYXV0aEludGVyY2VwdG9yLCB0aGlzLm1lc3NhZ2VTZXJ2aWNlKTtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiBpbWFnZTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRNYXAobWFwOiBJZ29NYXAgfCB1bmRlZmluZWQpIHtcbiAgICBpZiAobWFwID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMud2F0Y2hlci51bnN1YnNjcmliZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLndhdGNoZXIuc3Vic2NyaWJlKCgpID0+IHZvaWQgMSk7XG4gICAgfVxuICAgIHN1cGVyLnNldE1hcChtYXApO1xuICB9XG5cbiAgcHJpdmF0ZSBjdXN0b21Mb2FkZXIoXG4gICAgdGlsZSxcbiAgICBzcmM6IHN0cmluZyxcbiAgICBpbnRlcmNlcHRvcjogQXV0aEludGVyY2VwdG9yLFxuICAgIG1lc3NhZ2VTZXJ2aWNlOiBNZXNzYWdlU2VydmljZVxuICApIHtcbiAgICBjb25zdCB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTtcblxuICAgIGNvbnN0IGFsdGVyZWRVcmxXaXRoS2V5QXV0aCA9IGludGVyY2VwdG9yLmFsdGVyVXJsV2l0aEtleUF1dGgoc3JjKTtcbiAgICBsZXQgdXJsID0gc3JjO1xuICAgIGlmIChhbHRlcmVkVXJsV2l0aEtleUF1dGgpIHtcbiAgICAgIHVybCA9IGFsdGVyZWRVcmxXaXRoS2V5QXV0aDtcbiAgICB9XG4gICAgeGhyLm9wZW4oJ0dFVCcsIHVybCk7XG4gICAgY29uc3QgaW50ZXJjZXB0ZWQgPSBpbnRlcmNlcHRvci5pbnRlcmNlcHRYaHIoeGhyLCB1cmwpO1xuICAgIGlmICghaW50ZXJjZXB0ZWQpIHtcbiAgICAgIHhoci5hYm9ydCgpO1xuICAgICAgdGlsZS5nZXRJbWFnZSgpLnNyYyA9IHVybDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB4aHIucmVzcG9uc2VUeXBlID0gJ2FycmF5YnVmZmVyJztcblxuICAgIHhoci5vbmxvYWQgPSBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBhcnJheUJ1ZmZlclZpZXcgPSBuZXcgVWludDhBcnJheSgodGhpcyBhcyBhbnkpLnJlc3BvbnNlKTtcbiAgICAgIGNvbnN0IHJlc3BvbnNlU3RyaW5nID0gbmV3IFRleHREZWNvZGVyKCkuZGVjb2RlKGFycmF5QnVmZmVyVmlldyk7XG4gICAgICBpZiAocmVzcG9uc2VTdHJpbmcuaW5jbHVkZXMoJ1NlcnZpY2VFeGNlcHRpb25SZXBvcnQnKSkge1xuICAgICAgICBtZXNzYWdlU2VydmljZS5lcnJvcihcbiAgICAgICAgICAnaWdvLmdlby5kYXRhU291cmNlLm9wdGlvbnNBcGlVbmF2YWlsYWJsZScsXG4gICAgICAgICAgJ2lnby5nZW8uZGF0YVNvdXJjZS51bmF2YWlsYWJsZVRpdGxlJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFthcnJheUJ1ZmZlclZpZXddLCB7IHR5cGU6ICdpbWFnZS9wbmcnIH0pO1xuICAgICAgY29uc3QgdXJsQ3JlYXRvciA9IHdpbmRvdy5VUkw7XG4gICAgICBjb25zdCBpbWFnZVVybCA9IHVybENyZWF0b3IuY3JlYXRlT2JqZWN0VVJMKGJsb2IpO1xuICAgICAgdGlsZS5nZXRJbWFnZSgpLnNyYyA9IGltYWdlVXJsO1xuICAgIH07XG4gICAgeGhyLnNlbmQoKTtcbiAgfVxufVxuIl19
@@ -47,4 +47,4 @@ export class TileLayer extends Layer {
47
47
  super.setMap(map);
48
48
  }
49
49
  }
50
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1sYXllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllcnMvdGlsZS1sYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLFdBQVcsTUFBTSxlQUFlLENBQUM7QUFVeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHaEMsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBZXpCO0lBQ0E7SUFMRCxPQUFPLENBQWM7SUFFN0IsWUFDRSxPQUF5QixFQUNsQixjQUErQixFQUMvQixlQUFpQztRQUV4QyxLQUFLLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBSHhCLG1CQUFjLEdBQWQsY0FBYyxDQUFpQjtRQUMvQixvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFJeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO0lBQ3RDLENBQUM7SUFFUyxhQUFhO1FBQ3JCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEQsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7U0FDL0IsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxTQUFTLEdBQUcsSUFBSSxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3pDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQVUsRUFBRSxHQUFXLEVBQUUsRUFBRTtZQUN6RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsWUFBWSxDQUFDLElBQUksRUFBRSxHQUFXLEVBQUUsV0FBNEI7UUFDMUQsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkUsSUFBSSxXQUFXLEdBQUcsR0FBRyxDQUFDO1FBQ3RCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztZQUMxQixXQUFXLEdBQUcscUJBQXFCLENBQUM7UUFDdEMsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEdBQUcsV0FBVyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBdUI7UUFDbkMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aEludGVyY2VwdG9yIH0gZnJvbSAnQGlnbzIvYXV0aCc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVzc2FnZSc7XG5cbmltcG9ydCBUaWxlIGZyb20gJ29sL1RpbGUnO1xuaW1wb3J0IG9sTGF5ZXJUaWxlIGZyb20gJ29sL2xheWVyL1RpbGUnO1xuaW1wb3J0IG9sU291cmNlVGlsZSBmcm9tICdvbC9zb3VyY2UvVGlsZSc7XG5cbmltcG9ydCB7IENhcnRvRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2NhcnRvLWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgT1NNRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL29zbS1kYXRhc291cmNlJztcbmltcG9ydCB7IFRpbGVBcmNHSVNSZXN0RGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3RpbGVhcmNnaXNyZXN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgVGlsZURlYnVnRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3RpbGVkZWJ1Zy1kYXRhc291cmNlJztcbmltcG9ydCB7IFdNVFNEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvd210cy1kYXRhc291cmNlJztcbmltcG9ydCB7IFhZWkRhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy94eXotZGF0YXNvdXJjZSc7XG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJy4uLy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7IFRpbGVXYXRjaGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvdGlsZS13YXRjaGVyJztcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi9sYXllcic7XG5pbXBvcnQgeyBUaWxlTGF5ZXJPcHRpb25zIH0gZnJvbSAnLi90aWxlLWxheWVyLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBUaWxlTGF5ZXIgZXh0ZW5kcyBMYXllciB7XG4gIHB1YmxpYyBkZWNsYXJlIGRhdGFTb3VyY2U6XG4gICAgfCBPU01EYXRhU291cmNlXG4gICAgfCBXTVRTRGF0YVNvdXJjZVxuICAgIHwgWFlaRGF0YVNvdXJjZVxuICAgIHwgVGlsZURlYnVnRGF0YVNvdXJjZVxuICAgIHwgQ2FydG9EYXRhU291cmNlXG4gICAgfCBUaWxlQXJjR0lTUmVzdERhdGFTb3VyY2U7XG4gIHB1YmxpYyBkZWNsYXJlIG9wdGlvbnM6IFRpbGVMYXllck9wdGlvbnM7XG4gIHB1YmxpYyBkZWNsYXJlIG9sOiBvbExheWVyVGlsZTxvbFNvdXJjZVRpbGU+O1xuXG4gIHByaXZhdGUgd2F0Y2hlcjogVGlsZVdhdGNoZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgb3B0aW9uczogVGlsZUxheWVyT3B0aW9ucyxcbiAgICBwdWJsaWMgbWVzc2FnZVNlcnZpY2U/OiBNZXNzYWdlU2VydmljZSxcbiAgICBwdWJsaWMgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge1xuICAgIHN1cGVyKG9wdGlvbnMsIG1lc3NhZ2VTZXJ2aWNlKTtcblxuICAgIHRoaXMud2F0Y2hlciA9IG5ldyBUaWxlV2F0Y2hlcih0aGlzKTtcbiAgICB0aGlzLnN0YXR1cyQgPSB0aGlzLndhdGNoZXIuc3RhdHVzJDtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVPbExheWVyKCk6IG9sTGF5ZXJUaWxlPG9sU291cmNlVGlsZT4ge1xuICAgIGNvbnN0IG9sT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMub3B0aW9ucywge1xuICAgICAgc291cmNlOiB0aGlzLm9wdGlvbnMuc291cmNlLm9sXG4gICAgfSk7XG4gICAgY29uc3QgdGlsZUxheWVyID0gbmV3IG9sTGF5ZXJUaWxlKG9sT3B0aW9ucyk7XG4gICAgY29uc3QgdGlsZVNvdXJjZSA9IHRpbGVMYXllci5nZXRTb3VyY2UoKTtcbiAgICB0aWxlU291cmNlLnNldFRpbGVMb2FkRnVuY3Rpb24oKHRpbGU6IFRpbGUsIHVybDogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLmN1c3RvbUxvYWRlcih0aWxlLCB1cmwsIHRoaXMuYXV0aEludGVyY2VwdG9yKTtcbiAgICB9KTtcblxuICAgIHJldHVybiB0aWxlTGF5ZXI7XG4gIH1cblxuICAvKipcbiAgICogQ3VzdG9tIGxvYWRlciBmb3IgdGlsZSBsYXllci5cbiAgICogQGludGVybmFsXG4gICAqIEBwYXJhbSB0aWxlIHRoZSBjdXJyZW50IHRpbGVcbiAgICogQHBhcmFtIHVybCB0aGUgdXJsIHN0cmluZyBvciBmdW5jdGlvbiB0byByZXRyaWV2ZSB0aGUgZGF0YVxuICAgKi9cbiAgY3VzdG9tTG9hZGVyKHRpbGUsIHVybDogc3RyaW5nLCBpbnRlcmNlcHRvcjogQXV0aEludGVyY2VwdG9yKSB7XG4gICAgY29uc3QgYWx0ZXJlZFVybFdpdGhLZXlBdXRoID0gaW50ZXJjZXB0b3IuYWx0ZXJVcmxXaXRoS2V5QXV0aCh1cmwpO1xuICAgIGxldCBtb2RpZmllZFVybCA9IHVybDtcbiAgICBpZiAoYWx0ZXJlZFVybFdpdGhLZXlBdXRoKSB7XG4gICAgICBtb2RpZmllZFVybCA9IGFsdGVyZWRVcmxXaXRoS2V5QXV0aDtcbiAgICB9XG4gICAgdGlsZS5nZXRJbWFnZSgpLnNyYyA9IG1vZGlmaWVkVXJsO1xuICB9XG5cbiAgcHVibGljIHNldE1hcChtYXA6IElnb01hcCB8IHVuZGVmaW5lZCkge1xuICAgIGlmIChtYXAgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy53YXRjaGVyLnVuc3Vic2NyaWJlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud2F0Y2hlci5zdWJzY3JpYmUoKCkgPT4gdm9pZCAxKTtcbiAgICB9XG4gICAgc3VwZXIuc2V0TWFwKG1hcCk7XG4gIH1cbn1cbiJdfQ==
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGlsZS1sYXllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2dlby9zcmMvbGliL2xheWVyL3NoYXJlZC9sYXllcnMvdGlsZS1sYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLFdBQVcsTUFBTSxlQUFlLENBQUM7QUFVeEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFHaEMsTUFBTSxPQUFPLFNBQVUsU0FBUSxLQUFLO0lBZXpCO0lBQ0E7SUFMRCxPQUFPLENBQWM7SUFFN0IsWUFDRSxPQUF5QixFQUNsQixjQUErQixFQUMvQixlQUFpQztRQUV4QyxLQUFLLENBQUMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBSHhCLG1CQUFjLEdBQWQsY0FBYyxDQUFpQjtRQUMvQixvQkFBZSxHQUFmLGVBQWUsQ0FBa0I7UUFJeEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO0lBQ3RDLENBQUM7SUFFUyxhQUFhO1FBQ3JCLE1BQU0sU0FBUyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDaEQsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7U0FDL0IsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxTQUFTLEdBQUcsSUFBSSxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0MsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1FBQ3pDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLElBQVUsRUFBRSxHQUFXLEVBQUUsRUFBRTtZQUN6RCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO1FBRUgsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsWUFBWSxDQUFDLElBQUksRUFBRSxHQUFXLEVBQUUsV0FBNEI7UUFDMUQsTUFBTSxxQkFBcUIsR0FBRyxXQUFXLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbkUsSUFBSSxXQUFXLEdBQUcsR0FBRyxDQUFDO1FBQ3RCLElBQUkscUJBQXFCLEVBQUUsQ0FBQztZQUMxQixXQUFXLEdBQUcscUJBQXFCLENBQUM7UUFDdEMsQ0FBQztRQUNELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEdBQUcsV0FBVyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBdUI7UUFDbkMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFLENBQUM7WUFDdEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUM3QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDdkMsQ0FBQztRQUNELEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXV0aEludGVyY2VwdG9yIH0gZnJvbSAnQGlnbzIvYXV0aCc7XG5pbXBvcnQgeyBNZXNzYWdlU2VydmljZSB9IGZyb20gJ0BpZ28yL2NvcmUvbWVzc2FnZSc7XG5cbmltcG9ydCBUaWxlIGZyb20gJ29sL1RpbGUnO1xuaW1wb3J0IG9sTGF5ZXJUaWxlIGZyb20gJ29sL2xheWVyL1RpbGUnO1xuaW1wb3J0IG9sU291cmNlVGlsZSBmcm9tICdvbC9zb3VyY2UvVGlsZSc7XG5cbmltcG9ydCB7IENhcnRvRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL2NhcnRvLWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgT1NNRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL29zbS1kYXRhc291cmNlJztcbmltcG9ydCB7IFRpbGVBcmNHSVNSZXN0RGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3RpbGVhcmNnaXNyZXN0LWRhdGFzb3VyY2UnO1xuaW1wb3J0IHsgVGlsZURlYnVnRGF0YVNvdXJjZSB9IGZyb20gJy4uLy4uLy4uL2RhdGFzb3VyY2Uvc2hhcmVkL2RhdGFzb3VyY2VzL3RpbGVkZWJ1Zy1kYXRhc291cmNlJztcbmltcG9ydCB7IFdNVFNEYXRhU291cmNlIH0gZnJvbSAnLi4vLi4vLi4vZGF0YXNvdXJjZS9zaGFyZWQvZGF0YXNvdXJjZXMvd210cy1kYXRhc291cmNlJztcbmltcG9ydCB7IFhZWkRhdGFTb3VyY2UgfSBmcm9tICcuLi8uLi8uLi9kYXRhc291cmNlL3NoYXJlZC9kYXRhc291cmNlcy94eXotZGF0YXNvdXJjZSc7XG5pbXBvcnQgdHlwZSB7IElnb01hcCB9IGZyb20gJy4uLy4uLy4uL21hcC9zaGFyZWQvbWFwJztcbmltcG9ydCB7IFRpbGVXYXRjaGVyIH0gZnJvbSAnLi4vLi4vdXRpbHMvdGlsZS13YXRjaGVyJztcbmltcG9ydCB7IExheWVyIH0gZnJvbSAnLi9sYXllcic7XG5pbXBvcnQgeyBUaWxlTGF5ZXJPcHRpb25zIH0gZnJvbSAnLi90aWxlLWxheWVyLmludGVyZmFjZSc7XG5cbmV4cG9ydCBjbGFzcyBUaWxlTGF5ZXIgZXh0ZW5kcyBMYXllciB7XG4gIGRlY2xhcmUgcHVibGljIGRhdGFTb3VyY2U6XG4gICAgfCBPU01EYXRhU291cmNlXG4gICAgfCBXTVRTRGF0YVNvdXJjZVxuICAgIHwgWFlaRGF0YVNvdXJjZVxuICAgIHwgVGlsZURlYnVnRGF0YVNvdXJjZVxuICAgIHwgQ2FydG9EYXRhU291cmNlXG4gICAgfCBUaWxlQXJjR0lTUmVzdERhdGFTb3VyY2U7XG4gIGRlY2xhcmUgcHVibGljIG9wdGlvbnM6IFRpbGVMYXllck9wdGlvbnM7XG4gIGRlY2xhcmUgcHVibGljIG9sOiBvbExheWVyVGlsZTxvbFNvdXJjZVRpbGU+O1xuXG4gIHByaXZhdGUgd2F0Y2hlcjogVGlsZVdhdGNoZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgb3B0aW9uczogVGlsZUxheWVyT3B0aW9ucyxcbiAgICBwdWJsaWMgbWVzc2FnZVNlcnZpY2U/OiBNZXNzYWdlU2VydmljZSxcbiAgICBwdWJsaWMgYXV0aEludGVyY2VwdG9yPzogQXV0aEludGVyY2VwdG9yXG4gICkge1xuICAgIHN1cGVyKG9wdGlvbnMsIG1lc3NhZ2VTZXJ2aWNlKTtcblxuICAgIHRoaXMud2F0Y2hlciA9IG5ldyBUaWxlV2F0Y2hlcih0aGlzKTtcbiAgICB0aGlzLnN0YXR1cyQgPSB0aGlzLndhdGNoZXIuc3RhdHVzJDtcbiAgfVxuXG4gIHByb3RlY3RlZCBjcmVhdGVPbExheWVyKCk6IG9sTGF5ZXJUaWxlPG9sU291cmNlVGlsZT4ge1xuICAgIGNvbnN0IG9sT3B0aW9ucyA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMub3B0aW9ucywge1xuICAgICAgc291cmNlOiB0aGlzLm9wdGlvbnMuc291cmNlLm9sXG4gICAgfSk7XG4gICAgY29uc3QgdGlsZUxheWVyID0gbmV3IG9sTGF5ZXJUaWxlKG9sT3B0aW9ucyk7XG4gICAgY29uc3QgdGlsZVNvdXJjZSA9IHRpbGVMYXllci5nZXRTb3VyY2UoKTtcbiAgICB0aWxlU291cmNlLnNldFRpbGVMb2FkRnVuY3Rpb24oKHRpbGU6IFRpbGUsIHVybDogc3RyaW5nKSA9PiB7XG4gICAgICB0aGlzLmN1c3RvbUxvYWRlcih0aWxlLCB1cmwsIHRoaXMuYXV0aEludGVyY2VwdG9yKTtcbiAgICB9KTtcblxuICAgIHJldHVybiB0aWxlTGF5ZXI7XG4gIH1cblxuICAvKipcbiAgICogQ3VzdG9tIGxvYWRlciBmb3IgdGlsZSBsYXllci5cbiAgICogQGludGVybmFsXG4gICAqIEBwYXJhbSB0aWxlIHRoZSBjdXJyZW50IHRpbGVcbiAgICogQHBhcmFtIHVybCB0aGUgdXJsIHN0cmluZyBvciBmdW5jdGlvbiB0byByZXRyaWV2ZSB0aGUgZGF0YVxuICAgKi9cbiAgY3VzdG9tTG9hZGVyKHRpbGUsIHVybDogc3RyaW5nLCBpbnRlcmNlcHRvcjogQXV0aEludGVyY2VwdG9yKSB7XG4gICAgY29uc3QgYWx0ZXJlZFVybFdpdGhLZXlBdXRoID0gaW50ZXJjZXB0b3IuYWx0ZXJVcmxXaXRoS2V5QXV0aCh1cmwpO1xuICAgIGxldCBtb2RpZmllZFVybCA9IHVybDtcbiAgICBpZiAoYWx0ZXJlZFVybFdpdGhLZXlBdXRoKSB7XG4gICAgICBtb2RpZmllZFVybCA9IGFsdGVyZWRVcmxXaXRoS2V5QXV0aDtcbiAgICB9XG4gICAgdGlsZS5nZXRJbWFnZSgpLnNyYyA9IG1vZGlmaWVkVXJsO1xuICB9XG5cbiAgcHVibGljIHNldE1hcChtYXA6IElnb01hcCB8IHVuZGVmaW5lZCkge1xuICAgIGlmIChtYXAgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy53YXRjaGVyLnVuc3Vic2NyaWJlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMud2F0Y2hlci5zdWJzY3JpYmUoKCkgPT4gdm9pZCAxKTtcbiAgICB9XG4gICAgc3VwZXIuc2V0TWFwKG1hcCk7XG4gIH1cbn1cbiJdfQ==