@pipeline-builder/pipeline-data 4.3.6 → 4.3.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/access-control-builder.js +1 -1
- package/lib/api/alert-destinations.js +1 -1
- package/lib/api/crud-service.js +1 -1
- package/lib/api/ecosystem-privacy.js +1 -1
- package/lib/api/keyset-cursor.js +1 -1
- package/lib/api/pipeline-step-resolution.js +1 -1
- package/lib/api/plugin-advisories.js +1 -1
- package/lib/api/plugin-consumption-policy.js +1 -1
- package/lib/api/plugin-resolution.js +6 -1
- package/lib/api/public-directory.d.ts +71 -3
- package/lib/api/public-directory.js +68 -22
- package/lib/api/query-builders.js +47 -2
- package/lib/api/reporting/analytics-queries.js +1 -1
- package/lib/api/reporting/caches.js +1 -1
- package/lib/api/reporting/daily-rollup.js +1 -1
- package/lib/api/reporting/deploy-rollup.js +1 -1
- package/lib/api/reporting/dora-scoring.js +1 -1
- package/lib/api/reporting/dora.js +1 -1
- package/lib/api/reporting/failure-classifier.js +1 -1
- package/lib/api/reporting/ingest.js +1 -1
- package/lib/api/reporting/last-deploy.js +1 -1
- package/lib/api/reporting/needs-attention.js +1 -1
- package/lib/api/reporting/plugin-exposure.js +1 -1
- package/lib/api/reporting/plugin-runtime.js +1 -1
- package/lib/api/reporting/query-scope.js +1 -1
- package/lib/api/reporting/retention-sweep.js +1 -1
- package/lib/api/reporting/retention.js +1 -1
- package/lib/api/reporting/sql-helpers.js +1 -1
- package/lib/api/reporting/stakeholder/compose.js +1 -1
- package/lib/api/reporting/stakeholder/index.js +1 -1
- package/lib/api/reporting/stakeholder/period.js +1 -1
- package/lib/api/reporting/stakeholder/report-html.js +1 -1
- package/lib/api/reporting/stakeholder/sections.js +1 -1
- package/lib/api/reporting/stakeholder/store.js +1 -1
- package/lib/api/reporting/stakeholder/templates.js +1 -1
- package/lib/api/reporting/types.js +1 -1
- package/lib/api/reporting-service.js +1 -1
- package/lib/api/semver-range.js +1 -1
- package/lib/api/soft-delete-sweep.js +1 -1
- package/lib/api/support-cases.js +1 -1
- package/lib/api/version-references.js +1 -1
- package/lib/api/viewer-context.js +1 -1
- package/lib/core/query-filters.d.ts +25 -0
- package/lib/core/query-filters.js +1 -1
- package/lib/database/drizzle-schema.d.ts +19 -0
- package/lib/database/drizzle-schema.js +1 -1
- package/lib/database/index.js +1 -1
- package/lib/database/pg-result.js +1 -1
- package/lib/database/postgres-connection.js +1 -1
- package/lib/database/public-reader.js +1 -1
- package/lib/database/read-connection.js +1 -1
- package/lib/database/read-lag.js +1 -1
- package/lib/database/retry-strategy.js +1 -1
- package/lib/database/schema/alert.js +1 -1
- package/lib/database/schema/compliance.js +1 -1
- package/lib/database/schema/dashboard.js +1 -1
- package/lib/database/schema/ecosystem.d.ts +17 -0
- package/lib/database/schema/ecosystem.js +3 -1
- package/lib/database/schema/message-attachment.js +1 -1
- package/lib/database/schema/message.d.ts +19 -0
- package/lib/database/schema/message.js +18 -1
- package/lib/database/schema/pipeline-template.js +1 -1
- package/lib/database/schema/pipeline.js +1 -1
- package/lib/database/schema/plugin.js +1 -1
- package/lib/database/schema/reporting-analytics.js +1 -1
- package/lib/database/schema/reporting-stakeholder.js +1 -1
- package/lib/database/schema/support.js +1 -1
- package/lib/database/tenancy.js +1 -1
- package/lib/index.js +1 -1
- package/package.json +8 -8
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
// Copyright 2026 Pipeline Builder Contributors
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
export {};
|
|
4
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktZmlsdGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb3JlL3F1ZXJ5LWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgdHlwZSB7IFZpc2liaWxpdHkgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5cbi8qKlxuICogQmFzZSBmaWx0ZXIgaW50ZXJmYWNlIGNvbnRhaW5pbmcgY29tbW9uIGZpbHRlciBwcm9wZXJ0aWVzIHNoYXJlZCBhY3Jvc3MgYWxsIGVudGl0eSB0eXBlcy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgZmlsdGVyOiBDb21tb25GaWx0ZXIgPSB7XG4gKiAgIGlkOiAnMTIzJyxcbiAqICAgb3JnSWQ6ICdteS1vcmcnLFxuICogICB2aXNpYmlsaXR5OiAncHVibGljJyxcbiAqICAgaXNEZWZhdWx0OiB0cnVlLFxuICogICBpc0FjdGl2ZTogdHJ1ZVxuICogfTtcbiAqIGBgYFxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbW1vbkZpbHRlciB7XG4gIC8qKlxuICAgKiBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGVudGl0eVxuICAgKiBDYW4gYmUgYSBzaW5nbGUgSUQgb3IgYXJyYXkgb2YgSURzIGZvciBiYXRjaCBmaWx0ZXJpbmdcbiAgICovXG4gIHJlYWRvbmx5IGlkPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLy8gLS0tIFZpZXdlciBjb250ZXh0IChzZXJ2ZXItc2V0LCBORVZFUiBjbGllbnQtc3VwcGxpZWQpIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuICAvLyBPbmx5IGVudGl0aWVzIHdob3NlIHZpc2liaWxpdHkgcHJlZGljYXRlIGhhcyBhIFBFUi1VU0VSIHJ1bmcgcmVhZCB0aGVzZSDigJRcbiAgLy8gcGlwZWxpbmUgdGVtcGxhdGVzIChgcHJpdmF0ZWAgaXMgYXV0aG9yLW9ubHkpIGFuZCBtZXNzYWdlcyAoYSBwZXItdXNlclxuICAvLyB0YXJnZXRlZCByb3cgaXMgdmlzaWJsZSBvbmx5IHRvIGl0cyB0YXJnZXQpLiBUaGVpciBzZXJ2aWNlcyBzdGFtcCB0aGVtIGZyb21cbiAgLy8gdGhlIHJlcXVlc3QncyBgVGVuYW50Q29udGV4dGAgdmlhIGB3aXRoVmlld2VyQ29udGV4dGAsIHNvIG5vIHJvdXRlIG9yIHF1ZXJ5XG4gIC8vIHN0cmluZyBjYW4gaW5qZWN0IHRoZW0uIEV2ZXJ5dGhpbmcgZWxzZSBpZ25vcmVzIHRoZW0uXG4gIC8vXG4gIC8vIEJvdGggZmFpbCBDTE9TRUQgd2hlbiBhYnNlbnQ6IG5vIHZpZXdlciBtZWFucyB0aGUgcGVyLXVzZXIgcnVuZyBtYXRjaGVzXG4gIC8vIE5PVEhJTkcsIG5ldmVyIGV2ZXJ5dGhpbmcuXG5cbiAgLyoqIENhbGxlcidzIHVzZXIgaWQsIG1hdGNoZWQgYWdhaW5zdCB0aGUgZW50aXR5J3MgcGVyLXVzZXIgY29sdW1uLiAqL1xuICByZWFkb25seSB2aWV3ZXJVc2VySWQ/OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBjYWxsZXIgaXMgYSBwbGF0Zm9ybSBzdXBlci1hZG1pbiAoc2VlcyBldmVyeSBydW5nKS4gKi9cbiAgcmVhZG9ubHkgdmlld2VySXNTdXBlckFkbWluPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3JnYW5pemF0aW9uIGlkZW50aWZpZXIgdG8gZmlsdGVyIGVudGl0aWVzIGJ5IG9yZ2FuaXphdGlvblxuICAgKiBDYW4gYmUgYSBzaW5nbGUgb3JnIElEIG9yIGFycmF5IGZvciBtdWx0aS1vcmcgZmlsdGVyaW5nXG4gICAqL1xuICByZWFkb25seSBvcmdJZD86IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBOYXJyb3cgdG8gb25lIHJ1bmcgb2YgdGhlIHNoYXJlZCB0aHJlZS1ydW5nIHNoYXJpbmcgbGFkZGVyLiBBcHBsaWVkIFdJVEhJTlxuICAgKiB3aGF0IHRoZSBjYWxsZXIgY2FuIGFscmVhZHkgc2VlIOKAlCBuZXZlciB3aWRlbnMgaXQuXG4gICAqIEBzZWUgVmlzaWJpbGl0eVxuICAgKi9cbiAgcmVhZG9ubHkgdmlzaWJpbGl0eT86IFZpc2liaWxpdHkgfCBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZpbHRlciBieSBkZWZhdWx0IHN0YXR1c1xuICAgKiAtIHRydWU6IE9ubHkgZGVmYXVsdCBlbnRpdGllc1xuICAgKiAtIGZhbHNlOiBPbmx5IG5vbi1kZWZhdWx0IGVudGl0aWVzXG4gICAqIC0gdW5kZWZpbmVkOiBBbGwgZW50aXRpZXNcbiAgICovXG4gIHJlYWRvbmx5IGlzRGVmYXVsdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZpbHRlciBieSBhY3RpdmUvaW5hY3RpdmUgc3RhdHVzXG4gICAqIC0gdHJ1ZTogT25seSBhY3RpdmUgZW50aXRpZXNcbiAgICogLSBmYWxzZTogT25seSBpbmFjdGl2ZSBlbnRpdGllc1xuICAgKiAtIHVuZGVmaW5lZDogQWxsIGVudGl0aWVzXG4gICAqL1xuICByZWFkb25seSBpc0FjdGl2ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiByZXN1bHRzIHRvIHJldHVyblxuICAgKiBAbWluaW11bSAxXG4gICAqIEBtYXhpbXVtIDEwMDBcbiAgICovXG4gIHJlYWRvbmx5IGxpbWl0PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgcmVzdWx0cyB0byBza2lwIChmb3IgcGFnaW5hdGlvbilcbiAgICogQG1pbmltdW0gMFxuICAgKi9cbiAgcmVhZG9ubHkgb2Zmc2V0PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTb3J0IGZpZWxkIGFuZCBkaXJlY3Rpb25cbiAgICogQGV4YW1wbGUgXCJuYW1lOmFzY1wiLCBcImNyZWF0ZWRBdDpkZXNjXCJcbiAgICovXG4gIHJlYWRvbmx5IHNvcnQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZpbHRlciBieSBjYXRhbG9nIG93bmVyIChkZXZlbG9wZXItcG9ydGFsIFwibXkgc2VydmljZXNcIiB2aWV3KS5cbiAgICogTWF0Y2hlcyB0aGUgZW50aXR5J3MgYG93bmVySWRgIGV4YWN0bHkgKGEgdXNlciBpZCBvciB0ZWFtIGlkKS5cbiAgICogT25seSBhcHBsaWVkIGJ5IGJ1aWxkZXJzIGZvciBlbnRpdGllcyB0aGF0IGNhcnJ5IGFuIG93bmVyIGNvbHVtblxuICAgKiAocGlwZWxpbmVzLCBwbHVnaW5zKTsgaWdub3JlZCBlbHNld2hlcmUuXG4gICAqL1xuICByZWFkb25seSBvd25lcklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgYnkgbGlmZWN5Y2xlIHN0YWdlIChleHBlcmltZW50YWwgfCBwcm9kdWN0aW9uIHwgZGVwcmVjYXRlZCkuXG4gICAqIE9ubHkgYXBwbGllZCBieSBidWlsZGVycyBmb3IgZW50aXRpZXMgdGhhdCBjYXJyeSBhIGxpZmVjeWNsZSBjb2x1bW4uXG4gICAqL1xuICByZWFkb25seSBsaWZlY3ljbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRmlsdGVyIGludGVyZmFjZSBmb3IgcGx1Z2luLXNwZWNpZmljIHByb3BlcnRpZXMuXG4gKiBFeHRlbmRzIENvbW1vbkZpbHRlciB0byBpbmNsdWRlIHBsdWdpbi1yZWxhdGVkIGZpbHRlciBvcHRpb25zLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBmaWx0ZXI6IFBsdWdpbkZpbHRlciA9IHtcbiAqICAgbmFtZTogJ25vZGVqcy1idWlsZCcsXG4gKiAgIHZlcnNpb246ICcxLjAuMCcsXG4gKiAgIGlzQWN0aXZlOiB0cnVlXG4gKiB9O1xuICogYGBgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGx1Z2luRmlsdGVyIGV4dGVuZHMgQ29tbW9uRmlsdGVyIHtcbiAgLyoqXG4gICAqIFBsdWdpbiBuYW1lIHRvIGZpbHRlciBieVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSG93IGBuYW1lYCBtYXRjaGVzOiBgY29udGFpbnNgIChkZWZhdWx0IOKAlCBjYXNlLWluc2Vuc2l0aXZlIHN1YnN0cmluZywgZm9yXG4gICAqIGxpc3Qvc2VhcmNoKSBvciBgZXhhY3RgIChyZXNvbHV0aW9uIOKAlCB0aGUgbG9va3VwIHBhdGgpLiBJbnRlcm5hbDogbm90IGluXG4gICAqIHRoZSBwdWJsaWMgZmlsdGVyIHNjaGVtYS5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWVNYXRjaD86ICdleGFjdCcgfCAnY29udGFpbnMnO1xuXG4gIC8qKlxuICAgKiBQdWJsaXNoZXIgaGFuZGxlIG9mIGFuIGluc3RhbGxlZCBsaXN0aW5nIHRvIHJlc29sdmUgdGhyb3VnaC5cbiAgICogTG9va3VwIG9ubHk6IGEgYHBsdWdpbnNgIHJvdyBxdWVyeSBpZ25vcmVzIGl0ICh0aGUgcmVzb2x2ZXIgcm91dGVzIGFcbiAgICogcXVhbGlmaWVkIHJlZmVyZW5jZSB0byB0aGUgbGlzdGluZywgbmV2ZXIgdG8gYW4gb3JnJ3Mgb3duIHJvd3MpLlxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaGVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQbHVnaW4gdmVyc2lvbiBzcGVjOiBleGFjdCAoYDEuMi4zYCksIGNhcmV0IChgXjEuMi4zYCksIHRpbGRlIChgfjEuMi4zYCksXG4gICAqIHBhcnRpYWwgKGAxYCwgYDEuMmAsIGAxLnhgKSBvciBgbGF0ZXN0YCDigJQgc2VlIHNlbXZlci1yYW5nZS50cy4gQSByYW5nZSBuZXZlclxuICAgKiBtYXRjaGVzIGEgeWFua2VkIHZlcnNpb24uXG4gICAqIEBleGFtcGxlIFwiMS4wLjBcIiwgXCJeMi4wLjBcIiwgXCJ+MS4yLjNcIiwgXCJsYXRlc3RcIlxuICAgKi9cbiAgcmVhZG9ubHkgdmVyc2lvbj86IHN0cmluZztcblxuICAvKiogRXhjbHVkZSB5YW5rZWQgdmVyc2lvbnMgKHJlc29sdXRpb24gd2l0aG91dCBhIHZlcnNpb24gc3BlYykuIEludGVybmFsLiAqL1xuICByZWFkb25seSBleGNsdWRlWWFua2VkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRXhjbHVkZSB2ZXJzaW9ucyB0aGUgbmlnaHRseSByZXNjYW4gZmxhZ2dlZCAoYHNjYW5fZmxhZ2dlZF9hdGAgc2V0KSDigJQgdGhlXG4gICAqIGxvb2t1cCdzIFwibmV3ZXN0IHVuZmxhZ2dlZCB2ZXJzaW9uIHRvIG1vdmUgdG9cIiBzdWdnZXN0aW9uLiBOZXZlciBhcHBsaWVkIHRvXG4gICAqIHdoYXQgYSByZWZlcmVuY2UgUkVTT0xWRVMgdG86IHZ1bG5lcmFiaWxpdHkgc3RhdGUgZG9lcyBub3Qgc2tpcCB2ZXJzaW9ucy4gSW50ZXJuYWwuXG4gICAqL1xuICByZWFkb25seSBleGNsdWRlU2NhbkZsYWdnZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBLZXl3b3JkIHRvIHNlYXJjaCB3aXRoaW4gdGhlIGtleXdvcmRzIEpTT05CIGFycmF5IChjYXNlLWluc2Vuc2l0aXZlIGNvbnRhaW5zKVxuICAgKi9cbiAgcmVhZG9ubHkga2V5d29yZD86IHN0cmluZztcblxuICAvKipcbiAgICogUGx1Z2luIGNhdGVnb3J5IHRvIGZpbHRlciBieVxuICAgKiBAZXhhbXBsZSBcImxhbmd1YWdlXCIsIFwic2VjdXJpdHlcIiwgXCJ0ZXN0aW5nXCJcbiAgICovXG4gIHJlYWRvbmx5IGNhdGVnb3J5Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIEZpbHRlciBpbnRlcmZhY2UgZm9yIHBpcGVsaW5lLXNwZWNpZmljIHByb3BlcnRpZXMuXG4gKiBFeHRlbmRzIENvbW1vbkZpbHRlciB0byBpbmNsdWRlIHBpcGVsaW5lLXJlbGF0ZWQgZmlsdGVyIG9wdGlvbnMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGZpbHRlcjogUGlwZWxpbmVGaWx0ZXIgPSB7XG4gKiAgIHByb2plY3Q6ICdteS1hcHAnLFxuICogICBvcmdhbml6YXRpb246ICdteS1vcmcnLFxuICogICBwaXBlbGluZU5hbWU6ICdteS1waXBlbGluZScsXG4gKiAgIGlzQWN0aXZlOiB0cnVlXG4gKiB9O1xuICogYGBgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGlwZWxpbmVGaWx0ZXIgZXh0ZW5kcyBDb21tb25GaWx0ZXIge1xuICAvKipcbiAgICogUHJvamVjdCBuYW1lIGFzc29jaWF0ZWQgd2l0aCB0aGUgcGlwZWxpbmVcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3Q/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9yZ2FuaXphdGlvbiBuYW1lIGFzc29jaWF0ZWQgd2l0aCB0aGUgcGlwZWxpbmVcbiAgICovXG4gIHJlYWRvbmx5IG9yZ2FuaXphdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogUGlwZWxpbmUgbmFtZSB0byBmaWx0ZXIgYnlcbiAgICovXG4gIHJlYWRvbmx5IHBpcGVsaW5lTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogS2V5d29yZCB0byBzZWFyY2ggd2l0aGluIHRoZSBrZXl3b3JkcyBKU09OQiBhcnJheSAoY2FzZS1pbnNlbnNpdGl2ZSBjb250YWlucylcbiAgICovXG4gIHJlYWRvbmx5IGtleXdvcmQ/OiBzdHJpbmc7XG59XG5cbi8qKiBGaWx0ZXIgaW50ZXJmYWNlIGZvciBwaXBlbGluZS10ZW1wbGF0ZSBxdWVyaWVzIChnb2xkZW4tcGF0aCBjYXRhbG9nKS4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGlwZWxpbmVUZW1wbGF0ZUZpbHRlciBleHRlbmRzIENvbW1vbkZpbHRlciB7XG4gIC8qKiBUZW1wbGF0ZSBuYW1lIChjYXNlLWluc2Vuc2l0aXZlIGNvbnRhaW5zKS4gKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcbiAgLyoqIENhdGVnb3J5IHRvIGZpbHRlciBieSAoZS5nLiAnbGFuZ3VhZ2UnLCAnZ2VuZXJhbCcpLiAqL1xuICByZWFkb25seSBjYXRlZ29yeT86IHN0cmluZztcbiAgLyoqIEtleXdvcmQgc2VhcmNoIHdpdGhpbiB0aGUga2V5d29yZHMgSlNPTkIgYXJyYXkuICovXG4gIHJlYWRvbmx5IGtleXdvcmQ/OiBzdHJpbmc7XG4gIC8vIFNoYXJpbmcgcnVuZyArIHZpZXdlciBjb250ZXh0IGFyZSBpbmhlcml0ZWQgZnJvbSBDb21tb25GaWx0ZXIuXG59XG5cbi8qKlxuICogRmlsdGVyIGludGVyZmFjZSBmb3IgbWVzc2FnZS1zcGVjaWZpYyBwcm9wZXJ0aWVzLlxuICogRXh0ZW5kcyBDb21tb25GaWx0ZXIgdG8gaW5jbHVkZSBtZXNzYWdlLXJlbGF0ZWQgZmlsdGVyIG9wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWVzc2FnZUZpbHRlciBleHRlbmRzIENvbW1vbkZpbHRlciB7XG4gIC8qKlxuICAgKiBUaHJlYWQgSUQgdG8gZmlsdGVyIGJ5IChmb3IgZmV0Y2hpbmcgdGhyZWFkIHJlcGxpZXMpLlxuICAgKiBQYXNzIGBudWxsYCB0byBmaWx0ZXIgZm9yIHJvb3QgbWVzc2FnZXMgb25seSAodGhyZWFkSWQgSVMgTlVMTCkuXG4gICAqL1xuICByZWFkb25seSB0aHJlYWRJZD86IHN0cmluZyB8IG51bGw7XG5cbiAgLyoqXG4gICAqIFJlY2lwaWVudCBvcmdhbml6YXRpb24gSUQgdG8gZmlsdGVyIGJ5XG4gICAqIFVzZSAnKicgZm9yIGJyb2FkY2FzdCBhbm5vdW5jZW1lbnRzXG4gICAqL1xuICByZWFkb25seSByZWNpcGllbnRPcmdJZD86IHN0cmluZztcblxuICAvKipcbiAgICogUmVjaXBpZW50IHVzZXIgSUQgdG8gZmlsdGVyIGJ5IChwZXItdXNlciB0YXJnZXRpbmcgd2l0aGluIHRoZSByZWNpcGllbnRcbiAgICogb3JnKS4gUGFzcyBgbnVsbGAgdG8gbWF0Y2ggb3JnLXdpZGUgbWVzc2FnZXMgb25seSAocmVjaXBpZW50X3VzZXJfaWQgSVNcbiAgICogTlVMTCkuIFJhcmVseSBzZXQgZGlyZWN0bHkgYnkgY2FsbGVycyDigJQgc2VlIGB2aWV3ZXJVc2VySWRgIGZvciB0aGVcbiAgICogdmlzaWJpbGl0eS1zY29waW5nIHZhcmlhbnQuXG4gICAqL1xuICByZWFkb25seSByZWNpcGllbnRVc2VySWQ/OiBzdHJpbmcgfCBudWxsO1xuXG4gIC8vIE5PVEU6IHRoZSBWSUVXRVIncyB1c2VyIGlkIChgdmlld2VyVXNlcklkYCkgaXMgaW5oZXJpdGVkIGZyb20gQ29tbW9uRmlsdGVyLlxuICAvLyBGb3IgbWVzc2FnZXMgaXQgaXMgTk9UIGEgY29sdW1uIGZpbHRlcjogd2hlbiBwcmVzZW50LCB0aGUgcmVjaXBpZW50LXNpZGVcbiAgLy8gYnJhbmNoIGluIGBidWlsZE1lc3NhZ2VDb25kaXRpb25zYCB3aWRlbnMgdG8gaW5jbHVkZSByb3dzIHRhcmdldGVkIGF0IHRoaXNcbiAgLy8gdXNlciAocmVjaXBpZW50X3VzZXJfaWQgPSB2aWV3ZXJVc2VySWQpIEFMT05HU0lERSBvcmctd2lkZSBvbmVzXG4gIC8vIChyZWNpcGllbnRfdXNlcl9pZCBJUyBOVUxMKS4gV2hlbiBhYnNlbnQsIG9ubHkgb3JnLXdpZGUgcmVjaXBpZW50IHJvd3MgYXJlXG4gIC8vIHZpc2libGUsIHNvIGEgdXNlci10YXJnZXRlZCBtZXNzYWdlIHN0YXlzIHByaXZhdGUgdG8gaXRzIHRhcmdldCwgdGhlIHNlbmRlcixcbiAgLy8gYW5kIHRoZSBzeXN0ZW0gb3JnLiBNZXNzYWdlU2VydmljZSBzdGFtcHMgaXQgZnJvbSB0aGUgdGVuYW50IGNvbnRleHQuXG5cbiAgLyoqXG4gICAqIE1lc3NhZ2UgdHlwZSBmaWx0ZXJcbiAgICovXG4gIHJlYWRvbmx5IG1lc3NhZ2VUeXBlPzogJ2Fubm91bmNlbWVudCcgfCAnY29udmVyc2F0aW9uJztcblxuICAvKipcbiAgICogRmlsdGVyIGJ5IHByaW9yaXR5IGxldmVsXG4gICAqL1xuICByZWFkb25seSBwcmlvcml0eT86ICdub3JtYWwnIHwgJ2hpZ2gnIHwgJ3VyZ2VudCc7XG5cbiAgLyoqXG4gICAqIENoYW5uZWwvaW5ib3gtYnVja2V0IGZpbHRlciAoZS5nLiAnc3VwcG9ydCcsICdoZWxwJykuIE1hdGNoZXMgcm93c1xuICAgKiBleGFjdGx5OyBwYXNzIG51bGwgdG8gbWF0Y2ggY2hhbm5lbCBJUyBOVUxMIChvcmctdG8tb3JnIG1lc3NhZ2VzKS5cbiAgICovXG4gIHJlYWRvbmx5IGNoYW5uZWw/OiBzdHJpbmcgfCBudWxsO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgYnkgcmVhZCBzdGF0ZSBmb3IgdGhlIHJlcXVlc3Rpbmcgb3JnLlxuICAgKiBJbXBsZW1lbnRlZCBhcyBhIEpTT05CIGtleS1leGlzdGVuY2UgY2hlY2sgYWdhaW5zdCBgbWVzc2FnZXMucmVhZF9ieWBcbiAgICogKGEgYHsgW29yZ0lkXTogaXNvVGltZXN0YW1wIH1gIG1hcCksIHVzaW5nIHRoZSBvcmdJZCBwYXNzZWQgdG9cbiAgICogYGJ1aWxkTWVzc2FnZUNvbmRpdGlvbnNgLlxuICAgKiAtIHRydWUgIOKGkiBvbmx5IG1lc3NhZ2VzIHRoZSBvcmcgaGFzIHJlYWQgKG9yZ0lkIGtleSBleGlzdHMgaW4gcmVhZF9ieSlcbiAgICogLSBmYWxzZSDihpIgb25seSBtZXNzYWdlcyB0aGUgb3JnIGhhcyBOT1QgcmVhZFxuICAgKiAtIHVuZGVmaW5lZCDihpIgbm8gcmVhZC1zdGF0ZSBmaWx0ZXJcbiAgICovXG4gIHJlYWRvbmx5IGlzUmVhZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZyZWUtdGV4dCBpbmJveCBzZWFyY2guIENhc2UtaW5zZW5zaXRpdmUgc3Vic3RyaW5nIG1hdGNoIGFnYWluc3QgdGhlXG4gICAqIG1lc3NhZ2UgYHN1YmplY3RgIE9SIGBjb250ZW50YCAoTElLRSB3aWxkY2FyZHMgaW4gdGhlIHRlcm0gYXJlIGVzY2FwZWQsIHNvIGFcbiAgICogbGl0ZXJhbCBgJWAvYF9gIG1hdGNoZXMgaXRzZWxmKS4gQXBwbGllZCBvbiB0b3Agb2YgdGhlIHZpc2liaWxpdHkgc2NvcGUsIHNvXG4gICAqIGl0IG5ldmVyIHdpZGVucyB3aGF0IHRoZSBjYWxsZXIgY2FuIHNlZS5cbiAgICovXG4gIHJlYWRvbmx5IHNlYXJjaD86IHN0cmluZztcbn1cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gQ29tcGxpYW5jZSBGaWx0ZXJzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8qKlxuICogRmlsdGVyIGZvciBjb21wbGlhbmNlIHBvbGljaWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsaWFuY2VQb2xpY3lGaWx0ZXIgZXh0ZW5kcyBDb21tb25GaWx0ZXIge1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBpc1RlbXBsYXRlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBGaWx0ZXIgZm9yIGNvbXBsaWFuY2UgcnVsZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxpYW5jZVJ1bGVGaWx0ZXIgZXh0ZW5kcyBDb21tb25GaWx0ZXIge1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICByZWFkb25seSBwb2xpY3lJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgdGFyZ2V0PzogJ3BsdWdpbicgfCAncGlwZWxpbmUnO1xuICByZWFkb25seSBmaWVsZD86IHN0cmluZztcbiAgcmVhZG9ubHkgc2V2ZXJpdHk/OiAnd2FybmluZycgfCAnZXJyb3InIHwgJ2NyaXRpY2FsJztcbiAgcmVhZG9ubHkgc2NvcGU/OiAnb3JnJyB8ICdwdWJsaXNoZWQnO1xuICByZWFkb25seSB0YWc/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRmlsdGVyIGZvciBjb21wbGlhbmNlIGV4ZW1wdGlvbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxpYW5jZUV4ZW1wdGlvbkZpbHRlciB7XG4gIHJlYWRvbmx5IG9yZ0lkPzogc3RyaW5nO1xuICByZWFkb25seSBydWxlSWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGVudGl0eVR5cGU/OiAncGx1Z2luJyB8ICdwaXBlbGluZSc7XG4gIHJlYWRvbmx5IGVudGl0eUlkPzogc3RyaW5nO1xuICByZWFkb25seSBzdGF0dXM/OiAncGVuZGluZycgfCAnYXBwcm92ZWQnIHwgJ3JlamVjdGVkJyB8ICdleHBpcmVkJztcbiAgcmVhZG9ubHkgbGltaXQ/OiBudW1iZXI7XG4gIHJlYWRvbmx5IG9mZnNldD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBGaWx0ZXIgZm9yIGNvbXBsaWFuY2UgYXVkaXQgbG9nIGVudHJpZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxpYW5jZUF1ZGl0RmlsdGVyIHtcbiAgcmVhZG9ubHkgb3JnSWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRhcmdldD86ICdwbHVnaW4nIHwgJ3BpcGVsaW5lJztcbiAgcmVhZG9ubHkgYWN0aW9uPzogc3RyaW5nO1xuICByZWFkb25seSByZXN1bHQ/OiAncGFzcycgfCAnd2FybicgfCAnYmxvY2snO1xuICByZWFkb25seSBzY2FuSWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRhdGVGcm9tPzogc3RyaW5nO1xuICByZWFkb25seSBkYXRlVG8/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGxpbWl0PzogbnVtYmVyO1xuICByZWFkb25seSBvZmZzZXQ/OiBudW1iZXI7XG59XG5cbi8qKlxuICogRmlsdGVyIGZvciBjb21wbGlhbmNlIHNjYW5zLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbXBsaWFuY2VTY2FuRmlsdGVyIHtcbiAgcmVhZG9ubHkgb3JnSWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHRhcmdldD86ICdwbHVnaW4nIHwgJ3BpcGVsaW5lJyB8ICdhbGwnO1xuICByZWFkb25seSBzdGF0dXM/OiAncGVuZGluZycgfCAncnVubmluZycgfCAnY29tcGxldGVkJyB8ICdmYWlsZWQnIHwgJ2NhbmNlbGxlZCc7XG4gIHJlYWRvbmx5IHRyaWdnZXJlZEJ5PzogJ21hbnVhbCcgfCAnc2NoZWR1bGVkJyB8ICdydWxlLWNoYW5nZScgfCAncnVsZS1kcnktcnVuJztcbiAgcmVhZG9ubHkgbGltaXQ/OiBudW1iZXI7XG4gIHJlYWRvbmx5IG9mZnNldD86IG51bWJlcjtcbn1cbiJdfQ==
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktZmlsdGVycy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvcmUvcXVlcnktZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB0eXBlIHsgVmlzaWJpbGl0eSB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcblxuLyoqXG4gKiBCYXNlIGZpbHRlciBpbnRlcmZhY2UgY29udGFpbmluZyBjb21tb24gZmlsdGVyIHByb3BlcnRpZXMgc2hhcmVkIGFjcm9zcyBhbGwgZW50aXR5IHR5cGVzLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCBmaWx0ZXI6IENvbW1vbkZpbHRlciA9IHtcbiAqICAgaWQ6ICcxMjMnLFxuICogICBvcmdJZDogJ215LW9yZycsXG4gKiAgIHZpc2liaWxpdHk6ICdwdWJsaWMnLFxuICogICBpc0RlZmF1bHQ6IHRydWUsXG4gKiAgIGlzQWN0aXZlOiB0cnVlXG4gKiB9O1xuICogYGBgXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tbW9uRmlsdGVyIHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGUgZW50aXR5XG4gICAqIENhbiBiZSBhIHNpbmdsZSBJRCBvciBhcnJheSBvZiBJRHMgZm9yIGJhdGNoIGZpbHRlcmluZ1xuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAvLyAtLS0gVmlld2VyIGNvbnRleHQgKHNlcnZlci1zZXQsIE5FVkVSIGNsaWVudC1zdXBwbGllZCkgLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gIC8vIE9ubHkgZW50aXRpZXMgd2hvc2UgdmlzaWJpbGl0eSBwcmVkaWNhdGUgaGFzIGEgUEVSLVVTRVIgcnVuZyByZWFkIHRoZXNlIOKAlFxuICAvLyBwaXBlbGluZSB0ZW1wbGF0ZXMgKGBwcml2YXRlYCBpcyBhdXRob3Itb25seSkgYW5kIG1lc3NhZ2VzIChhIHBlci11c2VyXG4gIC8vIHRhcmdldGVkIHJvdyBpcyB2aXNpYmxlIG9ubHkgdG8gaXRzIHRhcmdldCkuIFRoZWlyIHNlcnZpY2VzIHN0YW1wIHRoZW0gZnJvbVxuICAvLyB0aGUgcmVxdWVzdCdzIGBUZW5hbnRDb250ZXh0YCB2aWEgYHdpdGhWaWV3ZXJDb250ZXh0YCwgc28gbm8gcm91dGUgb3IgcXVlcnlcbiAgLy8gc3RyaW5nIGNhbiBpbmplY3QgdGhlbS4gRXZlcnl0aGluZyBlbHNlIGlnbm9yZXMgdGhlbS5cbiAgLy9cbiAgLy8gQm90aCBmYWlsIENMT1NFRCB3aGVuIGFic2VudDogbm8gdmlld2VyIG1lYW5zIHRoZSBwZXItdXNlciBydW5nIG1hdGNoZXNcbiAgLy8gTk9USElORywgbmV2ZXIgZXZlcnl0aGluZy5cblxuICAvKiogQ2FsbGVyJ3MgdXNlciBpZCwgbWF0Y2hlZCBhZ2FpbnN0IHRoZSBlbnRpdHkncyBwZXItdXNlciBjb2x1bW4uICovXG4gIHJlYWRvbmx5IHZpZXdlclVzZXJJZD86IHN0cmluZztcbiAgLyoqIFdoZXRoZXIgdGhlIGNhbGxlciBpcyBhIHBsYXRmb3JtIHN1cGVyLWFkbWluIChzZWVzIGV2ZXJ5IHJ1bmcpLiAqL1xuICByZWFkb25seSB2aWV3ZXJJc1N1cGVyQWRtaW4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPcmdhbml6YXRpb24gaWRlbnRpZmllciB0byBmaWx0ZXIgZW50aXRpZXMgYnkgb3JnYW5pemF0aW9uXG4gICAqIENhbiBiZSBhIHNpbmdsZSBvcmcgSUQgb3IgYXJyYXkgZm9yIG11bHRpLW9yZyBmaWx0ZXJpbmdcbiAgICovXG4gIHJlYWRvbmx5IG9yZ0lkPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE5hcnJvdyB0byBvbmUgcnVuZyBvZiB0aGUgc2hhcmVkIHRocmVlLXJ1bmcgc2hhcmluZyBsYWRkZXIuIEFwcGxpZWQgV0lUSElOXG4gICAqIHdoYXQgdGhlIGNhbGxlciBjYW4gYWxyZWFkeSBzZWUg4oCUIG5ldmVyIHdpZGVucyBpdC5cbiAgICogQHNlZSBWaXNpYmlsaXR5XG4gICAqL1xuICByZWFkb25seSB2aXNpYmlsaXR5PzogVmlzaWJpbGl0eSB8IHN0cmluZztcblxuICAvKipcbiAgICogRmlsdGVyIGJ5IGRlZmF1bHQgc3RhdHVzXG4gICAqIC0gdHJ1ZTogT25seSBkZWZhdWx0IGVudGl0aWVzXG4gICAqIC0gZmFsc2U6IE9ubHkgbm9uLWRlZmF1bHQgZW50aXRpZXNcbiAgICogLSB1bmRlZmluZWQ6IEFsbCBlbnRpdGllc1xuICAgKi9cbiAgcmVhZG9ubHkgaXNEZWZhdWx0PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRmlsdGVyIGJ5IGFjdGl2ZS9pbmFjdGl2ZSBzdGF0dXNcbiAgICogLSB0cnVlOiBPbmx5IGFjdGl2ZSBlbnRpdGllc1xuICAgKiAtIGZhbHNlOiBPbmx5IGluYWN0aXZlIGVudGl0aWVzXG4gICAqIC0gdW5kZWZpbmVkOiBBbGwgZW50aXRpZXNcbiAgICovXG4gIHJlYWRvbmx5IGlzQWN0aXZlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuXG4gICAqIEBtaW5pbXVtIDFcbiAgICogQG1heGltdW0gMTAwMFxuICAgKi9cbiAgcmVhZG9ubHkgbGltaXQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiByZXN1bHRzIHRvIHNraXAgKGZvciBwYWdpbmF0aW9uKVxuICAgKiBAbWluaW11bSAwXG4gICAqL1xuICByZWFkb25seSBvZmZzZXQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNvcnQgZmllbGQgYW5kIGRpcmVjdGlvblxuICAgKiBAZXhhbXBsZSBcIm5hbWU6YXNjXCIsIFwiY3JlYXRlZEF0OmRlc2NcIlxuICAgKi9cbiAgcmVhZG9ubHkgc29ydD86IHN0cmluZztcblxuICAvKipcbiAgICogRmlsdGVyIGJ5IGNhdGFsb2cgb3duZXIgKGRldmVsb3Blci1wb3J0YWwgXCJteSBzZXJ2aWNlc1wiIHZpZXcpLlxuICAgKiBNYXRjaGVzIHRoZSBlbnRpdHkncyBgb3duZXJJZGAgZXhhY3RseSAoYSB1c2VyIGlkIG9yIHRlYW0gaWQpLlxuICAgKiBPbmx5IGFwcGxpZWQgYnkgYnVpbGRlcnMgZm9yIGVudGl0aWVzIHRoYXQgY2FycnkgYW4gb3duZXIgY29sdW1uXG4gICAqIChwaXBlbGluZXMsIHBsdWdpbnMpOyBpZ25vcmVkIGVsc2V3aGVyZS5cbiAgICovXG4gIHJlYWRvbmx5IG93bmVySWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZpbHRlciBieSBsaWZlY3ljbGUgc3RhZ2UgKGV4cGVyaW1lbnRhbCB8IHByb2R1Y3Rpb24gfCBkZXByZWNhdGVkKS5cbiAgICogT25seSBhcHBsaWVkIGJ5IGJ1aWxkZXJzIGZvciBlbnRpdGllcyB0aGF0IGNhcnJ5IGEgbGlmZWN5Y2xlIGNvbHVtbi5cbiAgICovXG4gIHJlYWRvbmx5IGxpZmVjeWNsZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBGaWx0ZXIgaW50ZXJmYWNlIGZvciBwbHVnaW4tc3BlY2lmaWMgcHJvcGVydGllcy5cbiAqIEV4dGVuZHMgQ29tbW9uRmlsdGVyIHRvIGluY2x1ZGUgcGx1Z2luLXJlbGF0ZWQgZmlsdGVyIG9wdGlvbnMuXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IGZpbHRlcjogUGx1Z2luRmlsdGVyID0ge1xuICogICBuYW1lOiAnbm9kZWpzLWJ1aWxkJyxcbiAqICAgdmVyc2lvbjogJzEuMC4wJyxcbiAqICAgaXNBY3RpdmU6IHRydWVcbiAqIH07XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQbHVnaW5GaWx0ZXIgZXh0ZW5kcyBDb21tb25GaWx0ZXIge1xuICAvKipcbiAgICogUGx1Z2luIG5hbWUgdG8gZmlsdGVyIGJ5XG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIb3cgYG5hbWVgIG1hdGNoZXM6IGBjb250YWluc2AgKGRlZmF1bHQg4oCUIGNhc2UtaW5zZW5zaXRpdmUgc3Vic3RyaW5nLCBmb3JcbiAgICogbGlzdC9zZWFyY2gpIG9yIGBleGFjdGAgKHJlc29sdXRpb24g4oCUIHRoZSBsb29rdXAgcGF0aCkuIEludGVybmFsOiBub3QgaW5cbiAgICogdGhlIHB1YmxpYyBmaWx0ZXIgc2NoZW1hLlxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZU1hdGNoPzogJ2V4YWN0JyB8ICdjb250YWlucyc7XG5cbiAgLyoqXG4gICAqIFB1Ymxpc2hlciBoYW5kbGUgb2YgYW4gaW5zdGFsbGVkIGxpc3RpbmcgdG8gcmVzb2x2ZSB0aHJvdWdoLlxuICAgKiBMb29rdXAgb25seTogYSBgcGx1Z2luc2Agcm93IHF1ZXJ5IGlnbm9yZXMgaXQgKHRoZSByZXNvbHZlciByb3V0ZXMgYVxuICAgKiBxdWFsaWZpZWQgcmVmZXJlbmNlIHRvIHRoZSBsaXN0aW5nLCBuZXZlciB0byBhbiBvcmcncyBvd24gcm93cykuXG4gICAqL1xuICByZWFkb25seSBwdWJsaXNoZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBsdWdpbiB2ZXJzaW9uIHNwZWM6IGV4YWN0IChgMS4yLjNgKSwgY2FyZXQgKGBeMS4yLjNgKSwgdGlsZGUgKGB+MS4yLjNgKSxcbiAgICogcGFydGlhbCAoYDFgLCBgMS4yYCwgYDEueGApIG9yIGBsYXRlc3RgIOKAlCBzZWUgc2VtdmVyLXJhbmdlLnRzLiBBIHJhbmdlIG5ldmVyXG4gICAqIG1hdGNoZXMgYSB5YW5rZWQgdmVyc2lvbi5cbiAgICogQGV4YW1wbGUgXCIxLjAuMFwiLCBcIl4yLjAuMFwiLCBcIn4xLjIuM1wiLCBcImxhdGVzdFwiXG4gICAqL1xuICByZWFkb25seSB2ZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKiBFeGNsdWRlIHlhbmtlZCB2ZXJzaW9ucyAocmVzb2x1dGlvbiB3aXRob3V0IGEgdmVyc2lvbiBzcGVjKS4gSW50ZXJuYWwuICovXG4gIHJlYWRvbmx5IGV4Y2x1ZGVZYW5rZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFeGNsdWRlIHZlcnNpb25zIHRoZSBuaWdodGx5IHJlc2NhbiBmbGFnZ2VkIChgc2Nhbl9mbGFnZ2VkX2F0YCBzZXQpIOKAlCB0aGVcbiAgICogbG9va3VwJ3MgXCJuZXdlc3QgdW5mbGFnZ2VkIHZlcnNpb24gdG8gbW92ZSB0b1wiIHN1Z2dlc3Rpb24uIE5ldmVyIGFwcGxpZWQgdG9cbiAgICogd2hhdCBhIHJlZmVyZW5jZSBSRVNPTFZFUyB0bzogdnVsbmVyYWJpbGl0eSBzdGF0ZSBkb2VzIG5vdCBza2lwIHZlcnNpb25zLiBJbnRlcm5hbC5cbiAgICovXG4gIHJlYWRvbmx5IGV4Y2x1ZGVTY2FuRmxhZ2dlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEtleXdvcmQgdG8gc2VhcmNoIHdpdGhpbiB0aGUga2V5d29yZHMgSlNPTkIgYXJyYXkgKGNhc2UtaW5zZW5zaXRpdmUgY29udGFpbnMpXG4gICAqL1xuICByZWFkb25seSBrZXl3b3JkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQbHVnaW4gY2F0ZWdvcnkgdG8gZmlsdGVyIGJ5XG4gICAqIEBleGFtcGxlIFwibGFuZ3VhZ2VcIiwgXCJzZWN1cml0eVwiLCBcInRlc3RpbmdcIlxuICAgKi9cbiAgcmVhZG9ubHkgY2F0ZWdvcnk/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogRmlsdGVyIGludGVyZmFjZSBmb3IgcGlwZWxpbmUtc3BlY2lmaWMgcHJvcGVydGllcy5cbiAqIEV4dGVuZHMgQ29tbW9uRmlsdGVyIHRvIGluY2x1ZGUgcGlwZWxpbmUtcmVsYXRlZCBmaWx0ZXIgb3B0aW9ucy5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgZmlsdGVyOiBQaXBlbGluZUZpbHRlciA9IHtcbiAqICAgcHJvamVjdDogJ215LWFwcCcsXG4gKiAgIG9yZ2FuaXphdGlvbjogJ215LW9yZycsXG4gKiAgIHBpcGVsaW5lTmFtZTogJ215LXBpcGVsaW5lJyxcbiAqICAgaXNBY3RpdmU6IHRydWVcbiAqIH07XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQaXBlbGluZUZpbHRlciBleHRlbmRzIENvbW1vbkZpbHRlciB7XG4gIC8qKlxuICAgKiBQcm9qZWN0IG5hbWUgYXNzb2NpYXRlZCB3aXRoIHRoZSBwaXBlbGluZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdD86IHN0cmluZztcblxuICAvKipcbiAgICogT3JnYW5pemF0aW9uIG5hbWUgYXNzb2NpYXRlZCB3aXRoIHRoZSBwaXBlbGluZVxuICAgKi9cbiAgcmVhZG9ubHkgb3JnYW5pemF0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQaXBlbGluZSBuYW1lIHRvIGZpbHRlciBieVxuICAgKi9cbiAgcmVhZG9ubHkgcGlwZWxpbmVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBLZXl3b3JkIHRvIHNlYXJjaCB3aXRoaW4gdGhlIGtleXdvcmRzIEpTT05CIGFycmF5IChjYXNlLWluc2Vuc2l0aXZlIGNvbnRhaW5zKVxuICAgKi9cbiAgcmVhZG9ubHkga2V5d29yZD86IHN0cmluZztcbn1cblxuLyoqIEZpbHRlciBpbnRlcmZhY2UgZm9yIHBpcGVsaW5lLXRlbXBsYXRlIHF1ZXJpZXMgKGdvbGRlbi1wYXRoIGNhdGFsb2cpLiAqL1xuZXhwb3J0IGludGVyZmFjZSBQaXBlbGluZVRlbXBsYXRlRmlsdGVyIGV4dGVuZHMgQ29tbW9uRmlsdGVyIHtcbiAgLyoqIFRlbXBsYXRlIG5hbWUgKGNhc2UtaW5zZW5zaXRpdmUgY29udGFpbnMpLiAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuICAvKiogQ2F0ZWdvcnkgdG8gZmlsdGVyIGJ5IChlLmcuICdsYW5ndWFnZScsICdnZW5lcmFsJykuICovXG4gIHJlYWRvbmx5IGNhdGVnb3J5Pzogc3RyaW5nO1xuICAvKiogS2V5d29yZCBzZWFyY2ggd2l0aGluIHRoZSBrZXl3b3JkcyBKU09OQiBhcnJheS4gKi9cbiAgcmVhZG9ubHkga2V5d29yZD86IHN0cmluZztcbiAgLy8gU2hhcmluZyBydW5nICsgdmlld2VyIGNvbnRleHQgYXJlIGluaGVyaXRlZCBmcm9tIENvbW1vbkZpbHRlci5cbn1cblxuLyoqXG4gKiBGaWx0ZXIgaW50ZXJmYWNlIGZvciBtZXNzYWdlLXNwZWNpZmljIHByb3BlcnRpZXMuXG4gKiBFeHRlbmRzIENvbW1vbkZpbHRlciB0byBpbmNsdWRlIG1lc3NhZ2UtcmVsYXRlZCBmaWx0ZXIgb3B0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXNzYWdlRmlsdGVyIGV4dGVuZHMgQ29tbW9uRmlsdGVyIHtcbiAgLyoqXG4gICAqIFRocmVhZCBJRCB0byBmaWx0ZXIgYnkgKGZvciBmZXRjaGluZyB0aHJlYWQgcmVwbGllcykuXG4gICAqIFBhc3MgYG51bGxgIHRvIGZpbHRlciBmb3Igcm9vdCBtZXNzYWdlcyBvbmx5ICh0aHJlYWRJZCBJUyBOVUxMKS5cbiAgICovXG4gIHJlYWRvbmx5IHRocmVhZElkPzogc3RyaW5nIHwgbnVsbDtcblxuICAvKipcbiAgICogUmVjaXBpZW50IG9yZ2FuaXphdGlvbiBJRCB0byBmaWx0ZXIgYnlcbiAgICogVXNlICcqJyBmb3IgYnJvYWRjYXN0IGFubm91bmNlbWVudHNcbiAgICovXG4gIHJlYWRvbmx5IHJlY2lwaWVudE9yZ0lkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZWNpcGllbnQgdXNlciBJRCB0byBmaWx0ZXIgYnkgKHBlci11c2VyIHRhcmdldGluZyB3aXRoaW4gdGhlIHJlY2lwaWVudFxuICAgKiBvcmcpLiBQYXNzIGBudWxsYCB0byBtYXRjaCBvcmctd2lkZSBtZXNzYWdlcyBvbmx5IChyZWNpcGllbnRfdXNlcl9pZCBJU1xuICAgKiBOVUxMKS4gUmFyZWx5IHNldCBkaXJlY3RseSBieSBjYWxsZXJzIOKAlCBzZWUgYHZpZXdlclVzZXJJZGAgZm9yIHRoZVxuICAgKiB2aXNpYmlsaXR5LXNjb3BpbmcgdmFyaWFudC5cbiAgICovXG4gIHJlYWRvbmx5IHJlY2lwaWVudFVzZXJJZD86IHN0cmluZyB8IG51bGw7XG5cbiAgLy8gTk9URTogdGhlIFZJRVdFUidzIHVzZXIgaWQgKGB2aWV3ZXJVc2VySWRgKSBpcyBpbmhlcml0ZWQgZnJvbSBDb21tb25GaWx0ZXIuXG4gIC8vIEZvciBtZXNzYWdlcyBpdCBpcyBOT1QgYSBjb2x1bW4gZmlsdGVyOiB3aGVuIHByZXNlbnQsIHRoZSByZWNpcGllbnQtc2lkZVxuICAvLyBicmFuY2ggaW4gYGJ1aWxkTWVzc2FnZUNvbmRpdGlvbnNgIHdpZGVucyB0byBpbmNsdWRlIHJvd3MgdGFyZ2V0ZWQgYXQgdGhpc1xuICAvLyB1c2VyIChyZWNpcGllbnRfdXNlcl9pZCA9IHZpZXdlclVzZXJJZCkgQUxPTkdTSURFIG9yZy13aWRlIG9uZXNcbiAgLy8gKHJlY2lwaWVudF91c2VyX2lkIElTIE5VTEwpLiBXaGVuIGFic2VudCwgb25seSBvcmctd2lkZSByZWNpcGllbnQgcm93cyBhcmVcbiAgLy8gdmlzaWJsZSwgc28gYSB1c2VyLXRhcmdldGVkIG1lc3NhZ2Ugc3RheXMgcHJpdmF0ZSB0byBpdHMgdGFyZ2V0LCB0aGUgc2VuZGVyLFxuICAvLyBhbmQgdGhlIHN5c3RlbSBvcmcuIE1lc3NhZ2VTZXJ2aWNlIHN0YW1wcyBpdCBmcm9tIHRoZSB0ZW5hbnQgY29udGV4dC5cblxuICAvKipcbiAgICogTWVzc2FnZSB0eXBlIGZpbHRlclxuICAgKi9cbiAgcmVhZG9ubHkgbWVzc2FnZVR5cGU/OiAnYW5ub3VuY2VtZW50JyB8ICdjb252ZXJzYXRpb24nO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgYnkgcHJpb3JpdHkgbGV2ZWxcbiAgICovXG4gIHJlYWRvbmx5IHByaW9yaXR5PzogJ25vcm1hbCcgfCAnaGlnaCcgfCAndXJnZW50JztcblxuICAvKipcbiAgICogQ2hhbm5lbC9pbmJveC1idWNrZXQgZmlsdGVyIChlLmcuICdzdXBwb3J0JywgJ2hlbHAnKS4gTWF0Y2hlcyByb3dzXG4gICAqIGV4YWN0bHk7IHBhc3MgbnVsbCB0byBtYXRjaCBjaGFubmVsIElTIE5VTEwgKG9yZy10by1vcmcgbWVzc2FnZXMpLlxuICAgKi9cbiAgcmVhZG9ubHkgY2hhbm5lbD86IHN0cmluZyB8IG51bGw7XG5cbiAgLyoqXG4gICAqIEZpbHRlciBieSByZWFkIHN0YXRlIGZvciB0aGUgcmVxdWVzdGluZyBvcmcuXG4gICAqIEltcGxlbWVudGVkIGFzIGEgSlNPTkIga2V5LWV4aXN0ZW5jZSBjaGVjayBhZ2FpbnN0IGBtZXNzYWdlcy5yZWFkX2J5YFxuICAgKiAoYSBgeyBbb3JnSWRdOiBpc29UaW1lc3RhbXAgfWAgbWFwKSwgdXNpbmcgdGhlIG9yZ0lkIHBhc3NlZCB0b1xuICAgKiBgYnVpbGRNZXNzYWdlQ29uZGl0aW9uc2AuXG4gICAqIC0gdHJ1ZSAg4oaSIG9ubHkgbWVzc2FnZXMgdGhlIG9yZyBoYXMgcmVhZCAob3JnSWQga2V5IGV4aXN0cyBpbiByZWFkX2J5KVxuICAgKiAtIGZhbHNlIOKGkiBvbmx5IG1lc3NhZ2VzIHRoZSBvcmcgaGFzIE5PVCByZWFkXG4gICAqIC0gdW5kZWZpbmVkIOKGkiBubyByZWFkLXN0YXRlIGZpbHRlclxuICAgKi9cbiAgcmVhZG9ubHkgaXNSZWFkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU2VuZGVyLCByZWxhdGl2ZSB0byB0aGUgdmlld2VyOlxuICAgKiAtIGAnbWUnYCAgICAg4oaSIHJvd3MgdGhlIHZpZXdpbmcgVVNFUiBhdXRob3JlZCAoYGNyZWF0ZWRfYnkgPSB2aWV3ZXJVc2VySWRgKTtcbiAgICogICAgICAgICAgICAgICAgd2l0aCBubyB2aWV3ZXIgaWQgaXQgbWF0Y2hlcyBub3RoaW5nIChmYWlsLWNsb3NlZCkuXG4gICAqIC0gYCdvcmcnYCAgICDihpIgcm93cyB0aGUgdmlld2luZyBPUkcgc2VudCAoYW55IG1lbWJlcikuXG4gICAqIC0gYCdvdGhlcnMnYCDihpIgcm93cyBhbm90aGVyIG9yZyBzZW50IChyZWNlaXZlZCBtYWlsICsgYW5ub3VuY2VtZW50cykuXG4gICAqL1xuICByZWFkb25seSBzZW50Qnk/OiAnbWUnIHwgJ29yZycgfCAnb3RoZXJzJztcblxuICAvKiogUm93cyBhIHNwZWNpZmljIHVzZXIgYXV0aG9yZWQgKGBjcmVhdGVkX2J5YCwgY29tcGFyZWQgY2FzZS1wcmVzZXJ2aW5nKS4gKi9cbiAgcmVhZG9ubHkgc2VuZGVyVXNlcklkPzogc3RyaW5nO1xuXG4gIC8qKiBSb3dzIGV4Y2hhbmdlZCB3aXRoIGEgc3BlY2lmaWMgb3JnOiBpdCBzZW50IHRoZW0sIG9yIGl0IHJlY2VpdmVkIHRoZW0uICovXG4gIHJlYWRvbmx5IGNvdW50ZXJwYXJ0eU9yZ0lkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGljaCBzaWRlIG9mIHRoZSByZXF1ZXN0aW5nIG9yZydzIG93biBgaGlkZGVuX2J5YCBzdGFtcCB0byByZXR1cm46XG4gICAqIGFic2VudC9mYWxzZSDihpIgdGhlIGluYm94IChyb3dzIHRoaXMgb3JnIGhhcyBOT1QgcmVtb3ZlZCDigJQgdGhlIGRlZmF1bHQpO1xuICAgKiB0cnVlIOKGkiBvbmx5IHJvd3MgdGhpcyBvcmcgcmVtb3ZlZCAodGhlIFwiUmVtb3ZlZFwiIHZpZXcsIGFuZCB0aGUgc2NvcGUgb2ZcbiAgICogYW4gdW5oaWRlKS4gTmV2ZXIgd2lkZW5zIHZpc2liaWxpdHkuXG4gICAqL1xuICByZWFkb25seSBoaWRkZW4/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBFeHBsaWNpdCByb3cgc2VsZWN0aW9uIChgaWQgSU4gKC4uLilgKS4gTmFycm93cyBvbmx5IOKAlCBBTkQtZWQgd2l0aCB0aGVcbiAgICogdmlzaWJpbGl0eSBzY29wZSBsaWtlIGV2ZXJ5IG90aGVyIGZpZWxkLCBzbyBpdCBjYW4gbmV2ZXIgcmVhY2ggYSByb3cgdGhlXG4gICAqIGNhbGxlciBjb3VsZG4ndCBhbHJlYWR5IGxpc3QuXG4gICAqL1xuICByZWFkb25seSBpZHM/OiByZWFkb25seSBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRnJlZS10ZXh0IGluYm94IHNlYXJjaC4gQ2FzZS1pbnNlbnNpdGl2ZSBzdWJzdHJpbmcgbWF0Y2ggYWdhaW5zdCB0aGVcbiAgICogbWVzc2FnZSBgc3ViamVjdGAgT1IgYGNvbnRlbnRgIChMSUtFIHdpbGRjYXJkcyBpbiB0aGUgdGVybSBhcmUgZXNjYXBlZCwgc28gYVxuICAgKiBsaXRlcmFsIGAlYC9gX2AgbWF0Y2hlcyBpdHNlbGYpLiBBcHBsaWVkIG9uIHRvcCBvZiB0aGUgdmlzaWJpbGl0eSBzY29wZSwgc29cbiAgICogaXQgbmV2ZXIgd2lkZW5zIHdoYXQgdGhlIGNhbGxlciBjYW4gc2VlLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VhcmNoPzogc3RyaW5nO1xufVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBDb21wbGlhbmNlIEZpbHRlcnNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLyoqXG4gKiBGaWx0ZXIgZm9yIGNvbXBsaWFuY2UgcG9saWNpZXMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxpYW5jZVBvbGljeUZpbHRlciBleHRlbmRzIENvbW1vbkZpbHRlciB7XG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGlzVGVtcGxhdGU/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEZpbHRlciBmb3IgY29tcGxpYW5jZSBydWxlcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wbGlhbmNlUnVsZUZpbHRlciBleHRlbmRzIENvbW1vbkZpbHRlciB7XG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHBvbGljeUlkPzogc3RyaW5nO1xuICByZWFkb25seSB0YXJnZXQ/OiAncGx1Z2luJyB8ICdwaXBlbGluZSc7XG4gIHJlYWRvbmx5IGZpZWxkPzogc3RyaW5nO1xuICByZWFkb25seSBzZXZlcml0eT86ICd3YXJuaW5nJyB8ICdlcnJvcicgfCAnY3JpdGljYWwnO1xuICByZWFkb25seSBzY29wZT86ICdvcmcnIHwgJ3B1Ymxpc2hlZCc7XG4gIHJlYWRvbmx5IHRhZz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBGaWx0ZXIgZm9yIGNvbXBsaWFuY2UgZXhlbXB0aW9ucy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wbGlhbmNlRXhlbXB0aW9uRmlsdGVyIHtcbiAgcmVhZG9ubHkgb3JnSWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJ1bGVJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgZW50aXR5VHlwZT86ICdwbHVnaW4nIHwgJ3BpcGVsaW5lJztcbiAgcmVhZG9ubHkgZW50aXR5SWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHN0YXR1cz86ICdwZW5kaW5nJyB8ICdhcHByb3ZlZCcgfCAncmVqZWN0ZWQnIHwgJ2V4cGlyZWQnO1xuICByZWFkb25seSBsaW1pdD86IG51bWJlcjtcbiAgcmVhZG9ubHkgb2Zmc2V0PzogbnVtYmVyO1xufVxuXG4vKipcbiAqIEZpbHRlciBmb3IgY29tcGxpYW5jZSBhdWRpdCBsb2cgZW50cmllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb21wbGlhbmNlQXVkaXRGaWx0ZXIge1xuICByZWFkb25seSBvcmdJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgdGFyZ2V0PzogJ3BsdWdpbicgfCAncGlwZWxpbmUnO1xuICByZWFkb25seSBhY3Rpb24/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJlc3VsdD86ICdwYXNzJyB8ICd3YXJuJyB8ICdibG9jayc7XG4gIHJlYWRvbmx5IHNjYW5JZD86IHN0cmluZztcbiAgcmVhZG9ubHkgZGF0ZUZyb20/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRhdGVUbz86IHN0cmluZztcbiAgcmVhZG9ubHkgbGltaXQ/OiBudW1iZXI7XG4gIHJlYWRvbmx5IG9mZnNldD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBGaWx0ZXIgZm9yIGNvbXBsaWFuY2Ugc2NhbnMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29tcGxpYW5jZVNjYW5GaWx0ZXIge1xuICByZWFkb25seSBvcmdJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgdGFyZ2V0PzogJ3BsdWdpbicgfCAncGlwZWxpbmUnIHwgJ2FsbCc7XG4gIHJlYWRvbmx5IHN0YXR1cz86ICdwZW5kaW5nJyB8ICdydW5uaW5nJyB8ICdjb21wbGV0ZWQnIHwgJ2ZhaWxlZCcgfCAnY2FuY2VsbGVkJztcbiAgcmVhZG9ubHkgdHJpZ2dlcmVkQnk/OiAnbWFudWFsJyB8ICdzY2hlZHVsZWQnIHwgJ3J1bGUtY2hhbmdlJyB8ICdydWxlLWRyeS1ydW4nO1xuICByZWFkb25seSBsaW1pdD86IG51bWJlcjtcbiAgcmVhZG9ubHkgb2Zmc2V0PzogbnVtYmVyO1xufVxuIl19
|
|
@@ -2842,6 +2842,25 @@ export declare const schema: {
|
|
|
2842
2842
|
}, {}, {
|
|
2843
2843
|
$type: Record<string, string>;
|
|
2844
2844
|
}>;
|
|
2845
|
+
hiddenBy: import("drizzle-orm/pg-core").PgColumn<{
|
|
2846
|
+
name: "hidden_by";
|
|
2847
|
+
tableName: "messages";
|
|
2848
|
+
dataType: "json";
|
|
2849
|
+
columnType: "PgJsonb";
|
|
2850
|
+
data: Record<string, string>;
|
|
2851
|
+
driverParam: unknown;
|
|
2852
|
+
notNull: true;
|
|
2853
|
+
hasDefault: true;
|
|
2854
|
+
isPrimaryKey: false;
|
|
2855
|
+
isAutoincrement: false;
|
|
2856
|
+
hasRuntimeDefault: false;
|
|
2857
|
+
enumValues: undefined;
|
|
2858
|
+
baseColumn: never;
|
|
2859
|
+
identity: undefined;
|
|
2860
|
+
generated: undefined;
|
|
2861
|
+
}, {}, {
|
|
2862
|
+
$type: Record<string, string>;
|
|
2863
|
+
}>;
|
|
2845
2864
|
priority: import("drizzle-orm/pg-core").PgColumn<{
|
|
2846
2865
|
name: "priority";
|
|
2847
2866
|
tableName: "messages";
|
|
@@ -113,4 +113,4 @@ export const schema = {
|
|
|
113
113
|
// (The public_listings / public_listed_versions views are exported from
|
|
114
114
|
// ./schema/ecosystem but are not tables, so they are not listed here.)
|
|
115
115
|
};
|
|
116
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJpenpsZS1zY2hlbWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvZHJpenpsZS1zY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxFQUFFO0FBQ0YsK0VBQStFO0FBQy9FLDRFQUE0RTtBQUM1RSw0RUFBNEU7QUFDNUUsOEVBQThFO0FBQzlFLDJEQUEyRDtBQUMzRCxFQUFFO0FBRUYsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLHVCQUF1QixDQUFDO0FBQ3RDLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsdUJBQXVCLENBQUM7QUFFdEMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsY0FBYyxFQUNkLHFCQUFxQixFQUNyQixrQkFBa0IsRUFDbEIsbUJBQW1CLEVBQ25CLDBCQUEwQixFQUMxQixjQUFjLEVBQ2Qsc0JBQXNCLEVBQ3RCLGdDQUFnQyxFQUNoQyx5QkFBeUIsR0FDMUIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFDTCxTQUFTLEVBQ1QsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixjQUFjLEVBQ2QseUJBQXlCLEVBQ3pCLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixpQkFBaUIsRUFDakIsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsV0FBVyxFQUNYLGdCQUFnQixFQUNoQixtQkFBbUIsRUFDbkIsMEJBQTBCLEVBQzFCLG9CQUFvQixFQUNwQixhQUFhLEVBQ2IsbUJBQW1CLEVBQ25CLHNCQUFzQixFQUN0Qiw4QkFBOEIsR0FDL0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDakUsT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMxSSxPQUFPLEVBQUUsTUFBTSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxvQkFBb0IsRUFBRSx3QkFBd0IsRUFBRSxzQkFBc0IsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pMLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ2xILE9BQU8sRUFBRSxXQUFXLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTlIOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sTUFBTSxHQUFHO0lBQ3BCLE1BQU07SUFDTixvQkFBb0I7SUFDcEIsUUFBUTtJQUNSLGdCQUFnQjtJQUNoQixPQUFPO0lBQ1AsaUJBQWlCO0lBQ2pCLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsY0FBYztJQUNkLGVBQWU7SUFDZixxQkFBcUI7SUFDckIsZ0JBQWdCO0lBQ2hCLGFBQWE7SUFDYiw4REFBOEQ7SUFDOUQsaUJBQWlCO0lBQ2pCLFlBQVk7SUFDWiw2RUFBNkU7SUFDN0UsUUFBUTtJQUNSLHVEQUF1RDtJQUN2RCxZQUFZO0lBQ1osbUZBQW1GO0lBQ25GLFNBQVM7SUFDVCxjQUFjO0lBQ2Qsa0VBQWtFO0lBQ2xFLG1CQUFtQjtJQUNuQixzRUFBc0U7SUFDdEUsWUFBWTtJQUNaLG9CQUFvQjtJQUNwQixnQkFBZ0I7SUFDaEIsY0FBYztJQUNkLHFCQUFxQjtJQUNyQixrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLDBCQUEwQjtJQUMxQixjQUFjO0lBQ2Qsc0JBQXNCO0lBQ3RCLGdDQUFnQztJQUNoQyx5QkFBeUI7SUFDekIsMkVBQTJFO0lBQzNFLGdCQUFnQjtJQUNoQixTQUFTO0lBQ1QsZUFBZTtJQUNmLGVBQWU7SUFDZiw4RUFBOEU7SUFDOUUsNkRBQTZEO0lBQzdELGNBQWM7SUFDZCxvQkFBb0I7SUFDcEIsd0JBQXdCO0lBQ3hCLGtCQUFrQjtJQUNsQixrQkFBa0I7SUFDbEIsc0JBQXNCO0lBQ3RCLDhFQUE4RTtJQUM5RSxTQUFTO0lBQ1QsYUFBYTtJQUNiLG9CQUFvQjtJQUNwQixjQUFjO0lBQ2QseUJBQXlCO0lBQ3pCLG9CQUFvQjtJQUNwQixxQkFBcUI7SUFDckIsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixpQkFBaUI7SUFDakIsa0JBQWtCO0lBQ2xCLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsV0FBVztJQUNYLGdCQUFnQjtJQUNoQixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLG1FQUFtRTtJQUNuRSxvQkFBb0I7SUFDcEIsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQixzQkFBc0I7SUFDdEIsOEJBQThCO0lBQzlCLHdFQUF3RTtJQUN4RSx1RUFBdUU7Q0FDL0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vL1xuLy8gQmFycmVsIGZvciB0aGUgRHJpenpsZSBzY2hlbWEuIFRoZSB0YWJsZS90eXBlIGRlZmluaXRpb25zIGxpdmUgaW4gcGVyLWRvbWFpblxuLy8gZmlsZXMgdW5kZXIgYC4vc2NoZW1hLypgOyB0aGlzIG1vZHVsZSByZS1leHBvcnRzIGV2ZXJ5IG9uZSBvZiB0aGVtIHNvIHRoZVxuLy8gcHVibGljIEFQSSBpcyBieXRlLWlkZW50aWNhbCB0byB0aGUgcHJldmlvdXMgc2luZ2xlLWZpbGUgc2NoZW1hLiBFeGlzdGluZ1xuLy8gYGltcG9ydCB7IC4uLiB9IGZyb20gJy4uLi9kcml6emxlLXNjaGVtYSdgIHNpdGVzIGFuZCB0aGUgYWdncmVnYXRlIGBzY2hlbWFgXG4vLyBvYmplY3QgYmVsb3cgYm90aCBjb250aW51ZSB0byByZXNvbHZlIGV4YWN0bHkgYXMgYmVmb3JlLlxuLy9cblxuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvcGx1Z2luLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hL3BpcGVsaW5lLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hL3BpcGVsaW5lLXRlbXBsYXRlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hL21lc3NhZ2UuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvbWVzc2FnZS1hdHRhY2htZW50LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hL3N1cHBvcnQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvY29tcGxpYW5jZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9kYXNoYm9hcmQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvcmVwb3J0aW5nLWFuYWx5dGljcy5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9yZXBvcnRpbmctc3Rha2Vob2xkZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvYWxlcnQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvZWNvc3lzdGVtLmpzJztcblxuaW1wb3J0IHsgb3JnQWxlcnREZXN0aW5hdGlvbiwgb3JnQWxlcnRSdWxlIH0gZnJvbSAnLi9zY2hlbWEvYWxlcnQuanMnO1xuaW1wb3J0IHtcbiAgY29tcGxpYW5jZVBvbGljeSxcbiAgY29tcGxpYW5jZVJ1bGUsXG4gIGNvbXBsaWFuY2VSdWxlSGlzdG9yeSxcbiAgY29tcGxpYW5jZUF1ZGl0TG9nLFxuICBjb21wbGlhbmNlRXhlbXB0aW9uLFxuICBjb21wbGlhbmNlUnVsZVN1YnNjcmlwdGlvbixcbiAgY29tcGxpYW5jZVNjYW4sXG4gIGNvbXBsaWFuY2VTY2FuU2NoZWR1bGUsXG4gIGNvbXBsaWFuY2VOb3RpZmljYXRpb25QcmVmZXJlbmNlLFxuICBjb21wbGlhbmNlTm90aWZpY2F0aW9uTG9nLFxufSBmcm9tICcuL3NjaGVtYS9jb21wbGlhbmNlLmpzJztcbmltcG9ydCB7IGRhc2hib2FyZCwgZGFzaGJvYXJkUGFuZWwgfSBmcm9tICcuL3NjaGVtYS9kYXNoYm9hcmQuanMnO1xuaW1wb3J0IHtcbiAgcHVibGlzaGVyLFxuICBwbHVnaW5MaXN0aW5nLFxuICBwbHVnaW5MaXN0aW5nVmVyc2lvbixcbiAgcGx1Z2luQWR2aXNvcnksXG4gIGVjb3N5c3RlbUF1dG9BcHByb3ZhbFJ1bGUsXG4gIHBsdWdpblB1Ymxpc2hSZXF1ZXN0LFxuICBlY29zeXN0ZW1SZXNlcnZlZE5hbWUsXG4gIGVjb3N5c3RlbVNldHRpbmcsXG4gIHBsdWdpblJldmlldyxcbiAgcGx1Z2luUmV2aWV3UmVwbHksXG4gIHBsdWdpblJldmlld1JlcG9ydCxcbiAgcGx1Z2luUmV2aWV3Vm90ZSxcbiAgcGx1Z2luUmV2aWV3SGlzdG9yeSxcbiAgcGx1Z2luU3RhdHMsXG4gIHBsdWdpblN1Ym1pc3Npb24sXG4gIGVjb3N5c3RlbVNlYXJjaE1pc3MsXG4gIGVjb3N5c3RlbU5vdGlmaWNhdGlvblF1ZXVlLFxuICBwaXBlbGluZVN0ZXBNYW5pZmVzdCxcbiAgcGx1Z2luSW5zdGFsbCxcbiAgcGx1Z2luSW5zdGFsbFBvbGljeSxcbiAgcGx1Z2luQWR2aXNvcnlEZWxpdmVyeSxcbiAgcGx1Z2luU2VjdXJpdHlOb3RpZmljYXRpb25QcmVmLFxufSBmcm9tICcuL3NjaGVtYS9lY29zeXN0ZW0uanMnO1xuaW1wb3J0IHsgbWVzc2FnZUF0dGFjaG1lbnQgfSBmcm9tICcuL3NjaGVtYS9tZXNzYWdlLWF0dGFjaG1lbnQuanMnO1xuaW1wb3J0IHsgbWVzc2FnZSB9IGZyb20gJy4vc2NoZW1hL21lc3NhZ2UuanMnO1xuaW1wb3J0IHsgcGlwZWxpbmVUZW1wbGF0ZSB9IGZyb20gJy4vc2NoZW1hL3BpcGVsaW5lLXRlbXBsYXRlLmpzJztcbmltcG9ydCB7IHBpcGVsaW5lLCBwaXBlbGluZVJlZ2lzdHJ5LCBwaXBlbGluZUV2ZW50LCBkZXBsb3ltZW50T3V0Y29tZSwgaW5nZXN0SGVhbHRoLCBpbmNpZGVudCwgZG9yYVNldHRpbmdzIH0gZnJvbSAnLi9zY2hlbWEvcGlwZWxpbmUuanMnO1xuaW1wb3J0IHsgcGx1Z2luLCBwbHVnaW5LZXB0U2V0dXBJbWFnZSB9IGZyb20gJy4vc2NoZW1hL3BsdWdpbi5qcyc7XG5pbXBvcnQgeyBkb3JhRGVwbG95bWVudCwgZXhlY3V0aW9uRGFpbHlSb2xsdXAsIHBpcGVsaW5lUGx1Z2luUmVzb2x1dGlvbiwgcGlwZWxpbmVTZWN1cml0eVJlcG9ydCwgcGlwZWxpbmVTdGVwTG9va3VwLCBwbHVnaW5WdWxuRXhwb3N1cmUgfSBmcm9tICcuL3NjaGVtYS9yZXBvcnRpbmctYW5hbHl0aWNzLmpzJztcbmltcG9ydCB7IHJlcG9ydERlZmluaXRpb24sIHJlcG9ydFJ1biwgcmVwb3J0U2hhcmVMaW5rLCByZXBvcnRSZWNpcGllbnQgfSBmcm9tICcuL3NjaGVtYS9yZXBvcnRpbmctc3Rha2Vob2xkZXIuanMnO1xuaW1wb3J0IHsgc3VwcG9ydENhc2UsIHN1cHBvcnRDYXNlQ291bnRlciwgc3VwcG9ydENvbnRhY3QsIHN1cHBvcnRDYXNlTm90ZSwgc3VwcG9ydENhbm5lZFJlc3BvbnNlIH0gZnJvbSAnLi9zY2hlbWEvc3VwcG9ydC5qcyc7XG5cbi8qKlxuICogQ29tcGxldGUgRHJpenpsZSBzY2hlbWEgZXhwb3J0XG4gKi9cbmV4cG9ydCBjb25zdCBzY2hlbWEgPSB7XG4gIHBsdWdpbixcbiAgcGx1Z2luS2VwdFNldHVwSW1hZ2UsXG4gIHBpcGVsaW5lLFxuICBwaXBlbGluZVRlbXBsYXRlLFxuICBtZXNzYWdlLFxuICBtZXNzYWdlQXR0YWNobWVudCxcbiAgc3VwcG9ydENhc2UsXG4gIHN1cHBvcnRDYXNlQ291bnRlcixcbiAgc3VwcG9ydENvbnRhY3QsXG4gIHN1cHBvcnRDYXNlTm90ZSxcbiAgc3VwcG9ydENhbm5lZFJlc3BvbnNlLFxuICBwaXBlbGluZVJlZ2lzdHJ5LFxuICBwaXBlbGluZUV2ZW50LFxuICAvLyBET1JBIHBvc3QtZGVwbG95IG91dGNvbWUgbWFya2VycyArIHBlci1vcmcgaW5nZXN0aW9uIGhlYWx0aFxuICBkZXBsb3ltZW50T3V0Y29tZSxcbiAgaW5nZXN0SGVhbHRoLFxuICAvLyBQcm9kdWN0aW9uIGluY2lkZW50cyAod2ViaG9vay1pbmdlc3RlZCkg4oaSIGF1dG9tYXRlZCBwb3N0LWRlcGxveSBDRlIgKyBNVFRSXG4gIGluY2lkZW50LFxuICAvLyBQZXItb3JnIERPUkEgb3ZlcnJpZGVzIChpbmNpZGVudCBjb3JyZWxhdGlvbiB3aW5kb3cpXG4gIGRvcmFTZXR0aW5ncyxcbiAgLy8gT2JzZXJ2YWJpbGl0eSBkYXNoYm9hcmRzICh1c2VyLWVkaXRhYmxlIHJlcGxhY2VtZW50IGZvciBjb2RlLWRlZmluZWQgZGFzaGJvYXJkcylcbiAgZGFzaGJvYXJkLFxuICBkYXNoYm9hcmRQYW5lbCxcbiAgLy8gUGVyLW9yZyBhbGVydCBub3RpZmljYXRpb24gZGVzdGluYXRpb25zIChtdWx0aS10ZW5hbnQgYWxlcnRpbmcpXG4gIG9yZ0FsZXJ0RGVzdGluYXRpb24sXG4gIC8vIHBlci1vcmcgb3BlcmF0b3ItYXV0aG9yZWQgYWxlcnQgcnVsZXMgIG1hdGVyaWFsaXplZCBpbnRvIFByb20gWUFNTC5cbiAgb3JnQWxlcnRSdWxlLFxuICAvLyBDb21wbGlhbmNlIHRhYmxlc1xuICBjb21wbGlhbmNlUG9saWN5LFxuICBjb21wbGlhbmNlUnVsZSxcbiAgY29tcGxpYW5jZVJ1bGVIaXN0b3J5LFxuICBjb21wbGlhbmNlQXVkaXRMb2csXG4gIGNvbXBsaWFuY2VFeGVtcHRpb24sXG4gIGNvbXBsaWFuY2VSdWxlU3Vic2NyaXB0aW9uLFxuICBjb21wbGlhbmNlU2NhbixcbiAgY29tcGxpYW5jZVNjYW5TY2hlZHVsZSxcbiAgY29tcGxpYW5jZU5vdGlmaWNhdGlvblByZWZlcmVuY2UsXG4gIGNvbXBsaWFuY2VOb3RpZmljYXRpb25Mb2csXG4gIC8vIFN0YWtlaG9sZGVyIHJlcG9ydHMg4oCUIHNjaGVkdWxlZCBtYW5hZ2VyLWZhY2luZyByZXBvcnRzIChvcmctc2NvcGVkLCBSTFMpXG4gIHJlcG9ydERlZmluaXRpb24sXG4gIHJlcG9ydFJ1bixcbiAgcmVwb3J0U2hhcmVMaW5rLFxuICByZXBvcnRSZWNpcGllbnQsXG4gIC8vIEFuYWx5dGljcyBsYXllcjogdGhlIHJvbGx1cHMgYW5kIHBlci1kZXBsb3kgcm93cyBldmVyeSByZXBvcnQgc2VjdGlvbiByZWFkc1xuICAvLyBpbnN0ZWFkIG9mIHJhdyBldmVudHMgKHNlZSBzY2hlbWEvcmVwb3J0aW5nLWFuYWx5dGljcy50cykuXG4gIGRvcmFEZXBsb3ltZW50LFxuICBleGVjdXRpb25EYWlseVJvbGx1cCxcbiAgcGlwZWxpbmVQbHVnaW5SZXNvbHV0aW9uLFxuICBwbHVnaW5WdWxuRXhwb3N1cmUsXG4gIHBpcGVsaW5lU3RlcExvb2t1cCxcbiAgcGlwZWxpbmVTZWN1cml0eVJlcG9ydCxcbiAgLy8gUGx1Z2luIGVjb3N5c3RlbSDigJQgaW5zdGFuY2Utd2lkZSBkaXJlY3RvcnkgKG5vIG9yZ19pZDsgc2VydmljZS1sYXllciBnYXRlZClcbiAgcHVibGlzaGVyLFxuICBwbHVnaW5MaXN0aW5nLFxuICBwbHVnaW5MaXN0aW5nVmVyc2lvbixcbiAgcGx1Z2luQWR2aXNvcnksXG4gIGVjb3N5c3RlbUF1dG9BcHByb3ZhbFJ1bGUsXG4gIHBsdWdpblB1Ymxpc2hSZXF1ZXN0LFxuICBlY29zeXN0ZW1SZXNlcnZlZE5hbWUsXG4gIGVjb3N5c3RlbVNldHRpbmcsXG4gIHBsdWdpblJldmlldyxcbiAgcGx1Z2luUmV2aWV3UmVwbHksXG4gIHBsdWdpblJldmlld1JlcG9ydCxcbiAgcGx1Z2luUmV2aWV3Vm90ZSxcbiAgcGx1Z2luUmV2aWV3SGlzdG9yeSxcbiAgcGx1Z2luU3RhdHMsXG4gIHBsdWdpblN1Ym1pc3Npb24sXG4gIGVjb3N5c3RlbVNlYXJjaE1pc3MsXG4gIGVjb3N5c3RlbU5vdGlmaWNhdGlvblF1ZXVlLFxuICAvLyBQbHVnaW4gZWNvc3lzdGVtIOKAlCBvcmctc2NvcGVkIChvcmdfaWQgKyBSTFM7IGluIHRoZSBvcmcgY2FzY2FkZSlcbiAgcGlwZWxpbmVTdGVwTWFuaWZlc3QsXG4gIHBsdWdpbkluc3RhbGwsXG4gIHBsdWdpbkluc3RhbGxQb2xpY3ksXG4gIHBsdWdpbkFkdmlzb3J5RGVsaXZlcnksXG4gIHBsdWdpblNlY3VyaXR5Tm90aWZpY2F0aW9uUHJlZixcbiAgLy8gKFRoZSBwdWJsaWNfbGlzdGluZ3MgLyBwdWJsaWNfbGlzdGVkX3ZlcnNpb25zIHZpZXdzIGFyZSBleHBvcnRlZCBmcm9tXG4gIC8vIC4vc2NoZW1hL2Vjb3N5c3RlbSBidXQgYXJlIG5vdCB0YWJsZXMsIHNvIHRoZXkgYXJlIG5vdCBsaXN0ZWQgaGVyZS4pXG59IGFzIGNvbnN0O1xuIl19
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJpenpsZS1zY2hlbWEuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9kcml6emxlLXNjaGVtYS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLEVBQUU7QUFDRiwrRUFBK0U7QUFDL0UsNEVBQTRFO0FBQzVFLDRFQUE0RTtBQUM1RSw4RUFBOEU7QUFDOUUsMkRBQTJEO0FBQzNELEVBQUU7QUFFRixjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsdUJBQXVCLENBQUM7QUFDdEMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyx1QkFBdUIsQ0FBQztBQUV0QyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixjQUFjLEVBQ2QscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQixtQkFBbUIsRUFDbkIsMEJBQTBCLEVBQzFCLGNBQWMsRUFDZCxzQkFBc0IsRUFDdEIsZ0NBQWdDLEVBQ2hDLHlCQUF5QixHQUMxQixNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDbEUsT0FBTyxFQUNMLFNBQVMsRUFDVCxhQUFhLEVBQ2Isb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCx5QkFBeUIsRUFDekIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQiwwQkFBMEIsRUFDMUIsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLDhCQUE4QixHQUMvQixNQUFNLHVCQUF1QixDQUFDO0FBQy9CLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFJLE9BQU8sRUFBRSxNQUFNLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLG9CQUFvQixFQUFFLHdCQUF3QixFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakwsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDbEgsT0FBTyxFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFOUg7O0dBRUc7QUFDSCxNQUFNLENBQUMsTUFBTSxNQUFNLEdBQUc7SUFDcEIsTUFBTTtJQUNOLG9CQUFvQjtJQUNwQixRQUFRO0lBQ1IsZ0JBQWdCO0lBQ2hCLE9BQU87SUFDUCxpQkFBaUI7SUFDakIsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixnQkFBZ0I7SUFDaEIsYUFBYTtJQUNiLDhEQUE4RDtJQUM5RCxpQkFBaUI7SUFDakIsWUFBWTtJQUNaLDZFQUE2RTtJQUM3RSxRQUFRO0lBQ1IsdURBQXVEO0lBQ3ZELFlBQVk7SUFDWixtRkFBbUY7SUFDbkYsU0FBUztJQUNULGNBQWM7SUFDZCxrRUFBa0U7SUFDbEUsbUJBQW1CO0lBQ25CLHNFQUFzRTtJQUN0RSxZQUFZO0lBQ1osb0JBQW9CO0lBQ3BCLGdCQUFnQjtJQUNoQixjQUFjO0lBQ2QscUJBQXFCO0lBQ3JCLGtCQUFrQjtJQUNsQixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGNBQWM7SUFDZCxzQkFBc0I7SUFDdEIsZ0NBQWdDO0lBQ2hDLHlCQUF5QjtJQUN6QiwyRUFBMkU7SUFDM0UsZ0JBQWdCO0lBQ2hCLFNBQVM7SUFDVCxlQUFlO0lBQ2YsZUFBZTtJQUNmLDhFQUE4RTtJQUM5RSw2REFBNkQ7SUFDN0QsY0FBYztJQUNkLG9CQUFvQjtJQUNwQix3QkFBd0I7SUFDeEIsa0JBQWtCO0lBQ2xCLGtCQUFrQjtJQUNsQixzQkFBc0I7SUFDdEIsOEVBQThFO0lBQzlFLFNBQVM7SUFDVCxhQUFhO0lBQ2Isb0JBQW9CO0lBQ3BCLGNBQWM7SUFDZCx5QkFBeUI7SUFDekIsb0JBQW9CO0lBQ3BCLHFCQUFxQjtJQUNyQixnQkFBZ0I7SUFDaEIsWUFBWTtJQUNaLGlCQUFpQjtJQUNqQixrQkFBa0I7SUFDbEIsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQixXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLG1CQUFtQjtJQUNuQiwwQkFBMEI7SUFDMUIsbUVBQW1FO0lBQ25FLG9CQUFvQjtJQUNwQixhQUFhO0lBQ2IsbUJBQW1CO0lBQ25CLHNCQUFzQjtJQUN0Qiw4QkFBOEI7SUFDOUIsd0VBQXdFO0lBQ3hFLHVFQUF1RTtDQUMvRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8vXG4vLyBCYXJyZWwgZm9yIHRoZSBEcml6emxlIHNjaGVtYS4gVGhlIHRhYmxlL3R5cGUgZGVmaW5pdGlvbnMgbGl2ZSBpbiBwZXItZG9tYWluXG4vLyBmaWxlcyB1bmRlciBgLi9zY2hlbWEvKmA7IHRoaXMgbW9kdWxlIHJlLWV4cG9ydHMgZXZlcnkgb25lIG9mIHRoZW0gc28gdGhlXG4vLyBwdWJsaWMgQVBJIGlzIGJ5dGUtaWRlbnRpY2FsIHRvIHRoZSBwcmV2aW91cyBzaW5nbGUtZmlsZSBzY2hlbWEuIEV4aXN0aW5nXG4vLyBgaW1wb3J0IHsgLi4uIH0gZnJvbSAnLi4uL2RyaXp6bGUtc2NoZW1hJ2Agc2l0ZXMgYW5kIHRoZSBhZ2dyZWdhdGUgYHNjaGVtYWBcbi8vIG9iamVjdCBiZWxvdyBib3RoIGNvbnRpbnVlIHRvIHJlc29sdmUgZXhhY3RseSBhcyBiZWZvcmUuXG4vL1xuXG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9wbHVnaW4uanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvcGlwZWxpbmUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvcGlwZWxpbmUtdGVtcGxhdGUuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvbWVzc2FnZS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9tZXNzYWdlLWF0dGFjaG1lbnQuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zY2hlbWEvc3VwcG9ydC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9jb21wbGlhbmNlLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hL2Rhc2hib2FyZC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9yZXBvcnRpbmctYW5hbHl0aWNzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NoZW1hL3JlcG9ydGluZy1zdGFrZWhvbGRlci5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9hbGVydC5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3NjaGVtYS9lY29zeXN0ZW0uanMnO1xuXG5pbXBvcnQgeyBvcmdBbGVydERlc3RpbmF0aW9uLCBvcmdBbGVydFJ1bGUgfSBmcm9tICcuL3NjaGVtYS9hbGVydC5qcyc7XG5pbXBvcnQge1xuICBjb21wbGlhbmNlUG9saWN5LFxuICBjb21wbGlhbmNlUnVsZSxcbiAgY29tcGxpYW5jZVJ1bGVIaXN0b3J5LFxuICBjb21wbGlhbmNlQXVkaXRMb2csXG4gIGNvbXBsaWFuY2VFeGVtcHRpb24sXG4gIGNvbXBsaWFuY2VSdWxlU3Vic2NyaXB0aW9uLFxuICBjb21wbGlhbmNlU2NhbixcbiAgY29tcGxpYW5jZVNjYW5TY2hlZHVsZSxcbiAgY29tcGxpYW5jZU5vdGlmaWNhdGlvblByZWZlcmVuY2UsXG4gIGNvbXBsaWFuY2VOb3RpZmljYXRpb25Mb2csXG59IGZyb20gJy4vc2NoZW1hL2NvbXBsaWFuY2UuanMnO1xuaW1wb3J0IHsgZGFzaGJvYXJkLCBkYXNoYm9hcmRQYW5lbCB9IGZyb20gJy4vc2NoZW1hL2Rhc2hib2FyZC5qcyc7XG5pbXBvcnQge1xuICBwdWJsaXNoZXIsXG4gIHBsdWdpbkxpc3RpbmcsXG4gIHBsdWdpbkxpc3RpbmdWZXJzaW9uLFxuICBwbHVnaW5BZHZpc29yeSxcbiAgZWNvc3lzdGVtQXV0b0FwcHJvdmFsUnVsZSxcbiAgcGx1Z2luUHVibGlzaFJlcXVlc3QsXG4gIGVjb3N5c3RlbVJlc2VydmVkTmFtZSxcbiAgZWNvc3lzdGVtU2V0dGluZyxcbiAgcGx1Z2luUmV2aWV3LFxuICBwbHVnaW5SZXZpZXdSZXBseSxcbiAgcGx1Z2luUmV2aWV3UmVwb3J0LFxuICBwbHVnaW5SZXZpZXdWb3RlLFxuICBwbHVnaW5SZXZpZXdIaXN0b3J5LFxuICBwbHVnaW5TdGF0cyxcbiAgcGx1Z2luU3VibWlzc2lvbixcbiAgZWNvc3lzdGVtU2VhcmNoTWlzcyxcbiAgZWNvc3lzdGVtTm90aWZpY2F0aW9uUXVldWUsXG4gIHBpcGVsaW5lU3RlcE1hbmlmZXN0LFxuICBwbHVnaW5JbnN0YWxsLFxuICBwbHVnaW5JbnN0YWxsUG9saWN5LFxuICBwbHVnaW5BZHZpc29yeURlbGl2ZXJ5LFxuICBwbHVnaW5TZWN1cml0eU5vdGlmaWNhdGlvblByZWYsXG59IGZyb20gJy4vc2NoZW1hL2Vjb3N5c3RlbS5qcyc7XG5pbXBvcnQgeyBtZXNzYWdlQXR0YWNobWVudCB9IGZyb20gJy4vc2NoZW1hL21lc3NhZ2UtYXR0YWNobWVudC5qcyc7XG5pbXBvcnQgeyBtZXNzYWdlIH0gZnJvbSAnLi9zY2hlbWEvbWVzc2FnZS5qcyc7XG5pbXBvcnQgeyBwaXBlbGluZVRlbXBsYXRlIH0gZnJvbSAnLi9zY2hlbWEvcGlwZWxpbmUtdGVtcGxhdGUuanMnO1xuaW1wb3J0IHsgcGlwZWxpbmUsIHBpcGVsaW5lUmVnaXN0cnksIHBpcGVsaW5lRXZlbnQsIGRlcGxveW1lbnRPdXRjb21lLCBpbmdlc3RIZWFsdGgsIGluY2lkZW50LCBkb3JhU2V0dGluZ3MgfSBmcm9tICcuL3NjaGVtYS9waXBlbGluZS5qcyc7XG5pbXBvcnQgeyBwbHVnaW4sIHBsdWdpbktlcHRTZXR1cEltYWdlIH0gZnJvbSAnLi9zY2hlbWEvcGx1Z2luLmpzJztcbmltcG9ydCB7IGRvcmFEZXBsb3ltZW50LCBleGVjdXRpb25EYWlseVJvbGx1cCwgcGlwZWxpbmVQbHVnaW5SZXNvbHV0aW9uLCBwaXBlbGluZVNlY3VyaXR5UmVwb3J0LCBwaXBlbGluZVN0ZXBMb29rdXAsIHBsdWdpblZ1bG5FeHBvc3VyZSB9IGZyb20gJy4vc2NoZW1hL3JlcG9ydGluZy1hbmFseXRpY3MuanMnO1xuaW1wb3J0IHsgcmVwb3J0RGVmaW5pdGlvbiwgcmVwb3J0UnVuLCByZXBvcnRTaGFyZUxpbmssIHJlcG9ydFJlY2lwaWVudCB9IGZyb20gJy4vc2NoZW1hL3JlcG9ydGluZy1zdGFrZWhvbGRlci5qcyc7XG5pbXBvcnQgeyBzdXBwb3J0Q2FzZSwgc3VwcG9ydENhc2VDb3VudGVyLCBzdXBwb3J0Q29udGFjdCwgc3VwcG9ydENhc2VOb3RlLCBzdXBwb3J0Q2FubmVkUmVzcG9uc2UgfSBmcm9tICcuL3NjaGVtYS9zdXBwb3J0LmpzJztcblxuLyoqXG4gKiBDb21wbGV0ZSBEcml6emxlIHNjaGVtYSBleHBvcnRcbiAqL1xuZXhwb3J0IGNvbnN0IHNjaGVtYSA9IHtcbiAgcGx1Z2luLFxuICBwbHVnaW5LZXB0U2V0dXBJbWFnZSxcbiAgcGlwZWxpbmUsXG4gIHBpcGVsaW5lVGVtcGxhdGUsXG4gIG1lc3NhZ2UsXG4gIG1lc3NhZ2VBdHRhY2htZW50LFxuICBzdXBwb3J0Q2FzZSxcbiAgc3VwcG9ydENhc2VDb3VudGVyLFxuICBzdXBwb3J0Q29udGFjdCxcbiAgc3VwcG9ydENhc2VOb3RlLFxuICBzdXBwb3J0Q2FubmVkUmVzcG9uc2UsXG4gIHBpcGVsaW5lUmVnaXN0cnksXG4gIHBpcGVsaW5lRXZlbnQsXG4gIC8vIERPUkEgcG9zdC1kZXBsb3kgb3V0Y29tZSBtYXJrZXJzICsgcGVyLW9yZyBpbmdlc3Rpb24gaGVhbHRoXG4gIGRlcGxveW1lbnRPdXRjb21lLFxuICBpbmdlc3RIZWFsdGgsXG4gIC8vIFByb2R1Y3Rpb24gaW5jaWRlbnRzICh3ZWJob29rLWluZ2VzdGVkKSDihpIgYXV0b21hdGVkIHBvc3QtZGVwbG95IENGUiArIE1UVFJcbiAgaW5jaWRlbnQsXG4gIC8vIFBlci1vcmcgRE9SQSBvdmVycmlkZXMgKGluY2lkZW50IGNvcnJlbGF0aW9uIHdpbmRvdylcbiAgZG9yYVNldHRpbmdzLFxuICAvLyBPYnNlcnZhYmlsaXR5IGRhc2hib2FyZHMgKHVzZXItZWRpdGFibGUgcmVwbGFjZW1lbnQgZm9yIGNvZGUtZGVmaW5lZCBkYXNoYm9hcmRzKVxuICBkYXNoYm9hcmQsXG4gIGRhc2hib2FyZFBhbmVsLFxuICAvLyBQZXItb3JnIGFsZXJ0IG5vdGlmaWNhdGlvbiBkZXN0aW5hdGlvbnMgKG11bHRpLXRlbmFudCBhbGVydGluZylcbiAgb3JnQWxlcnREZXN0aW5hdGlvbixcbiAgLy8gcGVyLW9yZyBvcGVyYXRvci1hdXRob3JlZCBhbGVydCBydWxlcyAgbWF0ZXJpYWxpemVkIGludG8gUHJvbSBZQU1MLlxuICBvcmdBbGVydFJ1bGUsXG4gIC8vIENvbXBsaWFuY2UgdGFibGVzXG4gIGNvbXBsaWFuY2VQb2xpY3ksXG4gIGNvbXBsaWFuY2VSdWxlLFxuICBjb21wbGlhbmNlUnVsZUhpc3RvcnksXG4gIGNvbXBsaWFuY2VBdWRpdExvZyxcbiAgY29tcGxpYW5jZUV4ZW1wdGlvbixcbiAgY29tcGxpYW5jZVJ1bGVTdWJzY3JpcHRpb24sXG4gIGNvbXBsaWFuY2VTY2FuLFxuICBjb21wbGlhbmNlU2NhblNjaGVkdWxlLFxuICBjb21wbGlhbmNlTm90aWZpY2F0aW9uUHJlZmVyZW5jZSxcbiAgY29tcGxpYW5jZU5vdGlmaWNhdGlvbkxvZyxcbiAgLy8gU3Rha2Vob2xkZXIgcmVwb3J0cyDigJQgc2NoZWR1bGVkIG1hbmFnZXItZmFjaW5nIHJlcG9ydHMgKG9yZy1zY29wZWQsIFJMUylcbiAgcmVwb3J0RGVmaW5pdGlvbixcbiAgcmVwb3J0UnVuLFxuICByZXBvcnRTaGFyZUxpbmssXG4gIHJlcG9ydFJlY2lwaWVudCxcbiAgLy8gQW5hbHl0aWNzIGxheWVyOiB0aGUgcm9sbHVwcyBhbmQgcGVyLWRlcGxveSByb3dzIGV2ZXJ5IHJlcG9ydCBzZWN0aW9uIHJlYWRzXG4gIC8vIGluc3RlYWQgb2YgcmF3IGV2ZW50cyAoc2VlIHNjaGVtYS9yZXBvcnRpbmctYW5hbHl0aWNzLnRzKS5cbiAgZG9yYURlcGxveW1lbnQsXG4gIGV4ZWN1dGlvbkRhaWx5Um9sbHVwLFxuICBwaXBlbGluZVBsdWdpblJlc29sdXRpb24sXG4gIHBsdWdpblZ1bG5FeHBvc3VyZSxcbiAgcGlwZWxpbmVTdGVwTG9va3VwLFxuICBwaXBlbGluZVNlY3VyaXR5UmVwb3J0LFxuICAvLyBQbHVnaW4gZWNvc3lzdGVtIOKAlCBpbnN0YW5jZS13aWRlIGRpcmVjdG9yeSAobm8gb3JnX2lkOyBzZXJ2aWNlLWxheWVyIGdhdGVkKVxuICBwdWJsaXNoZXIsXG4gIHBsdWdpbkxpc3RpbmcsXG4gIHBsdWdpbkxpc3RpbmdWZXJzaW9uLFxuICBwbHVnaW5BZHZpc29yeSxcbiAgZWNvc3lzdGVtQXV0b0FwcHJvdmFsUnVsZSxcbiAgcGx1Z2luUHVibGlzaFJlcXVlc3QsXG4gIGVjb3N5c3RlbVJlc2VydmVkTmFtZSxcbiAgZWNvc3lzdGVtU2V0dGluZyxcbiAgcGx1Z2luUmV2aWV3LFxuICBwbHVnaW5SZXZpZXdSZXBseSxcbiAgcGx1Z2luUmV2aWV3UmVwb3J0LFxuICBwbHVnaW5SZXZpZXdWb3RlLFxuICBwbHVnaW5SZXZpZXdIaXN0b3J5LFxuICBwbHVnaW5TdGF0cyxcbiAgcGx1Z2luU3VibWlzc2lvbixcbiAgZWNvc3lzdGVtU2VhcmNoTWlzcyxcbiAgZWNvc3lzdGVtTm90aWZpY2F0aW9uUXVldWUsXG4gIC8vIFBsdWdpbiBlY29zeXN0ZW0g4oCUIG9yZy1zY29wZWQgKG9yZ19pZCArIFJMUzsgaW4gdGhlIG9yZyBjYXNjYWRlKVxuICBwaXBlbGluZVN0ZXBNYW5pZmVzdCxcbiAgcGx1Z2luSW5zdGFsbCxcbiAgcGx1Z2luSW5zdGFsbFBvbGljeSxcbiAgcGx1Z2luQWR2aXNvcnlEZWxpdmVyeSxcbiAgcGx1Z2luU2VjdXJpdHlOb3RpZmljYXRpb25QcmVmLFxuICAvLyAoVGhlIHB1YmxpY19saXN0aW5ncyAvIHB1YmxpY19saXN0ZWRfdmVyc2lvbnMgdmlld3MgYXJlIGV4cG9ydGVkIGZyb21cbiAgLy8gLi9zY2hlbWEvZWNvc3lzdGVtIGJ1dCBhcmUgbm90IHRhYmxlcywgc28gdGhleSBhcmUgbm90IGxpc3RlZCBoZXJlLilcbn0gYXMgY29uc3Q7XG4iXX0=
|
package/lib/database/index.js
CHANGED
|
@@ -12,4 +12,4 @@ export * from './public-reader.js';
|
|
|
12
12
|
export * from './read-connection.js';
|
|
13
13
|
export * from './read-lag.js';
|
|
14
14
|
export { isUniqueViolation, resultRows, executeRows, } from './pg-result.js';
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
15
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFDTCxNQUFNLEVBTU4sTUFBTSxFQUlOLG9CQUFvQixFQUlwQixRQUFRLEVBQ1IsZ0JBQWdCLEVBRWhCLGFBQWEsRUFDYixpQkFBaUIsRUFDakIsWUFBWSxFQUNaLFFBQVEsRUFDUixZQUFZLEVBS1osZ0JBQWdCLEVBTWhCLE9BQU8sRUFJUCxpQkFBaUIsRUFRakIsZ0JBQWdCLEVBQ2hCLGNBQWMsRUFDZCxxQkFBcUIsRUFDckIsa0JBQWtCLEVBQ2xCLG1CQUFtQixFQUNuQiwwQkFBMEIsRUFDMUIsY0FBYyxFQUNkLHNCQUFzQixFQUN0QixnQ0FBZ0MsRUFDaEMseUJBQXlCLEVBU3pCLFNBQVMsRUFDVCxjQUFjO0FBQ2Qsc0JBQXNCO0FBQ3RCLGdCQUFnQixFQUNoQixTQUFTLEVBQ1QsZUFBZSxFQUNmLGVBQWUsRUFlZixlQUFlLEVBQ2YsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixvQkFBb0IsRUFDcEIsa0JBQWtCLEVBTWxCLG1CQUFtQixFQUNuQixZQUFZLEVBSVosZUFBZSxFQUlmLDZCQUE2QixFQUU3Qix3QkFBd0IsRUFReEIsd0JBQXdCLEVBT3hCLFNBQVMsRUFDVCxhQUFhLEVBRWIsb0JBQW9CLEVBQ3BCLGNBQWMsRUFDZCx5QkFBeUIsRUFDekIsb0JBQW9CLEVBQ3BCLHFCQUFxQixFQUNyQixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGlCQUFpQixFQUNqQixrQkFBa0IsRUFDbEIsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQixXQUFXLEVBQ1gsZ0JBQWdCLEVBQ2hCLG1CQUFtQixFQUNuQiwwQkFBMEIsRUFDMUIsb0JBQW9CLEVBQ3BCLGFBQWEsRUFDYixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3RCLDhCQUE4QixFQUM5QixjQUFjLEVBQ2Qsb0JBQW9CLEVBQ3BCLGdCQUFnQixFQUNoQixhQUFhLEVBQ2IseUJBQXlCLEVBQ3pCLDBCQUEwQixHQStCM0IsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsWUFBWSxFQUNaLGFBQWEsRUFDYixlQUFlLEVBQ2YsY0FBYyxFQUVkLFVBQVUsRUFDVixFQUFFLEdBQ0gsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsK0VBQStFO0FBQy9FLDZFQUE2RTtBQUM3RSxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsZUFBZSxDQUFDO0FBQzlCLE9BQU8sRUFDTCxpQkFBaUIsRUFDakIsVUFBVSxFQUNWLFdBQVcsR0FFWixNQUFNLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmV4cG9ydCB7XG4gIHNjaGVtYSxcbiAgdHlwZSBQbHVnaW5TZWNyZXQsXG4gIHR5cGUgSW1hZ2VTb3VyY2UsXG4gIHR5cGUgUGx1Z2luTGlmZWN5Y2xlLFxuICB0eXBlIFBsdWdpbkNvbnRyYWN0VmFsdWVUeXBlLFxuICB0eXBlIFBsdWdpbkljb24sXG4gIHBsdWdpbixcbiAgdHlwZSBQbHVnaW4sXG4gIHR5cGUgUGx1Z2luSW5zZXJ0LFxuICB0eXBlIFBsdWdpblVwZGF0ZSxcbiAgcGx1Z2luS2VwdFNldHVwSW1hZ2UsXG4gIHR5cGUgUGx1Z2luS2VwdFNldHVwSW1hZ2UsXG4gIHR5cGUgUGx1Z2luS2VwdFNldHVwSW1hZ2VJbnNlcnQsXG4gIHR5cGUgS2VwdFNldHVwSW1hZ2VCdWlsZCxcbiAgcGlwZWxpbmUsXG4gIHBpcGVsaW5lUmVnaXN0cnksXG4gIHR5cGUgRXZlbnRTb3VyY2UsXG4gIHBpcGVsaW5lRXZlbnQsXG4gIGRlcGxveW1lbnRPdXRjb21lLFxuICBpbmdlc3RIZWFsdGgsXG4gIGluY2lkZW50LFxuICBkb3JhU2V0dGluZ3MsXG4gIHR5cGUgUGlwZWxpbmUsXG4gIHR5cGUgUGlwZWxpbmVJbnNlcnQsXG4gIHR5cGUgSW5jaWRlbnQsXG4gIHR5cGUgUGlwZWxpbmVVcGRhdGUsXG4gIHBpcGVsaW5lVGVtcGxhdGUsXG4gIHR5cGUgUGlwZWxpbmVUZW1wbGF0ZSxcbiAgdHlwZSBQaXBlbGluZVRlbXBsYXRlSW5zZXJ0LFxuICB0eXBlIFBpcGVsaW5lVGVtcGxhdGVVcGRhdGUsXG4gIHR5cGUgTWVzc2FnZVR5cGUsXG4gIHR5cGUgTWVzc2FnZVByaW9yaXR5LFxuICBtZXNzYWdlLFxuICB0eXBlIE1lc3NhZ2UsXG4gIHR5cGUgTWVzc2FnZUluc2VydCxcbiAgdHlwZSBNZXNzYWdlVXBkYXRlLFxuICBtZXNzYWdlQXR0YWNobWVudCxcbiAgdHlwZSBNZXNzYWdlQXR0YWNobWVudCxcbiAgdHlwZSBSdWxlU2V2ZXJpdHksXG4gIHR5cGUgUnVsZVRhcmdldCxcbiAgdHlwZSBSdWxlT3BlcmF0b3IsXG4gIHR5cGUgUnVsZUNvbmRpdGlvbk1vZGUsXG4gIHR5cGUgUnVsZVNjb3BlLFxuICB0eXBlIFJ1bGVDb25kaXRpb24sXG4gIGNvbXBsaWFuY2VQb2xpY3ksXG4gIGNvbXBsaWFuY2VSdWxlLFxuICBjb21wbGlhbmNlUnVsZUhpc3RvcnksXG4gIGNvbXBsaWFuY2VBdWRpdExvZyxcbiAgY29tcGxpYW5jZUV4ZW1wdGlvbixcbiAgY29tcGxpYW5jZVJ1bGVTdWJzY3JpcHRpb24sXG4gIGNvbXBsaWFuY2VTY2FuLFxuICBjb21wbGlhbmNlU2NhblNjaGVkdWxlLFxuICBjb21wbGlhbmNlTm90aWZpY2F0aW9uUHJlZmVyZW5jZSxcbiAgY29tcGxpYW5jZU5vdGlmaWNhdGlvbkxvZyxcbiAgdHlwZSBDb21wbGlhbmNlUG9saWN5LFxuICB0eXBlIENvbXBsaWFuY2VQb2xpY3lJbnNlcnQsXG4gIHR5cGUgQ29tcGxpYW5jZVJ1bGUsXG4gIHR5cGUgQ29tcGxpYW5jZVJ1bGVJbnNlcnQsXG4gIHR5cGUgQ29tcGxpYW5jZUV4ZW1wdGlvbixcbiAgdHlwZSBDb21wbGlhbmNlUnVsZVN1YnNjcmlwdGlvbixcbiAgdHlwZSBDb21wbGlhbmNlU2NhbixcbiAgdHlwZSBDb21wbGlhbmNlTm90aWZpY2F0aW9uUHJlZmVyZW5jZSxcbiAgZGFzaGJvYXJkLFxuICBkYXNoYm9hcmRQYW5lbCxcbiAgLy8gU3Rha2Vob2xkZXIgcmVwb3J0c1xuICByZXBvcnREZWZpbml0aW9uLFxuICByZXBvcnRSdW4sXG4gIHJlcG9ydFNoYXJlTGluayxcbiAgcmVwb3J0UmVjaXBpZW50LFxuICB0eXBlIFJlcG9ydERlZmluaXRpb24sXG4gIHR5cGUgUmVwb3J0RGVmaW5pdGlvbkluc2VydCxcbiAgdHlwZSBSZXBvcnRSdW4sXG4gIHR5cGUgUmVwb3J0UnVuSW5zZXJ0LFxuICB0eXBlIFJlcG9ydFNoYXJlTGluayxcbiAgdHlwZSBSZXBvcnRTaGFyZUxpbmtJbnNlcnQsXG4gIHR5cGUgUmVwb3J0UmVjaXBpZW50LFxuICB0eXBlIFJlcG9ydFJlY2lwaWVudEluc2VydCxcbiAgdHlwZSBSZXBvcnRDYWRlbmNlLFxuICB0eXBlIFJlcG9ydFRlbXBsYXRlLFxuICB0eXBlIFJlcG9ydFJ1blN0YXR1cyxcbiAgdHlwZSBSZXBvcnRQYXVzZVJlYXNvbixcbiAgdHlwZSBSZXBvcnRTY29wZSxcbiAgdHlwZSBSZXBvcnRTY29wZUtpbmQsXG4gIFJFUE9SVF9DQURFTkNFUyxcbiAgUkVQT1JUX1RFTVBMQVRFUyxcbiAgUkVQT1JUX1JVTl9TVEFUVVNFUyxcbiAgUkVQT1JUX1BBVVNFX1JFQVNPTlMsXG4gIFJFUE9SVF9TQ09QRV9LSU5EUyxcbiAgdHlwZSBEYXNoYm9hcmQsXG4gIHR5cGUgRGFzaGJvYXJkSW5zZXJ0LFxuICB0eXBlIERhc2hib2FyZFVwZGF0ZSxcbiAgdHlwZSBEYXNoYm9hcmRQYW5lbCxcbiAgdHlwZSBEYXNoYm9hcmRQYW5lbEluc2VydCxcbiAgb3JnQWxlcnREZXN0aW5hdGlvbixcbiAgb3JnQWxlcnRSdWxlLFxuICB0eXBlIE9yZ0FsZXJ0RGVzdGluYXRpb24sXG4gIHR5cGUgT3JnQWxlcnREZXN0aW5hdGlvbkluc2VydCxcbiAgdHlwZSBIZWFsdGhCcmVha2Rvd24sXG4gIFBVQkxJU0hFUl9USUVSUyxcbiAgdHlwZSBQdWJsaXNoZXJUaWVyLFxuICB0eXBlIFB1Ymxpc2hSZXF1ZXN0S2luZCxcbiAgdHlwZSBQdWJsaXNoUmVxdWVzdFN0YXR1cyxcbiAgT1BFTl9QVUJMSVNIX1JFUVVFU1RfU1RBVFVTRVMsXG4gIHR5cGUgUHVibGlzaFJlcXVlc3RMYW5lLFxuICBJTlNUQUxMX1ZFUlNJT05fUE9MSUNJRVMsXG4gIHR5cGUgSW5zdGFsbFZlcnNpb25Qb2xpY3ksXG4gIHR5cGUgSW5zdGFsbFN0YXR1cyxcbiAgdHlwZSBJbnN0YWxsQ2hhbmdlUmVxdWVzdCxcbiAgdHlwZSBCbG9ja09uQWR2aXNvcnksXG4gIHR5cGUgT2ZmaWNpYWxJbnN0YWxscyxcbiAgdHlwZSBSZXZpZXdTdGF0dXMsXG4gIHR5cGUgUmV2aWV3SG9sZFJlYXNvbixcbiAgUkVWSUVXX1JFUE9SVF9DQVRFR09SSUVTLFxuICB0eXBlIFJldmlld1JlcG9ydENhdGVnb3J5LFxuICB0eXBlIEFkdmlzb3J5U2V2ZXJpdHksXG4gIHR5cGUgQWR2aXNvcnlTdGF0ZSxcbiAgdHlwZSBBZHZpc29yeVNvdXJjZSxcbiAgdHlwZSBTdWJtaXNzaW9uQ2F0YWxvZyxcbiAgdHlwZSBTdWJtaXNzaW9uU3RhdHVzLFxuICBwdWJsaXNoZXIsXG4gIHBsdWdpbkxpc3RpbmcsXG4gIHR5cGUgTGlzdGluZ1ZlcnNpb25TcGVjU25hcHNob3QsXG4gIHBsdWdpbkxpc3RpbmdWZXJzaW9uLFxuICBwbHVnaW5BZHZpc29yeSxcbiAgZWNvc3lzdGVtQXV0b0FwcHJvdmFsUnVsZSxcbiAgcGx1Z2luUHVibGlzaFJlcXVlc3QsXG4gIGVjb3N5c3RlbVJlc2VydmVkTmFtZSxcbiAgZWNvc3lzdGVtU2V0dGluZyxcbiAgcGx1Z2luUmV2aWV3LFxuICBwbHVnaW5SZXZpZXdSZXBseSxcbiAgcGx1Z2luUmV2aWV3UmVwb3J0LFxuICBwbHVnaW5SZXZpZXdWb3RlLFxuICBwbHVnaW5SZXZpZXdIaXN0b3J5LFxuICBwbHVnaW5TdGF0cyxcbiAgcGx1Z2luU3VibWlzc2lvbixcbiAgZWNvc3lzdGVtU2VhcmNoTWlzcyxcbiAgZWNvc3lzdGVtTm90aWZpY2F0aW9uUXVldWUsXG4gIHBpcGVsaW5lU3RlcE1hbmlmZXN0LFxuICBwbHVnaW5JbnN0YWxsLFxuICBwbHVnaW5JbnN0YWxsUG9saWN5LFxuICBwbHVnaW5BZHZpc29yeURlbGl2ZXJ5LFxuICBwbHVnaW5TZWN1cml0eU5vdGlmaWNhdGlvblByZWYsXG4gIHB1YmxpY0xpc3RpbmdzLFxuICBwdWJsaWNMaXN0ZWRWZXJzaW9ucyxcbiAgcHVibGljQWR2aXNvcmllcyxcbiAgcHVibGljUmV2aWV3cyxcbiAgT0ZGSUNJQUxfUFVCTElTSEVSX0hBTkRMRSxcbiAgQ09NTVVOSVRZX1BVQkxJU0hFUl9IQU5ETEUsXG4gIHR5cGUgUHVibGlzaGVyLFxuICB0eXBlIFB1Ymxpc2hlckluc2VydCxcbiAgdHlwZSBQbHVnaW5MaXN0aW5nLFxuICB0eXBlIFBsdWdpbkxpc3RpbmdJbnNlcnQsXG4gIHR5cGUgUGx1Z2luTGlzdGluZ1ZlcnNpb24sXG4gIHR5cGUgUGx1Z2luTGlzdGluZ1ZlcnNpb25JbnNlcnQsXG4gIHR5cGUgUGx1Z2luQWR2aXNvcnksXG4gIHR5cGUgUGx1Z2luQWR2aXNvcnlJbnNlcnQsXG4gIHR5cGUgRWNvc3lzdGVtQXV0b0FwcHJvdmFsUnVsZSxcbiAgdHlwZSBFY29zeXN0ZW1BdXRvQXBwcm92YWxSdWxlSW5zZXJ0LFxuICB0eXBlIFBsdWdpblB1Ymxpc2hSZXF1ZXN0LFxuICB0eXBlIFBsdWdpblB1Ymxpc2hSZXF1ZXN0SW5zZXJ0LFxuICB0eXBlIEVjb3N5c3RlbVJlc2VydmVkTmFtZSxcbiAgdHlwZSBQbHVnaW5SZXZpZXcsXG4gIHR5cGUgUGx1Z2luUmV2aWV3SW5zZXJ0LFxuICB0eXBlIFBsdWdpblJldmlld1JlcGx5LFxuICB0eXBlIFBsdWdpblJldmlld1JlcGx5SW5zZXJ0LFxuICB0eXBlIFBsdWdpblJldmlld1JlcG9ydCxcbiAgdHlwZSBQbHVnaW5SZXZpZXdSZXBvcnRJbnNlcnQsXG4gIHR5cGUgUGx1Z2luUmV2aWV3SGlzdG9yeUluc2VydCxcbiAgdHlwZSBQbHVnaW5TdGF0cyxcbiAgdHlwZSBQbHVnaW5TdGF0c0luc2VydCxcbiAgdHlwZSBQbHVnaW5TdWJtaXNzaW9uLFxuICB0eXBlIFBsdWdpblN1Ym1pc3Npb25JbnNlcnQsXG4gIHR5cGUgUGx1Z2luSW5zdGFsbCxcbiAgdHlwZSBQbHVnaW5JbnN0YWxsSW5zZXJ0LFxuICB0eXBlIFBsdWdpbkluc3RhbGxQb2xpY3ksXG4gIHR5cGUgUGx1Z2luSW5zdGFsbFBvbGljeUluc2VydCxcbiAgdHlwZSBQbHVnaW5TZWN1cml0eU5vdGlmaWNhdGlvblByZWYsXG4gIHR5cGUgUHVibGljUmV2aWV3LFxufSBmcm9tICcuL2RyaXp6bGUtc2NoZW1hLmpzJztcbmV4cG9ydCB7XG4gIGdldFNzbENvbmZpZyxcbiAgZ2V0Q29ubmVjdGlvbixcbiAgY2xvc2VDb25uZWN0aW9uLFxuICB0ZXN0Q29ubmVjdGlvbixcbiAgdHlwZSBDb25uZWN0aW9uT3B0aW9ucyxcbiAgQ29ubmVjdGlvbixcbiAgZGIsXG59IGZyb20gJy4vcG9zdGdyZXMtY29ubmVjdGlvbi5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3JldHJ5LXN0cmF0ZWd5LmpzJztcbmV4cG9ydCAqIGZyb20gJy4vdGVuYW5jeS5qcyc7XG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1yZWFkZXIuanMnO1xuLy8gVGhlIHJlYWQtcmVwbGljYSBwb29sLiBFeHBvcnRlZCBhbG9uZ3NpZGUgcHVibGljLXJlYWRlciBiZWNhdXNlIHRoZXkgYXJlIHRoZVxuLy8gc2FtZSBzaGFwZTogYSBzZWNvbmQsIHNtYWxsZXIgcG9vbCB3aXRoIGEgbmFycm93ZXIgcmVtaXQgdGhhbiB0aGUgcHJpbWFyeS5cbmV4cG9ydCAqIGZyb20gJy4vcmVhZC1jb25uZWN0aW9uLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vcmVhZC1sYWcuanMnO1xuZXhwb3J0IHtcbiAgaXNVbmlxdWVWaW9sYXRpb24sXG4gIHJlc3VsdFJvd3MsXG4gIGV4ZWN1dGVSb3dzLFxuICB0eXBlIFNxbEV4ZWN1dG9yLFxufSBmcm9tICcuL3BnLXJlc3VsdC5qcyc7XG4iXX0=
|
|
@@ -29,4 +29,4 @@ export function resultRows(res) {
|
|
|
29
29
|
export async function executeRows(executor, query) {
|
|
30
30
|
return resultRows(await executor.execute(query));
|
|
31
31
|
}
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGctcmVzdWx0LmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvcGctcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFJdEMsa0RBQWtEO0FBQ2xELE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQztBQUUzQzs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsR0FBWTtJQUM1QyxJQUFJLEdBQUcsR0FBWSxHQUFHLENBQUM7SUFDdkIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDekUsSUFBSyxHQUEwQixDQUFDLElBQUksS0FBSyxtQkFBbUI7WUFBRSxPQUFPLElBQUksQ0FBQztRQUMxRSxHQUFHLEdBQUksR0FBMkIsQ0FBQyxLQUFLLENBQUM7SUFDM0MsQ0FBQztJQUNELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxVQUFVLENBQUksR0FBWTtJQUN4QyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDO1FBQUUsT0FBTyxHQUFVLENBQUM7SUFDMUMsTUFBTSxJQUFJLEdBQUksR0FBNkMsRUFBRSxJQUFJLENBQUM7SUFDbEUsT0FBTyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBRSxJQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztBQUNsRCxDQUFDO0FBT0QsNERBQTREO0FBQzVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsV0FBVyxDQUFJLFFBQXFCLEVBQUUsS0FBVTtJQUNwRSxPQUFPLFVBQVUsQ0FBSSxNQUFNLFFBQVEsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUN0RCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB0eXBlIHsgU1FMIH0gZnJvbSAnZHJpenpsZS1vcm0nO1xuXG4vKiogUG9zdGdyZVNRTCBTUUxTVEFURSBmb3IgYHVuaXF1ZV92aW9sYXRpb25gLiAqL1xuZXhwb3J0IGNvbnN0IFBHX1VOSVFVRV9WSU9MQVRJT04gPSAnMjM1MDUnO1xuXG4vKipcbiAqIFRydWUgd2hlbiBgZXJyYCBpcyBhIFBvc3RncmVTUUwgdW5pcXVlLWNvbnN0cmFpbnQgdmlvbGF0aW9uLiBEcml6emxlIG1heVxuICogd3JhcCB0aGUgZHJpdmVyIGVycm9yLCBzbyB0aGUgYGNhdXNlYCBjaGFpbiBpcyBjaGVja2VkIHRvby5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzVW5pcXVlVmlvbGF0aW9uKGVycjogdW5rbm93bik6IGJvb2xlYW4ge1xuICBsZXQgY3VyOiB1bmtub3duID0gZXJyO1xuICBmb3IgKGxldCBkZXB0aCA9IDA7IGRlcHRoIDwgNSAmJiBjdXIgJiYgdHlwZW9mIGN1ciA9PT0gJ29iamVjdCc7IGRlcHRoKyspIHtcbiAgICBpZiAoKGN1ciBhcyB7IGNvZGU/OiB1bmtub3duIH0pLmNvZGUgPT09IFBHX1VOSVFVRV9WSU9MQVRJT04pIHJldHVybiB0cnVlO1xuICAgIGN1ciA9IChjdXIgYXMgeyBjYXVzZT86IHVua25vd24gfSkuY2F1c2U7XG4gIH1cbiAgcmV0dXJuIGZhbHNlO1xufVxuXG4vKipcbiAqIFJvd3Mgb2YgYSByYXcgYGV4ZWN1dGUoc3FsXFxg4oCmXFxgKWAgcmVzdWx0LiBub2RlLXBvc3RncmVzIHJldHVybnNcbiAqIGB7IHJvd3MgfWA7IHNvbWUgZHJpdmVycyAoYW5kIHRlc3QgZmFrZXMpIHJldHVybiB0aGUgYmFyZSBhcnJheS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc3VsdFJvd3M8VD4ocmVzOiB1bmtub3duKTogVFtdIHtcbiAgaWYgKEFycmF5LmlzQXJyYXkocmVzKSkgcmV0dXJuIHJlcyBhcyBUW107XG4gIGNvbnN0IHJvd3MgPSAocmVzIGFzIHsgcm93cz86IHVua25vd24gfSB8IG51bGwgfCB1bmRlZmluZWQpPy5yb3dzO1xuICByZXR1cm4gQXJyYXkuaXNBcnJheShyb3dzKSA/IChyb3dzIGFzIFRbXSkgOiBbXTtcbn1cblxuLyoqIEFueXRoaW5nIHdpdGggRHJpenpsZSdzIHJhdyBgZXhlY3V0ZWAg4oCUIHRoZSBkYiBoYW5kbGUgb3IgYSB0cmFuc2FjdGlvbi4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3FsRXhlY3V0b3Ige1xuICBleGVjdXRlKHF1ZXJ5OiBTUUwpOiBQcm9taXNlTGlrZTx1bmtub3duPjtcbn1cblxuLyoqIFJ1biBhIHJhdyBTUUwgcXVlcnkgYW5kIHJldHVybiBpdHMgcm93cyB0eXBlZCBhcyBgVGAuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhlY3V0ZVJvd3M8VD4oZXhlY3V0b3I6IFNxbEV4ZWN1dG9yLCBxdWVyeTogU1FMKTogUHJvbWlzZTxUW10+IHtcbiAgcmV0dXJuIHJlc3VsdFJvd3M8VD4oYXdhaXQgZXhlY3V0b3IuZXhlY3V0ZShxdWVyeSkpO1xufVxuIl19
|
|
@@ -407,4 +407,4 @@ export async function testConnection() {
|
|
|
407
407
|
const connection = Connection.getInstance();
|
|
408
408
|
return connection.testConnection();
|
|
409
409
|
}
|
|
410
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdGdyZXMtY29ubmVjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9wb3N0Z3Jlcy1jb25uZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25GLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsSUFBSSxFQUFtQixNQUFNLElBQUksQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFOUQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBRXhDLHFEQUFxRDtBQUNyRCxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQztBQUV4RDs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBa0JHO0FBQ0gsTUFBTSxVQUFVLFlBQVksQ0FBQyxRQUFtQztJQUM5RCxJQUFJLFFBQVEsS0FBSyxTQUFTO1FBQUUsT0FBTyxRQUFRLENBQUM7SUFFNUMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFDaEQsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLENBQUM7SUFFckQsSUFBSSxPQUFnQixDQUFDO0lBQ3JCLElBQUksS0FBSyxLQUFLLE1BQU0sSUFBSSxLQUFLLEtBQUssR0FBRztRQUFFLE9BQU8sR0FBRyxJQUFJLENBQUM7U0FDakQsSUFBSSxLQUFLLEtBQUssT0FBTyxJQUFJLEtBQUss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LE1BQU0sTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDckUsTUFBTSxtQkFBbUIsRUFBRSxDQUFDO0FBQzlCLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsY0FBYztJQUNsQyxNQUFNLFVBQVUsR0FBRyxVQUFVLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDNUMsT0FBTyxVQUFVLENBQUMsY0FBYyxFQUFFLENBQUM7QUFDckMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgeyBjcmVhdGVMb2dnZXIsIGVudkJvb2wsIGVudkludCwgZW52U3RyIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHsgZHJpenpsZSB9IGZyb20gJ2RyaXp6bGUtb3JtL25vZGUtcG9zdGdyZXMnO1xuaW1wb3J0IHsgUG9vbCwgdHlwZSBQb29sQ29uZmlnIH0gZnJvbSAncGcnO1xuaW1wb3J0IHsgc2NoZW1hIH0gZnJvbSAnLi9kcml6emxlLXNjaGVtYS5qcyc7XG5pbXBvcnQgeyBDb25uZWN0aW9uUmV0cnlTdHJhdGVneSB9IGZyb20gJy4vcmV0cnktc3RyYXRlZ3kuanMnO1xuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ2RhdGFiYXNlJyk7XG5cbi8qKiBEZXRlY3QgTGFtYmRhIGVudmlyb25tZW50IGZvciBwb29sLXNpemUgdHVuaW5nICovXG5jb25zdCBpc0xhbWJkYSA9ICEhcHJvY2Vzcy5lbnYuQVdTX0xBTUJEQV9GVU5DVElPTl9OQU1FO1xuXG4vKipcbiAqIFJlc29sdmUgdGhlIHBnIFRMUy9TU0wgY29uZmlnIGZyb20gYW4gZXhwbGljaXQgb3B0aW9uIG9yIHRoZSBlbnZpcm9ubWVudCxcbiAqIGZvbGxvd2luZyB0aGUgc2FtZSBlbnYtdHVuYWJsZSBwYXR0ZXJuIGFzIHRoZSBwb29sIHNpemluZyBhYm92ZS5cbiAqXG4gKiBQcmVjZWRlbmNlOlxuICogICAxLiBBbiBleHBsaWNpdCBgb3B0aW9ucy5zc2xgIChjb25zdHJ1Y3RvciBhcmcpIGFsd2F5cyB3aW5zIOKAlCBpbmNsdWRpbmcgYW5cbiAqICAgICAgZXhwbGljaXQgYGZhbHNlYCB0byBmb3JjZSBwbGFpbnRleHQuXG4gKiAgIDIuIGBEQl9TU0xgIChgdHJ1ZWAvYDFgIG9uLCBgZmFsc2VgL2AwYCBvZmYpIG9yIFBvc3RncmVzJyBzdGFuZGFyZFxuICogICAgICBgUEdTU0xNT0RFYCAoYGRpc2FibGVgID0gb2ZmLCBhbnkgb3RoZXIgbW9kZSA9IG9uKS5cbiAqICAgMy4gRGVmYXVsdDogT04gaW4gcHJvZHVjdGlvbiAoUkRTIGNvbm5lY3Rpb25zIG11c3QgYmUgZW5jcnlwdGVkIGluIHRyYW5zaXQpLFxuICogICAgICBPRkYgZXZlcnl3aGVyZSBlbHNlIHNvIGEgbG9jYWwgUG9zdGdyZXMgd2l0aG91dCBUTFMga2VlcHMgd29ya2luZy5cbiAqXG4gKiBXaGVuIGVuYWJsZWQsIGByZWplY3RVbmF1dGhvcml6ZWRgIGZvbGxvd3MgYERCX1NTTF9SRUpFQ1RfVU5BVVRIT1JJWkVEYFxuICogKGRlZmF1bHQgYGZhbHNlYCk6IEFXUyBSRFMgcHJlc2VudHMgYSBjZXJ0IHNpZ25lZCBieSB0aGUgUkRTIENBLCB3aGljaCBpcyBub3RcbiAqIGluIE5vZGUncyBkZWZhdWx0IHRydXN0IHN0b3JlIHVubGVzcyB0aGUgQ0EgYnVuZGxlIGlzIG1vdW50ZWQsIHNvIGNlcnRpZmljYXRlXG4gKiBWRVJJRklDQVRJT04gaXMgb3B0LWluIHRvIGF2b2lkIGJyZWFraW5nIGEgc3RvY2sgUkRTIGRlcGxveSDigJQgdGhlIGNoYW5uZWwgaXNcbiAqIHN0aWxsIEVOQ1JZUFRFRC4gU2V0IGBEQl9TU0xfUkVKRUNUX1VOQVVUSE9SSVpFRD10cnVlYCBvbmNlIHRoZSBSRFMgQ0EgYnVuZGxlXG4gKiBpcyB3aXJlZCB0byBnZXQgZnVsbCB2ZXJpZmljYXRpb24uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRTc2xDb25maWcoZXhwbGljaXQ/OiBDb25uZWN0aW9uT3B0aW9uc1snc3NsJ10pOiBib29sZWFuIHwgeyByZWplY3RVbmF1dGhvcml6ZWQ6IGJvb2xlYW4gfSB7XG4gIGlmIChleHBsaWNpdCAhPT0gdW5kZWZpbmVkKSByZXR1cm4gZXhwbGljaXQ7XG5cbiAgY29uc3QgZGJTc2wgPSBwcm9jZXNzLmVudi5EQl9TU0w/LnRvTG93ZXJDYXNlKCk7XG4gIGNvbnN0IHNzbE1vZGUgPSBwcm9jZXNzLmVudi5QR1NTTE1PREU/LnRvTG93ZXJDYXNlKCk7XG5cbiAgbGV0IGVuYWJsZWQ6IGJvb2xlYW47XG4gIGlmIChkYlNzbCA9PT0gJ3RydWUnIHx8IGRiU3NsID09PSAnMScpIGVuYWJsZWQgPSB0cnVlO1xuICBlbHNlIGlmIChkYlNzbCA9PT0gJ2ZhbHNlJyB8fCBkYlNzbCA9PT0gJzAnKSBlbmFibGVkID0gZmFsc2U7XG4gIGVsc2UgaWYgKHNzbE1vZGUpIGVuYWJsZWQgPSBzc2xNb2RlICE9PSAnZGlzYWJsZSc7XG4gIGVsc2UgZW5hYmxlZCA9IHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbic7XG5cbiAgaWYgKCFlbmFibGVkKSByZXR1cm4gZmFsc2U7XG4gIHJldHVybiB7IHJlamVjdFVuYXV0aG9yaXplZDogZW52Qm9vbCgnREJfU1NMX1JFSkVDVF9VTkFVVEhPUklaRUQnLCBmYWxzZSkgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGF0YWJhc2VDb25maWcoKSB7XG4gIC8vIExhbWJkYTogc21hbGwgcG9vbCAoZWFjaCBpbnZvY2F0aW9uIGlzIHNob3J0LWxpdmVkLCBtYW55IGNvbmN1cnJlbnQgaW5zdGFuY2VzKVxuICAvLyBFQ1MvbG9uZy1ydW5uaW5nOiBsYXJnZXIgcG9vbCBmb3Igc3VzdGFpbmVkIGNvbmN1cnJlbmN5XG4gIGNvbnN0IGRlZmF1bHRQb29sU2l6ZSA9IGlzTGFtYmRhID8gMiA6IDIwO1xuICBjb25zdCBkZWZhdWx0SWRsZVRpbWVvdXQgPSBpc0xhbWJkYSA/IDEwMDAwIDogMzAwMDA7XG5cbiAgcmV0dXJuIHtcbiAgICBob3N0OiBlbnZTdHIoJ0RCX0hPU1QnLCAncG9zdGdyZXMnKSxcbiAgICBwb3J0OiBlbnZJbnQoJ0RCX1BPUlQnLCA1NDMyKSxcbiAgICBkYXRhYmFzZTogZW52U3RyKCdEQVRBQkFTRScsICdwaXBlbGluZV9idWlsZGVyJyksXG4gICAgdXNlcjogZW52U3RyKCdEQl9VU0VSJywgJ3Bvc3RncmVzJyksXG4gICAgcGFzc3dvcmQ6IHByb2Nlc3MuZW52LkRCX1BBU1NXT1JEIHx8IChwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nID8gKCgpID0+IHsgdGhyb3cgbmV3IEVycm9yKCdEQl9QQVNTV09SRCBpcyByZXF1aXJlZCBpbiBwcm9kdWN0aW9uJyk7IH0pKCkgYXMgc3RyaW5nIDogJycpLFxuICAgIG1heFBvb2xTaXplOiBlbnZJbnQoJ0RSSVpaTEVfTUFYX1BPT0xfU0laRScsIGRlZmF1bHRQb29sU2l6ZSksXG4gICAgaWRsZVRpbWVvdXRNaWxsaXM6IGVudkludCgnRFJJWlpMRV9JRExFX1RJTUVPVVRfTUlMTElTJywgZGVmYXVsdElkbGVUaW1lb3V0KSxcbiAgICBjb25uZWN0aW9uVGltZW91dE1pbGxpczogZW52SW50KCdEUklaWkxFX0NPTk5FQ1RJT05fVElNRU9VVF9NSUxMSVMnLCA1MDAwKSxcbiAgfTtcbn1cblxuLyoqXG4gKiBEYXRhYmFzZSBjb25uZWN0aW9uIHN0YXRpc3RpY3MgZm9yIG1vbml0b3JpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb25uZWN0aW9uU3RhdHMge1xuICB0b3RhbENvdW50OiBudW1iZXI7XG4gIGlkbGVDb3VudDogbnVtYmVyO1xuICB3YWl0aW5nQ291bnQ6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBjb25maWd1cmluZyB0aGUgZGF0YWJhc2UgY29ubmVjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpb25PcHRpb25zIHtcbiAgLyoqIFdoZXRoZXIgdG8gZW5hYmxlIGNvbm5lY3Rpb24gbG9nZ2luZyAqL1xuICBlbmFibGVMb2dnaW5nPzogYm9vbGVhbjtcblxuICAvKiogV2hldGhlciB0byBhdXRvbWF0aWNhbGx5IHJldHJ5IGZhaWxlZCBjb25uZWN0aW9ucyAqL1xuICBlbmFibGVBdXRvUmV0cnk/OiBib29sZWFuO1xuXG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBjb25uZWN0aW9uIHJldHJ5IGF0dGVtcHRzICovXG4gIG1heFJldHJpZXM/OiBudW1iZXI7XG5cbiAgLyoqIERlbGF5IGJldHdlZW4gcmV0cnkgYXR0ZW1wdHMgaW4gbWlsbGlzZWNvbmRzICovXG4gIHJldHJ5RGVsYXk/OiBudW1iZXI7XG5cbiAgLyoqIFNTTCBjb25maWd1cmF0aW9uICovXG4gIHNzbD86IGJvb2xlYW4gfCB7IHJlamVjdFVuYXV0aG9yaXplZDogYm9vbGVhbiB9O1xufVxuXG4vKipcbiAqIFNpbmdsZXRvbiBkYXRhYmFzZSBjb25uZWN0aW9uIGNsYXNzLlxuICogTWFuYWdlcyBQb3N0Z3JlU1FMIGNvbm5lY3Rpb24gcG9vbGluZyBhbmQgRHJpenpsZSBPUk0gaW5zdGFuY2UuXG4gKlxuICogRmVhdHVyZXM6XG4gKiAtIFNpbmdsZXRvbiBwYXR0ZXJuIGZvciBzaW5nbGUgY29ubmVjdGlvbiBwb29sXG4gKiAtIEF1dG9tYXRpYyBjb25uZWN0aW9uIHJldHJ5IHdpdGggYmFja29mZlxuICogLSBDb25uZWN0aW9uIGhlYWx0aCBtb25pdG9yaW5nXG4gKiAtIEdyYWNlZnVsIHNodXRkb3duIGhhbmRsaW5nXG4gKiAtIENvbXByZWhlbnNpdmUgZXJyb3IgaGFuZGxpbmdcbiAqIC0gQ29ubmVjdGlvbiBzdGF0aXN0aWNzIHRyYWNraW5nXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IENvbm5lY3Rpb24gfSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuICpcbiAqIGNvbnN0IGNvbm5lY3Rpb24gPSBDb25uZWN0aW9uLmdldEluc3RhbmNlKCk7XG4gKiBjb25zdCBwbHVnaW5zID0gYXdhaXQgY29ubmVjdGlvbi5kYi5zZWxlY3QoKS5mcm9tKHNjaGVtYS5wbHVnaW4pO1xuICpcbiAqIC8vIER1cmluZyBzaHV0ZG93blxuICogYXdhaXQgY29ubmVjdGlvbi5jbG9zZSgpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uIHtcbiAgcHJpdmF0ZSBzdGF0aWMgaW5zdGFuY2U6IENvbm5lY3Rpb24gfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRHJpenpsZSBPUk0gZGF0YWJhc2UgaW5zdGFuY2Ugd2l0aCBzY2hlbWFcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkYjogUmV0dXJuVHlwZTx0eXBlb2YgZHJpenpsZT47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwb29sOiBQb29sO1xuICBwcml2YXRlIHJlYWRvbmx5IG9wdGlvbnM6IFJlcXVpcmVkPENvbm5lY3Rpb25PcHRpb25zPjtcbiAgcHJpdmF0ZSByZWFkb25seSByZXRyeVN0cmF0ZWd5OiBDb25uZWN0aW9uUmV0cnlTdHJhdGVneTtcbiAgcHJpdmF0ZSBpc1NodXR0aW5nRG93biA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBQcml2YXRlIGNvbnN0cnVjdG9yIHRvIGVuZm9yY2Ugc2luZ2xldG9uIHBhdHRlcm4uXG4gICAqIEluaXRpYWxpemVzIFBvc3RncmVTUUwgY29ubmVjdGlvbiBwb29sIGFuZCBEcml6emxlIE9STSBpbnN0YW5jZS5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25hbCBjb25maWd1cmF0aW9uIGZvciB0aGUgY29ubmVjdGlvblxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgZGF0YWJhc2UgaW5pdGlhbGl6YXRpb24gZmFpbHMgYWZ0ZXIgYWxsIHJldHJpZXNcbiAgICovXG4gIHByaXZhdGUgY29uc3RydWN0b3Iob3B0aW9uczogQ29ubmVjdGlvbk9wdGlvbnMgPSB7fSkge1xuICAgIHRoaXMub3B0aW9ucyA9IHtcbiAgICAgIGVuYWJsZUxvZ2dpbmc6IG9wdGlvbnMuZW5hYmxlTG9nZ2luZyA/PyB0cnVlLFxuICAgICAgZW5hYmxlQXV0b1JldHJ5OiBvcHRpb25zLmVuYWJsZUF1dG9SZXRyeSA/PyB0cnVlLFxuICAgICAgbWF4UmV0cmllczogb3B0aW9ucy5tYXhSZXRyaWVzID8/IGVudkludCgnREJfTUFYX1JFVFJJRVMnLCAzLCB7IG1pbjogMCB9KSxcbiAgICAgIHJldHJ5RGVsYXk6IG9wdGlvbnMucmV0cnlEZWxheSA/PyBlbnZJbnQoJ0RCX1JFVFJZX0RFTEFZX01TJywgMTAwMCwgeyBtaW46IDAgfSksXG4gICAgICAvLyBFbnYtZHJpdmVuIFRMUzogb24tYnktZGVmYXVsdCBpbiBwcm9kdWN0aW9uLCBlbnYtZW5hYmxlYWJsZSBlbHNld2hlcmUuXG4gICAgICAvLyBnZXRJbnN0YW5jZSgpIGlzIG5vcm1hbGx5IGNhbGxlZCB3aXRoIG5vIG9wdGlvbnMsIHNvIHRoaXMgaXMgdGhlIG9ubHlcbiAgICAgIC8vIHBsYWNlIHByb2R1Y3Rpb24gUkRTIGNvbm5lY3Rpb25zIHBpY2sgdXAgU1NMLlxuICAgICAgc3NsOiBnZXRTc2xDb25maWcob3B0aW9ucy5zc2wpLFxuICAgIH07XG5cbiAgICAvLyBJbml0aWFsaXplIHJldHJ5IHN0cmF0ZWd5XG4gICAgdGhpcy5yZXRyeVN0cmF0ZWd5ID0gbmV3IENvbm5lY3Rpb25SZXRyeVN0cmF0ZWd5KHtcbiAgICAgIG1heFJldHJpZXM6IHRoaXMub3B0aW9ucy5tYXhSZXRyaWVzLFxuICAgICAgcmV0cnlEZWxheU1zOiB0aGlzLm9wdGlvbnMucmV0cnlEZWxheSxcbiAgICB9KTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCBjb25maWcgPSBnZXREYXRhYmFzZUNvbmZpZygpO1xuXG4gICAgICBjb25zdCBwb29sQ29uZmlnOiBQb29sQ29uZmlnID0ge1xuICAgICAgICBob3N0OiBjb25maWcuaG9zdCxcbiAgICAgICAgcG9ydDogY29uZmlnLnBvcnQsXG4gICAgICAgIGRhdGFiYXNlOiBjb25maWcuZGF0YWJhc2UsXG4gICAgICAgIHVzZXI6IGNvbmZpZy51c2VyLFxuICAgICAgICBwYXNzd29yZDogY29uZmlnLnBhc3N3b3JkLFxuICAgICAgICBtYXg6IGNvbmZpZy5tYXhQb29sU2l6ZSxcbiAgICAgICAgaWRsZVRpbWVvdXRNaWxsaXM6IGNvbmZpZy5pZGxlVGltZW91dE1pbGxpcyxcbiAgICAgICAgY29ubmVjdGlvblRpbWVvdXRNaWxsaXM6IGNvbmZpZy5jb25uZWN0aW9uVGltZW91dE1pbGxpcyxcbiAgICAgICAgc3NsOiB0aGlzLm9wdGlvbnMuc3NsLFxuICAgICAgICBhbGxvd0V4aXRPbklkbGU6IHRydWUsXG4gICAgICB9O1xuXG4gICAgICB0aGlzLnBvb2wgPSBuZXcgUG9vbChwb29sQ29uZmlnKTtcbiAgICAgIHRoaXMuc2V0dXBFdmVudEhhbmRsZXJzKCk7XG5cbiAgICAgIHRoaXMuZGIgPSBkcml6emxlKHRoaXMucG9vbCwgeyBzY2hlbWEgfSk7XG5cbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuZW5hYmxlTG9nZ2luZykge1xuICAgICAgICBsb2dnZXIuaW5mbygnRGF0YWJhc2UgY29ubmVjdGlvbiBpbml0aWFsaXplZCBzdWNjZXNzZnVsbHknKTtcbiAgICAgICAgdGhpcy5sb2dDb25uZWN0aW9uQ29uZmlnKHBvb2xDb25maWcpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoJ0ZhaWxlZCB0byBpbml0aWFsaXplIGRhdGFiYXNlIGNvbm5lY3Rpb246JywgZXJyb3IpO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXRhYmFzZSBpbml0aWFsaXphdGlvbiBmYWlsZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc2luZ2xldG9uIGluc3RhbmNlIG9mIHRoZSBDb25uZWN0aW9uIGNsYXNzLlxuICAgKiBDcmVhdGVzIGEgbmV3IGluc3RhbmNlIGlmIG9uZSBkb2Vzbid0IGV4aXN0LlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gKG9ubHkgdXNlZCBvbiBmaXJzdCBjYWxsKVxuICAgKiBAcmV0dXJucyBUaGUgc2luZ2xldG9uIENvbm5lY3Rpb24gaW5zdGFuY2VcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0SW5zdGFuY2Uob3B0aW9ucz86IENvbm5lY3Rpb25PcHRpb25zKTogQ29ubmVjdGlvbiB7XG4gICAgaWYgKCFDb25uZWN0aW9uLmluc3RhbmNlKSB7XG4gICAgICBDb25uZWN0aW9uLmluc3RhbmNlID0gbmV3IENvbm5lY3Rpb24ob3B0aW9ucyk7XG4gICAgfVxuICAgIHJldHVybiBDb25uZWN0aW9uLmluc3RhbmNlO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgc2luZ2xldG9uIGluc3RhbmNlLlxuICAgKiBVc2VmdWwgZm9yIHRlc3Rpbmcgb3IgcmVjb25maWd1cmluZyB0aGUgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIGNsb3NlRXhpc3RpbmcgLSBXaGV0aGVyIHRvIGNsb3NlIGV4aXN0aW5nIGNvbm5lY3Rpb24gYmVmb3JlIHJlc2V0XG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGFzeW5jIHJlc2V0KGNsb3NlRXhpc3Rpbmc6IGJvb2xlYW4gPSB0cnVlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKENvbm5lY3Rpb24uaW5zdGFuY2UgJiYgY2xvc2VFeGlzdGluZykge1xuICAgICAgYXdhaXQgQ29ubmVjdGlvbi5pbnN0YW5jZS5jbG9zZSgpO1xuICAgIH1cbiAgICBDb25uZWN0aW9uLmluc3RhbmNlID0gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBUZXN0cyB0aGUgZGF0YWJhc2UgY29ubmVjdGlvblxuICAgKlxuICAgKiBAcmV0dXJucyBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdHJ1ZSBpZiBjb25uZWN0aW9uIGlzIGhlYWx0aHlcbiAgICovXG4gIHB1YmxpYyBhc3luYyB0ZXN0Q29ubmVjdGlvbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgY2xpZW50ID0gYXdhaXQgdGhpcy5wb29sLmNvbm5lY3QoKTtcbiAgICAgIC8vIFJlbGVhc2UgZXZlbiBpZiB0aGUgcHJvYmUgcXVlcnkgdGhyb3dzIOKAlCBvdGhlcndpc2UgYSBmbGFreSBEQiAodGhlIGV4YWN0XG4gICAgICAvLyBjYXNlIHRoaXMgY2hlY2sgZXhpc3RzIGZvcikgbGVha3MgYSBwb29sZWQgY2xpZW50IGVhY2ggZmFpbHVyZSBhbmQgY2FuXG4gICAgICAvLyBleGhhdXN0IHRoZSBwb29sIG9uIHRoZSByZXRyeSBwYXRoLlxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50LnF1ZXJ5KCdTRUxFQ1QgMScpO1xuICAgICAgICBpZiAodGhpcy5vcHRpb25zLmVuYWJsZUxvZ2dpbmcpIHtcbiAgICAgICAgICBsb2dnZXIuaW5mbygnRGF0YWJhc2UgY29ubmVjdGlvbiB0ZXN0IHN1Y2Nlc3NmdWwnKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzdWx0LnJvd3MubGVuZ3RoID4gMDtcbiAgICAgIH0gZmluYWxseSB7XG4gICAgICAgIGNsaWVudC5yZWxlYXNlKCk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGxvZ2dlci5lcnJvcignRGF0YWJhc2UgY29ubmVjdGlvbiB0ZXN0IGZhaWxlZDonLCBlcnJvcik7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgY29ubmVjdGlvbiBwb29sIHN0YXRpc3RpY3NcbiAgICpcbiAgICogQHJldHVybnMgQ3VycmVudCBjb25uZWN0aW9uIHBvb2wgc3RhdGlzdGljc1xuICAgKi9cbiAgcHVibGljIGdldFN0YXRzKCk6IENvbm5lY3Rpb25TdGF0cyB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHRvdGFsQ291bnQ6IHRoaXMucG9vbC50b3RhbENvdW50LFxuICAgICAgaWRsZUNvdW50OiB0aGlzLnBvb2wuaWRsZUNvdW50LFxuICAgICAgd2FpdGluZ0NvdW50OiB0aGlzLnBvb2wud2FpdGluZ0NvdW50LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uIHBvb2wgZ3JhY2VmdWxseS5cbiAgICogU2hvdWxkIGJlIGNhbGxlZCBkdXJpbmcgYXBwbGljYXRpb24gc2h1dGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSB0aW1lb3V0IC0gTWF4aW11bSB0aW1lIHRvIHdhaXQgZm9yIGNvbm5lY3Rpb25zIHRvIGNsb3NlIChtcylcbiAgICogQHJldHVybnMgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHdoZW4gcG9vbCBpcyBjbG9zZWRcbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbG9zZSh0aW1lb3V0OiBudW1iZXIgPSBlbnZJbnQoJ0RCX0NMT1NFX1RJTUVPVVRfTVMnLCA1MDAwKSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmlzU2h1dHRpbmdEb3duKSB7XG4gICAgICBsb2dnZXIud2FybignQ29ubmVjdGlvbiBpcyBhbHJlYWR5IHNodXR0aW5nIGRvd24nKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmlzU2h1dHRpbmdEb3duID0gdHJ1ZTtcblxuICAgIHRyeSB7XG4gICAgICBpZiAodGhpcy5vcHRpb25zLmVuYWJsZUxvZ2dpbmcpIHtcbiAgICAgICAgbG9nZ2VyLmluZm8oJ0Nsb3NpbmcgZGF0YWJhc2UgY29ubmVjdGlvbiBwb29sLi4uJyk7XG4gICAgICAgIGNvbnN0IHN0YXRzID0gdGhpcy5nZXRTdGF0cygpO1xuICAgICAgICBsb2dnZXIuaW5mbyhgUG9vbCBzdGF0cyAtIFRvdGFsOiAke3N0YXRzLnRvdGFsQ291bnR9LCBJZGxlOiAke3N0YXRzLmlkbGVDb3VudH0sIFdhaXRpbmc6ICR7c3RhdHMud2FpdGluZ0NvdW50fWApO1xuICAgICAgfVxuXG4gICAgICAvLyBTZXQgYSB0aW1lb3V0IGZvciBncmFjZWZ1bCBzaHV0ZG93blxuICAgICAgY29uc3QgY2xvc2VQcm9taXNlID0gdGhpcy5wb29sLmVuZCgpO1xuICAgICAgY29uc3QgdGltZW91dFByb21pc2UgPSBuZXcgUHJvbWlzZSgoXywgcmVqZWN0KSA9PlxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHJlamVjdChuZXcgRXJyb3IoJ0Nvbm5lY3Rpb24gY2xvc2UgdGltZW91dCcpKSwgdGltZW91dCksXG4gICAgICApO1xuXG4gICAgICBhd2FpdCBQcm9taXNlLnJhY2UoW2Nsb3NlUHJvbWlzZSwgdGltZW91dFByb21pc2VdKTtcblxuICAgICAgaWYgKHRoaXMub3B0aW9ucy5lbmFibGVMb2dnaW5nKSB7XG4gICAgICAgIGxvZ2dlci5pbmZvKCdEYXRhYmFzZSBjb25uZWN0aW9uIGNsb3NlZCBzdWNjZXNzZnVsbHknKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgbG9nZ2VyLmVycm9yKCdFcnJvciBjbG9zaW5nIGRhdGFiYXNlIGNvbm5lY3Rpb246JywgZXJyb3IpO1xuICAgICAgdGhyb3cgZXJyb3I7XG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuaXNTaHV0dGluZ0Rvd24gPSBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIHRoZSBjb25uZWN0aW9uIGlzIHNodXR0aW5nIGRvd25cbiAgICpcbiAgICogQHJldHVybnMgdHJ1ZSBpZiBjb25uZWN0aW9uIGlzIGluIHNodXRkb3duIHN0YXRlXG4gICAqL1xuICBwdWJsaWMgaXNDbG9zaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzU2h1dHRpbmdEb3duO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdXAgZXZlbnQgaGFuZGxlcnMgZm9yIHRoZSBjb25uZWN0aW9uIHBvb2xcbiAgICovXG4gIHByaXZhdGUgc2V0dXBFdmVudEhhbmRsZXJzKCk6IHZvaWQge1xuICAgIHRoaXMucG9vbC5vbignZXJyb3InLCAoZXJyKSA9PiB7XG4gICAgICBsb2dnZXIuZXJyb3IoJ1VuZXhwZWN0ZWQgZXJyb3Igb24gaWRsZSBjbGllbnQ6JywgZXJyKTtcblxuICAgICAgaWYgKHRoaXMub3B0aW9ucy5lbmFibGVBdXRvUmV0cnkgJiYgdGhpcy5yZXRyeVN0cmF0ZWd5LmdldEF0dGVtcHRzKCkgPCB0aGlzLm9wdGlvbnMubWF4UmV0cmllcykge1xuICAgICAgICB2b2lkIHRoaXMucmV0cnlTdHJhdGVneS5oYW5kbGVDb25uZWN0aW9uRXJyb3IoZXJyLCAoKSA9PiB0aGlzLnRlc3RDb25uZWN0aW9uKCkpLmNhdGNoKChyZXRyeUVycikgPT4ge1xuICAgICAgICAgIGxvZ2dlci5lcnJvcignQ29ubmVjdGlvbiByZXRyeSBlcnJvcjonLCByZXRyeUVycik7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5wb29sLm9uKCdjb25uZWN0JywgKCkgPT4ge1xuICAgICAgdGhpcy5yZXRyeVN0cmF0ZWd5LnJlc2V0KCk7IC8vIFJlc2V0IG9uIHN1Y2Nlc3NmdWwgY29ubmVjdGlvblxuXG4gICAgICBpZiAodGhpcy5vcHRpb25zLmVuYWJsZUxvZ2dpbmcpIHtcbiAgICAgICAgbG9nZ2VyLmRlYnVnKCdOZXcgZGF0YWJhc2UgY29ubmVjdGlvbiBlc3RhYmxpc2hlZCcpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5wb29sLm9uKCdyZW1vdmUnLCAoKSA9PiB7XG4gICAgICBpZiAodGhpcy5vcHRpb25zLmVuYWJsZUxvZ2dpbmcpIHtcbiAgICAgICAgbG9nZ2VyLmRlYnVnKCdDbGllbnQgcmVtb3ZlZCBmcm9tIHBvb2wnKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2dzIGNvbm5lY3Rpb24gY29uZmlndXJhdGlvbiAoc2FuaXRpemVkKVxuICAgKi9cbiAgcHJpdmF0ZSBsb2dDb25uZWN0aW9uQ29uZmlnKGNvbmZpZzogUG9vbENvbmZpZyk6IHZvaWQge1xuICAgIGxvZ2dlci5pbmZvKCdEYXRhYmFzZSBDb25maWd1cmF0aW9uOicsIHtcbiAgICAgIGhvc3Q6IGAke2NvbmZpZy5ob3N0fToke2NvbmZpZy5wb3J0fWAsXG4gICAgICBkYXRhYmFzZTogY29uZmlnLmRhdGFiYXNlLFxuICAgICAgdXNlcjogY29uZmlnLnVzZXIsXG4gICAgICBtYXhQb29sU2l6ZTogY29uZmlnLm1heCxcbiAgICAgIGlkbGVUaW1lb3V0TXM6IGNvbmZpZy5pZGxlVGltZW91dE1pbGxpcyxcbiAgICAgIGNvbm5lY3Rpb25UaW1lb3V0TXM6IGNvbmZpZy5jb25uZWN0aW9uVGltZW91dE1pbGxpcyxcbiAgICAgIHNzbDogY29uZmlnLnNzbCA/ICdlbmFibGVkJyA6ICdkaXNhYmxlZCcsXG4gICAgfSk7XG4gIH1cbn1cblxuLyoqXG4gKiBTaW5nbGV0b24gZGF0YWJhc2UgaW5zdGFuY2UgZm9yIHVzZSB0aHJvdWdob3V0IHRoZSBhcHBsaWNhdGlvbi5cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgZGIgfSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuICpcbiAqIC8vIFNlbGVjdCBxdWVyaWVzXG4gKiBjb25zdCBwbHVnaW5zID0gYXdhaXQgZGIuc2VsZWN0KCkuZnJvbShzY2hlbWEucGx1Z2luKTtcbiAqXG4gKiAvLyBJbnNlcnQgcXVlcmllc1xuICogYXdhaXQgZGIuaW5zZXJ0KHNjaGVtYS5wbHVnaW4pLnZhbHVlcyh7IG5hbWU6ICdteS1wbHVnaW4nIH0pO1xuICpcbiAqIC8vIFRyYW5zYWN0aW9uc1xuICogYXdhaXQgZGIudHJhbnNhY3Rpb24oYXN5bmMgKHR4KSA9PiB7XG4gKiAgIGF3YWl0IHR4Lmluc2VydChzY2hlbWEucGx1Z2luKS52YWx1ZXMoeyAuLi4gfSk7XG4gKiAgIGF3YWl0IHR4LnVwZGF0ZShzY2hlbWEucGx1Z2luKS5zZXQoeyAuLi4gfSk7XG4gKiB9KTtcbiAqIGBgYFxuICovXG5cbi8vIExhenkgaW5pdGlhbGl6YXRpb24gdG8gYXZvaWQgcmFjZSBjb25kaXRpb24gb24gbW9kdWxlIGxvYWRcbmxldCBfZGJJbnN0YW5jZTogUmV0dXJuVHlwZTx0eXBlb2YgZHJpenpsZT4gfCBudWxsID0gbnVsbDtcblxuLyoqXG4gKiBHZXQgdGhlIGRhdGFiYXNlIGluc3RhbmNlIHdpdGggbGF6eSBpbml0aWFsaXphdGlvblxuICogVGhpcyBhdm9pZHMgdGhlIHJhY2UgY29uZGl0aW9uIHdoZXJlIHRoZSBtb2R1bGUgaXMgbG9hZGVkIGJlZm9yZSBlbnZpcm9ubWVudCBpcyBjb25maWd1cmVkXG4gKi9cbmZ1bmN0aW9uIGdldERiSW5zdGFuY2UoKTogUmV0dXJuVHlwZTx0eXBlb2YgZHJpenpsZT4ge1xuICBpZiAoIV9kYkluc3RhbmNlKSB7XG4gICAgX2RiSW5zdGFuY2UgPSBDb25uZWN0aW9uLmdldEluc3RhbmNlKCkuZGI7XG4gIH1cbiAgcmV0dXJuIF9kYkluc3RhbmNlO1xufVxuXG4vKipcbiAqIFByb3h5LWJhc2VkIGxhenkgZGF0YWJhc2UgaW5zdGFuY2VcbiAqIFRoZSBhY3R1YWwgY29ubmVjdGlvbiBpcyBvbmx5IGNyZWF0ZWQgd2hlbiBmaXJzdCBhY2Nlc3NlZFxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBkYiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG4gKlxuICogLy8gQ29ubmVjdGlvbiBpcyBjcmVhdGVkIGhlcmUgb24gZmlyc3QgdXNlLCBub3Qgb24gaW1wb3J0XG4gKiBjb25zdCBwbHVnaW5zID0gYXdhaXQgZGIuc2VsZWN0KCkuZnJvbShzY2hlbWEucGx1Z2luKTtcbiAqIGBgYFxuICovXG5leHBvcnQgY29uc3QgZGIgPSBuZXcgUHJveHkoe30gYXMgUmV0dXJuVHlwZTx0eXBlb2YgZHJpenpsZT4sIHtcbiAgZ2V0KF8sIHByb3A6IHN0cmluZyB8IHN5bWJvbCkge1xuICAgIGNvbnN0IGluc3RhbmNlID0gZ2V0RGJJbnN0YW5jZSgpO1xuICAgIGNvbnN0IHZhbHVlID0gaW5zdGFuY2VbcHJvcCBhcyBrZXlvZiB0eXBlb2YgaW5zdGFuY2VdO1xuICAgIC8vIEJpbmQgbWV0aG9kcyB0byB0aGUgaW5zdGFuY2UgdG8gcHJlc2VydmUgJ3RoaXMnIGNvbnRleHRcbiAgICBpZiAodHlwZW9mIHZhbHVlID09PSAnZnVuY3Rpb24nKSB7XG4gICAgICByZXR1cm4gdmFsdWUuYmluZChpbnN0YW5jZSk7XG4gICAgfVxuICAgIHJldHVybiB2YWx1ZTtcbiAgfSxcbn0pO1xuXG4vKipcbiAqIEdldHMgdGhlIENvbm5lY3Rpb24gaW5zdGFuY2UgZm9yIGFkdmFuY2VkIG9wZXJhdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgZ2V0Q29ubmVjdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG4gKlxuICogY29uc3QgY29ubmVjdGlvbiA9IGdldENvbm5lY3Rpb24oKTtcbiAqIGNvbnN0IHN0YXRzID0gY29ubmVjdGlvbi5nZXRTdGF0cygpO1xuICogY29uc29sZS5sb2coYEFjdGl2ZSBjb25uZWN0aW9uczogJHtzdGF0cy50b3RhbENvdW50fWApO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDb25uZWN0aW9uKCk6IENvbm5lY3Rpb24ge1xuICByZXR1cm4gQ29ubmVjdGlvbi5nZXRJbnN0YW5jZSgpO1xufVxuXG4vKipcbiAqIENsb3NlcyB0aGUgZGF0YWJhc2UgY29ubmVjdGlvblxuICogU2hvdWxkIGJlIGNhbGxlZCBkdXJpbmcgYXBwbGljYXRpb24gc2h1dGRvd25cbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgY2xvc2VDb25uZWN0aW9uIH0gZnJvbSAnLi9jb25uZWN0aW9uJztcbiAqXG4gKiBwcm9jZXNzLm9uKCdTSUdURVJNJywgYXN5bmMgKCkgPT4ge1xuICogICBhd2FpdCBjbG9zZUNvbm5lY3Rpb24oKTtcbiAqICAgcHJvY2Vzcy5leGl0KDApO1xuICogfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNsb3NlQ29ubmVjdGlvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgY29ubmVjdGlvbiA9IENvbm5lY3Rpb24uZ2V0SW5zdGFuY2UoKTtcbiAgYXdhaXQgY29ubmVjdGlvbi5jbG9zZSgpO1xuICBfZGJJbnN0YW5jZSA9IG51bGw7IC8vIFJlc2V0IGxhenkgaW5zdGFuY2VcbiAgLy8gQ2xvc2UgdGhlIHJlYWQtcmVwbGljYSBwb29sIHRvby4gQSBoYWxmLWNsb3NlZCBwcm9jZXNzIGtlZXBzIHNlcnZlclxuICAvLyBjb25uZWN0aW9ucyBvcGVuIG9uIHRoZSBzdGFuZGJ5IGFuZCBpdHMgcmVwbGljYXRpb24gc2xvdCBidXN5LCB3aGljaCBvbiB0aGVcbiAgLy8gcHJpbWFyeSBtZWFucyByZXRhaW5lZCBXQUwg4oCUIHRoZSBmYWlsdXJlIG1vZGUgdGhhdCBmaWxscyB0aGUgZGF0YSB2b2x1bWUuXG4gIC8vIEltcG9ydGVkIGxhemlseSBzbyB0aGlzIG1vZHVsZSBkb2VzIG5vdCBkZXBlbmQgb24gdGhlIHJlYWQgY29ubmVjdGlvbiBhdFxuICAvLyBsb2FkIHRpbWUgKGl0IGhhcyBubyByZXBsaWNhIG9uIG1vc3QgZGVwbG95cykuXG4gIGNvbnN0IHsgY2xvc2VSZWFkQ29ubmVjdGlvbiB9ID0gYXdhaXQgaW1wb3J0KCcuL3JlYWQtY29ubmVjdGlvbi5qcycpO1xuICBhd2FpdCBjbG9zZVJlYWRDb25uZWN0aW9uKCk7XG59XG5cbi8qKlxuICogVGVzdHMgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb25cbiAqXG4gKiBAcmV0dXJucyBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdHJ1ZSBpZiBjb25uZWN0aW9uIGlzIGhlYWx0aHlcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgdGVzdENvbm5lY3Rpb24gfSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuICpcbiAqIGlmIChhd2FpdCB0ZXN0Q29ubmVjdGlvbigpKSB7XG4gKiAgIGNvbnNvbGUubG9nKCdEYXRhYmFzZSBpcyByZWFkeScpO1xuICogfSBlbHNlIHtcbiAqICAgY29uc29sZS5lcnJvcignRGF0YWJhc2UgY29ubmVjdGlvbiBmYWlsZWQnKTtcbiAqICAgcHJvY2Vzcy5leGl0KDEpO1xuICogfVxuICogYGBgXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB0ZXN0Q29ubmVjdGlvbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgY29uc3QgY29ubmVjdGlvbiA9IENvbm5lY3Rpb24uZ2V0SW5zdGFuY2UoKTtcbiAgcmV0dXJuIGNvbm5lY3Rpb24udGVzdENvbm5lY3Rpb24oKTtcbn1cbiJdfQ==
|
|
410
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9zdGdyZXMtY29ubmVjdGlvbi5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFiYXNlL3Bvc3RncmVzLWNvbm5lY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxJQUFJLEVBQW1CLE1BQU0sSUFBSSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUU5RCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7QUFFeEMscURBQXFEO0FBQ3JELE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixDQUFDO0FBRXhEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSCxNQUFNLFVBQVUsWUFBWSxDQUFDLFFBQW1DO0lBQzlELElBQUksUUFBUSxLQUFLLFNBQVM7UUFBRSxPQUFPLFFBQVEsQ0FBQztJQUU1QyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUNoRCxNQUFNLE9BQU8sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUVyRCxJQUFJLE9BQWdCLENBQUM7SUFDckIsSUFBSSxLQUFLLEtBQUssTUFBTSxJQUFJLEtBQUssS0FBSyxHQUFHO1FBQUUsT0FBTyxHQUFHLElBQUksQ0FBQztTQUNqRCxJQUFJLEtBQUssS0FBSyxPQUFPLElBQUksS0FBSyxLQUFLLEdBQUc7UUFBRSxP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c0JBQXNCLENBQUMsQ0FBQztJQUNyRSxNQUFNLG1CQUFtQixFQUFFLENBQUM7QUFDOUIsQ0FBQztBQUVEOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjO0lBQ2xDLE1BQU0sVUFBVSxHQUFHLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1QyxPQUFPLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQztBQUNyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IGNyZWF0ZUxvZ2dlciwgZW52Qm9vbCwgZW52SW50LCBlbnZTdHIgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgeyBkcml6emxlIH0gZnJvbSAnZHJpenpsZS1vcm0vbm9kZS1wb3N0Z3Jlcyc7XG5pbXBvcnQgeyBQb29sLCB0eXBlIFBvb2xDb25maWcgfSBmcm9tICdwZyc7XG5pbXBvcnQgeyBzY2hlbWEgfSBmcm9tICcuL2RyaXp6bGUtc2NoZW1hLmpzJztcbmltcG9ydCB7IENvbm5lY3Rpb25SZXRyeVN0cmF0ZWd5IH0gZnJvbSAnLi9yZXRyeS1zdHJhdGVneS5qcyc7XG5cbmNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcignZGF0YWJhc2UnKTtcblxuLyoqIERldGVjdCBMYW1iZGEgZW52aXJvbm1lbnQgZm9yIHBvb2wtc2l6ZSB0dW5pbmcgKi9cbmNvbnN0IGlzTGFtYmRhID0gISFwcm9jZXNzLmVudi5BV1NfTEFNQkRBX0ZVTkNUSU9OX05BTUU7XG5cbi8qKlxuICogUmVzb2x2ZSB0aGUgcGcgVExTL1NTTCBjb25maWcgZnJvbSBhbiBleHBsaWNpdCBvcHRpb24gb3IgdGhlIGVudmlyb25tZW50LFxuICogZm9sbG93aW5nIHRoZSBzYW1lIGVudi10dW5hYmxlIHBhdHRlcm4gYXMgdGhlIHBvb2wgc2l6aW5nIGFib3ZlLlxuICpcbiAqIFByZWNlZGVuY2U6XG4gKiAgIDEuIEFuIGV4cGxpY2l0IGBvcHRpb25zLnNzbGAgKGNvbnN0cnVjdG9yIGFyZykgYWx3YXlzIHdpbnMg4oCUIGluY2x1ZGluZyBhblxuICogICAgICBleHBsaWNpdCBgZmFsc2VgIHRvIGZvcmNlIHBsYWludGV4dC5cbiAqICAgMi4gYERCX1NTTGAgKGB0cnVlYC9gMWAgb24sIGBmYWxzZWAvYDBgIG9mZikgb3IgUG9zdGdyZXMnIHN0YW5kYXJkXG4gKiAgICAgIGBQR1NTTE1PREVgIChgZGlzYWJsZWAgPSBvZmYsIGFueSBvdGhlciBtb2RlID0gb24pLlxuICogICAzLiBEZWZhdWx0OiBPTiBpbiBwcm9kdWN0aW9uIChSRFMgY29ubmVjdGlvbnMgbXVzdCBiZSBlbmNyeXB0ZWQgaW4gdHJhbnNpdCksXG4gKiAgICAgIE9GRiBldmVyeXdoZXJlIGVsc2Ugc28gYSBsb2NhbCBQb3N0Z3JlcyB3aXRob3V0IFRMUyBrZWVwcyB3b3JraW5nLlxuICpcbiAqIFdoZW4gZW5hYmxlZCwgYHJlamVjdFVuYXV0aG9yaXplZGAgZm9sbG93cyBgREJfU1NMX1JFSkVDVF9VTkFVVEhPUklaRURgXG4gKiAoZGVmYXVsdCBgZmFsc2VgKTogQVdTIFJEUyBwcmVzZW50cyBhIGNlcnQgc2lnbmVkIGJ5IHRoZSBSRFMgQ0EsIHdoaWNoIGlzIG5vdFxuICogaW4gTm9kZSdzIGRlZmF1bHQgdHJ1c3Qgc3RvcmUgdW5sZXNzIHRoZSBDQSBidW5kbGUgaXMgbW91bnRlZCwgc28gY2VydGlmaWNhdGVcbiAqIFZFUklGSUNBVElPTiBpcyBvcHQtaW4gdG8gYXZvaWQgYnJlYWtpbmcgYSBzdG9jayBSRFMgZGVwbG95IOKAlCB0aGUgY2hhbm5lbCBpc1xuICogc3RpbGwgRU5DUllQVEVELiBTZXQgYERCX1NTTF9SRUpFQ1RfVU5BVVRIT1JJWkVEPXRydWVgIG9uY2UgdGhlIFJEUyBDQSBidW5kbGVcbiAqIGlzIHdpcmVkIHRvIGdldCBmdWxsIHZlcmlmaWNhdGlvbi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFNzbENvbmZpZyhleHBsaWNpdD86IENvbm5lY3Rpb25PcHRpb25zWydzc2wnXSk6IGJvb2xlYW4gfCB7IHJlamVjdFVuYXV0aG9yaXplZDogYm9vbGVhbiB9IHtcbiAgaWYgKGV4cGxpY2l0ICE9PSB1bmRlZmluZWQpIHJldHVybiBleHBsaWNpdDtcblxuICBjb25zdCBkYlNzbCA9IHByb2Nlc3MuZW52LkRCX1NTTD8udG9Mb3dlckNhc2UoKTtcbiAgY29uc3Qgc3NsTW9kZSA9IHByb2Nlc3MuZW52LlBHU1NMTU9ERT8udG9Mb3dlckNhc2UoKTtcblxuICBsZXQgZW5hYmxlZDogYm9vbGVhbjtcbiAgaWYgKGRiU3NsID09PSAndHJ1ZScgfHwgZGJTc2wgPT09ICcxJykgZW5hYmxlZCA9IHRydWU7XG4gIGVsc2UgaWYgKGRiU3NsID09PSAnZmFsc2UnIHx8IGRiU3NsID09PSAnMCcpIGVuYWJsZWQgPSBmYWxzZTtcbiAgZWxzZSBpZiAoc3NsTW9kZSkgZW5hYmxlZCA9IHNzbE1vZGUgIT09ICdkaXNhYmxlJztcbiAgZWxzZSBlbmFibGVkID0gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJztcblxuICBpZiAoIWVuYWJsZWQpIHJldHVybiBmYWxzZTtcbiAgcmV0dXJuIHsgcmVqZWN0VW5hdXRob3JpemVkOiBlbnZCb29sKCdEQl9TU0xfUkVKRUNUX1VOQVVUSE9SSVpFRCcsIGZhbHNlKSB9O1xufVxuXG5mdW5jdGlvbiBnZXREYXRhYmFzZUNvbmZpZygpIHtcbiAgLy8gTGFtYmRhOiBzbWFsbCBwb29sIChlYWNoIGludm9jYXRpb24gaXMgc2hvcnQtbGl2ZWQsIG1hbnkgY29uY3VycmVudCBpbnN0YW5jZXMpXG4gIC8vIEVDUy9sb25nLXJ1bm5pbmc6IGxhcmdlciBwb29sIGZvciBzdXN0YWluZWQgY29uY3VycmVuY3lcbiAgY29uc3QgZGVmYXVsdFBvb2xTaXplID0gaXNMYW1iZGEgPyAyIDogMjA7XG4gIGNvbnN0IGRlZmF1bHRJZGxlVGltZW91dCA9IGlzTGFtYmRhID8gMTAwMDAgOiAzMDAwMDtcblxuICByZXR1cm4ge1xuICAgIGhvc3Q6IGVudlN0cignREJfSE9TVCcsICdwb3N0Z3JlcycpLFxuICAgIHBvcnQ6IGVudkludCgnREJfUE9SVCcsIDU0MzIpLFxuICAgIGRhdGFiYXNlOiBlbnZTdHIoJ0RBVEFCQVNFJywgJ3BpcGVsaW5lX2J1aWxkZXInKSxcbiAgICB1c2VyOiBlbnZTdHIoJ0RCX1VTRVInLCAncG9zdGdyZXMnKSxcbiAgICBwYXNzd29yZDogcHJvY2Vzcy5lbnYuREJfUEFTU1dPUkQgfHwgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgPyAoKCkgPT4geyB0aHJvdyBuZXcgRXJyb3IoJ0RCX1BBU1NXT1JEIGlzIHJlcXVpcmVkIGluIHByb2R1Y3Rpb24nKTsgfSkoKSBhcyBzdHJpbmcgOiAnJyksXG4gICAgbWF4UG9vbFNpemU6IGVudkludCgnRFJJWlpMRV9NQVhfUE9PTF9TSVpFJywgZGVmYXVsdFBvb2xTaXplKSxcbiAgICBpZGxlVGltZW91dE1pbGxpczogZW52SW50KCdEUklaWkxFX0lETEVfVElNRU9VVF9NSUxMSVMnLCBkZWZhdWx0SWRsZVRpbWVvdXQpLFxuICAgIGNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzOiBlbnZJbnQoJ0RSSVpaTEVfQ09OTkVDVElPTl9USU1FT1VUX01JTExJUycsIDUwMDApLFxuICB9O1xufVxuXG4vKipcbiAqIERhdGFiYXNlIGNvbm5lY3Rpb24gc3RhdGlzdGljcyBmb3IgbW9uaXRvcmluZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbm5lY3Rpb25TdGF0cyB7XG4gIHRvdGFsQ291bnQ6IG51bWJlcjtcbiAgaWRsZUNvdW50OiBudW1iZXI7XG4gIHdhaXRpbmdDb3VudDogbnVtYmVyO1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIGNvbmZpZ3VyaW5nIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29ubmVjdGlvbk9wdGlvbnMge1xuICAvKiogV2hldGhlciB0byBlbmFibGUgY29ubmVjdGlvbiBsb2dnaW5nICovXG4gIGVuYWJsZUxvZ2dpbmc/OiBib29sZWFuO1xuXG4gIC8qKiBXaGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgcmV0cnkgZmFpbGVkIGNvbm5lY3Rpb25zICovXG4gIGVuYWJsZUF1dG9SZXRyeT86IGJvb2xlYW47XG5cbiAgLyoqIE1heGltdW0gbnVtYmVyIG9mIGNvbm5lY3Rpb24gcmV0cnkgYXR0ZW1wdHMgKi9cbiAgbWF4UmV0cmllcz86IG51bWJlcjtcblxuICAvKiogRGVsYXkgYmV0d2VlbiByZXRyeSBhdHRlbXB0cyBpbiBtaWxsaXNlY29uZHMgKi9cbiAgcmV0cnlEZWxheT86IG51bWJlcjtcblxuICAvKiogU1NMIGNvbmZpZ3VyYXRpb24gKi9cbiAgc3NsPzogYm9vbGVhbiB8IHsgcmVqZWN0VW5hdXRob3JpemVkOiBib29sZWFuIH07XG59XG5cbi8qKlxuICogU2luZ2xldG9uIGRhdGFiYXNlIGNvbm5lY3Rpb24gY2xhc3MuXG4gKiBNYW5hZ2VzIFBvc3RncmVTUUwgY29ubmVjdGlvbiBwb29saW5nIGFuZCBEcml6emxlIE9STSBpbnN0YW5jZS5cbiAqXG4gKiBGZWF0dXJlczpcbiAqIC0gU2luZ2xldG9uIHBhdHRlcm4gZm9yIHNpbmdsZSBjb25uZWN0aW9uIHBvb2xcbiAqIC0gQXV0b21hdGljIGNvbm5lY3Rpb24gcmV0cnkgd2l0aCBiYWNrb2ZmXG4gKiAtIENvbm5lY3Rpb24gaGVhbHRoIG1vbml0b3JpbmdcbiAqIC0gR3JhY2VmdWwgc2h1dGRvd24gaGFuZGxpbmdcbiAqIC0gQ29tcHJlaGVuc2l2ZSBlcnJvciBoYW5kbGluZ1xuICogLSBDb25uZWN0aW9uIHN0YXRpc3RpY3MgdHJhY2tpbmdcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgQ29ubmVjdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG4gKlxuICogY29uc3QgY29ubmVjdGlvbiA9IENvbm5lY3Rpb24uZ2V0SW5zdGFuY2UoKTtcbiAqIGNvbnN0IHBsdWdpbnMgPSBhd2FpdCBjb25uZWN0aW9uLmRiLnNlbGVjdCgpLmZyb20oc2NoZW1hLnBsdWdpbik7XG4gKlxuICogLy8gRHVyaW5nIHNodXRkb3duXG4gKiBhd2FpdCBjb25uZWN0aW9uLmNsb3NlKCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIENvbm5lY3Rpb24ge1xuICBwcml2YXRlIHN0YXRpYyBpbnN0YW5jZTogQ29ubmVjdGlvbiB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBEcml6emxlIE9STSBkYXRhYmFzZSBpbnN0YW5jZSB3aXRoIHNjaGVtYVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRiOiBSZXR1cm5UeXBlPHR5cGVvZiBkcml6emxlPjtcblxuICBwcml2YXRlIHJlYWRvbmx5IHBvb2w6IFBvb2w7XG4gIHByaXZhdGUgcmVhZG9ubHkgb3B0aW9uczogUmVxdWlyZWQ8Q29ubmVjdGlvbk9wdGlvbnM+O1xuICBwcml2YXRlIHJlYWRvbmx5IHJldHJ5U3RyYXRlZ3k6IENvbm5lY3Rpb25SZXRyeVN0cmF0ZWd5O1xuICBwcml2YXRlIGlzU2h1dHRpbmdEb3duID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFByaXZhdGUgY29uc3RydWN0b3IgdG8gZW5mb3JjZSBzaW5nbGV0b24gcGF0dGVybi5cbiAgICogSW5pdGlhbGl6ZXMgUG9zdGdyZVNRTCBjb25uZWN0aW9uIHBvb2wgYW5kIERyaXp6bGUgT1JNIGluc3RhbmNlLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIE9wdGlvbmFsIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBjb25uZWN0aW9uXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBJZiBkYXRhYmFzZSBpbml0aWFsaXphdGlvbiBmYWlscyBhZnRlciBhbGwgcmV0cmllc1xuICAgKi9cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihvcHRpb25zOiBDb25uZWN0aW9uT3B0aW9ucyA9IHt9KSB7XG4gICAgdGhpcy5vcHRpb25zID0ge1xuICAgICAgZW5hYmxlTG9nZ2luZzogb3B0aW9ucy5lbmFibGVMb2dnaW5nID8/IHRydWUsXG4gICAgICBlbmFibGVBdXRvUmV0cnk6IG9wdGlvbnMuZW5hYmxlQXV0b1JldHJ5ID8/IHRydWUsXG4gICAgICBtYXhSZXRyaWVzOiBvcHRpb25zLm1heFJldHJpZXMgPz8gZW52SW50KCdEQl9NQVhfUkVUUklFUycsIDMsIHsgbWluOiAwIH0pLFxuICAgICAgcmV0cnlEZWxheTogb3B0aW9ucy5yZXRyeURlbGF5ID8/IGVudkludCgnREJfUkVUUllfREVMQVlfTVMnLCAxMDAwLCB7IG1pbjogMCB9KSxcbiAgICAgIC8vIEVudi1kcml2ZW4gVExTOiBvbi1ieS1kZWZhdWx0IGluIHByb2R1Y3Rpb24sIGVudi1lbmFibGVhYmxlIGVsc2V3aGVyZS5cbiAgICAgIC8vIGdldEluc3RhbmNlKCkgaXMgbm9ybWFsbHkgY2FsbGVkIHdpdGggbm8gb3B0aW9ucywgc28gdGhpcyBpcyB0aGUgb25seVxuICAgICAgLy8gcGxhY2UgcHJvZHVjdGlvbiBSRFMgY29ubmVjdGlvbnMgcGljayB1cCBTU0wuXG4gICAgICBzc2w6IGdldFNzbENvbmZpZyhvcHRpb25zLnNzbCksXG4gICAgfTtcblxuICAgIC8vIEluaXRpYWxpemUgcmV0cnkgc3RyYXRlZ3lcbiAgICB0aGlzLnJldHJ5U3RyYXRlZ3kgPSBuZXcgQ29ubmVjdGlvblJldHJ5U3RyYXRlZ3koe1xuICAgICAgbWF4UmV0cmllczogdGhpcy5vcHRpb25zLm1heFJldHJpZXMsXG4gICAgICByZXRyeURlbGF5TXM6IHRoaXMub3B0aW9ucy5yZXRyeURlbGF5LFxuICAgIH0pO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IGdldERhdGFiYXNlQ29uZmlnKCk7XG5cbiAgICAgIGNvbnN0IHBvb2xDb25maWc6IFBvb2xDb25maWcgPSB7XG4gICAgICAgIGhvc3Q6IGNvbmZpZy5ob3N0LFxuICAgICAgICBwb3J0OiBjb25maWcucG9ydCxcbiAgICAgICAgZGF0YWJhc2U6IGNvbmZpZy5kYXRhYmFzZSxcbiAgICAgICAgdXNlcjogY29uZmlnLnVzZXIsXG4gICAgICAgIHBhc3N3b3JkOiBjb25maWcucGFzc3dvcmQsXG4gICAgICAgIG1heDogY29uZmlnLm1heFBvb2xTaXplLFxuICAgICAgICBpZGxlVGltZW91dE1pbGxpczogY29uZmlnLmlkbGVUaW1lb3V0TWlsbGlzLFxuICAgICAgICBjb25uZWN0aW9uVGltZW91dE1pbGxpczogY29uZmlnLmNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzLFxuICAgICAgICBzc2w6IHRoaXMub3B0aW9ucy5zc2wsXG4gICAgICAgIGFsbG93RXhpdE9uSWRsZTogdHJ1ZSxcbiAgICAgIH07XG5cbiAgICAgIHRoaXMucG9vbCA9IG5ldyBQb29sKHBvb2xDb25maWcpO1xuICAgICAgdGhpcy5zZXR1cEV2ZW50SGFuZGxlcnMoKTtcblxuICAgICAgdGhpcy5kYiA9IGRyaXp6bGUodGhpcy5wb29sLCB7IHNjaGVtYSB9KTtcblxuICAgICAgaWYgKHRoaXMub3B0aW9ucy5lbmFibGVMb2dnaW5nKSB7XG4gICAgICAgIGxvZ2dlci5pbmZvKCdEYXRhYmFzZSBjb25uZWN0aW9uIGluaXRpYWxpemVkIHN1Y2Nlc3NmdWxseScpO1xuICAgICAgICB0aGlzLmxvZ0Nvbm5lY3Rpb25Db25maWcocG9vbENvbmZpZyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGxvZ2dlci5lcnJvcignRmFpbGVkIHRvIGluaXRpYWxpemUgZGF0YWJhc2UgY29ubmVjdGlvbjonLCBlcnJvcik7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0RhdGFiYXNlIGluaXRpYWxpemF0aW9uIGZhaWxlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzaW5nbGV0b24gaW5zdGFuY2Ugb2YgdGhlIENvbm5lY3Rpb24gY2xhc3MuXG4gICAqIENyZWF0ZXMgYSBuZXcgaW5zdGFuY2UgaWYgb25lIGRvZXNuJ3QgZXhpc3QuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gT3B0aW9uYWwgY29uZmlndXJhdGlvbiAob25seSB1c2VkIG9uIGZpcnN0IGNhbGwpXG4gICAqIEByZXR1cm5zIFRoZSBzaW5nbGV0b24gQ29ubmVjdGlvbiBpbnN0YW5jZVxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBnZXRJbnN0YW5jZShvcHRpb25zPzogQ29ubmVjdGlvbk9wdGlvbnMpOiBDb25uZWN0aW9uIHtcbiAgICBpZiAoIUNvbm5lY3Rpb24uaW5zdGFuY2UpIHtcbiAgICAgIENvbm5lY3Rpb24uaW5zdGFuY2UgPSBuZXcgQ29ubmVjdGlvbihvcHRpb25zKTtcbiAgICB9XG4gICAgcmV0dXJuIENvbm5lY3Rpb24uaW5zdGFuY2U7XG4gIH1cblxuICAvKipcbiAgICogUmVzZXRzIHRoZSBzaW5nbGV0b24gaW5zdGFuY2UuXG4gICAqIFVzZWZ1bCBmb3IgdGVzdGluZyBvciByZWNvbmZpZ3VyaW5nIHRoZSBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAcGFyYW0gY2xvc2VFeGlzdGluZyAtIFdoZXRoZXIgdG8gY2xvc2UgZXhpc3RpbmcgY29ubmVjdGlvbiBiZWZvcmUgcmVzZXRcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYXN5bmMgcmVzZXQoY2xvc2VFeGlzdGluZzogYm9vbGVhbiA9IHRydWUpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoQ29ubmVjdGlvbi5pbnN0YW5jZSAmJiBjbG9zZUV4aXN0aW5nKSB7XG4gICAgICBhd2FpdCBDb25uZWN0aW9uLmluc3RhbmNlLmNsb3NlKCk7XG4gICAgfVxuICAgIENvbm5lY3Rpb24uaW5zdGFuY2UgPSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFRlc3RzIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uXG4gICAqXG4gICAqIEByZXR1cm5zIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0cnVlIGlmIGNvbm5lY3Rpb24gaXMgaGVhbHRoeVxuICAgKi9cbiAgcHVibGljIGFzeW5jIHRlc3RDb25uZWN0aW9uKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBjbGllbnQgPSBhd2FpdCB0aGlzLnBvb2wuY29ubmVjdCgpO1xuICAgICAgLy8gUmVsZWFzZSBldmVuIGlmIHRoZSBwcm9iZSBxdWVyeSB0aHJvd3Mg4oCUIG90aGVyd2lzZSBhIGZsYWt5IERCICh0aGUgZXhhY3RcbiAgICAgIC8vIGNhc2UgdGhpcyBjaGVjayBleGlzdHMgZm9yKSBsZWFrcyBhIHBvb2xlZCBjbGllbnQgZWFjaCBmYWlsdXJlIGFuZCBjYW5cbiAgICAgIC8vIGV4aGF1c3QgdGhlIHBvb2wgb24gdGhlIHJldHJ5IHBhdGguXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQucXVlcnkoJ1NFTEVDVCAxJyk7XG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnMuZW5hYmxlTG9nZ2luZykge1xuICAgICAgICAgIGxvZ2dlci5pbmZvKCdEYXRhYmFzZSBjb25uZWN0aW9uIHRlc3Qgc3VjY2Vzc2Z1bCcpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQucm93cy5sZW5ndGggPiAwO1xuICAgICAgfSBmaW5hbGx5IHtcbiAgICAgICAgY2xpZW50LnJlbGVhc2UoKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgbG9nZ2VyLmVycm9yKCdEYXRhYmFzZSBjb25uZWN0aW9uIHRlc3QgZmFpbGVkOicsIGVycm9yKTtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBjb25uZWN0aW9uIHBvb2wgc3RhdGlzdGljc1xuICAgKlxuICAgKiBAcmV0dXJucyBDdXJyZW50IGNvbm5lY3Rpb24gcG9vbCBzdGF0aXN0aWNzXG4gICAqL1xuICBwdWJsaWMgZ2V0U3RhdHMoKTogQ29ubmVjdGlvblN0YXRzIHtcbiAgICByZXR1cm4ge1xuICAgICAgdG90YWxDb3VudDogdGhpcy5wb29sLnRvdGFsQ291bnQsXG4gICAgICBpZGxlQ291bnQ6IHRoaXMucG9vbC5pZGxlQ291bnQsXG4gICAgICB3YWl0aW5nQ291bnQ6IHRoaXMucG9vbC53YWl0aW5nQ291bnQsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIGRhdGFiYXNlIGNvbm5lY3Rpb24gcG9vbCBncmFjZWZ1bGx5LlxuICAgKiBTaG91bGQgYmUgY2FsbGVkIGR1cmluZyBhcHBsaWNhdGlvbiBzaHV0ZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHRpbWVvdXQgLSBNYXhpbXVtIHRpbWUgdG8gd2FpdCBmb3IgY29ubmVjdGlvbnMgdG8gY2xvc2UgKG1zKVxuICAgKiBAcmV0dXJucyBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgd2hlbiBwb29sIGlzIGNsb3NlZFxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsb3NlKHRpbWVvdXQ6IG51bWJlciA9IGVudkludCgnREJfQ0xPU0VfVElNRU9VVF9NUycsIDUwMDApKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuaXNTaHV0dGluZ0Rvd24pIHtcbiAgICAgIGxvZ2dlci53YXJuKCdDb25uZWN0aW9uIGlzIGFscmVhZHkgc2h1dHRpbmcgZG93bicpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNTaHV0dGluZ0Rvd24gPSB0cnVlO1xuXG4gICAgdHJ5IHtcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuZW5hYmxlTG9nZ2luZykge1xuICAgICAgICBsb2dnZXIuaW5mbygnQ2xvc2luZyBkYXRhYmFzZSBjb25uZWN0aW9uIHBvb2wuLi4nKTtcbiAgICAgICAgY29uc3Qgc3RhdHMgPSB0aGlzLmdldFN0YXRzKCk7XG4gICAgICAgIGxvZ2dlci5pbmZvKGBQb29sIHN0YXRzIC0gVG90YWw6ICR7c3RhdHMudG90YWxDb3VudH0sIElkbGU6ICR7c3RhdHMuaWRsZUNvdW50fSwgV2FpdGluZzogJHtzdGF0cy53YWl0aW5nQ291bnR9YCk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNldCBhIHRpbWVvdXQgZm9yIGdyYWNlZnVsIHNodXRkb3duXG4gICAgICBjb25zdCBjbG9zZVByb21pc2UgPSB0aGlzLnBvb2wuZW5kKCk7XG4gICAgICBjb25zdCB0aW1lb3V0UHJvbWlzZSA9IG5ldyBQcm9taXNlKChfLCByZWplY3QpID0+XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4gcmVqZWN0KG5ldyBFcnJvcignQ29ubmVjdGlvbiBjbG9zZSB0aW1lb3V0JykpLCB0aW1lb3V0KSxcbiAgICAgICk7XG5cbiAgICAgIGF3YWl0IFByb21pc2UucmFjZShbY2xvc2VQcm9taXNlLCB0aW1lb3V0UHJvbWlzZV0pO1xuXG4gICAgICBpZiAodGhpcy5vcHRpb25zLmVuYWJsZUxvZ2dpbmcpIHtcbiAgICAgICAgbG9nZ2VyLmluZm8oJ0RhdGFiYXNlIGNvbm5lY3Rpb24gY2xvc2VkIHN1Y2Nlc3NmdWxseScpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBsb2dnZXIuZXJyb3IoJ0Vycm9yIGNsb3NpbmcgZGF0YWJhc2UgY29ubmVjdGlvbjonLCBlcnJvcik7XG4gICAgICB0aHJvdyBlcnJvcjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5pc1NodXR0aW5nRG93biA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbm5lY3Rpb24gaXMgc2h1dHRpbmcgZG93blxuICAgKlxuICAgKiBAcmV0dXJucyB0cnVlIGlmIGNvbm5lY3Rpb24gaXMgaW4gc2h1dGRvd24gc3RhdGVcbiAgICovXG4gIHB1YmxpYyBpc0Nsb3NpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNTaHV0dGluZ0Rvd247XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB1cCBldmVudCBoYW5kbGVycyBmb3IgdGhlIGNvbm5lY3Rpb24gcG9vbFxuICAgKi9cbiAgcHJpdmF0ZSBzZXR1cEV2ZW50SGFuZGxlcnMoKTogdm9pZCB7XG4gICAgdGhpcy5wb29sLm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICAgIGxvZ2dlci5lcnJvcignVW5leHBlY3RlZCBlcnJvciBvbiBpZGxlIGNsaWVudDonLCBlcnIpO1xuXG4gICAgICBpZiAodGhpcy5vcHRpb25zLmVuYWJsZUF1dG9SZXRyeSAmJiB0aGlzLnJldHJ5U3RyYXRlZ3kuZ2V0QXR0ZW1wdHMoKSA8IHRoaXMub3B0aW9ucy5tYXhSZXRyaWVzKSB7XG4gICAgICAgIHZvaWQgdGhpcy5yZXRyeVN0cmF0ZWd5LmhhbmRsZUNvbm5lY3Rpb25FcnJvcihlcnIsICgpID0+IHRoaXMudGVzdENvbm5lY3Rpb24oKSkuY2F0Y2goKHJldHJ5RXJyKSA9PiB7XG4gICAgICAgICAgbG9nZ2VyLmVycm9yKCdDb25uZWN0aW9uIHJldHJ5IGVycm9yOicsIHJldHJ5RXJyKTtcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnBvb2wub24oJ2Nvbm5lY3QnLCAoKSA9PiB7XG4gICAgICB0aGlzLnJldHJ5U3RyYXRlZ3kucmVzZXQoKTsgLy8gUmVzZXQgb24gc3VjY2Vzc2Z1bCBjb25uZWN0aW9uXG5cbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuZW5hYmxlTG9nZ2luZykge1xuICAgICAgICBsb2dnZXIuZGVidWcoJ05ldyBkYXRhYmFzZSBjb25uZWN0aW9uIGVzdGFibGlzaGVkJyk7XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICB0aGlzLnBvb2wub24oJ3JlbW92ZScsICgpID0+IHtcbiAgICAgIGlmICh0aGlzLm9wdGlvbnMuZW5hYmxlTG9nZ2luZykge1xuICAgICAgICBsb2dnZXIuZGVidWcoJ0NsaWVudCByZW1vdmVkIGZyb20gcG9vbCcpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIExvZ3MgY29ubmVjdGlvbiBjb25maWd1cmF0aW9uIChzYW5pdGl6ZWQpXG4gICAqL1xuICBwcml2YXRlIGxvZ0Nvbm5lY3Rpb25Db25maWcoY29uZmlnOiBQb29sQ29uZmlnKTogdm9pZCB7XG4gICAgbG9nZ2VyLmluZm8oJ0RhdGFiYXNlIENvbmZpZ3VyYXRpb246Jywge1xuICAgICAgaG9zdDogYCR7Y29uZmlnLmhvc3R9OiR7Y29uZmlnLnBvcnR9YCxcbiAgICAgIGRhdGFiYXNlOiBjb25maWcuZGF0YWJhc2UsXG4gICAgICB1c2VyOiBjb25maWcudXNlcixcbiAgICAgIG1heFBvb2xTaXplOiBjb25maWcubWF4LFxuICAgICAgaWRsZVRpbWVvdXRNczogY29uZmlnLmlkbGVUaW1lb3V0TWlsbGlzLFxuICAgICAgY29ubmVjdGlvblRpbWVvdXRNczogY29uZmlnLmNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzLFxuICAgICAgc3NsOiBjb25maWcuc3NsID8gJ2VuYWJsZWQnIDogJ2Rpc2FibGVkJyxcbiAgICB9KTtcbiAgfVxufVxuXG4vKipcbiAqIFNpbmdsZXRvbiBkYXRhYmFzZSBpbnN0YW5jZSBmb3IgdXNlIHRocm91Z2hvdXQgdGhlIGFwcGxpY2F0aW9uLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBkYiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG4gKlxuICogLy8gU2VsZWN0IHF1ZXJpZXNcbiAqIGNvbnN0IHBsdWdpbnMgPSBhd2FpdCBkYi5zZWxlY3QoKS5mcm9tKHNjaGVtYS5wbHVnaW4pO1xuICpcbiAqIC8vIEluc2VydCBxdWVyaWVzXG4gKiBhd2FpdCBkYi5pbnNlcnQoc2NoZW1hLnBsdWdpbikudmFsdWVzKHsgbmFtZTogJ215LXBsdWdpbicgfSk7XG4gKlxuICogLy8gVHJhbnNhY3Rpb25zXG4gKiBhd2FpdCBkYi50cmFuc2FjdGlvbihhc3luYyAodHgpID0+IHtcbiAqICAgYXdhaXQgdHguaW5zZXJ0KHNjaGVtYS5wbHVnaW4pLnZhbHVlcyh7IC4uLiB9KTtcbiAqICAgYXdhaXQgdHgudXBkYXRlKHNjaGVtYS5wbHVnaW4pLnNldCh7IC4uLiB9KTtcbiAqIH0pO1xuICogYGBgXG4gKi9cblxuLy8gTGF6eSBpbml0aWFsaXphdGlvbiB0byBhdm9pZCByYWNlIGNvbmRpdGlvbiBvbiBtb2R1bGUgbG9hZFxubGV0IF9kYkluc3RhbmNlOiBSZXR1cm5UeXBlPHR5cGVvZiBkcml6emxlPiB8IG51bGwgPSBudWxsO1xuXG4vKipcbiAqIEdldCB0aGUgZGF0YWJhc2UgaW5zdGFuY2Ugd2l0aCBsYXp5IGluaXRpYWxpemF0aW9uXG4gKiBUaGlzIGF2b2lkcyB0aGUgcmFjZSBjb25kaXRpb24gd2hlcmUgdGhlIG1vZHVsZSBpcyBsb2FkZWQgYmVmb3JlIGVudmlyb25tZW50IGlzIGNvbmZpZ3VyZWRcbiAqL1xuZnVuY3Rpb24gZ2V0RGJJbnN0YW5jZSgpOiBSZXR1cm5UeXBlPHR5cGVvZiBkcml6emxlPiB7XG4gIGlmICghX2RiSW5zdGFuY2UpIHtcbiAgICBfZGJJbnN0YW5jZSA9IENvbm5lY3Rpb24uZ2V0SW5zdGFuY2UoKS5kYjtcbiAgfVxuICByZXR1cm4gX2RiSW5zdGFuY2U7XG59XG5cbi8qKlxuICogUHJveHktYmFzZWQgbGF6eSBkYXRhYmFzZSBpbnN0YW5jZVxuICogVGhlIGFjdHVhbCBjb25uZWN0aW9uIGlzIG9ubHkgY3JlYXRlZCB3aGVuIGZpcnN0IGFjY2Vzc2VkXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IGRiIH0gZnJvbSAnLi9jb25uZWN0aW9uJztcbiAqXG4gKiAvLyBDb25uZWN0aW9uIGlzIGNyZWF0ZWQgaGVyZSBvbiBmaXJzdCB1c2UsIG5vdCBvbiBpbXBvcnRcbiAqIGNvbnN0IHBsdWdpbnMgPSBhd2FpdCBkYi5zZWxlY3QoKS5mcm9tKHNjaGVtYS5wbHVnaW4pO1xuICogYGBgXG4gKi9cbmV4cG9ydCBjb25zdCBkYiA9IG5ldyBQcm94eSh7fSBhcyBSZXR1cm5UeXBlPHR5cGVvZiBkcml6emxlPiwge1xuICBnZXQoXywgcHJvcDogc3RyaW5nIHwgc3ltYm9sKSB7XG4gICAgY29uc3QgaW5zdGFuY2UgPSBnZXREYkluc3RhbmNlKCk7XG4gICAgY29uc3QgdmFsdWUgPSBpbnN0YW5jZVtwcm9wIGFzIGtleW9mIHR5cGVvZiBpbnN0YW5jZV07XG4gICAgLy8gQmluZCBtZXRob2RzIHRvIHRoZSBpbnN0YW5jZSB0byBwcmVzZXJ2ZSAndGhpcycgY29udGV4dFxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJldHVybiB2YWx1ZS5iaW5kKGluc3RhbmNlKTtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlO1xuICB9LFxufSk7XG5cbi8qKlxuICogR2V0cyB0aGUgQ29ubmVjdGlvbiBpbnN0YW5jZSBmb3IgYWR2YW5jZWQgb3BlcmF0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBnZXRDb25uZWN0aW9uIH0gZnJvbSAnLi9jb25uZWN0aW9uJztcbiAqXG4gKiBjb25zdCBjb25uZWN0aW9uID0gZ2V0Q29ubmVjdGlvbigpO1xuICogY29uc3Qgc3RhdHMgPSBjb25uZWN0aW9uLmdldFN0YXRzKCk7XG4gKiBjb25zb2xlLmxvZyhgQWN0aXZlIGNvbm5lY3Rpb25zOiAke3N0YXRzLnRvdGFsQ291bnR9YCk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldENvbm5lY3Rpb24oKTogQ29ubmVjdGlvbiB7XG4gIHJldHVybiBDb25uZWN0aW9uLmdldEluc3RhbmNlKCk7XG59XG5cbi8qKlxuICogQ2xvc2VzIHRoZSBkYXRhYmFzZSBjb25uZWN0aW9uXG4gKiBTaG91bGQgYmUgY2FsbGVkIGR1cmluZyBhcHBsaWNhdGlvbiBzaHV0ZG93blxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBjbG9zZUNvbm5lY3Rpb24gfSBmcm9tICcuL2Nvbm5lY3Rpb24nO1xuICpcbiAqIHByb2Nlc3Mub24oJ1NJR1RFUk0nLCBhc3luYyAoKSA9PiB7XG4gKiAgIGF3YWl0IGNsb3NlQ29ubmVjdGlvbigpO1xuICogICBwcm9jZXNzLmV4aXQoMCk7XG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gY2xvc2VDb25uZWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBjb25uZWN0aW9uID0gQ29ubmVjdGlvbi5nZXRJbnN0YW5jZSgpO1xuICBhd2FpdCBjb25uZWN0aW9uLmNsb3NlKCk7XG4gIF9kYkluc3RhbmNlID0gbnVsbDsgLy8gUmVzZXQgbGF6eSBpbnN0YW5jZVxuICAvLyBDbG9zZSB0aGUgcmVhZC1yZXBsaWNhIHBvb2wgdG9vLiBBIGhhbGYtY2xvc2VkIHByb2Nlc3Mga2VlcHMgc2VydmVyXG4gIC8vIGNvbm5lY3Rpb25zIG9wZW4gb24gdGhlIHN0YW5kYnkgYW5kIGl0cyByZXBsaWNhdGlvbiBzbG90IGJ1c3ksIHdoaWNoIG9uIHRoZVxuICAvLyBwcmltYXJ5IG1lYW5zIHJldGFpbmVkIFdBTCDigJQgdGhlIGZhaWx1cmUgbW9kZSB0aGF0IGZpbGxzIHRoZSBkYXRhIHZvbHVtZS5cbiAgLy8gSW1wb3J0ZWQgbGF6aWx5IHNvIHRoaXMgbW9kdWxlIGRvZXMgbm90IGRlcGVuZCBvbiB0aGUgcmVhZCBjb25uZWN0aW9uIGF0XG4gIC8vIGxvYWQgdGltZSAoaXQgaGFzIG5vIHJlcGxpY2Egb24gbW9zdCBkZXBsb3lzKS5cbiAgY29uc3QgeyBjbG9zZVJlYWRDb25uZWN0aW9uIH0gPSBhd2FpdCBpbXBvcnQoJy4vcmVhZC1jb25uZWN0aW9uLmpzJyk7XG4gIGF3YWl0IGNsb3NlUmVhZENvbm5lY3Rpb24oKTtcbn1cblxuLyoqXG4gKiBUZXN0cyB0aGUgZGF0YWJhc2UgY29ubmVjdGlvblxuICpcbiAqIEByZXR1cm5zIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0cnVlIGlmIGNvbm5lY3Rpb24gaXMgaGVhbHRoeVxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyB0ZXN0Q29ubmVjdGlvbiB9IGZyb20gJy4vY29ubmVjdGlvbic7XG4gKlxuICogaWYgKGF3YWl0IHRlc3RDb25uZWN0aW9uKCkpIHtcbiAqICAgY29uc29sZS5sb2coJ0RhdGFiYXNlIGlzIHJlYWR5Jyk7XG4gKiB9IGVsc2Uge1xuICogICBjb25zb2xlLmVycm9yKCdEYXRhYmFzZSBjb25uZWN0aW9uIGZhaWxlZCcpO1xuICogICBwcm9jZXNzLmV4aXQoMSk7XG4gKiB9XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRlc3RDb25uZWN0aW9uKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBjb25zdCBjb25uZWN0aW9uID0gQ29ubmVjdGlvbi5nZXRJbnN0YW5jZSgpO1xuICByZXR1cm4gY29ubmVjdGlvbi50ZXN0Q29ubmVjdGlvbigpO1xufVxuIl19
|
|
@@ -65,4 +65,4 @@ export async function closePublicReader() {
|
|
|
65
65
|
if (p)
|
|
66
66
|
await p.end();
|
|
67
67
|
}
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLXJlYWRlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFiYXNlL3B1YmxpYy1yZWFkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7OztHQWFHO0FBRUgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sSUFBSSxDQUFDO0FBRTFCLE9BQU8sS0FBSyxNQUFNLE1BQU0scUJBQXFCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXhELGtGQUFrRjtBQUNsRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyx5QkFBeUIsQ0FBQztBQUU1RCxJQUFJLElBQUksR0FBZ0IsSUFBSSxDQUFDO0FBQzdCLElBQUksUUFBUSxHQUFxRCxJQUFJLENBQUM7QUFFdEUsK0VBQStFO0FBQy9FLE1BQU0sVUFBVSx3QkFBd0I7SUFDdEMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsZ0NBQWdDLElBQUksRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDO0FBQ3JFLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQjtJQUMvQixJQUFJLFFBQVE7UUFBRSxPQUFPLFFBQVEsQ0FBQztJQUM5QixJQUFJLENBQUMsd0JBQXdCLEVBQUUsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsc0ZBQXNGLENBQUMsQ0FBQztJQUMxRyxDQUFDO0lBQ0QsSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDO1FBQ2QsSUFBSSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxJQUFJLFdBQVc7UUFDeEMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3pDLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLHdCQUF3QixJQUFJLHlCQUF5QjtRQUMzRSxJQUFJLEVBQUUsa0JBQWtCO1FBQ3hCLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLGdDQUFnQztRQUN0RCxrRkFBa0Y7UUFDbEYsR0FBRyxFQUFFLE1BQU0sQ0FBQyw0QkFBNEIsRUFBRSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDeEQsaUJBQWlCLEVBQUUsTUFBTTtRQUN6Qix1QkFBdUIsRUFBRSxNQUFNLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ3RGLHlFQUF5RTtRQUN6RSw2RUFBNkU7UUFDN0UsYUFBYSxFQUFFLE1BQU0sQ0FBQyxtQ0FBbUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDNUUsR0FBRyxFQUFFLFlBQVksRUFBRTtRQUNuQixlQUFlLEVBQUUsSUFBSTtLQUN0QixDQUFDLENBQUM7SUFDSCxRQUFRLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDckMsT0FBTyxRQUFRLENBQUM7QUFDbEIsQ0FBQztBQUVELHdEQUF3RDtBQUN4RCxNQUFNLENBQUMsS0FBSyxVQUFVLGlCQUFpQjtJQUNyQyxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDZixJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ1osUUFBUSxHQUFHLElBQUksQ0FBQztJQUNoQixJQUFJLENBQUM7UUFBRSxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztBQUN2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8qKlxuICogVGhlIGFub255bW91cyBwdWJsaWMgcGx1Z2luIGRpcmVjdG9yeSdzIGRhdGFiYXNlIGNvbm5lY3Rpb24uXG4gKlxuICogQSBzZWNvbmQsIFNNQUxMIHBvb2wgdGhhdCBsb2dzIGluIGFzIGBlY29zeXN0ZW1fcHVibGljX3JlYWRlcmAg4oCUIGEgcm9sZSB0aGF0XG4gKiBjYW4gU0VMRUNUIHRoZSBgcHVibGljXypgIHZpZXdzIGFuZCBub3RoaW5nIGVsc2UgKHBvc3RncmVzLWluaXQuc3FsKS4gSXRcbiAqIGNvbm5lY3RzIGxpa2UgZXZlcnkgb3RoZXIgY2xpZW50LCBUSFJPVUdIIHBnYm91bmNlciAoYERCX0hPU1RgIC8gYERCX1BPUlRgKSxcbiAqIHRvIHRoZSBkZWRpY2F0ZWQgYHBpcGVsaW5lX2J1aWxkZXJfcHVibGljYCBwb29sLCB3aGljaCBwZ2JvdW5jZXIgY2FwcyBhdCA1XG4gKiBzZXJ2ZXIgY29ubmVjdGlvbnMgZm9yIHRoaXMgdXNlciBhY3Jvc3MgYWxsIHBvb2xzLiBJdCBpcyBuZXZlciB0aGVcbiAqIGFwcGxpY2F0aW9uIHJvbGUgYW5kIG5ldmVyIGNhcnJpZXMgYSB0ZW5hbnQgY29udGV4dDogdGhlIHZpZXdzIGZpbHRlciB0b1xuICogcHVibGljIHJvd3MgdGhlbXNlbHZlcywgc28gdGhlcmUgaXMgbm90aGluZyB0byBzY29wZS5cbiAqXG4gKiBOb3QgY29uZmlndXJlZCAobm8gYEVDT1NZU1RFTV9QVUJMSUNfUkVBREVSX1BBU1NXT1JEYCkg4oaSIHRoZSBwdWJsaWMgZGlyZWN0b3J5XG4gKiBpcyBvZmY7IGNhbGxlcnMgY2hlY2sge0BsaW5rIGlzUHVibGljUmVhZGVyQ29uZmlndXJlZH0gYW5kIGFuc3dlciA0MDQuXG4gKi9cblxuaW1wb3J0IHsgZW52SW50IH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHsgZHJpenpsZSB9IGZyb20gJ2RyaXp6bGUtb3JtL25vZGUtcG9zdGdyZXMnO1xuaW1wb3J0IHsgUG9vbCB9IGZyb20gJ3BnJztcblxuaW1wb3J0ICogYXMgc2NoZW1hIGZyb20gJy4vZHJpenpsZS1zY2hlbWEuanMnO1xuaW1wb3J0IHsgZ2V0U3NsQ29uZmlnIH0gZnJvbSAnLi9wb3N0Z3Jlcy1jb25uZWN0aW9uLmpzJztcblxuLyoqIFRoZSByZWFkZXIgcm9sZSdzIGZpeGVkIG5hbWUgKHBvc3RncmVzLWluaXQuc3FsIGNyZWF0ZXMgZXhhY3RseSB0aGlzIHJvbGUpLiAqL1xuZXhwb3J0IGNvbnN0IFBVQkxJQ19SRUFERVJfUk9MRSA9ICdlY29zeXN0ZW1fcHVibGljX3JlYWRlcic7XG5cbmxldCBwb29sOiBQb29sIHwgbnVsbCA9IG51bGw7XG5sZXQgcmVhZGVyRGI6IFJldHVyblR5cGU8dHlwZW9mIGRyaXp6bGU8dHlwZW9mIHNjaGVtYT4+IHwgbnVsbCA9IG51bGw7XG5cbi8qKiBXaGV0aGVyIHRoZSBwdWJsaWMgcmVhZGVyIGxvZ2luIGlzIGNvbmZpZ3VyZWQgKHRoZSBkaXJlY3RvcnkgY2FuIHNlcnZlKS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1B1YmxpY1JlYWRlckNvbmZpZ3VyZWQoKTogYm9vbGVhbiB7XG4gIHJldHVybiAocHJvY2Vzcy5lbnYuRUNPU1lTVEVNX1BVQkxJQ19SRUFERVJfUEFTU1dPUkQgPz8gJycpICE9PSAnJztcbn1cblxuLyoqXG4gKiBUaGUgcmVhZGVyJ3MgRHJpenpsZSBpbnN0YW5jZSwgY3JlYXRlZCBvbiBmaXJzdCB1c2UuXG4gKlxuICogQHRocm93cyB3aGVuIHRoZSByZWFkZXIgaXNuJ3QgY29uZmlndXJlZCDigJQgY2hlY2sge0BsaW5rIGlzUHVibGljUmVhZGVyQ29uZmlndXJlZH0gZmlyc3QuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRQdWJsaWNSZWFkZXJEYigpOiBSZXR1cm5UeXBlPHR5cGVvZiBkcml6emxlPHR5cGVvZiBzY2hlbWE+PiB7XG4gIGlmIChyZWFkZXJEYikgcmV0dXJuIHJlYWRlckRiO1xuICBpZiAoIWlzUHVibGljUmVhZGVyQ29uZmlndXJlZCgpKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdFQ09TWVNURU1fUFVCTElDX1JFQURFUl9QQVNTV09SRCBpcyBub3Qgc2V0OiB0aGUgcHVibGljIHBsdWdpbiBkaXJlY3RvcnkgaXMgZGlzYWJsZWQnKTtcbiAgfVxuICBwb29sID0gbmV3IFBvb2woe1xuICAgIGhvc3Q6IHByb2Nlc3MuZW52LkRCX0hPU1QgfHwgJ3BnYm91bmNlcicsXG4gICAgcG9ydDogZW52SW50KCdEQl9QT1JUJywgNjQzMiwgeyBtaW46IDEgfSksXG4gICAgZGF0YWJhc2U6IHByb2Nlc3MuZW52LlBVQkxJQ19ESVJFQ1RPUllfREJfTkFNRSB8fCAncGlwZWxpbmVfYnVpbGRlcl9wdWJsaWMnLFxuICAgIHVzZXI6IFBVQkxJQ19SRUFERVJfUk9MRSxcbiAgICBwYXNzd29yZDogcHJvY2Vzcy5lbnYuRUNPU1lTVEVNX1BVQkxJQ19SRUFERVJfUEFTU1dPUkQsXG4gICAgLy8gQmVsb3cgcGdib3VuY2VyJ3MgcGVyLXVzZXIgY2FwICg1KSwgc28gYSByZXBsaWNhIG5ldmVyIHF1ZXVlcyBpbnNpZGUgcGdib3VuY2VyLlxuICAgIG1heDogZW52SW50KCdQVUJMSUNfRElSRUNUT1JZX1BPT0xfU0laRScsIDQsIHsgbWluOiAxIH0pLFxuICAgIGlkbGVUaW1lb3V0TWlsbGlzOiAzMF8wMDAsXG4gICAgY29ubmVjdGlvblRpbWVvdXRNaWxsaXM6IGVudkludCgnRFJJWlpMRV9DT05ORUNUSU9OX1RJTUVPVVRfTUlMTElTJywgNTAwMCwgeyBtaW46IDEgfSksXG4gICAgLy8gQ2xpZW50LXNpZGUgYm91bmQgb24gb25lIGRpcmVjdG9yeSBxdWVyeS4gcGdib3VuY2VyICh0cmFuc2FjdGlvbiBtb2RlKVxuICAgIC8vIHJlZnVzZXMgYSBgc3RhdGVtZW50X3RpbWVvdXRgIHN0YXJ0dXAgcGFyYW1ldGVyLCBzbyBpdCBjYW4ndCBiZSBzZXQgdGhlcmUuXG4gICAgcXVlcnlfdGltZW91dDogZW52SW50KCdQVUJMSUNfRElSRUNUT1JZX1FVRVJZX1RJTUVPVVRfTVMnLCA1MDAwLCB7IG1pbjogMSB9KSxcbiAgICBzc2w6IGdldFNzbENvbmZpZygpLFxuICAgIGFsbG93RXhpdE9uSWRsZTogdHJ1ZSxcbiAgfSk7XG4gIHJlYWRlckRiID0gZHJpenpsZShwb29sLCB7IHNjaGVtYSB9KTtcbiAgcmV0dXJuIHJlYWRlckRiO1xufVxuXG4vKiogQ2xvc2UgdGhlIHJlYWRlciBwb29sIChncmFjZWZ1bCBzaHV0ZG93bjsgdGVzdHMpLiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNsb3NlUHVibGljUmVhZGVyKCk6IFByb21pc2U8dm9pZD4ge1xuICBjb25zdCBwID0gcG9vbDtcbiAgcG9vbCA9IG51bGw7XG4gIHJlYWRlckRiID0gbnVsbDtcbiAgaWYgKHApIGF3YWl0IHAuZW5kKCk7XG59XG4iXX0=
|
|
@@ -119,4 +119,4 @@ export function resetReadConnectionForTests() {
|
|
|
119
119
|
readDb = null;
|
|
120
120
|
warned = false;
|
|
121
121
|
}
|
|
122
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jb25uZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGFiYXNlL3JlYWQtY29ubmVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F3Qkc7QUFFSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDcEQsT0FBTyxFQUFFLElBQUksRUFBbUIsTUFBTSxJQUFJLENBQUM7QUFFM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUV4RCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFN0MsSUFBSSxJQUFJLEdBQWdCLElBQUksQ0FBQztBQUM3QixJQUFJLE1BQU0sR0FBc0MsSUFBSSxDQUFDO0FBQ3JELHNFQUFzRTtBQUN0RSxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7QUFFbkI7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsV0FBVztJQUN6QixJQUFJLENBQUMsdUJBQXVCLEVBQUU7UUFBRSxPQUFPLElBQUksQ0FBQztJQUM1QyxJQUFJLElBQUk7UUFBRSxPQUFPLElBQUksQ0FBQztJQUV0QixNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hDLE1BQU0sTUFBTSxHQUFlO1FBQ3pCLElBQUk7UUFDSixJQUFJLEVBQUUsTUFBTSxDQUFDLGNBQWMsRUFBRSxNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3JELDRFQUE0RTtRQUM1RSx3RUFBd0U7UUFDeEUseUVBQXlFO1FBQ3pFLDZEQUE2RDtRQUM3RCxFQUFFO1FBQ0Ysb0VBQW9FO1FBQ3BFLDBFQUEwRTtRQUMxRSwyRUFBMkU7UUFDM0UseUVBQXlFO1FBQ3pFLHVFQUF1RTtRQUN2RSw0QkFBNEI7UUFDNUIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSx1QkFBdUIsQ0FBQztRQUM3RCwwRUFBMEU7UUFDMUUsMkVBQTJFO1FBQzNFLHlFQUF5RTtRQUN6RSx1REFBdUQ7UUFDdkQsSUFBSSxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsVUFBVSxDQUFDO1FBQ25DLFFBQVEsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsSUFBSSxFQUFFO1FBQ3ZDLDRFQUE0RTtRQUM1RSx3RUFBd0U7UUFDeEUscURBQXFEO1FBQ3JELEdBQUcsRUFBRSxNQUFNLENBQUMsdUJBQXVCLEVBQUUsRUFBRSxDQUFDO1FBQ3hDLGlCQUFpQixFQUFFLE1BQU0sQ0FBQyw2QkFBNkIsRUFBRSxNQUFNLENBQUM7UUFDaEUsdUJBQXVCLEVBQUUsTUFBTSxDQUFDLG1DQUFtQyxFQUFFLElBQUksQ0FBQztRQUMxRSxHQUFHLEVBQUUsWUFBWSxFQUFFO1FBQ25CLGVBQWUsRUFBRSxJQUFJO0tBQ3RCLENBQUM7SUFFRixJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN2QiwyRUFBMkU7UUFDM0UscUVBQXFFO1FBQ3JFLE1BQU0sQ0FBQyxLQUFLLENBQUMsMERBQTBELEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDaEYsQ0FBQyxDQUFDLENBQUM7SUFDSCxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFFbkMsTUFBTSxDQUFDLElBQUksQ0FBQyxxQ0FBcUMsRUFBRSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDOUUsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsNkVBQTZFO0FBQzdFLE1BQU0sVUFBVSxTQUFTO0lBQ3ZCLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFLENBQUM7WUFDNUQsTUFBTSxHQUFHLElBQUksQ0FBQztZQUNkLE1BQU0sQ0FBQyxJQUFJLENBQUMsd0ZBQXdGLENBQUMsQ0FBQztRQUN4RyxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLG1CQUFtQjtJQUN2QyxJQUFJLENBQUMsSUFBSTtRQUFFLE9BQU87SUFDbEIsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDO0lBQ2YsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNaLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDZCxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ2YsTUFBTSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7QUFDaEQsQ0FBQztBQUVELDhEQUE4RDtBQUM5RCxNQUFNLFVBQVUsMkJBQTJCO0lBQ3pDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDWixNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ2QsTUFBTSxHQUFHLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8qKlxuICogVGhlIHJlYWQtcmVwbGljYSBjb25uZWN0aW9uIOKAlCBhIHNlY29uZCBwb29sIHBvaW50ZWQgYXQgYSBzdHJlYW1pbmcgc3RhbmRieS5cbiAqXG4gKiBTaGFwZWQgYWZ0ZXIge0BsaW5rIC4vcHVibGljLXJlYWRlci50c306IGEgc2VwYXJhdGUsIHNtYWxsZXIgcG9vbCB0aGF0XG4gKiBjb25uZWN0cyBsaWtlIGV2ZXJ5IG90aGVyIGNsaWVudCAodGhyb3VnaCBwZ2JvdW5jZXIpLCByYXRoZXIgdGhhbiBhIHNlY29uZFxuICogdGFyZ2V0IGJvbHRlZCBvbnRvIHRoZSBwcmltYXJ5IHBvb2wuIEFzIHdpdGggdGhlIHB1YmxpYyByZWFkZXIsIHdoYXQgc2VsZWN0c1xuICogdGhlIGJhY2tlbmQgaXMgdGhlIHBnYm91bmNlciBEQVRBQkFTRSBuYW1lIOKAlCBgcGlwZWxpbmVfYnVpbGRlcl9yZWFkYCwgd2hvc2VcbiAqIGBbZGF0YWJhc2VzXWAgZW50cnkgcG9pbnRzIGF0IHRoZSBgcG9zdGdyZXMtcmVhZGAgU2VydmljZSDigJQgbm90IHRoZSBob3N0LlxuICogYERCX1JFQURfSE9TVGAgaXMgcGdib3VuY2VyIG9uIGV2ZXJ5IHRhcmdldCwgZXhhY3RseSBsaWtlIGBEQl9IT1NUYC4gSXQgY2FycmllcyB0aGUgU0FNRSBhcHBsaWNhdGlvbiByb2xlIGFuZFxuICogdGhlIFNBTUUgUkxTIHBvbGljaWVzIOKAlCBhIHBoeXNpY2FsIHN0YW5kYnkgcmVwbGljYXRlcyBgcGdfYXV0aGlkYCBhbmQgZXZlcnlcbiAqIHBvbGljeSDigJQgc28gYHdpdGhUZW5hbnRUeFJlYWRgIHNldHMgdGhlIGlkZW50aWNhbCBHVUNzIGhlcmUgdGhhdFxuICogYHdpdGhUZW5hbnRUeGAgc2V0cyBvbiB0aGUgcHJpbWFyeS5cbiAqXG4gKiBOT1QgQ09ORklHVVJFRCBJUyBUSEUgTk9STUFMIFNUQVRFIFVOVElMIEEgUkVQTElDQSBFWElTVFMuIFdpdGggYERCX1JFQURfSE9TVGBcbiAqIHVuc2V0LCB7QGxpbmsgZ2V0UmVhZFBvb2x9IHJldHVybnMgbnVsbCBhbmQgZXZlcnkgY2FsbGVyIGZhbGxzIGJhY2sgdG8gdGhlXG4gKiBwcmltYXJ5LiBUaGF0IGlzIHdoYXQgbGV0cyB0aGlzIG1vZHVsZSBzaGlwIGJlZm9yZSBhbnkgaW5mcmFzdHJ1Y3R1cmUgZG9lcyxcbiAqIGFuZCBpdCBpcyBhbHNvIHRoZSBkZWdyYWRlZCBwYXRoIHRoZSBraWxsIHN3aXRjaCBhbmQgKGxhdGVyKSB0aGUgbGFnIGNpcmN1aXRcbiAqIGZhbGwgYmFjayB0byDigJQgc28gaXQgaGFzIHRvIGtlZXAgd29ya2luZyBhbmQgYmUgdGVzdGVkIGRlbGliZXJhdGVseSwgbm90IG9ubHlcbiAqIGV4ZXJjaXNlZCBieSBhY2NpZGVudCBvbiBhIGxhcHRvcC5cbiAqXG4gKiBXSFkgQSBTRVBBUkFURSBNT0RVTEUgcmF0aGVyIHRoYW4gYSBmbGFnIG9uIGBDb25uZWN0aW9uYDogYSBnbG9iYWwgd2hvc2VcbiAqIHRhcmdldCBjYW4gY2hhbmdlIGlzIGhvdyBhIHdyaXRlIHJlYWNoZXMgYSBzdGFuZGJ5LiBgQ29ubmVjdGlvbmAgc3RheXMgdGhlXG4gKiBwcmltYXJ5LCB1bmNvbmRpdGlvbmFsbHksIGFuZCBjYWxsZXJzIHRoYXQgd2FudCBhIHJlcGxpY2EgaGF2ZSB0byBhc2sgZm9yIG9uZVxuICogYnkgbmFtZS5cbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVMb2dnZXIsIGVudkludCwgZW52U3RyLCBpc1JlYWRSZXBsaWNhQ29uZmlndXJlZCB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB7IGRyaXp6bGUgfSBmcm9tICdkcml6emxlLW9ybS9ub2RlLXBvc3RncmVzJztcbmltcG9ydCB7IFBvb2wsIHR5cGUgUG9vbENvbmZpZyB9IGZyb20gJ3BnJztcblxuaW1wb3J0IHsgc2NoZW1hIH0gZnJvbSAnLi9kcml6emxlLXNjaGVtYS5qcyc7XG5pbXBvcnQgeyBnZXRTc2xDb25maWcgfSBmcm9tICcuL3Bvc3RncmVzLWNvbm5lY3Rpb24uanMnO1xuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ2RhdGFiYXNlLXJlYWQnKTtcblxubGV0IHBvb2w6IFBvb2wgfCBudWxsID0gbnVsbDtcbmxldCByZWFkRGI6IFJldHVyblR5cGU8dHlwZW9mIGRyaXp6bGU+IHwgbnVsbCA9IG51bGw7XG4vKiogU2V0IG9uY2Ugc28gYSBtaXNjb25maWd1cmVkIGRlcGxveSBkb2VzIG5vdCBsb2cgb24gZXZlcnkgcXVlcnkuICovXG5sZXQgd2FybmVkID0gZmFsc2U7XG5cbi8qKlxuICogVGhlIHJlcGxpY2EgcG9vbCwgb3IgbnVsbCB3aGVuIG5vIHJlcGxpY2EgaXMgY29uZmlndXJlZC5cbiAqXG4gKiBMYXppbHkgY3JlYXRlZCBzbyBpbXBvcnRpbmcgdGhpcyBtb2R1bGUgY29zdHMgbm90aGluZyBvbiBhIGRlcGxveSB0aGF0IGhhcyBub1xuICogcmVwbGljYSDigJQgd2hpY2gsIHVudGlsIFBoYXNlIDEgbGFuZHMsIGlzIGFsbCBvZiB0aGVtLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVhZFBvb2woKTogUG9vbCB8IG51bGwge1xuICBpZiAoIWlzUmVhZFJlcGxpY2FDb25maWd1cmVkKCkpIHJldHVybiBudWxsO1xuICBpZiAocG9vbCkgcmV0dXJuIHBvb2w7XG5cbiAgY29uc3QgaG9zdCA9IGVudlN0cignREJfUkVBRF9IT1NUJywgJycpO1xuICBjb25zdCBjb25maWc6IFBvb2xDb25maWcgPSB7XG4gICAgaG9zdCxcbiAgICBwb3J0OiBlbnZJbnQoJ0RCX1JFQURfUE9SVCcsIGVudkludCgnREJfUE9SVCcsIDU0MzIpKSxcbiAgICAvLyBBIERJRkZFUkVOVCBwZ2JvdW5jZXIgZGF0YWJhc2UgdGhhbiB0aGUgd3JpdGUgcGF0aCwgYW5kIHRoYXQgaXMgdGhlIHdob2xlXG4gICAgLy8gcG9pbnQ6IHJlYWRzIGdvIHRvIGBwaXBlbGluZV9idWlsZGVyX3JlYWRgLCB3aG9zZSBgW2RhdGFiYXNlc11gIGVudHJ5XG4gICAgLy8gbmFtZXMgYGhvc3Q9cG9zdGdyZXMtcmVhZGAg4oCUIHRoZSBTZXJ2aWNlIGluIGZyb250IG9mIHRoZSBzdGFuZGJ5cy4gVGhlXG4gICAgLy8gcHJpbWFyeSdzIHBvb2wgKGBwaXBlbGluZV9idWlsZGVyYCkgbmFtZXMgYGhvc3Q9cG9zdGdyZXNgLlxuICAgIC8vXG4gICAgLy8gU28gdGhlIHRoaW5nIHRoYXQgZGVjaWRlcyB3aGV0aGVyIGEgcmVhZCByZWFjaGVzIGEgcmVwbGljYSBpcyB0aGVcbiAgICAvLyBEQVRBQkFTRSBOQU1FLCBub3QgdGhlIGhvc3Q6IERCX1JFQURfSE9TVCBpcyBwZ2JvdW5jZXIgb24gZXZlcnkgdGFyZ2V0LFxuICAgIC8vIHRoZSBzYW1lIHBvb2xlciB0aGUgd3JpdGUgcGF0aCB1c2VzLiBEZWZhdWx0aW5nIHRoaXMgdG8gYERBVEFCQVNFYCB3b3VsZFxuICAgIC8vIHNlbmQgZXZlcnkgXCJyZWFkXCIgc3RyYWlnaHQgYmFjayB0byB0aGUgcHJpbWFyeSdzIHBvb2wgdGhyb3VnaCBhIHNlY29uZFxuICAgIC8vIGNvbm5lY3Rpb24gcG9vbCDigJQgYWxsIG9mIHRoZSBjb21wbGV4aXR5LCBub25lIG9mIHRoZSBvZmZsb2FkLCBhbmQgbm9cbiAgICAvLyBlcnJvciBhbnl3aGVyZSB0byBzYXkgc28uXG4gICAgZGF0YWJhc2U6IGVudlN0cignREJfUkVBRF9EQVRBQkFTRScsICdwaXBlbGluZV9idWlsZGVyX3JlYWQnKSxcbiAgICAvLyBUaGUgU0FNRSBhcHBsaWNhdGlvbiByb2xlIGFzIHRoZSBwcmltYXJ5LiBBIHN0YW5kYnkgcmVwbGljYXRlcyB0aGUgcm9sZVxuICAgIC8vIGNhdGFsb2csIHNvIGEgc2Vjb25kIGNyZWRlbnRpYWwgd291bGQgYmUgYSBzZWNvbmQgdGhpbmcgdG8gcm90YXRlIGZvciBub1xuICAgIC8vIGJlbmVmaXQg4oCUIGFuZCBhIHJvbGUgdGhhdCBleGlzdGVkIG9ubHkgb24gdGhlIHJlcGxpY2Egd291bGQgdmFuaXNoIHRoZVxuICAgIC8vIG1vbWVudCB0aGUgc3RhbmRieSB3YXMgcmUtc2VlZGVkIGZyb20gYSBiYXNlIGJhY2t1cC5cbiAgICB1c2VyOiBlbnZTdHIoJ0RCX1VTRVInLCAncG9zdGdyZXMnKSxcbiAgICBwYXNzd29yZDogcHJvY2Vzcy5lbnYuREJfUEFTU1dPUkQgPz8gJycsXG4gICAgLy8gRGVsaWJlcmF0ZWx5IHNtYWxsZXIgdGhhbiB0aGUgcHJpbWFyeSdzLiBSZWFkIHRyYWZmaWMgbXVzdCBub3QgYmUgYWJsZSB0b1xuICAgIC8vIGV4aGF1c3QgY29ubmVjdGlvbnMgdGhlIHdyaXRlIHBhdGggbmVlZHMsIGFuZCB0aGUgcmVwbGljYSBoYXMgaXRzIG93blxuICAgIC8vIG1heF9jb25uZWN0aW9ucyBidWRnZXQgd2hpY2ggaXMgTk9UIHRoZSBwcmltYXJ5J3MuXG4gICAgbWF4OiBlbnZJbnQoJ0RCX1JFQURfTUFYX1BPT0xfU0laRScsIDEwKSxcbiAgICBpZGxlVGltZW91dE1pbGxpczogZW52SW50KCdEUklaWkxFX0lETEVfVElNRU9VVF9NSUxMSVMnLCAzMF8wMDApLFxuICAgIGNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzOiBlbnZJbnQoJ0RSSVpaTEVfQ09OTkVDVElPTl9USU1FT1VUX01JTExJUycsIDUwMDApLFxuICAgIHNzbDogZ2V0U3NsQ29uZmlnKCksXG4gICAgYWxsb3dFeGl0T25JZGxlOiB0cnVlLFxuICB9O1xuXG4gIHBvb2wgPSBuZXcgUG9vbChjb25maWcpO1xuICBwb29sLm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICAvLyBOZXZlciB0aHJvdyBmcm9tIGhlcmU6IGFuIGlkbGUtY2xpZW50IGVycm9yIG9uIHRoZSBSRVBMSUNBIG11c3Qgbm90IHRha2VcbiAgICAvLyB0aGUgcHJvY2VzcyBkb3duLCBiZWNhdXNlIGV2ZXJ5IHJlYWQgY2FuIGJlIHNlcnZlZCBieSB0aGUgcHJpbWFyeS5cbiAgICBsb2dnZXIuZXJyb3IoJ1JlYWQtcmVwbGljYSBwb29sIGVycm9yIChyZWFkcyBmYWxsIGJhY2sgdG8gdGhlIHByaW1hcnkpJywgZXJyKTtcbiAgfSk7XG4gIHJlYWREYiA9IGRyaXp6bGUocG9vbCwgeyBzY2hlbWEgfSk7XG5cbiAgbG9nZ2VyLmluZm8oJ1JlYWQtcmVwbGljYSBjb25uZWN0aW9uIGluaXRpYWxpemVkJywgeyBob3N0LCBtYXg6IGNvbmZpZy5tYXggfSk7XG4gIHJldHVybiBwb29sO1xufVxuXG4vKiogVGhlIHJlcGxpY2EncyBkcml6emxlIGluc3RhbmNlLCBvciBudWxsIHdoZW4gbm8gcmVwbGljYSBpcyBjb25maWd1cmVkLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFJlYWREYigpOiBSZXR1cm5UeXBlPHR5cGVvZiBkcml6emxlPiB8IG51bGwge1xuICBpZiAoIWdldFJlYWRQb29sKCkpIHtcbiAgICBpZiAoIXdhcm5lZCAmJiBlbnZTdHIoJ0RCX1JFQURfSE9TVCcsICcnKS50cmltKCkubGVuZ3RoID4gMCkge1xuICAgICAgd2FybmVkID0gdHJ1ZTtcbiAgICAgIGxvZ2dlci5pbmZvKCdSZWFkIHJlcGxpY2EgaXMgY29uZmlndXJlZCBidXQgZGlzYWJsZWQgKERCX1JFQURfRU5BQkxFRD1mYWxzZSk7IHJlYWRzIHVzZSB0aGUgcHJpbWFyeScpO1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICByZXR1cm4gcmVhZERiO1xufVxuXG4vKipcbiAqIENsb3NlIHRoZSByZXBsaWNhIHBvb2wuIENhbGxlZCBmcm9tIGBjbG9zZUNvbm5lY3Rpb24oKWAgc28gYSBzaHV0ZG93biBjbG9zZXNcbiAqIEJPVEggcG9vbHMg4oCUIGEgaGFsZi1jbG9zZWQgcHJvY2VzcyBob2xkcyBzZXJ2ZXIgY29ubmVjdGlvbnMgb3BlbiBvbiB0aGVcbiAqIHN0YW5kYnkgYW5kIGtlZXBzIGl0cyByZXBsaWNhdGlvbiBzbG90IGJ1c3kuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjbG9zZVJlYWRDb25uZWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoIXBvb2wpIHJldHVybjtcbiAgY29uc3QgcCA9IHBvb2w7XG4gIHBvb2wgPSBudWxsO1xuICByZWFkRGIgPSBudWxsO1xuICB3YXJuZWQgPSBmYWxzZTtcbiAgYXdhaXQgcC5lbmQoKTtcbiAgbG9nZ2VyLmluZm8oJ1JlYWQtcmVwbGljYSBjb25uZWN0aW9uIGNsb3NlZCcpO1xufVxuXG4vKiogVGVzdCBzZWFtOiBmb3JnZXQgdGhlIG1lbW9pemVkIHBvb2wgd2l0aG91dCBjbG9zaW5nIGl0LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0UmVhZENvbm5lY3Rpb25Gb3JUZXN0cygpOiB2b2lkIHtcbiAgcG9vbCA9IG51bGw7XG4gIHJlYWREYiA9IG51bGw7XG4gIHdhcm5lZCA9IGZhbHNlO1xufVxuIl19
|
|
122
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1jb25uZWN0aW9uLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvcmVhZC1jb25uZWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXdCRztBQUVILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ25HLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsSUFBSSxFQUFtQixNQUFNLElBQUksQ0FBQztBQUUzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXhELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUU3QyxJQUFJLElBQUksR0FBZ0IsSUFBSSxDQUFDO0FBQzdCLElBQUksTUFBTSxHQUFzQyxJQUFJLENBQUM7QUFDckQsc0VBQXNFO0FBQ3RFLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQztBQUVuQjs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSxXQUFXO0lBQ3pCLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBQzVDLElBQUksSUFBSTtRQUFFLE9BQU8sSUFBSSxDQUFDO0lBRXRCLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDeEMsTUFBTSxNQUFNLEdBQWU7UUFDekIsSUFBSTtRQUNKLElBQUksRUFBRSxNQUFNLENBQUMsY0FBYyxFQUFFLE1BQU0sQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDckQsNEVBQTRFO1FBQzVFLHdFQUF3RTtRQUN4RSx5RUFBeUU7UUFDekUsNkRBQTZEO1FBQzdELEVBQUU7UUFDRixvRUFBb0U7UUFDcEUsMEVBQTBFO1FBQzFFLDJFQUEyRTtRQUMzRSx5RUFBeUU7UUFDekUsdUVBQXVFO1FBQ3ZFLDRCQUE0QjtRQUM1QixRQUFRLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixFQUFFLHVCQUF1QixDQUFDO1FBQzdELDBFQUEwRTtRQUMxRSwyRUFBMkU7UUFDM0UseUVBQXlFO1FBQ3pFLHVEQUF1RDtRQUN2RCxJQUFJLEVBQUUsTUFBTSxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUM7UUFDbkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxJQUFJLEVBQUU7UUFDdkMsNEVBQTRFO1FBQzVFLHdFQUF3RTtRQUN4RSxxREFBcUQ7UUFDckQsR0FBRyxFQUFFLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxFQUFFLENBQUM7UUFDeEMsaUJBQWlCLEVBQUUsTUFBTSxDQUFDLDZCQUE2QixFQUFFLE1BQU0sQ0FBQztRQUNoRSx1QkFBdUIsRUFBRSxNQUFNLENBQUMsbUNBQW1DLEVBQUUsSUFBSSxDQUFDO1FBQzFFLEdBQUcsRUFBRSxZQUFZLEVBQUU7UUFDbkIsZUFBZSxFQUFFLElBQUk7S0FDdEIsQ0FBQztJQUVGLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QixJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ3ZCLDJFQUEyRTtRQUMzRSxxRUFBcUU7UUFDckUsTUFBTSxDQUFDLEtBQUssQ0FBQywwREFBMEQsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNoRixDQUFDLENBQUMsQ0FBQztJQUNILE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUVuQyxNQUFNLENBQUMsSUFBSSxDQUFDLHFDQUFxQyxFQUFFLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztJQUM5RSxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRCw2RUFBNkU7QUFDN0UsTUFBTSxVQUFVLFNBQVM7SUFDdkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7UUFDbkIsSUFBSSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM1RCxNQUFNLEdBQUcsSUFBSSxDQUFDO1lBQ2QsTUFBTSxDQUFDLElBQUksQ0FBQyx3RkFBd0YsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsbUJBQW1CO0lBQ3ZDLElBQUksQ0FBQyxJQUFJO1FBQUUsT0FBTztJQUNsQixNQUFNLENBQUMsR0FBRyxJQUFJLENBQUM7SUFDZixJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ1osTUFBTSxHQUFHLElBQUksQ0FBQztJQUNkLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDZixNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztJQUNkLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztBQUNoRCxDQUFDO0FBRUQsOERBQThEO0FBQzlELE1BQU0sVUFBVSwyQkFBMkI7SUFDekMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNaLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDZCxNQUFNLEdBQUcsS0FBSyxDQUFDO0FBQ2pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuLyoqXG4gKiBUaGUgcmVhZC1yZXBsaWNhIGNvbm5lY3Rpb24g4oCUIGEgc2Vjb25kIHBvb2wgcG9pbnRlZCBhdCBhIHN0cmVhbWluZyBzdGFuZGJ5LlxuICpcbiAqIFNoYXBlZCBhZnRlciB7QGxpbmsgLi9wdWJsaWMtcmVhZGVyLnRzfTogYSBzZXBhcmF0ZSwgc21hbGxlciBwb29sIHRoYXRcbiAqIGNvbm5lY3RzIGxpa2UgZXZlcnkgb3RoZXIgY2xpZW50ICh0aHJvdWdoIHBnYm91bmNlciksIHJhdGhlciB0aGFuIGEgc2Vjb25kXG4gKiB0YXJnZXQgYm9sdGVkIG9udG8gdGhlIHByaW1hcnkgcG9vbC4gQXMgd2l0aCB0aGUgcHVibGljIHJlYWRlciwgd2hhdCBzZWxlY3RzXG4gKiB0aGUgYmFja2VuZCBpcyB0aGUgcGdib3VuY2VyIERBVEFCQVNFIG5hbWUg4oCUIGBwaXBlbGluZV9idWlsZGVyX3JlYWRgLCB3aG9zZVxuICogYFtkYXRhYmFzZXNdYCBlbnRyeSBwb2ludHMgYXQgdGhlIGBwb3N0Z3Jlcy1yZWFkYCBTZXJ2aWNlIOKAlCBub3QgdGhlIGhvc3QuXG4gKiBgREJfUkVBRF9IT1NUYCBpcyBwZ2JvdW5jZXIgb24gZXZlcnkgdGFyZ2V0LCBleGFjdGx5IGxpa2UgYERCX0hPU1RgLiBJdCBjYXJyaWVzIHRoZSBTQU1FIGFwcGxpY2F0aW9uIHJvbGUgYW5kXG4gKiB0aGUgU0FNRSBSTFMgcG9saWNpZXMg4oCUIGEgcGh5c2ljYWwgc3RhbmRieSByZXBsaWNhdGVzIGBwZ19hdXRoaWRgIGFuZCBldmVyeVxuICogcG9saWN5IOKAlCBzbyBgd2l0aFRlbmFudFR4UmVhZGAgc2V0cyB0aGUgaWRlbnRpY2FsIEdVQ3MgaGVyZSB0aGF0XG4gKiBgd2l0aFRlbmFudFR4YCBzZXRzIG9uIHRoZSBwcmltYXJ5LlxuICpcbiAqIE5PVCBDT05GSUdVUkVEIElTIFRIRSBOT1JNQUwgU1RBVEUgVU5USUwgQSBSRVBMSUNBIEVYSVNUUy4gV2l0aCBgREJfUkVBRF9IT1NUYFxuICogdW5zZXQsIHtAbGluayBnZXRSZWFkUG9vbH0gcmV0dXJucyBudWxsIGFuZCBldmVyeSBjYWxsZXIgZmFsbHMgYmFjayB0byB0aGVcbiAqIHByaW1hcnkuIFRoYXQgaXMgd2hhdCBsZXRzIHRoaXMgbW9kdWxlIHNoaXAgYmVmb3JlIGFueSBpbmZyYXN0cnVjdHVyZSBkb2VzLFxuICogYW5kIGl0IGlzIGFsc28gdGhlIGRlZ3JhZGVkIHBhdGggdGhlIGtpbGwgc3dpdGNoIGFuZCAobGF0ZXIpIHRoZSBsYWcgY2lyY3VpdFxuICogZmFsbCBiYWNrIHRvIOKAlCBzbyBpdCBoYXMgdG8ga2VlcCB3b3JraW5nIGFuZCBiZSB0ZXN0ZWQgZGVsaWJlcmF0ZWx5LCBub3Qgb25seVxuICogZXhlcmNpc2VkIGJ5IGFjY2lkZW50IG9uIGEgbGFwdG9wLlxuICpcbiAqIFdIWSBBIFNFUEFSQVRFIE1PRFVMRSByYXRoZXIgdGhhbiBhIGZsYWcgb24gYENvbm5lY3Rpb25gOiBhIGdsb2JhbCB3aG9zZVxuICogdGFyZ2V0IGNhbiBjaGFuZ2UgaXMgaG93IGEgd3JpdGUgcmVhY2hlcyBhIHN0YW5kYnkuIGBDb25uZWN0aW9uYCBzdGF5cyB0aGVcbiAqIHByaW1hcnksIHVuY29uZGl0aW9uYWxseSwgYW5kIGNhbGxlcnMgdGhhdCB3YW50IGEgcmVwbGljYSBoYXZlIHRvIGFzayBmb3Igb25lXG4gKiBieSBuYW1lLlxuICovXG5cbmltcG9ydCB7IGNyZWF0ZUxvZ2dlciwgZW52SW50LCBlbnZTdHIsIGlzUmVhZFJlcGxpY2FDb25maWd1cmVkIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHsgZHJpenpsZSB9IGZyb20gJ2RyaXp6bGUtb3JtL25vZGUtcG9zdGdyZXMnO1xuaW1wb3J0IHsgUG9vbCwgdHlwZSBQb29sQ29uZmlnIH0gZnJvbSAncGcnO1xuXG5pbXBvcnQgeyBzY2hlbWEgfSBmcm9tICcuL2RyaXp6bGUtc2NoZW1hLmpzJztcbmltcG9ydCB7IGdldFNzbENvbmZpZyB9IGZyb20gJy4vcG9zdGdyZXMtY29ubmVjdGlvbi5qcyc7XG5cbmNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcignZGF0YWJhc2UtcmVhZCcpO1xuXG5sZXQgcG9vbDogUG9vbCB8IG51bGwgPSBudWxsO1xubGV0IHJlYWREYjogUmV0dXJuVHlwZTx0eXBlb2YgZHJpenpsZT4gfCBudWxsID0gbnVsbDtcbi8qKiBTZXQgb25jZSBzbyBhIG1pc2NvbmZpZ3VyZWQgZGVwbG95IGRvZXMgbm90IGxvZyBvbiBldmVyeSBxdWVyeS4gKi9cbmxldCB3YXJuZWQgPSBmYWxzZTtcblxuLyoqXG4gKiBUaGUgcmVwbGljYSBwb29sLCBvciBudWxsIHdoZW4gbm8gcmVwbGljYSBpcyBjb25maWd1cmVkLlxuICpcbiAqIExhemlseSBjcmVhdGVkIHNvIGltcG9ydGluZyB0aGlzIG1vZHVsZSBjb3N0cyBub3RoaW5nIG9uIGEgZGVwbG95IHRoYXQgaGFzIG5vXG4gKiByZXBsaWNhIOKAlCB3aGljaCwgdW50aWwgUGhhc2UgMSBsYW5kcywgaXMgYWxsIG9mIHRoZW0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRSZWFkUG9vbCgpOiBQb29sIHwgbnVsbCB7XG4gIGlmICghaXNSZWFkUmVwbGljYUNvbmZpZ3VyZWQoKSkgcmV0dXJuIG51bGw7XG4gIGlmIChwb29sKSByZXR1cm4gcG9vbDtcblxuICBjb25zdCBob3N0ID0gZW52U3RyKCdEQl9SRUFEX0hPU1QnLCAnJyk7XG4gIGNvbnN0IGNvbmZpZzogUG9vbENvbmZpZyA9IHtcbiAgICBob3N0LFxuICAgIHBvcnQ6IGVudkludCgnREJfUkVBRF9QT1JUJywgZW52SW50KCdEQl9QT1JUJywgNTQzMikpLFxuICAgIC8vIEEgRElGRkVSRU5UIHBnYm91bmNlciBkYXRhYmFzZSB0aGFuIHRoZSB3cml0ZSBwYXRoLCBhbmQgdGhhdCBpcyB0aGUgd2hvbGVcbiAgICAvLyBwb2ludDogcmVhZHMgZ28gdG8gYHBpcGVsaW5lX2J1aWxkZXJfcmVhZGAsIHdob3NlIGBbZGF0YWJhc2VzXWAgZW50cnlcbiAgICAvLyBuYW1lcyBgaG9zdD1wb3N0Z3Jlcy1yZWFkYCDigJQgdGhlIFNlcnZpY2UgaW4gZnJvbnQgb2YgdGhlIHN0YW5kYnlzLiBUaGVcbiAgICAvLyBwcmltYXJ5J3MgcG9vbCAoYHBpcGVsaW5lX2J1aWxkZXJgKSBuYW1lcyBgaG9zdD1wb3N0Z3Jlc2AuXG4gICAgLy9cbiAgICAvLyBTbyB0aGUgdGhpbmcgdGhhdCBkZWNpZGVzIHdoZXRoZXIgYSByZWFkIHJlYWNoZXMgYSByZXBsaWNhIGlzIHRoZVxuICAgIC8vIERBVEFCQVNFIE5BTUUsIG5vdCB0aGUgaG9zdDogREJfUkVBRF9IT1NUIGlzIHBnYm91bmNlciBvbiBldmVyeSB0YXJnZXQsXG4gICAgLy8gdGhlIHNhbWUgcG9vbGVyIHRoZSB3cml0ZSBwYXRoIHVzZXMuIERlZmF1bHRpbmcgdGhpcyB0byBgREFUQUJBU0VgIHdvdWxkXG4gICAgLy8gc2VuZCBldmVyeSBcInJlYWRcIiBzdHJhaWdodCBiYWNrIHRvIHRoZSBwcmltYXJ5J3MgcG9vbCB0aHJvdWdoIGEgc2Vjb25kXG4gICAgLy8gY29ubmVjdGlvbiBwb29sIOKAlCBhbGwgb2YgdGhlIGNvbXBsZXhpdHksIG5vbmUgb2YgdGhlIG9mZmxvYWQsIGFuZCBub1xuICAgIC8vIGVycm9yIGFueXdoZXJlIHRvIHNheSBzby5cbiAgICBkYXRhYmFzZTogZW52U3RyKCdEQl9SRUFEX0RBVEFCQVNFJywgJ3BpcGVsaW5lX2J1aWxkZXJfcmVhZCcpLFxuICAgIC8vIFRoZSBTQU1FIGFwcGxpY2F0aW9uIHJvbGUgYXMgdGhlIHByaW1hcnkuIEEgc3RhbmRieSByZXBsaWNhdGVzIHRoZSByb2xlXG4gICAgLy8gY2F0YWxvZywgc28gYSBzZWNvbmQgY3JlZGVudGlhbCB3b3VsZCBiZSBhIHNlY29uZCB0aGluZyB0byByb3RhdGUgZm9yIG5vXG4gICAgLy8gYmVuZWZpdCDigJQgYW5kIGEgcm9sZSB0aGF0IGV4aXN0ZWQgb25seSBvbiB0aGUgcmVwbGljYSB3b3VsZCB2YW5pc2ggdGhlXG4gICAgLy8gbW9tZW50IHRoZSBzdGFuZGJ5IHdhcyByZS1zZWVkZWQgZnJvbSBhIGJhc2UgYmFja3VwLlxuICAgIHVzZXI6IGVudlN0cignREJfVVNFUicsICdwb3N0Z3JlcycpLFxuICAgIHBhc3N3b3JkOiBwcm9jZXNzLmVudi5EQl9QQVNTV09SRCA/PyAnJyxcbiAgICAvLyBEZWxpYmVyYXRlbHkgc21hbGxlciB0aGFuIHRoZSBwcmltYXJ5J3MuIFJlYWQgdHJhZmZpYyBtdXN0IG5vdCBiZSBhYmxlIHRvXG4gICAgLy8gZXhoYXVzdCBjb25uZWN0aW9ucyB0aGUgd3JpdGUgcGF0aCBuZWVkcywgYW5kIHRoZSByZXBsaWNhIGhhcyBpdHMgb3duXG4gICAgLy8gbWF4X2Nvbm5lY3Rpb25zIGJ1ZGdldCB3aGljaCBpcyBOT1QgdGhlIHByaW1hcnkncy5cbiAgICBtYXg6IGVudkludCgnREJfUkVBRF9NQVhfUE9PTF9TSVpFJywgMTApLFxuICAgIGlkbGVUaW1lb3V0TWlsbGlzOiBlbnZJbnQoJ0RSSVpaTEVfSURMRV9USU1FT1VUX01JTExJUycsIDMwXzAwMCksXG4gICAgY29ubmVjdGlvblRpbWVvdXRNaWxsaXM6IGVudkludCgnRFJJWlpMRV9DT05ORUNUSU9OX1RJTUVPVVRfTUlMTElTJywgNTAwMCksXG4gICAgc3NsOiBnZXRTc2xDb25maWcoKSxcbiAgICBhbGxvd0V4aXRPbklkbGU6IHRydWUsXG4gIH07XG5cbiAgcG9vbCA9IG5ldyBQb29sKGNvbmZpZyk7XG4gIHBvb2wub24oJ2Vycm9yJywgKGVycikgPT4ge1xuICAgIC8vIE5ldmVyIHRocm93IGZyb20gaGVyZTogYW4gaWRsZS1jbGllbnQgZXJyb3Igb24gdGhlIFJFUExJQ0EgbXVzdCBub3QgdGFrZVxuICAgIC8vIHRoZSBwcm9jZXNzIGRvd24sIGJlY2F1c2UgZXZlcnkgcmVhZCBjYW4gYmUgc2VydmVkIGJ5IHRoZSBwcmltYXJ5LlxuICAgIGxvZ2dlci5lcnJvcignUmVhZC1yZXBsaWNhIHBvb2wgZXJyb3IgKHJlYWRzIGZhbGwgYmFjayB0byB0aGUgcHJpbWFyeSknLCBlcnIpO1xuICB9KTtcbiAgcmVhZERiID0gZHJpenpsZShwb29sLCB7IHNjaGVtYSB9KTtcblxuICBsb2dnZXIuaW5mbygnUmVhZC1yZXBsaWNhIGNvbm5lY3Rpb24gaW5pdGlhbGl6ZWQnLCB7IGhvc3QsIG1heDogY29uZmlnLm1heCB9KTtcbiAgcmV0dXJuIHBvb2w7XG59XG5cbi8qKiBUaGUgcmVwbGljYSdzIGRyaXp6bGUgaW5zdGFuY2UsIG9yIG51bGwgd2hlbiBubyByZXBsaWNhIGlzIGNvbmZpZ3VyZWQuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0UmVhZERiKCk6IFJldHVyblR5cGU8dHlwZW9mIGRyaXp6bGU+IHwgbnVsbCB7XG4gIGlmICghZ2V0UmVhZFBvb2woKSkge1xuICAgIGlmICghd2FybmVkICYmIGVudlN0cignREJfUkVBRF9IT1NUJywgJycpLnRyaW0oKS5sZW5ndGggPiAwKSB7XG4gICAgICB3YXJuZWQgPSB0cnVlO1xuICAgICAgbG9nZ2VyLmluZm8oJ1JlYWQgcmVwbGljYSBpcyBjb25maWd1cmVkIGJ1dCBkaXNhYmxlZCAoREJfUkVBRF9FTkFCTEVEPWZhbHNlKTsgcmVhZHMgdXNlIHRoZSBwcmltYXJ5Jyk7XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG4gIHJldHVybiByZWFkRGI7XG59XG5cbi8qKlxuICogQ2xvc2UgdGhlIHJlcGxpY2EgcG9vbC4gQ2FsbGVkIGZyb20gYGNsb3NlQ29ubmVjdGlvbigpYCBzbyBhIHNodXRkb3duIGNsb3Nlc1xuICogQk9USCBwb29scyDigJQgYSBoYWxmLWNsb3NlZCBwcm9jZXNzIGhvbGRzIHNlcnZlciBjb25uZWN0aW9ucyBvcGVuIG9uIHRoZVxuICogc3RhbmRieSBhbmQga2VlcHMgaXRzIHJlcGxpY2F0aW9uIHNsb3QgYnVzeS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGNsb3NlUmVhZENvbm5lY3Rpb24oKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghcG9vbCkgcmV0dXJuO1xuICBjb25zdCBwID0gcG9vbDtcbiAgcG9vbCA9IG51bGw7XG4gIHJlYWREYiA9IG51bGw7XG4gIHdhcm5lZCA9IGZhbHNlO1xuICBhd2FpdCBwLmVuZCgpO1xuICBsb2dnZXIuaW5mbygnUmVhZC1yZXBsaWNhIGNvbm5lY3Rpb24gY2xvc2VkJyk7XG59XG5cbi8qKiBUZXN0IHNlYW06IGZvcmdldCB0aGUgbWVtb2l6ZWQgcG9vbCB3aXRob3V0IGNsb3NpbmcgaXQuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzZXRSZWFkQ29ubmVjdGlvbkZvclRlc3RzKCk6IHZvaWQge1xuICBwb29sID0gbnVsbDtcbiAgcmVhZERiID0gbnVsbDtcbiAgd2FybmVkID0gZmFsc2U7XG59XG4iXX0=
|
package/lib/database/read-lag.js
CHANGED
|
@@ -199,4 +199,4 @@ export function resetLagStateForTests() {
|
|
|
199
199
|
export function setLagSampleForTests(lagSeconds, atMs = Date.now()) {
|
|
200
200
|
sample = { lagSeconds, atMs };
|
|
201
201
|
}
|
|
202
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1sYWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGF0YWJhc2UvcmVhZC1sYWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTRCRztBQUVILE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRzdFLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0FBRWpEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLGFBQWEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMseUJBQXlCLEVBQUUsQ0FBQyxDQUFDLENBQUM7QUFDakUsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDckU7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBTSxlQUFlLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLCtCQUErQixFQUFFLElBQUksQ0FBQyxDQUFDO0FBRTVFOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILEtBQUssVUFBVSxXQUFXLENBQUksSUFBZ0IsRUFBRSxFQUFVLEVBQUUsSUFBWTtJQUN0RSxJQUFJLEtBQWdELENBQUM7SUFDckQsSUFBSSxDQUFDO1FBQ0gsT0FBTyxNQUFNLE9BQU8sQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSTtZQUNKLElBQUksT0FBTyxDQUFRLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRSxFQUFFO2dCQUN0QyxLQUFLLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyxHQUFHLElBQUksb0JBQW9CLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztnQkFDbkYsS0FBSyxDQUFD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QUMsR0FBRyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztZQUFTLENBQUM7UUFDVCxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ25CLENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxhQUFhLENBQUMsTUFBYztJQUNuQyxtQkFBbUIsSUFBSSxDQUFDLENBQUM7SUFDekIsMEVBQTBFO0lBQzFFLHlFQUF5RTtJQUN6RSxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ2QsU0FBUyxDQUFDLDRCQUE0QixFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvQyw4RUFBOEU7SUFDOUUsMkJBQTJCO0lBQzNCLElBQUksbUJBQW1CLEtBQUssQ0FBQyxJQUFJLG1CQUFtQixHQUFHLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUNqRSxNQUFNLENBQUMsSUFBSSxDQUFDLGdFQUFnRSxFQUFFO1lBQzVFLE1BQU07WUFDTixtQkFBbUI7U0FDcEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztBQUNILENBQUM7QUFFRCw2REFBNkQ7QUFDN0QsTUFBTSxVQUFVLHFCQUFxQjtJQUNuQyxNQUFNLEdBQUcsSUFBSSxDQUFDO0lBQ2QsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQixtQkFBbUIsR0FBRyxDQUFDLENBQUM7QUFDMUIsQ0FBQztBQUVELGdFQUFnRTtBQUNoRSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsVUFBa0IsRUFBRSxJQUFJLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRTtJQUN4RSxNQUFNLEdBQUcsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLENBQUM7QUFDaEMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vKipcbiAqIFRoZSByZWFkLXJlcGxpY2EgbGFnIGNpcmN1aXQuXG4gKlxuICogQSBzdGFuZGJ5IHRoYXQgaGFzIGZhbGxlbiBiZWhpbmQgZG9lcyBub3QgZmFpbCByZWFkcyDigJQgaXQgYW5zd2VycyB0aGVtIHdpdGhcbiAqIG9sZCBkYXRhLCBjb25maWRlbnRseSBhbmQgcXVpY2tseS4gVGhhdCBpcyB0aGUgd2hvbGUgaGF6YXJkIG9mIHJlYWQtc3BsaXR0aW5nXG4gKiBhbmQgdGhlIHJlYXNvbiB0aGlzIG1vZHVsZSBnYXRlcyB0aGUgZmVhdHVyZTogYERCX1JFQURfSE9TVGAgbXVzdCBub3QgYmVcbiAqIGNvbmZpZ3VyZWQgb24gYW55IHRhcmdldCB1bnRpbCB0aGlzIGV4aXN0cy5cbiAqXG4gKiBTSEFQRTogYSBjYWNoZWQgc2FtcGxlLCBub3QgYSBwZXItcXVlcnkgY2hlY2suIEFza2luZyB0aGUgc3RhbmRieSBob3cgZmFyXG4gKiBiZWhpbmQgaXQgaXMgY29zdHMgYSByb3VuZC10cmlwLCBzbyBkb2luZyBpdCBwZXIgcmVhZCB3b3VsZCBzcGVuZCBtb3N0IG9mIHRoZVxuICogYmVuZWZpdCBvbiB0aGUgbWVhc3VyZW1lbnQuIEluc3RlYWQgYSBzYW1wbGUgaXMgcmVmcmVzaGVkIGF0IG1vc3QgZXZlcnlcbiAqIGBEQl9SRUFEX0xBR19TQU1QTEVfTVNgIGluIHRoZSBiYWNrZ3JvdW5kLCBhbmQgdGhlIHJvdXRpbmcgZGVjaXNpb24gcmVhZHMgdGhlXG4gKiBjYWNoZSBzeW5jaHJvbm91c2x5LlxuICpcbiAqIEZBSUwgQ0xPU0VELCBUSFJFRSBXQVlTLiBBbiB1bmtub3duIGxhZyBpcyB0cmVhdGVkIGFzIHVuYWNjZXB0YWJsZSwgc286XG4gKiAgIC0gYmVmb3JlIHRoZSBmaXJzdCBzYW1wbGUgY29tcGxldGVzLCByZWFkcyBnbyB0byB0aGUgcHJpbWFyeTtcbiAqICAgLSBpZiB0aGUgc2FtcGxlIHF1ZXJ5IGVycm9ycywgcmVhZHMgZ28gdG8gdGhlIHByaW1hcnk7XG4gKiAgIC0gaWYgdGhlIGNhY2hlZCBzYW1wbGUgaGFzIGdvbmUgU1RBTEUg4oCUIHRoZSBzYW1wbGVyIHN0b3BwZWQgcnVubmluZywgdGhlXG4gKiAgICAgcG9vbCBpcyB3ZWRnZWQg4oCUIHJlYWRzIGdvIHRvIHRoZSBwcmltYXJ5LlxuICogVGhlIGxhc3Qgb25lIG1hdHRlcnMgbW9zdDogYSBjYWNoZSB0aGF0IG1lcmVseSBzdG9wcyB1cGRhdGluZyB3b3VsZCBvdGhlcndpc2VcbiAqIGZyZWV6ZSB0aGUgY2lyY3VpdCBpbiB3aGF0ZXZlciBzdGF0ZSBpdCB3YXMgbGFzdCBpbiwgd2hpY2ggZm9yIGEgaGVhbHRoeVxuICogcmVhZGluZyBtZWFucyBcImtlZXAgdXNpbmcgYSByZXBsaWNhIG5vYm9keSBpcyBjaGVja2luZyBhbnkgbW9yZVwiLlxuICpcbiAqIFdIWSBOT1QgQSBUSU1FUjogcGlwZWxpbmUtZGF0YSBoYXMgbm8gc2NoZWR1bGVyIGFuZCBubyBsZWFkZXIgbG9jaywgYW5kIGFcbiAqIGBzZXRJbnRlcnZhbGAgaW4gYSBsaWJyYXJ5IGtlZXBzIHRoZSBldmVudCBsb29wIGFsaXZlIGFuZCBsZWFrcyBhY3Jvc3MgdGVzdHMuXG4gKiBTYW1wbGluZyBpcyBraWNrZWQgb2ZmIG9wcG9ydHVuaXN0aWNhbGx5IGZyb20gdGhlIHJlYWQgcGF0aCBpbnN0ZWFkXG4gKiAoZmlyZS1hbmQtZm9yZ2V0LCBkZWJvdW5jZWQpLCBzbyBhIHByb2Nlc3MgdGhhdCBuZXZlciByZWFkcyBuZXZlciBzYW1wbGVzIOKAlFxuICogd2hpY2ggaXMgY29ycmVjdCwgYW5kIGNvc3RzIG5vdGhpbmcuXG4gKi9cblxuaW1wb3J0IHsgY3JlYXRlTG9nZ2VyLCBlbWl0R2F1Z2UsIGVudkludCB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB0eXBlIHsgUG9vbCB9IGZyb20gJ3BnJztcblxuY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKCdkYXRhYmFzZS1yZWFkLWxhZycpO1xuXG4vKipcbiAqIEhvdyBmYXIgYmVoaW5kIGEgc3RhbmRieSBtYXkgYmUgYW5kIHN0aWxsIHNlcnZlIHJlYWRzLlxuICpcbiAqIEZpdmUgc2Vjb25kcyBpcyBhIGRlbGliZXJhdGVseSBsb29zZSBkZWZhdWx0OiB0aGlzIGNpcmN1aXQgZXhpc3RzIHRvIGNhdGNoIGFcbiAqIHN0YW5kYnkgdGhhdCBpcyBCUk9LRU4gb3IgYmFkbHkgYmVoaW5kLCBub3QgdG8gcHJvdmlkZSByZWFkLXlvdXItd3JpdGVzLlxuICogUmVhZC1hZnRlci13cml0ZSBpcyBoYW5kbGVkIHNlcGFyYXRlbHkgYW5kIGV4YWN0bHksIGJ5IHRoZSB3cml0ZSB3YXRlcm1hcmsgaW5cbiAqIGB0ZW5hbmN5LnRzYCDigJQgYSBsYWcgdGhyZXNob2xkIGNhbm5vdCBkbyB0aGF0IGpvYiBhdCBhbnkgdmFsdWUsIGJlY2F1c2UgYVxuICogcmVwbGljYSAyMDBtcyBiZWhpbmQgc3RpbGwgaGFzIG5vdCByZXBsYXllZCBhIGNvbW1pdCBmcm9tIDEwMG1zIGFnby5cbiAqIENvbmZ1c2luZyB0aGUgdHdvIGlzIGhvdyBhIGxhZyB0aHJlc2hvbGQgZW5kcyB1cCB0dW5lZCB0byBhIG51bWJlciB0aGF0XG4gKiBuZWl0aGVyIHByb3RlY3RzIGNvcnJlY3RuZXNzIG5vciBwZXJtaXRzIGFueSBvZmZsb2FkLlxuICovXG5jb25zdCBtYXhMYWdTZWNvbmRzID0gKCkgPT4gZW52SW50KCdEQl9SRUFEX01BWF9MQUdfU0VDT05EUycsIDUpO1xuY29uc3Qgc2FtcGxlSW50ZXJ2YWxNcyA9ICgpID0+IGVudkludCgnREJfUkVBRF9MQUdfU0FNUExFX01TJywgNTAwMCk7XG4vKipcbiAqIEhvdyBsb25nIG9uZSBzYW1wbGUgbWF5IHRha2UgYmVmb3JlIGl0IGlzIGFiYW5kb25lZC5cbiAqXG4gKiBUSElTIElTIE5PVCBBIFBFUkZPUk1BTkNFIEtOT0IsIGl0IGlzIHdoYXQgbWFrZXMgdGhlIHNhbXBsZXIgcmVjb3ZlcmFibGUuXG4gKiBOb3RoaW5nIGVsc2UgYm91bmRzIGEgcnVubmluZyBxdWVyeSBvbiB0aGlzIHBvb2wg4oCUIGBjb25uZWN0aW9uVGltZW91dE1pbGxpc2BcbiAqIGJvdW5kcyBBQ1FVSVJJTkcgYSBjb25uZWN0aW9uIGFuZCBgaWRsZVRpbWVvdXRNaWxsaXNgIGV2aWN0cyBpZGxlIG9uZXM7XG4gKiBuZWl0aGVyIHRvdWNoZXMgYSBxdWVyeSBhbHJlYWR5IGV4ZWN1dGluZy4gU28gYSB3ZWRnZWQgY29ubmVjdGlvbiBsZWZ0XG4gKiBgaW5GbGlnaHRgIHRydWUgZm9yZXZlciwgdGhlIGBmaW5hbGx5YCBuZXZlciByYW4sIGV2ZXJ5IGxhdGVyIGNhbGwgcmV0dXJuZWRcbiAqIGF0IHRoZSBndWFyZCwgYW5kIG5vIGZ1cnRoZXIgc2FtcGxlIHdhcyB0YWtlbiBGT1IgVEhFIExJRkUgT0YgVEhFIFBST0NFU1MuXG4gKiBUaGUgY2FjaGVkIHJlYWRpbmcgdGhlbiB3ZW50IHN0YWxlLCB0aGUgdmVyZGljdCBiZWNhbWUgYHVua25vd25gLCBhbmQgZXZlcnlcbiAqIHJlYWQgZmVsbCBiYWNrIHRvIHRoZSBwcmltYXJ5IHBlcm1hbmVudGx5IOKAlCBzYWZlLCBidXQgdW5yZWNvdmVyYWJsZSB3aXRob3V0XG4gKiBhIHJlc3RhcnQsIGFuZCB2aXNpYmxlIG9ubHkgYXMgUG9zdGdyZXNSZWFkQ2lyY3VpdE9wZW4gMzAgbWludXRlcyBsYXRlci5cbiAqL1xuY29uc3Qgc2FtcGxlVGltZW91dE1zID0gKCkgPT4gZW52SW50KCdEQl9SRUFEX0xBR19TQU1QTEVfVElNRU9VVF9NUycsIDUwMDApO1xuXG4vKipcbiAqIFJhY2UgYSBxdWVyeSBhZ2FpbnN0IGEgdGltZXIgc28gdGhlIGNhbGxlciBhbHdheXMgcmVnYWlucyBjb250cm9sLlxuICpcbiAqIFRoZSBhYmFuZG9uZWQgcXVlcnkgaXMgbGVmdCB0byB0aGUgcG9vbCDigJQgUG9zdGdyZXMga2VlcHMgcnVubmluZyBpdCwgYW5kIHRoZVxuICogcG9vbCdzIG93biBpZGxlIGhhbmRsaW5nIHJlY2xhaW1zIHRoZSBjb25uZWN0aW9uLiBUaGF0IGlzIGRlbGliZXJhdGU6IHRoZVxuICogYWx0ZXJuYXRpdmUgaXMgY2FuY2VsbGluZyBzZXJ2ZXItc2lkZSwgd2hpY2ggbmVlZHMgYSBzZWNvbmQgY29ubmVjdGlvbiBhbmQgYVxuICogUElELCBhbmQgdGhpcyBpcyBhIDEtcm93IHJlYWQgd2hvc2UgY29zdCBpcyBib3VuZGVkIGFueXdheS4gV2hhdCBtYXR0ZXJzIGlzXG4gKiB0aGF0IGBpbkZsaWdodGAgaXMgcmVsZWFzZWQsIHNvIHRoZSBuZXh0IHJlYWQgcmV0cmllcy5cbiAqXG4gKiBgY2xlYXJUaW1lb3V0YCBpbiBgZmluYWxseWAgaXMgbm90IHRpZGluZXNzOiBhbiB1bi1jbGVhcmVkIHRpbWVyIGtlZXBzIHRoZVxuICogTm9kZSBldmVudCBsb29wIGFsaXZlLCB3aGljaCBoYW5ncyBhIHRlc3QgcnVuIGFuZCwgaW4gYSBzaG9ydC1saXZlZCBwcm9jZXNzLFxuICogZGVsYXlzIGV4aXQuXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIHdpdGhUaW1lb3V0PFQ+KHdvcms6IFByb21pc2U8VD4sIG1zOiBudW1iZXIsIHdoYXQ6IHN0cmluZyk6IFByb21pc2U8VD4ge1xuICBsZXQgdGltZXI6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgdW5kZWZpbmVkO1xuICB0cnkge1xuICAgIHJldHVybiBhd2FpdCBQcm9taXNlLnJhY2UoW1xuICAgICAgd29yayxcbiAgICAgIG5ldyBQcm9taXNlPG5ldmVyPigoX3Jlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICB0aW1lciA9IHNldFRpbWVvdXQoKCkgPT4gcmVqZWN0KG5ldyBFcnJvcihgJHt3aGF0fSB0aW1lZCBvdXQgYWZ0ZXIgJHttc31tc2ApKSwgbXMpO1xuICAgICAgICB0aW1lci51bnJlZj8uKCk7XG4gICAgICB9KSxcbiAgICBdKTtcbiAgfSBmaW5hbGx5IHtcbiAgICBpZiAodGltZXIpIGNsZWFyVGltZW91dCh0aW1lcik7XG4gIH1cbn1cblxuLyoqIEEgc2FtcGxlIG9sZGVyIHRoYW4gdGhpcyBtYW55IGludGVydmFscyBpcyB0cmVhdGVkIGFzIG5vIHNhbXBsZSBhdCBhbGwuICovXG5jb25zdCBTVEFMRV9JTlRFUlZBTFMgPSAzO1xuXG5pbnRlcmZhY2UgU2FtcGxlIHtcbiAgbGFnU2Vjb25kczogbnVtYmVyO1xuICBhdE1zOiBudW1iZXI7XG59XG5cbmxldCBzYW1wbGU6IFNhbXBsZSB8IG51bGwgPSBudWxsO1xubGV0IGluRmxpZ2h0ID0gZmFsc2U7XG5sZXQgY29uc2VjdXRpdmVGYWlsdXJlcyA9IDA7XG5cbmV4cG9ydCB0eXBlIExhZ1ZlcmRpY3QgPVxuICAvKiogTm8gc2FtcGxlIHlldCwgb3IgdGhlIGxhc3Qgb25lIGlzIHN0YWxlL2ZhaWxlZC4gUmVhZHMgdXNlIHRoZSBwcmltYXJ5LiAqL1xuICB8ICd1bmtub3duJ1xuICAvKiogUmVwbGF5IGxhZyBpcyB3aXRoaW4gdGhlIHRocmVzaG9sZC4gKi9cbiAgfCAnb2snXG4gIC8qKiBSZXBsYXkgbGFnIGlzIGJleW9uZCB0aGUgdGhyZXNob2xkLiBSZWFkcyB1c2UgdGhlIHByaW1hcnkuICovXG4gIHwgJ2xhZ2dpbmcnO1xuXG4vKipcbiAqIFRoZSBjaXJjdWl0J3MgY3VycmVudCBzdGF0ZSwgcmVhZCBzeW5jaHJvbm91c2x5IGJ5IHRoZSByb3V0aW5nIGRlY2lzaW9uLlxuICpcbiAqIFJldHVybnMgYHVua25vd25gIHJhdGhlciB0aGFuIHRocm93aW5nIG9yIGd1ZXNzaW5nIHdoZW4gdGhlcmUgaXMgbm90aGluZ1xuICogdHJ1c3R3b3J0aHkgdG8gcmVwb3J0LCBhbmQgZXZlcnkgY2FsbGVyIHRyZWF0cyBgdW5rbm93bmAgYXMgXCJ1c2UgdGhlXG4gKiBwcmltYXJ5XCIuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBsYWdWZXJkaWN0KG5vdyA9IERhdGUubm93KCkpOiBMYWdWZXJkaWN0IHtcbiAgaWYgKCFzYW1wbGUpIHJldHVybiAndW5rbm93bic7XG4gIGlmIChub3cgLSBzYW1wbGUuYXRNcyA+IHNhbXBsZUludGVydmFsTXMoKSAqIFNUQUxFX0lOVEVSVkFMUykgcmV0dXJuICd1bmtub3duJztcbiAgcmV0dXJuIHNhbXBsZS5sYWdTZWNvbmRzID4gbWF4TGFnU2Vjb25kcygpID8gJ2xhZ2dpbmcnIDogJ29rJztcbn1cblxuLyoqXG4gKiBUaGUgbGFnIHF1ZXJ5LCBhbmQgdGhlIG9uZSBzdWJ0bGV0eSBpbiB0aGlzIHdob2xlIG1vZHVsZS5cbiAqXG4gKiBgbm93KCkgLSBwZ19sYXN0X3hhY3RfcmVwbGF5X3RpbWVzdGFtcCgpYCBpcyB0aGUgdXN1YWwgbGFnIGV4cHJlc3Npb24gYW5kIGl0XG4gKiBpcyBXUk9ORyBPTiBJVFMgT1dOOiB0aGF0IHRpbWVzdGFtcCBpcyB0aGUgY29tbWl0IHRpbWUgb2YgdGhlIGxhc3QgcmVwbGF5ZWRcbiAqIHRyYW5zYWN0aW9uLCBzbyBvbiBhbiBpZGxlIHByaW1hcnkgaXQgc2ltcGx5IGdldHMgb2xkZXIgYW5kIG9sZGVyLiBBIHN0YW5kYnlcbiAqIHRoYXQgaXMgcGVyZmVjdGx5IGNhdWdodCB1cCBvbiBhIHF1aWV0IHN5c3RlbSB3b3VsZCByZXBvcnQgbWludXRlcyBvZiBcImxhZ1wiXG4gKiBhbmQgdGhpcyBjaXJjdWl0IHdvdWxkIHNlbmQgZXZlcnkgcmVhZCBiYWNrIHRvIHRoZSBwcmltYXJ5IOKAlCBwZXJtYW5lbnRseSxcbiAqIGFuZCBtb3N0IHZpc2libHkgYXQgbmlnaHQgd2hlbiBub3RoaW5nIGlzIGhhcHBlbmluZy5cbiAqXG4gKiBUaGUgZ3VhcmQgaXMgdGhlIExTTiBjb21wYXJpc29uIGZpcnN0OiB3aGVuIGV2ZXJ5dGhpbmcgcmVjZWl2ZWQgaGFzIGJlZW5cbiAqIHJlcGxheWVkLCB0aGUgc3RhbmRieSBpcyBjdXJyZW50IGJ5IGRlZmluaXRpb24sIHdoYXRldmVyIHRoZSBjbG9jayBzYXlzLlxuICogT25seSB3aGVuIHRoZXJlIGlzIHVucmVwbGF5ZWQgV0FMIGRvZXMgdGhlIHRpbWVzdGFtcCBtZWFuIGFueXRoaW5nLlxuICovXG5jb25zdCBMQUdfU1FMID0gYFxuICBTRUxFQ1QgQ0FTRVxuICAgIFdIRU4gTk9UIHBnX2lzX2luX3JlY292ZXJ5KCkgVEhFTiAwXG4gICAgV0hFTiBwZ19sYXN0X3dhbF9yZWNlaXZlX2xzbigpIElTIE5VTEwgVEhFTiBOVUxMXG4gICAgV0hFTiBwZ19sYXN0X3dhbF9yZWNlaXZlX2xzbigpID0gcGdfbGFzdF93YWxfcmVwbGF5X2xzbigpIFRIRU4gMFxuICAgIEVMU0UgR1JFQVRFU1QoMCwgRVhUUkFDVChFUE9DSCBGUk9NIChub3coKSAtIHBnX2xhc3RfeGFjdF9yZXBsYXlfdGltZXN0YW1wKCkpKSlcbiAgRU5EIEFTIGxhZ19zZWNvbmRzXG5gO1xuXG4vKipcbiAqIFJlZnJlc2ggdGhlIHNhbXBsZSBpZiBpdCBpcyBkdWUuIEZpcmUtYW5kLWZvcmdldDogbmV2ZXIgdGhyb3dzLCBuZXZlclxuICogcmV0dXJucyBhIHJlamVjdGVkIHByb21pc2UsIGFuZCByZXNvbHZlcyBhcyBzb29uIGFzIGEgc2FtcGxlIGlzIG5vdCBuZWVkZWQuXG4gKlxuICogYHBnX2lzX2luX3JlY292ZXJ5KCkgPSBmYWxzZWAgbWVhbnMgdGhpcyBwb29sIGlzIHBvaW50ZWQgYXQgYSBQUklNQVJZLCB3aGljaFxuICogaXMgYSBtaXNjb25maWd1cmF0aW9uIHdvcnRoIHN1cmZhY2luZyByYXRoZXIgdGhhbiBhIGxhZyBvZiB6ZXJvIOKAlCBidXQgaXQgaXNcbiAqIHJlcG9ydGVkIGFzIGxhZyAwIGFueXdheSwgYmVjYXVzZSB0aGUgYWx0ZXJuYXRpdmUgaXMgcmVmdXNpbmcgdG8gc2VydmUgcmVhZHNcbiAqIGZyb20gYSBzZXJ2ZXIgdGhhdCBpcywgaW4gZmFjdCwgYWJsZSB0byBzZXJ2ZSB0aGVtIGNvcnJlY3RseS4gVGhlIHdhcm5pbmcgaXNcbiAqIGxvZ2dlZCBvbmNlIHBlciB0cmFuc2l0aW9uIGluc3RlYWQuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBtYXliZVNhbXBsZUxhZyhwb29sOiBQb29sKTogUHJvbWlzZTx2b2lkPiB7XG4gIGNvbnN0IG5vdyA9IERhdGUubm93KCk7XG4gIGlmIChpbkZsaWdodCkgcmV0dXJuO1xuICBpZiAoc2FtcGxlICYmIG5vdyAtIHNhbXBsZS5hdE1zIDwgc2FtcGxlSW50ZXJ2YWxNcygpKSByZXR1cm47XG4gIGluRmxpZ2h0ID0gdHJ1ZTtcbiAgdHJ5IHtcbiAgICBjb25zdCByZXMgPSBhd2FpdCB3aXRoVGltZW91dChcbiAgICAgIHBvb2wucXVlcnk8eyBsYWdfc2Vjb25kczogc3RyaW5nIHwgbnVtYmVyIHwgbnVsbCB9PihMQUdfU1FMKSxcbiAgICAgIHNhbXBsZVRpbWVvdXRNcygpLFxuICAgICAgJ3JlYWQtcmVwbGljYSBsYWcgc2FtcGxlJyxcbiAgICApO1xuICAgIGNvbnN0IHJhdyA9IHJlcy5yb3dzWzBdPy5sYWdfc2Vjb25kcztcbiAgICBpZiAocmF3ID09PSBudWxsIHx8IHJhdyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBBIHN0YW5kYnkgdGhhdCBoYXMgbmV2ZXIgcmVjZWl2ZWQgV0FMLiBOb3QgYW4gZXJyb3IsIGJ1dCBub3QgYSB1c2FibGVcbiAgICAgIC8vIHJlYWRpbmcgZWl0aGVyIOKAlCBpdCBtdXN0IG5vdCBiZSByZWNvcmRlZCBhcyBcImNhdWdodCB1cFwiLlxuICAgICAgcmVjb3JkRmFpbHVyZSgnbm8gV0FMIHJlY2VpdmVkIHlldCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zdCBsYWdTZWNvbmRzID0gTnVtYmVyKHJhdyk7XG4gICAgaWYgKCFOdW1iZXIuaXNGaW5pdGUobGFnU2Vjb25kcykpIHtcbiAgICAgIHJlY29yZEZhaWx1cmUoYG5vbi1udW1lcmljIGxhZyB2YWx1ZTogJHtTdHJpbmcocmF3KX1gKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGNvbnNlY3V0aXZlRmFpbHVyZXMgPiAwKSB7XG4gICAgICBsb2dnZXIuaW5mbygnUmVhZC1yZXBsaWNhIGxhZyBzYW1wbGluZyByZWNvdmVyZWQnLCB7IGFmdGVyRmFpbHVyZXM6IGNvbnNlY3V0aXZlRmFpbHVyZXMsIGxhZ1NlY29uZHMgfSk7XG4gICAgICBjb25zZWN1dGl2ZUZhaWx1cmVzID0gMDtcbiAgICB9XG4gICAgc2FtcGxlID0geyBsYWdTZWNvbmRzLCBhdE1zOiBEYXRlLm5vdygpIH07XG4gICAgZW1pdEdhdWdlKCdwb3N0Z3Jlc19yZXBsaWNhX2xhZ19zZWNvbmRzJywge30sIGxhZ1NlY29uZHMpO1xuICAgIGVtaXRHYXVnZSgncG9zdGdyZXNfcmVhZF9jaXJjdWl0X29wZW4nLCB7fSwgbGFnVmVyZGljdCgpID09PSAnb2snID8gMCA6IDEpO1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZWNvcmRGYWlsdXJlKGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiBTdHJpbmcoZXJyKSk7XG4gIH0gZmluYWxseSB7XG4gICAgaW5GbGlnaHQgPSBmYWxzZTtcbiAgfVxufVxuXG5mdW5jdGlvbiByZWNvcmRGYWlsdXJlKHJlYXNvbjogc3RyaW5nKTogdm9pZCB7XG4gIGNvbnNlY3V0aXZlRmFpbHVyZXMgKz0gMTtcbiAgLy8gRGlzY2FyZCB0aGUgcHJldmlvdXMgc2FtcGxlIHJhdGhlciB0aGFuIGtlZXBpbmcgYSBzdGFsZSBcIm9rXCI6IGEgc2FtcGxlclxuICAvLyB0aGF0IGNhbm5vdCByZWFjaCB0aGUgc3RhbmRieSBpcyBleGFjdGx5IHdoZW4gcmVhZHMgbXVzdCBub3QgZ28gdGhlcmUuXG4gIHNhbXBsZSA9IG51bGw7XG4gIGVtaXRHYXVnZSgncG9zdGdyZXNfcmVhZF9jaXJjdWl0X29wZW4nLCB7fSwgMSk7XG4gIC8vIExvZyB0aGUgZmlyc3QgZmFpbHVyZSBhbmQgdGhlbiBiYWNrIG9mZiwgc28gYW4gdW5yZWFjaGFibGUgc3RhbmRieSBkb2VzIG5vdFxuICAvLyBwcm9kdWNlIGEgbGluZSBwZXIgcmVhZC5cbiAgaWYgKGNvbnNlY3V0aXZlRmFpbHVyZXMgPT09IDEgfHwgY29uc2VjdXRpdmVGYWlsdXJlcyAlIDEwMCA9PT0gMCkge1xuICAgIGxvZ2dlci53YXJuKCdSZWFkLXJlcGxpY2EgbGFnIHNhbXBsZSBmYWlsZWQ7IHJlYWRzIGZhbGwgYmFjayB0byB0aGUgcHJpbWFyeScsIHtcbiAgICAgIHJlYXNvbixcbiAgICAgIGNvbnNlY3V0aXZlRmFpbHVyZXMsXG4gICAgfSk7XG4gIH1cbn1cblxuLyoqIFRlc3Qgc2VhbTogZm9yZ2V0IHRoZSBjYWNoZWQgc2FtcGxlIGFuZCBmYWlsdXJlIHN0YXRlLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlc2V0TGFnU3RhdGVGb3JUZXN0cygpOiB2b2lkIHtcbiAgc2FtcGxlID0gbnVsbDtcbiAgaW5GbGlnaHQgPSBmYWxzZTtcbiAgY29uc2VjdXRpdmVGYWlsdXJlcyA9IDA7XG59XG5cbi8qKiBUZXN0IHNlYW06IGluc3RhbGwgYSBzYW1wbGUgZGlyZWN0bHksIHdpdGhvdXQgYSBkYXRhYmFzZS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXRMYWdTYW1wbGVGb3JUZXN0cyhsYWdTZWNvbmRzOiBudW1iZXIsIGF0TXMgPSBEYXRlLm5vdygpKTogdm9pZCB7XG4gIHNhbXBsZSA9IHsgbGFnU2Vjb25kcywgYXRNcyB9O1xufVxuIl19
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZC1sYWcuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kYXRhYmFzZS9yZWFkLWxhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBNEJHO0FBRUgsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHN0UsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLG1CQUFtQixDQUFDLENBQUM7QUFFakQ7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sYUFBYSxHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx5QkFBeUIsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUNqRSxNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNyRTs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLGVBQWUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsK0JBQStCLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFFNUU7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsS0FBSyxVQUFVLFdBQVcsQ0FBSSxJQUFnQixFQUFFLEVBQVUsRUFBRSxJQUFZO0lBQ3RFLElBQUksS0FBZ0QsQ0FBQztJQUNyRCxJQUFJLENBQUM7UUFDSCxPQUFPLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQztZQUN4QixJQUFJO1lBQ0osSUFBSSxPQUFPLENBQVEsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUU7Z0JBQ3RDLEtBQUssR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLEdBQUcsSUFBSSxvQkFBb0IsRUFBRSxJQUFJLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUNuRixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUs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SyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDO1lBQVMsQ0FBQztRQUNULFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLGFBQWEsQ0FBQyxNQUFjO0lBQ25DLG1CQUFtQixJQUFJLENBQUMsQ0FBQztJQUN6QiwwRUFBMEU7SUFDMUUseUVBQXlFO0lBQ3pFLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDZCxTQUFTLENBQUMsNEJBQTRCLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9DLDhFQUE4RTtJQUM5RSwyQkFBMkI7SUFDM0IsSUFBSSxtQkFBbUIsS0FBSyxDQUFDLElBQUksbUJBQW1CLEdBQUcsR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDO1FBQ2pFLE1BQU0sQ0FBQyxJQUFJLENBQUMsZ0VBQWdFLEVBQUU7WUFDNUUsTUFBTTtZQUNOLG1CQUFtQjtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0FBQ0gsQ0FBQztBQUVELDZEQUE2RDtBQUM3RCxNQUFNLFVBQVUscUJBQXFCO0lBQ25DLE1BQU0sR0FBRyxJQUFJLENBQUM7SUFDZCxRQUFRLEdBQUcsS0FBSyxDQUFDO0lBQ2pCLG1CQUFtQixHQUFHLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRUQsZ0VBQWdFO0FBQ2hFLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxVQUFrQixFQUFFLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFO0lBQ3hFLE1BQU0sR0FBRyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQztBQUNoQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8qKlxuICogVGhlIHJlYWQtcmVwbGljYSBsYWcgY2lyY3VpdC5cbiAqXG4gKiBBIHN0YW5kYnkgdGhhdCBoYXMgZmFsbGVuIGJlaGluZCBkb2VzIG5vdCBmYWlsIHJlYWRzIOKAlCBpdCBhbnN3ZXJzIHRoZW0gd2l0aFxuICogb2xkIGRhdGEsIGNvbmZpZGVudGx5IGFuZCBxdWlja2x5LiBUaGF0IGlzIHRoZSB3aG9sZSBoYXphcmQgb2YgcmVhZC1zcGxpdHRpbmdcbiAqIGFuZCB0aGUgcmVhc29uIHRoaXMgbW9kdWxlIGdhdGVzIHRoZSBmZWF0dXJlOiBgREJfUkVBRF9IT1NUYCBtdXN0IG5vdCBiZVxuICogY29uZmlndXJlZCBvbiBhbnkgdGFyZ2V0IHVudGlsIHRoaXMgZXhpc3RzLlxuICpcbiAqIFNIQVBFOiBhIGNhY2hlZCBzYW1wbGUsIG5vdCBhIHBlci1xdWVyeSBjaGVjay4gQXNraW5nIHRoZSBzdGFuZGJ5IGhvdyBmYXJcbiAqIGJlaGluZCBpdCBpcyBjb3N0cyBhIHJvdW5kLXRyaXAsIHNvIGRvaW5nIGl0IHBlciByZWFkIHdvdWxkIHNwZW5kIG1vc3Qgb2YgdGhlXG4gKiBiZW5lZml0IG9uIHRoZSBtZWFzdXJlbWVudC4gSW5zdGVhZCBhIHNhbXBsZSBpcyByZWZyZXNoZWQgYXQgbW9zdCBldmVyeVxuICogYERCX1JFQURfTEFHX1NBTVBMRV9NU2AgaW4gdGhlIGJhY2tncm91bmQsIGFuZCB0aGUgcm91dGluZyBkZWNpc2lvbiByZWFkcyB0aGVcbiAqIGNhY2hlIHN5bmNocm9ub3VzbHkuXG4gKlxuICogRkFJTCBDTE9TRUQsIFRIUkVFIFdBWVMuIEFuIHVua25vd24gbGFnIGlzIHRyZWF0ZWQgYXMgdW5hY2NlcHRhYmxlLCBzbzpcbiAqICAgLSBiZWZvcmUgdGhlIGZpcnN0IHNhbXBsZSBjb21wbGV0ZXMsIHJlYWRzIGdvIHRvIHRoZSBwcmltYXJ5O1xuICogICAtIGlmIHRoZSBzYW1wbGUgcXVlcnkgZXJyb3JzLCByZWFkcyBnbyB0byB0aGUgcHJpbWFyeTtcbiAqICAgLSBpZiB0aGUgY2FjaGVkIHNhbXBsZSBoYXMgZ29uZSBTVEFMRSDigJQgdGhlIHNhbXBsZXIgc3RvcHBlZCBydW5uaW5nLCB0aGVcbiAqICAgICBwb29sIGlzIHdlZGdlZCDigJQgcmVhZHMgZ28gdG8gdGhlIHByaW1hcnkuXG4gKiBUaGUgbGFzdCBvbmUgbWF0dGVycyBtb3N0OiBhIGNhY2hlIHRoYXQgbWVyZWx5IHN0b3BzIHVwZGF0aW5nIHdvdWxkIG90aGVyd2lzZVxuICogZnJlZXplIHRoZSBjaXJjdWl0IGluIHdoYXRldmVyIHN0YXRlIGl0IHdhcyBsYXN0IGluLCB3aGljaCBmb3IgYSBoZWFsdGh5XG4gKiByZWFkaW5nIG1lYW5zIFwia2VlcCB1c2luZyBhIHJlcGxpY2Egbm9ib2R5IGlzIGNoZWNraW5nIGFueSBtb3JlXCIuXG4gKlxuICogV0hZIE5PVCBBIFRJTUVSOiBwaXBlbGluZS1kYXRhIGhhcyBubyBzY2hlZHVsZXIgYW5kIG5vIGxlYWRlciBsb2NrLCBhbmQgYVxuICogYHNldEludGVydmFsYCBpbiBhIGxpYnJhcnkga2VlcHMgdGhlIGV2ZW50IGxvb3AgYWxpdmUgYW5kIGxlYWtzIGFjcm9zcyB0ZXN0cy5cbiAqIFNhbXBsaW5nIGlzIGtpY2tlZCBvZmYgb3Bwb3J0dW5pc3RpY2FsbHkgZnJvbSB0aGUgcmVhZCBwYXRoIGluc3RlYWRcbiAqIChmaXJlLWFuZC1mb3JnZXQsIGRlYm91bmNlZCksIHNvIGEgcHJvY2VzcyB0aGF0IG5ldmVyIHJlYWRzIG5ldmVyIHNhbXBsZXMg4oCUXG4gKiB3aGljaCBpcyBjb3JyZWN0LCBhbmQgY29zdHMgbm90aGluZy5cbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVMb2dnZXIsIGVtaXRHYXVnZSwgZW52SW50IH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHR5cGUgeyBQb29sIH0gZnJvbSAncGcnO1xuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ2RhdGFiYXNlLXJlYWQtbGFnJyk7XG5cbi8qKlxuICogSG93IGZhciBiZWhpbmQgYSBzdGFuZGJ5IG1heSBiZSBhbmQgc3RpbGwgc2VydmUgcmVhZHMuXG4gKlxuICogRml2ZSBzZWNvbmRzIGlzIGEgZGVsaWJlcmF0ZWx5IGxvb3NlIGRlZmF1bHQ6IHRoaXMgY2lyY3VpdCBleGlzdHMgdG8gY2F0Y2ggYVxuICogc3RhbmRieSB0aGF0IGlzIEJST0tFTiBvciBiYWRseSBiZWhpbmQsIG5vdCB0byBwcm92aWRlIHJlYWQteW91ci13cml0ZXMuXG4gKiBSZWFkLWFmdGVyLXdyaXRlIGlzIGhhbmRsZWQgc2VwYXJhdGVseSBhbmQgZXhhY3RseSwgYnkgdGhlIHdyaXRlIHdhdGVybWFyayBpblxuICogYHRlbmFuY3kudHNgIOKAlCBhIGxhZyB0aHJlc2hvbGQgY2Fubm90IGRvIHRoYXQgam9iIGF0IGFueSB2YWx1ZSwgYmVjYXVzZSBhXG4gKiByZXBsaWNhIDIwMG1zIGJlaGluZCBzdGlsbCBoYXMgbm90IHJlcGxheWVkIGEgY29tbWl0IGZyb20gMTAwbXMgYWdvLlxuICogQ29uZnVzaW5nIHRoZSB0d28gaXMgaG93IGEgbGFnIHRocmVzaG9sZCBlbmRzIHVwIHR1bmVkIHRvIGEgbnVtYmVyIHRoYXRcbiAqIG5laXRoZXIgcHJvdGVjdHMgY29ycmVjdG5lc3Mgbm9yIHBlcm1pdHMgYW55IG9mZmxvYWQuXG4gKi9cbmNvbnN0IG1heExhZ1NlY29uZHMgPSAoKSA9PiBlbnZJbnQoJ0RCX1JFQURfTUFYX0xBR19TRUNPTkRTJywgNSk7XG5jb25zdCBzYW1wbGVJbnRlcnZhbE1zID0gKCkgPT4gZW52SW50KCdEQl9SRUFEX0xBR19TQU1QTEVfTVMnLCA1MDAwKTtcbi8qKlxuICogSG93IGxvbmcgb25lIHNhbXBsZSBtYXkgdGFrZSBiZWZvcmUgaXQgaXMgYWJhbmRvbmVkLlxuICpcbiAqIFRISVMgSVMgTk9UIEEgUEVSRk9STUFOQ0UgS05PQiwgaXQgaXMgd2hhdCBtYWtlcyB0aGUgc2FtcGxlciByZWNvdmVyYWJsZS5cbiAqIE5vdGhpbmcgZWxzZSBib3VuZHMgYSBydW5uaW5nIHF1ZXJ5IG9uIHRoaXMgcG9vbCDigJQgYGNvbm5lY3Rpb25UaW1lb3V0TWlsbGlzYFxuICogYm91bmRzIEFDUVVJUklORyBhIGNvbm5lY3Rpb24gYW5kIGBpZGxlVGltZW91dE1pbGxpc2AgZXZpY3RzIGlkbGUgb25lcztcbiAqIG5laXRoZXIgdG91Y2hlcyBhIHF1ZXJ5IGFscmVhZHkgZXhlY3V0aW5nLiBTbyBhIHdlZGdlZCBjb25uZWN0aW9uIGxlZnRcbiAqIGBpbkZsaWdodGAgdHJ1ZSBmb3JldmVyLCB0aGUgYGZpbmFsbHlgIG5ldmVyIHJhbiwgZXZlcnkgbGF0ZXIgY2FsbCByZXR1cm5lZFxuICogYXQgdGhlIGd1YXJkLCBhbmQgbm8gZnVydGhlciBzYW1wbGUgd2FzIHRha2VuIEZPUiBUSEUgTElGRSBPRiBUSEUgUFJPQ0VTUy5cbiAqIFRoZSBjYWNoZWQgcmVhZGluZyB0aGVuIHdlbnQgc3RhbGUsIHRoZSB2ZXJkaWN0IGJlY2FtZSBgdW5rbm93bmAsIGFuZCBldmVyeVxuICogcmVhZCBmZWxsIGJhY2sgdG8gdGhlIHByaW1hcnkgcGVybWFuZW50bHkg4oCUIHNhZmUsIGJ1dCB1bnJlY292ZXJhYmxlIHdpdGhvdXRcbiAqIGEgcmVzdGFydCwgYW5kIHZpc2libGUgb25seSBhcyBQb3N0Z3Jlc1JlYWRDaXJjdWl0T3BlbiAzMCBtaW51dGVzIGxhdGVyLlxuICovXG5jb25zdCBzYW1wbGVUaW1lb3V0TXMgPSAoKSA9PiBlbnZJbnQoJ0RCX1JFQURfTEFHX1NBTVBMRV9USU1FT1VUX01TJywgNTAwMCk7XG5cbi8qKlxuICogUmFjZSBhIHF1ZXJ5IGFnYWluc3QgYSB0aW1lciBzbyB0aGUgY2FsbGVyIGFsd2F5cyByZWdhaW5zIGNvbnRyb2wuXG4gKlxuICogVGhlIGFiYW5kb25lZCBxdWVyeSBpcyBsZWZ0IHRvIHRoZSBwb29sIOKAlCBQb3N0Z3JlcyBrZWVwcyBydW5uaW5nIGl0LCBhbmQgdGhlXG4gKiBwb29sJ3Mgb3duIGlkbGUgaGFuZGxpbmcgcmVjbGFpbXMgdGhlIGNvbm5lY3Rpb24uIFRoYXQgaXMgZGVsaWJlcmF0ZTogdGhlXG4gKiBhbHRlcm5hdGl2ZSBpcyBjYW5jZWxsaW5nIHNlcnZlci1zaWRlLCB3aGljaCBuZWVkcyBhIHNlY29uZCBjb25uZWN0aW9uIGFuZCBhXG4gKiBQSUQsIGFuZCB0aGlzIGlzIGEgMS1yb3cgcmVhZCB3aG9zZSBjb3N0IGlzIGJvdW5kZWQgYW55d2F5LiBXaGF0IG1hdHRlcnMgaXNcbiAqIHRoYXQgYGluRmxpZ2h0YCBpcyByZWxlYXNlZCwgc28gdGhlIG5leHQgcmVhZCByZXRyaWVzLlxuICpcbiAqIGBjbGVhclRpbWVvdXRgIGluIGBmaW5hbGx5YCBpcyBub3QgdGlkaW5lc3M6IGFuIHVuLWNsZWFyZWQgdGltZXIga2VlcHMgdGhlXG4gKiBOb2RlIGV2ZW50IGxvb3AgYWxpdmUsIHdoaWNoIGhhbmdzIGEgdGVzdCBydW4gYW5kLCBpbiBhIHNob3J0LWxpdmVkIHByb2Nlc3MsXG4gKiBkZWxheXMgZXhpdC5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gd2l0aFRpbWVvdXQ8VD4od29yazogUHJvbWlzZTxUPiwgbXM6IG51bWJlciwgd2hhdDogc3RyaW5nKTogUHJvbWlzZTxUPiB7XG4gIGxldCB0aW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWQ7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IFByb21pc2UucmFjZShbXG4gICAgICB3b3JrLFxuICAgICAgbmV3IFByb21pc2U8bmV2ZXI+KChfcmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgIHRpbWVyID0gc2V0VGltZW91dCgoKSA9PiByZWplY3QobmV3IEVycm9yKGAke3doYXR9IHRpbWVkIG91dCBhZnRlciAke21zfW1zYCkpLCBtcyk7XG4gICAgICAgIHRpbWVyLnVucmVmPy4oKTtcbiAgICAgIH0pLFxuICAgIF0pO1xuICB9IGZpbmFsbHkge1xuICAgIGlmICh0aW1lcikgY2xlYXJUaW1lb3V0KHRpbWVyKTtcbiAgfVxufVxuXG4vKiogQSBzYW1wbGUgb2xkZXIgdGhhbiB0aGlzIG1hbnkgaW50ZXJ2YWxzIGlzIHRyZWF0ZWQgYXMgbm8gc2FtcGxlIGF0IGFsbC4gKi9cbmNvbnN0IFNUQUxFX0lOVEVSVkFMUyA9IDM7XG5cbmludGVyZmFjZSBTYW1wbGUge1xuICBsYWdTZWNvbmRzOiBudW1iZXI7XG4gIGF0TXM6IG51bWJlcjtcbn1cblxubGV0IHNhbXBsZTogU2FtcGxlIHwgbnVsbCA9IG51bGw7XG5sZXQgaW5GbGlnaHQgPSBmYWxzZTtcbmxldCBjb25zZWN1dGl2ZUZhaWx1cmVzID0gMDtcblxuZXhwb3J0IHR5cGUgTGFnVmVyZGljdCA9XG4gIC8qKiBObyBzYW1wbGUgeWV0LCBvciB0aGUgbGFzdCBvbmUgaXMgc3RhbGUvZmFpbGVkLiBSZWFkcyB1c2UgdGhlIHByaW1hcnkuICovXG4gIHwgJ3Vua25vd24nXG4gIC8qKiBSZXBsYXkgbGFnIGlzIHdpdGhpbiB0aGUgdGhyZXNob2xkLiAqL1xuICB8ICdvaydcbiAgLyoqIFJlcGxheSBsYWcgaXMgYmV5b25kIHRoZSB0aHJlc2hvbGQuIFJlYWRzIHVzZSB0aGUgcHJpbWFyeS4gKi9cbiAgfCAnbGFnZ2luZyc7XG5cbi8qKlxuICogVGhlIGNpcmN1aXQncyBjdXJyZW50IHN0YXRlLCByZWFkIHN5bmNocm9ub3VzbHkgYnkgdGhlIHJvdXRpbmcgZGVjaXNpb24uXG4gKlxuICogUmV0dXJucyBgdW5rbm93bmAgcmF0aGVyIHRoYW4gdGhyb3dpbmcgb3IgZ3Vlc3Npbmcgd2hlbiB0aGVyZSBpcyBub3RoaW5nXG4gKiB0cnVzdHdvcnRoeSB0byByZXBvcnQsIGFuZCBldmVyeSBjYWxsZXIgdHJlYXRzIGB1bmtub3duYCBhcyBcInVzZSB0aGVcbiAqIHByaW1hcnlcIi5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGxhZ1ZlcmRpY3Qobm93ID0gRGF0ZS5ub3coKSk6IExhZ1ZlcmRpY3Qge1xuICBpZiAoIXNhbXBsZSkgcmV0dXJuICd1bmtub3duJztcbiAgaWYgKG5vdyAtIHNhbXBsZS5hdE1zID4gc2FtcGxlSW50ZXJ2YWxNcygpICogU1RBTEVfSU5URVJWQUxTKSByZXR1cm4gJ3Vua25vd24nO1xuICByZXR1cm4gc2FtcGxlLmxhZ1NlY29uZHMgPiBtYXhMYWdTZWNvbmRzKCkgPyAnbGFnZ2luZycgOiAnb2snO1xufVxuXG4vKipcbiAqIFRoZSBsYWcgcXVlcnksIGFuZCB0aGUgb25lIHN1YnRsZXR5IGluIHRoaXMgd2hvbGUgbW9kdWxlLlxuICpcbiAqIGBub3coKSAtIHBnX2xhc3RfeGFjdF9yZXBsYXlfdGltZXN0YW1wKClgIGlzIHRoZSB1c3VhbCBsYWcgZXhwcmVzc2lvbiBhbmQgaXRcbiAqIGlzIFdST05HIE9OIElUUyBPV046IHRoYXQgdGltZXN0YW1wIGlzIHRoZSBjb21taXQgdGltZSBvZiB0aGUgbGFzdCByZXBsYXllZFxuICogdHJhbnNhY3Rpb24sIHNvIG9uIGFuIGlkbGUgcHJpbWFyeSBpdCBzaW1wbHkgZ2V0cyBvbGRlciBhbmQgb2xkZXIuIEEgc3RhbmRieVxuICogdGhhdCBpcyBwZXJmZWN0bHkgY2F1Z2h0IHVwIG9uIGEgcXVpZXQgc3lzdGVtIHdvdWxkIHJlcG9ydCBtaW51dGVzIG9mIFwibGFnXCJcbiAqIGFuZCB0aGlzIGNpcmN1aXQgd291bGQgc2VuZCBldmVyeSByZWFkIGJhY2sgdG8gdGhlIHByaW1hcnkg4oCUIHBlcm1hbmVudGx5LFxuICogYW5kIG1vc3QgdmlzaWJseSBhdCBuaWdodCB3aGVuIG5vdGhpbmcgaXMgaGFwcGVuaW5nLlxuICpcbiAqIFRoZSBndWFyZCBpcyB0aGUgTFNOIGNvbXBhcmlzb24gZmlyc3Q6IHdoZW4gZXZlcnl0aGluZyByZWNlaXZlZCBoYXMgYmVlblxuICogcmVwbGF5ZWQsIHRoZSBzdGFuZGJ5IGlzIGN1cnJlbnQgYnkgZGVmaW5pdGlvbiwgd2hhdGV2ZXIgdGhlIGNsb2NrIHNheXMuXG4gKiBPbmx5IHdoZW4gdGhlcmUgaXMgdW5yZXBsYXllZCBXQUwgZG9lcyB0aGUgdGltZXN0YW1wIG1lYW4gYW55dGhpbmcuXG4gKi9cbmNvbnN0IExBR19TUUwgPSBgXG4gIFNFTEVDVCBDQVNFXG4gICAgV0hFTiBOT1QgcGdfaXNfaW5fcmVjb3ZlcnkoKSBUSEVOIDBcbiAgICBXSEVOIHBnX2xhc3Rfd2FsX3JlY2VpdmVfbHNuKCkgSVMgTlVMTCBUSEVOIE5VTExcbiAgICBXSEVOIHBnX2xhc3Rfd2FsX3JlY2VpdmVfbHNuKCkgPSBwZ19sYXN0X3dhbF9yZXBsYXlfbHNuKCkgVEhFTiAwXG4gICAgRUxTRSBHUkVBVEVTVCgwLCBFWFRSQUNUKEVQT0NIIEZST00gKG5vdygpIC0gcGdfbGFzdF94YWN0X3JlcGxheV90aW1lc3RhbXAoKSkpKVxuICBFTkQgQVMgbGFnX3NlY29uZHNcbmA7XG5cbi8qKlxuICogUmVmcmVzaCB0aGUgc2FtcGxlIGlmIGl0IGlzIGR1ZS4gRmlyZS1hbmQtZm9yZ2V0OiBuZXZlciB0aHJvd3MsIG5ldmVyXG4gKiByZXR1cm5zIGEgcmVqZWN0ZWQgcHJvbWlzZSwgYW5kIHJlc29sdmVzIGFzIHNvb24gYXMgYSBzYW1wbGUgaXMgbm90IG5lZWRlZC5cbiAqXG4gKiBgcGdfaXNfaW5fcmVjb3ZlcnkoKSA9IGZhbHNlYCBtZWFucyB0aGlzIHBvb2wgaXMgcG9pbnRlZCBhdCBhIFBSSU1BUlksIHdoaWNoXG4gKiBpcyBhIG1pc2NvbmZpZ3VyYXRpb24gd29ydGggc3VyZmFjaW5nIHJhdGhlciB0aGFuIGEgbGFnIG9mIHplcm8g4oCUIGJ1dCBpdCBpc1xuICogcmVwb3J0ZWQgYXMgbGFnIDAgYW55d2F5LCBiZWNhdXNlIHRoZSBhbHRlcm5hdGl2ZSBpcyByZWZ1c2luZyB0byBzZXJ2ZSByZWFkc1xuICogZnJvbSBhIHNlcnZlciB0aGF0IGlzLCBpbiBmYWN0LCBhYmxlIHRvIHNlcnZlIHRoZW0gY29ycmVjdGx5LiBUaGUgd2FybmluZyBpc1xuICogbG9nZ2VkIG9uY2UgcGVyIHRyYW5zaXRpb24gaW5zdGVhZC5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG1heWJlU2FtcGxlTGFnKHBvb2w6IFBvb2wpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3Qgbm93ID0gRGF0ZS5ub3coKTtcbiAgaWYgKGluRmxpZ2h0KSByZXR1cm47XG4gIGlmIChzYW1wbGUgJiYgbm93IC0gc2FtcGxlLmF0TXMgPCBzYW1wbGVJbnRlcnZhbE1zKCkpIHJldHVybjtcbiAgaW5GbGlnaHQgPSB0cnVlO1xuICB0cnkge1xuICAgIGNvbnN0IHJlcyA9IGF3YWl0IHdpdGhUaW1lb3V0KFxuICAgICAgcG9vbC5xdWVyeTx7IGxhZ19zZWNvbmRzOiBzdHJpbmcgfCBudW1iZXIgfCBudWxsIH0+KExBR19TUUwpLFxuICAgICAgc2FtcGxlVGltZW91dE1zKCksXG4gICAgICAncmVhZC1yZXBsaWNhIGxhZyBzYW1wbGUnLFxuICAgICk7XG4gICAgY29uc3QgcmF3ID0gcmVzLnJvd3NbMF0/LmxhZ19zZWNvbmRzO1xuICAgIGlmIChyYXcgPT09IG51bGwgfHwgcmF3ID09PSB1bmRlZmluZWQpIHtcbiAgICAgIC8vIEEgc3RhbmRieSB0aGF0IGhhcyBuZXZlciByZWNlaXZlZCBXQUwuIE5vdCBhbiBlcnJvciwgYnV0IG5vdCBhIHVzYWJsZVxuICAgICAgLy8gcmVhZGluZyBlaXRoZXIg4oCUIGl0IG11c3Qgbm90IGJlIHJlY29yZGVkIGFzIFwiY2F1Z2h0IHVwXCIuXG4gICAgICByZWNvcmRGYWlsdXJlKCdubyBXQUwgcmVjZWl2ZWQgeWV0Jyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnN0IGxhZ1NlY29uZHMgPSBOdW1iZXIocmF3KTtcbiAgICBpZiAoIU51bWJlci5pc0Zpbml0ZShsYWdTZWNvbmRzKSkge1xuICAgICAgcmVjb3JkRmFpbHVyZShgbm9uLW51bWVyaWMgbGFnIHZhbHVlOiAke1N0cmluZyhyYXcpfWApO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoY29uc2VjdXRpdmVGYWlsdXJlcyA+IDApIHtcbiAgICAgIGxvZ2dlci5pbmZvKCdSZWFkLXJlcGxpY2EgbGFnIHNhbXBsaW5nIHJlY292ZXJlZCcsIHsgYWZ0ZXJGYWlsdXJlczogY29uc2VjdXRpdmVGYWlsdXJlcywgbGFnU2Vjb25kcyB9KTtcbiAgICAgIGNvbnNlY3V0aXZlRmFpbHVyZXMgPSAwO1xuICAgIH1cbiAgICBzYW1wbGUgPSB7IGxhZ1NlY29uZHMsIGF0TXM6IERhdGUubm93KCkgfTtcbiAgICBlbWl0R2F1Z2UoJ3Bvc3RncmVzX3JlcGxpY2FfbGFnX3NlY29uZHMnLCB7fSwgbGFnU2Vjb25kcyk7XG4gICAgZW1pdEdhdWdlKCdwb3N0Z3Jlc19yZWFkX2NpcmN1aXRfb3BlbicsIHt9LCBsYWdWZXJkaWN0KCkgPT09ICdvaycgPyAwIDogMSk7XG4gIH0gY2F0Y2ggKGVycikge1xuICAgIHJlY29yZEZhaWx1cmUoZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIubWVzc2FnZSA6IFN0cmluZyhlcnIpKTtcbiAgfSBmaW5hbGx5IHtcbiAgICBpbkZsaWdodCA9IGZhbHNlO1xuICB9XG59XG5cbmZ1bmN0aW9uIHJlY29yZEZhaWx1cmUocmVhc29uOiBzdHJpbmcpOiB2b2lkIHtcbiAgY29uc2VjdXRpdmVGYWlsdXJlcyArPSAxO1xuICAvLyBEaXNjYXJkIHRoZSBwcmV2aW91cyBzYW1wbGUgcmF0aGVyIHRoYW4ga2VlcGluZyBhIHN0YWxlIFwib2tcIjogYSBzYW1wbGVyXG4gIC8vIHRoYXQgY2Fubm90IHJlYWNoIHRoZSBzdGFuZGJ5IGlzIGV4YWN0bHkgd2hlbiByZWFkcyBtdXN0IG5vdCBnbyB0aGVyZS5cbiAgc2FtcGxlID0gbnVsbDtcbiAgZW1pdEdhdWdlKCdwb3N0Z3Jlc19yZWFkX2NpcmN1aXRfb3BlbicsIHt9LCAxKTtcbiAgLy8gTG9nIHRoZSBmaXJzdCBmYWlsdXJlIGFuZCB0aGVuIGJhY2sgb2ZmLCBzbyBhbiB1bnJlYWNoYWJsZSBzdGFuZGJ5IGRvZXMgbm90XG4gIC8vIHByb2R1Y2UgYSBsaW5lIHBlciByZWFkLlxuICBpZiAoY29uc2VjdXRpdmVGYWlsdXJlcyA9PT0gMSB8fCBjb25zZWN1dGl2ZUZhaWx1cmVzICUgMTAwID09PSAwKSB7XG4gICAgbG9nZ2VyLndhcm4oJ1JlYWQtcmVwbGljYSBsYWcgc2FtcGxlIGZhaWxlZDsgcmVhZHMgZmFsbCBiYWNrIHRvIHRoZSBwcmltYXJ5Jywge1xuICAgICAgcmVhc29uLFxuICAgICAgY29uc2VjdXRpdmVGYWlsdXJlcyxcbiAgICB9KTtcbiAgfVxufVxuXG4vKiogVGVzdCBzZWFtOiBmb3JnZXQgdGhlIGNhY2hlZCBzYW1wbGUgYW5kIGZhaWx1cmUgc3RhdGUuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzZXRMYWdTdGF0ZUZvclRlc3RzKCk6IHZvaWQge1xuICBzYW1wbGUgPSBudWxsO1xuICBpbkZsaWdodCA9IGZhbHNlO1xuICBjb25zZWN1dGl2ZUZhaWx1cmVzID0gMDtcbn1cblxuLyoqIFRlc3Qgc2VhbTogaW5zdGFsbCBhIHNhbXBsZSBkaXJlY3RseSwgd2l0aG91dCBhIGRhdGFiYXNlLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldExhZ1NhbXBsZUZvclRlc3RzKGxhZ1NlY29uZHM6IG51bWJlciwgYXRNcyA9IERhdGUubm93KCkpOiB2b2lkIHtcbiAgc2FtcGxlID0geyBsYWdTZWNvbmRzLCBhdE1zIH07XG59XG4iXX0=
|