@dbx-tools/search 0.6.89 → 0.6.91
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.ts +1 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +2 -1
- package/lib/src/config.js +1 -1
- package/package.json +7 -7
- package/src/config.ts +3 -14
package/index.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Regenerated from the exporting modules in ./src.
|
|
3
3
|
// Hand edits are overwritten on the next watch; this file is read-only.
|
|
4
4
|
|
|
5
|
+
export const PACKAGE_IDENTIFIER = "@dbx-tools/search";
|
|
5
6
|
export * as client from "./src/client.ts";
|
|
6
7
|
export * as config from "./src/config.ts";
|
|
7
8
|
export * as indexTools from "./src/index-tools.ts";
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// GENERATED by projen watch - DO NOT EDIT.
|
|
2
2
|
// Regenerated from the exporting modules in ./src.
|
|
3
3
|
// Hand edits are overwritten on the next watch; this file is read-only.
|
|
4
|
+
export const PACKAGE_IDENTIFIER = "@dbx-tools/search";
|
|
4
5
|
export * as client from "./src/client.js";
|
|
5
6
|
export * as config from "./src/config.js";
|
|
6
7
|
export * as indexTools from "./src/index-tools.js";
|
|
@@ -15,4 +16,4 @@ export { INDEX_ENV, DATABRICKS_INDEX_ENV, ENDPOINT_ENV, DEFAULT_MODE, DEFAULT_PA
|
|
|
15
16
|
export { LakebaseSearchBackend } from "./src/lakebase.js";
|
|
16
17
|
export { SearchPlugin, search } from "./src/plugin.js";
|
|
17
18
|
export { SEARCH_TOOL_DESCRIPTION, UNIVERSAL_SEARCH_TOOL_DESCRIPTION, ADD_DOCUMENTS_TOOL_DESCRIPTION, CREATE_INDEX_TOOL_DESCRIPTION, SYNC_INDEX_TOOL_DESCRIPTION, searchToolSchema, universalSearchToolSchema, searchResultSchema, createIndexToolSchema, indexInfoSchema, syncIndexToolSchema } from "./src/schema.js";
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsbURBQW1EO0FBQ25ELHdFQUF3RTtBQUV4RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxtQkFBbUIsQ0FBQztBQUN0RCxPQUFPLEtBQUssTUFBTSxNQUFNLGlCQUFpQixDQUFDO0FBQzFDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLFVBQVUsTUFBTSxzQkFBc0IsQ0FBQztBQUNuRCxPQUFPLEtBQUssUUFBUSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLEtBQUssTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QyxPQUFPLEtBQUssT0FBTyxNQUFNLGtCQUFrQixDQUFDO0FBQzVDLE9BQU8sS0FBSyxNQUFNLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxLQUFLLElBQUksTUFBTSxlQUFlLENBQUM7QUFDdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsaUJBQWlCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU5SyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUUxRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBR3ZELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxpQ0FBaUMsRUFBRSw4QkFBOEIsRUFBRSw2QkFBNkIsRUFBRSwyQkFBMkIsRUFBRSxnQkFBZ0IsRUFBRSx5QkFBeUIsRUFBRSxrQkFBa0IsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdFTkVSQVRFRCBieSBwcm9qZW4gd2F0Y2ggLSBETyBOT1QgRURJVC5cbi8vIFJlZ2VuZXJhdGVkIGZyb20gdGhlIGV4cG9ydGluZyBtb2R1bGVzIGluIC4vc3JjLlxuLy8gSGFuZCBlZGl0cyBhcmUgb3ZlcndyaXR0ZW4gb24gdGhlIG5leHQgd2F0Y2g7IHRoaXMgZmlsZSBpcyByZWFkLW9ubHkuXG5cbmV4cG9ydCBjb25zdCBQQUNLQUdFX0lERU5USUZJRVIgPSBcIkBkYngtdG9vbHMvc2VhcmNoXCI7XG5leHBvcnQgKiBhcyBjbGllbnQgZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0ICogYXMgY29uZmlnIGZyb20gXCIuL3NyYy9jb25maWcudHNcIjtcbmV4cG9ydCAqIGFzIGluZGV4VG9vbHMgZnJvbSBcIi4vc3JjL2luZGV4LXRvb2xzLnRzXCI7XG5leHBvcnQgKiBhcyBsYWtlYmFzZSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UudHNcIjtcbmV4cG9ydCAqIGFzIHBsdWdpbiBmcm9tIFwiLi9zcmMvcGx1Z2luLnRzXCI7XG5leHBvcnQgKiBhcyBxdWVyeSBmcm9tIFwiLi9zcmMvcXVlcnkudHNcIjtcbmV4cG9ydCAqIGFzIHJ1bnRpbWUgZnJvbSBcIi4vc3JjL3J1bnRpbWUudHNcIjtcbmV4cG9ydCAqIGFzIHNjaGVtYSBmcm9tIFwiLi9zcmMvc2NoZW1hLnRzXCI7XG5leHBvcnQgKiBhcyB0b29sIGZyb20gXCIuL3NyYy90b29sLnRzXCI7XG5leHBvcnQgeyBTZWFyY2hJbmRleCwgU2VhcmNoQ2xpZW50IH0gZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0IHR5cGUgeyBTZWFyY2hPcHRpb25zLCBVbml2ZXJzYWxTZWFyY2hPcHRpb25zLCBJbmRleEluZm8sIENyZWF0ZUluZGV4T3B0aW9ucywgRW5zdXJlRW5kcG9pbnRPcHRpb25zLCBQcm92aXNpb25PcHRpb25zIH0gZnJvbSBcIi4vc3JjL2NsaWVudC50c1wiO1xuZXhwb3J0IHsgSU5ERVhfRU5WLCBEQVRBQlJJQ0tTX0lOREVYX0VOViwgRU5EUE9JTlRfRU5WLCBERUZBVUxUX01PREUsIERFRkFVTFRfUEFHRV9TSVpFLCBERUZBVUxUX1RJTUVPVVRfTVMsIERFRkFVTFRfQkFTRV9QQVRILCBTRUFSQ0hfQ09ORklHX1NDSEVNQSB9IGZyb20gXCIuL3NyYy9jb25maWcudHNcIjtcbmV4cG9ydCB0eXBlIHsgU2VhcmNoSW5kZXhDb25maWcsIFNlYXJjaFBsdWdpbkNvbmZpZywgRW5zdXJlT25TZXR1cENvbmZpZywgUmVzb2x2ZWRJbmRleENvbmZpZywgUmVzb2x2ZWRTZWFyY2hDb25maWcgfSBmcm9tIFwiLi9zcmMvY29uZmlnLnRzXCI7XG5leHBvcnQgeyBMYWtlYmFzZVNlYXJjaEJhY2tlbmQgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UudHNcIjtcbmV4cG9ydCB0eXBlIHsgTGFrZWJhc2VTZWFyY2hPcHRpb25zLCBMYWtlYmFzZVByb3Zpc2lvbk9wdGlvbnMgfSBmcm9tIFwiLi9zcmMvbGFrZWJhc2UudHNcIjtcbmV4cG9ydCB7IFNlYXJjaFBsdWdpbiwgc2VhcmNoIH0gZnJvbSBcIi4vc3JjL3BsdWdpbi50c1wiO1xuZXhwb3J0IHR5cGUgeyBRdWVyeVJlc3BvbnNlTGlrZSB9IGZyb20gXCIuL3NyYy9xdWVyeS50c1wiO1xuZXhwb3J0IHR5cGUgeyBTZWFyY2hSdW50aW1lT3B0aW9ucywgU2VhcmNoUnVudGltZSB9IGZyb20gXCIuL3NyYy9ydW50aW1lLnRzXCI7XG5leHBvcnQgeyBTRUFSQ0hfVE9PTF9ERVNDUklQVElPTiwgVU5JVkVSU0FMX1NFQVJDSF9UT09MX0RFU0NSSVBUSU9OLCBBRERfRE9DVU1FTlRTX1RPT0xfREVTQ1JJUFRJT04sIENSRUFURV9JTkRFWF9UT09MX0RFU0NSSVBUSU9OLCBTWU5DX0lOREVYX1RPT0xfREVTQ1JJUFRJT04sIHNlYXJjaFRvb2xTY2hlbWEsIHVuaXZlcnNhbFNlYXJjaFRvb2xTY2hlbWEsIHNlYXJjaFJlc3VsdFNjaGVtYSwgY3JlYXRlSW5kZXhUb29sU2NoZW1hLCBpbmRleEluZm9TY2hlbWEsIHN5bmNJbmRleFRvb2xTY2hlbWEgfSBmcm9tIFwiLi9zcmMvc2NoZW1hLnRzXCI7XG5leHBvcnQgdHlwZSB7IFNlYXJjaFRvb2xPcHRpb25zIH0gZnJvbSBcIi4vc3JjL3Rvb2wudHNcIjtcbiJdfQ==
|
package/lib/src/config.js
CHANGED
|
@@ -199,4 +199,4 @@ export function resolveIndexName(config, reference) {
|
|
|
199
199
|
export function indexConfigFor(config, name) {
|
|
200
200
|
return config.indexes.find((i) => i.name === name || i.alias === name);
|
|
201
201
|
}
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxvQkFBb0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsTUFBTSxJQUFJLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJeEQsZ0ZBQWdGO0FBQ2hGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUM7QUFFeEMsNEVBQTRFO0FBQzVFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGdDQUFnQyxDQUFDO0FBRXJFLG9GQUFvRjtBQUNwRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsaUJBQWlCLENBQUM7QUFFOUMsMkZBQTJGO0FBQzNGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBZSxRQUFRLENBQUM7QUFFakQseUZBQXlGO0FBQ3pGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUVwQywrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDO0FBRXpDLHVFQUF1RTtBQUN2RSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxhQUFhLENBQUM7QUFxRy9DLGdGQUFnRjtBQUNoRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBZ0I7SUFDL0MsSUFBSSxFQUFFLFFBQVE7SUFDZCxvQkFBb0IsRUFBRSxJQUFJO0lBQzFCLFVBQVUsRUFBRTtRQUNWLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxRQUFRO1lBQ2QsV0FBVyxFQUFFLHVFQUF1RTtTQUNyRjtRQUNELE9BQU8sRUFBRTtZQUNQLElBQUksRUFBRSxPQUFPO1lBQ2IsV0FBVyxFQUFFLDRF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Q0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxPQUFPLEdBQUcsQ0FBQztJQUM1RCxPQUFPLE1BQU0sQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO0FBQ3JDLENBQUM7QUFFRCw2RUFBNkU7QUFDN0UsTUFBTSxVQUFVLGNBQWMsQ0FDNUIsTUFBNEIsRUFDNUIsSUFBWTtJQUVaLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUM7QUFDekUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29uZmlndXJhdGlvbiBmb3IgdGhlIEFJIFNlYXJjaCBwbHVnaW46IHRoZSB0eXBlZFxuICoge0BsaW5rIFNlYXJjaFBsdWdpbkNvbmZpZ30gKHRoZSBwbHVnaW4ncyBzbGljZSBvZiBBcHBLaXQgY29uZmlnKSwgdGhlIEpTT05cbiAqIFNjaGVtYSB0aGUgbWFuaWZlc3QgcHVibGlzaGVzIGZvciBpdCwgYW5kIHtAbGluayByZXNvbHZlU2VhcmNoQ29uZmlnfVxuICogd2hpY2ggbGF5ZXJzIHRoYXQgY29uZmlnIG92ZXIgZW52aXJvbm1lbnQgZGVmYXVsdHMgaW50byB0aGUgY29uY3JldGVcbiAqIHtAbGluayBSZXNvbHZlZFNlYXJjaENvbmZpZ30gdGhlIHJ1bnRpbWUsIGNsaWVudCwgdG9vbHMsIGFuZCByb3V0ZXMgcmVhZC5cbiAqXG4gKiBUaGUgZGVzaWduIGdvYWwgaXMgXCJvbmUgaW5kZXgsIHplcm8gY29uZmlnXCI6IG5hbWUgYSBkZWZhdWx0IGluZGV4IChvciBzZXRcbiAqIGBEQVRBQlJJQ0tTX1ZFQ1RPUl9TRUFSQ0hfSU5ERVhgKSBhbmQgZXZlcnl0aGluZyBlbHNlIC0gdGhlIGNvbHVtbnMgdG9cbiAqIHJldHVybiwgdGhlIHBhZ2Ugc2l6ZSwgdGhlIG1hdGNoIG1vZGUsIHRoZSBtb3VudGVkIHJvdXRlIHBhdGgsIHRoZSBlbWJlZGRpbmdcbiAqIG1vZGVsIHVzZWQgd2hlbiBjcmVhdGluZyBhbiBpbmRleCAtIGhhcyBhIHNlbnNpYmxlIGRlZmF1bHQgdGhhdCBjYW4gYmVcbiAqIG92ZXJyaWRkZW4gd2hlbiBhIGRlcGxveW1lbnQgbmVlZHMgdG8gZ28gZGVlcGVyLlxuICpcbiAqIFdoaWNoIGluZGV4IC8gZW5kcG9pbnQgaXMgdXNlZCBmb2xsb3dzIHRoZSBzdGFuZGFyZCBwcmVjZWRlbmNlOiBleHBsaWNpdFxuICogcGx1Z2luIGNvbmZpZywgdGhlbiBlbnZpcm9ubWVudCwgdGhlbiBhIGRlZmF1bHQuXG4gKlxuICogRW52IGZhbGxiYWNrczogYERBVEFCUklDS1NfVkVDVE9SX1NFQVJDSF9JTkRFWGAgKHRoZSBkZWZhdWx0IGluZGV4KSxcbiAqIGBTRUFSQ0hfSU5ERVhgLCBgU0VBUkNIX0VORFBPSU5UYCwgYFNFQVJDSF9DT0xVTU5TYCxcbiAqIGBTRUFSQ0hfUEFHRV9TSVpFYCwgYFNFQVJDSF9NT0RFYCwgYFNFQVJDSF9FTUJFRERJTkdfTU9ERUxgLFxuICogYFNFQVJDSF9USU1FT1VUX01TYCwgYFNFQVJDSF9XUklURWAuXG4gKlxuICogQG1vZHVsZVxuICovXG5cbmltcG9ydCB7IENvbmZpZ3VyYXRpb25FcnJvciwgdHlwZSBCYXNlUGx1Z2luQ29uZmlnIH0gZnJvbSBcIkBkYXRhYnJpY2tzL2FwcGtpdFwiO1xuaW1wb3J0IHsgY29uZmlnIGFzIGNvcmVDb25maWcgfSBmcm9tIFwiQGRieC10b29scy9jb3JlXCI7XG5pbXBvcnQgeyBvYmplY3QsIHN0cmluZyB9IGZyb20gXCJAZGJ4LXRvb2xzL3NoYXJlZC1jb3JlXCI7XG5pbXBvcnQgdHlwZSB7IFNlYXJjaERvY3VtZW50LCBTZWFyY2hNb2RlIH0gZnJvbSBcIkBkYngtdG9vbHMvc2hhcmVkLXNlYXJjaFwiO1xuaW1wb3J0IHR5cGUgeyBKU09OU2NoZW1hNyB9IGZyb20gXCJqc29uLXNjaGVtYVwiO1xuXG4vKiogVGhlIGRlZmF1bHQgaW5kZXgsIGhvbm9yaW5nIEFwcEtpdCdzIHN0YW5kYXJkIFZlY3RvciBTZWFyY2ggYmluZGluZyBuYW1lLiAqL1xuZXhwb3J0IGNvbnN0IElOREVYX0VOViA9IFwiU0VBUkNIX0lOREVYXCI7XG5cbi8qKiBBcHBLaXQncyBzdGFuZGFyZCBlbnZpcm9ubWVudCBuYW1lIGZvciBhIFZlY3RvciBTZWFyY2ggaW5kZXggYmluZGluZy4gKi9cbmV4cG9ydCBjb25zdCBEQVRBQlJJQ0tTX0lOREVYX0VOViA9IFwiREFUQUJSSUNLU19WRUNUT1JfU0VBUkNIX0lOREVYXCI7XG5cbi8qKiBEZWRpY2F0ZWQgb3ZlcnJpZGUgZm9yIHRoZSBWZWN0b3IgU2VhcmNoIHNlcnZpbmcgZW5kcG9pbnQgdGhhdCBob3N0cyBpbmRleGVzLiAqL1xuZXhwb3J0IGNvbnN0IEVORFBPSU5UX0VOViA9IFwiU0VBUkNIX0VORFBPSU5UXCI7XG5cbi8qKiBEZWZhdWx0IG1hdGNoIG1vZGUgd2hlbiBhIHJlcXVlc3QgZG9lcyBub3QgbmFtZSBvbmUuIEh5YnJpZCBzdWl0cyBtb3N0IHNlYXJjaCBib3hlcy4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX01PREU6IFNlYXJjaE1vZGUgPSBcImh5YnJpZFwiO1xuXG4vKiogRGVmYXVsdCBudW1iZXIgb2YgaGl0cyBhIHNlYXJjaCByZXR1cm5zIChhIGdvb2QgYXV0b2NvbXBsZXRlIC8gcmVzdWx0cy1saXN0IHNpemUpLiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUEFHRV9TSVpFID0gMTA7XG5cbi8qKiBEZWZhdWx0IHBlci1jYWxsIHRpbWVvdXQgZm9yIGEgc2VhcmNoIC8gaW5kZXggb3BlcmF0aW9uLiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfVElNRU9VVF9NUyA9IDMwXzAwMDtcblxuLyoqIEJhc2UgcGF0aCB0aGUgcGx1Z2luIG1vdW50cyBpdHMgcm91dGVzIHVuZGVyLCB1bmxlc3Mgb3ZlcnJpZGRlbi4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0JBU0VfUEFUSCA9IFwiL2FwaS9zZWFyY2hcIjtcblxuLyoqXG4gKiBBIGNvbmZpZ3VyZWQgaW5kZXggdGhlIHBsdWdpbiBrbm93cyBhYm91dCBhaGVhZCBvZiB0aW1lLiBPbmx5IGBuYW1lYCAob3JcbiAqIGBhbGlhc2ApIGlzIHJlcXVpcmVkOyB0aGUgcmVzdCBpcyByZXNvbHZlZCBmcm9tIHRoZSBsaXZlIGluZGV4IGRlZmluaXRpb25cbiAqIHdoZW4gb21pdHRlZCwgc28gYSBkZXBsb3ltZW50IGNhbiByZWdpc3RlciBgeyBuYW1lIH1gIGFuZCBsZXQgdGhlIHBsdWdpbiBmaWxsXG4gKiBpbiB0aGUgcHJpbWFyeSBrZXkgYW5kIGNvbHVtbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoSW5kZXhDb25maWcge1xuICAvKiogVW5pdHkgQ2F0YWxvZyBuYW1lIG9mIHRoZSBpbmRleCAoY2F0YWxvZy5zY2hlbWEuaW5kZXgpLiAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKiBTaG9ydCBhbGlhcyBhIGNhbGxlciBtYXkgdXNlIGluIHBsYWNlIG9mIGBuYW1lYCAoZGVmYXVsdHMgdG8gdGhlIGxhc3QgbmFtZSBzZWdtZW50KS4gKi9cbiAgYWxpYXM/OiBzdHJpbmc7XG4gIC8qKiBQcmltYXJ5LWtleSBjb2x1bW4uIFJlc29sdmVkIGZyb20gdGhlIGluZGV4IGRlZmluaXRpb24gd2hlbiBvbWl0dGVkLiAqL1xuICBwcmltYXJ5S2V5Pzogc3RyaW5nO1xuICAvKiogQ29sdW1ucyB0byByZXR1cm4gcGVyIGhpdCwgaW4gZGlzcGxheSBvcmRlci4gRGVmYXVsdHMgdG8gZXZlcnkgaW5kZXhlZCBjb2x1bW4uICovXG4gIGNvbHVtbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBUaGUgQUkgU2VhcmNoIHBsdWdpbidzIHNsaWNlIG9mIEFwcEtpdCBjb25maWcuIEV2ZXJ5IGZpZWxkIGlzIG9wdGlvbmFsIC0gdGhlXG4gKiBwbHVnaW4gd29ya3Mgd2l0aCBub3RoaW5nIGJ1dCBhbiBpbmRleCBuYW1lIGluIHRoZSBlbnZpcm9ubWVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hQbHVnaW5Db25maWcgZXh0ZW5kcyBCYXNlUGx1Z2luQ29uZmlnIHtcbiAgLyoqIFRoZSBkZWZhdWx0IGluZGV4IHNlYXJjaGVkIHdoZW4gYSByZXF1ZXN0IG9taXRzIG9uZSAobmFtZSBvciBhbGlhcykuICovXG4gIGluZGV4Pzogc3RyaW5nO1xuICAvKiogSW5kZXhlcyB0aGUgcGx1Z2luIHNob3VsZCBrbm93IGFib3V0IChmb3IgYWxpYXNlcywgdW5pdmVyc2FsIHNlYXJjaCwgYW5kIHRoZSBVSSBjYXRhbG9ndWUpLiAqL1xuICBpbmRleGVzPzogQXJyYXk8c3RyaW5nIHwgU2VhcmNoSW5kZXhDb25maWc+O1xuICAvKiogVGhlIFZlY3RvciBTZWFyY2ggc2VydmluZyBlbmRwb2ludCBpbmRleGVzIGxpdmUgb24gKG9ubHkgbmVlZGVkIHRvIGNyZWF0ZSBhbiBpbmRleCkuICovXG4gIGVuZHBvaW50Pzogc3RyaW5nO1xuICAvKiogRGVmYXVsdCBjb2x1bW5zIHRvIHJldHVybiBwZXIgaGl0LiBGYWxscyBiYWNrIHRvIGVhY2ggaW5kZXgncyBvd24gY29sdW1ucy4gKi9cbiAgY29sdW1ucz86IHN0cmluZ1tdO1xuICAvKiogRGVmYXVsdCBudW1iZXIgb2YgaGl0cyBhIHNlYXJjaCByZXR1cm5zLiAqL1xuICBwYWdlU2l6ZT86IG51bWJlcjtcbiAgLyoqIERlZmF1bHQgbWF0Y2ggbW9kZS4gKi9cbiAgbW9kZT86IFNlYXJjaE1vZGU7XG4gIC8qKiBFbWJlZGRpbmcgbW9kZWwgZW5kcG9pbnQgdXNlZCB3aGVuIHRoZSBwbHVnaW4gQ1JFQVRFUyBhIERlbHRhIFN5bmMgaW5kZXguIEZ1enp5LXJlc29sdmVkLiAqL1xuICBlbWJlZGRpbmdNb2RlbD86IHN0cmluZztcbiAgLyoqIFBlci1jYWxsIHRpbWVvdXQgaW4gbWlsbGlzZWNvbmRzLiAqL1xuICB0aW1lb3V0TXM/OiBudW1iZXI7XG4gIC8qKiBFbmFibGUgdGhlIHdyaXRlIHN1cmZhY2UgKGBhZGRfZG9jdW1lbnRzYCB0b29sICsgYFBPU1QgL2RvY3VtZW50c2ApLiBPZmYgYnkgZGVmYXVsdC4gKi9cbiAgYWxsb3dXcml0ZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQcm92aXNpb24gYSBSRUFMIGluZGV4IGF0IGJvb3Q6IGVuc3VyZSB0aGUgZW5kcG9pbnQgKyBpbmRleCBleGlzdCBhbmQgc2VlZFxuICAgKiBkb2N1bWVudHMgd2hlbiB0aGUgaW5kZXggaXMgZW1wdHkuIFJ1bnMgaW4gdGhlIGJhY2tncm91bmQgZHVyaW5nIGBzZXR1cCgpYFxuICAgKiAoYSBzbG93IGZpcnN0LXRpbWUgZW5kcG9pbnQvaW5kZXggYnVpbGQgbmV2ZXIgYmxvY2tzIHRoZSBzZXJ2ZXIpIHVzaW5nIHRoZVxuICAgKiBib290LXRpbWUgU0RLIGF1dGggKGVudiAvIGNvbmZpZyBwcm9maWxlKS4gSWRlbXBvdGVudCAtIHNhZmUgZXZlcnkgYm9vdC5cbiAgICpcbiAgICogVGhlIGRlZmF1bHQgaXMgYSBNQU5BR0VEIGRpcmVjdC1hY2Nlc3MgaW5kZXggKERhdGFicmlja3MgZW1iZWRzIHRoZSB0ZXh0XG4gICAqIGNvbHVtbiksIHNvIGBkb2N1bWVudHNgIGFyZSBwbGFpbiByb3dzIGFuZCBzZWFyY2gtYnktdGV4dCB3b3JrcyB3aXRoIG5vXG4gICAqIERlbHRhIHRhYmxlLCBubyB3YXJlaG91c2UsIGFuZCBubyB2ZWN0b3JzIHRvIGNvbXB1dGUuIFBvaW50IGl0IGF0IGFcbiAgICogYHNvdXJjZVRhYmxlYCB0byBwcm92aXNpb24gYSBEZWx0YSBTeW5jIGluZGV4IGluc3RlYWQuXG4gICAqL1xuICBlbnN1cmVPblNldHVwPzogRW5zdXJlT25TZXR1cENvbmZpZztcbn1cblxuLyoqIEJvb3QtdGltZSBwcm92aXNpb25pbmcgKyBzZWVkaW5nIGZvciBhIHNpbmdsZSBpbmRleCAoc2VlIGBlbnN1cmVPblNldHVwYCkuICovXG5leHBvcnQgaW50ZXJmYWNlIEVuc3VyZU9uU2V0dXBDb25maWcge1xuICAvKiogVUMgbmFtZSBvZiB0aGUgaW5kZXggdG8gZW5zdXJlIChjYXRhbG9nLnNjaGVtYS5pbmRleCkuIERlZmF1bHRzIHRvIHRoZSBwbHVnaW4ncyBgaW5kZXhgLiAqL1xuICBpbmRleD86IHN0cmluZztcbiAgLyoqIFZlY3RvciBTZWFyY2ggZW5kcG9pbnQgdG8gaG9zdCBpdCBvbi4gRGVmYXVsdHMgdG8gdGhlIHBsdWdpbidzIGBlbmRwb2ludGAuICovXG4gIGVuZHBvaW50Pzogc3RyaW5nO1xuICAvKiogUHJpbWFyeS1rZXkgY29sdW1uLiBEZWZhdWx0cyB0byBgaWRgLiAqL1xuICBwcmltYXJ5S2V5Pzogc3RyaW5nO1xuICAvKiogVGV4dCBjb2x1bW4gRGF0YWJyaWNrcyBlbWJlZHMgKG1hbmFnZWQgZGlyZWN0LWFjY2VzcykuIERlZmF1bHRzIHRvIGB0ZXh0YC4gKi9cbiAgdGV4dENvbHVtbj86IHN0cmluZztcbiAgLyoqIEVtYmVkZGluZyBtb2RlbCBlbmRwb2ludC4gRnV6enktbWF0Y2hlZDsgZGVmYXVsdHMgdG8gdGhlIGJlc3QgZW1iZWRkaW5nIGVuZHBvaW50LiAqL1xuICBlbWJlZGRpbmdNb2RlbD86IHN0cmluZztcbiAgLyoqIEZvciBhIERlbHRhIFN5bmMgaW5kZXggaW5zdGVhZCBvZiBtYW5hZ2VkIGRpcmVjdC1hY2Nlc3M6IHRoZSBzb3VyY2UgRGVsdGEgdGFibGUuICovXG4gIHNvdXJjZVRhYmxlPzogc3RyaW5nO1xuICAvKiogQ29sdW1uIC0+IHR5cGUgbWFwIGZvciB0aGUgbWFuYWdlZCBkaXJlY3QtYWNjZXNzIGBzY2hlbWFfanNvbmAuIEluZmVycmVkIGZyb20gYGRvY3VtZW50c2Agd2hlbiBvbWl0dGVkLiAqL1xuICBzY2hlbWE/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKiogRG9jdW1lbnRzIHRvIHNlZWQgd2hlbiB0aGUgaW5kZXggaXMgZW1wdHkuIFBsYWluIGB7IGlkLCB0ZXh0LCAuLi4gfWAgcm93cyBmb3IgYSBtYW5hZ2VkIGluZGV4LiAqL1xuICBkb2N1bWVudHM/OiBTZWFyY2hEb2N1bWVudFtdO1xuICAvKiogTWF4IHRpbWUgdG8gd2FpdCBmb3IgZW5kcG9pbnQgKyBpbmRleCByZWFkaW5lc3MuIERlZmF1bHRzIHRvIDIwIG1pbnV0ZXMuICovXG4gIHRpbWVvdXRNcz86IG51bWJlcjtcbn1cblxuLyoqIEEgZnVsbHkgcmVzb2x2ZWQgaW5kZXggZW50cnkgKHRoZSBwbHVnaW4ta25vd24gZm9ybSkuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlc29sdmVkSW5kZXhDb25maWcge1xuICBuYW1lOiBzdHJpbmc7XG4gIGFsaWFzOiBzdHJpbmc7XG4gIHByaW1hcnlLZXk/OiBzdHJpbmc7XG4gIGNvbHVtbnM/OiBzdHJpbmdbXTtcbn1cblxuLyoqIFRoZSBjb25jcmV0ZSBjb25maWcgdGhlIHJ1bnRpbWUsIGNsaWVudCwgdG9vbHMsIGFuZCByb3V0ZXMgcmVhZC4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb2x2ZWRTZWFyY2hDb25maWcge1xuICBkZWZhdWx0SW5kZXg/OiBzdHJpbmc7XG4gIGluZGV4ZXM6IFJlc29sdmVkSW5kZXhDb25maWdbXTtcbiAgZW5kcG9pbnQ/OiBzdHJpbmc7XG4gIGNvbHVtbnM/OiBzdHJpbmdbXTtcbiAgcGFnZVNpemU6IG51bWJlcjtcbiAgbW9kZTogU2VhcmNoTW9kZTtcbiAgZW1iZWRkaW5nTW9kZWw/OiBzdHJpbmc7XG4gIGJhc2VQYXRoOiBzdHJpbmc7XG4gIHRpbWVvdXRNczogbnVtYmVyO1xuICBhbGxvd1dyaXRlOiBib29sZWFuO1xuICBlbnN1cmVPblNldHVwPzogRW5zdXJlT25TZXR1cENvbmZpZztcbn1cblxuLyoqIEpTT04gU2NoZW1hIHRoZSBwbHVnaW4gbWFuaWZlc3QgcHVibGlzaGVzIGZvciB7QGxpbmsgU2VhcmNoUGx1Z2luQ29uZmlnfS4gKi9cbmV4cG9ydCBjb25zdCBTRUFSQ0hfQ09ORklHX1NDSEVNQTogSlNPTlNjaGVtYTcgPSB7XG4gIHR5cGU6IFwib2JqZWN0XCIsXG4gIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB0cnVlLFxuICBwcm9wZXJ0aWVzOiB7XG4gICAgaW5kZXg6IHtcbiAgICAgIHR5cGU6IFwic3RyaW5nXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJEZWZhdWx0IGluZGV4IHRvIHNlYXJjaCAoY2F0YWxvZy5zY2hlbWEuaW5kZXggb3IgYSBjb25maWd1cmVkIGFsaWFzKS5cIixcbiAgICB9LFxuICAgIGluZGV4ZXM6IHtcbiAgICAgIHR5cGU6IFwiYXJyYXlcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkluZGV4ZXMgdGhlIHBsdWdpbiBrbm93cyBhYm91dCwgZm9yIGFsaWFzZXMsIHVuaXZlcnNhbCBzZWFyY2gsIGFuZCB0aGUgVUkuXCIsXG4gICAgICBpdGVtczoge1xuICAgICAgICBvbmVPZjogW1xuICAgICAgICAgIHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIHR5cGU6IFwib2JqZWN0XCIsXG4gICAgICAgICAgICByZXF1aXJlZDogW1wibmFtZVwiXSxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgbmFtZTogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAgICAgIGFsaWFzOiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgICAgICAgcHJpbWFyeUtleTogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAgICAgIGNvbHVtbnM6IHsgdHlwZTogXCJhcnJheVwiLCBpdGVtczogeyB0eXBlOiBcInN0cmluZ1wiIH0gfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0sXG4gICAgfSxcbiAgICBlbmRwb2ludDoge1xuICAgICAgdHlwZTogXCJzdHJpbmdcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIlZlY3RvciBTZWFyY2ggc2VydmluZyBlbmRwb2ludCBpbmRleGVzIGxpdmUgb24gKG5lZWRlZCBvbmx5IHRvIGNyZWF0ZSBvbmUpLlwiLFxuICAgIH0sXG4gICAgY29sdW1uczoge1xuICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgaXRlbXM6IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgZGVzY3JpcHRpb246IFwiRGVmYXVsdCBjb2x1bW5zIHRvIHJldHVybi5cIixcbiAgICB9LFxuICAgIHBhZ2VTaXplOiB7IHR5cGU6IFwibnVtYmVyXCIsIGRlc2NyaXB0aW9uOiBcIkRlZmF1bHQgbnVtYmVyIG9mIGhpdHMgcGVyIHNlYXJjaC5cIiB9LFxuICAgIG1vZGU6IHsgZW51bTogW1wiaHlicmlkXCIsIFwidmVjdG9yXCIsIFwia2V5d29yZFwiXSwgZGVzY3JpcHRpb246IFwiRGVmYXVsdCBtYXRjaCBtb2RlLlwiIH0sXG4gICAgZW1iZWRkaW5nTW9kZWw6IHtcbiAgICAgIHR5cGU6IFwic3RyaW5nXCIsXG4gICAgICBkZXNjcmlwdGlvbjogXCJFbWJlZGRpbmcgZW5kcG9pbnQgdXNlZCB3aGVuIGNyZWF0aW5nIGEgRGVsdGEgU3luYyBpbmRleCAoZnV6enktbWF0Y2hlZCkuXCIsXG4gICAgfSxcbiAgICB0aW1lb3V0TXM6IHsgdHlwZTogXCJudW1iZXJcIiwgZGVzY3JpcHRpb246IFwiUGVyLWNhbGwgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuXCIgfSxcbiAgICBhbGxvd1dyaXRlOiB7XG4gICAgICB0eXBlOiBcImJvb2xlYW5cIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkVuYWJsZSB0aGUgZG9jdW1lbnQgd3JpdGUgc3VyZmFjZSAoYWRkX2RvY3VtZW50cyB0b29sICsgcm91dGUpLlwiLFxuICAgIH0sXG4gICAgZW5zdXJlT25TZXR1cDoge1xuICAgICAgdHlwZTogXCJvYmplY3RcIixcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICBcIlByb3Zpc2lvbiBhIHJlYWwgaW5kZXggYXQgYm9vdDogZW5zdXJlIHRoZSBlbmRwb2ludCArIGluZGV4IGV4aXN0IGFuZCBzZWVkIFwiICtcbiAgICAgICAgXCJkb2N1bWVudHMgd2hlbiBlbXB0eS4gUnVucyBpbiB0aGUgYmFja2dyb3VuZCBkdXJpbmcgc2V0dXAgdXNpbmcgYm9vdC10aW1lIGF1dGguXCIsXG4gICAgICBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgaW5kZXg6IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICBlbmRwb2ludDogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgIHByaW1hcnlLZXk6IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICB0ZXh0Q29sdW1uOiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgZW1iZWRkaW5nTW9kZWw6IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICBzb3VyY2VUYWJsZTogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgIHNjaGVtYTogeyB0eXBlOiBcIm9iamVjdFwiLCBhZGRpdGlvbmFsUHJvcGVydGllczogeyB0eXBlOiBcInN0cmluZ1wiIH0gfSxcbiAgICAgICAgZG9jdW1lbnRzOiB7IHR5cGU6IFwiYXJyYXlcIiwgaXRlbXM6IHsgdHlwZTogXCJvYmplY3RcIiwgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUgfSB9LFxuICAgICAgICB0aW1lb3V0TXM6IHsgdHlwZTogXCJudW1iZXJcIiB9LFxuICAgICAgfSxcbiAgICB9LFxuICB9LFxufTtcblxuLyoqIERlcml2ZSB0aGUgZGVmYXVsdCBhbGlhcyBmb3IgYW4gaW5kZXggbmFtZSAoaXRzIGxhc3QgZG90dGVkIHNlZ21lbnQpLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGRlZmF1bHRBbGlhcyhuYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBzZWdtZW50cyA9IG5hbWUuc3BsaXQoXCIuXCIpLmZpbHRlcihCb29sZWFuKTtcbiAgcmV0dXJuIHNlZ21lbnRzLmxlbmd0aCA+IDAgPyBzZWdtZW50c1tzZWdtZW50cy5sZW5ndGggLSAxXSA6IG5hbWU7XG59XG5cbi8qKiBOb3JtYWxpemUgYSBjb25maWcgaW5kZXggZW50cnkgKHN0cmluZyBvciBvYmplY3QpIGludG8gYSB7QGxpbmsgUmVzb2x2ZWRJbmRleENvbmZpZ30uICovXG5mdW5jdGlvbiB0b1Jlc29sdmVkSW5kZXgoZW50cnk6IHN0cmluZyB8IFNlYXJjaEluZGV4Q29uZmlnKTogUmVzb2x2ZWRJbmRleENvbmZpZyB8IG51bGwge1xuICBjb25zdCByYXcgPSB0eXBlb2YgZW50cnkgPT09IFwic3RyaW5nXCIgPyB7IG5hbWU6IGVudHJ5IH0gOiBlbnRyeTtcbiAgY29uc3QgbmFtZSA9IHN0cmluZy50cmltVG9OdWxsKHJhdy5uYW1lKTtcbiAgaWYgKG5hbWUgPT09IG51bGwpIHJldHVybiBudWxsO1xuICByZXR1cm4ge1xuICAgIG5hbWUsXG4gICAgYWxpYXM6IHN0cmluZy50cmltVG9OdWxsKHJhdy5hbGlhcykgPz8gZGVmYXVsdEFsaWFzKG5hbWUpLFxuICAgIC4uLihyYXcucHJpbWFyeUtleSA/IHsgcHJpbWFyeUtleTogcmF3LnByaW1hcnlLZXkgfSA6IHt9KSxcbiAgICAuLi4ocmF3LmNvbHVtbnMgJiYgcmF3LmNvbHVtbnMubGVuZ3RoID4gMCA/IHsgY29sdW1uczogWy4uLnJhdy5jb2x1bW5zXSB9IDoge30pLFxuICB9O1xufVxuXG4vKiogUGFyc2UgYW5kIHZhbGlkYXRlIGEge0BsaW5rIFNlYXJjaE1vZGV9IGZyb20gY29uZmlnIG9yIGFuIGVudiB2YXIuICovXG5mdW5jdGlvbiByZXNvbHZlTW9kZShjb25maWd1cmVkOiBTZWFyY2hNb2RlIHwgdW5kZWZpbmVkKTogU2VhcmNoTW9kZSB7XG4gIGNvbnN0IHJhdyA9IGNvbmZpZ3VyZWQgPz8gY29yZUNvbmZpZy50ZXh0KFwiU0VBUkNIX01PREVcIiwgY29yZUNvbmZpZy5FTlZfT05MWSk7XG4gIGlmIChyYXcgPT09IHVuZGVmaW5lZCkgcmV0dXJuIERFRkFVTFRfTU9ERTtcbiAgaWYgKHJhdyAhPT0gXCJoeWJyaWRcIiAmJiByYXcgIT09IFwidmVjdG9yXCIgJiYgcmF3ICE9PSBcImtleXdvcmRcIikge1xuICAgIHRocm93IG5ldyBDb25maWd1cmF0aW9uRXJyb3IoXG4gICAgICAnbW9kZSBtdXN0IGJlIFwiaHlicmlkXCIsIFwidmVjdG9yXCIgb3IgXCJrZXl3b3JkXCIgKGVudjogU0VBUkNIX01PREUpJyxcbiAgICAgIHsgY29udGV4dDogeyBmaWVsZDogXCJtb2RlXCIsIGVudlZhcjogXCJTRUFSQ0hfTU9ERVwiIH0gfSxcbiAgICApO1xuICB9XG4gIHJldHVybiByYXc7XG59XG5cbi8qKlxuICogUmVzb2x2ZSBwbHVnaW4gY29uZmlnIG92ZXIgZW52aXJvbm1lbnQgZGVmYXVsdHMgaW50byB0aGUgY29uY3JldGVcbiAqIHtAbGluayBSZXNvbHZlZFNlYXJjaENvbmZpZ30uIFRoZSBkZWZhdWx0IGluZGV4IGlzIHVuaW9uZWQgaW50byB0aGUga25vd25cbiAqIGluZGV4ZXMgc28gaXQgYWx3YXlzIGFwcGVhcnMgaW4gdGhlIGNhdGFsb2d1ZSwgYWxpYXNlcyBhcmUgZGUtZHVwbGljYXRlZCxcbiAqIGFuZCBhIGJhZCBtb2RlIHRocm93cyBhIHtAbGluayBDb25maWd1cmF0aW9uRXJyb3J9IG5hbWluZyB0aGUgZmllbGQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlU2VhcmNoQ29uZmlnKGNvbmZpZzogU2VhcmNoUGx1Z2luQ29uZmlnID0ge30pOiBSZXNvbHZlZFNlYXJjaENvbmZpZyB7XG4gIGNvbnN0IGRlZmF1bHRJbmRleFJhdyA9IGNvcmVDb25maWcuc3RyaW5nKFxuICAgIGNvbmZpZy5pbmRleCxcbiAgICBbSU5ERVhfRU5WLCBEQVRBQlJJQ0tTX0lOREVYX0VOVl0sXG4gICAgY29yZUNvbmZpZy5FTlZfT05MWSxcbiAgKTtcblxuICBjb25zdCBjb25maWd1cmVkID0gKGNvbmZpZy5pbmRleGVzID8/IFtdKVxuICAgIC5tYXAodG9SZXNvbHZlZEluZGV4KVxuICAgIC5maWx0ZXIoKGVudHJ5KTogZW50cnkgaXMgUmVzb2x2ZWRJbmRleENvbmZpZyA9PiBlbnRyeSAhPT0gbnVsbCk7XG5cbiAgLy8gRW5zdXJlIHRoZSBkZWZhdWx0IGluZGV4IGlzIHJlcHJlc2VudGVkIGluIHRoZSBrbm93biBzZXQuXG4gIGlmIChkZWZhdWx0SW5kZXhSYXcgJiYgIWNvbmZpZ3VyZWQuc29tZSgoaSkgPT4gaS5uYW1lID09PSBkZWZhdWx0SW5kZXhSYXcpKSB7XG4gICAgY29uc3QgZW52Q29sdW1ucyA9IGNvcmVDb25maWcubGlzdChcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIFwiU0VBUkNIX0NPTFVNTlNcIixcbiAgICAgIHVuZGVmaW5lZCxcbiAgICAgIGNvcmVDb25maWcuRU5WX09OTFksXG4gICAgKTtcbiAgICBjb25maWd1cmVkLnVuc2hpZnQoe1xuICAgICAgbmFtZTogZGVmYXVsdEluZGV4UmF3LFxuICAgICAgYWxpYXM6IGRlZmF1bHRBbGlhcyhkZWZhdWx0SW5kZXhSYXcpLFxuICAgICAgLi4uKGVudkNvbHVtbnMubGVuZ3RoID4gMCA/IHsgY29sdW1uczogZW52Q29sdW1ucyB9IDoge30pLFxuICAgIH0pO1xuICB9XG5cbiAgY29uc3Qgc2VlbkFsaWFzZXMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgY29uc3QgaW5kZXhlcyA9IGNvbmZpZ3VyZWQubWFwKChlbnRyeSkgPT4ge1xuICAgIGxldCBhbGlhcyA9IGVudHJ5LmFsaWFzO1xuICAgIHdoaWxlIChzZWVuQWxpYXNlcy5oYXMoYWxpYXMpKSBhbGlhcyA9IGAke2FsaWFzfV9gO1xuICAgIHNlZW5BbGlhc2VzLmFkZChhbGlhcyk7XG4gICAgcmV0dXJuIHsgLi4uZW50cnksIGFsaWFzIH07XG4gIH0pO1xuXG4gIGNvbnN0IGRlZmF1bHRJbmRleCA9IGRlZmF1bHRJbmRleFJhdyA/PyBpbmRleGVzWzBdPy5uYW1lO1xuICBjb25zdCBjb2x1bW5zID0gY29yZUNvbmZpZy5saXN0KFxuICAgIGNvbmZpZy5jb2x1bW5zLFxuICAgIFwiU0VBUkNIX0NPTFVNTlNcIixcbiAgICB1bmRlZmluZWQsXG4gICAgY29yZUNvbmZpZy5FTlZfT05MWSxcbiAgKTtcblxuICByZXR1cm4ge1xuICAgIC4uLm9iamVjdC5vcHRpb25hbChcImRlZmF1bHRJbmRleFwiLCBkZWZhdWx0SW5kZXgpLFxuICAgIGluZGV4ZXMsXG4gICAgLi4ub2JqZWN0Lm9wdGlvbmFsKFxuICAgICAgXCJlbmRwb2ludFwiLFxuICAgICAgY29yZUNvbmZpZy5zdHJpbmcoY29uZmlnLmVuZHBvaW50LCBFTkRQT0lOVF9FTlYsIGNvcmVDb25maWcuRU5WX09OTFkpLFxuICAgICksXG4gICAgLi4uKGNvbHVtbnMubGVuZ3RoID4gMCA/IHsgY29sdW1ucyB9IDoge30pLFxuICAgIHBhZ2VTaXplOiBjb3JlQ29uZmlnLnBvc2l0aXZlSW50KFxuICAgICAgY29uZmlnLnBhZ2VTaXplLFxuICAgICAgXCJTRUFSQ0hfUEFHRV9TSVpFXCIsXG4gICAgICBERUZBVUxUX1BBR0VfU0laRSxcbiAgICAgIGNvcmVDb25maWcuRU5WX09OTFksXG4gICAgKSxcbiAgICBtb2RlOiByZXNvbHZlTW9kZShjb25maWcubW9kZSksXG4gICAgLi4ub2JqZWN0Lm9wdGlvbmFsKFxuICAgICAgXCJlbWJlZGRpbmdNb2RlbFwiLFxuICAgICAgY29yZUNvbmZpZy5zdHJpbmcoY29uZmlnLmVtYmVkZGluZ01vZGVsLCBcIlNFQVJDSF9FTUJFRERJTkdfTU9ERUxcIiwgY29yZUNvbmZpZy5FTlZfT05MWSksXG4gICAgKSxcbiAgICBiYXNlUGF0aDogREVGQVVMVF9CQVNFX1BBVEgsXG4gICAgdGltZW91dE1zOiBjb3JlQ29uZmlnLnBvc2l0aXZlSW50KFxuICAgICAgY29uZmlnLnRpbWVvdXRNcyxcbiAgICAgIFwiU0VBUkNIX1RJTUVPVVRfTVNcIixcbiAgICAgIERFRkFVTFRfVElNRU9VVF9NUyxcbiAgICAgIGNvcmVDb25maWcuRU5WX09OTFksXG4gICAgKSxcbiAgICBhbGxvd1dyaXRlOlxuICAgICAgY29yZUNvbmZpZy5ib29sZWFuKGNvbmZpZy5hbGxvd1dyaXRlLCBcIlNFQVJDSF9XUklURVwiLCBjb3JlQ29uZmlnLkVOVl9PTkxZKSA/PyBmYWxzZSxcbiAgICAuLi4oY29uZmlnLmVuc3VyZU9uU2V0dXAgPyB7IGVuc3VyZU9uU2V0dXA6IGNvbmZpZy5lbnN1cmVPblNldHVwIH0gOiB7fSksXG4gIH07XG59XG5cbi8qKlxuICogUmVzb2x2ZSBhIGNhbGxlci1zdXBwbGllZCBpbmRleCByZWZlcmVuY2UgKGEgZnVsbCBVQyBuYW1lIG9yIGEgY29uZmlndXJlZFxuICogYWxpYXMpIGludG8gYSBjb25jcmV0ZSBpbmRleCBuYW1lLiBGYWxscyBiYWNrIHRvIHRoZSBkZWZhdWx0IGluZGV4IHdoZW4gdGhlXG4gKiByZWZlcmVuY2UgaXMgZW1wdHkuIFJldHVybnMgYG51bGxgIHdoZW4gbm90aGluZyBjYW4gYmUgcmVzb2x2ZWQgc28gY2FsbGVyc1xuICogcmFpc2UgYSBzdGFibGUsIHVzZXItZmFjaW5nIGVycm9yIHJhdGhlciB0aGFuIGNhbGxpbmcgYSBwaGFudG9tIGluZGV4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUluZGV4TmFtZShcbiAgY29uZmlnOiBSZXNvbHZlZFNlYXJjaENvbmZpZyxcbiAgcmVmZXJlbmNlOiBzdHJpbmcgfCB1bmRlZmluZWQsXG4pOiBzdHJpbmcgfCBudWxsIHtcbiAgY29uc3QgcmVmID0gc3RyaW5nLnRyaW1Ub051bGwocmVmZXJlbmNlKTtcbiAgaWYgKHJlZiA9PT0gbnVsbCkgcmV0dXJuIGNvbmZpZy5kZWZhdWx0SW5kZXggPz8gbnVsbDtcbiAgY29uc3QgYnlBbGlhcyA9IGNvbmZpZy5pbmRleGVzLmZpbmQoKGkpID0+IGkuYWxpYXMgPT09IHJlZiB8fCBpLm5hbWUgPT09IHJlZik7XG4gIGlmIChieUFsaWFzKSByZXR1cm4gYnlBbGlhcy5uYW1lO1xuICAvLyBBY2NlcHQgYW4gdW5yZWdpc3RlcmVkIGJ1dCBmdWxseS1xdWFsaWZpZWQgVUMgbmFtZSAodGhyZWUgZG90dGVkIHBhcnRzKS5cbiAgaWYgKHJlZi5zcGxpdChcIi5cIikuZmlsdGVyKEJvb2xlYW4pLmxlbmd0aCA9PT0gMykgcmV0dXJuIHJlZjtcbiAgcmV0dXJuIGNvbmZpZy5kZWZhdWx0SW5kZXggPz8gbnVsbDtcbn1cblxuLyoqIFRoZSBrbm93biBjb25maWcgZm9yIGFuIGluZGV4IG5hbWUsIHdoZW4gdGhlIHBsdWdpbiB3YXMgdG9sZCBhYm91dCBpdC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpbmRleENvbmZpZ0ZvcihcbiAgY29uZmlnOiBSZXNvbHZlZFNlYXJjaENvbmZpZyxcbiAgbmFtZTogc3RyaW5nLFxuKTogUmVzb2x2ZWRJbmRleENvbmZpZyB8IHVuZGVmaW5lZCB7XG4gIHJldHVybiBjb25maWcuaW5kZXhlcy5maW5kKChpKSA9PiBpLm5hbWUgPT09IG5hbWUgfHwgaS5hbGlhcyA9PT0gbmFtZSk7XG59XG4iXX0=
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxrQkFBa0IsRUFBeUIsTUFBTSxvQkFBb0IsQ0FBQztBQUMvRSxPQUFPLEVBQUUsTUFBTSxJQUFJLFVBQVUsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJeEQsZ0ZBQWdGO0FBQ2hGLE1BQU0sQ0FBQyxNQUFNLFNBQVMsR0FBRyxjQUFjLENBQUM7QUFFeEMsNEVBQTRFO0FBQzVFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLGdDQUFnQyxDQUFDO0FBRXJFLG9GQUFvRjtBQUNwRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsaUJBQWlCLENBQUM7QUFFOUMsMkZBQTJGO0FBQzNGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBZSxRQUFRLENBQUM7QUFFakQseUZBQXlGO0FBQ3pGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUVwQywrREFBK0Q7QUFDL0QsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDO0FBRXpDLHVFQUF1RTtBQUN2RSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxhQUFhLENBQUM7QUFxRy9DLGdGQUFnRjtBQUNoRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBZ0I7SUFDL0MsSUFBSSxFQUFFLFFBQVE7SUFDZCxvQkFBb0IsRUFBRSxJQUFJO0lBQzFCLFVBQVUsRUFBRTtRQUNWLEtBQUssRUFBRTtZQUNMLElBQUksRUFBRSxRQUFRO1lBQ2QsV0FBVyxFQUFFLHVFQUF1RTtTQUNyRjtRQUNELE9BQU8sRUFBRTtZQUNQLElBQUksRUFBRSxPQUFPO1lBQ2IsV0FBVyxFQUFFLDRFQUE0RTtZQUN6RixLQUFLLEVBQUU7Z0JBQ0wsS0FBSyxFQUFFO29CQUNMLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtvQkFDbEI7d0JBQ0UsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsUUFBUSxFQUFFLENBQUMsTUFBTSxDQUFDO3dCQUNsQixVQUFVLEVBQUU7NEJBQ1YsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTs0QkFDeEIsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTs0QkFDekIsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTs0QkFDOUIsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLEVBQUU7eUJBQ3REO3FCQUNGO2lCQUNGO2FBQ0Y7U0FDRjtRQUNELFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSxRQUFRO1lBQ2QsV0FBVyxFQUFFLDZFQUE2RTtTQUMzRjtRQUNELE9BQU8sRUFBRTtZQUNQLElBQUksRUFBRSxPQUFPO1lBQ2IsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUN6QixXQUFXLEVBQUUsNEJBQTRCO1NBQzFDO1FBQ0QsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsb0NBQW9DLEVBQUU7UUFDL0UsSUFBSSxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLENBQUMsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUU7UUFDbkYsY0FBYyxFQUFFO1lBQ2QsSUFBSSxFQUFFLFFBQVE7WUFDZCxXQUFXLEVBQUUsMkVBQTJFO1NBQ3pGO1FBQ0QsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsbUNBQW1DLEVBQUU7UUFDL0UsVUFBVSxFQUFFO1lBQ1YsSUFBSSxFQUFFLFNBQVM7WUFDZixXQUFXLEVBQUUsaUVBQWlFO1NBQy9FO1FBQ0QsYUFBYSxFQUFFO1lBQ2IsSUFBSSxFQUFFLFFBQVE7WUFDZCxXQUFXLEVBQ1QsNkVBQTZFO2dCQUM3RSxpRkFBaUY7WUFDbkYsb0JBQW9CLEVBQUUsSUFBSTtZQUMxQixVQUFVLEVBQUU7Z0JBQ1YsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQkFDekIsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQkFDNUIsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQkFDOUIsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQkFDOUIsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQkFDbEMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtnQkFDL0IsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxvQkFBb0IsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDcEUsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLG9CQUFvQixFQUFFLElBQUksRUFBRSxFQUFFO2dCQUNuRixTQUFTLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO2FBQzlCO1NBQ0Y7S0FDRjtDQUNGLENBQUM7QUFFRiw0RUFBNEU7QUFDNUUsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFZO0lBQ3ZDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pELE9BQU8sUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDcEUsQ0FBQztBQUVELDRGQUE0RjtBQUM1RixTQUFTLGVBQWUsQ0FBQyxLQUFpQztJQUN4RCxNQUFNLEdBQUcsR0FBRyxPQUFPLEtBQUssS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDaEUsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsSUFBSSxJQUFJLEtBQUssSUFBSTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQy9CLE9BQU87UUFDTCxJQUFJO1FBQ0osS0FBSyxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUM7UUFDekQsR0FBRyxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3pELEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7S0FDaEYsQ0FBQztBQUNKLENBQUM7QUFFRCx5RUFBeUU7QUFDekUsU0FBUyxXQUFXLENBQUMsVUFBa0M7SUFDckQsTUFBTSxHQUFHLEdBQUcsVUFBVSxJQUFJLFVBQVUsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM5RSxJQUFJLEdBQUcsS0FBSyxTQUFTO1FBQUUsT0FBTyxZQUFZLENBQUM7SUFDM0MsSUFBSSxHQUFHLEtBQUssUUFBUSxJQUFJLEdBQUcsS0FBSyxRQUFRLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQzlELE1BQU0sSUFBSSxrQkFBa0IsQ0FDMUIsaUVBQWlFLEVBQ2pFLEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLEVBQUUsQ0FDdEQsQ0FBQztJQUNKLENBQUM7SUFDRCxPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxtQkFBbUIsQ0FBQyxTQUE2QixFQUFFO0lBQ2pFLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQ3ZDLE1BQU0sQ0FBQyxLQUFLLEVBQ1osQ0FBQyxTQUFTLEVBQUUsb0JBQW9CLENBQUMsRUFDakMsVUFBVSxDQUFDLFFBQVEsQ0FDcEIsQ0FBQztJQUVGLE1BQU0sVUFBVSxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7U0FDdEMsR0FBRyxDQUFDLGVBQWUsQ0FBQztTQUNwQixNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQWdDLEVBQUUsQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLENBQUM7SUFFbkUsNERBQTREO0lBQzVELElBQUksZUFBZSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQzNFLE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDaEcsVUFBVSxDQUFDLE9BQU8sQ0FBQztZQUNqQixJQUFJLEVBQUUsZUFBZTtZQUNyQixLQUFLLEVBQUUsWUFBWSxDQUFDLGVBQWUsQ0FBQztZQUNwQyxHQUFHLENBQUMsVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDMUQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sV0FBVyxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFDdEMsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1FBQ3ZDLElBQUksS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDeEIsT0FBTyxXQUFXLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQztZQUFFLEtBQUssR0FBRyxHQUFHLEtBQUssR0FBRyxDQUFDO1FBQ25ELFdBQVcsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkIsT0FBTyxFQUFFLEdBQUcsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzdCLENBQUMsQ0FBQyxDQUFDO0lBRUgsTUFBTSxZQUFZLEdBQUcsZUFBZSxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUM7SUFDekQsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7SUFFbEcsT0FBTztRQUNMLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsWUFBWSxDQUFDO1FBQ2hELE9BQU87UUFDUCxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQ2hCLFVBQVUsRUFDVixVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsWUFBWSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FDdEU7UUFDRCxHQUFHLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMxQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFdBQVcsQ0FDOUIsTUFBTSxDQUFDLFFBQVEsRUFDZixrQkFBa0IsRUFDbEIsaUJBQWlCLEVBQ2pCLFVBQVUsQ0FBQyxRQUFRLENBQ3BCO1FBQ0QsSUFBSSxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQzlCLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FDaEIsZ0JBQWdCLEVBQ2hCLFVBQVUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSx3QkFBd0IsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDLENBQ3hGO1FBQ0QsUUFBUSxFQUFFLGlCQUFpQjtRQUMzQixTQUFTLEVBQUUsVUFBVSxDQUFDLFdBQVcsQ0FDL0IsTUFBTSxDQUFDLFNBQVMsRUFDaEIsbUJBQW1CLEVBQ25CLGtCQUFrQixFQUNsQixVQUFVLENBQUMsUUFBUSxDQUNwQjtRQUNELFVBQVUsRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsY0FBYyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUMsSUFBSSxLQUFLO1FBQy9GLEdBQUcsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWEsRUFBRSxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztLQUN6RSxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7OztHQUtHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQixDQUM5QixNQUE0QixFQUM1QixTQUE2QjtJQUU3QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3pDLElBQUksR0FBRyxLQUFLLElBQUk7UUFBRSxPQUFPLE1BQU0sQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO0lBQ3JELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQzlFLElBQUksT0FBTztRQUFFLE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQztJQUNqQywyRUFBMkU7SUFDM0UsSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQztRQUFFLE9BQU8sR0FBRyxDQUFDO0lBQzVELE9BQU8sTUFBTSxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUM7QUFDckMsQ0FBQztBQUVELDZFQUE2RTtBQUM3RSxNQUFNLFVBQVUsY0FBYyxDQUM1QixNQUE0QixFQUM1QixJQUFZO0lBRVosT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxJQUFJLENBQUMsQ0FBQztBQUN6RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUgQUkgU2VhcmNoIHBsdWdpbjogdGhlIHR5cGVkXG4gKiB7QGxpbmsgU2VhcmNoUGx1Z2luQ29uZmlnfSAodGhlIHBsdWdpbidzIHNsaWNlIG9mIEFwcEtpdCBjb25maWcpLCB0aGUgSlNPTlxuICogU2NoZW1hIHRoZSBtYW5pZmVzdCBwdWJsaXNoZXMgZm9yIGl0LCBhbmQge0BsaW5rIHJlc29sdmVTZWFyY2hDb25maWd9XG4gKiB3aGljaCBsYXllcnMgdGhhdCBjb25maWcgb3ZlciBlbnZpcm9ubWVudCBkZWZhdWx0cyBpbnRvIHRoZSBjb25jcmV0ZVxuICoge0BsaW5rIFJlc29sdmVkU2VhcmNoQ29uZmlnfSB0aGUgcnVudGltZSwgY2xpZW50LCB0b29scywgYW5kIHJvdXRlcyByZWFkLlxuICpcbiAqIFRoZSBkZXNpZ24gZ29hbCBpcyBcIm9uZSBpbmRleCwgemVybyBjb25maWdcIjogbmFtZSBhIGRlZmF1bHQgaW5kZXggKG9yIHNldFxuICogYERBVEFCUklDS1NfVkVDVE9SX1NFQVJDSF9JTkRFWGApIGFuZCBldmVyeXRoaW5nIGVsc2UgLSB0aGUgY29sdW1ucyB0b1xuICogcmV0dXJuLCB0aGUgcGFnZSBzaXplLCB0aGUgbWF0Y2ggbW9kZSwgdGhlIG1vdW50ZWQgcm91dGUgcGF0aCwgdGhlIGVtYmVkZGluZ1xuICogbW9kZWwgdXNlZCB3aGVuIGNyZWF0aW5nIGFuIGluZGV4IC0gaGFzIGEgc2Vuc2libGUgZGVmYXVsdCB0aGF0IGNhbiBiZVxuICogb3ZlcnJpZGRlbiB3aGVuIGEgZGVwbG95bWVudCBuZWVkcyB0byBnbyBkZWVwZXIuXG4gKlxuICogV2hpY2ggaW5kZXggLyBlbmRwb2ludCBpcyB1c2VkIGZvbGxvd3MgdGhlIHN0YW5kYXJkIHByZWNlZGVuY2U6IGV4cGxpY2l0XG4gKiBwbHVnaW4gY29uZmlnLCB0aGVuIGVudmlyb25tZW50LCB0aGVuIGEgZGVmYXVsdC5cbiAqXG4gKiBFbnYgZmFsbGJhY2tzOiBgREFUQUJSSUNLU19WRUNUT1JfU0VBUkNIX0lOREVYYCAodGhlIGRlZmF1bHQgaW5kZXgpLFxuICogYFNFQVJDSF9JTkRFWGAsIGBTRUFSQ0hfRU5EUE9JTlRgLCBgU0VBUkNIX0NPTFVNTlNgLFxuICogYFNFQVJDSF9QQUdFX1NJWkVgLCBgU0VBUkNIX01PREVgLCBgU0VBUkNIX0VNQkVERElOR19NT0RFTGAsXG4gKiBgU0VBUkNIX1RJTUVPVVRfTVNgLCBgU0VBUkNIX1dSSVRFYC5cbiAqXG4gKiBAbW9kdWxlXG4gKi9cblxuaW1wb3J0IHsgQ29uZmlndXJhdGlvbkVycm9yLCB0eXBlIEJhc2VQbHVnaW5Db25maWcgfSBmcm9tIFwiQGRhdGFicmlja3MvYXBwa2l0XCI7XG5pbXBvcnQgeyBjb25maWcgYXMgY29yZUNvbmZpZyB9IGZyb20gXCJAZGJ4LXRvb2xzL2NvcmVcIjtcbmltcG9ydCB7IG9iamVjdCwgc3RyaW5nIH0gZnJvbSBcIkBkYngtdG9vbHMvc2hhcmVkLWNvcmVcIjtcbmltcG9ydCB0eXBlIHsgU2VhcmNoRG9jdW1lbnQsIFNlYXJjaE1vZGUgfSBmcm9tIFwiQGRieC10b29scy9zaGFyZWQtc2VhcmNoXCI7XG5pbXBvcnQgdHlwZSB7IEpTT05TY2hlbWE3IH0gZnJvbSBcImpzb24tc2NoZW1hXCI7XG5cbi8qKiBUaGUgZGVmYXVsdCBpbmRleCwgaG9ub3JpbmcgQXBwS2l0J3Mgc3RhbmRhcmQgVmVjdG9yIFNlYXJjaCBiaW5kaW5nIG5hbWUuICovXG5leHBvcnQgY29uc3QgSU5ERVhfRU5WID0gXCJTRUFSQ0hfSU5ERVhcIjtcblxuLyoqIEFwcEtpdCdzIHN0YW5kYXJkIGVudmlyb25tZW50IG5hbWUgZm9yIGEgVmVjdG9yIFNlYXJjaCBpbmRleCBiaW5kaW5nLiAqL1xuZXhwb3J0IGNvbnN0IERBVEFCUklDS1NfSU5ERVhfRU5WID0gXCJEQVRBQlJJQ0tTX1ZFQ1RPUl9TRUFSQ0hfSU5ERVhcIjtcblxuLyoqIERlZGljYXRlZCBvdmVycmlkZSBmb3IgdGhlIFZlY3RvciBTZWFyY2ggc2VydmluZyBlbmRwb2ludCB0aGF0IGhvc3RzIGluZGV4ZXMuICovXG5leHBvcnQgY29uc3QgRU5EUE9JTlRfRU5WID0gXCJTRUFSQ0hfRU5EUE9JTlRcIjtcblxuLyoqIERlZmF1bHQgbWF0Y2ggbW9kZSB3aGVuIGEgcmVxdWVzdCBkb2VzIG5vdCBuYW1lIG9uZS4gSHlicmlkIHN1aXRzIG1vc3Qgc2VhcmNoIGJveGVzLiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTU9ERTogU2VhcmNoTW9kZSA9IFwiaHlicmlkXCI7XG5cbi8qKiBEZWZhdWx0IG51bWJlciBvZiBoaXRzIGEgc2VhcmNoIHJldHVybnMgKGEgZ29vZCBhdXRvY29tcGxldGUgLyByZXN1bHRzLWxpc3Qgc2l6ZSkuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9QQUdFX1NJWkUgPSAxMDtcblxuLyoqIERlZmF1bHQgcGVyLWNhbGwgdGltZW91dCBmb3IgYSBzZWFyY2ggLyBpbmRleCBvcGVyYXRpb24uICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9USU1FT1VUX01TID0gMzBfMDAwO1xuXG4vKiogQmFzZSBwYXRoIHRoZSBwbHVnaW4gbW91bnRzIGl0cyByb3V0ZXMgdW5kZXIsIHVubGVzcyBvdmVycmlkZGVuLiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfQkFTRV9QQVRIID0gXCIvYXBpL3NlYXJjaFwiO1xuXG4vKipcbiAqIEEgY29uZmlndXJlZCBpbmRleCB0aGUgcGx1Z2luIGtub3dzIGFib3V0IGFoZWFkIG9mIHRpbWUuIE9ubHkgYG5hbWVgIChvclxuICogYGFsaWFzYCkgaXMgcmVxdWlyZWQ7IHRoZSByZXN0IGlzIHJlc29sdmVkIGZyb20gdGhlIGxpdmUgaW5kZXggZGVmaW5pdGlvblxuICogd2hlbiBvbWl0dGVkLCBzbyBhIGRlcGxveW1lbnQgY2FuIHJlZ2lzdGVyIGB7IG5hbWUgfWAgYW5kIGxldCB0aGUgcGx1Z2luIGZpbGxcbiAqIGluIHRoZSBwcmltYXJ5IGtleSBhbmQgY29sdW1ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hJbmRleENvbmZpZyB7XG4gIC8qKiBVbml0eSBDYXRhbG9nIG5hbWUgb2YgdGhlIGluZGV4IChjYXRhbG9nLnNjaGVtYS5pbmRleCkuICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIFNob3J0IGFsaWFzIGEgY2FsbGVyIG1heSB1c2UgaW4gcGxhY2Ugb2YgYG5hbWVgIChkZWZhdWx0cyB0byB0aGUgbGFzdCBuYW1lIHNlZ21lbnQpLiAqL1xuICBhbGlhcz86IHN0cmluZztcbiAgLyoqIFByaW1hcnkta2V5IGNvbHVtbi4gUmVzb2x2ZWQgZnJvbSB0aGUgaW5kZXggZGVmaW5pdGlvbiB3aGVuIG9taXR0ZWQuICovXG4gIHByaW1hcnlLZXk/OiBzdHJpbmc7XG4gIC8qKiBDb2x1bW5zIHRvIHJldHVybiBwZXIgaGl0LCBpbiBkaXNwbGF5IG9yZGVyLiBEZWZhdWx0cyB0byBldmVyeSBpbmRleGVkIGNvbHVtbi4gKi9cbiAgY29sdW1ucz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIFRoZSBBSSBTZWFyY2ggcGx1Z2luJ3Mgc2xpY2Ugb2YgQXBwS2l0IGNvbmZpZy4gRXZlcnkgZmllbGQgaXMgb3B0aW9uYWwgLSB0aGVcbiAqIHBsdWdpbiB3b3JrcyB3aXRoIG5vdGhpbmcgYnV0IGFuIGluZGV4IG5hbWUgaW4gdGhlIGVudmlyb25tZW50LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaFBsdWdpbkNvbmZpZyBleHRlbmRzIEJhc2VQbHVnaW5Db25maWcge1xuICAvKiogVGhlIGRlZmF1bHQgaW5kZXggc2VhcmNoZWQgd2hlbiBhIHJlcXVlc3Qgb21pdHMgb25lIChuYW1lIG9yIGFsaWFzKS4gKi9cbiAgaW5kZXg/OiBzdHJpbmc7XG4gIC8qKiBJbmRleGVzIHRoZSBwbHVnaW4gc2hvdWxkIGtub3cgYWJvdXQgKGZvciBhbGlhc2VzLCB1bml2ZXJzYWwgc2VhcmNoLCBhbmQgdGhlIFVJIGNhdGFsb2d1ZSkuICovXG4gIGluZGV4ZXM/OiBBcnJheTxzdHJpbmcgfCBTZWFyY2hJbmRleENvbmZpZz47XG4gIC8qKiBUaGUgVmVjdG9yIFNlYXJjaCBzZXJ2aW5nIGVuZHBvaW50IGluZGV4ZXMgbGl2ZSBvbiAob25seSBuZWVkZWQgdG8gY3JlYXRlIGFuIGluZGV4KS4gKi9cbiAgZW5kcG9pbnQ/OiBzdHJpbmc7XG4gIC8qKiBEZWZhdWx0IGNvbHVtbnMgdG8gcmV0dXJuIHBlciBoaXQuIEZhbGxzIGJhY2sgdG8gZWFjaCBpbmRleCdzIG93biBjb2x1bW5zLiAqL1xuICBjb2x1bW5zPzogc3RyaW5nW107XG4gIC8qKiBEZWZhdWx0IG51bWJlciBvZiBoaXRzIGEgc2VhcmNoIHJldHVybnMuICovXG4gIHBhZ2VTaXplPzogbnVtYmVyO1xuICAvKiogRGVmYXVsdCBtYXRjaCBtb2RlLiAqL1xuICBtb2RlPzogU2VhcmNoTW9kZTtcbiAgLyoqIEVtYmVkZGluZyBtb2RlbCBlbmRwb2ludCB1c2VkIHdoZW4gdGhlIHBsdWdpbiBDUkVBVEVTIGEgRGVsdGEgU3luYyBpbmRleC4gRnV6enktcmVzb2x2ZWQuICovXG4gIGVtYmVkZGluZ01vZGVsPzogc3RyaW5nO1xuICAvKiogUGVyLWNhbGwgdGltZW91dCBpbiBtaWxsaXNlY29uZHMuICovXG4gIHRpbWVvdXRNcz86IG51bWJlcjtcbiAgLyoqIEVuYWJsZSB0aGUgd3JpdGUgc3VyZmFjZSAoYGFkZF9kb2N1bWVudHNgIHRvb2wgKyBgUE9TVCAvZG9jdW1lbnRzYCkuIE9mZiBieSBkZWZhdWx0LiAqL1xuICBhbGxvd1dyaXRlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFByb3Zpc2lvbiBhIFJFQUwgaW5kZXggYXQgYm9vdDogZW5zdXJlIHRoZSBlbmRwb2ludCArIGluZGV4IGV4aXN0IGFuZCBzZWVkXG4gICAqIGRvY3VtZW50cyB3aGVuIHRoZSBpbmRleCBpcyBlbXB0eS4gUnVucyBpbiB0aGUgYmFja2dyb3VuZCBkdXJpbmcgYHNldHVwKClgXG4gICAqIChhIHNsb3cgZmlyc3QtdGltZSBlbmRwb2ludC9pbmRleCBidWlsZCBuZXZlciBibG9ja3MgdGhlIHNlcnZlcikgdXNpbmcgdGhlXG4gICAqIGJvb3QtdGltZSBTREsgYXV0aCAoZW52IC8gY29uZmlnIHByb2ZpbGUpLiBJZGVtcG90ZW50IC0gc2FmZSBldmVyeSBib290LlxuICAgKlxuICAgKiBUaGUgZGVmYXVsdCBpcyBhIE1BTkFHRUQgZGlyZWN0LWFjY2VzcyBpbmRleCAoRGF0YWJyaWNrcyBlbWJlZHMgdGhlIHRleHRcbiAgICogY29sdW1uKSwgc28gYGRvY3VtZW50c2AgYXJlIHBsYWluIHJvd3MgYW5kIHNlYXJjaC1ieS10ZXh0IHdvcmtzIHdpdGggbm9cbiAgICogRGVsdGEgdGFibGUsIG5vIHdhcmVob3VzZSwgYW5kIG5vIHZlY3RvcnMgdG8gY29tcHV0ZS4gUG9pbnQgaXQgYXQgYVxuICAgKiBgc291cmNlVGFibGVgIHRvIHByb3Zpc2lvbiBhIERlbHRhIFN5bmMgaW5kZXggaW5zdGVhZC5cbiAgICovXG4gIGVuc3VyZU9uU2V0dXA/OiBFbnN1cmVPblNldHVwQ29uZmlnO1xufVxuXG4vKiogQm9vdC10aW1lIHByb3Zpc2lvbmluZyArIHNlZWRpbmcgZm9yIGEgc2luZ2xlIGluZGV4IChzZWUgYGVuc3VyZU9uU2V0dXBgKS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRW5zdXJlT25TZXR1cENvbmZpZyB7XG4gIC8qKiBVQyBuYW1lIG9mIHRoZSBpbmRleCB0byBlbnN1cmUgKGNhdGFsb2cuc2NoZW1hLmluZGV4KS4gRGVmYXVsdHMgdG8gdGhlIHBsdWdpbidzIGBpbmRleGAuICovXG4gIGluZGV4Pzogc3RyaW5nO1xuICAvKiogVmVjdG9yIFNlYXJjaCBlbmRwb2ludCB0byBob3N0IGl0IG9uLiBEZWZhdWx0cyB0byB0aGUgcGx1Z2luJ3MgYGVuZHBvaW50YC4gKi9cbiAgZW5kcG9pbnQ/OiBzdHJpbmc7XG4gIC8qKiBQcmltYXJ5LWtleSBjb2x1bW4uIERlZmF1bHRzIHRvIGBpZGAuICovXG4gIHByaW1hcnlLZXk/OiBzdHJpbmc7XG4gIC8qKiBUZXh0IGNvbHVtbiBEYXRhYnJpY2tzIGVtYmVkcyAobWFuYWdlZCBkaXJlY3QtYWNjZXNzKS4gRGVmYXVsdHMgdG8gYHRleHRgLiAqL1xuICB0ZXh0Q29sdW1uPzogc3RyaW5nO1xuICAvKiogRW1iZWRkaW5nIG1vZGVsIGVuZHBvaW50LiBGdXp6eS1tYXRjaGVkOyBkZWZhdWx0cyB0byB0aGUgYmVzdCBlbWJlZGRpbmcgZW5kcG9pbnQuICovXG4gIGVtYmVkZGluZ01vZGVsPzogc3RyaW5nO1xuICAvKiogRm9yIGEgRGVsdGEgU3luYyBpbmRleCBpbnN0ZWFkIG9mIG1hbmFnZWQgZGlyZWN0LWFjY2VzczogdGhlIHNvdXJjZSBEZWx0YSB0YWJsZS4gKi9cbiAgc291cmNlVGFibGU/OiBzdHJpbmc7XG4gIC8qKiBDb2x1bW4gLT4gdHlwZSBtYXAgZm9yIHRoZSBtYW5hZ2VkIGRpcmVjdC1hY2Nlc3MgYHNjaGVtYV9qc29uYC4gSW5mZXJyZWQgZnJvbSBgZG9jdW1lbnRzYCB3aGVuIG9taXR0ZWQuICovXG4gIHNjaGVtYT86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKiBEb2N1bWVudHMgdG8gc2VlZCB3aGVuIHRoZSBpbmRleCBpcyBlbXB0eS4gUGxhaW4gYHsgaWQsIHRleHQsIC4uLiB9YCByb3dzIGZvciBhIG1hbmFnZWQgaW5kZXguICovXG4gIGRvY3VtZW50cz86IFNlYXJjaERvY3VtZW50W107XG4gIC8qKiBNYXggdGltZSB0byB3YWl0IGZvciBlbmRwb2ludCArIGluZGV4IHJlYWRpbmVzcy4gRGVmYXVsdHMgdG8gMjAgbWludXRlcy4gKi9cbiAgdGltZW91dE1zPzogbnVtYmVyO1xufVxuXG4vKiogQSBmdWxseSByZXNvbHZlZCBpbmRleCBlbnRyeSAodGhlIHBsdWdpbi1rbm93biBmb3JtKS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVzb2x2ZWRJbmRleENvbmZpZyB7XG4gIG5hbWU6IHN0cmluZztcbiAgYWxpYXM6IHN0cmluZztcbiAgcHJpbWFyeUtleT86IHN0cmluZztcbiAgY29sdW1ucz86IHN0cmluZ1tdO1xufVxuXG4vKiogVGhlIGNvbmNyZXRlIGNvbmZpZyB0aGUgcnVudGltZSwgY2xpZW50LCB0b29scywgYW5kIHJvdXRlcyByZWFkLiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXNvbHZlZFNlYXJjaENvbmZpZyB7XG4gIGRlZmF1bHRJbmRleD86IHN0cmluZztcbiAgaW5kZXhlczogUmVzb2x2ZWRJbmRleENvbmZpZ1tdO1xuICBlbmRwb2ludD86IHN0cmluZztcbiAgY29sdW1ucz86IHN0cmluZ1tdO1xuICBwYWdlU2l6ZTogbnVtYmVyO1xuICBtb2RlOiBTZWFyY2hNb2RlO1xuICBlbWJlZGRpbmdNb2RlbD86IHN0cmluZztcbiAgYmFzZVBhdGg6IHN0cmluZztcbiAgdGltZW91dE1zOiBudW1iZXI7XG4gIGFsbG93V3JpdGU6IGJvb2xlYW47XG4gIGVuc3VyZU9uU2V0dXA/OiBFbnN1cmVPblNldHVwQ29uZmlnO1xufVxuXG4vKiogSlNPTiBTY2hlbWEgdGhlIHBsdWdpbiBtYW5pZmVzdCBwdWJsaXNoZXMgZm9yIHtAbGluayBTZWFyY2hQbHVnaW5Db25maWd9LiAqL1xuZXhwb3J0IGNvbnN0IFNFQVJDSF9DT05GSUdfU0NIRU1BOiBKU09OU2NoZW1hNyA9IHtcbiAgdHlwZTogXCJvYmplY3RcIixcbiAgYWRkaXRpb25hbFByb3BlcnRpZXM6IHRydWUsXG4gIHByb3BlcnRpZXM6IHtcbiAgICBpbmRleDoge1xuICAgICAgdHlwZTogXCJzdHJpbmdcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkRlZmF1bHQgaW5kZXggdG8gc2VhcmNoIChjYXRhbG9nLnNjaGVtYS5pbmRleCBvciBhIGNvbmZpZ3VyZWQgYWxpYXMpLlwiLFxuICAgIH0sXG4gICAgaW5kZXhlczoge1xuICAgICAgdHlwZTogXCJhcnJheVwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiSW5kZXhlcyB0aGUgcGx1Z2luIGtub3dzIGFib3V0LCBmb3IgYWxpYXNlcywgdW5pdmVyc2FsIHNlYXJjaCwgYW5kIHRoZSBVSS5cIixcbiAgICAgIGl0ZW1zOiB7XG4gICAgICAgIG9uZU9mOiBbXG4gICAgICAgICAgeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgdHlwZTogXCJvYmplY3RcIixcbiAgICAgICAgICAgIHJlcXVpcmVkOiBbXCJuYW1lXCJdLFxuICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICBuYW1lOiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgICAgICAgYWxpYXM6IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICAgICAgICBwcmltYXJ5S2V5OiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgICAgICAgY29sdW1uczogeyB0eXBlOiBcImFycmF5XCIsIGl0ZW1zOiB7IHR5cGU6IFwic3RyaW5nXCIgfSB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfSxcbiAgICB9LFxuICAgIGVuZHBvaW50OiB7XG4gICAgICB0eXBlOiBcInN0cmluZ1wiLFxuICAgICAgZGVzY3JpcHRpb246IFwiVmVjdG9yIFNlYXJjaCBzZXJ2aW5nIGVuZHBvaW50IGluZGV4ZXMgbGl2ZSBvbiAobmVlZGVkIG9ubHkgdG8gY3JlYXRlIG9uZSkuXCIsXG4gICAgfSxcbiAgICBjb2x1bW5zOiB7XG4gICAgICB0eXBlOiBcImFycmF5XCIsXG4gICAgICBpdGVtczogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICBkZXNjcmlwdGlvbjogXCJEZWZhdWx0IGNvbHVtbnMgdG8gcmV0dXJuLlwiLFxuICAgIH0sXG4gICAgcGFnZVNpemU6IHsgdHlwZTogXCJudW1iZXJcIiwgZGVzY3JpcHRpb246IFwiRGVmYXVsdCBudW1iZXIgb2YgaGl0cyBwZXIgc2VhcmNoLlwiIH0sXG4gICAgbW9kZTogeyBlbnVtOiBbXCJoeWJyaWRcIiwgXCJ2ZWN0b3JcIiwgXCJrZXl3b3JkXCJdLCBkZXNjcmlwdGlvbjogXCJEZWZhdWx0IG1hdGNoIG1vZGUuXCIgfSxcbiAgICBlbWJlZGRpbmdNb2RlbDoge1xuICAgICAgdHlwZTogXCJzdHJpbmdcIixcbiAgICAgIGRlc2NyaXB0aW9uOiBcIkVtYmVkZGluZyBlbmRwb2ludCB1c2VkIHdoZW4gY3JlYXRpbmcgYSBEZWx0YSBTeW5jIGluZGV4IChmdXp6eS1tYXRjaGVkKS5cIixcbiAgICB9LFxuICAgIHRpbWVvdXRNczogeyB0eXBlOiBcIm51bWJlclwiLCBkZXNjcmlwdGlvbjogXCJQZXItY2FsbCB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcy5cIiB9LFxuICAgIGFsbG93V3JpdGU6IHtcbiAgICAgIHR5cGU6IFwiYm9vbGVhblwiLFxuICAgICAgZGVzY3JpcHRpb246IFwiRW5hYmxlIHRoZSBkb2N1bWVudCB3cml0ZSBzdXJmYWNlIChhZGRfZG9jdW1lbnRzIHRvb2wgKyByb3V0ZSkuXCIsXG4gICAgfSxcbiAgICBlbnN1cmVPblNldHVwOiB7XG4gICAgICB0eXBlOiBcIm9iamVjdFwiLFxuICAgICAgZGVzY3JpcHRpb246XG4gICAgICAgIFwiUHJvdmlzaW9uIGEgcmVhbCBpbmRleCBhdCBib290OiBlbnN1cmUgdGhlIGVuZHBvaW50ICsgaW5kZXggZXhpc3QgYW5kIHNlZWQgXCIgK1xuICAgICAgICBcImRvY3VtZW50cyB3aGVuIGVtcHR5LiBSdW5zIGluIHRoZSBiYWNrZ3JvdW5kIGR1cmluZyBzZXR1cCB1c2luZyBib290LXRpbWUgYXV0aC5cIixcbiAgICAgIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB0cnVlLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBpbmRleDogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgIGVuZHBvaW50OiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgcHJpbWFyeUtleTogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgIHRleHRDb2x1bW46IHsgdHlwZTogXCJzdHJpbmdcIiB9LFxuICAgICAgICBlbWJlZGRpbmdNb2RlbDogeyB0eXBlOiBcInN0cmluZ1wiIH0sXG4gICAgICAgIHNvdXJjZVRhYmxlOiB7IHR5cGU6IFwic3RyaW5nXCIgfSxcbiAgICAgICAgc2NoZW1hOiB7IHR5cGU6IFwib2JqZWN0XCIsIGFkZGl0aW9uYWxQcm9wZXJ0aWVzOiB7IHR5cGU6IFwic3RyaW5nXCIgfSB9LFxuICAgICAgICBkb2N1bWVudHM6IHsgdHlwZTogXCJhcnJheVwiLCBpdGVtczogeyB0eXBlOiBcIm9iamVjdFwiLCBhZGRpdGlvbmFsUHJvcGVydGllczogdHJ1ZSB9IH0sXG4gICAgICAgIHRpbWVvdXRNczogeyB0eXBlOiBcIm51bWJlclwiIH0sXG4gICAgICB9LFxuICAgIH0sXG4gIH0sXG59O1xuXG4vKiogRGVyaXZlIHRoZSBkZWZhdWx0IGFsaWFzIGZvciBhbiBpbmRleCBuYW1lIChpdHMgbGFzdCBkb3R0ZWQgc2VnbWVudCkuICovXG5leHBvcnQgZnVuY3Rpb24gZGVmYXVsdEFsaWFzKG5hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IHNlZ21lbnRzID0gbmFtZS5zcGxpdChcIi5cIikuZmlsdGVyKEJvb2xlYW4pO1xuICByZXR1cm4gc2VnbWVudHMubGVuZ3RoID4gMCA/IHNlZ21lbnRzW3NlZ21lbnRzLmxlbmd0aCAtIDFdIDogbmFtZTtcbn1cblxuLyoqIE5vcm1hbGl6ZSBhIGNvbmZpZyBpbmRleCBlbnRyeSAoc3RyaW5nIG9yIG9iamVjdCkgaW50byBhIHtAbGluayBSZXNvbHZlZEluZGV4Q29uZmlnfS4gKi9cbmZ1bmN0aW9uIHRvUmVzb2x2ZWRJbmRleChlbnRyeTogc3RyaW5nIHwgU2VhcmNoSW5kZXhDb25maWcpOiBSZXNvbHZlZEluZGV4Q29uZmlnIHwgbnVsbCB7XG4gIGNvbnN0IHJhdyA9IHR5cGVvZiBlbnRyeSA9PT0gXCJzdHJpbmdcIiA/IHsgbmFtZTogZW50cnkgfSA6IGVudHJ5O1xuICBjb25zdCBuYW1lID0gc3RyaW5nLnRyaW1Ub051bGwocmF3Lm5hbWUpO1xuICBpZiAobmFtZSA9PT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gIHJldHVybiB7XG4gICAgbmFtZSxcbiAgICBhbGlhczogc3RyaW5nLnRyaW1Ub051bGwocmF3LmFsaWFzKSA/PyBkZWZhdWx0QWxpYXMobmFtZSksXG4gICAgLi4uKHJhdy5wcmltYXJ5S2V5ID8geyBwcmltYXJ5S2V5OiByYXcucHJpbWFyeUtleSB9IDoge30pLFxuICAgIC4uLihyYXcuY29sdW1ucyAmJiByYXcuY29sdW1ucy5sZW5ndGggPiAwID8geyBjb2x1bW5zOiBbLi4ucmF3LmNvbHVtbnNdIH0gOiB7fSksXG4gIH07XG59XG5cbi8qKiBQYXJzZSBhbmQgdmFsaWRhdGUgYSB7QGxpbmsgU2VhcmNoTW9kZX0gZnJvbSBjb25maWcgb3IgYW4gZW52IHZhci4gKi9cbmZ1bmN0aW9uIHJlc29sdmVNb2RlKGNvbmZpZ3VyZWQ6IFNlYXJjaE1vZGUgfCB1bmRlZmluZWQpOiBTZWFyY2hNb2RlIHtcbiAgY29uc3QgcmF3ID0gY29uZmlndXJlZCA/PyBjb3JlQ29uZmlnLnRleHQoXCJTRUFSQ0hfTU9ERVwiLCBjb3JlQ29uZmlnLkVOVl9PTkxZKTtcbiAgaWYgKHJhdyA9PT0gdW5kZWZpbmVkKSByZXR1cm4gREVGQVVMVF9NT0RFO1xuICBpZiAocmF3ICE9PSBcImh5YnJpZFwiICYmIHJhdyAhPT0gXCJ2ZWN0b3JcIiAmJiByYXcgIT09IFwia2V5d29yZFwiKSB7XG4gICAgdGhyb3cgbmV3IENvbmZpZ3VyYXRpb25FcnJvcihcbiAgICAgICdtb2RlIG11c3QgYmUgXCJoeWJyaWRcIiwgXCJ2ZWN0b3JcIiBvciBcImtleXdvcmRcIiAoZW52OiBTRUFSQ0hfTU9ERSknLFxuICAgICAgeyBjb250ZXh0OiB7IGZpZWxkOiBcIm1vZGVcIiwgZW52VmFyOiBcIlNFQVJDSF9NT0RFXCIgfSB9LFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIHJhdztcbn1cblxuLyoqXG4gKiBSZXNvbHZlIHBsdWdpbiBjb25maWcgb3ZlciBlbnZpcm9ubWVudCBkZWZhdWx0cyBpbnRvIHRoZSBjb25jcmV0ZVxuICoge0BsaW5rIFJlc29sdmVkU2VhcmNoQ29uZmlnfS4gVGhlIGRlZmF1bHQgaW5kZXggaXMgdW5pb25lZCBpbnRvIHRoZSBrbm93blxuICogaW5kZXhlcyBzbyBpdCBhbHdheXMgYXBwZWFycyBpbiB0aGUgY2F0YWxvZ3VlLCBhbGlhc2VzIGFyZSBkZS1kdXBsaWNhdGVkLFxuICogYW5kIGEgYmFkIG1vZGUgdGhyb3dzIGEge0BsaW5rIENvbmZpZ3VyYXRpb25FcnJvcn0gbmFtaW5nIHRoZSBmaWVsZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVTZWFyY2hDb25maWcoY29uZmlnOiBTZWFyY2hQbHVnaW5Db25maWcgPSB7fSk6IFJlc29sdmVkU2VhcmNoQ29uZmlnIHtcbiAgY29uc3QgZGVmYXVsdEluZGV4UmF3ID0gY29yZUNvbmZpZy5zdHJpbmcoXG4gICAgY29uZmlnLmluZGV4LFxuICAgIFtJTkRFWF9FTlYsIERBVEFCUklDS1NfSU5ERVhfRU5WXSxcbiAgICBjb3JlQ29uZmlnLkVOVl9PTkxZLFxuICApO1xuXG4gIGNvbnN0IGNvbmZpZ3VyZWQgPSAoY29uZmlnLmluZGV4ZXMgPz8gW10pXG4gICAgLm1hcCh0b1Jlc29sdmVkSW5kZXgpXG4gICAgLmZpbHRlcigoZW50cnkpOiBlbnRyeSBpcyBSZXNvbHZlZEluZGV4Q29uZmlnID0+IGVudHJ5ICE9PSBudWxsKTtcblxuICAvLyBFbnN1cmUgdGhlIGRlZmF1bHQgaW5kZXggaXMgcmVwcmVzZW50ZWQgaW4gdGhlIGtub3duIHNldC5cbiAgaWYgKGRlZmF1bHRJbmRleFJhdyAmJiAhY29uZmlndXJlZC5zb21lKChpKSA9PiBpLm5hbWUgPT09IGRlZmF1bHRJbmRleFJhdykpIHtcbiAgICBjb25zdCBlbnZDb2x1bW5zID0gY29yZUNvbmZpZy5saXN0KHVuZGVmaW5lZCwgXCJTRUFSQ0hfQ09MVU1OU1wiLCB1bmRlZmluZWQsIGNvcmVDb25maWcuRU5WX09OTFkpO1xuICAgIGNvbmZpZ3VyZWQudW5zaGlmdCh7XG4gICAgICBuYW1lOiBkZWZhdWx0SW5kZXhSYXcsXG4gICAgICBhbGlhczogZGVmYXVsdEFsaWFzKGRlZmF1bHRJbmRleFJhdyksXG4gICAgICAuLi4oZW52Q29sdW1ucy5sZW5ndGggPiAwID8geyBjb2x1bW5zOiBlbnZDb2x1bW5zIH0gOiB7fSksXG4gICAgfSk7XG4gIH1cblxuICBjb25zdCBzZWVuQWxpYXNlcyA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuICBjb25zdCBpbmRleGVzID0gY29uZmlndXJlZC5tYXAoKGVudHJ5KSA9PiB7XG4gICAgbGV0IGFsaWFzID0gZW50cnkuYWxpYXM7XG4gICAgd2hpbGUgKHNlZW5BbGlhc2VzLmhhcyhhbGlhcykpIGFsaWFzID0gYCR7YWxpYXN9X2A7XG4gICAgc2VlbkFsaWFzZXMuYWRkKGFsaWFzKTtcbiAgICByZXR1cm4geyAuLi5lbnRyeSwgYWxpYXMgfTtcbiAgfSk7XG5cbiAgY29uc3QgZGVmYXVsdEluZGV4ID0gZGVmYXVsdEluZGV4UmF3ID8/IGluZGV4ZXNbMF0/Lm5hbWU7XG4gIGNvbnN0IGNvbHVtbnMgPSBjb3JlQ29uZmlnLmxpc3QoY29uZmlnLmNvbHVtbnMsIFwiU0VBUkNIX0NPTFVNTlNcIiwgdW5kZWZpbmVkLCBjb3JlQ29uZmlnLkVOVl9PTkxZKTtcblxuICByZXR1cm4ge1xuICAgIC4uLm9iamVjdC5vcHRpb25hbChcImRlZmF1bHRJbmRleFwiLCBkZWZhdWx0SW5kZXgpLFxuICAgIGluZGV4ZXMsXG4gICAgLi4ub2JqZWN0Lm9wdGlvbmFsKFxuICAgICAgXCJlbmRwb2ludFwiLFxuICAgICAgY29yZUNvbmZpZy5zdHJpbmcoY29uZmlnLmVuZHBvaW50LCBFTkRQT0lOVF9FTlYsIGNvcmVDb25maWcuRU5WX09OTFkpLFxuICAgICksXG4gICAgLi4uKGNvbHVtbnMubGVuZ3RoID4gMCA/IHsgY29sdW1ucyB9IDoge30pLFxuICAgIHBhZ2VTaXplOiBjb3JlQ29uZmlnLnBvc2l0aXZlSW50KFxuICAgICAgY29uZmlnLnBhZ2VTaXplLFxuICAgICAgXCJTRUFSQ0hfUEFHRV9TSVpFXCIsXG4gICAgICBERUZBVUxUX1BBR0VfU0laRSxcbiAgICAgIGNvcmVDb25maWcuRU5WX09OTFksXG4gICAgKSxcbiAgICBtb2RlOiByZXNvbHZlTW9kZShjb25maWcubW9kZSksXG4gICAgLi4ub2JqZWN0Lm9wdGlvbmFsKFxuICAgICAgXCJlbWJlZGRpbmdNb2RlbFwiLFxuICAgICAgY29yZUNvbmZpZy5zdHJpbmcoY29uZmlnLmVtYmVkZGluZ01vZGVsLCBcIlNFQVJDSF9FTUJFRERJTkdfTU9ERUxcIiwgY29yZUNvbmZpZy5FTlZfT05MWSksXG4gICAgKSxcbiAgICBiYXNlUGF0aDogREVGQVVMVF9CQVNFX1BBVEgsXG4gICAgdGltZW91dE1zOiBjb3JlQ29uZmlnLnBvc2l0aXZlSW50KFxuICAgICAgY29uZmlnLnRpbWVvdXRNcyxcbiAgICAgIFwiU0VBUkNIX1RJTUVPVVRfTVNcIixcbiAgICAgIERFRkFVTFRfVElNRU9VVF9NUyxcbiAgICAgIGNvcmVDb25maWcuRU5WX09OTFksXG4gICAgKSxcbiAgICBhbGxvd1dyaXRlOiBjb3JlQ29uZmlnLmJvb2xlYW4oY29uZmlnLmFsbG93V3JpdGUsIFwiU0VBUkNIX1dSSVRFXCIsIGNvcmVDb25maWcuRU5WX09OTFkpID8/IGZhbHNlLFxuICAgIC4uLihjb25maWcuZW5zdXJlT25TZXR1cCA/IHsgZW5zdXJlT25TZXR1cDogY29uZmlnLmVuc3VyZU9uU2V0dXAgfSA6IHt9KSxcbiAgfTtcbn1cblxuLyoqXG4gKiBSZXNvbHZlIGEgY2FsbGVyLXN1cHBsaWVkIGluZGV4IHJlZmVyZW5jZSAoYSBmdWxsIFVDIG5hbWUgb3IgYSBjb25maWd1cmVkXG4gKiBhbGlhcykgaW50byBhIGNvbmNyZXRlIGluZGV4IG5hbWUuIEZhbGxzIGJhY2sgdG8gdGhlIGRlZmF1bHQgaW5kZXggd2hlbiB0aGVcbiAqIHJlZmVyZW5jZSBpcyBlbXB0eS4gUmV0dXJucyBgbnVsbGAgd2hlbiBub3RoaW5nIGNhbiBiZSByZXNvbHZlZCBzbyBjYWxsZXJzXG4gKiByYWlzZSBhIHN0YWJsZSwgdXNlci1mYWNpbmcgZXJyb3IgcmF0aGVyIHRoYW4gY2FsbGluZyBhIHBoYW50b20gaW5kZXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXNvbHZlSW5kZXhOYW1lKFxuICBjb25maWc6IFJlc29sdmVkU2VhcmNoQ29uZmlnLFxuICByZWZlcmVuY2U6IHN0cmluZyB8IHVuZGVmaW5lZCxcbik6IHN0cmluZyB8IG51bGwge1xuICBjb25zdCByZWYgPSBzdHJpbmcudHJpbVRvTnVsbChyZWZlcmVuY2UpO1xuICBpZiAocmVmID09PSBudWxsKSByZXR1cm4gY29uZmlnLmRlZmF1bHRJbmRleCA/PyBudWxsO1xuICBjb25zdCBieUFsaWFzID0gY29uZmlnLmluZGV4ZXMuZmluZCgoaSkgPT4gaS5hbGlhcyA9PT0gcmVmIHx8IGkubmFtZSA9PT0gcmVmKTtcbiAgaWYgKGJ5QWxpYXMpIHJldHVybiBieUFsaWFzLm5hbWU7XG4gIC8vIEFjY2VwdCBhbiB1bnJlZ2lzdGVyZWQgYnV0IGZ1bGx5LXF1YWxpZmllZCBVQyBuYW1lICh0aHJlZSBkb3R0ZWQgcGFydHMpLlxuICBpZiAocmVmLnNwbGl0KFwiLlwiKS5maWx0ZXIoQm9vbGVhbikubGVuZ3RoID09PSAzKSByZXR1cm4gcmVmO1xuICByZXR1cm4gY29uZmlnLmRlZmF1bHRJbmRleCA/PyBudWxsO1xufVxuXG4vKiogVGhlIGtub3duIGNvbmZpZyBmb3IgYW4gaW5kZXggbmFtZSwgd2hlbiB0aGUgcGx1Z2luIHdhcyB0b2xkIGFib3V0IGl0LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGluZGV4Q29uZmlnRm9yKFxuICBjb25maWc6IFJlc29sdmVkU2VhcmNoQ29uZmlnLFxuICBuYW1lOiBzdHJpbmcsXG4pOiBSZXNvbHZlZEluZGV4Q29uZmlnIHwgdW5kZWZpbmVkIHtcbiAgcmV0dXJuIGNvbmZpZy5pbmRleGVzLmZpbmQoKGkpID0+IGkubmFtZSA9PT0gbmFtZSB8fCBpLmFsaWFzID09PSBuYW1lKTtcbn1cbiJdfQ==
|
package/package.json
CHANGED
|
@@ -28,12 +28,12 @@
|
|
|
28
28
|
"dependencies": {
|
|
29
29
|
"@databricks/appkit": "^0.43.0",
|
|
30
30
|
"@databricks/sdk-experimental": "^0.17.0",
|
|
31
|
-
"@dbx-tools/appkit": "0.6.
|
|
32
|
-
"@dbx-tools/core": "0.6.
|
|
33
|
-
"@dbx-tools/model": "0.6.
|
|
34
|
-
"@dbx-tools/shared-core": "0.6.
|
|
35
|
-
"@dbx-tools/shared-model": "0.6.
|
|
36
|
-
"@dbx-tools/shared-search": "0.6.
|
|
31
|
+
"@dbx-tools/appkit": "0.6.91",
|
|
32
|
+
"@dbx-tools/core": "0.6.91",
|
|
33
|
+
"@dbx-tools/model": "0.6.91",
|
|
34
|
+
"@dbx-tools/shared-core": "0.6.91",
|
|
35
|
+
"@dbx-tools/shared-model": "0.6.91",
|
|
36
|
+
"@dbx-tools/shared-search": "0.6.91",
|
|
37
37
|
"@mastra/core": "^1.47.0",
|
|
38
38
|
"pg": "^8.22.0",
|
|
39
39
|
"zod": "4.3.6"
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"./package.json": "./package.json"
|
|
53
53
|
}
|
|
54
54
|
},
|
|
55
|
-
"version": "0.6.
|
|
55
|
+
"version": "0.6.91",
|
|
56
56
|
"types": "./lib/index.d.ts",
|
|
57
57
|
"type": "module",
|
|
58
58
|
"exports": {
|
package/src/config.ts
CHANGED
|
@@ -268,12 +268,7 @@ export function resolveSearchConfig(config: SearchPluginConfig = {}): ResolvedSe
|
|
|
268
268
|
|
|
269
269
|
// Ensure the default index is represented in the known set.
|
|
270
270
|
if (defaultIndexRaw && !configured.some((i) => i.name === defaultIndexRaw)) {
|
|
271
|
-
const envColumns = coreConfig.list(
|
|
272
|
-
undefined,
|
|
273
|
-
"SEARCH_COLUMNS",
|
|
274
|
-
undefined,
|
|
275
|
-
coreConfig.ENV_ONLY,
|
|
276
|
-
);
|
|
271
|
+
const envColumns = coreConfig.list(undefined, "SEARCH_COLUMNS", undefined, coreConfig.ENV_ONLY);
|
|
277
272
|
configured.unshift({
|
|
278
273
|
name: defaultIndexRaw,
|
|
279
274
|
alias: defaultAlias(defaultIndexRaw),
|
|
@@ -290,12 +285,7 @@ export function resolveSearchConfig(config: SearchPluginConfig = {}): ResolvedSe
|
|
|
290
285
|
});
|
|
291
286
|
|
|
292
287
|
const defaultIndex = defaultIndexRaw ?? indexes[0]?.name;
|
|
293
|
-
const columns = coreConfig.list(
|
|
294
|
-
config.columns,
|
|
295
|
-
"SEARCH_COLUMNS",
|
|
296
|
-
undefined,
|
|
297
|
-
coreConfig.ENV_ONLY,
|
|
298
|
-
);
|
|
288
|
+
const columns = coreConfig.list(config.columns, "SEARCH_COLUMNS", undefined, coreConfig.ENV_ONLY);
|
|
299
289
|
|
|
300
290
|
return {
|
|
301
291
|
...object.optional("defaultIndex", defaultIndex),
|
|
@@ -323,8 +313,7 @@ export function resolveSearchConfig(config: SearchPluginConfig = {}): ResolvedSe
|
|
|
323
313
|
DEFAULT_TIMEOUT_MS,
|
|
324
314
|
coreConfig.ENV_ONLY,
|
|
325
315
|
),
|
|
326
|
-
allowWrite:
|
|
327
|
-
coreConfig.boolean(config.allowWrite, "SEARCH_WRITE", coreConfig.ENV_ONLY) ?? false,
|
|
316
|
+
allowWrite: coreConfig.boolean(config.allowWrite, "SEARCH_WRITE", coreConfig.ENV_ONLY) ?? false,
|
|
328
317
|
...(config.ensureOnSetup ? { ensureOnSetup: config.ensureOnSetup } : {}),
|
|
329
318
|
};
|
|
330
319
|
}
|