@mnaoumov/obsidian-lib 3.0.0 → 3.2.0
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/dist/lib/cjs/__merged.cjs +3 -1
- package/dist/lib/cjs/__merged.d.cts +1 -1
- package/dist/lib/cjs/attachment-path.cjs +8 -5
- package/dist/lib/cjs/attachment-path.d.cts +4 -4
- package/dist/lib/cjs/attachment-unit-folder.cjs +1 -1
- package/dist/lib/cjs/attachment-unit-folder.d.cts +3 -3
- package/dist/lib/cjs/callout.cjs +1 -1
- package/dist/lib/cjs/callout.d.cts +2 -2
- package/dist/lib/cjs/canvas.cjs +1 -1
- package/dist/lib/cjs/components/notebook-navigator-menu-event-registrar-component.cjs +9 -9
- package/dist/lib/cjs/components/notebook-navigator-menu-event-registrar-component.d.cts +14 -14
- package/dist/lib/cjs/components/plugin-gate-component.cjs +3 -3
- package/dist/lib/cjs/components/plugin-gate-component.d.cts +8 -2
- package/dist/lib/cjs/components/plugin-suggestion-component.cjs +4 -3
- package/dist/lib/cjs/components/plugin-suggestion-component.d.cts +5 -1
- package/dist/lib/cjs/components/rename-delete-handler-component.cjs +1 -1
- package/dist/lib/cjs/dataview-link.cjs +1 -1
- package/dist/lib/cjs/dataview-link.d.cts +1 -1
- package/dist/lib/cjs/dataview.cjs +1 -1
- package/dist/lib/cjs/dataview.d.cts +8 -8
- package/dist/lib/cjs/demo-vault-helper-settings.cjs +1 -1
- package/dist/lib/cjs/demo-vault-helper-settings.d.cts +1 -1
- package/dist/lib/cjs/demo-vault-helper.cjs +1 -1
- package/dist/lib/cjs/demo-vault-helper.d.cts +11 -11
- package/dist/lib/cjs/file-system.cjs +1 -1
- package/dist/lib/cjs/file-system.d.cts +2 -2
- package/dist/lib/cjs/folder-note.cjs +1 -1
- package/dist/lib/cjs/generated-during-build.cjs +1 -1
- package/dist/lib/cjs/html-element.cjs +6 -1
- package/dist/lib/cjs/html-element.d.cts +11 -0
- package/dist/lib/cjs/loop.cjs +3 -2
- package/dist/lib/cjs/loop.d.cts +4 -1
- package/dist/lib/cjs/metadata-cache.cjs +2 -2
- package/dist/lib/cjs/metadata-cache.d.cts +6 -6
- package/dist/lib/cjs/note-priority.cjs +1 -1
- package/dist/lib/cjs/note-priority.d.cts +1 -1
- package/dist/lib/cjs/notebook-navigator.cjs +1 -1
- package/dist/lib/cjs/notebook-navigator.d.cts +12 -12
- package/dist/lib/cjs/plugin/plugin.cjs +2 -2
- package/dist/lib/cjs/plugin/plugin.d.cts +1 -1
- package/dist/lib/cjs/templater.cjs +4 -4
- package/dist/lib/cjs/templater.d.cts +35 -35
- package/dist/lib/esm/__merged.d.mts +1 -1
- package/dist/lib/esm/__merged.mjs +3 -1
- package/dist/lib/esm/attachment-path.d.mts +4 -4
- package/dist/lib/esm/attachment-path.mjs +8 -5
- package/dist/lib/esm/attachment-unit-folder.d.mts +3 -3
- package/dist/lib/esm/attachment-unit-folder.mjs +1 -1
- package/dist/lib/esm/callout.d.mts +2 -2
- package/dist/lib/esm/callout.mjs +1 -1
- package/dist/lib/esm/canvas.mjs +1 -1
- package/dist/lib/esm/components/notebook-navigator-menu-event-registrar-component.d.mts +14 -14
- package/dist/lib/esm/components/notebook-navigator-menu-event-registrar-component.mjs +9 -9
- package/dist/lib/esm/components/plugin-gate-component.d.mts +8 -2
- package/dist/lib/esm/components/plugin-gate-component.mjs +4 -3
- package/dist/lib/esm/components/plugin-suggestion-component.d.mts +5 -1
- package/dist/lib/esm/components/plugin-suggestion-component.mjs +4 -3
- package/dist/lib/esm/components/rename-delete-handler-component.mjs +1 -1
- package/dist/lib/esm/dataview-link.d.mts +1 -1
- package/dist/lib/esm/dataview-link.mjs +1 -1
- package/dist/lib/esm/dataview.d.mts +8 -8
- package/dist/lib/esm/dataview.mjs +1 -1
- package/dist/lib/esm/demo-vault-helper-settings.d.mts +1 -1
- package/dist/lib/esm/demo-vault-helper.d.mts +11 -11
- package/dist/lib/esm/demo-vault-helper.mjs +1 -1
- package/dist/lib/esm/file-system.d.mts +2 -2
- package/dist/lib/esm/file-system.mjs +1 -1
- package/dist/lib/esm/folder-note.mjs +1 -1
- package/dist/lib/esm/generated-during-build.mjs +1 -1
- package/dist/lib/esm/html-element.d.mts +11 -0
- package/dist/lib/esm/html-element.mjs +5 -1
- package/dist/lib/esm/loop.d.mts +4 -1
- package/dist/lib/esm/loop.mjs +3 -2
- package/dist/lib/esm/metadata-cache.d.mts +6 -6
- package/dist/lib/esm/metadata-cache.mjs +2 -2
- package/dist/lib/esm/note-priority.d.mts +1 -1
- package/dist/lib/esm/note-priority.mjs +1 -1
- package/dist/lib/esm/notebook-navigator.d.mts +12 -12
- package/dist/lib/esm/notebook-navigator.mjs +1 -1
- package/dist/lib/esm/plugin/plugin.d.mts +1 -1
- package/dist/lib/esm/plugin/plugin.mjs +2 -2
- package/dist/lib/esm/templater.d.mts +35 -35
- package/dist/lib/esm/templater.mjs +4 -4
- package/package.json +1 -1
|
@@ -121,11 +121,11 @@ async function parseTemplate(params) {
|
|
|
121
121
|
renderTargetFiles.push(targetFile);
|
|
122
122
|
try {
|
|
123
123
|
return await api.read_and_parse_template({
|
|
124
|
-
// eslint-disable-next-line camelcase -- Templater API.
|
|
124
|
+
// eslint-disable-next-line camelcase -- `Templater` API.
|
|
125
125
|
run_mode: 4 /* DynamicProcessor */,
|
|
126
|
-
// eslint-disable-next-line camelcase -- Templater API.
|
|
126
|
+
// eslint-disable-next-line camelcase -- `Templater` API.
|
|
127
127
|
target_file: targetFile,
|
|
128
|
-
// eslint-disable-next-line camelcase -- Templater API.
|
|
128
|
+
// eslint-disable-next-line camelcase -- `Templater` API.
|
|
129
129
|
template_file: templateFile
|
|
130
130
|
});
|
|
131
131
|
} finally {
|
|
@@ -170,4 +170,4 @@ export {
|
|
|
170
170
|
requireTemplaterApi,
|
|
171
171
|
resolveTemplaterApi
|
|
172
172
|
};
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3RlbXBsYXRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoZSBzbGljZSBvZiBUZW1wbGF0ZXIncyBJTlRFUk5BTCBBUEkgdGhpcyBsaWJyYXJ5IHRhbGtzIHRvLCBhbmQgdGhlIHJ1bnRpbWUgbmFycm93aW5nIHRoYXQgZ2V0cyBob2xkXG4gKiBvZiBpdC5cbiAqXG4gKiAqKlRlbXBsYXRlciBwdWJsaXNoZXMgbm8gQVBJLioqIFJlbmRlcmluZyBhIHRlbXBsYXRlIGFnYWluc3QgYSBmaWxlIGFuZCBnZXR0aW5nIHRoZSByZXN1bHRpbmcgc3RyaW5nXG4gKiBiYWNrIGlzIG9ubHkgcmVhY2hhYmxlIHRocm91Z2ggdW5kb2N1bWVudGVkIGludGVybmFscyBoYW5naW5nIG9mZlxuICogYGFwcC5wbHVnaW5zLmdldFBsdWdpbigndGVtcGxhdGVyLW9ic2lkaWFuJykudGVtcGxhdGVyYCBcdTIwMTQgYGNyZWF0ZV9ydW5uaW5nX2NvbmZpZ2AsXG4gKiBgZnVuY3Rpb25zX2dlbmVyYXRvci5nZW5lcmF0ZV9vYmplY3RgLCBgcmVhZF9hbmRfcGFyc2VfdGVtcGxhdGVgLCBhbmQgYSBgUnVuTW9kZWAgZW51bS4gRXZlcnkgcGx1Z2luXG4gKiB0aGF0IHdhbnRzIGl0IHJlLWRlcml2ZXMgdGhlIHNhbWUgcmV2ZXJzZSBlbmdpbmVlcmluZywgd2hpY2ggaXMgd2h5IGl0IGxpdmVzIGhlcmUgaW5zdGVhZC5cbiAqXG4gKiAqKlRoaXMgbW9kdWxlIGlzIGV4cGxpY2l0bHkgQkVTVC1FRkZPUlQuKiogTm90aGluZyBpdCBiaW5kcyB0byBpcyBkb2N1bWVudGVkIG9yIGNvdmVyZWQgYnkgVGVtcGxhdGVyJ3NcbiAqIHNlbWFudGljIHZlcnNpb25pbmcsIHNvIGEgVGVtcGxhdGVyIHJlbGVhc2UgbWF5IHJlbmFtZSBvciByZXNoYXBlIGFueSBvZiBpdCB3aXRob3V0IHdhcm5pbmcuIFRoZSBzaGFwZXNcbiAqIGJlbG93IHdlcmUgcmVhZCBmcm9tIFRlbXBsYXRlciBgMi4yNC4zYC4gVHdvIGRlbGliZXJhdGUgY29uc2VxdWVuY2VzIGZvbGxvdzpcbiAqXG4gKiAtIHtAbGluayByZXNvbHZlVGVtcGxhdGVyQXBpfSByZXR1cm5zIGBudWxsYCBcdTIwMTQgYSBUZW1wbGF0ZXIgdG9vIG9sZCwgdG9vIG5ldyBvciB0b28gYnJva2VuIHRvIHRhbGsgdG9cbiAqICAgcmVhZHMgYXMgXCJub3QgdGhlcmVcIiBhbmQgdGhlIGludGVncmF0aW9uIHN0YXlzIGRvcm1hbnQuXG4gKiAtIHtAbGluayByZXF1aXJlVGVtcGxhdGVyQXBpfSB0aHJvd3MgYSB7QGxpbmsgVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvcn0gdGhhdCBOQU1FUyB0aGUgcGx1Z2luIGFuZCB0aGVcbiAqICAgcmVhc29uLCByYXRoZXIgdGhhbiBsZXR0aW5nIGEgYENhbm5vdCByZWFkIHByb3BlcnRpZXMgb2YgdW5kZWZpbmVkYCBzdXJmYWNlIGZyb20gc29tZXdoZXJlIGluc2lkZVxuICogICBUZW1wbGF0ZXIuXG4gKlxuICogVGhlIHR5cGVzIGFyZSBERUNMQVJFRCBIRVJFIHJhdGhlciB0aGFuIGltcG9ydGVkLCBhbmQgbmFycm93ZWQgdG8gdGhlIG1lbWJlcnMgYWN0dWFsbHkgY2FsbGVkOiBUZW1wbGF0ZXJcbiAqIHNoaXBzIG5vIG5wbSB0eXBlcyBwYWNrYWdlLCBhbmQgZGVwZW5kaW5nIG9uIGl0IHdvdWxkIHR1cm4gYW4gb3B0aW9uYWwgaW50ZWdyYXRpb24gaW50byBhIGJ1aWxkLXRpbWVcbiAqIGRlcGVuZGVuY3kuXG4gKlxuICogVGhlIHNlY29uZCB0aGluZyB0aGlzIG1vZHVsZSBzdXBwbGllcyBpcyBhbiBhY3RpdmUtZmlsZSBhbnN3ZXIuIFdoaWxlIGEgdGVtcGxhdGUgcmVuZGVycyxcbiAqIGBhcHAud29ya3NwYWNlLmdldEFjdGl2ZUZpbGUoKWAgc3RpbGwgcG9pbnRzIGF0IHdoYXRldmVyIHRoZSB1c2VyIGhhcHBlbnMgdG8gaGF2ZSBvcGVuIFx1MjAxNCBOT1QgYXQgdGhlIGZpbGVcbiAqIHRoZSB0ZW1wbGF0ZSBpcyBiZWluZyByZW5kZXJlZCBmb3IgXHUyMDE0IHNvIGEgcGx1Z2luJ3Mgb3duIGhlbHBlciBjYWxsZWQgZnJvbSBpbnNpZGUgYSB0ZW1wbGF0ZSByZXNvbHZlc1xuICogbGlua3MgYWdhaW5zdCB0aGUgd3Jvbmcgbm90ZS4ge0BsaW5rIFRlbXBsYXRlckFjdGl2ZUZpbGVQcm92aWRlcn0gYW5zd2VycyB3aXRoIHRoZSByZW5kZXIgdGFyZ2V0IGZvciB0aGVcbiAqIGR1cmF0aW9uIG9mIGEge0BsaW5rIHBhcnNlVGVtcGxhdGV9IGNhbGwgYW5kIGZhbGxzIGJhY2sgdG8gdGhlIHdvcmtzcGFjZSBvdGhlcndpc2UuIE5vdGUgdGhpcyBpcyBhYm91dFxuICogdGhlIENPTlNVTUVSJ3MgaGVscGVyczogVGVtcGxhdGVyJ3Mgb3duIGB0cC5maWxlLipgIGFscmVhZHkgcmVzb2x2ZXMgdGhyb3VnaCB0aGUgcnVubmluZyBjb25maWcnc1xuICogYHRhcmdldF9maWxlYCBhbmQgbmVlZHMgbm8gaGVscC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIEFwcCxcbiAgVEZpbGVcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL2ZpbGUtc3lzdGVtLnRzJztcblxuaW1wb3J0IHsgQXBwQWN0aXZlRmlsZVByb3ZpZGVyIH0gZnJvbSAnLi9hY3RpdmUtZmlsZS1wcm92aWRlci50cyc7XG5pbXBvcnQgeyBnZXRGaWxlIH0gZnJvbSAnLi9maWxlLXN5c3RlbS50cyc7XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGdldFRlbXBsYXRlckZ1bmN0aW9uc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VGVtcGxhdGVyRnVuY3Rpb25zUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBhcHA6IEFwcDtcblxuICAvKipcbiAgICogV2hldGhlciB0byByZXR1cm4gVGVtcGxhdGVyJ3MgYGN1cnJlbnRfZnVuY3Rpb25zX29iamVjdGAgd2hlbiBpdCBhbHJlYWR5IGhhcyBvbmUsIGluc3RlYWQgb2ZcbiAgICogZ2VuZXJhdGluZyBhIGZyZXNoIG9iamVjdC4gUmV1c2UgaXMgY2hlYXBlciBhbmQgZ2l2ZXMgdGhlIG9iamVjdCBvZiB0aGUgcmVuZGVyIGN1cnJlbnRseSBpbiBmbGlnaHQ7XG4gICAqIHBhc3MgYGZhbHNlYCB0byBmb3JjZSBhIG5ldyBvbmUgYnVpbHQgZm9yIGB0YXJnZXRQYXRoT3JGaWxlYC5cbiAgICpcbiAgICogQGRlZmF1bHQgYHRydWVgXG4gICAqL1xuICByZWFkb25seSBzaG91bGRSZXVzZUN1cnJlbnQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsZSB0aGUgZ2VuZXJhdGVkIGZ1bmN0aW9ucyBzaG91bGQgcmVzb2x2ZSBhZ2FpbnN0IFx1MjAxNCB3aGF0IGB0cC5maWxlLipgIHJlcG9ydHMuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRQYXRoT3JGaWxlOiBQYXRoT3JGaWxlO1xufVxuXG4vKipcbiAqIFBhcmFtZXRlcnMgZm9yIHtAbGluayBwYXJzZVRlbXBsYXRlfS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYXJzZVRlbXBsYXRlUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBhcHA6IEFwcDtcblxuICAvKipcbiAgICogVGhlIGZpbGUgdGhlIHRlbXBsYXRlIGlzIHJlbmRlcmVkIEZPUi4gSXQgaXMgd2hhdCBgdHAuZmlsZS4qYCByZXNvbHZlcyB0byBpbnNpZGUgdGhlIHRlbXBsYXRlLCBhbmRcbiAgICogd2hhdCB7QGxpbmsgVGVtcGxhdGVyQWN0aXZlRmlsZVByb3ZpZGVyfSByZXBvcnRzIGZvciB0aGUgZHVyYXRpb24gb2YgdGhlIGNhbGwuXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRQYXRoT3JGaWxlOiBQYXRoT3JGaWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgdGVtcGxhdGUgZmlsZSB0byByZW5kZXIuXG4gICAqL1xuICByZWFkb25seSB0ZW1wbGF0ZVBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG59XG5cbi8qKlxuICogVGVtcGxhdGVyJ3MgaW50ZXJuYWwgQVBJIG9iamVjdCwgbmFycm93ZWQgdG8gdGhlIG1lbWJlcnMgdGhpcyBsaWJyYXJ5IGNhbGxzLlxuICpcbiAqIEl0cyBtZW1iZXJzIGFyZSBgc25ha2VfY2FzZWAgYmVjYXVzZSBUZW1wbGF0ZXIncyBhcmU7IHRoZXkgYXJlIHRyYW5zY3JpYmVkIHJhdGhlciB0aGFuIHJlbmFtZWQgc28gdGhlXG4gKiBzaGFwZSBjYW4gYmUgY2hlY2tlZCBhZ2FpbnN0IFRlbXBsYXRlcidzIHNvdXJjZSBhdCBhIGdsYW5jZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZW1wbGF0ZXJBcGkge1xuICAvKipcbiAgICogQnVpbGRzIHRoZSB7QGxpbmsgVGVtcGxhdGVyUnVubmluZ0NvbmZpZ30gdGhhdCBkZXNjcmliZXMgb25lIHJlbmRlci5cbiAgICpcbiAgICogQHBhcmFtIHRlbXBsYXRlRmlsZSAtIFRoZSB0ZW1wbGF0ZSBiZWluZyByZW5kZXJlZCwgb3IgYHVuZGVmaW5lZGAgd2hlbiB0aGVyZSBpcyBub25lIChhcyB3aGVuIG9ubHlcbiAgICogdGhlIGZ1bmN0aW9ucyBvYmplY3QgaXMgd2FudGVkKS5cbiAgICogQHBhcmFtIHRhcmdldEZpbGUgLSBUaGUgZmlsZSB0aGUgcmVuZGVyIGlzIGZvci5cbiAgICogQHBhcmFtIHJ1bk1vZGUgLSBXaGljaCB7QGxpbmsgVGVtcGxhdGVyUnVuTW9kZX0gdGhlIHJlbmRlciBpcy5cbiAgICogQHJldHVybnMgVGhlIHJ1bm5pbmcgY29uZmlnLlxuICAgKi9cbiAgY3JlYXRlX3J1bm5pbmdfY29uZmlnOiAodGVtcGxhdGVGaWxlOiBURmlsZSB8IHVuZGVmaW5lZCwgdGFyZ2V0RmlsZTogVEZpbGUsIHJ1bk1vZGU6IFRlbXBsYXRlclJ1bk1vZGUpID0+IFRlbXBsYXRlclJ1bm5pbmdDb25maWc7XG5cbiAgLyoqXG4gICAqIFRoZSBmdW5jdGlvbnMgb2JqZWN0IChgdHBgKSBvZiB0aGUgcmVuZGVyIGN1cnJlbnRseSBpbiBmbGlnaHQsIHdoZW4gdGhlcmUgaXMgb25lLlxuICAgKi9cbiAgY3VycmVudF9mdW5jdGlvbnNfb2JqZWN0Pzogb2JqZWN0IHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIGZ1bmN0aW9ucyBvYmplY3QgKGB0cGApIGEgdGVtcGxhdGUgaXMgZXZhbHVhdGVkIGFnYWluc3QuXG4gICAqL1xuICBmdW5jdGlvbnNfZ2VuZXJhdG9yOiBUZW1wbGF0ZXJGdW5jdGlvbnNHZW5lcmF0b3I7XG5cbiAgLyoqXG4gICAqIFJlYWRzIHRoZSBjb25maWcncyBgdGVtcGxhdGVfZmlsZWAgYW5kIHJlbmRlcnMgaXQsIHJldHVybmluZyB0aGUgcmVzdWx0aW5nIHRleHQuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWcgLSBUaGUge0BsaW5rIFRlbXBsYXRlclJ1bm5pbmdDb25maWd9IGRlc2NyaWJpbmcgdGhlIHJlbmRlci4gVGVtcGxhdGVyIHRocm93cyB3aGVuIGl0c1xuICAgKiBgdGVtcGxhdGVfZmlsZWAgaXMgbm90IGEgYFRGaWxlYC5cbiAgICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gcmVzb2x2aW5nIHRvIHRoZSByZW5kZXJlZCB0ZXh0LlxuICAgKi9cbiAgcmVhZF9hbmRfcGFyc2VfdGVtcGxhdGU6IChjb25maWc6IFRlbXBsYXRlclJ1bm5pbmdDb25maWcpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyoqXG4gKiBUaGUgYGZ1bmN0aW9uc19nZW5lcmF0b3JgIGhhbGYgb2Yge0BsaW5rIFRlbXBsYXRlckFwaX0uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGVtcGxhdGVyRnVuY3Rpb25zR2VuZXJhdG9yIHtcbiAgLyoqXG4gICAqIEJ1aWxkcyB0aGUgZnVuY3Rpb25zIG9iamVjdCAoYHRwYCkgZm9yIGEgcnVubmluZyBjb25maWcuXG4gICAqXG4gICAqIEBwYXJhbSBjb25maWcgLSBUaGUge0BsaW5rIFRlbXBsYXRlclJ1bm5pbmdDb25maWd9IHRvIGJ1aWxkIGZvci5cbiAgICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gcmVzb2x2aW5nIHRvIHRoZSBmdW5jdGlvbnMgb2JqZWN0LlxuICAgKi9cbiAgZ2VuZXJhdGVfb2JqZWN0OiAoY29uZmlnOiBUZW1wbGF0ZXJSdW5uaW5nQ29uZmlnKSA9PiBQcm9taXNlPG9iamVjdD47XG59XG5cbi8qKlxuICogT25lIFRlbXBsYXRlciByZW5kZXIsIGFzIFRlbXBsYXRlcidzIGBjcmVhdGVfcnVubmluZ19jb25maWdgIGRlc2NyaWJlcyBpdC5cbiAqXG4gKiBJdHMgbWVtYmVycyBhcmUgYHNuYWtlX2Nhc2VgIGJlY2F1c2UgVGVtcGxhdGVyJ3MgYXJlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRlbXBsYXRlclJ1bm5pbmdDb25maWcge1xuICAvKipcbiAgICogVGhlIGZpbGUgVGVtcGxhdGVyIGNvbnNpZGVycyBhY3RpdmUuIFRlbXBsYXRlciBmaWxscyB0aGlzIGluIGl0c2VsZiBmcm9tXG4gICAqIGB3b3Jrc3BhY2UuYWN0aXZlRWRpdG9yPy5maWxlID8/IHdvcmtzcGFjZS5nZXRBY3RpdmVGaWxlKClgOyBpdCBpcyBvcHRpb25hbCBoZXJlIGJlY2F1c2UgYVxuICAgKiBoYW5kLWJ1aWx0IGNvbmZpZyBtYXkgb21pdCBpdC5cbiAgICovXG4gIGFjdGl2ZV9maWxlPzogbnVsbCB8IFRGaWxlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGljaCB7QGxpbmsgVGVtcGxhdGVyUnVuTW9kZX0gdGhlIHJlbmRlciBpcy5cbiAgICovXG4gIHJ1bl9tb2RlOiBUZW1wbGF0ZXJSdW5Nb2RlO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsZSB0aGUgcmVuZGVyIGlzIGZvciBcdTIwMTQgd2hhdCBgdHAuZmlsZS4qYCByZXNvbHZlcyB0by5cbiAgICovXG4gIHRhcmdldF9maWxlOiBURmlsZTtcblxuICAvKipcbiAgICogVGhlIHRlbXBsYXRlIGJlaW5nIHJlbmRlcmVkLCB3aGVuIHRoZXJlIGlzIG9uZS5cbiAgICovXG4gIHRlbXBsYXRlX2ZpbGU/OiBURmlsZSB8IHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBUZW1wbGF0ZXIncyBwbHVnaW4gaWQsIGFzIGl0cyBtYW5pZmVzdCBkZWNsYXJlcyBpdC5cbiAqL1xuZXhwb3J0IGNvbnN0IFRFTVBMQVRFUl9QTFVHSU5fSUQgPSAndGVtcGxhdGVyLW9ic2lkaWFuJztcblxuLyogZXNsaW50LWRpc2FibGUgbm8tbWFnaWMtbnVtYmVycyAtLSBUaGVzZSBhcmUgVGVtcGxhdGVyJ3Mgb3duIGBSdW5Nb2RlYCB2YWx1ZXMsIHRyYW5zY3JpYmVkLiAqL1xuLyoqXG4gKiBUZW1wbGF0ZXIncyBgUnVuTW9kZWAgZW51bSwgd2hpY2ggc2F5cyB3aGF0IGtpbmQgb2YgcmVuZGVyIGEge0BsaW5rIFRlbXBsYXRlclJ1bm5pbmdDb25maWd9IGRlc2NyaWJlcy5cbiAqXG4gKiBUaGUgbnVtZXJpYyB2YWx1ZXMgQVJFIFRlbXBsYXRlcidzLCBhbmQgdGhlIG1lbWJlcnMgYXJlIGxpc3RlZCBpbiBpdHMgZGVjbGFyYXRpb24gb3JkZXIgc28gdGhlIHR3byBjYW5cbiAqIGJlIGNvbXBhcmVkIGxpbmUgZm9yIGxpbmUuIFRoZXkgYXJlIHdyaXR0ZW4gb3V0IGV4cGxpY2l0bHkgYWxsIHRoZSBzYW1lLCBiZWNhdXNlIHRoZXkgY3Jvc3MgaW50b1xuICogVGVtcGxhdGVyIGFzIGludGVnZXJzIFx1MjAxNCBuZXZlciByZW51bWJlciB0aGVtLlxuICovXG5leHBvcnQgZW51bSBUZW1wbGF0ZXJSdW5Nb2RlIHtcbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgdGVtcGxhdGUgaW50byBhIG5ld2x5IGNyZWF0ZWQgZmlsZS5cbiAgICovXG4gIENyZWF0ZU5ld0Zyb21UZW1wbGF0ZSA9IDAsXG5cbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgdGVtcGxhdGUgYW5kIGFwcGVuZCB0aGUgcmVzdWx0IHRvIHRoZSBhY3RpdmUgZmlsZS5cbiAgICovXG4gIEFwcGVuZEFjdGl2ZUZpbGUgPSAxLFxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIHRlbXBsYXRlIGFuZCBvdmVyd3JpdGUgYSBnaXZlbiBmaWxlIHdpdGggdGhlIHJlc3VsdC5cbiAgICovXG4gIE92ZXJ3cml0ZUZpbGUgPSAyLFxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIHRlbXBsYXRlIGFuZCBvdmVyd3JpdGUgdGhlIGFjdGl2ZSBmaWxlIHdpdGggdGhlIHJlc3VsdC5cbiAgICovXG4gIE92ZXJ3cml0ZUFjdGl2ZUZpbGUgPSAzLFxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIHRlbXBsYXRlIG9uIGRlbWFuZCwgZm9yIGEgY2FsbGVyIHRoYXQgd2FudHMgdGhlIHJlc3VsdGluZyB0ZXh0IHJhdGhlciB0aGFuIGEgZmlsZVxuICAgKiB3cml0dGVuLiBUaGlzIGlzIHdoYXQge0BsaW5rIHBhcnNlVGVtcGxhdGV9IHVzZXMuXG4gICAqL1xuICBEeW5hbWljUHJvY2Vzc29yID0gNCxcblxuICAvKipcbiAgICogUmVuZGVyIHRoZSB0ZW1wbGF0ZSBhcyBhIHN0YXJ0dXAgdGVtcGxhdGUuIHtAbGluayBnZXRUZW1wbGF0ZXJGdW5jdGlvbnN9IHVzZXMgaXQgZm9yIHRoZSB0aHJvd2F3YXlcbiAgICogY29uZmlnIGl0IGJ1aWxkcywgYmVjYXVzZSB0aGF0IGNvbmZpZyByZW5kZXJzIG5vdGhpbmcuXG4gICAqL1xuICBTdGFydHVwVGVtcGxhdGUgPSA1XG59XG4vKiBlc2xpbnQtZW5hYmxlIG5vLW1hZ2ljLW51bWJlcnMgLS0gVGhlc2UgYXJlIFRlbXBsYXRlcidzIG93biBgUnVuTW9kZWAgdmFsdWVzLCB0cmFuc2NyaWJlZC4gKi9cblxuLyoqXG4gKiBXaHkgVGVtcGxhdGVyJ3MgaW50ZXJuYWwgQVBJIGNvdWxkIG5vdCBiZSBoYW5kZWQgb3Zlci5cbiAqL1xuZXhwb3J0IGVudW0gVGVtcGxhdGVyVW5hdmFpbGFiaWxpdHlSZWFzb24ge1xuICAvKipcbiAgICogVGVtcGxhdGVyIGlzIG5vdCBpbnN0YWxsZWQsIG9yIGlzIGluc3RhbGxlZCBidXQgZGlzYWJsZWQuIE9ic2lkaWFuJ3MgYGdldFBsdWdpbmAgY2Fubm90IHRlbGwgdGhlIHR3b1xuICAgKiBhcGFydCBcdTIwMTQgaXQgcmV0dXJucyBub3RoaW5nIGVpdGhlciB3YXkuXG4gICAqL1xuICBOb3RMb2FkZWQgPSAnbm90TG9hZGVkJyxcblxuICAvKipcbiAgICogVGVtcGxhdGVyIGlzIGxvYWRlZCwgYnV0IGRvZXMgbm90IGV4cG9zZSB0aGUgaW50ZXJuYWxzIHRoaXMgbGlicmFyeSBjYWxscyBcdTIwMTQgaXQgaXMgdG9vIG9sZCwgdG9vIG5ldyxcbiAgICogb3IgaGFzIGJlZW4gcmVzaGFwZWQuXG4gICAqL1xuICBTaGFwZUNoYW5nZWQgPSAnc2hhcGVDaGFuZ2VkJ1xufVxuXG4vKipcbiAqIEFjdGl2ZS1maWxlIHByb3ZpZGVyIHRoYXQgYW5zd2VycyB3aXRoIHRoZSBmaWxlIGEge0BsaW5rIHBhcnNlVGVtcGxhdGV9IHJlbmRlciBpcyBjdXJyZW50bHkgZm9yLFxuICogZmFsbGluZyBiYWNrIHRvIHRoZSB3b3Jrc3BhY2UncyBhY3RpdmUgZmlsZSB3aGVuIG5vIHJlbmRlciBpcyBpbiBmbGlnaHQuXG4gKlxuICogVGhpcyBpcyB0aGUgcGllY2UgdGhhdCBtYWtlcyBhIGNvbnN1bWVyJ3Mgb3duIHRlbXBsYXRlIGhlbHBlcnMgcmVzb2x2ZSBhZ2FpbnN0IHRoZSByaWdodCBub3RlOiBkdXJpbmcgYVxuICogcmVuZGVyIHRoZSB3b3Jrc3BhY2Ugc3RpbGwgaGFzIHdoYXRldmVyIHRoZSB1c2VyIHdhcyBsb29raW5nIGF0IG9wZW4sIHdoaWNoIGlzIHJhcmVseSB0aGUgdGFyZ2V0LlxuICovXG5leHBvcnQgY2xhc3MgVGVtcGxhdGVyQWN0aXZlRmlsZVByb3ZpZGVyIGV4dGVuZHMgQXBwQWN0aXZlRmlsZVByb3ZpZGVyIHtcbiAgLyoqXG4gICAqIEdldHMgdGhlIGZpbGUgdGhlIGlubmVybW9zdCBpbi1mbGlnaHQge0BsaW5rIHBhcnNlVGVtcGxhdGV9IHJlbmRlciBpcyBmb3IsIG9yIHRoZSB3b3Jrc3BhY2UncyBhY3RpdmVcbiAgICogZmlsZSB3aGVuIHRoZXJlIGlzIG5vIHJlbmRlciBpbiBmbGlnaHQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSBhY3RpdmUgZmlsZSwgb3IgYG51bGxgIGlmIHRoZXJlIGlzIG5vbmUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0QWN0aXZlRmlsZSgpOiBudWxsIHwgVEZpbGUge1xuICAgIHJldHVybiBnZXRUZW1wbGF0ZXJSZW5kZXJUYXJnZXRGaWxlKCkgPz8gc3VwZXIuZ2V0QWN0aXZlRmlsZSgpO1xuICB9XG59XG5cbi8qKlxuICogVGhyb3duIHdoZW4gVGVtcGxhdGVyJ3MgaW50ZXJuYWwgQVBJIGNhbm5vdCBiZSBoYW5kZWQgb3ZlciwgY2FycnlpbmcgdGhlXG4gKiB7QGxpbmsgVGVtcGxhdGVyVW5hdmFpbGFiaWxpdHlSZWFzb259IHRoYXQgc2F5cyB3aHkuXG4gKi9cbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZXJVbmF2YWlsYWJsZUVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICAvKipcbiAgICogV2hpY2ggb2YgdGhlIHR3byBmYWlsdXJlcyBvY2N1cnJlZC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSByZWFzb246IFRlbXBsYXRlclVuYXZhaWxhYmlsaXR5UmVhc29uO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEge0BsaW5rIFRlbXBsYXRlclVuYXZhaWxhYmxlRXJyb3J9LlxuICAgKlxuICAgKiBAcGFyYW0gcmVhc29uIC0gV2h5IHRoZSBBUEkgaXMgdW5hdmFpbGFibGUuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IocmVhc29uOiBUZW1wbGF0ZXJVbmF2YWlsYWJpbGl0eVJlYXNvbikge1xuICAgIHN1cGVyKGBUaGUgaW50ZXJuYWwgQVBJIG9mIHRoZSBwbHVnaW4gXCIke1RFTVBMQVRFUl9QTFVHSU5fSUR9XCIgaXMgdW5hdmFpbGFibGU6ICR7cmVhc29ufS5gKTtcbiAgICB0aGlzLm5hbWUgPSAnVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvcic7XG4gICAgdGhpcy5yZWFzb24gPSByZWFzb247XG4gIH1cbn1cblxuLyoqXG4gKiBHZXRzIFRlbXBsYXRlcidzIGZ1bmN0aW9ucyBvYmplY3QgXHUyMDE0IHRoZSBgdHBgIGEgdGVtcGxhdGUgaXMgZXZhbHVhdGVkIGFnYWluc3QgXHUyMDE0IHNvIGEgY2FsbGVyIGNhbiBpbnZva2VcbiAqIGB0cC5kYXRlLm5vdygpYCwgYHRwLmZpbGUudGl0bGVgIGFuZCB0aGUgcmVzdCBvdXRzaWRlIGEgdGVtcGxhdGUuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSB7QGxpbmsgR2V0VGVtcGxhdGVyRnVuY3Rpb25zUGFyYW1zfS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHJlc29sdmluZyB0byB0aGUgZnVuY3Rpb25zIG9iamVjdC5cbiAqIEB0aHJvd3MgQSB7QGxpbmsgVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvcn0gd2hlbiBUZW1wbGF0ZXIgaXMgbm90IGxvYWRlZCBvciBpdHMgc2hhcGUgaGFzIGNoYW5nZWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRUZW1wbGF0ZXJGdW5jdGlvbnMocGFyYW1zOiBHZXRUZW1wbGF0ZXJGdW5jdGlvbnNQYXJhbXMpOiBQcm9taXNlPG9iamVjdD4ge1xuICBjb25zdCB7XG4gICAgYXBwLFxuICAgIHNob3VsZFJldXNlQ3VycmVudCA9IHRydWUsXG4gICAgdGFyZ2V0UGF0aE9yRmlsZVxuICB9ID0gcGFyYW1zO1xuICBjb25zdCBhcGkgPSByZXF1aXJlVGVtcGxhdGVyQXBpKGFwcCk7XG5cbiAgaWYgKHNob3VsZFJldXNlQ3VycmVudCAmJiBhcGkuY3VycmVudF9mdW5jdGlvbnNfb2JqZWN0KSB7XG4gICAgcmV0dXJuIGFwaS5jdXJyZW50X2Z1bmN0aW9uc19vYmplY3Q7XG4gIH1cblxuICBjb25zdCB0YXJnZXRGaWxlID0gZ2V0RmlsZSh7XG4gICAgYXBwLFxuICAgIHBhdGhPckZpbGU6IHRhcmdldFBhdGhPckZpbGVcbiAgfSk7XG4gIGNvbnN0IGNvbmZpZyA9IGFwaS5jcmVhdGVfcnVubmluZ19jb25maWcodW5kZWZpbmVkLCB0YXJnZXRGaWxlLCBUZW1wbGF0ZXJSdW5Nb2RlLlN0YXJ0dXBUZW1wbGF0ZSk7XG4gIHJldHVybiBhd2FpdCBhcGkuZnVuY3Rpb25zX2dlbmVyYXRvci5nZW5lcmF0ZV9vYmplY3QoY29uZmlnKTtcbn1cblxuLyoqXG4gKiBHZXRzIHRoZSBmaWxlIHRoZSBpbm5lcm1vc3QgaW4tZmxpZ2h0IHtAbGluayBwYXJzZVRlbXBsYXRlfSByZW5kZXIgaXMgZm9yLlxuICpcbiAqIFJlbmRlcnMgbmVzdCBcdTIwMTQgYSB0ZW1wbGF0ZSBtYXkgcmVuZGVyIGFub3RoZXIgXHUyMDE0IHNvIHRoZSBjYWxscyBmb3JtIGEgc3RhY2sgYW5kIHRoaXMgcmVwb3J0cyB0aGUgdG9wIG9mXG4gKiBpdC4gT3V0c2lkZSBhbnkgcmVuZGVyIGl0IGlzIGBudWxsYC5cbiAqXG4gKiBAcmV0dXJucyBUaGUgcmVuZGVyIHRhcmdldCwgb3IgYG51bGxgIHdoZW4gbm8gcmVuZGVyIGlzIGluIGZsaWdodC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFRlbXBsYXRlclJlbmRlclRhcmdldEZpbGUoKTogbnVsbCB8IFRGaWxlIHtcbiAgcmV0dXJuIHJlbmRlclRhcmdldEZpbGVzLmF0KC0xKSA/PyBudWxsO1xufVxuXG4vKipcbiAqIFJlbmRlcnMgYSBUZW1wbGF0ZXIgdGVtcGxhdGUgYWdhaW5zdCBhIHRhcmdldCBmaWxlIGFuZCByZXR1cm5zIHRoZSByZXN1bHRpbmcgdGV4dCwgd2l0aG91dCB3cml0aW5nXG4gKiBhbnl0aGluZy5cbiAqXG4gKiBGb3IgdGhlIGR1cmF0aW9uIG9mIHRoZSBjYWxsIHtAbGluayBnZXRUZW1wbGF0ZXJSZW5kZXJUYXJnZXRGaWxlfSBhbmRcbiAqIHtAbGluayBUZW1wbGF0ZXJBY3RpdmVGaWxlUHJvdmlkZXJ9IHJlcG9ydCBgdGFyZ2V0UGF0aE9yRmlsZWAsIHNvIGEgY29uc3VtZXIncyBvd24gaGVscGVycyBpbnZva2VkIGZyb21cbiAqIGluc2lkZSB0aGUgdGVtcGxhdGUgcmVzb2x2ZSBhZ2FpbnN0IGl0IHJhdGhlciB0aGFuIGFnYWluc3Qgd2hhdGV2ZXIgdGhlIHVzZXIgaGFzIG9wZW4uXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSB7QGxpbmsgUGFyc2VUZW1wbGF0ZVBhcmFtc30uXG4gKiBAcmV0dXJucyBBIHtAbGluayBQcm9taXNlfSByZXNvbHZpbmcgdG8gdGhlIHJlbmRlcmVkIHRleHQuXG4gKiBAdGhyb3dzIEEge0BsaW5rIFRlbXBsYXRlclVuYXZhaWxhYmxlRXJyb3J9IHdoZW4gVGVtcGxhdGVyIGlzIG5vdCBsb2FkZWQgb3IgaXRzIHNoYXBlIGhhcyBjaGFuZ2VkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGFyc2VUZW1wbGF0ZShwYXJhbXM6IFBhcnNlVGVtcGxhdGVQYXJhbXMpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCB7XG4gICAgYXBwLFxuICAgIHRhcmdldFBhdGhPckZpbGUsXG4gICAgdGVtcGxhdGVQYXRoT3JGaWxlXG4gIH0gPSBwYXJhbXM7XG4gIGNvbnN0IHRlbXBsYXRlRmlsZSA9IGdldEZpbGUoe1xuICAgIGFwcCxcbiAgICBwYXRoT3JGaWxlOiB0ZW1wbGF0ZVBhdGhPckZpbGVcbiAgfSk7XG4gIGNvbnN0IHRhcmdldEZpbGUgPSBnZXRGaWxlKHtcbiAgICBhcHAsXG4gICAgcGF0aE9yRmlsZTogdGFyZ2V0UGF0aE9yRmlsZVxuICB9KTtcbiAgY29uc3QgYXBpID0gcmVxdWlyZVRlbXBsYXRlckFwaShhcHApO1xuXG4gIHJlbmRlclRhcmdldEZpbGVzLnB1c2godGFyZ2V0RmlsZSk7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGFwaS5yZWFkX2FuZF9wYXJzZV90ZW1wbGF0ZSh7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2FtZWxjYXNlIC0tIFRlbXBsYXRlciBBUEkuXG4gICAgICBydW5fbW9kZTogVGVtcGxhdGVyUnVuTW9kZS5EeW5hbWljUHJvY2Vzc29yLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNhbWVsY2FzZSAtLSBUZW1wbGF0ZXIgQVBJLlxuICAgICAgdGFyZ2V0X2ZpbGU6IHRhcmdldEZpbGUsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2FtZWxjYXNlIC0tIFRlbXBsYXRlciBBUEkuXG4gICAgICB0ZW1wbGF0ZV9maWxlOiB0ZW1wbGF0ZUZpbGVcbiAgICB9KTtcbiAgfSBmaW5hbGx5IHtcbiAgICByZW5kZXJUYXJnZXRGaWxlcy5wb3AoKTtcbiAgfVxufVxuXG4vKipcbiAqIEdldHMgVGVtcGxhdGVyJ3MgaW50ZXJuYWwgQVBJLCB0aHJvd2luZyB3aGVuIGl0IGNhbm5vdCBiZSBoYWQuXG4gKlxuICogVXNlIHRoaXMgd2hlcmUgdGhlIGNhbGxlciBjYW5ub3QgY2Fycnkgb24gd2l0aG91dCBUZW1wbGF0ZXIgXHUyMDE0IHRoZSBlcnJvciBuYW1lcyB0aGUgcGx1Z2luIGFuZCBzYXlzIHdoaWNoXG4gKiBvZiB0aGUgdHdvIGZhaWx1cmVzIG9jY3VycmVkLiBVc2Uge0BsaW5rIHJlc29sdmVUZW1wbGF0ZXJBcGl9IGluc3RlYWQgd2hlcmUgdGhlIGludGVncmF0aW9uIGlzIG9wdGlvbmFsLlxuICpcbiAqIEBwYXJhbSBhcHAgLSBUaGUgT2JzaWRpYW4gYXBwIGluc3RhbmNlLlxuICogQHJldHVybnMgVGVtcGxhdGVyJ3MgaW50ZXJuYWwgQVBJLlxuICogQHRocm93cyBBIHtAbGluayBUZW1wbGF0ZXJVbmF2YWlsYWJsZUVycm9yfSB3aGVuIFRlbXBsYXRlciBpcyBub3QgbG9hZGVkIG9yIGl0cyBzaGFwZSBoYXMgY2hhbmdlZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcXVpcmVUZW1wbGF0ZXJBcGkoYXBwOiBBcHApOiBUZW1wbGF0ZXJBcGkge1xuICBpZiAoIWFwcC5wbHVnaW5zLmdldFBsdWdpbihURU1QTEFURVJfUExVR0lOX0lEKSkge1xuICAgIHRocm93IG5ldyBUZW1wbGF0ZXJVbmF2YWlsYWJsZUVycm9yKFRlbXBsYXRlclVuYXZhaWxhYmlsaXR5UmVhc29uLk5vdExvYWRlZCk7XG4gIH1cblxuICBjb25zdCBhcGkgPSByZXNvbHZlVGVtcGxhdGVyQXBpKGFwcCk7XG4gIGlmICghYXBpKSB7XG4gICAgdGhyb3cgbmV3IFRlbXBsYXRlclVuYXZhaWxhYmxlRXJyb3IoVGVtcGxhdGVyVW5hdmFpbGFiaWxpdHlSZWFzb24uU2hhcGVDaGFuZ2VkKTtcbiAgfVxuXG4gIHJldHVybiBhcGk7XG59XG5cbi8qKlxuICogR2V0cyBUZW1wbGF0ZXIncyBpbnRlcm5hbCBBUEksIHdoZW4gVGVtcGxhdGVyIGlzIGluc3RhbGxlZCwgZW5hYmxlZCBhbmQgc3RpbGwgdGhlIHNoYXBlIHRoaXMgbGlicmFyeVxuICogZXhwZWN0cy5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIFRoZSBpbnRlcm5hbCBBUEksIG9yIGBudWxsYCB3aGVuIFRlbXBsYXRlciBpcyBub3QgdGhlcmUgdG8gdGFsayB0by5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc29sdmVUZW1wbGF0ZXJBcGkoYXBwOiBBcHApOiBudWxsIHwgVGVtcGxhdGVyQXBpIHtcbiAgY29uc3QgcGx1Z2luID0gYXBwLnBsdWdpbnMuZ2V0UGx1Z2luKFRFTVBMQVRFUl9QTFVHSU5fSUQpO1xuICBpZiAoIXBsdWdpbiB8fCAhKCd0ZW1wbGF0ZXInIGluIHBsdWdpbikpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IHRlbXBsYXRlcjogdW5rbm93biA9IHBsdWdpbi50ZW1wbGF0ZXI7XG4gIHJldHVybiBpc1RlbXBsYXRlckFwaSh0ZW1wbGF0ZXIpID8gdGVtcGxhdGVyIDogbnVsbDtcbn1cblxuLypcbiAqIFRoZSBzdGFjayBvZiBmaWxlcyBpbi1mbGlnaHQgYHBhcnNlVGVtcGxhdGVgIGNhbGxzIGFyZSByZW5kZXJpbmcgZm9yLCBpbm5lcm1vc3QgbGFzdC4gQSBzdGFjayByYXRoZXJcbiAqIHRoYW4gYSBzaW5nbGUgc2xvdCBiZWNhdXNlIGEgdGVtcGxhdGUgbWF5IHJlbmRlciBhbm90aGVyLCBhbmQgYW4gYXJyYXkgcmF0aGVyIHRoYW4gYSByZWFzc2lnbmVkXG4gKiB2YXJpYWJsZSBiZWNhdXNlIHB1c2hpbmcgYW5kIHBvcHBpbmcgYSBgY29uc3RgIG5lZWRzIG5vIHdyaXRlIHRvIGFuIG91dGVyIGJpbmRpbmcgYWNyb3NzIGFuIGBhd2FpdGAuXG4gKi9cbmNvbnN0IHJlbmRlclRhcmdldEZpbGVzOiBURmlsZVtdID0gW107XG5cbi8qKlxuICogQ2hlY2tzIHRoYXQgYSB2YWx1ZSBpcyBUZW1wbGF0ZXIncyBpbnRlcm5hbCBBUEksIGJ5IHRoZSBtZW1iZXJzIHRoaXMgbGlicmFyeSBhY3R1YWxseSBjYWxscy5cbiAqXG4gKiBBIHByZWRpY2F0ZSByYXRoZXIgdGhhbiBhIGNhc3Qgb24gcHVycG9zZTogYHRlbXBsYXRlcmAgaXMgbm90IHBhcnQgb2YgT2JzaWRpYW4ncyBgUGx1Z2luYCB0eXBlLCBzbyB0aGVcbiAqIHZhbHVlIGFycml2ZXMgYXMgYHVua25vd25gIGFuZCB0aGUgb25seSBob25lc3Qgd2F5IHRvIHR5cGUgaXQgaXMgdG8gVkVSSUZZIGl0LiBBIFRlbXBsYXRlciB0aGF0IHJlbmFtZXNcbiAqIG9uZSBvZiB0aGVzZSB0aGVyZWZvcmUgcmVhZHMgYXMgXCJub3QgdGhlcmVcIiwgaW5zdGVhZCBvZiB0aHJvd2luZyBmcm9tIGluc2lkZSBhIHJlbmRlci5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgY2FuZGlkYXRlIGB0ZW1wbGF0ZXJgIG9iamVjdC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgaXQgY2FycmllcyBldmVyeSBtZW1iZXIgdGhpcyBsaWJyYXJ5IGNhbGxzLlxuICovXG5mdW5jdGlvbiBpc1RlbXBsYXRlckFwaSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIFRlbXBsYXRlckFwaSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnIHx8IHZhbHVlID09PSBudWxsIHx8ICEoJ2NyZWF0ZV9ydW5uaW5nX2NvbmZpZycgaW4gdmFsdWUpIHx8IHR5cGVvZiB2YWx1ZS5jcmVhdGVfcnVubmluZ19jb25maWcgIT09ICdmdW5jdGlvbicgfHwgISgncmVhZF9hbmRfcGFyc2VfdGVtcGxhdGUnIGluIHZhbHVlKSB8fCB0eXBlb2YgdmFsdWUucmVhZF9hbmRfcGFyc2VfdGVtcGxhdGUgIT09ICdmdW5jdGlvbicgfHwgISgnZnVuY3Rpb25zX2dlbmVyYXRvcicgaW4gdmFsdWUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25zR2VuZXJhdG9yOiB1bmtub3duID0gdmFsdWUuZnVuY3Rpb25zX2dlbmVyYXRvcjtcbiAgcmV0dXJuIHR5cGVvZiBmdW5jdGlvbnNHZW5lcmF0b3IgPT09ICdvYmplY3QnICYmIGZ1bmN0aW9uc0dlbmVyYXRvciAhPT0gbnVsbCAmJiAnZ2VuZXJhdGVfb2JqZWN0JyBpbiBmdW5jdGlvbnNHZW5lcmF0b3IgJiYgdHlwZW9mIGZ1bmN0aW9uc0dlbmVyYXRvci5nZW5lcmF0ZV9vYmplY3QgPT09ICdmdW5jdGlvbic7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTBDQSxTQUFTLDZCQUE2QjtBQUN0QyxTQUFTLGVBQWU7QUFrSWpCLE1BQU0sc0JBQXNCO0FBVTVCLElBQUssbUJBQUwsa0JBQUtBLHNCQUFMO0FBSUwsRUFBQUEsb0NBQUEsMkJBQXdCLEtBQXhCO0FBS0EsRUFBQUEsb0NBQUEsc0JBQW1CLEtBQW5CO0FBS0EsRUFBQUEsb0NBQUEsbUJBQWdCLEtBQWhCO0FBS0EsRUFBQUEsb0NBQUEseUJBQXNCLEtBQXRCO0FBTUEsRUFBQUEsb0NBQUEsc0JBQW1CLEtBQW5CO0FBTUEsRUFBQUEsb0NBQUEscUJBQWtCLEtBQWxCO0FBL0JVLFNBQUFBO0FBQUEsR0FBQTtBQXNDTCxJQUFLLGdDQUFMLGtCQUFLQyxtQ0FBTDtBQUtMLEVBQUFBLCtCQUFBLGVBQVk7QUFNWixFQUFBQSwrQkFBQSxrQkFBZTtBQVhMLFNBQUFBO0FBQUEsR0FBQTtBQXFCTCxNQUFNLG9DQUFvQyxzQkFBc0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9yRCxnQkFBOEI7QUFDNUMsV0FBTyw2QkFBNkIsS0FBSyxNQUFNLGNBQWM7QUFBQSxFQUMvRDtBQUNGO0FBTU8sTUFBTSxrQ0FBa0MsTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBSW5DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1QsWUFBWSxRQUF1QztBQUN4RCxVQUFNLG1DQUFtQyxtQkFBbUIscUJBQXFCLE1BQU0sR0FBRztBQUMxRixTQUFLLE9BQU87QUFDWixTQUFLLFNBQVM7QUFBQSxFQUNoQjtBQUNGO0FBVUEsZUFBc0Isc0JBQXNCLFFBQXNEO0FBQ2hHLFFBQU07QUFBQSxJQUNKO0FBQUEsSUFDQSxxQkFBcUI7QUFBQSxJQUNyQjtBQUFBLEVBQ0YsSUFBSTtBQUNKLFFBQU0sTUFBTSxvQkFBb0IsR0FBRztBQUVuQyxNQUFJLHNCQUFzQixJQUFJLDBCQUEwQjtBQUN0RCxXQUFPLElBQUk7QUFBQSxFQUNiO0FBRUEsUUFBTSxhQUFhLFFBQVE7QUFBQSxJQUN6QjtBQUFBLElBQ0EsWUFBWTtBQUFBLEVBQ2QsQ0FBQztBQUNELFFBQU0sU0FBUyxJQUFJLHNCQUFzQixRQUFXLFlBQVksdUJBQWdDO0FBQ2hHLFNBQU8sTUFBTSxJQUFJLG9CQUFvQixnQkFBZ0IsTUFBTTtBQUM3RDtBQVVPLFNBQVMsK0JBQTZDO0FBQzNELFNBQU8sa0JBQWtCLEdBQUcsRUFBRSxLQUFLO0FBQ3JDO0FBY0EsZUFBc0IsY0FBYyxRQUE4QztBQUNoRixRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsRUFDRixJQUFJO0FBQ0osUUFBTSxlQUFlLFFBQVE7QUFBQSxJQUMzQjtBQUFBLElBQ0EsWUFBWTtBQUFBLEVBQ2QsQ0FBQztBQUNELFFBQU0sYUFBYSxRQUFRO0FBQUEsSUFDekI7QUFBQSxJQUNBLFlBQVk7QUFBQSxFQUNkLENBQUM7QUFDRCxRQUFNLE1BQU0sb0JBQW9CLEdBQUc7QUFFbkMsb0JBQWtCLEtBQUssVUFBVTtBQUNqQyxNQUFJO0FBQ0YsV0FBTyxNQUFNLElBQUksd0JBQXdCO0FBQUE7QUFBQSxNQUV2QyxVQUFVO0FBQUE7QUFBQSxNQUVWLGFBQWE7QUFBQTtBQUFBLE1BRWIsZUFBZTtBQUFBLElBQ2pCLENBQUM7QUFBQSxFQUNILFVBQUU7QUFDQSxzQkFBa0IsSUFBSTtBQUFBLEVBQ3hCO0FBQ0Y7QUFZTyxTQUFTLG9CQUFvQixLQUF3QjtBQUMxRCxNQUFJLENBQUMsSUFBSSxRQUFRLFVBQVUsbUJBQW1CLEdBQUc7QUFDL0MsVUFBTSxJQUFJLDBCQUEwQiwyQkFBdUM7QUFBQSxFQUM3RTtBQUVBLFFBQU0sTUFBTSxvQkFBb0IsR0FBRztBQUNuQyxNQUFJLENBQUMsS0FBSztBQUNSLFVBQU0sSUFBSSwwQkFBMEIsaUNBQTBDO0FBQUEsRUFDaEY7QUFFQSxTQUFPO0FBQ1Q7QUFTTyxTQUFTLG9CQUFvQixLQUErQjtBQUNqRSxRQUFNLFNBQVMsSUFBSSxRQUFRLFVBQVUsbUJBQW1CO0FBQ3hELE1BQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxTQUFTO0FBQ3ZDLFdBQU87QUFBQSxFQUNUO0FBRUEsUUFBTSxZQUFxQixPQUFPO0FBQ2xDLFNBQU8sZUFBZSxTQUFTLElBQUksWUFBWTtBQUNqRDtBQU9BLE1BQU0sb0JBQTZCLENBQUM7QUFZcEMsU0FBUyxlQUFlLE9BQXVDO0FBQzdELE1BQUksT0FBTyxVQUFVLFlBQVksVUFBVSxRQUFRLEVBQUUsMkJBQTJCLFVBQVUsT0FBTyxNQUFNLDBCQUEwQixjQUFjLEVBQUUsNkJBQTZCLFVBQVUsT0FBTyxNQUFNLDRCQUE0QixjQUFjLEVBQUUseUJBQXlCLFFBQVE7QUFDaFIsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLHFCQUE4QixNQUFNO0FBQzFDLFNBQU8sT0FBTyx1QkFBdUIsWUFBWSx1QkFBdUIsUUFBUSxxQkFBcUIsc0JBQXNCLE9BQU8sbUJBQW1CLG9CQUFvQjtBQUMzSzsiLAogICJuYW1lcyI6IFsiVGVtcGxhdGVyUnVuTW9kZSIsICJUZW1wbGF0ZXJVbmF2YWlsYWJpbGl0eVJlYXNvbiJdCn0K
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vc3JjL3RlbXBsYXRlci50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAZmlsZVxuICpcbiAqIFRoZSBzbGljZSBvZiBgVGVtcGxhdGVyYCdzIElOVEVSTkFMIEFQSSB0aGlzIGxpYnJhcnkgdGFsa3MgdG8sIGFuZCB0aGUgcnVudGltZSBuYXJyb3dpbmcgdGhhdCBnZXRzIGhvbGRcbiAqIG9mIGl0LlxuICpcbiAqICoqYFRlbXBsYXRlcmAgcHVibGlzaGVzIG5vIEFQSS4qKiBSZW5kZXJpbmcgYSB0ZW1wbGF0ZSBhZ2FpbnN0IGEgZmlsZSBhbmQgZ2V0dGluZyB0aGUgcmVzdWx0aW5nIHN0cmluZ1xuICogYmFjayBpcyBvbmx5IHJlYWNoYWJsZSB0aHJvdWdoIHVuZG9jdW1lbnRlZCBpbnRlcm5hbHMgaGFuZ2luZyBvZmZcbiAqIGBhcHAucGx1Z2lucy5nZXRQbHVnaW4oJ3RlbXBsYXRlci1vYnNpZGlhbicpLnRlbXBsYXRlcmAgXHUyMDE0IGBjcmVhdGVfcnVubmluZ19jb25maWdgLFxuICogYGZ1bmN0aW9uc19nZW5lcmF0b3IuZ2VuZXJhdGVfb2JqZWN0YCwgYHJlYWRfYW5kX3BhcnNlX3RlbXBsYXRlYCwgYW5kIGEgYFJ1bk1vZGVgIGVudW0uIEV2ZXJ5IHBsdWdpblxuICogdGhhdCB3YW50cyBpdCByZS1kZXJpdmVzIHRoZSBzYW1lIHJldmVyc2UgZW5naW5lZXJpbmcsIHdoaWNoIGlzIHdoeSBpdCBsaXZlcyBoZXJlIGluc3RlYWQuXG4gKlxuICogKipUaGlzIG1vZHVsZSBpcyBleHBsaWNpdGx5IEJFU1QtRUZGT1JULioqIE5vdGhpbmcgaXQgYmluZHMgdG8gaXMgZG9jdW1lbnRlZCBvciBjb3ZlcmVkIGJ5IGBUZW1wbGF0ZXJgJ3NcbiAqIHNlbWFudGljIHZlcnNpb25pbmcsIHNvIGEgYFRlbXBsYXRlcmAgcmVsZWFzZSBtYXkgcmVuYW1lIG9yIHJlc2hhcGUgYW55IG9mIGl0IHdpdGhvdXQgd2FybmluZy4gVGhlIHNoYXBlc1xuICogYmVsb3cgd2VyZSByZWFkIGZyb20gYFRlbXBsYXRlcmAgYDIuMjQuM2AuIFR3byBkZWxpYmVyYXRlIGNvbnNlcXVlbmNlcyBmb2xsb3c6XG4gKlxuICogLSB7QGxpbmsgcmVzb2x2ZVRlbXBsYXRlckFwaX0gcmV0dXJucyBgbnVsbGAgXHUyMDE0IGEgYFRlbXBsYXRlcmAgdG9vIG9sZCwgdG9vIG5ldyBvciB0b28gYnJva2VuIHRvIHRhbGsgdG9cbiAqICAgcmVhZHMgYXMgXCJub3QgdGhlcmVcIiBhbmQgdGhlIGludGVncmF0aW9uIHN0YXlzIGRvcm1hbnQuXG4gKiAtIHtAbGluayByZXF1aXJlVGVtcGxhdGVyQXBpfSB0aHJvd3MgYSB7QGxpbmsgVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvcn0gdGhhdCBOQU1FUyB0aGUgcGx1Z2luIGFuZCB0aGVcbiAqICAgcmVhc29uLCByYXRoZXIgdGhhbiBsZXR0aW5nIGEgYENhbm5vdCByZWFkIHByb3BlcnRpZXMgb2YgdW5kZWZpbmVkYCBzdXJmYWNlIGZyb20gc29tZXdoZXJlIGluc2lkZVxuICogICBgVGVtcGxhdGVyYC5cbiAqXG4gKiBUaGUgdHlwZXMgYXJlIERFQ0xBUkVEIEhFUkUgcmF0aGVyIHRoYW4gaW1wb3J0ZWQsIGFuZCBuYXJyb3dlZCB0byB0aGUgbWVtYmVycyBhY3R1YWxseSBjYWxsZWQ6IGBUZW1wbGF0ZXJgXG4gKiBzaGlwcyBubyBucG0gdHlwZXMgcGFja2FnZSwgYW5kIGRlcGVuZGluZyBvbiBpdCB3b3VsZCB0dXJuIGFuIG9wdGlvbmFsIGludGVncmF0aW9uIGludG8gYSBidWlsZC10aW1lXG4gKiBkZXBlbmRlbmN5LlxuICpcbiAqIFRoZSBzZWNvbmQgdGhpbmcgdGhpcyBtb2R1bGUgc3VwcGxpZXMgaXMgYW4gYWN0aXZlLWZpbGUgYW5zd2VyLiBXaGlsZSBhIHRlbXBsYXRlIHJlbmRlcnMsXG4gKiBgYXBwLndvcmtzcGFjZS5nZXRBY3RpdmVGaWxlKClgIHN0aWxsIHBvaW50cyBhdCB3aGF0ZXZlciB0aGUgdXNlciBoYXBwZW5zIHRvIGhhdmUgb3BlbiBcdTIwMTQgTk9UIGF0IHRoZSBmaWxlXG4gKiB0aGUgdGVtcGxhdGUgaXMgYmVpbmcgcmVuZGVyZWQgZm9yIFx1MjAxNCBzbyBhIHBsdWdpbidzIG93biBoZWxwZXIgY2FsbGVkIGZyb20gaW5zaWRlIGEgdGVtcGxhdGUgcmVzb2x2ZXNcbiAqIGxpbmtzIGFnYWluc3QgdGhlIHdyb25nIG5vdGUuIHtAbGluayBUZW1wbGF0ZXJBY3RpdmVGaWxlUHJvdmlkZXJ9IGFuc3dlcnMgd2l0aCB0aGUgcmVuZGVyIHRhcmdldCBmb3IgdGhlXG4gKiBkdXJhdGlvbiBvZiBhIHtAbGluayBwYXJzZVRlbXBsYXRlfSBjYWxsIGFuZCBmYWxscyBiYWNrIHRvIHRoZSB3b3Jrc3BhY2Ugb3RoZXJ3aXNlLiBOb3RlIHRoaXMgaXMgYWJvdXRcbiAqIHRoZSBDT05TVU1FUidzIGhlbHBlcnM6IGBUZW1wbGF0ZXJgJ3Mgb3duIGB0cC5maWxlLipgIGFscmVhZHkgcmVzb2x2ZXMgdGhyb3VnaCB0aGUgcnVubmluZyBjb25maWcnc1xuICogYHRhcmdldF9maWxlYCBhbmQgbmVlZHMgbm8gaGVscC5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7XG4gIEFwcCxcbiAgVEZpbGVcbn0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFBhdGhPckZpbGUgfSBmcm9tICcuL2ZpbGUtc3lzdGVtLnRzJztcblxuaW1wb3J0IHsgQXBwQWN0aXZlRmlsZVByb3ZpZGVyIH0gZnJvbSAnLi9hY3RpdmUtZmlsZS1wcm92aWRlci50cyc7XG5pbXBvcnQgeyBnZXRGaWxlIH0gZnJvbSAnLi9maWxlLXN5c3RlbS50cyc7XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIGdldFRlbXBsYXRlckZ1bmN0aW9uc30uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VGVtcGxhdGVyRnVuY3Rpb25zUGFyYW1zIHtcbiAgLyoqXG4gICAqIFRoZSBPYnNpZGlhbiBhcHAgaW5zdGFuY2UuXG4gICAqL1xuICByZWFkb25seSBhcHA6IEFwcDtcblxuICAvKipcbiAgICogV2hldGhlciB0byByZXR1cm4gYFRlbXBsYXRlcmAncyBgY3VycmVudF9mdW5jdGlvbnNfb2JqZWN0YCB3aGVuIGl0IGFscmVhZHkgaGFzIG9uZSwgaW5zdGVhZCBvZlxuICAgKiBnZW5lcmF0aW5nIGEgZnJlc2ggb2JqZWN0LiBSZXVzZSBpcyBjaGVhcGVyIGFuZCBnaXZlcyB0aGUgb2JqZWN0IG9mIHRoZSByZW5kZXIgY3VycmVudGx5IGluIGZsaWdodDtcbiAgICogcGFzcyBgZmFsc2VgIHRvIGZvcmNlIGEgbmV3IG9uZSBidWlsdCBmb3IgYHRhcmdldFBhdGhPckZpbGVgLlxuICAgKlxuICAgKiBAZGVmYXVsdCBgdHJ1ZWBcbiAgICovXG4gIHJlYWRvbmx5IHNob3VsZFJldXNlQ3VycmVudD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBmaWxlIHRoZSBnZW5lcmF0ZWQgZnVuY3Rpb25zIHNob3VsZCByZXNvbHZlIGFnYWluc3QgXHUyMDE0IHdoYXQgYHRwLmZpbGUuKmAgcmVwb3J0cy5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG59XG5cbi8qKlxuICogUGFyYW1ldGVycyBmb3Ige0BsaW5rIHBhcnNlVGVtcGxhdGV9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhcnNlVGVtcGxhdGVQYXJhbXMge1xuICAvKipcbiAgICogVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAgICovXG4gIHJlYWRvbmx5IGFwcDogQXBwO1xuXG4gIC8qKlxuICAgKiBUaGUgZmlsZSB0aGUgdGVtcGxhdGUgaXMgcmVuZGVyZWQgRk9SLiBJdCBpcyB3aGF0IGB0cC5maWxlLipgIHJlc29sdmVzIHRvIGluc2lkZSB0aGUgdGVtcGxhdGUsIGFuZFxuICAgKiB3aGF0IHtAbGluayBUZW1wbGF0ZXJBY3RpdmVGaWxlUHJvdmlkZXJ9IHJlcG9ydHMgZm9yIHRoZSBkdXJhdGlvbiBvZiB0aGUgY2FsbC5cbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldFBhdGhPckZpbGU6IFBhdGhPckZpbGU7XG5cbiAgLyoqXG4gICAqIFRoZSB0ZW1wbGF0ZSBmaWxlIHRvIHJlbmRlci5cbiAgICovXG4gIHJlYWRvbmx5IHRlbXBsYXRlUGF0aE9yRmlsZTogUGF0aE9yRmlsZTtcbn1cblxuLyoqXG4gKiBgVGVtcGxhdGVyYCdzIGludGVybmFsIEFQSSBvYmplY3QsIG5hcnJvd2VkIHRvIHRoZSBtZW1iZXJzIHRoaXMgbGlicmFyeSBjYWxscy5cbiAqXG4gKiBJdHMgbWVtYmVycyBhcmUgYHNuYWtlX2Nhc2VgIGJlY2F1c2UgYFRlbXBsYXRlcmAncyBhcmU7IHRoZXkgYXJlIHRyYW5zY3JpYmVkIHJhdGhlciB0aGFuIHJlbmFtZWQgc28gdGhlXG4gKiBzaGFwZSBjYW4gYmUgY2hlY2tlZCBhZ2FpbnN0IGBUZW1wbGF0ZXJgJ3Mgc291cmNlIGF0IGEgZ2xhbmNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRlbXBsYXRlckFwaSB7XG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIHtAbGluayBUZW1wbGF0ZXJSdW5uaW5nQ29uZmlnfSB0aGF0IGRlc2NyaWJlcyBvbmUgcmVuZGVyLlxuICAgKlxuICAgKiBAcGFyYW0gdGVtcGxhdGVGaWxlIC0gVGhlIHRlbXBsYXRlIGJlaW5nIHJlbmRlcmVkLCBvciBgdW5kZWZpbmVkYCB3aGVuIHRoZXJlIGlzIG5vbmUgKGFzIHdoZW4gb25seVxuICAgKiB0aGUgZnVuY3Rpb25zIG9iamVjdCBpcyB3YW50ZWQpLlxuICAgKiBAcGFyYW0gdGFyZ2V0RmlsZSAtIFRoZSBmaWxlIHRoZSByZW5kZXIgaXMgZm9yLlxuICAgKiBAcGFyYW0gcnVuTW9kZSAtIFdoaWNoIHtAbGluayBUZW1wbGF0ZXJSdW5Nb2RlfSB0aGUgcmVuZGVyIGlzLlxuICAgKiBAcmV0dXJucyBUaGUgcnVubmluZyBjb25maWcuXG4gICAqL1xuICBjcmVhdGVfcnVubmluZ19jb25maWc6ICh0ZW1wbGF0ZUZpbGU6IFRGaWxlIHwgdW5kZWZpbmVkLCB0YXJnZXRGaWxlOiBURmlsZSwgcnVuTW9kZTogVGVtcGxhdGVyUnVuTW9kZSkgPT4gVGVtcGxhdGVyUnVubmluZ0NvbmZpZztcblxuICAvKipcbiAgICogVGhlIGZ1bmN0aW9ucyBvYmplY3QgKGB0cGApIG9mIHRoZSByZW5kZXIgY3VycmVudGx5IGluIGZsaWdodCwgd2hlbiB0aGVyZSBpcyBvbmUuXG4gICAqL1xuICBjdXJyZW50X2Z1bmN0aW9uc19vYmplY3Q/OiBvYmplY3QgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIEJ1aWxkcyB0aGUgZnVuY3Rpb25zIG9iamVjdCAoYHRwYCkgYSB0ZW1wbGF0ZSBpcyBldmFsdWF0ZWQgYWdhaW5zdC5cbiAgICovXG4gIGZ1bmN0aW9uc19nZW5lcmF0b3I6IFRlbXBsYXRlckZ1bmN0aW9uc0dlbmVyYXRvcjtcblxuICAvKipcbiAgICogUmVhZHMgdGhlIGNvbmZpZydzIGB0ZW1wbGF0ZV9maWxlYCBhbmQgcmVuZGVycyBpdCwgcmV0dXJuaW5nIHRoZSByZXN1bHRpbmcgdGV4dC5cbiAgICpcbiAgICogQHBhcmFtIGNvbmZpZyAtIFRoZSB7QGxpbmsgVGVtcGxhdGVyUnVubmluZ0NvbmZpZ30gZGVzY3JpYmluZyB0aGUgcmVuZGVyLiBgVGVtcGxhdGVyYCB0aHJvd3Mgd2hlbiBpdHNcbiAgICogYHRlbXBsYXRlX2ZpbGVgIGlzIG5vdCBhIGBURmlsZWAuXG4gICAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHJlc29sdmluZyB0byB0aGUgcmVuZGVyZWQgdGV4dC5cbiAgICovXG4gIHJlYWRfYW5kX3BhcnNlX3RlbXBsYXRlOiAoY29uZmlnOiBUZW1wbGF0ZXJSdW5uaW5nQ29uZmlnKSA9PiBQcm9taXNlPHN0cmluZz47XG59XG5cbi8qKlxuICogVGhlIGBmdW5jdGlvbnNfZ2VuZXJhdG9yYCBoYWxmIG9mIHtAbGluayBUZW1wbGF0ZXJBcGl9LlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRlbXBsYXRlckZ1bmN0aW9uc0dlbmVyYXRvciB7XG4gIC8qKlxuICAgKiBCdWlsZHMgdGhlIGZ1bmN0aW9ucyBvYmplY3QgKGB0cGApIGZvciBhIHJ1bm5pbmcgY29uZmlnLlxuICAgKlxuICAgKiBAcGFyYW0gY29uZmlnIC0gVGhlIHtAbGluayBUZW1wbGF0ZXJSdW5uaW5nQ29uZmlnfSB0byBidWlsZCBmb3IuXG4gICAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHJlc29sdmluZyB0byB0aGUgZnVuY3Rpb25zIG9iamVjdC5cbiAgICovXG4gIGdlbmVyYXRlX29iamVjdDogKGNvbmZpZzogVGVtcGxhdGVyUnVubmluZ0NvbmZpZykgPT4gUHJvbWlzZTxvYmplY3Q+O1xufVxuXG4vKipcbiAqIE9uZSBgVGVtcGxhdGVyYCByZW5kZXIsIGFzIGBUZW1wbGF0ZXJgJ3MgYGNyZWF0ZV9ydW5uaW5nX2NvbmZpZ2AgZGVzY3JpYmVzIGl0LlxuICpcbiAqIEl0cyBtZW1iZXJzIGFyZSBgc25ha2VfY2FzZWAgYmVjYXVzZSBgVGVtcGxhdGVyYCdzIGFyZS5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUZW1wbGF0ZXJSdW5uaW5nQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBmaWxlIGBUZW1wbGF0ZXJgIGNvbnNpZGVycyBhY3RpdmUuIGBUZW1wbGF0ZXJgIGZpbGxzIHRoaXMgaW4gaXRzZWxmIGZyb21cbiAgICogYHdvcmtzcGFjZS5hY3RpdmVFZGl0b3I/LmZpbGUgPz8gd29ya3NwYWNlLmdldEFjdGl2ZUZpbGUoKWA7IGl0IGlzIG9wdGlvbmFsIGhlcmUgYmVjYXVzZSBhXG4gICAqIGhhbmQtYnVpbHQgY29uZmlnIG1heSBvbWl0IGl0LlxuICAgKi9cbiAgYWN0aXZlX2ZpbGU/OiBudWxsIHwgVEZpbGUgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFdoaWNoIHtAbGluayBUZW1wbGF0ZXJSdW5Nb2RlfSB0aGUgcmVuZGVyIGlzLlxuICAgKi9cbiAgcnVuX21vZGU6IFRlbXBsYXRlclJ1bk1vZGU7XG5cbiAgLyoqXG4gICAqIFRoZSBmaWxlIHRoZSByZW5kZXIgaXMgZm9yIFx1MjAxNCB3aGF0IGB0cC5maWxlLipgIHJlc29sdmVzIHRvLlxuICAgKi9cbiAgdGFyZ2V0X2ZpbGU6IFRGaWxlO1xuXG4gIC8qKlxuICAgKiBUaGUgdGVtcGxhdGUgYmVpbmcgcmVuZGVyZWQsIHdoZW4gdGhlcmUgaXMgb25lLlxuICAgKi9cbiAgdGVtcGxhdGVfZmlsZT86IFRGaWxlIHwgdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIGBUZW1wbGF0ZXJgJ3MgcGx1Z2luIGlkLCBhcyBpdHMgbWFuaWZlc3QgZGVjbGFyZXMgaXQuXG4gKi9cbmV4cG9ydCBjb25zdCBURU1QTEFURVJfUExVR0lOX0lEID0gJ3RlbXBsYXRlci1vYnNpZGlhbic7XG5cbi8qIGVzbGludC1kaXNhYmxlIG5vLW1hZ2ljLW51bWJlcnMgLS0gVGhlc2UgYXJlIGBUZW1wbGF0ZXJgJ3Mgb3duIGBSdW5Nb2RlYCB2YWx1ZXMsIHRyYW5zY3JpYmVkLiAqL1xuLyoqXG4gKiBgVGVtcGxhdGVyYCdzIGBSdW5Nb2RlYCBlbnVtLCB3aGljaCBzYXlzIHdoYXQga2luZCBvZiByZW5kZXIgYSB7QGxpbmsgVGVtcGxhdGVyUnVubmluZ0NvbmZpZ30gZGVzY3JpYmVzLlxuICpcbiAqIFRoZSBudW1lcmljIHZhbHVlcyBBUkUgYFRlbXBsYXRlcmAncywgYW5kIHRoZSBtZW1iZXJzIGFyZSBsaXN0ZWQgaW4gaXRzIGRlY2xhcmF0aW9uIG9yZGVyIHNvIHRoZSB0d28gY2FuXG4gKiBiZSBjb21wYXJlZCBsaW5lIGZvciBsaW5lLiBUaGV5IGFyZSB3cml0dGVuIG91dCBleHBsaWNpdGx5IGFsbCB0aGUgc2FtZSwgYmVjYXVzZSB0aGV5IGNyb3NzIGludG9cbiAqIGBUZW1wbGF0ZXJgIGFzIGludGVnZXJzIFx1MjAxNCBuZXZlciByZW51bWJlciB0aGVtLlxuICovXG5leHBvcnQgZW51bSBUZW1wbGF0ZXJSdW5Nb2RlIHtcbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgdGVtcGxhdGUgaW50byBhIG5ld2x5IGNyZWF0ZWQgZmlsZS5cbiAgICovXG4gIENyZWF0ZU5ld0Zyb21UZW1wbGF0ZSA9IDAsXG5cbiAgLyoqXG4gICAqIFJlbmRlciB0aGUgdGVtcGxhdGUgYW5kIGFwcGVuZCB0aGUgcmVzdWx0IHRvIHRoZSBhY3RpdmUgZmlsZS5cbiAgICovXG4gIEFwcGVuZEFjdGl2ZUZpbGUgPSAxLFxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIHRlbXBsYXRlIGFuZCBvdmVyd3JpdGUgYSBnaXZlbiBmaWxlIHdpdGggdGhlIHJlc3VsdC5cbiAgICovXG4gIE92ZXJ3cml0ZUZpbGUgPSAyLFxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIHRlbXBsYXRlIGFuZCBvdmVyd3JpdGUgdGhlIGFjdGl2ZSBmaWxlIHdpdGggdGhlIHJlc3VsdC5cbiAgICovXG4gIE92ZXJ3cml0ZUFjdGl2ZUZpbGUgPSAzLFxuXG4gIC8qKlxuICAgKiBSZW5kZXIgdGhlIHRlbXBsYXRlIG9uIGRlbWFuZCwgZm9yIGEgY2FsbGVyIHRoYXQgd2FudHMgdGhlIHJlc3VsdGluZyB0ZXh0IHJhdGhlciB0aGFuIGEgZmlsZVxuICAgKiB3cml0dGVuLiBUaGlzIGlzIHdoYXQge0BsaW5rIHBhcnNlVGVtcGxhdGV9IHVzZXMuXG4gICAqL1xuICBEeW5hbWljUHJvY2Vzc29yID0gNCxcblxuICAvKipcbiAgICogUmVuZGVyIHRoZSB0ZW1wbGF0ZSBhcyBhIHN0YXJ0dXAgdGVtcGxhdGUuIHtAbGluayBnZXRUZW1wbGF0ZXJGdW5jdGlvbnN9IHVzZXMgaXQgZm9yIHRoZSB0aHJvd2F3YXlcbiAgICogY29uZmlnIGl0IGJ1aWxkcywgYmVjYXVzZSB0aGF0IGNvbmZpZyByZW5kZXJzIG5vdGhpbmcuXG4gICAqL1xuICBTdGFydHVwVGVtcGxhdGUgPSA1XG59XG4vKiBlc2xpbnQtZW5hYmxlIG5vLW1hZ2ljLW51bWJlcnMgLS0gVGhlc2UgYXJlIGBUZW1wbGF0ZXJgJ3Mgb3duIGBSdW5Nb2RlYCB2YWx1ZXMsIHRyYW5zY3JpYmVkLiAqL1xuXG4vKipcbiAqIFdoeSBgVGVtcGxhdGVyYCdzIGludGVybmFsIEFQSSBjb3VsZCBub3QgYmUgaGFuZGVkIG92ZXIuXG4gKi9cbmV4cG9ydCBlbnVtIFRlbXBsYXRlclVuYXZhaWxhYmlsaXR5UmVhc29uIHtcbiAgLyoqXG4gICAqIGBUZW1wbGF0ZXJgIGlzIG5vdCBpbnN0YWxsZWQsIG9yIGlzIGluc3RhbGxlZCBidXQgZGlzYWJsZWQuIE9ic2lkaWFuJ3MgYGdldFBsdWdpbmAgY2Fubm90IHRlbGwgdGhlIHR3b1xuICAgKiBhcGFydCBcdTIwMTQgaXQgcmV0dXJucyBub3RoaW5nIGVpdGhlciB3YXkuXG4gICAqL1xuICBOb3RMb2FkZWQgPSAnbm90TG9hZGVkJyxcblxuICAvKipcbiAgICogYFRlbXBsYXRlcmAgaXMgbG9hZGVkLCBidXQgZG9lcyBub3QgZXhwb3NlIHRoZSBpbnRlcm5hbHMgdGhpcyBsaWJyYXJ5IGNhbGxzIFx1MjAxNCBpdCBpcyB0b28gb2xkLCB0b28gbmV3LFxuICAgKiBvciBoYXMgYmVlbiByZXNoYXBlZC5cbiAgICovXG4gIFNoYXBlQ2hhbmdlZCA9ICdzaGFwZUNoYW5nZWQnXG59XG5cbi8qKlxuICogQWN0aXZlLWZpbGUgcHJvdmlkZXIgdGhhdCBhbnN3ZXJzIHdpdGggdGhlIGZpbGUgYSB7QGxpbmsgcGFyc2VUZW1wbGF0ZX0gcmVuZGVyIGlzIGN1cnJlbnRseSBmb3IsXG4gKiBmYWxsaW5nIGJhY2sgdG8gdGhlIHdvcmtzcGFjZSdzIGFjdGl2ZSBmaWxlIHdoZW4gbm8gcmVuZGVyIGlzIGluIGZsaWdodC5cbiAqXG4gKiBUaGlzIGlzIHRoZSBwaWVjZSB0aGF0IG1ha2VzIGEgY29uc3VtZXIncyBvd24gdGVtcGxhdGUgaGVscGVycyByZXNvbHZlIGFnYWluc3QgdGhlIHJpZ2h0IG5vdGU6IGR1cmluZyBhXG4gKiByZW5kZXIgdGhlIHdvcmtzcGFjZSBzdGlsbCBoYXMgd2hhdGV2ZXIgdGhlIHVzZXIgd2FzIGxvb2tpbmcgYXQgb3Blbiwgd2hpY2ggaXMgcmFyZWx5IHRoZSB0YXJnZXQuXG4gKi9cbmV4cG9ydCBjbGFzcyBUZW1wbGF0ZXJBY3RpdmVGaWxlUHJvdmlkZXIgZXh0ZW5kcyBBcHBBY3RpdmVGaWxlUHJvdmlkZXIge1xuICAvKipcbiAgICogR2V0cyB0aGUgZmlsZSB0aGUgaW5uZXJtb3N0IGluLWZsaWdodCB7QGxpbmsgcGFyc2VUZW1wbGF0ZX0gcmVuZGVyIGlzIGZvciwgb3IgdGhlIHdvcmtzcGFjZSdzIGFjdGl2ZVxuICAgKiBmaWxlIHdoZW4gdGhlcmUgaXMgbm8gcmVuZGVyIGluIGZsaWdodC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIGFjdGl2ZSBmaWxlLCBvciBgbnVsbGAgaWYgdGhlcmUgaXMgbm9uZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRBY3RpdmVGaWxlKCk6IG51bGwgfCBURmlsZSB7XG4gICAgcmV0dXJuIGdldFRlbXBsYXRlclJlbmRlclRhcmdldEZpbGUoKSA/PyBzdXBlci5nZXRBY3RpdmVGaWxlKCk7XG4gIH1cbn1cblxuLyoqXG4gKiBUaHJvd24gd2hlbiBgVGVtcGxhdGVyYCdzIGludGVybmFsIEFQSSBjYW5ub3QgYmUgaGFuZGVkIG92ZXIsIGNhcnJ5aW5nIHRoZVxuICoge0BsaW5rIFRlbXBsYXRlclVuYXZhaWxhYmlsaXR5UmVhc29ufSB0aGF0IHNheXMgd2h5LlxuICovXG5leHBvcnQgY2xhc3MgVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgLyoqXG4gICAqIFdoaWNoIG9mIHRoZSB0d28gZmFpbHVyZXMgb2NjdXJyZWQuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcmVhc29uOiBUZW1wbGF0ZXJVbmF2YWlsYWJpbGl0eVJlYXNvbjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHtAbGluayBUZW1wbGF0ZXJVbmF2YWlsYWJsZUVycm9yfS5cbiAgICpcbiAgICogQHBhcmFtIHJlYXNvbiAtIFdoeSB0aGUgQVBJIGlzIHVuYXZhaWxhYmxlLlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKHJlYXNvbjogVGVtcGxhdGVyVW5hdmFpbGFiaWxpdHlSZWFzb24pIHtcbiAgICBzdXBlcihgVGhlIGludGVybmFsIEFQSSBvZiB0aGUgcGx1Z2luIFwiJHtURU1QTEFURVJfUExVR0lOX0lEfVwiIGlzIHVuYXZhaWxhYmxlOiAke3JlYXNvbn0uYCk7XG4gICAgdGhpcy5uYW1lID0gJ1RlbXBsYXRlclVuYXZhaWxhYmxlRXJyb3InO1xuICAgIHRoaXMucmVhc29uID0gcmVhc29uO1xuICB9XG59XG5cbi8qKlxuICogR2V0cyBgVGVtcGxhdGVyYCdzIGZ1bmN0aW9ucyBvYmplY3QgXHUyMDE0IHRoZSBgdHBgIGEgdGVtcGxhdGUgaXMgZXZhbHVhdGVkIGFnYWluc3QgXHUyMDE0IHNvIGEgY2FsbGVyIGNhbiBpbnZva2VcbiAqIGB0cC5kYXRlLm5vdygpYCwgYHRwLmZpbGUudGl0bGVgIGFuZCB0aGUgcmVzdCBvdXRzaWRlIGEgdGVtcGxhdGUuXG4gKlxuICogQHBhcmFtIHBhcmFtcyAtIFRoZSB7QGxpbmsgR2V0VGVtcGxhdGVyRnVuY3Rpb25zUGFyYW1zfS5cbiAqIEByZXR1cm5zIEEge0BsaW5rIFByb21pc2V9IHJlc29sdmluZyB0byB0aGUgZnVuY3Rpb25zIG9iamVjdC5cbiAqIEB0aHJvd3MgQSB7QGxpbmsgVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvcn0gd2hlbiBgVGVtcGxhdGVyYCBpcyBub3QgbG9hZGVkIG9yIGl0cyBzaGFwZSBoYXMgY2hhbmdlZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldFRlbXBsYXRlckZ1bmN0aW9ucyhwYXJhbXM6IEdldFRlbXBsYXRlckZ1bmN0aW9uc1BhcmFtcyk6IFByb21pc2U8b2JqZWN0PiB7XG4gIGNvbnN0IHtcbiAgICBhcHAsXG4gICAgc2hvdWxkUmV1c2VDdXJyZW50ID0gdHJ1ZSxcbiAgICB0YXJnZXRQYXRoT3JGaWxlXG4gIH0gPSBwYXJhbXM7XG4gIGNvbnN0IGFwaSA9IHJlcXVpcmVUZW1wbGF0ZXJBcGkoYXBwKTtcblxuICBpZiAoc2hvdWxkUmV1c2VDdXJyZW50ICYmIGFwaS5jdXJyZW50X2Z1bmN0aW9uc19vYmplY3QpIHtcbiAgICByZXR1cm4gYXBpLmN1cnJlbnRfZnVuY3Rpb25zX29iamVjdDtcbiAgfVxuXG4gIGNvbnN0IHRhcmdldEZpbGUgPSBnZXRGaWxlKHtcbiAgICBhcHAsXG4gICAgcGF0aE9yRmlsZTogdGFyZ2V0UGF0aE9yRmlsZVxuICB9KTtcbiAgY29uc3QgY29uZmlnID0gYXBpLmNyZWF0ZV9ydW5uaW5nX2NvbmZpZyh1bmRlZmluZWQsIHRhcmdldEZpbGUsIFRlbXBsYXRlclJ1bk1vZGUuU3RhcnR1cFRlbXBsYXRlKTtcbiAgcmV0dXJuIGF3YWl0IGFwaS5mdW5jdGlvbnNfZ2VuZXJhdG9yLmdlbmVyYXRlX29iamVjdChjb25maWcpO1xufVxuXG4vKipcbiAqIEdldHMgdGhlIGZpbGUgdGhlIGlubmVybW9zdCBpbi1mbGlnaHQge0BsaW5rIHBhcnNlVGVtcGxhdGV9IHJlbmRlciBpcyBmb3IuXG4gKlxuICogUmVuZGVycyBuZXN0IFx1MjAxNCBhIHRlbXBsYXRlIG1heSByZW5kZXIgYW5vdGhlciBcdTIwMTQgc28gdGhlIGNhbGxzIGZvcm0gYSBzdGFjayBhbmQgdGhpcyByZXBvcnRzIHRoZSB0b3Agb2ZcbiAqIGl0LiBPdXRzaWRlIGFueSByZW5kZXIgaXQgaXMgYG51bGxgLlxuICpcbiAqIEByZXR1cm5zIFRoZSByZW5kZXIgdGFyZ2V0LCBvciBgbnVsbGAgd2hlbiBubyByZW5kZXIgaXMgaW4gZmxpZ2h0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0VGVtcGxhdGVyUmVuZGVyVGFyZ2V0RmlsZSgpOiBudWxsIHwgVEZpbGUge1xuICByZXR1cm4gcmVuZGVyVGFyZ2V0RmlsZXMuYXQoLTEpID8/IG51bGw7XG59XG5cbi8qKlxuICogUmVuZGVycyBhIGBUZW1wbGF0ZXJgIHRlbXBsYXRlIGFnYWluc3QgYSB0YXJnZXQgZmlsZSBhbmQgcmV0dXJucyB0aGUgcmVzdWx0aW5nIHRleHQsIHdpdGhvdXQgd3JpdGluZ1xuICogYW55dGhpbmcuXG4gKlxuICogRm9yIHRoZSBkdXJhdGlvbiBvZiB0aGUgY2FsbCB7QGxpbmsgZ2V0VGVtcGxhdGVyUmVuZGVyVGFyZ2V0RmlsZX0gYW5kXG4gKiB7QGxpbmsgVGVtcGxhdGVyQWN0aXZlRmlsZVByb3ZpZGVyfSByZXBvcnQgYHRhcmdldFBhdGhPckZpbGVgLCBzbyBhIGNvbnN1bWVyJ3Mgb3duIGhlbHBlcnMgaW52b2tlZCBmcm9tXG4gKiBpbnNpZGUgdGhlIHRlbXBsYXRlIHJlc29sdmUgYWdhaW5zdCBpdCByYXRoZXIgdGhhbiBhZ2FpbnN0IHdoYXRldmVyIHRoZSB1c2VyIGhhcyBvcGVuLlxuICpcbiAqIEBwYXJhbSBwYXJhbXMgLSBUaGUge0BsaW5rIFBhcnNlVGVtcGxhdGVQYXJhbXN9LlxuICogQHJldHVybnMgQSB7QGxpbmsgUHJvbWlzZX0gcmVzb2x2aW5nIHRvIHRoZSByZW5kZXJlZCB0ZXh0LlxuICogQHRocm93cyBBIHtAbGluayBUZW1wbGF0ZXJVbmF2YWlsYWJsZUVycm9yfSB3aGVuIGBUZW1wbGF0ZXJgIGlzIG5vdCBsb2FkZWQgb3IgaXRzIHNoYXBlIGhhcyBjaGFuZ2VkLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGFyc2VUZW1wbGF0ZShwYXJhbXM6IFBhcnNlVGVtcGxhdGVQYXJhbXMpOiBQcm9taXNlPHN0cmluZz4ge1xuICBjb25zdCB7XG4gICAgYXBwLFxuICAgIHRhcmdldFBhdGhPckZpbGUsXG4gICAgdGVtcGxhdGVQYXRoT3JGaWxlXG4gIH0gPSBwYXJhbXM7XG4gIGNvbnN0IHRlbXBsYXRlRmlsZSA9IGdldEZpbGUoe1xuICAgIGFwcCxcbiAgICBwYXRoT3JGaWxlOiB0ZW1wbGF0ZVBhdGhPckZpbGVcbiAgfSk7XG4gIGNvbnN0IHRhcmdldEZpbGUgPSBnZXRGaWxlKHtcbiAgICBhcHAsXG4gICAgcGF0aE9yRmlsZTogdGFyZ2V0UGF0aE9yRmlsZVxuICB9KTtcbiAgY29uc3QgYXBpID0gcmVxdWlyZVRlbXBsYXRlckFwaShhcHApO1xuXG4gIHJlbmRlclRhcmdldEZpbGVzLnB1c2godGFyZ2V0RmlsZSk7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IGFwaS5yZWFkX2FuZF9wYXJzZV90ZW1wbGF0ZSh7XG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2FtZWxjYXNlIC0tIGBUZW1wbGF0ZXJgIEFQSS5cbiAgICAgIHJ1bl9tb2RlOiBUZW1wbGF0ZXJSdW5Nb2RlLkR5bmFtaWNQcm9jZXNzb3IsXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgY2FtZWxjYXNlIC0tIGBUZW1wbGF0ZXJgIEFQSS5cbiAgICAgIHRhcmdldF9maWxlOiB0YXJnZXRGaWxlLFxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNhbWVsY2FzZSAtLSBgVGVtcGxhdGVyYCBBUEkuXG4gICAgICB0ZW1wbGF0ZV9maWxlOiB0ZW1wbGF0ZUZpbGVcbiAgICB9KTtcbiAgfSBmaW5hbGx5IHtcbiAgICByZW5kZXJUYXJnZXRGaWxlcy5wb3AoKTtcbiAgfVxufVxuXG4vKipcbiAqIEdldHMgYFRlbXBsYXRlcmAncyBpbnRlcm5hbCBBUEksIHRocm93aW5nIHdoZW4gaXQgY2Fubm90IGJlIGhhZC5cbiAqXG4gKiBVc2UgdGhpcyB3aGVyZSB0aGUgY2FsbGVyIGNhbm5vdCBjYXJyeSBvbiB3aXRob3V0IGBUZW1wbGF0ZXJgIFx1MjAxNCB0aGUgZXJyb3IgbmFtZXMgdGhlIHBsdWdpbiBhbmQgc2F5cyB3aGljaFxuICogb2YgdGhlIHR3byBmYWlsdXJlcyBvY2N1cnJlZC4gVXNlIHtAbGluayByZXNvbHZlVGVtcGxhdGVyQXBpfSBpbnN0ZWFkIHdoZXJlIHRoZSBpbnRlZ3JhdGlvbiBpcyBvcHRpb25hbC5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIGBUZW1wbGF0ZXJgJ3MgaW50ZXJuYWwgQVBJLlxuICogQHRocm93cyBBIHtAbGluayBUZW1wbGF0ZXJVbmF2YWlsYWJsZUVycm9yfSB3aGVuIGBUZW1wbGF0ZXJgIGlzIG5vdCBsb2FkZWQgb3IgaXRzIHNoYXBlIGhhcyBjaGFuZ2VkLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWlyZVRlbXBsYXRlckFwaShhcHA6IEFwcCk6IFRlbXBsYXRlckFwaSB7XG4gIGlmICghYXBwLnBsdWdpbnMuZ2V0UGx1Z2luKFRFTVBMQVRFUl9QTFVHSU5fSUQpKSB7XG4gICAgdGhyb3cgbmV3IFRlbXBsYXRlclVuYXZhaWxhYmxlRXJyb3IoVGVtcGxhdGVyVW5hdmFpbGFiaWxpdHlSZWFzb24uTm90TG9hZGVkKTtcbiAgfVxuXG4gIGNvbnN0IGFwaSA9IHJlc29sdmVUZW1wbGF0ZXJBcGkoYXBwKTtcbiAgaWYgKCFhcGkpIHtcbiAgICB0aHJvdyBuZXcgVGVtcGxhdGVyVW5hdmFpbGFibGVFcnJvcihUZW1wbGF0ZXJVbmF2YWlsYWJpbGl0eVJlYXNvbi5TaGFwZUNoYW5nZWQpO1xuICB9XG5cbiAgcmV0dXJuIGFwaTtcbn1cblxuLyoqXG4gKiBHZXRzIGBUZW1wbGF0ZXJgJ3MgaW50ZXJuYWwgQVBJLCB3aGVuIGBUZW1wbGF0ZXJgIGlzIGluc3RhbGxlZCwgZW5hYmxlZCBhbmQgc3RpbGwgdGhlIHNoYXBlIHRoaXMgbGlicmFyeVxuICogZXhwZWN0cy5cbiAqXG4gKiBAcGFyYW0gYXBwIC0gVGhlIE9ic2lkaWFuIGFwcCBpbnN0YW5jZS5cbiAqIEByZXR1cm5zIFRoZSBpbnRlcm5hbCBBUEksIG9yIGBudWxsYCB3aGVuIGBUZW1wbGF0ZXJgIGlzIG5vdCB0aGVyZSB0byB0YWxrIHRvLlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZVRlbXBsYXRlckFwaShhcHA6IEFwcCk6IG51bGwgfCBUZW1wbGF0ZXJBcGkge1xuICBjb25zdCBwbHVnaW4gPSBhcHAucGx1Z2lucy5nZXRQbHVnaW4oVEVNUExBVEVSX1BMVUdJTl9JRCk7XG4gIGlmICghcGx1Z2luIHx8ICEoJ3RlbXBsYXRlcicgaW4gcGx1Z2luKSkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29uc3QgdGVtcGxhdGVyOiB1bmtub3duID0gcGx1Z2luLnRlbXBsYXRlcjtcbiAgcmV0dXJuIGlzVGVtcGxhdGVyQXBpKHRlbXBsYXRlcikgPyB0ZW1wbGF0ZXIgOiBudWxsO1xufVxuXG4vKlxuICogVGhlIHN0YWNrIG9mIGZpbGVzIGluLWZsaWdodCBgcGFyc2VUZW1wbGF0ZWAgY2FsbHMgYXJlIHJlbmRlcmluZyBmb3IsIGlubmVybW9zdCBsYXN0LiBBIHN0YWNrIHJhdGhlclxuICogdGhhbiBhIHNpbmdsZSBzbG90IGJlY2F1c2UgYSB0ZW1wbGF0ZSBtYXkgcmVuZGVyIGFub3RoZXIsIGFuZCBhbiBhcnJheSByYXRoZXIgdGhhbiBhIHJlYXNzaWduZWRcbiAqIHZhcmlhYmxlIGJlY2F1c2UgcHVzaGluZyBhbmQgcG9wcGluZyBhIGBjb25zdGAgbmVlZHMgbm8gd3JpdGUgdG8gYW4gb3V0ZXIgYmluZGluZyBhY3Jvc3MgYW4gYGF3YWl0YC5cbiAqL1xuY29uc3QgcmVuZGVyVGFyZ2V0RmlsZXM6IFRGaWxlW10gPSBbXTtcblxuLyoqXG4gKiBDaGVja3MgdGhhdCBhIHZhbHVlIGlzIGBUZW1wbGF0ZXJgJ3MgaW50ZXJuYWwgQVBJLCBieSB0aGUgbWVtYmVycyB0aGlzIGxpYnJhcnkgYWN0dWFsbHkgY2FsbHMuXG4gKlxuICogQSBwcmVkaWNhdGUgcmF0aGVyIHRoYW4gYSBjYXN0IG9uIHB1cnBvc2U6IGB0ZW1wbGF0ZXJgIGlzIG5vdCBwYXJ0IG9mIE9ic2lkaWFuJ3MgYFBsdWdpbmAgdHlwZSwgc28gdGhlXG4gKiB2YWx1ZSBhcnJpdmVzIGFzIGB1bmtub3duYCBhbmQgdGhlIG9ubHkgaG9uZXN0IHdheSB0byB0eXBlIGl0IGlzIHRvIFZFUklGWSBpdC4gQSBgVGVtcGxhdGVyYCB0aGF0IHJlbmFtZXNcbiAqIG9uZSBvZiB0aGVzZSB0aGVyZWZvcmUgcmVhZHMgYXMgXCJub3QgdGhlcmVcIiwgaW5zdGVhZCBvZiB0aHJvd2luZyBmcm9tIGluc2lkZSBhIHJlbmRlci5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgLSBUaGUgY2FuZGlkYXRlIGB0ZW1wbGF0ZXJgIG9iamVjdC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgaXQgY2FycmllcyBldmVyeSBtZW1iZXIgdGhpcyBsaWJyYXJ5IGNhbGxzLlxuICovXG5mdW5jdGlvbiBpc1RlbXBsYXRlckFwaSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIFRlbXBsYXRlckFwaSB7XG4gIGlmICh0eXBlb2YgdmFsdWUgIT09ICdvYmplY3QnIHx8IHZhbHVlID09PSBudWxsIHx8ICEoJ2NyZWF0ZV9ydW5uaW5nX2NvbmZpZycgaW4gdmFsdWUpIHx8IHR5cGVvZiB2YWx1ZS5jcmVhdGVfcnVubmluZ19jb25maWcgIT09ICdmdW5jdGlvbicgfHwgISgncmVhZF9hbmRfcGFyc2VfdGVtcGxhdGUnIGluIHZhbHVlKSB8fCB0eXBlb2YgdmFsdWUucmVhZF9hbmRfcGFyc2VfdGVtcGxhdGUgIT09ICdmdW5jdGlvbicgfHwgISgnZnVuY3Rpb25zX2dlbmVyYXRvcicgaW4gdmFsdWUpKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgY29uc3QgZnVuY3Rpb25zR2VuZXJhdG9yOiB1bmtub3duID0gdmFsdWUuZnVuY3Rpb25zX2dlbmVyYXRvcjtcbiAgcmV0dXJuIHR5cGVvZiBmdW5jdGlvbnNHZW5lcmF0b3IgPT09ICdvYmplY3QnICYmIGZ1bmN0aW9uc0dlbmVyYXRvciAhPT0gbnVsbCAmJiAnZ2VuZXJhdGVfb2JqZWN0JyBpbiBmdW5jdGlvbnNHZW5lcmF0b3IgJiYgdHlwZW9mIGZ1bmN0aW9uc0dlbmVyYXRvci5nZW5lcmF0ZV9vYmplY3QgPT09ICdmdW5jdGlvbic7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQTBDQSxTQUFTLDZCQUE2QjtBQUN0QyxTQUFTLGVBQWU7QUFrSWpCLE1BQU0sc0JBQXNCO0FBVTVCLElBQUssbUJBQUwsa0JBQUtBLHNCQUFMO0FBSUwsRUFBQUEsb0NBQUEsMkJBQXdCLEtBQXhCO0FBS0EsRUFBQUEsb0NBQUEsc0JBQW1CLEtBQW5CO0FBS0EsRUFBQUEsb0NBQUEsbUJBQWdCLEtBQWhCO0FBS0EsRUFBQUEsb0NBQUEseUJBQXNCLEtBQXRCO0FBTUEsRUFBQUEsb0NBQUEsc0JBQW1CLEtBQW5CO0FBTUEsRUFBQUEsb0NBQUEscUJBQWtCLEtBQWxCO0FBL0JVLFNBQUFBO0FBQUEsR0FBQTtBQXNDTCxJQUFLLGdDQUFMLGtCQUFLQyxtQ0FBTDtBQUtMLEVBQUFBLCtCQUFBLGVBQVk7QUFNWixFQUFBQSwrQkFBQSxrQkFBZTtBQVhMLFNBQUFBO0FBQUEsR0FBQTtBQXFCTCxNQUFNLG9DQUFvQyxzQkFBc0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9yRCxnQkFBOEI7QUFDNUMsV0FBTyw2QkFBNkIsS0FBSyxNQUFNLGNBQWM7QUFBQSxFQUMvRDtBQUNGO0FBTU8sTUFBTSxrQ0FBa0MsTUFBTTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBSW5DO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1QsWUFBWSxRQUF1QztBQUN4RCxVQUFNLG1DQUFtQyxtQkFBbUIscUJBQXFCLE1BQU0sR0FBRztBQUMxRixTQUFLLE9BQU87QUFDWixTQUFLLFNBQVM7QUFBQSxFQUNoQjtBQUNGO0FBVUEsZUFBc0Isc0JBQXNCLFFBQXNEO0FBQ2hHLFFBQU07QUFBQSxJQUNKO0FBQUEsSUFDQSxxQkFBcUI7QUFBQSxJQUNyQjtBQUFBLEVBQ0YsSUFBSTtBQUNKLFFBQU0sTUFBTSxvQkFBb0IsR0FBRztBQUVuQyxNQUFJLHNCQUFzQixJQUFJLDBCQUEwQjtBQUN0RCxXQUFPLElBQUk7QUFBQSxFQUNiO0FBRUEsUUFBTSxhQUFhLFFBQVE7QUFBQSxJQUN6QjtBQUFBLElBQ0EsWUFBWTtBQUFBLEVBQ2QsQ0FBQztBQUNELFFBQU0sU0FBUyxJQUFJLHNCQUFzQixRQUFXLFlBQVksdUJBQWdDO0FBQ2hHLFNBQU8sTUFBTSxJQUFJLG9CQUFvQixnQkFBZ0IsTUFBTTtBQUM3RDtBQVVPLFNBQVMsK0JBQTZDO0FBQzNELFNBQU8sa0JBQWtCLEdBQUcsRUFBRSxLQUFLO0FBQ3JDO0FBY0EsZUFBc0IsY0FBYyxRQUE4QztBQUNoRixRQUFNO0FBQUEsSUFDSjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsRUFDRixJQUFJO0FBQ0osUUFBTSxlQUFlLFFBQVE7QUFBQSxJQUMzQjtBQUFBLElBQ0EsWUFBWTtBQUFBLEVBQ2QsQ0FBQztBQUNELFFBQU0sYUFBYSxRQUFRO0FBQUEsSUFDekI7QUFBQSxJQUNBLFlBQVk7QUFBQSxFQUNkLENBQUM7QUFDRCxRQUFNLE1BQU0sb0JBQW9CLEdBQUc7QUFFbkMsb0JBQWtCLEtBQUssVUFBVTtBQUNqQyxNQUFJO0FBQ0YsV0FBTyxNQUFNLElBQUksd0JBQXdCO0FBQUE7QUFBQSxNQUV2QyxVQUFVO0FBQUE7QUFBQSxNQUVWLGFBQWE7QUFBQTtBQUFBLE1BRWIsZUFBZTtBQUFBLElBQ2pCLENBQUM7QUFBQSxFQUNILFVBQUU7QUFDQSxzQkFBa0IsSUFBSTtBQUFBLEVBQ3hCO0FBQ0Y7QUFZTyxTQUFTLG9CQUFvQixLQUF3QjtBQUMxRCxNQUFJLENBQUMsSUFBSSxRQUFRLFVBQVUsbUJBQW1CLEdBQUc7QUFDL0MsVUFBTSxJQUFJLDBCQUEwQiwyQkFBdUM7QUFBQSxFQUM3RTtBQUVBLFFBQU0sTUFBTSxvQkFBb0IsR0FBRztBQUNuQyxNQUFJLENBQUMsS0FBSztBQUNSLFVBQU0sSUFBSSwwQkFBMEIsaUNBQTBDO0FBQUEsRUFDaEY7QUFFQSxTQUFPO0FBQ1Q7QUFTTyxTQUFTLG9CQUFvQixLQUErQjtBQUNqRSxRQUFNLFNBQVMsSUFBSSxRQUFRLFVBQVUsbUJBQW1CO0FBQ3hELE1BQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxTQUFTO0FBQ3ZDLFdBQU87QUFBQSxFQUNUO0FBRUEsUUFBTSxZQUFxQixPQUFPO0FBQ2xDLFNBQU8sZUFBZSxTQUFTLElBQUksWUFBWTtBQUNqRDtBQU9BLE1BQU0sb0JBQTZCLENBQUM7QUFZcEMsU0FBUyxlQUFlLE9BQXVDO0FBQzdELE1BQUksT0FBTyxVQUFVLFlBQVksVUFBVSxRQUFRLEVBQUUsMkJBQTJCLFVBQVUsT0FBTyxNQUFNLDBCQUEwQixjQUFjLEVBQUUsNkJBQTZCLFVBQVUsT0FBTyxNQUFNLDRCQUE0QixjQUFjLEVBQUUseUJBQXlCLFFBQVE7QUFDaFIsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLHFCQUE4QixNQUFNO0FBQzFDLFNBQU8sT0FBTyx1QkFBdUIsWUFBWSx1QkFBdUIsUUFBUSxxQkFBcUIsc0JBQXNCLE9BQU8sbUJBQW1CLG9CQUFvQjtBQUMzSzsiLAogICJuYW1lcyI6IFsiVGVtcGxhdGVyUnVuTW9kZSIsICJUZW1wbGF0ZXJVbmF2YWlsYWJpbGl0eVJlYXNvbiJdCn0K
|
package/package.json
CHANGED