Socket
Socket
Sign inDemoInstall

@gomomento/sdk-core

Package Overview
Dependencies
4
Maintainers
0
Versions
144
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 1.90.1 to 1.91.0

dist/src/clients/IStorageClient.d.ts

18

dist/src/auth/credential-provider.d.ts

@@ -30,3 +30,3 @@ import { AllEndpoints } from '../internal/utils';

/**
* @returns {boolean} true if connecting to the control plane endpoint connection without TLS; false if using TLS
* @returns {boolean} true if connecting to the control plane endpoint connection with TLS; false if not using TLS
*/

@@ -39,6 +39,14 @@ abstract isControlEndpointSecure(): boolean;

/**
* @returns {boolean} true if connecting to the data plane endpoint connection without TLS; false if using TLS
* @returns {boolean} true if connecting to the data plane endpoint connection with TLS; false if not using TLS
*/
abstract isCacheEndpointSecure(): boolean;
/**
* @returns {string} The host which the Momento client will connect to for Momento storage operations
*/
abstract getStorageEndpoint(): string;
/**
* @returns {boolean} true if connecting to the storage endpoint connection with TLS; false if not using TLS
*/
abstract isStorageEndpointSecure(): boolean;
/**
* @returns {string} The host which the Momento client will connect to for Momento token operations

@@ -48,3 +56,3 @@ */

/**
* @returns {boolean} true if connecting to the token endpoint connection without TLS; false if using TLS
* @returns {boolean} true if connecting to the token endpoint connection with TLS; false if not using TLS
*/

@@ -71,2 +79,4 @@ abstract isTokenEndpointSecure(): boolean;

abstract isControlEndpointSecure(): boolean;
abstract getStorageEndpoint(): string;
abstract isStorageEndpointSecure(): boolean;
abstract getTokenEndpoint(): string;

@@ -111,2 +121,4 @@ abstract isTokenEndpointSecure(): boolean;

isTokenEndpointSecure(): boolean;
getStorageEndpoint(): string;
isStorageEndpointSecure(): boolean;
areEndpointsOverridden(): boolean;

@@ -113,0 +125,0 @@ withMomentoLocal(): CredentialProvider;

@@ -77,2 +77,5 @@ "use strict";

}
if (decodedToken.storageEndpoint === undefined) {
throw new Error('Malformed token; unable to determine storage endpoint. Depending on the type of token you are using, you may need to specify the storageEndpoint explicitly.');
}
this.allEndpoints = {

@@ -88,2 +91,5 @@ controlEndpoint: {

},
storageEndpoint: {
endpoint: decodedToken.storageEndpoint,
},
};

@@ -135,2 +141,11 @@ }

}
getStorageEndpoint() {
return this.allEndpoints.storageEndpoint.endpoint;
}
isStorageEndpointSecure() {
if (this.allEndpoints.storageEndpoint.secureConnection === undefined) {
return true;
}
return this.allEndpoints.storageEndpoint.secureConnection;
}
areEndpointsOverridden() {

@@ -150,2 +165,3 @@ return this.endpointsOverridden;

tokenEndpoint: momentoLocalOverride,
storageEndpoint: momentoLocalOverride,
},

@@ -181,2 +197,2 @@ });

exports.EnvMomentoTokenProvider = EnvMomentoTokenProvider;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVudGlhbC1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL2NyZWRlbnRpYWwtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBSzJCO0FBVTNCLFNBQVMsc0JBQXNCLENBQzdCLGlCQUFvQztJQUVwQyxPQUFRLGlCQUEwQyxDQUFDLFlBQVksS0FBSyxTQUFTLENBQUM7QUFDaEYsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUNyQixpQkFBb0M7SUFFcEMsTUFBTSxZQUFZLEdBQUcsaUJBQWlDLENBQUM7SUFDdkQsT0FBTyxDQUNMLFlBQVksQ0FBQyxhQUFhLEtBQUssU0FBUztRQUN4QyxZQUFZLENBQUMsZUFBZSxLQUFLLFNBQVM7UUFDMUMsWUFBWSxDQUFDLGFBQWEsS0FBSyxTQUFTLENBQ3pDLENBQUM7QUFDSixDQUFDO0FBU0Q7Ozs7O0dBS0c7QUFDSCxNQUFzQixrQkFBa0I7SUErQ3RDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FDNUIsS0FBNEM7UUFFNUMsT0FBTyxJQUFJLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUNmLEtBQTRDO1FBRTVDLE9BQU8sSUFBSSx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FDZixLQUErQztRQUUvQyxPQUFPLElBQUksMEJBQTBCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUNGO0FBaEVELGdEQWdFQztBQUVELE1BQWUsc0JBQXNCO0lBbUJuQyxPQUFPO1FBQ0wsNkRBQTZEO1FBQzdELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFD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QTBCO0lBRXJFOztPQUVHO0lBQ0gsWUFBWSxLQUE0QztRQUN0RCxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3QixLQUFLLEdBQUcsRUFBQyx1QkFBdUIsRUFBRSxLQUFLLEVBQUMsQ0FBQztTQUMxQztRQUNELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNkLE1BQU0sSUFBSSxLQUFLLENBQ2IseUNBQXlDLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxDQUN6RSxDQUFDO1NBQ0g7UUFDRCxLQUFLLENBQUM7WUFDSixTQUFTLEVBQUUsU0FBUztZQUNwQixpQkFBaUIsRUFBRSxLQUFLLENBQUMsaUJBQWlCO1NBQzNDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUMsdUJBQXVCLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBckJELDBEQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFsbEVuZHBvaW50cyxcbiAgZGVjb2RlQXV0aFRva2VuLFxuICBmcm9tRW50cmllcyxcbiAgcG9wdWxhdGVBbGxFbmRwb2ludHNGcm9tQmFzZUVuZHBvaW50LFxufSBmcm9tICcuLi9pbnRlcm5hbC91dGlscyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUVuZHBvaW50T3ZlcnJpZGUge1xuICBiYXNlRW5kcG9pbnQ6IHN0cmluZztcbiAgZW5kcG9pbnRQcmVmaXg/OiBzdHJpbmc7XG4gIHNlY3VyZUNvbm5lY3Rpb24/OiBib29sZWFuO1xufVxuXG5leHBvcnQgdHlwZSBFbmRwb2ludE92ZXJyaWRlcyA9IEJhc2VFbmRwb2ludE92ZXJyaWRlIHwgQWxsRW5kcG9pbnRzO1xuXG5mdW5jdGlvbiBpc0Jhc2VFbmRwb2ludE92ZXJyaWRlKFxuICBlbmRwb2ludE92ZXJyaWRlczogRW5kcG9pbnRPdmVycmlkZXNcbik6IGVuZHBvaW50T3ZlcnJpZGVzIGlzIEJhc2VFbmRwb2ludE92ZXJyaWRlIHtcbiAgcmV0dXJuIChlbmRwb2ludE92ZXJyaWRlcyBhcyBCYXNlRW5kcG9pbnRPdmVycmlkZSkuYmFzZUVuZHBvaW50ICE9PSB1bmRlZmluZWQ7XG59XG5cbmZ1bmN0aW9uIGlzQWxsRW5kcG9pbnRzKFxuICBlbmRwb2ludE92ZXJyaWRlczogRW5kcG9pbnRPdmVycmlkZXNcbik6IGVuZHBvaW50T3ZlcnJpZGVzIGlzIEFsbEVuZHBvaW50cyB7XG4gIGNvbnN0IGFsbEVuZHBvaW50cyA9IGVuZHBvaW50T3ZlcnJpZGVzIGFzIEFsbEVuZHBvaW50cztcbiAgcmV0dXJuIChcbiAgICBhbGxFbmRwb2ludHMuY2FjaGVFbmRwb2ludCAhPT0gdW5kZWZpbmVkICYmXG4gICAgYWxsRW5kcG9pbnRzLmNvbnRyb2xFbmRwb2ludCAhPT0gdW5kZWZpbmVkICYmXG4gICAgYWxsRW5kcG9pbnRzLnRva2VuRW5kcG9pbnQgIT09IHVuZGVmaW5lZFxuICApO1xufVxuXG4vKipcbiAqIEVuY2Fwc3VsYXRlcyBhcmd1bWVudHMgZm9yIGluc3RhbnRpYXRpbmcgYW4gRW52TW9tZW50b1Rva2VuUHJvdmlkZXJcbiAqL1xuaW50ZXJmYWNlIENyZWRlbnRpYWxQcm92aWRlclByb3BzIHtcbiAgZW5kcG9pbnRPdmVycmlkZXM/OiBFbmRwb2ludE92ZXJyaWRlcztcbn1cblxuLyoqXG4gKiBQcm92aWRlcyBpbmZvcm1hdGlvbiB0aGF0IHRoZSBDYWNoZUNsaWVudCBuZWVkcyBpbiBvcmRlciB0byBlc3RhYmxpc2ggYSBjb25uZWN0aW9uIHRvIGFuZCBhdXRoZW50aWNhdGUgd2l0aFxuICogdGhlIE1vbWVudG8gc2VydmljZS5cbiAqIEBleHBvcnRcbiAqIEBpbnRlcmZhY2UgQ3JlZGVudGlhbFByb3ZpZGVyXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBDcmVkZW50aWFsUHJvdmlkZXIge1xuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gQXV0aCB0b2tlbiBwcm92aWRlZCBieSB1c2VyLCByZXF1aXJlZCB0byBhdXRoZW50aWNhdGUgd2l0aCB0aGUgc2VydmljZVxuICAgKi9cbiAgYWJzdHJhY3QgZ2V0QXV0aFRva2VuKCk6IHN0cmluZztcblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gVGhlIGhvc3Qgd2hpY2ggdGhlIE1vbWVudG8gY2xpZW50IHdpbGwgY29ubmVjdCB0byBmb3IgTW9tZW50byBjb250cm9sIHBsYW5lIG9wZXJhdGlvbnNcbiAgICovXG4gIGFic3RyYWN0IGdldENvbnRyb2xFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIGNvbm5lY3RpbmcgdG8gdGhlIGNvbnRyb2wgcGxhbmUgZW5kcG9pbnQgY29ubmVjdGlvbiB3aXRob3V0IFRMUzsgZmFsc2UgaWYgdXNpbmcgVExTXG4gICAqL1xuICBhYnN0cmFjdCBpc0NvbnRyb2xFbmRwb2ludFNlY3VyZSgpOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgaG9zdCB3aGljaCB0aGUgTW9tZW50byBjbGllbnQgd2lsbCBjb25uZWN0IHRvIGZvciBNb21lbnRvIGRhdGEgcGxhbmUgb3BlcmF0aW9uc1xuICAgKi9cbiAgYWJzdHJhY3QgZ2V0Q2FjaGVFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIGNvbm5lY3RpbmcgdG8gdGhlIGRhdGEgcGxhbmUgZW5kcG9pbnQgY29ubmVjdGlvbiB3aXRob3V0IFRMUzsgZmFsc2UgaWYgdXNpbmcgVExTXG4gICAqL1xuICBhYnN0cmFjdCBpc0NhY2hlRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gVGhlIGhvc3Qgd2hpY2ggdGhlIE1vbWVudG8gY2xpZW50IHdpbGwgY29ubmVjdCB0byBmb3IgTW9tZW50byB0b2tlbiBvcGVyYXRpb25zXG4gICAqL1xuICBhYnN0cmFjdCBnZXRUb2tlbkVuZHBvaW50KCk6IHN0cmluZztcblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWYgY29ubmVjdGluZyB0byB0aGUgdG9rZW4gZW5kcG9pbnQgY29ubmVjdGlvbiB3aXRob3V0IFRMUzsgZmFsc2UgaWYgdXNpbmcgVExTXG4gICAqL1xuICBhYnN0cmFjdCBpc1Rva2VuRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbjtcblxuICAvKipcbiAgICogTW9kaWZpZXMgdGhlIGluc3RhbmNlIG9mIHRoZSBjcmVkZW50aWFsIHByb3ZpZGVyIHRvIG92ZXJyaWRlIGVuZHBvaW50cyB0b1xuICAgKiBhbGxvdyBpbnNlY3VyZSBjb25uZWN0aW9ucyB0byB0aGUgbW9tZW50by1sb2NhbCBzZXJ2aWNlIGZvciB0ZXN0aW5nIHB1cnBvc2VzXG4gICAqL1xuICBhYnN0cmFjdCB3aXRoTW9tZW50b0xvY2FsKCk6IENyZWRlbnRpYWxQcm92aWRlcjtcblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWYgdGhlIGVuZHBvaW50cyB3ZXJlIG1hbnVhbGx5IG92ZXJyaWRkZW4gYXQgY29uc3RydWN0aW9uIHRpbWU7IGZhbHNlIG90aGVyd2lzZVxuICAgKi9cbiAgYWJzdHJhY3QgYXJlRW5kcG9pbnRzT3ZlcnJpZGRlbigpOiBib29sZWFuO1xuXG4gIHN0YXRpYyBmcm9tRW52aXJvbm1lbnRWYXJpYWJsZShcbiAgICBwcm9wczogRW52TW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wcyB8IHN0cmluZ1xuICApOiBDcmVkZW50aWFsUHJvdmlkZXIge1xuICAgIHJldHVybiBuZXcgRW52TW9tZW50b1Rva2VuUHJvdmlkZXIocHJvcHMpO1xuICB9XG5cbiAgc3RhdGljIGZyb21FbnZWYXIoXG4gICAgcHJvcHM6IEVudk1vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHMgfCBzdHJpbmdcbiAgKTogQ3JlZGVudGlhbFByb3ZpZGVyIHtcbiAgICByZXR1cm4gbmV3IEVudk1vbWVudG9Ub2tlblByb3ZpZGVyKHByb3BzKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RyaW5nKFxuICAgIHByb3BzOiBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzIHwgc3RyaW5nXG4gICk6IENyZWRlbnRpYWxQcm92aWRlciB7XG4gICAgcmV0dXJuIG5ldyBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlcihwcm9wcyk7XG4gIH1cbn1cblxuYWJzdHJhY3QgY2xhc3MgQ3JlZGVudGlhbFByb3ZpZGVyQmFzZSBpbXBsZW1lbnRzIENyZWRlbnRpYWxQcm92aWRlciB7XG4gIGFic3RyYWN0IGdldEF1dGhUb2tlbigpOiBzdHJpbmc7XG5cbiAgYWJzdHJhY3QgZ2V0Q2FjaGVFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgYWJzdHJhY3QgaXNDYWNoZUVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW47XG5cbiAgYWJzdHJhY3QgZ2V0Q29udHJvbEVuZHBvaW50KCk6IHN0cmluZztcblxuICBhYnN0cmFjdCBpc0NvbnRyb2xFbmRwb2ludFNlY3VyZSgpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IGdldFRva2VuRW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGlzVG9rZW5FbmRwb2ludFNlY3VyZSgpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IGFyZUVuZHBvaW50c092ZXJyaWRkZW4oKTogYm9vbGVhbjtcblxuICBhYnN0cmFjdCB3aXRoTW9tZW50b0xvY2FsKCk6IENyZWRlbnRpYWxQcm92aWRlcjtcblxuICB2YWx1ZU9mKCk6IG9iamVjdCB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuICAgIGNvbnN0IGVudHJpZXMgPSBPYmplY3QuZW50cmllcyh0aGlzKS5maWx0ZXIoKFtrXSkgPT4gayAhPT0gJ2F1dGhUb2tlbicpO1xuICAgIGNvbnN0IGNsb25lID0gZnJvbUVudHJpZXMoZW50cmllcyk7XG4gICAgcmV0dXJuIGNsb25lLnZhbHVlT2YoKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ01vbWVudG9BcGlLZXlQcm92aWRlclByb3BzXG4gIGV4dGVuZHMgQ3JlZGVudGlhbFByb3ZpZGVyUHJvcHMge1xuICAvKipcbiAgICogYXBpS2V5IHRoZSBtb21lbnRvIEFQSSBrZXlcbiAgICovXG4gIGFwaUtleTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ01vbWVudG9BdXRoVG9rZW5Qcm92aWRlclByb3BzXG4gIGV4dGVuZHMgQ3JlZGVudGlhbFByb3ZpZGVyUHJvcHMge1xuICAvKipcbiAgICogYXV0aFRva2VuIHRoZSBtb21lbnRvIGF1dGggdG9rZW5cbiAgICovXG4gIGF1dGhUb2tlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzID1cbiAgfCBTdHJpbmdNb21lbnRvQXBpS2V5UHJvdmlkZXJQcm9wc1xuICB8IFN0cmluZ01vbWVudG9BdXRoVG9rZW5Qcm92aWRlclByb3BzO1xuXG4vKipcbiAqIFJlYWRzIGFuZCBwYXJzZXMgYSBtb21lbnRvIGF1dGggdG9rZW4gc3RvcmVkIGluIGEgU3RyaW5nXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGNsYXNzIFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyIGV4dGVuZHMgQ3JlZGVudGlhbFByb3ZpZGVyQmFzZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgYXBpS2V5OiBzdHJpbmc7XG4gIHByaXZhdGUgcmVhZG9ubHkgYWxsRW5kcG9pbnRzOiBBbGxFbmRwb2ludHM7XG4gIHByaXZhdGUgcmVhZG9ubHkgZW5kcG9pbnRzT3ZlcnJpZGRlbjogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHBhcmFtIHtTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzfSBwcm9wcyBjb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIHRoZSB0b2tlbiBwcm92aWRlclxuICAgKi9cbiAgY29uc3RydWN0b3IocHJvcHM6IFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHMgfCBzdHJpbmcpIHtcbiAgICBpZiAodHlwZW9mIHByb3BzID09PSAnc3RyaW5nJykge1xuICAgICAgcHJvcHMgPSB7YXBpS2V5OiBwcm9wc307XG4gICAgfVxuICAgIHN1cGVyKCk7XG4gICAgbGV0IGtleTogc3RyaW5nO1xuICAgIGlmICgnYXV0aFRva2VuJyBpbiBwcm9wcykge1xuICAgICAga2V5ID0gcHJvcHMuYXV0aFRva2VuO1xuICAgIH0gZWxzZSBpZiAoJ2FwaUtleScgaW4gcHJvcHMpIHtcbiAgICAgIGtleSA9IHByb3BzLmFwaUtleTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNaXNzaW5nIHJlcXVpcmVkIHByb3BlcnR5OiBhdXRoVG9rZW4gb3IgYXBpS2V5Jyk7XG4gICAgfVxuICAgIGNvbnN0IGRlY29kZWRUb2tlbiA9IGRlY29kZUF1dGhUb2tlbihrZXkpO1xuICAgIHRoaXMuYXBpS2V5ID0gZGVjb2RlZFRva2VuLmF1dGhUb2tlbjtcbiAgICBpZiAocHJvcHMuZW5kcG9pbnRPdmVycmlkZXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy5lbmRwb2ludHNPdmVycmlkZGVuID0gZmFsc2U7XG4gICAgICBpZiAoZGVjb2RlZFRva2VuLmNvbnRyb2xFbmRwb2ludCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAnTWFsZm9ybWVkIHRva2VuOyB1bmFibGUgdG8gZGV0ZXJtaW5lIGNvbnRyb2wgZW5kcG9pbnQuICBEZXBlbmRpbmcgb24gdGhlIHR5cGUgb2YgdG9rZW4geW91IGFyZSB1c2luZywgeW91IG1heSBuZWVkIHRvIHNwZWNpZnkgdGhlIGNvbnRyb2xFbmRwb2ludCBleHBsaWNpdGx5LidcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWNvZGVkVG9rZW4uY2FjaGVFbmRwb2ludCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAnTWFsZm9ybWVkIHRva2VuOyB1bmFibGUgdG8gZGV0ZXJtaW5lIGNhY2hlIGVuZHBvaW50LiAgRGVwZW5kaW5nIG9uIHRoZSB0eXBlIG9mIHRva2VuIHlvdSBhcmUgdXNpbmcsIHlvdSBtYXkgbmVlZCB0byBzcGVjaWZ5IHRoZSBjYWNoZUVuZHBvaW50IGV4cGxpY2l0bHkuJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKGRlY29kZWRUb2tlbi50b2tlbkVuZHBvaW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdNYWxmb3JtZWQgdG9rZW47IHVuYWJsZSB0byBkZXRlcm1pbmUgdG9rZW4gZW5kcG9pbnQuICBEZXBlbmRpbmcgb24gdGhlIHR5cGUgb2YgdG9rZW4geW91IGFyZSB1c2luZywgeW91IG1heSBuZWVkIHRvIHNwZWNpZnkgdGhlIHRva2VuRW5kcG9pbnQgZXhwbGljaXRseS4nXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICB0aGlzLmFsbEVuZHBvaW50cyA9IHtcbiAgICAgICAgY29udHJvbEVuZHBvaW50OiB7XG4gICAgICAgICAgZW5kcG9pbnQ6IGRlY29kZWRUb2tlbi5jb250cm9sRW5kcG9pbnQsXG4gICAgICAgIH0sXG4gICAgICAgIGNhY2hlRW5kcG9pbnQ6IHtcbiAgICAgICAgICBlbmRwb2ludDogZGVjb2RlZFRva2VuLmNhY2hlRW5kcG9pbnQsXG4gICAgICAgIH0sXG4gICAgICAgIHRva2VuRW5kcG9pbnQ6IHtcbiAgICAgICAgICBlbmRwb2ludDogZGVjb2RlZFRva2VuLnRva2VuRW5kcG9pbnQsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH0gZWxzZSBpZiAoaXNBbGxFbmRwb2ludHMocHJvcHMuZW5kcG9pbnRPdmVycmlkZXMpKSB7XG4gICAgICB0aGlzLmVuZHBvaW50c092ZXJyaWRkZW4gPSB0cnVlO1xuICAgICAgdGhpcy5hbGxFbmRwb2ludHMgPSBwcm9wcy5lbmRwb2ludE92ZXJyaWRlcztcbiAgICB9IGVsc2UgaWYgKGlzQmFzZUVuZHBvaW50T3ZlcnJpZGUocHJvcHMuZW5kcG9pbnRPdmVycmlkZXMpKSB7XG4gICAgICB0aGlzLmVuZHBvaW50c092ZXJyaWRkZW4gPSB0cnVlO1xuICAgICAgdGhpcy5hbGxFbmRwb2ludHMgPSBwb3B1bGF0ZUFsbEVuZHBvaW50c0Zyb21CYXNlRW5kcG9pbnQoXG4gICAgICAgIHByb3BzLmVuZHBvaW50T3ZlcnJpZGVzXG4gICAgICApO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvcmVzdHJpY3QtdGVtcGxhdGUtZXhwcmVzc2lvbnNcbiAgICAgICAgYFVuc3VwcG9ydGVkIGVuZHBvaW50T3ZlcnJpZGVzOiAke3Byb3BzLmVuZHBvaW50T3ZlcnJpZGVzfWBcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgZ2V0QXV0aFRva2VuKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYXBpS2V5O1xuICB9XG5cbiAgZ2V0Q2FjaGVFbmRwb2ludCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFsbEVuZHBvaW50cy5jYWNoZUVuZHBvaW50LmVuZHBvaW50O1xuICB9XG5cbiAgaXNDYWNoZUVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmFsbEVuZHBvaW50cy5jYWNoZUVuZHBvaW50LnNlY3VyZUNvbm5lY3Rpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmFsbEVuZHBvaW50cy5jYWNoZUVuZHBvaW50LnNlY3VyZUNvbm5lY3Rpb247XG4gIH1cblxuICBnZXRDb250cm9sRW5kcG9pbnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hbGxFbmRwb2ludHMuY29udHJvbEVuZHBvaW50LmVuZHBvaW50O1xuICB9XG5cbiAgaXNDb250cm9sRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuYWxsRW5kcG9pbnRzLmNvbnRyb2xFbmRwb2ludC5zZWN1cmVDb25uZWN0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5hbGxFbmRwb2ludHMuY29udHJvbEVuZHBvaW50LnNlY3VyZUNvbm5lY3Rpb247XG4gIH1cblxuICBnZXRUb2tlbkVuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWxsRW5kcG9pbnRzLnRva2VuRW5kcG9pbnQuZW5kcG9pbnQ7XG4gIH1cblxuICBpc1Rva2VuRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuYWxsRW5kcG9pbnRzLnRva2VuRW5kcG9pbnQuc2VjdXJlQ29ubmVjdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYWxsRW5kcG9pbnRzLnRva2VuRW5kcG9pbnQuc2VjdXJlQ29ubmVjdGlvbjtcbiAgfVxuXG4gIGFyZUVuZHBvaW50c092ZXJyaWRkZW4oKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZW5kcG9pbnRzT3ZlcnJpZGRlbjtcbiAgfVxuXG4gIHdpdGhNb21lbnRvTG9jYWwoKTogQ3JlZGVudGlhbFByb3ZpZGVyIHtcbiAgICBjb25zdCBtb21lbnRvTG9jYWxPdmVycmlkZSA9IHtcbiAgICAgIGVuZHBvaW50OiAnMTI3LjAuMC4xOjgwODAnLFxuICAgICAgc2VjdXJlQ29ubmVjdGlvbjogZmFsc2UsXG4gICAgfTtcbiAgICByZXR1cm4gbmV3IFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyKHtcbiAgICAgIGF1dGhUb2tlbjogdGhpcy5hcGlLZXksXG4gICAgICBlbmRwb2ludE92ZXJyaWRlczoge1xuICAgICAgICBjYWNoZUVuZHBvaW50OiBtb21lbnRvTG9jYWxPdmVycmlkZSxcbiAgICAgICAgY29udHJvbEVuZHBvaW50OiBtb21lbnRvTG9jYWxPdmVycmlkZSxcbiAgICAgICAgdG9rZW5FbmRwb2ludDogbW9tZW50b0xvY2FsT3ZlcnJpZGUsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRW52TW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wcyBleHRlbmRzIENyZWRlbnRpYWxQcm92aWRlclByb3BzIHtcbiAgLyoqXG4gICAqIHRoZSBuYW1lIG9mIHRoZSBlbnZpcm9ubWVudCB2YXJpYWJsZSBmcm9tIHdoaWNoIHRoZSBhdXRoIHRva2VuIHdpbGwgYmUgcmVhZFxuICAgKi9cbiAgZW52aXJvbm1lbnRWYXJpYWJsZU5hbWU6IHN0cmluZztcbn1cblxuLyoqXG4gKiBSZWFkcyBhbmQgcGFyc2VzIGEgbW9tZW50byBhdXRoIHRva2VuIHN0b3JlZCBhcyBhbiBlbnZpcm9ubWVudCB2YXJpYWJsZS5cbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBFbnZNb21lbnRvVG9rZW5Qcm92aWRlclxuICovXG5leHBvcnQgY2xhc3MgRW52TW9tZW50b1Rva2VuUHJvdmlkZXIgZXh0ZW5kcyBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlciB7XG4gIGVudmlyb25tZW50VmFyaWFibGVOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBAcGFyYW0ge0Vudk1vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHN9IHByb3BzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHRva2VuIHByb3ZpZGVyXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wczogRW52TW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wcyB8IHN0cmluZykge1xuICAgIGlmICh0eXBlb2YgcHJvcHMgPT09ICdzdHJpbmcnKSB7XG4gICAgICBwcm9wcyA9IHtlbnZpcm9ubWVudFZhcmlhYmxlTmFtZTogcHJvcHN9O1xuICAgIH1cbiAgICBjb25zdCBhdXRoVG9rZW4gPSBwcm9jZXNzLmVudltwcm9wcy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZV07XG4gICAgaWYgKCFhdXRoVG9rZW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYE1pc3NpbmcgcmVxdWlyZWQgZW52aXJvbm1lbnQgdmFyaWFibGUgJHtwcm9wcy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZX1gXG4gICAgICApO1xuICAgIH1cbiAgICBzdXBlcih7XG4gICAgICBhdXRoVG9rZW46IGF1dGhUb2tlbixcbiAgICAgIGVuZHBvaW50T3ZlcnJpZGVzOiBwcm9wcy5lbmRwb2ludE92ZXJyaWRlcyxcbiAgICB9KTtcbiAgICB0aGlzLmVudmlyb25tZW50VmFyaWFibGVOYW1lID0gcHJvcHMuZW52aXJvbm1lbnRWYXJpYWJsZU5hbWU7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlZGVudGlhbC1wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hdXRoL2NyZWRlbnRpYWwtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkNBSzJCO0FBVTNCLFNBQVMsc0JBQXNCLENBQzdCLGlCQUFvQztJQUVwQyxPQUFRLGlCQUEwQyxDQUFDLFlBQVksS0FBSyxTQUFTLENBQUM7QUFDaEYsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUNyQixpQkFBb0M7SUFFcEMsTUFBTSxZQUFZLEdBQUcsaUJBQWlDLENBQUM7SUFDdkQsT0FBTyxDQUNMLFlBQVksQ0FBQyxhQUFhLEtBQUssU0FBUztRQUN4QyxZQUFZLENBQUMsZUFBZSxLQUFLLFNBQVM7UUFDMUMsWUFBWSxDQUFDLGFBQWEsS0FBSyxTQUFTLENBQ3pDLENBQUM7QUFDSixDQUFDO0FBU0Q7Ozs7O0dBS0c7QUFDSCxNQUFzQixrQkFBa0I7SUF5RHRDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FDNUIsS0FBNEM7UUFFNUMsT0FBTyxJQUFJLHVCQUF1QixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUNmLEtBQTRDO1FBRTVDLE9BQU8sSUFBSSx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FDZixLQUErQztRQUUvQyxPQUFPLElBQUksMEJBQTBCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0MsQ0FBQztDQUNGO0FBMUVELGdEQTBFQztBQUVELE1BQWUsc0JBQXNCO0lBdUJuQyxPQUFPO1FBQ0wsNkRBQTZEO1FBQzdELE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLFdBQVcsQ0FBQyxDQUFD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XG4gIGRlY29kZUF1dGhUb2tlbixcbiAgZnJvbUVudHJpZXMsXG4gIHBvcHVsYXRlQWxsRW5kcG9pbnRzRnJvbUJhc2VFbmRwb2ludCxcbn0gZnJvbSAnLi4vaW50ZXJuYWwvdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2VFbmRwb2ludE92ZXJyaWRlIHtcbiAgYmFzZUVuZHBvaW50OiBzdHJpbmc7XG4gIGVuZHBvaW50UHJlZml4Pzogc3RyaW5nO1xuICBzZWN1cmVDb25uZWN0aW9uPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IHR5cGUgRW5kcG9pbnRPdmVycmlkZXMgPSBCYXNlRW5kcG9pbnRPdmVycmlkZSB8IEFsbEVuZHBvaW50cztcblxuZnVuY3Rpb24gaXNCYXNlRW5kcG9pbnRPdmVycmlkZShcbiAgZW5kcG9pbnRPdmVycmlkZXM6IEVuZHBvaW50T3ZlcnJpZGVzXG4pOiBlbmRwb2ludE92ZXJyaWRlcyBpcyBCYXNlRW5kcG9pbnRPdmVycmlkZSB7XG4gIHJldHVybiAoZW5kcG9pbnRPdmVycmlkZXMgYXMgQmFzZUVuZHBvaW50T3ZlcnJpZGUpLmJhc2VFbmRwb2ludCAhPT0gdW5kZWZpbmVkO1xufVxuXG5mdW5jdGlvbiBpc0FsbEVuZHBvaW50cyhcbiAgZW5kcG9pbnRPdmVycmlkZXM6IEVuZHBvaW50T3ZlcnJpZGVzXG4pOiBlbmRwb2ludE92ZXJyaWRlcyBpcyBBbGxFbmRwb2ludHMge1xuICBjb25zdCBhbGxFbmRwb2ludHMgPSBlbmRwb2ludE92ZXJyaWRlcyBhcyBBbGxFbmRwb2ludHM7XG4gIHJldHVybiAoXG4gICAgYWxsRW5kcG9pbnRzLmNhY2hlRW5kcG9pbnQgIT09IHVuZGVmaW5lZCAmJlxuICAgIGFsbEVuZHBvaW50cy5jb250cm9sRW5kcG9pbnQgIT09IHVuZGVmaW5lZCAmJlxuICAgIGFsbEVuZHBvaW50cy50b2tlbkVuZHBvaW50ICE9PSB1bmRlZmluZWRcbiAgKTtcbn1cblxuLyoqXG4gKiBFbmNhcHN1bGF0ZXMgYXJndW1lbnRzIGZvciBpbnN0YW50aWF0aW5nIGFuIEVudk1vbWVudG9Ub2tlblByb3ZpZGVyXG4gKi9cbmludGVyZmFjZSBDcmVkZW50aWFsUHJvdmlkZXJQcm9wcyB7XG4gIGVuZHBvaW50T3ZlcnJpZGVzPzogRW5kcG9pbnRPdmVycmlkZXM7XG59XG5cbi8qKlxuICogUHJvdmlkZXMgaW5mb3JtYXRpb24gdGhhdCB0aGUgQ2FjaGVDbGllbnQgbmVlZHMgaW4gb3JkZXIgdG8gZXN0YWJsaXNoIGEgY29ubmVjdGlvbiB0byBhbmQgYXV0aGVudGljYXRlIHdpdGhcbiAqIHRoZSBNb21lbnRvIHNlcnZpY2UuXG4gKiBAZXhwb3J0XG4gKiBAaW50ZXJmYWNlIENyZWRlbnRpYWxQcm92aWRlclxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ3JlZGVudGlhbFByb3ZpZGVyIHtcbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IEF1dGggdG9rZW4gcHJvdmlkZWQgYnkgdXNlciwgcmVxdWlyZWQgdG8gYXV0aGVudGljYXRlIHdpdGggdGhlIHNlcnZpY2VcbiAgICovXG4gIGFic3RyYWN0IGdldEF1dGhUb2tlbigpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBob3N0IHdoaWNoIHRoZSBNb21lbnRvIGNsaWVudCB3aWxsIGNvbm5lY3QgdG8gZm9yIE1vbWVudG8gY29udHJvbCBwbGFuZSBvcGVyYXRpb25zXG4gICAqL1xuICBhYnN0cmFjdCBnZXRDb250cm9sRW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gdHJ1ZSBpZiBjb25uZWN0aW5nIHRvIHRoZSBjb250cm9sIHBsYW5lIGVuZHBvaW50IGNvbm5lY3Rpb24gd2l0aCBUTFM7IGZhbHNlIGlmIG5vdCB1c2luZyBUTFNcbiAgICovXG4gIGFic3RyYWN0IGlzQ29udHJvbEVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBob3N0IHdoaWNoIHRoZSBNb21lbnRvIGNsaWVudCB3aWxsIGNvbm5lY3QgdG8gZm9yIE1vbWVudG8gZGF0YSBwbGFuZSBvcGVyYXRpb25zXG4gICAqL1xuICBhYnN0cmFjdCBnZXRDYWNoZUVuZHBvaW50KCk6IHN0cmluZztcblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWYgY29ubmVjdGluZyB0byB0aGUgZGF0YSBwbGFuZSBlbmRwb2ludCBjb25uZWN0aW9uIHdpdGggVExTOyBmYWxzZSBpZiBub3QgdXNpbmcgVExTXG4gICAqL1xuICBhYnN0cmFjdCBpc0NhY2hlRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gVGhlIGhvc3Qgd2hpY2ggdGhlIE1vbWVudG8gY2xpZW50IHdpbGwgY29ubmVjdCB0byBmb3IgTW9tZW50byBzdG9yYWdlIG9wZXJhdGlvbnNcbiAgICovXG4gIGFic3RyYWN0IGdldFN0b3JhZ2VFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIGNvbm5lY3RpbmcgdG8gdGhlIHN0b3JhZ2UgZW5kcG9pbnQgY29ubmVjdGlvbiB3aXRoIFRMUzsgZmFsc2UgaWYgbm90IHVzaW5nIFRMU1xuICAgKi9cbiAgYWJzdHJhY3QgaXNTdG9yYWdlRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbjtcblxuICAvKipcbiAgICogQHJldHVybnMge3N0cmluZ30gVGhlIGhvc3Qgd2hpY2ggdGhlIE1vbWVudG8gY2xpZW50IHdpbGwgY29ubmVjdCB0byBmb3IgTW9tZW50byB0b2tlbiBvcGVyYXRpb25zXG4gICAqL1xuICBhYnN0cmFjdCBnZXRUb2tlbkVuZHBvaW50KCk6IHN0cmluZztcblxuICAvKipcbiAgICogQHJldHVybnMge2Jvb2xlYW59IHRydWUgaWYgY29ubmVjdGluZyB0byB0aGUgdG9rZW4gZW5kcG9pbnQgY29ubmVjdGlvbiB3aXRoIFRMUzsgZmFsc2UgaWYgbm90IHVzaW5nIFRMU1xuICAgKi9cbiAgYWJzdHJhY3QgaXNUb2tlbkVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE1vZGlmaWVzIHRoZSBpbnN0YW5jZSBvZiB0aGUgY3JlZGVudGlhbCBwcm92aWRlciB0byBvdmVycmlkZSBlbmRwb2ludHMgdG9cbiAgICogYWxsb3cgaW5zZWN1cmUgY29ubmVjdGlvbnMgdG8gdGhlIG1vbWVudG8tbG9jYWwgc2VydmljZSBmb3IgdGVzdGluZyBwdXJwb3Nlc1xuICAgKi9cbiAgYWJzdHJhY3Qgd2l0aE1vbWVudG9Mb2NhbCgpOiBDcmVkZW50aWFsUHJvdmlkZXI7XG5cbiAgLyoqXG4gICAqIEByZXR1cm5zIHtib29sZWFufSB0cnVlIGlmIHRoZSBlbmRwb2ludHMgd2VyZSBtYW51YWxseSBvdmVycmlkZGVuIGF0IGNvbnN0cnVjdGlvbiB0aW1lOyBmYWxzZSBvdGhlcndpc2VcbiAgICovXG4gIGFic3RyYWN0IGFyZUVuZHBvaW50c092ZXJyaWRkZW4oKTogYm9vbGVhbjtcblxuICBzdGF0aWMgZnJvbUVudmlyb25tZW50VmFyaWFibGUoXG4gICAgcHJvcHM6IEVudk1vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHMgfCBzdHJpbmdcbiAgKTogQ3JlZGVudGlhbFByb3ZpZGVyIHtcbiAgICByZXR1cm4gbmV3IEVudk1vbWVudG9Ub2tlblByb3ZpZGVyKHByb3BzKTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRW52VmFyKFxuICAgIHByb3BzOiBFbnZNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzIHwgc3RyaW5nXG4gICk6IENyZWRlbnRpYWxQcm92aWRlciB7XG4gICAgcmV0dXJuIG5ldyBFbnZNb21lbnRvVG9rZW5Qcm92aWRlcihwcm9wcyk7XG4gIH1cblxuICBzdGF0aWMgZnJvbVN0cmluZyhcbiAgICBwcm9wczogU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wcyB8IHN0cmluZ1xuICApOiBDcmVkZW50aWFsUHJvdmlkZXIge1xuICAgIHJldHVybiBuZXcgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXIocHJvcHMpO1xuICB9XG59XG5cbmFic3RyYWN0IGNsYXNzIENyZWRlbnRpYWxQcm92aWRlckJhc2UgaW1wbGVtZW50cyBDcmVkZW50aWFsUHJvdmlkZXIge1xuICBhYnN0cmFjdCBnZXRBdXRoVG9rZW4oKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGdldENhY2hlRW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGlzQ2FjaGVFbmRwb2ludFNlY3VyZSgpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IGdldENvbnRyb2xFbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgYWJzdHJhY3QgaXNDb250cm9sRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbjtcblxuICBhYnN0cmFjdCBnZXRTdG9yYWdlRW5kcG9pbnQoKTogc3RyaW5nO1xuXG4gIGFic3RyYWN0IGlzU3RvcmFnZUVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW47XG5cbiAgYWJzdHJhY3QgZ2V0VG9rZW5FbmRwb2ludCgpOiBzdHJpbmc7XG5cbiAgYWJzdHJhY3QgaXNUb2tlbkVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW47XG5cbiAgYWJzdHJhY3QgYXJlRW5kcG9pbnRzT3ZlcnJpZGRlbigpOiBib29sZWFuO1xuXG4gIGFic3RyYWN0IHdpdGhNb21lbnRvTG9jYWwoKTogQ3JlZGVudGlhbFByb3ZpZGVyO1xuXG4gIHZhbHVlT2YoKTogb2JqZWN0IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgY29uc3QgZW50cmllcyA9IE9iamVjdC5lbnRyaWVzKHRoaXMpLmZpbHRlcigoW2tdKSA9PiBrICE9PSAnYXV0aFRva2VuJyk7XG4gICAgY29uc3QgY2xvbmUgPSBmcm9tRW50cmllcyhlbnRyaWVzKTtcbiAgICByZXR1cm4gY2xvbmUudmFsdWVPZigpO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RyaW5nTW9tZW50b0FwaUtleVByb3ZpZGVyUHJvcHNcbiAgZXh0ZW5kcyBDcmVkZW50aWFsUHJvdmlkZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBhcGlLZXkgdGhlIG1vbWVudG8gQVBJIGtleVxuICAgKi9cbiAgYXBpS2V5OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RyaW5nTW9tZW50b0F1dGhUb2tlblByb3ZpZGVyUHJvcHNcbiAgZXh0ZW5kcyBDcmVkZW50aWFsUHJvdmlkZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBhdXRoVG9rZW4gdGhlIG1vbWVudG8gYXV0aCB0b2tlblxuICAgKi9cbiAgYXV0aFRva2VuOiBzdHJpbmc7XG59XG5cbmV4cG9ydCB0eXBlIFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHMgPVxuICB8IFN0cmluZ01vbWVudG9BcGlLZXlQcm92aWRlclByb3BzXG4gIHwgU3RyaW5nTW9tZW50b0F1dGhUb2tlblByb3ZpZGVyUHJvcHM7XG5cbi8qKlxuICogUmVhZHMgYW5kIHBhcnNlcyBhIG1vbWVudG8gYXV0aCB0b2tlbiBzdG9yZWQgaW4gYSBTdHJpbmdcbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlclxuICovXG5leHBvcnQgY2xhc3MgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXIgZXh0ZW5kcyBDcmVkZW50aWFsUHJvdmlkZXJCYXNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBhcGlLZXk6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBhbGxFbmRwb2ludHM6IEFsbEVuZHBvaW50cztcbiAgcHJpdmF0ZSByZWFkb25seSBlbmRwb2ludHNPdmVycmlkZGVuOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBAcGFyYW0ge1N0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyUHJvcHN9IHByb3BzIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgdGhlIHRva2VuIHByb3ZpZGVyXG4gICAqL1xuICBjb25zdHJ1Y3Rvcihwcm9wczogU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wcyB8IHN0cmluZykge1xuICAgIGlmICh0eXBlb2YgcHJvcHMgPT09ICdzdHJpbmcnKSB7XG4gICAgICBwcm9wcyA9IHthcGlLZXk6IHByb3BzfTtcbiAgICB9XG4gICAgc3VwZXIoKTtcbiAgICBsZXQga2V5OiBzdHJpbmc7XG4gICAgaWYgKCdhdXRoVG9rZW4nIGluIHByb3BzKSB7XG4gICAgICBrZXkgPSBwcm9wcy5hdXRoVG9rZW47XG4gICAgfSBlbHNlIGlmICgnYXBpS2V5JyBpbiBwcm9wcykge1xuICAgICAga2V5ID0gcHJvcHMuYXBpS2V5O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01pc3NpbmcgcmVxdWlyZWQgcHJvcGVydHk6IGF1dGhUb2tlbiBvciBhcGlLZXknKTtcbiAgICB9XG4gICAgY29uc3QgZGVjb2RlZFRva2VuID0gZGVjb2RlQXV0aFRva2VuKGtleSk7XG4gICAgdGhpcy5hcGlLZXkgPSBkZWNvZGVkVG9rZW4uYXV0aFRva2VuO1xuICAgIGlmIChwcm9wcy5lbmRwb2ludE92ZXJyaWRlcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmVuZHBvaW50c092ZXJyaWRkZW4gPSBmYWxzZTtcbiAgICAgIGlmIChkZWNvZGVkVG9rZW4uY29udHJvbEVuZHBvaW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdNYWxmb3JtZWQgdG9rZW47IHVuYWJsZSB0byBkZXRlcm1pbmUgY29udHJvbCBlbmRwb2ludC4gIERlcGVuZGluZyBvbiB0aGUgdHlwZSBvZiB0b2tlbiB5b3UgYXJlIHVzaW5nLCB5b3UgbWF5IG5lZWQgdG8gc3BlY2lmeSB0aGUgY29udHJvbEVuZHBvaW50IGV4cGxpY2l0bHkuJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgICAgaWYgKGRlY29kZWRUb2tlbi5jYWNoZUVuZHBvaW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdNYWxmb3JtZWQgdG9rZW47IHVuYWJsZSB0byBkZXRlcm1pbmUgY2FjaGUgZW5kcG9pbnQuICBEZXBlbmRpbmcgb24gdGhlIHR5cGUgb2YgdG9rZW4geW91IGFyZSB1c2luZywgeW91IG1heSBuZWVkIHRvIHNwZWNpZnkgdGhlIGNhY2hlRW5kcG9pbnQgZXhwbGljaXRseS4nXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgICBpZiAoZGVjb2RlZFRva2VuLnRva2VuRW5kcG9pbnQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgJ01hbGZvcm1lZCB0b2tlbjsgdW5hYmxlIHRvIGRldGVybWluZSB0b2tlbiBlbmRwb2ludC4gIERlcGVuZGluZyBvbiB0aGUgdHlwZSBvZiB0b2tlbiB5b3UgYXJlIHVzaW5nLCB5b3UgbWF5IG5lZWQgdG8gc3BlY2lmeSB0aGUgdG9rZW5FbmRwb2ludCBleHBsaWNpdGx5LidcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGlmIChkZWNvZGVkVG9rZW4uc3RvcmFnZUVuZHBvaW50ID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgICdNYWxmb3JtZWQgdG9rZW47IHVuYWJsZSB0byBkZXRlcm1pbmUgc3RvcmFnZSBlbmRwb2ludC4gIERlcGVuZGluZyBvbiB0aGUgdHlwZSBvZiB0b2tlbiB5b3UgYXJlIHVzaW5nLCB5b3UgbWF5IG5lZWQgdG8gc3BlY2lmeSB0aGUgc3RvcmFnZUVuZHBvaW50IGV4cGxpY2l0bHkuJ1xuICAgICAgICApO1xuICAgICAgfVxuICAgICAgdGhpcy5hbGxFbmRwb2ludHMgPSB7XG4gICAgICAgIGNvbnRyb2xFbmRwb2ludDoge1xuICAgICAgICAgIGVuZHBvaW50OiBkZWNvZGVkVG9rZW4uY29udHJvbEVuZHBvaW50LFxuICAgICAgICB9LFxuICAgICAgICBjYWNoZUVuZHBvaW50OiB7XG4gICAgICAgICAgZW5kcG9pbnQ6IGRlY29kZWRUb2tlbi5jYWNoZUVuZHBvaW50LFxuICAgICAgICB9LFxuICAgICAgICB0b2tlbkVuZHBvaW50OiB7XG4gICAgICAgICAgZW5kcG9pbnQ6IGRlY29kZWRUb2tlbi50b2tlbkVuZHBvaW50LFxuICAgICAgICB9LFxuICAgICAgICBzdG9yYWdlRW5kcG9pbnQ6IHtcbiAgICAgICAgICBlbmRwb2ludDogZGVjb2RlZFRva2VuLnN0b3JhZ2VFbmRwb2ludCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSBlbHNlIGlmIChpc0FsbEVuZHBvaW50cyhwcm9wcy5lbmRwb2ludE92ZXJyaWRlcykpIHtcbiAgICAgIHRoaXMuZW5kcG9pbnRzT3ZlcnJpZGRlbiA9IHRydWU7XG4gICAgICB0aGlzLmFsbEVuZHBvaW50cyA9IHByb3BzLmVuZHBvaW50T3ZlcnJpZGVzO1xuICAgIH0gZWxzZSBpZiAoaXNCYXNlRW5kcG9pbnRPdmVycmlkZShwcm9wcy5lbmRwb2ludE92ZXJyaWRlcykpIHtcbiAgICAgIHRoaXMuZW5kcG9pbnRzT3ZlcnJpZGRlbiA9IHRydWU7XG4gICAgICB0aGlzLmFsbEVuZHBvaW50cyA9IHBvcHVsYXRlQWxsRW5kcG9pbnRzRnJvbUJhc2VFbmRwb2ludChcbiAgICAgICAgcHJvcHMuZW5kcG9pbnRPdmVycmlkZXNcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9yZXN0cmljdC10ZW1wbGF0ZS1leHByZXNzaW9uc1xuICAgICAgICBgVW5zdXBwb3J0ZWQgZW5kcG9pbnRPdmVycmlkZXM6ICR7cHJvcHMuZW5kcG9pbnRPdmVycmlkZXN9YFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICBnZXRBdXRoVG9rZW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hcGlLZXk7XG4gIH1cblxuICBnZXRDYWNoZUVuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWxsRW5kcG9pbnRzLmNhY2hlRW5kcG9pbnQuZW5kcG9pbnQ7XG4gIH1cblxuICBpc0NhY2hlRW5kcG9pbnRTZWN1cmUoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuYWxsRW5kcG9pbnRzLmNhY2hlRW5kcG9pbnQuc2VjdXJlQ29ubmVjdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYWxsRW5kcG9pbnRzLmNhY2hlRW5kcG9pbnQuc2VjdXJlQ29ubmVjdGlvbjtcbiAgfVxuXG4gIGdldENvbnRyb2xFbmRwb2ludCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFsbEVuZHBvaW50cy5jb250cm9sRW5kcG9pbnQuZW5kcG9pbnQ7XG4gIH1cblxuICBpc0NvbnRyb2xFbmRwb2ludFNlY3VyZSgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5hbGxFbmRwb2ludHMuY29udHJvbEVuZHBvaW50LnNlY3VyZUNvbm5lY3Rpb24gPT09IHVuZGVmaW5lZCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLmFsbEVuZHBvaW50cy5jb250cm9sRW5kcG9pbnQuc2VjdXJlQ29ubmVjdGlvbjtcbiAgfVxuXG4gIGdldFRva2VuRW5kcG9pbnQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5hbGxFbmRwb2ludHMudG9rZW5FbmRwb2ludC5lbmRwb2ludDtcbiAgfVxuXG4gIGlzVG9rZW5FbmRwb2ludFNlY3VyZSgpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5hbGxFbmRwb2ludHMudG9rZW5FbmRwb2ludC5zZWN1cmVDb25uZWN0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5hbGxFbmRwb2ludHMudG9rZW5FbmRwb2ludC5zZWN1cmVDb25uZWN0aW9uO1xuICB9XG5cbiAgZ2V0U3RvcmFnZUVuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYWxsRW5kcG9pbnRzLnN0b3JhZ2VFbmRwb2ludC5lbmRwb2ludDtcbiAgfVxuXG4gIGlzU3RvcmFnZUVuZHBvaW50U2VjdXJlKCk6IGJvb2xlYW4ge1xuICAgIGlmICh0aGlzLmFsbEVuZHBvaW50cy5zdG9yYWdlRW5kcG9pbnQuc2VjdXJlQ29ubmVjdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuYWxsRW5kcG9pbnRzLnN0b3JhZ2VFbmRwb2ludC5zZWN1cmVDb25uZWN0aW9uO1xuICB9XG5cbiAgYXJlRW5kcG9pbnRzT3ZlcnJpZGRlbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lbmRwb2ludHNPdmVycmlkZGVuO1xuICB9XG5cbiAgd2l0aE1vbWVudG9Mb2NhbCgpOiBDcmVkZW50aWFsUHJvdmlkZXIge1xuICAgIGNvbnN0IG1vbWVudG9Mb2NhbE92ZXJyaWRlID0ge1xuICAgICAgZW5kcG9pbnQ6ICcxMjcuMC4wLjE6ODA4MCcsXG4gICAgICBzZWN1cmVDb25uZWN0aW9uOiBmYWxzZSxcbiAgICB9O1xuICAgIHJldHVybiBuZXcgU3RyaW5nTW9tZW50b1Rva2VuUHJvdmlkZXIoe1xuICAgICAgYXV0aFRva2VuOiB0aGlzLmFwaUtleSxcbiAgICAgIGVuZHBvaW50T3ZlcnJpZGVzOiB7XG4gICAgICAgIGNhY2hlRW5kcG9pbnQ6IG1vbWVudG9Mb2NhbE92ZXJyaWRlLFxuICAgICAgICBjb250cm9sRW5kcG9pbnQ6IG1vbWVudG9Mb2NhbE92ZXJyaWRlLFxuICAgICAgICB0b2tlbkVuZHBvaW50OiBtb21lbnRvTG9jYWxPdmVycmlkZSxcbiAgICAgICAgc3RvcmFnZUVuZHBvaW50OiBtb21lbnRvTG9jYWxPdmVycmlkZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbnZNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzIGV4dGVuZHMgQ3JlZGVudGlhbFByb3ZpZGVyUHJvcHMge1xuICAvKipcbiAgICogdGhlIG5hbWUgb2YgdGhlIGVudmlyb25tZW50IHZhcmlhYmxlIGZyb20gd2hpY2ggdGhlIGF1dGggdG9rZW4gd2lsbCBiZSByZWFkXG4gICAqL1xuICBlbnZpcm9ubWVudFZhcmlhYmxlTmFtZTogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlYWRzIGFuZCBwYXJzZXMgYSBtb21lbnRvIGF1dGggdG9rZW4gc3RvcmVkIGFzIGFuIGVudmlyb25tZW50IHZhcmlhYmxlLlxuICogQGV4cG9ydFxuICogQGNsYXNzIEVudk1vbWVudG9Ub2tlblByb3ZpZGVyXG4gKi9cbmV4cG9ydCBjbGFzcyBFbnZNb21lbnRvVG9rZW5Qcm92aWRlciBleHRlbmRzIFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyIHtcbiAgZW52aXJvbm1lbnRWYXJpYWJsZU5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEBwYXJhbSB7RW52TW9tZW50b1Rva2VuUHJvdmlkZXJQcm9wc30gcHJvcHMgY29uZmlndXJhdGlvbiBvcHRpb25zIGZvciB0aGUgdG9rZW4gcHJvdmlkZXJcbiAgICovXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBFbnZNb21lbnRvVG9rZW5Qcm92aWRlclByb3BzIHwgc3RyaW5nKSB7XG4gICAgaWYgKHR5cGVvZiBwcm9wcyA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHByb3BzID0ge2Vudmlyb25tZW50VmFyaWFibGVOYW1lOiBwcm9wc307XG4gICAgfVxuICAgIGNvbnN0IGF1dGhUb2tlbiA9IHByb2Nlc3MuZW52W3Byb3BzLmVudmlyb25tZW50VmFyaWFibGVOYW1lXTtcbiAgICBpZiAoIWF1dGhUb2tlbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgTWlzc2luZyByZXF1aXJlZCBlbnZpcm9ubWVudCB2YXJpYWJsZSAke3Byb3BzLmVudmlyb25tZW50VmFyaWFibGVOYW1lfWBcbiAgICAgICk7XG4gICAgfVxuICAgIHN1cGVyKHtcbiAgICAgIGF1dGhUb2tlbjogYXV0aFRva2VuLFxuICAgICAgZW5kcG9pbnRPdmVycmlkZXM6IHByb3BzLmVuZHBvaW50T3ZlcnJpZGVzLFxuICAgIH0pO1xuICAgIHRoaXMuZW52aXJvbm1lbnRWYXJpYWJsZU5hbWUgPSBwcm9wcy5lbnZpcm9ubWVudFZhcmlhYmxlTmFtZTtcbiAgfVxufVxuIl19
export declare enum MomentoErrorCode {
INVALID_ARGUMENT_ERROR = "INVALID_ARGUMENT_ERROR",
UNKNOWN_SERVICE_ERROR = "UNKNOWN_SERVICE_ERROR",
CACHE_ALREADY_EXISTS_ERROR = "ALREADY_EXISTS_ERROR",
/** @deprecated use CACHE_ALREADY_EXISTS_ERROR instead */
ALREADY_EXISTS_ERROR = "ALREADY_EXISTS_ERROR",
STORE_ALREADY_EXISTS_ERROR = "ALREADY_EXISTS_ERROR",
CACHE_NOT_FOUND_ERROR = "NOT_FOUND_ERROR",
/** @deprecated use CACHE_NOT_FOUND_ERROR instead */
NOT_FOUND_ERROR = "NOT_FOUND_ERROR",
STORE_NOT_FOUND_ERROR = "STORE_NOT_FOUND_ERROR",
STORE_ITEM_NOT_FOUND_ERROR = "STORE_ITEM_NOT_FOUND_ERROR",
INTERNAL_SERVER_ERROR = "INTERNAL_SERVER_ERROR",

@@ -46,3 +53,3 @@ PERMISSION_ERROR = "PERMISSION_ERROR",

*/
export declare class AlreadyExistsError extends SdkError {
export declare class CacheAlreadyExistsError extends SdkError {
_errorCode: MomentoErrorCode;

@@ -52,2 +59,11 @@ _messageWrapper: string;

/**
* Error that occurs when trying to create a store with the same name as an existing cache. To resolve this error,
* either delete the existing store and make a new one, or change the name of the store you are trying to create to
* one that doesn't already exist
*/
export declare class StoreAlreadyExistsError extends SdkError {
_errorCode: MomentoErrorCode;
_messageWrapper: string;
}
/**
* Error when authentication with Cache Service fails

@@ -111,3 +127,3 @@ */

*/
export declare class NotFoundError extends SdkError {
export declare class CacheNotFoundError extends SdkError {
_errorCode: MomentoErrorCode;

@@ -117,2 +133,18 @@ _messageWrapper: string;

/**
* Error that occurs when trying to get a store that doesn't exist. To resolve, make sure that the store you are trying
* to get exists. If it doesn't create it first and then try again.
*/
export declare class StoreNotFoundError extends SdkError {
_errorCode: MomentoErrorCode;
_messageWrapper: string;
}
/**
* Error that occurs when trying to get an item from store that doesn't exist. To resolve, make sure that the item you are trying
* to get exists. If it doesn't create it first and then try again.
*/
export declare class StoreItemNotFoundError extends SdkError {
_errorCode: MomentoErrorCode;
_messageWrapper: string;
}
/**
* Insufficient permissions to perform an operation on Cache Service

@@ -119,0 +151,0 @@ */

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.UnknownServiceError = exports.UnknownError = exports.TimeoutError = exports.ServerUnavailableError = exports.PermissionError = exports.NotFoundError = exports.LimitExceededError = exports.InvalidArgumentError = exports.InternalServerError = exports.FailedPreconditionError = exports.ConnectionError = exports.CancelledError = exports.BadRequestError = exports.AuthenticationError = exports.AlreadyExistsError = exports.SdkError = exports.MomentoErrorTransportDetails = exports.MomentoGrpcErrorDetails = exports.MomentoErrorCode = void 0;
exports.UnknownServiceError = exports.UnknownError = exports.TimeoutError = exports.ServerUnavailableError = exports.PermissionError = exports.StoreItemNotFoundError = exports.StoreNotFoundError = exports.CacheNotFoundError = exports.LimitExceededError = exports.InvalidArgumentError = exports.InternalServerError = exports.FailedPreconditionError = exports.ConnectionError = exports.CancelledError = exports.BadRequestError = exports.AuthenticationError = exports.StoreAlreadyExistsError = exports.CacheAlreadyExistsError = exports.SdkError = exports.MomentoErrorTransportDetails = exports.MomentoGrpcErrorDetails = exports.MomentoErrorCode = void 0;
var MomentoErrorCode;

@@ -11,5 +11,15 @@ (function (MomentoErrorCode) {

// Cache with specified name already exists
MomentoErrorCode["CACHE_ALREADY_EXISTS_ERROR"] = "ALREADY_EXISTS_ERROR";
/** @deprecated use CACHE_ALREADY_EXISTS_ERROR instead */
MomentoErrorCode["ALREADY_EXISTS_ERROR"] = "ALREADY_EXISTS_ERROR";
// Store with specified name already exists
MomentoErrorCode["STORE_ALREADY_EXISTS_ERROR"] = "ALREADY_EXISTS_ERROR";
// Cache with specified name doesn't exist
MomentoErrorCode["CACHE_NOT_FOUND_ERROR"] = "NOT_FOUND_ERROR";
/** @deprecated use CACHE_NOT_FOUND_ERROR instead */
MomentoErrorCode["NOT_FOUND_ERROR"] = "NOT_FOUND_ERROR";
// Store with specified name doesn't exist
MomentoErrorCode["STORE_NOT_FOUND_ERROR"] = "STORE_NOT_FOUND_ERROR";
// Item with specified key doesn't exist
MomentoErrorCode["STORE_ITEM_NOT_FOUND_ERROR"] = "STORE_ITEM_NOT_FOUND_ERROR";
// An unexpected error occurred while trying to fulfill the request

@@ -80,11 +90,24 @@ MomentoErrorCode["INTERNAL_SERVER_ERROR"] = "INTERNAL_SERVER_ERROR";

*/
class AlreadyExistsError extends SdkError {
class CacheAlreadyExistsError extends SdkError {
constructor() {
super(...arguments);
this._errorCode = MomentoErrorCode.ALREADY_EXISTS_ERROR;
this._errorCode = MomentoErrorCode.CACHE_ALREADY_EXISTS_ERROR;
this._messageWrapper = 'A cache with the specified name already exists. To resolve this error, either delete the existing cache and make a new one, or use a different name';
}
}
exports.AlreadyExistsError = AlreadyExistsError;
exports.CacheAlreadyExistsError = CacheAlreadyExistsError;
/**
* Error that occurs when trying to create a store with the same name as an existing cache. To resolve this error,
* either delete the existing store and make a new one, or change the name of the store you are trying to create to
* one that doesn't already exist
*/
class StoreAlreadyExistsError extends SdkError {
constructor() {
super(...arguments);
this._errorCode = MomentoErrorCode.STORE_ALREADY_EXISTS_ERROR;
this._messageWrapper = 'A store with the specified name already exists. To resolve this error, either delete the existing store and make a new one, or use a different name';
}
}
exports.StoreAlreadyExistsError = StoreAlreadyExistsError;
/**
* Error when authentication with Cache Service fails

@@ -180,11 +203,35 @@ */

*/
class NotFoundError extends SdkError {
class CacheNotFoundError extends SdkError {
constructor() {
super(...arguments);
this._errorCode = MomentoErrorCode.NOT_FOUND_ERROR;
this._errorCode = MomentoErrorCode.CACHE_NOT_FOUND_ERROR;
this._messageWrapper = 'A cache with the specified name does not exist. To resolve this error, make sure you have created the cache before attempting to use it';
}
}
exports.NotFoundError = NotFoundError;
exports.CacheNotFoundError = CacheNotFoundError;
/**
* Error that occurs when trying to get a store that doesn't exist. To resolve, make sure that the store you are trying
* to get exists. If it doesn't create it first and then try again.
*/
class StoreNotFoundError extends SdkError {
constructor() {
super(...arguments);
this._errorCode = MomentoErrorCode.STORE_NOT_FOUND_ERROR;
this._messageWrapper = 'A store with the specified name does not exist. To resolve this error, make sure you have created the store before attempting to use it';
}
}
exports.StoreNotFoundError = StoreNotFoundError;
/**
* Error that occurs when trying to get an item from store that doesn't exist. To resolve, make sure that the item you are trying
* to get exists. If it doesn't create it first and then try again.
*/
class StoreItemNotFoundError extends SdkError {
constructor() {
super(...arguments);
this._errorCode = MomentoErrorCode.STORE_ITEM_NOT_FOUND_ERROR;
this._messageWrapper = 'An item with the specified key does not exist';
}
}
exports.StoreItemNotFoundError = StoreItemNotFoundError;
/**
* Insufficient permissions to perform an operation on Cache Service

@@ -244,2 +291,2 @@ */

exports.UnknownServiceError = UnknownServiceError;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Vycm9ycy9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBWSxnQkFpQ1g7QUFqQ0QsV0FBWSxnQkFBZ0I7SUFDMUIsNENBQTRDO0lBQzVDLHFFQUFpRCxDQUFBO0lBQ2pELHVDQUF1QztJQUN2QyxtRUFBK0MsQ0FBQTtJQUMvQywyQ0FBMkM7SUFDM0MsaUVBQTZDLENBQUE7SUFDN0MsMENBQTBDO0lBQzFDLHVEQUFtQyxDQUFBO0lBQ25DLG1FQUFtRTtJQUNuRSxtRUFBK0MsQ0FBQTtJQUMvQyxnREFBZ0Q7SUFDaEQseURBQXFDLENBQUE7SUFDckMsaUVBQWlFO0lBQ2pFLGlFQUE2QyxDQUFBO0lBQzdDLHNDQUFzQztJQUN0Qyx1REFBbUMsQ0FBQTtJQUNuQyxzQ0FBc0M7SUFDdEMseURBQXFDLENBQUE7SUFDckMsOEVBQThFO0lBQzlFLGlFQUE2QyxDQUFBO0lBQzdDLHNCQUFzQjtJQUN0QiwyREFBdUMsQ0FBQTtJQUN2QywyQ0FBMkM7SUFDM0MsbURBQStCLENBQUE7SUFDL0IsMENBQTBDO0lBQzFDLDZEQUF5QyxDQUFBO0lBQ3pDLHVEQUF1RDtJQUN2RCwyRUFBdUQsQ0FBQTtJQUN2RCxrRUFBa0U7SUFDbEUsMkVBQXVELENBQUE7SUFDdkQsNkJBQTZCO0lBQzdCLG1EQUErQixDQUFBO0FBQ2pDLENBQUMsRUFqQ1csZ0JBQWdCLEdBQWhCLHdCQUFnQixLQUFoQix3QkFBZ0IsUUFpQzNCO0FBRUQsTUFBYSx1QkFBdUI7SUFJbEMsWUFBWSxJQUFZLEVBQUUsT0FBZSxFQUFFLFFBQWlCO1FBQzFELElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzNCLENBQUM7Q0FDRjtBQVRELDBEQVNDO0FBRUQs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QUE7QUFKRCxrREFJQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE1vbWVudG9FcnJvckNvZGUge1xuICAvLyBJbnZhbGlkIGFyZ3VtZW50IHBhc3NlZCB0byBNb21lbnRvIGNsaWVudFxuICBJTlZBTElEX0FSR1VNRU5UX0VSUk9SID0gJ0lOVkFMSURfQVJHVU1FTlRfRVJST1InLFxuICAvLyBTZXJ2aWNlIHJldHVybmVkIGFuIHVua25vd24gcmVzcG9uc2VcbiAgVU5LTk9XTl9TRVJWSUNFX0VSUk9SID0gJ1VOS05PV05fU0VSVklDRV9FUlJPUicsXG4gIC8vIENhY2hlIHdpdGggc3BlY2lmaWVkIG5hbWUgYWxyZWFkeSBleGlzdHNcbiAgQUxSRUFEWV9FWElTVFNfRVJST1IgPSAnQUxSRUFEWV9FWElTVFNfRVJST1InLFxuICAvLyBDYWNoZSB3aXRoIHNwZWNpZmllZCBuYW1lIGRvZXNuJ3QgZXhpc3RcbiAgTk9UX0ZPVU5EX0VSUk9SID0gJ05PVF9GT1VORF9FUlJPUicsXG4gIC8vIEFuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQgd2hpbGUgdHJ5aW5nIHRvIGZ1bGZpbGwgdGhlIHJlcXVlc3RcbiAgSU5URVJOQUxfU0VSVkVSX0VSUk9SID0gJ0lOVEVSTkFMX1NFUlZFUl9FUlJPUicsXG4gIC8vIEluc3VmZmljaWVudCBwZXJtaXNzaW9ucyB0byBwZXJmb3JtIG9wZXJhdGlvblxuICBQRVJNSVNTSU9OX0VSUk9SID0gJ1BFUk1JU1NJT05fRVJST1InLFxuICAvLyBJbnZhbGlkIGF1dGhlbnRpY2F0aW9uIGNyZWRlbnRpYWxzIHRvIGNvbm5lY3QgdG8gY2FjaGUgc2VydmljZVxuICBBVVRIRU5USUNBVElPTl9FUlJPUiA9ICdBVVRIRU5USUNBVElPTl9FUlJPUicsXG4gIC8vIFJlcXVlc3Qgd2FzIGNhbmNlbGxlZCBieSB0aGUgc2VydmVyXG4gIENBTkNFTExFRF9FUlJPUiA9ICdDQU5DRUxMRURfRVJST1InLFxuICAvLyBFcnJvciBjb25uZWN0aW5nIHRvIE1vbWVudG8gc2VydmVyc1xuICBDT05ORUNUSU9OX0VSUk9SID0gJ0NPTk5FQ1RJT05fRVJST1InLFxuICAvLyBSZXF1ZXN0IHJhdGUsIGJhbmR3aWR0aCwgb3Igb2JqZWN0IHNpemUgZXhjZWVkZWQgdGhlIGxpbWl0cyBmb3IgdGhlIGFjY291bnRcbiAgTElNSVRfRVhDRUVERURfRVJST1IgPSAnTElNSVRfRVhDRUVERURfRVJST1InLFxuICAvLyBSZXF1ZXN0IHdhcyBpbnZhbGlkXG4gIEJBRF9SRVFVRVNUX0VSUk9SID0gJ0JBRF9SRVFVRVNUX0VSUk9SJyxcbiAgLy8gQ2xpZW50J3MgY29uZmlndXJlZCB0aW1lb3V0IHdhcyBleGNlZWRlZFxuICBUSU1FT1VUX0VSUk9SID0gJ1RJTUVPVVRfRVJST1InLFxuICAvLyBTZXJ2ZXIgd2FzIHVuYWJsZSB0byBoYW5kbGUgdGhlIHJlcXVlc3RcbiAgU0VSVkVSX1VOQVZBSUxBQkxFID0gJ1NFUlZFUl9VTkFWQUlMQUJMRScsXG4gIC8vIEEgY2xpZW50IHJlc291cmNlIChtb3N0IGxpa2VseSBtZW1vcnkpIHdhcyBleGhhdXN0ZWRcbiAgQ0xJRU5UX1JFU09VUkNFX0VYSEFVU1RFRCA9ICdDTElFTlRfUkVTT1VSQ0VfRVhIQVVTVEVEJyxcbiAgLy8gU3lzdGVtIGlzIG5vdCBpbiBhIHN0YXRlIHJlcXVpcmVkIGZvciB0aGUgb3BlcmF0aW9uJ3MgZXhlY3V0aW9uXG4gIEZBSUxFRF9QUkVDT05ESVRJT05fRVJST1IgPSAnRkFJTEVEX1BSRUNPTkRJVElPTl9FUlJPUicsXG4gIC8vIFVua25vd24gZXJyb3IgaGFzIG9jY3VycmVkXG4gIFVOS05PV05fRVJST1IgPSAnVU5LTk9XTl9FUlJPUicsXG59XG5cbmV4cG9ydCBjbGFzcyBNb21lbnRvR3JwY0Vycm9yRGV0YWlscyB7XG4gIHB1YmxpYyByZWFkb25seSBjb2RlOiBudW1iZXI7XG4gIHB1YmxpYyByZWFkb25seSBkZXRhaWxzOiBzdHJpbmc7XG4gIHB1YmxpYyByZWFkb25seSBtZXRhZGF0YT86IG9iamVjdDtcbiAgY29uc3RydWN0b3IoY29kZTogbnVtYmVyLCBkZXRhaWxzOiBzdHJpbmcsIG1ldGFkYXRhPzogb2JqZWN0KSB7XG4gICAgdGhpcy5jb2RlID0gY29kZTtcbiAgICB0aGlzLmRldGFpbHMgPSBkZXRhaWxzO1xuICAgIHRoaXMubWV0YWRhdGEgPSBtZXRhZGF0YTtcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTW9tZW50b0Vycm9yVHJhbnNwb3J0RGV0YWlscyB7XG4gIHB1YmxpYyByZWFkb25seSBncnBjOiBNb21lbnRvR3JwY0Vycm9yRGV0YWlscztcbiAgY29uc3RydWN0b3IoZ3JwYzogTW9tZW50b0dycGNFcnJvckRldGFpbHMpIHtcbiAgICB0aGlzLmdycGMgPSBncnBjO1xuICB9XG59XG4vKipcbiAqIEJhc2UgY2xhc3MgZm9yIGFsbCBlcnJvcnMgdGhyb3duIGJ5IHRoZSBzZGtcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNka0Vycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2Vycm9yQ29kZTogTW9tZW50b0Vycm9yQ29kZTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9tZXNzYWdlV3JhcHBlcjogc3RyaW5nO1xuICBwcml2YXRlIHJlYWRvbmx5IF90cmFuc3BvcnREZXRhaWxzOiBNb21lbnRvRXJyb3JUcmFuc3BvcnREZXRhaWxzO1xuICBjb25zdHJ1Y3RvcihcbiAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgY29kZSA9IDAsXG4gICAgbWV0YWRhdGE6IG9iamVjdCB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZCxcbiAgICBzdGFjazogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkXG4gICkge1xuICAgIHN1cGVyKG1lc3NhZ2UpO1xuICAgIGNvbnN0IGdycGNEZXRhaWxzID0gbmV3IE1vbWVudG9HcnBjRXJyb3JEZXRhaWxzKGNvZGUsIG1lc3NhZ2UsIG1ldGFkYXRhKTtcbiAgICB0aGlzLl90cmFuc3BvcnREZXRhaWxzID0gbmV3IE1vbWVudG9FcnJvclRyYW5zcG9ydERldGFpbHMoZ3JwY0RldGFpbHMpO1xuICAgIHRoaXMuc3RhY2sgPSBzdGFjayA/PyB1bmRlZmluZWQ7XG4gIH1cblxuICBwdWJsaWMgd3JhcHBlZEVycm9yTWVzc2FnZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLl9tZXNzYWdlV3JhcHBlcn06ICR7dGhpcy5tZXNzYWdlfWA7XG4gIH1cblxuICBwdWJsaWMgZXJyb3JDb2RlKCkge1xuICAgIHJldHVybiB0aGlzLl9lcnJvckNvZGU7XG4gIH1cblxuICBwdWJsaWMgdHJhbnNwb3J0RGV0YWlscygpIHtcbiAgICByZXR1cm4gdGhpcy5fdHJhbnNwb3J0RGV0YWlscztcbiAgfVxufVxuXG4vKipcbiAqIEVycm9yIHRoYXQgb2NjdXJzIHdoZW4gdHJ5aW5nIHRvIGNyZWF0ZSBhIGNhY2hlIHdpdGggdGhlIHNhbWUgbmFtZSBhcyBhbiBleGlzdGluZyBjYWNoZS4gVG8gcmVzb2x2ZSB0aGlzIGVycm9yLFxuICogZWl0aGVyIGRlbGV0ZSB0aGUgZXhpc3RpbmcgY2FjaGUgYW5kIG1ha2UgYSBuZXcgb25lLCBvciBjaGFuZ2UgdGhlIG5hbWUgb2YgdGhlIGNhY2hlIHlvdSBhcmUgdHJ5aW5nIHRvIGNyZWF0ZSB0b1xuICogb25lIHRoYXQgZG9lc24ndCBhbHJlYWR5IGV4aXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBBbHJlYWR5RXhpc3RzRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkFMUkVBRFlfRVhJU1RTX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdBIGNhY2hlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGFscmVhZHkgZXhpc3RzLiAgVG8gcmVzb2x2ZSB0aGlzIGVycm9yLCBlaXRoZXIgZGVsZXRlIHRoZSBleGlzdGluZyBjYWNoZSBhbmQgbWFrZSBhIG5ldyBvbmUsIG9yIHVzZSBhIGRpZmZlcmVudCBuYW1lJztcbn1cblxuLyoqXG4gKiBFcnJvciB3aGVuIGF1dGhlbnRpY2F0aW9uIHdpdGggQ2FjaGUgU2VydmljZSBmYWlsc1xuICovXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRpb25FcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgb3ZlcnJpZGUgX2Vycm9yQ29kZSA9IE1vbWVudG9FcnJvckNvZGUuQVVUSEVOVElDQVRJT05fRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ0ludmFsaWQgYXV0aGVudGljYXRpb24gY3JlZGVudGlhbHMgdG8gY29ubmVjdCB0byBjYWNoZSBzZXJ2aWNlJztcbn1cblxuLyoqXG4gKiBFcnJvciByYWlzZWQgaW4gcmVzcG9uc2UgdG8gYW4gaW52YWxpZCByZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBCYWRSZXF1ZXN0RXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkJBRF9SRVFVRVNUX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdUaGUgcmVxdWVzdCB3YXMgaW52YWxpZDsgcGxlYXNlIGNvbnRhY3QgdXMgYXQgc3VwcG9ydEBtb21lbnRvaHEuY29tJztcbn1cblxuLyoqXG4gKiBFcnJvciB3aGVuIGFuIG9wZXJhdGlvbiB3aXRoIENhY2hlIFNlcnZpY2Ugd2FzIGNhbmNlbGxlZFxuICovXG5leHBvcnQgY2xhc3MgQ2FuY2VsbGVkRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkNBTkNFTExFRF9FUlJPUjtcbiAgb3ZlcnJpZGUgX21lc3NhZ2VXcmFwcGVyID1cbiAgICAnVGhlIHJlcXVlc3Qgd2FzIGNhbmNlbGxlZCBieSB0aGUgc2VydmVyOyBwbGVhc2UgY29udGFjdCB1cyBhdCBzdXBwb3J0QG1vbWVudG9ocS5jb20nO1xufVxuXG4vKipcbiAqIEVycm9yIHdoZW4gdGhlcmUncyBhIGZhaWx1cmUgdG8gY29ubmVjdCB0byBNb21lbnRvIHNlcnZlcnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkNPTk5FQ1RJT05fRVJST1I7XG59XG5cbi8qKlxuICogRXJyb3IgcmFpc2VkIHdoZW4gc3lzdGVtIGluIG5vdCBpbiBhIHN0YXRlIHJlcXVpcmVkIGZvciB0aGUgb3BlcmF0aW9uJ3Mgc3VjY2Vzc1xuICovXG5leHBvcnQgY2xhc3MgRmFpbGVkUHJlY29uZGl0aW9uRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkZBSUxFRF9QUkVDT05ESVRJT05fRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgXCJTeXN0ZW0gaXMgbm90IGluIGEgc3RhdGUgcmVxdWlyZWQgZm9yIHRoZSBvcGVyYXRpb24ncyBleGVjdXRpb25cIjtcbn1cblxuLyoqXG4gKiBDYWNoZSBTZXJ2aWNlIGVuY291bnRlcmVkIGFuIHVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoaWxlIHRyeWluZyB0byBmdWxmaWxsIHRoZSByZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlcm5hbFNlcnZlckVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5JTlRFUk5BTF9TRVJWRVJfRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ0FuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQgd2hpbGUgdHJ5aW5nIHRvIGZ1bGZpbGwgdGhlIHJlcXVlc3Q7IHBsZWFzZSBjb250YWN0IHVzIGF0IHN1cHBvcnRAbW9tZW50b2hxLmNvbSc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBlcnJvcnMgdGhyb3duIHdoZW4gaW52YWxpZCBwYXJhbWV0ZXJzIGFyZSBwYXNzZWQgdG8gdGhlIE1vbWVudG8gQ2FjaGVcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRBcmd1bWVudEVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5JTlZBTElEX0FSR1VNRU5UX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPSAnSW52YWxpZCBhcmd1bWVudCBwYXNzZWQgdG8gTW9tZW50byBjbGllbnQnO1xufVxuXG4vKipcbiAqIEVycm9yIHdoZW4gY2FsbHMgYXJlIHRocm90dGxlZCBkdWUgdG8gcmVxdWVzdCBsaW1pdCByYXRlXG4gKi9cbmV4cG9ydCBjbGFzcyBMaW1pdEV4Y2VlZGVkRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkxJTUlUX0VYQ0VFREVEX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdSZXF1ZXN0IHJhdGUsIGJhbmR3aWR0aCwgb3Igb2JqZWN0IHNpemUgZXhjZWVkZWQgdGhlIGxpbWl0cyBmb3IgdGhpcyBhY2NvdW50LiAgVG8gcmVzb2x2ZSB0aGlzIGVycm9yLCByZWR1Y2UgeW91ciB1c2FnZSBhcyBhcHByb3ByaWF0ZSBvciBjb250YWN0IHVzIGF0IHN1cHBvcnRAbW9tZW50b2hxLmNvbSB0byByZXF1ZXN0IGEgbGltaXQgaW5jcmVhc2UnO1xufVxuXG4vKipcbiAqIEVycm9yIHRoYXQgb2NjdXJzIHdoZW4gdHJ5aW5nIHRvIGdldCBhIGNhY2hlIHRoYXQgZG9lc24ndCBleGlzdC4gVG8gcmVzb2x2ZSwgbWFrZSBzdXJlIHRoYXQgdGhlIGNhY2hlIHlvdSBhcmUgdHJ5aW5nXG4gKiB0byBnZXQgZXhpc3RzLiBJZiBpdCBkb2Vzbid0IGNyZWF0ZSBpdCBmaXJzdCBhbmQgdGhlbiB0cnkgYWdhaW5cbiAqL1xuZXhwb3J0IGNsYXNzIE5vdEZvdW5kRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLk5PVF9GT1VORF9FUlJPUjtcbiAgb3ZlcnJpZGUgX21lc3NhZ2VXcmFwcGVyID1cbiAgICAnQSBjYWNoZSB3aXRoIHRoZSBzcGVjaWZpZWQgbmFtZSBkb2VzIG5vdCBleGlzdC4gIFRvIHJlc29sdmUgdGhpcyBlcnJvciwgbWFrZSBzdXJlIHlvdSBoYXZlIGNyZWF0ZWQgdGhlIGNhY2hlIGJlZm9yZSBhdHRlbXB0aW5nIHRvIHVzZSBpdCc7XG59XG5cbi8qKlxuICogSW5zdWZmaWNpZW50IHBlcm1pc3Npb25zIHRvIHBlcmZvcm0gYW4gb3BlcmF0aW9uIG9uIENhY2hlIFNlcnZpY2VcbiAqL1xuZXhwb3J0IGNsYXNzIFBlcm1pc3Npb25FcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgb3ZlcnJpZGUgX2Vycm9yQ29kZSA9IE1vbWVudG9FcnJvckNvZGUuUEVSTUlTU0lPTl9FUlJPUjtcbiAgb3ZlcnJpZGUgX21lc3NhZ2VXcmFwcGVyID1cbiAgICAnSW5zdWZmaWNpZW50IHBlcm1pc3Npb25zIHRvIHBlcmZvcm0gYW4gb3BlcmF0aW9uIG9uIGEgY2FjaGUnO1xufVxuXG4vKipcbiAqIFNlcnZlciB3YXMgdW5hYmxlIHRvIGhhbmRsZSB0aGUgcmVxdWVzdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlcnZlclVuYXZhaWxhYmxlRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLlNFUlZFUl9VTkFWQUlMQUJMRTtcbiAgb3ZlcnJpZGUgX21lc3NhZ2VXcmFwcGVyID1cbiAgICAnVGhlIHNlcnZlciB3YXMgdW5hYmxlIHRvIGhhbmRsZSB0aGUgcmVxdWVzdDsgY29uc2lkZXIgcmV0cnlpbmcuICBJZiB0aGUgZXJyb3IgcGVyc2lzdHMsIHBsZWFzZSBjb250YWN0IHVzIGF0IHN1cHBvcnRAbW9tZW50b2hxLmNvbSc7XG59XG5cbi8qKlxuICogRXJyb3Igd2hlbiBhbiBvcGVyYXRpb24gZGlkIG5vdCBjb21wbGV0ZSBpbiB0aW1lXG4gKi9cbmV4cG9ydCBjbGFzcyBUaW1lb3V0RXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLlRJTUVPVVRfRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgXCJUaGUgY2xpZW50J3MgY29uZmlndXJlZCB0aW1lb3V0IHdhcyBleGNlZWRlZDsgeW91IG1heSBuZWVkIHRvIHVzZSBhIENvbmZpZ3VyYXRpb24gd2l0aCBtb3JlIGxlbmllbnQgdGltZW91dHNcIjtcbn1cblxuLyoqXG4gKiBFcnJvciByYWlzZWQgd2hlbiB0aGUgdW5kZXJseWluZyBjYXVzZSBpbiB1bmtub3duXG4gKi9cbmV4cG9ydCBjbGFzcyBVbmtub3duRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLlVOS05PV05fRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9ICdVbmtub3duIGVycm9yIGhhcyBvY2N1cnJlZCc7XG59XG5cbi8qKlxuICogRXJyb3IgcmFpc2VkIHdoZW4gdGhlIHNlcnZpY2UgcmV0dXJucyBhbiB1bmtub3duIHJlc3BvbnNlXG4gKi9cbmV4cG9ydCBjbGFzcyBVbmtub3duU2VydmljZUVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5VTktOT1dOX1NFUlZJQ0VfRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ1NlcnZpY2UgcmV0dXJuZWQgYW4gdW5rbm93biByZXNwb25zZTsgcGxlYXNlIGNvbnRhY3QgdXMgYXQgc3VwcG9ydEBtb21lbnRvaHEuY29tJztcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Vycm9ycy9lcnJvcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsSUFBWSxnQkEyQ1g7QUEzQ0QsV0FBWSxnQkFBZ0I7SUFDMUIsNENBQTRDO0lBQzVDLHFFQUFpRCxDQUFBO0lBQ2pELHVDQUF1QztJQUN2QyxtRUFBK0MsQ0FBQTtJQUMvQywyQ0FBMkM7SUFDM0MsdUVBQW1ELENBQUE7SUFDbkQseURBQXlEO0lBQ3pELGlFQUE2QyxDQUFBO0lBQzdDLDJDQUEyQztJQUMzQyx1RUFBbUQsQ0FBQTtJQUNuRCwwQ0FBMEM7SUFDMUMsNkRBQXlDLENBQUE7SUFDekMsb0RBQW9EO0lBQ3BELHVEQUFtQyxDQUFBO0lBQ25DLDBDQUEwQztJQUMxQyxtRUFBK0MsQ0FBQTtJQUMvQyx3Q0FBd0M7SUFDeEMsNkVBQXlELENBQUE7SUFDekQsbUVBQW1FO0lBQ25FLG1FQUErQyxDQUFBO0lBQy9DLGdEQUFnRDtJQUNoRCx5REFBcUMsQ0FBQTtJQUNyQyxpRUFBaUU7SUFDakUsaUVBQTZDLENBQUE7SUFDN0Msc0NBQXNDO0lBQ3RDLHVEQUFtQyxDQUFBO0lBQ25DLHNDQUFzQztJQUN0Qyx5REFBcUMsQ0FBQTtJQUNyQyw4RUFBOEU7SUFDOUUsaUVBQTZDLENBQUE7SUFDN0Msc0JBQXNCO0lBQ3RCLDJEQUF1QyxDQUFBO0lBQ3ZDLDJDQUEyQztJQUMzQyxtREFBK0IsQ0FBQTtJQUMvQiwwQ0FBMEM7SUFDMUMsNkRBQXlDLENBQUE7SUFDekMsdURBQXVEO0lBQ3ZELDJFQUF1RCxDQUFBO0lBQ3ZELGtFQUFrRTtJQUNsRSwyRUFBdUQsQ0FBQTtJQUN2RCw2QkFBNkI7SUFDN0IsbURBQStCLENBQUE7QUFDakMsQ0FBQyxFQTNDVyxnQkFBZ0IsR0FBaEIsd0JBQWdCLEtBQWhCLHdCQUFnQixRQTJDM0I7QUFFRCxNQUFhLHVCQUF1QjtJQUlsQyxZQUFZLElBQVksRUFBRSxPQUFlLEVBQUUsUUFBaUI7UUFDMUQsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDdkIsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDM0IsQ0FBQztDQUNGO0FBVEQsMERBU0M7QUFFRCxNQUFhLDRCQUE0QjtJQUV2QyxZQUFZLElBQTZCO1FBQ3ZDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7Q0FDRjtBQUxELG9FQUtDO0FBQ0Q7O0dBRUc7QUFDSCxNQUFzQixRQUFTLFNBQVEsS0FBSztJQUkxQyxZQUNFLE9BQWUsRUFDZixJQUFJLEdBQUcsQ0FBQyxFQUNSLFdBQStCLFNBQVMsRUFDeEMsUUFBNEIsU0FBUztRQUVyQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDZixNQUFNLFdBQVcsR0FBRyxJQUFJLHVCQUF1QixDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDekUsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksNEJBQTRCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLGFBQUwsS0FBSyxjQUFMLEtBQUssR0FBSSxTQUFTLENBQUM7SUFDbEMsQ0FBQztJQUVNLG1CQUFtQjtRQUN4QixPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDcEQsQ0FBQztJQUVNLFNBQVM7UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNoQyxDQUFDO0NBQ0Y7QUEzQkQsNEJBMkJDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsdUJBQXdCLFNBQVEsUUFBUTtJQUFyRDs7UUFDVyxlQUFVLEdBQUcsZ0JBQWdCLENBQUMsMEJBQTBCLENBQUM7UUFDekQsb0JBQWUsR0FDdEIsc0pBQXNKLENBQUM7SUFDM0osQ0FBQztDQUFBO0FBSkQsMERBSUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBYSx1QkFBd0IsU0FBUSxRQUFRO0lBQXJEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQywwQkFBMEIsQ0FBQztRQUN6RCxvQkFBZSxHQUN0QixzSkFBc0osQ0FBQztJQUMzSixDQUFDO0NBQUE7QUFKRCwwREFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxRQUFRO0lBQWpEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQztRQUNuRCxvQkFBZSxHQUN0QixnRUFBZ0UsQ0FBQztJQUNyRSxDQUFDO0NBQUE7QUFKRCxrREFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLFFBQVE7SUFBN0M7O1FBQ1csZUFBVSxHQUFHLGdCQUFnQixDQUFDLGlCQUFpQixDQUFDO1FBQ2hELG9CQUFlLEdBQ3RCLHFFQUFxRSxDQUFDO0lBQzFFLENBQUM7Q0FBQTtBQUpELDBDQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGNBQWUsU0FBUSxRQUFRO0lBQTVDOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUM7UUFDOUMsb0JBQWUsR0FDdEIscUZBQXFGLENBQUM7SUFDMUYsQ0FBQztDQUFBO0FBSkQsd0NBSUM7QUFFRDs7R0FFRztBQUNILE1BQWEsZUFBZ0IsU0FBUSxRQUFRO0lBQTdDOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQztJQUMxRCxDQUFDO0NBQUE7QUFGRCwwQ0FFQztBQUVEOztHQUVHO0FBQ0gsTUFBYSx1QkFBd0IsU0FBUSxRQUFRO0lBQXJEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyx5QkFBeUIsQ0FBQztRQUN4RCxvQkFBZSxHQUN0QixpRUFBaUUsQ0FBQztJQUN0RSxDQUFDO0NBQUE7QUFKRCwwREFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxRQUFRO0lBQWpEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQztRQUNwRCxvQkFBZSxHQUN0Qiw4R0FBOEcsQ0FBQztJQUNuSCxDQUFDO0NBQUE7QUFKRCxrREFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxvQkFBcUIsU0FBUSxRQUFRO0lBQWxEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQztRQUNyRCxvQkFBZSxHQUFHLDJDQUEyQyxDQUFDO0lBQ3pFLENBQUM7Q0FBQTtBQUhELG9EQUdDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGtCQUFtQixTQUFRLFFBQVE7SUFBaEQ7O1FBQ1csZUFBVSxHQUFHLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDO1FBQ25ELG9CQUFlLEdBQ3RCLDJNQUEyTSxDQUFDO0lBQ2hOLENBQUM7Q0FBQTtBQUpELGdEQUlDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxRQUFRO0lBQWhEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQztRQUNwRCxvQkFBZSxHQUN0QiwwSUFBMEksQ0FBQztJQUMvSSxDQUFDO0NBQUE7QUFKRCxnREFJQztBQUVEOzs7R0FHRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsUUFBUTtJQUFoRDs7UUFDVyxlQUFVLEdBQUcsZ0JBQWdCLENBQUMscUJBQXFCLENBQUM7UUFDcEQsb0JBQWUsR0FDdEIsMElBQTBJLENBQUM7SUFDL0ksQ0FBQztDQUFBO0FBSkQsZ0RBSUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLFFBQVE7SUFBcEQ7O1FBQ1csZUFBVSxHQUFHLGdCQUFnQixDQUFDLDBCQUEwQixDQUFDO1FBQ3pELG9CQUFlLEdBQUcsK0NBQStDLENBQUM7SUFDN0UsQ0FBQztDQUFBO0FBSEQsd0RBR0M7QUFFRDs7R0FFRztBQUNILE1BQWEsZUFBZ0IsU0FBUSxRQUFRO0lBQTdDOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQztRQUMvQyxvQkFBZSxHQUN0Qiw2REFBNkQsQ0FBQztJQUNsRSxDQUFDO0NBQUE7QUFKRCwwQ0FJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxRQUFRO0lBQXBEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQztRQUNqRCxvQkFBZSxHQUN0QixvSUFBb0ksQ0FBQztJQUN6SSxDQUFDO0NBQUE7QUFKRCx3REFJQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxZQUFhLFNBQVEsUUFBUTtJQUExQzs7UUFDVyxlQUFVLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxDQUFDO1FBQzVDLG9CQUFlLEdBQ3RCLDhHQUE4RyxDQUFDO0lBQ25ILENBQUM7Q0FBQTtBQUpELG9DQUlDO0FBRUQ7O0dBRUc7QUFDSCxNQUFhLFlBQWEsU0FBUSxRQUFRO0lBQTFDOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxhQUFhLENBQUM7UUFDNUMsb0JBQWUsR0FBRyw0QkFBNEIsQ0FBQztJQUMxRCxDQUFDO0NBQUE7QUFIRCxvQ0FHQztBQUVEOztHQUVHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxRQUFRO0lBQWpEOztRQUNXLGVBQVUsR0FBRyxnQkFBZ0IsQ0FBQyxxQkFBcUIsQ0FBQztRQUNwRCxvQkFBZSxHQUN0QixrRkFBa0YsQ0FBQztJQUN2RixDQUFDO0NBQUE7QUFKRCxrREFJQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIE1vbWVudG9FcnJvckNvZGUge1xuICAvLyBJbnZhbGlkIGFyZ3VtZW50IHBhc3NlZCB0byBNb21lbnRvIGNsaWVudFxuICBJTlZBTElEX0FSR1VNRU5UX0VSUk9SID0gJ0lOVkFMSURfQVJHVU1FTlRfRVJST1InLFxuICAvLyBTZXJ2aWNlIHJldHVybmVkIGFuIHVua25vd24gcmVzcG9uc2VcbiAgVU5LTk9XTl9TRVJWSUNFX0VSUk9SID0gJ1VOS05PV05fU0VSVklDRV9FUlJPUicsXG4gIC8vIENhY2hlIHdpdGggc3BlY2lmaWVkIG5hbWUgYWxyZWFkeSBleGlzdHNcbiAgQ0FDSEVfQUxSRUFEWV9FWElTVFNfRVJST1IgPSAnQUxSRUFEWV9FWElTVFNfRVJST1InLFxuICAvKiogQGRlcHJlY2F0ZWQgdXNlIENBQ0hFX0FMUkVBRFlfRVhJU1RTX0VSUk9SIGluc3RlYWQgKi9cbiAgQUxSRUFEWV9FWElTVFNfRVJST1IgPSAnQUxSRUFEWV9FWElTVFNfRVJST1InLFxuICAvLyBTdG9yZSB3aXRoIHNwZWNpZmllZCBuYW1lIGFscmVhZHkgZXhpc3RzXG4gIFNUT1JFX0FMUkVBRFlfRVhJU1RTX0VSUk9SID0gJ0FMUkVBRFlfRVhJU1RTX0VSUk9SJyxcbiAgLy8gQ2FjaGUgd2l0aCBzcGVjaWZpZWQgbmFtZSBkb2Vzbid0IGV4aXN0XG4gIENBQ0hFX05PVF9GT1VORF9FUlJPUiA9ICdOT1RfRk9VTkRfRVJST1InLFxuICAvKiogQGRlcHJlY2F0ZWQgdXNlIENBQ0hFX05PVF9GT1VORF9FUlJPUiBpbnN0ZWFkICovXG4gIE5PVF9GT1VORF9FUlJPUiA9ICdOT1RfRk9VTkRfRVJST1InLFxuICAvLyBTdG9yZSB3aXRoIHNwZWNpZmllZCBuYW1lIGRvZXNuJ3QgZXhpc3RcbiAgU1RPUkVfTk9UX0ZPVU5EX0VSUk9SID0gJ1NUT1JFX05PVF9GT1VORF9FUlJPUicsXG4gIC8vIEl0ZW0gd2l0aCBzcGVjaWZpZWQga2V5IGRvZXNuJ3QgZXhpc3RcbiAgU1RPUkVfSVRFTV9OT1RfRk9VTkRfRVJST1IgPSAnU1RPUkVfSVRFTV9OT1RfRk9VTkRfRVJST1InLFxuICAvLyBBbiB1bmV4cGVjdGVkIGVycm9yIG9jY3VycmVkIHdoaWxlIHRyeWluZyB0byBmdWxmaWxsIHRoZSByZXF1ZXN0XG4gIElOVEVSTkFMX1NFUlZFUl9FUlJPUiA9ICdJTlRFUk5BTF9TRVJWRVJfRVJST1InLFxuICAvLyBJbnN1ZmZpY2llbnQgcGVybWlzc2lvbnMgdG8gcGVyZm9ybSBvcGVyYXRpb25cbiAgUEVSTUlTU0lPTl9FUlJPUiA9ICdQRVJNSVNTSU9OX0VSUk9SJyxcbiAgLy8gSW52YWxpZCBhdXRoZW50aWNhdGlvbiBjcmVkZW50aWFscyB0byBjb25uZWN0IHRvIGNhY2hlIHNlcnZpY2VcbiAgQVVUSEVOVElDQVRJT05fRVJST1IgPSAnQVVUSEVOVElDQVRJT05fRVJST1InLFxuICAvLyBSZXF1ZXN0IHdhcyBjYW5jZWxsZWQgYnkgdGhlIHNlcnZlclxuICBDQU5DRUxMRURfRVJST1IgPSAnQ0FOQ0VMTEVEX0VSUk9SJyxcbiAgLy8gRXJyb3IgY29ubmVjdGluZyB0byBNb21lbnRvIHNlcnZlcnNcbiAgQ09OTkVDVElPTl9FUlJPUiA9ICdDT05ORUNUSU9OX0VSUk9SJyxcbiAgLy8gUmVxdWVzdCByYXRlLCBiYW5kd2lkdGgsIG9yIG9iamVjdCBzaXplIGV4Y2VlZGVkIHRoZSBsaW1pdHMgZm9yIHRoZSBhY2NvdW50XG4gIExJTUlUX0VYQ0VFREVEX0VSUk9SID0gJ0xJTUlUX0VYQ0VFREVEX0VSUk9SJyxcbiAgLy8gUmVxdWVzdCB3YXMgaW52YWxpZFxuICBCQURfUkVRVUVTVF9FUlJPUiA9ICdCQURfUkVRVUVTVF9FUlJPUicsXG4gIC8vIENsaWVudCdzIGNvbmZpZ3VyZWQgdGltZW91dCB3YXMgZXhjZWVkZWRcbiAgVElNRU9VVF9FUlJPUiA9ICdUSU1FT1VUX0VSUk9SJyxcbiAgLy8gU2VydmVyIHdhcyB1bmFibGUgdG8gaGFuZGxlIHRoZSByZXF1ZXN0XG4gIFNFUlZFUl9VTkFWQUlMQUJMRSA9ICdTRVJWRVJfVU5BVkFJTEFCTEUnLFxuICAvLyBBIGNsaWVudCByZXNvdXJjZSAobW9zdCBsaWtlbHkgbWVtb3J5KSB3YXMgZXhoYXVzdGVkXG4gIENMSUVOVF9SRVNPVVJDRV9FWEhBVVNURUQgPSAnQ0xJRU5UX1JFU09VUkNFX0VYSEFVU1RFRCcsXG4gIC8vIFN5c3RlbSBpcyBub3QgaW4gYSBzdGF0ZSByZXF1aXJlZCBmb3IgdGhlIG9wZXJhdGlvbidzIGV4ZWN1dGlvblxuICBGQUlMRURfUFJFQ09ORElUSU9OX0VSUk9SID0gJ0ZBSUxFRF9QUkVDT05ESVRJT05fRVJST1InLFxuICAvLyBVbmtub3duIGVycm9yIGhhcyBvY2N1cnJlZFxuICBVTktOT1dOX0VSUk9SID0gJ1VOS05PV05fRVJST1InLFxufVxuXG5leHBvcnQgY2xhc3MgTW9tZW50b0dycGNFcnJvckRldGFpbHMge1xuICBwdWJsaWMgcmVhZG9ubHkgY29kZTogbnVtYmVyO1xuICBwdWJsaWMgcmVhZG9ubHkgZGV0YWlsczogc3RyaW5nO1xuICBwdWJsaWMgcmVhZG9ubHkgbWV0YWRhdGE/OiBvYmplY3Q7XG4gIGNvbnN0cnVjdG9yKGNvZGU6IG51bWJlciwgZGV0YWlsczogc3RyaW5nLCBtZXRhZGF0YT86IG9iamVjdCkge1xuICAgIHRoaXMuY29kZSA9IGNvZGU7XG4gICAgdGhpcy5kZXRhaWxzID0gZGV0YWlscztcbiAgICB0aGlzLm1ldGFkYXRhID0gbWV0YWRhdGE7XG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1vbWVudG9FcnJvclRyYW5zcG9ydERldGFpbHMge1xuICBwdWJsaWMgcmVhZG9ubHkgZ3JwYzogTW9tZW50b0dycGNFcnJvckRldGFpbHM7XG4gIGNvbnN0cnVjdG9yKGdycGM6IE1vbWVudG9HcnBjRXJyb3JEZXRhaWxzKSB7XG4gICAgdGhpcy5ncnBjID0gZ3JwYztcbiAgfVxufVxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBhbGwgZXJyb3JzIHRocm93biBieSB0aGUgc2RrXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTZGtFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9lcnJvckNvZGU6IE1vbWVudG9FcnJvckNvZGU7XG4gIHByb3RlY3RlZCByZWFkb25seSBfbWVzc2FnZVdyYXBwZXI6IHN0cmluZztcbiAgcHJpdmF0ZSByZWFkb25seSBfdHJhbnNwb3J0RGV0YWlsczogTW9tZW50b0Vycm9yVHJhbnNwb3J0RGV0YWlscztcbiAgY29uc3RydWN0b3IoXG4gICAgbWVzc2FnZTogc3RyaW5nLFxuICAgIGNvZGUgPSAwLFxuICAgIG1ldGFkYXRhOiBvYmplY3QgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQsXG4gICAgc3RhY2s6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZFxuICApIHtcbiAgICBzdXBlcihtZXNzYWdlKTtcbiAgICBjb25zdCBncnBjRGV0YWlscyA9IG5ldyBNb21lbnRvR3JwY0Vycm9yRGV0YWlscyhjb2RlLCBtZXNzYWdlLCBtZXRhZGF0YSk7XG4gICAgdGhpcy5fdHJhbnNwb3J0RGV0YWlscyA9IG5ldyBNb21lbnRvRXJyb3JUcmFuc3BvcnREZXRhaWxzKGdycGNEZXRhaWxzKTtcbiAgICB0aGlzLnN0YWNrID0gc3RhY2sgPz8gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHVibGljIHdyYXBwZWRFcnJvck1lc3NhZ2UoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5fbWVzc2FnZVdyYXBwZXJ9OiAke3RoaXMubWVzc2FnZX1gO1xuICB9XG5cbiAgcHVibGljIGVycm9yQ29kZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fZXJyb3JDb2RlO1xuICB9XG5cbiAgcHVibGljIHRyYW5zcG9ydERldGFpbHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3RyYW5zcG9ydERldGFpbHM7XG4gIH1cbn1cblxuLyoqXG4gKiBFcnJvciB0aGF0IG9jY3VycyB3aGVuIHRyeWluZyB0byBjcmVhdGUgYSBjYWNoZSB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgYW4gZXhpc3RpbmcgY2FjaGUuIFRvIHJlc29sdmUgdGhpcyBlcnJvcixcbiAqIGVpdGhlciBkZWxldGUgdGhlIGV4aXN0aW5nIGNhY2hlIGFuZCBtYWtlIGEgbmV3IG9uZSwgb3IgY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBjYWNoZSB5b3UgYXJlIHRyeWluZyB0byBjcmVhdGUgdG9cbiAqIG9uZSB0aGF0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdFxuICovXG5leHBvcnQgY2xhc3MgQ2FjaGVBbHJlYWR5RXhpc3RzRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkNBQ0hFX0FMUkVBRFlfRVhJU1RTX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdBIGNhY2hlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGFscmVhZHkgZXhpc3RzLiAgVG8gcmVzb2x2ZSB0aGlzIGVycm9yLCBlaXRoZXIgZGVsZXRlIHRoZSBleGlzdGluZyBjYWNoZSBhbmQgbWFrZSBhIG5ldyBvbmUsIG9yIHVzZSBhIGRpZmZlcmVudCBuYW1lJztcbn1cblxuLyoqXG4gKiBFcnJvciB0aGF0IG9jY3VycyB3aGVuIHRyeWluZyB0byBjcmVhdGUgYSBzdG9yZSB3aXRoIHRoZSBzYW1lIG5hbWUgYXMgYW4gZXhpc3RpbmcgY2FjaGUuIFRvIHJlc29sdmUgdGhpcyBlcnJvcixcbiAqIGVpdGhlciBkZWxldGUgdGhlIGV4aXN0aW5nIHN0b3JlIGFuZCBtYWtlIGEgbmV3IG9uZSwgb3IgY2hhbmdlIHRoZSBuYW1lIG9mIHRoZSBzdG9yZSB5b3UgYXJlIHRyeWluZyB0byBjcmVhdGUgdG9cbiAqIG9uZSB0aGF0IGRvZXNuJ3QgYWxyZWFkeSBleGlzdFxuICovXG5leHBvcnQgY2xhc3MgU3RvcmVBbHJlYWR5RXhpc3RzRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLlNUT1JFX0FMUkVBRFlfRVhJU1RTX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdBIHN0b3JlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGFscmVhZHkgZXhpc3RzLiAgVG8gcmVzb2x2ZSB0aGlzIGVycm9yLCBlaXRoZXIgZGVsZXRlIHRoZSBleGlzdGluZyBzdG9yZSBhbmQgbWFrZSBhIG5ldyBvbmUsIG9yIHVzZSBhIGRpZmZlcmVudCBuYW1lJztcbn1cblxuLyoqXG4gKiBFcnJvciB3aGVuIGF1dGhlbnRpY2F0aW9uIHdpdGggQ2FjaGUgU2VydmljZSBmYWlsc1xuICovXG5leHBvcnQgY2xhc3MgQXV0aGVudGljYXRpb25FcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgb3ZlcnJpZGUgX2Vycm9yQ29kZSA9IE1vbWVudG9FcnJvckNvZGUuQVVUSEVOVElDQVRJT05fRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ0ludmFsaWQgYXV0aGVudGljYXRpb24gY3JlZGVudGlhbHMgdG8gY29ubmVjdCB0byBjYWNoZSBzZXJ2aWNlJztcbn1cblxuLyoqXG4gKiBFcnJvciByYWlzZWQgaW4gcmVzcG9uc2UgdG8gYW4gaW52YWxpZCByZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBCYWRSZXF1ZXN0RXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkJBRF9SRVFVRVNUX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdUaGUgcmVxdWVzdCB3YXMgaW52YWxpZDsgcGxlYXNlIGNvbnRhY3QgdXMgYXQgc3VwcG9ydEBtb21lbnRvaHEuY29tJztcbn1cblxuLyoqXG4gKiBFcnJvciB3aGVuIGFuIG9wZXJhdGlvbiB3aXRoIENhY2hlIFNlcnZpY2Ugd2FzIGNhbmNlbGxlZFxuICovXG5leHBvcnQgY2xhc3MgQ2FuY2VsbGVkRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkNBTkNFTExFRF9FUlJPUjtcbiAgb3ZlcnJpZGUgX21lc3NhZ2VXcmFwcGVyID1cbiAgICAnVGhlIHJlcXVlc3Qgd2FzIGNhbmNlbGxlZCBieSB0aGUgc2VydmVyOyBwbGVhc2UgY29udGFjdCB1cyBhdCBzdXBwb3J0QG1vbWVudG9ocS5jb20nO1xufVxuXG4vKipcbiAqIEVycm9yIHdoZW4gdGhlcmUncyBhIGZhaWx1cmUgdG8gY29ubmVjdCB0byBNb21lbnRvIHNlcnZlcnMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb25uZWN0aW9uRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkNPTk5FQ1RJT05fRVJST1I7XG59XG5cbi8qKlxuICogRXJyb3IgcmFpc2VkIHdoZW4gc3lzdGVtIGluIG5vdCBpbiBhIHN0YXRlIHJlcXVpcmVkIGZvciB0aGUgb3BlcmF0aW9uJ3Mgc3VjY2Vzc1xuICovXG5leHBvcnQgY2xhc3MgRmFpbGVkUHJlY29uZGl0aW9uRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkZBSUxFRF9QUkVDT05ESVRJT05fRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgXCJTeXN0ZW0gaXMgbm90IGluIGEgc3RhdGUgcmVxdWlyZWQgZm9yIHRoZSBvcGVyYXRpb24ncyBleGVjdXRpb25cIjtcbn1cblxuLyoqXG4gKiBDYWNoZSBTZXJ2aWNlIGVuY291bnRlcmVkIGFuIHVuZXhwZWN0ZWQgZXhjZXB0aW9uIHdoaWxlIHRyeWluZyB0byBmdWxmaWxsIHRoZSByZXF1ZXN0XG4gKi9cbmV4cG9ydCBjbGFzcyBJbnRlcm5hbFNlcnZlckVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5JTlRFUk5BTF9TRVJWRVJfRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ0FuIHVuZXhwZWN0ZWQgZXJyb3Igb2NjdXJyZWQgd2hpbGUgdHJ5aW5nIHRvIGZ1bGZpbGwgdGhlIHJlcXVlc3Q7IHBsZWFzZSBjb250YWN0IHVzIGF0IHN1cHBvcnRAbW9tZW50b2hxLmNvbSc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBlcnJvcnMgdGhyb3duIHdoZW4gaW52YWxpZCBwYXJhbWV0ZXJzIGFyZSBwYXNzZWQgdG8gdGhlIE1vbWVudG8gQ2FjaGVcbiAqL1xuZXhwb3J0IGNsYXNzIEludmFsaWRBcmd1bWVudEVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5JTlZBTElEX0FSR1VNRU5UX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPSAnSW52YWxpZCBhcmd1bWVudCBwYXNzZWQgdG8gTW9tZW50byBjbGllbnQnO1xufVxuXG4vKipcbiAqIEVycm9yIHdoZW4gY2FsbHMgYXJlIHRocm90dGxlZCBkdWUgdG8gcmVxdWVzdCBsaW1pdCByYXRlXG4gKi9cbmV4cG9ydCBjbGFzcyBMaW1pdEV4Y2VlZGVkRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLkxJTUlUX0VYQ0VFREVEX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdSZXF1ZXN0IHJhdGUsIGJhbmR3aWR0aCwgb3Igb2JqZWN0IHNpemUgZXhjZWVkZWQgdGhlIGxpbWl0cyBmb3IgdGhpcyBhY2NvdW50LiAgVG8gcmVzb2x2ZSB0aGlzIGVycm9yLCByZWR1Y2UgeW91ciB1c2FnZSBhcyBhcHByb3ByaWF0ZSBvciBjb250YWN0IHVzIGF0IHN1cHBvcnRAbW9tZW50b2hxLmNvbSB0byByZXF1ZXN0IGEgbGltaXQgaW5jcmVhc2UnO1xufVxuXG4vKipcbiAqIEVycm9yIHRoYXQgb2NjdXJzIHdoZW4gdHJ5aW5nIHRvIGdldCBhIGNhY2hlIHRoYXQgZG9lc24ndCBleGlzdC4gVG8gcmVzb2x2ZSwgbWFrZSBzdXJlIHRoYXQgdGhlIGNhY2hlIHlvdSBhcmUgdHJ5aW5nXG4gKiB0byBnZXQgZXhpc3RzLiBJZiBpdCBkb2Vzbid0IGNyZWF0ZSBpdCBmaXJzdCBhbmQgdGhlbiB0cnkgYWdhaW5cbiAqL1xuZXhwb3J0IGNsYXNzIENhY2hlTm90Rm91bmRFcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgb3ZlcnJpZGUgX2Vycm9yQ29kZSA9IE1vbWVudG9FcnJvckNvZGUuQ0FDSEVfTk9UX0ZPVU5EX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdBIGNhY2hlIHdpdGggdGhlIHNwZWNpZmllZCBuYW1lIGRvZXMgbm90IGV4aXN0LiAgVG8gcmVzb2x2ZSB0aGlzIGVycm9yLCBtYWtlIHN1cmUgeW91IGhhdmUgY3JlYXRlZCB0aGUgY2FjaGUgYmVmb3JlIGF0dGVtcHRpbmcgdG8gdXNlIGl0Jztcbn1cblxuLyoqXG4gKiBFcnJvciB0aGF0IG9jY3VycyB3aGVuIHRyeWluZyB0byBnZXQgYSBzdG9yZSB0aGF0IGRvZXNuJ3QgZXhpc3QuIFRvIHJlc29sdmUsIG1ha2Ugc3VyZSB0aGF0IHRoZSBzdG9yZSB5b3UgYXJlIHRyeWluZ1xuICogdG8gZ2V0IGV4aXN0cy4gSWYgaXQgZG9lc24ndCBjcmVhdGUgaXQgZmlyc3QgYW5kIHRoZW4gdHJ5IGFnYWluLlxuICovXG5leHBvcnQgY2xhc3MgU3RvcmVOb3RGb3VuZEVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5TVE9SRV9OT1RfRk9VTkRfRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ0Egc3RvcmUgd2l0aCB0aGUgc3BlY2lmaWVkIG5hbWUgZG9lcyBub3QgZXhpc3QuICBUbyByZXNvbHZlIHRoaXMgZXJyb3IsIG1ha2Ugc3VyZSB5b3UgaGF2ZSBjcmVhdGVkIHRoZSBzdG9yZSBiZWZvcmUgYXR0ZW1wdGluZyB0byB1c2UgaXQnO1xufVxuXG4vKipcbiAqIEVycm9yIHRoYXQgb2NjdXJzIHdoZW4gdHJ5aW5nIHRvIGdldCBhbiBpdGVtIGZyb20gc3RvcmUgdGhhdCBkb2Vzbid0IGV4aXN0LiBUbyByZXNvbHZlLCBtYWtlIHN1cmUgdGhhdCB0aGUgaXRlbSB5b3UgYXJlIHRyeWluZ1xuICogdG8gZ2V0IGV4aXN0cy4gSWYgaXQgZG9lc24ndCBjcmVhdGUgaXQgZmlyc3QgYW5kIHRoZW4gdHJ5IGFnYWluLlxuICovXG5leHBvcnQgY2xhc3MgU3RvcmVJdGVtTm90Rm91bmRFcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgb3ZlcnJpZGUgX2Vycm9yQ29kZSA9IE1vbWVudG9FcnJvckNvZGUuU1RPUkVfSVRFTV9OT1RfRk9VTkRfRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9ICdBbiBpdGVtIHdpdGggdGhlIHNwZWNpZmllZCBrZXkgZG9lcyBub3QgZXhpc3QnO1xufVxuXG4vKipcbiAqIEluc3VmZmljaWVudCBwZXJtaXNzaW9ucyB0byBwZXJmb3JtIGFuIG9wZXJhdGlvbiBvbiBDYWNoZSBTZXJ2aWNlXG4gKi9cbmV4cG9ydCBjbGFzcyBQZXJtaXNzaW9uRXJyb3IgZXh0ZW5kcyBTZGtFcnJvciB7XG4gIG92ZXJyaWRlIF9lcnJvckNvZGUgPSBNb21lbnRvRXJyb3JDb2RlLlBFUk1JU1NJT05fRVJST1I7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ0luc3VmZmljaWVudCBwZXJtaXNzaW9ucyB0byBwZXJmb3JtIGFuIG9wZXJhdGlvbiBvbiBhIGNhY2hlJztcbn1cblxuLyoqXG4gKiBTZXJ2ZXIgd2FzIHVuYWJsZSB0byBoYW5kbGUgdGhlIHJlcXVlc3QuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZXJ2ZXJVbmF2YWlsYWJsZUVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5TRVJWRVJfVU5BVkFJTEFCTEU7XG4gIG92ZXJyaWRlIF9tZXNzYWdlV3JhcHBlciA9XG4gICAgJ1RoZSBzZXJ2ZXIgd2FzIHVuYWJsZSB0byBoYW5kbGUgdGhlIHJlcXVlc3Q7IGNvbnNpZGVyIHJldHJ5aW5nLiAgSWYgdGhlIGVycm9yIHBlcnNpc3RzLCBwbGVhc2UgY29udGFjdCB1cyBhdCBzdXBwb3J0QG1vbWVudG9ocS5jb20nO1xufVxuXG4vKipcbiAqIEVycm9yIHdoZW4gYW4gb3BlcmF0aW9uIGRpZCBub3QgY29tcGxldGUgaW4gdGltZVxuICovXG5leHBvcnQgY2xhc3MgVGltZW91dEVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5USU1FT1VUX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgIFwiVGhlIGNsaWVudCdzIGNvbmZpZ3VyZWQgdGltZW91dCB3YXMgZXhjZWVkZWQ7IHlvdSBtYXkgbmVlZCB0byB1c2UgYSBDb25maWd1cmF0aW9uIHdpdGggbW9yZSBsZW5pZW50IHRpbWVvdXRzXCI7XG59XG5cbi8qKlxuICogRXJyb3IgcmFpc2VkIHdoZW4gdGhlIHVuZGVybHlpbmcgY2F1c2UgaW4gdW5rbm93blxuICovXG5leHBvcnQgY2xhc3MgVW5rbm93bkVycm9yIGV4dGVuZHMgU2RrRXJyb3Ige1xuICBvdmVycmlkZSBfZXJyb3JDb2RlID0gTW9tZW50b0Vycm9yQ29kZS5VTktOT1dOX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPSAnVW5rbm93biBlcnJvciBoYXMgb2NjdXJyZWQnO1xufVxuXG4vKipcbiAqIEVycm9yIHJhaXNlZCB3aGVuIHRoZSBzZXJ2aWNlIHJldHVybnMgYW4gdW5rbm93biByZXNwb25zZVxuICovXG5leHBvcnQgY2xhc3MgVW5rbm93blNlcnZpY2VFcnJvciBleHRlbmRzIFNka0Vycm9yIHtcbiAgb3ZlcnJpZGUgX2Vycm9yQ29kZSA9IE1vbWVudG9FcnJvckNvZGUuVU5LTk9XTl9TRVJWSUNFX0VSUk9SO1xuICBvdmVycmlkZSBfbWVzc2FnZVdyYXBwZXIgPVxuICAgICdTZXJ2aWNlIHJldHVybmVkIGFuIHVua25vd24gcmVzcG9uc2U7IHBsZWFzZSBjb250YWN0IHVzIGF0IHN1cHBvcnRAbW9tZW50b2hxLmNvbSc7XG59XG4iXX0=

7

dist/src/index.d.ts

@@ -72,6 +72,8 @@ import * as CacheGet from './messages/responses/cache-get';

export { Webhook, WebhookId } from './messages/webhook';
export * from './messages/responses/storage';
export { StoreInfo } from './messages/store-info';
import { CacheInfo } from './messages/cache-info';
import { SubscribeCallOptions, CollectionTtl, SortedSetOrder, LeaderboardOrder, ExpiresIn, ExpiresAt, ItemType, WebhookDestination, PostUrlWebhookDestination, WebhookDestinationType, SetBatchItem } from './utils';
import { CredentialProvider, StringMomentoTokenProvider, EnvMomentoTokenProvider } from './auth';
import { MomentoErrorCode, SdkError, AlreadyExistsError, AuthenticationError, CancelledError, ConnectionError, FailedPreconditionError, LimitExceededError, InternalServerError, InvalidArgumentError, UnknownServiceError, ServerUnavailableError, TimeoutError, BadRequestError, PermissionError, NotFoundError, UnknownError } from './errors';
import { MomentoErrorCode, SdkError, CacheAlreadyExistsError, StoreAlreadyExistsError, AuthenticationError, CancelledError, ConnectionError, FailedPreconditionError, LimitExceededError, InternalServerError, InvalidArgumentError, UnknownServiceError, ServerUnavailableError, TimeoutError, BadRequestError, PermissionError, CacheNotFoundError, StoreItemNotFoundError, StoreNotFoundError, UnknownError } from './errors';
export { MomentoLogger, MomentoLoggerFactory, } from './config/logging/momento-logger';

@@ -81,2 +83,3 @@ export * from './messages/responses/enums';

export { ICacheClient, SetOptions, SetIfNotExistsOptions, SetIfAbsentOptions, SetIfPresentOptions, SetIfEqualOptions, SetIfNotEqualOptions, SetIfPresentAndNotEqualOptions, SetIfAbsentOrEqualOptions, IncrementOptions, } from './clients/ICacheClient';
export { IStorageClient } from './clients/IStorageClient';
export { IMomentoCache } from './clients/IMomentoCache';

@@ -107,2 +110,2 @@ export { ILeaderboardClient } from './clients/ILeaderboardClient';

*/
RefreshApiKey as RefreshAuthToken, GenerateDisposableToken, MomentoErrorCode, SdkError, AlreadyExistsError, AuthenticationError, CancelledError, ConnectionError, FailedPreconditionError, LimitExceededError, InternalServerError, InvalidArgumentError, UnknownServiceError, ServerUnavailableError, TimeoutError, BadRequestError, PermissionError, NotFoundError, UnknownError, };
RefreshApiKey as RefreshAuthToken, GenerateDisposableToken, MomentoErrorCode, SdkError, CacheAlreadyExistsError, StoreAlreadyExistsError, AuthenticationError, CancelledError, ConnectionError, FailedPreconditionError, LimitExceededError, InternalServerError, InvalidArgumentError, UnknownServiceError, ServerUnavailableError, TimeoutError, BadRequestError, PermissionError, CacheNotFoundError, StoreItemNotFoundError, StoreNotFoundError, UnknownError, };

@@ -17,5 +17,5 @@ "use strict";

Object.defineProperty(exports, "__esModule", { value: true });
exports.CacheDelete = exports.CacheSetIfAbsentOrEqual = exports.CacheSetIfPresentAndNotEqual = exports.CacheSetIfNotEqual = exports.CacheSetIfEqual = exports.CacheSetIfAbsent = exports.CacheSetIfPresent = exports.CacheSetIfNotExists = exports.CacheSet = exports.CacheListRetain = exports.CacheListRemoveValue = exports.CacheListPushFront = exports.CacheListPushBack = exports.CacheListPopFront = exports.CacheListPopBack = exports.CacheListLength = exports.CacheListFetch = exports.CacheListConcatenateFront = exports.CacheListConcatenateBack = exports.CacheGet = exports.EnvMomentoTokenProvider = exports.StringMomentoTokenProvider = exports.CredentialProvider = exports.LeaderboardOrder = exports.SortedSetOrder = exports.WebhookDestinationType = exports.PostUrlWebhookDestination = exports.ItemType = exports.CollectionTtl = exports.ExpiresAt = exports.ExpiresIn = exports.CompressionLevel = exports.ReadConcern = exports.DisposableTokenScopes = exports.TokenScopes = exports.PermissionScopes = exports.isCacheItemKeyPrefix = exports.isCacheItemKey = exports.AllCacheItems = exports.AllTopics = exports.AllCaches = exports.isTopicName = exports.isCacheName = exports.AllDataReadWrite = exports.TopicRole = exports.CacheRole = exports.NoopMomentoLoggerFactory = exports.NoopMomentoLogger = exports.webhook = exports.leaderboard = void 0;
exports.MomentoErrorCode = exports.GenerateDisposableToken = exports.RefreshAuthToken = exports.RefreshApiKey = exports.GenerateAuthToken = exports.GenerateApiKey = exports.TopicItem = exports.TopicSubscribe = exports.TopicPublish = exports.CacheGetBatch = exports.CacheSetBatch = exports.CacheInfo = exports.CacheDecreaseTtl = exports.CacheIncreaseTtl = exports.CacheUpdateTtl = exports.CacheKeysExist = exports.CacheKeyExists = exports.CacheItemGetTtl = exports.CacheItemGetType = exports.CacheSortedSetLengthByScore = exports.CacheSortedSetLength = exports.CacheSortedSetRemoveElements = exports.CacheSortedSetRemoveElement = exports.CacheSortedSetIncrementScore = exports.CacheSortedSetGetScores = exports.CacheSortedSetGetScore = exports.CacheSortedSetGetRank = exports.CacheSortedSetFetch = exports.CacheSortedSetPutElements = exports.CacheSortedSetPutElement = exports.CacheSetSample = exports.CacheSetRemoveElement = exports.CacheSetRemoveElements = exports.CacheSetAddElement = exports.CacheSetAddElements = exports.CacheDictionaryLength = exports.CacheDictionaryIncrement = exports.CacheDictionaryRemoveFields = exports.CacheDictionaryRemoveField = exports.CacheDictionaryGetFields = exports.CacheDictionaryGetField = exports.CacheDictionarySetFields = exports.CacheDictionarySetField = exports.CacheDictionaryFetch = exports.CacheSetFetch = exports.CacheIncrement = exports.ListCaches = exports.DeleteCache = exports.CreateCache = exports.CacheFlush = void 0;
exports.UnknownError = exports.NotFoundError = exports.PermissionError = exports.BadRequestError = exports.TimeoutError = exports.ServerUnavailableError = exports.UnknownServiceError = exports.InvalidArgumentError = exports.InternalServerError = exports.LimitExceededError = exports.FailedPreconditionError = exports.ConnectionError = exports.CancelledError = exports.AuthenticationError = exports.AlreadyExistsError = exports.SdkError = void 0;
exports.CacheSetIfAbsentOrEqual = exports.CacheSetIfPresentAndNotEqual = exports.CacheSetIfNotEqual = exports.CacheSetIfEqual = exports.CacheSetIfAbsent = exports.CacheSetIfPresent = exports.CacheSetIfNotExists = exports.CacheSet = exports.CacheListRetain = exports.CacheListRemoveValue = exports.CacheListPushFront = exports.CacheListPushBack = exports.CacheListPopFront = exports.CacheListPopBack = exports.CacheListLength = exports.CacheListFetch = exports.CacheListConcatenateFront = exports.CacheListConcatenateBack = exports.CacheGet = exports.EnvMomentoTokenProvider = exports.StringMomentoTokenProvider = exports.CredentialProvider = exports.LeaderboardOrder = exports.SortedSetOrder = exports.WebhookDestinationType = exports.PostUrlWebhookDestination = exports.ItemType = exports.CollectionTtl = exports.ExpiresAt = exports.ExpiresIn = exports.CompressionLevel = exports.ReadConcern = exports.DisposableTokenScopes = exports.TokenScopes = exports.PermissionScopes = exports.isCacheItemKeyPrefix = exports.isCacheItemKey = exports.AllCacheItems = exports.AllTopics = exports.AllCaches = exports.isTopicName = exports.isCacheName = exports.AllDataReadWrite = exports.TopicRole = exports.CacheRole = exports.NoopMomentoLoggerFactory = exports.NoopMomentoLogger = exports.StoreInfo = exports.webhook = exports.leaderboard = void 0;
exports.GenerateDisposableToken = exports.RefreshAuthToken = exports.RefreshApiKey = exports.GenerateAuthToken = exports.GenerateApiKey = exports.TopicItem = exports.TopicSubscribe = exports.TopicPublish = exports.CacheGetBatch = exports.CacheSetBatch = exports.CacheInfo = exports.CacheDecreaseTtl = exports.CacheIncreaseTtl = exports.CacheUpdateTtl = exports.CacheKeysExist = exports.CacheKeyExists = exports.CacheItemGetTtl = exports.CacheItemGetType = exports.CacheSortedSetLengthByScore = exports.CacheSortedSetLength = exports.CacheSortedSetRemoveElements = exports.CacheSortedSetRemoveElement = exports.CacheSortedSetIncrementScore = exports.CacheSortedSetGetScores = exports.CacheSortedSetGetScore = exports.CacheSortedSetGetRank = exports.CacheSortedSetFetch = exports.CacheSortedSetPutElements = exports.CacheSortedSetPutElement = exports.CacheSetSample = exports.CacheSetRemoveElement = exports.CacheSetRemoveElements = exports.CacheSetAddElement = exports.CacheSetAddElements = exports.CacheDictionaryLength = exports.CacheDictionaryIncrement = exports.CacheDictionaryRemoveFields = exports.CacheDictionaryRemoveField = exports.CacheDictionaryGetFields = exports.CacheDictionaryGetField = exports.CacheDictionarySetFields = exports.CacheDictionarySetField = exports.CacheDictionaryFetch = exports.CacheSetFetch = exports.CacheIncrement = exports.ListCaches = exports.DeleteCache = exports.CreateCache = exports.CacheFlush = exports.CacheDelete = void 0;
exports.UnknownError = exports.StoreNotFoundError = exports.StoreItemNotFoundError = exports.CacheNotFoundError = exports.PermissionError = exports.BadRequestError = exports.TimeoutError = exports.ServerUnavailableError = exports.UnknownServiceError = exports.InvalidArgumentError = exports.InternalServerError = exports.LimitExceededError = exports.FailedPreconditionError = exports.ConnectionError = exports.CancelledError = exports.AuthenticationError = exports.StoreAlreadyExistsError = exports.CacheAlreadyExistsError = exports.SdkError = exports.MomentoErrorCode = void 0;
// Cache Client Response Types

@@ -163,2 +163,6 @@ const CacheGet = require("./messages/responses/cache-get");

__exportStar(require("./messages/responses/webhook"), exports);
// StoreClient Response Types
__exportStar(require("./messages/responses/storage"), exports);
var store_info_1 = require("./messages/store-info");
Object.defineProperty(exports, "StoreInfo", { enumerable: true, get: function () { return store_info_1.StoreInfo; } });
const cache_info_1 = require("./messages/cache-info");

@@ -182,3 +186,4 @@ Object.defineProperty(exports, "CacheInfo", { enumerable: true, get: function () { return cache_info_1.CacheInfo; } });

Object.defineProperty(exports, "SdkError", { enumerable: true, get: function () { return errors_1.SdkError; } });
Object.defineProperty(exports, "AlreadyExistsError", { enumerable: true, get: function () { return errors_1.AlreadyExistsError; } });
Object.defineProperty(exports, "CacheAlreadyExistsError", { enumerable: true, get: function () { return errors_1.CacheAlreadyExistsError; } });
Object.defineProperty(exports, "StoreAlreadyExistsError", { enumerable: true, get: function () { return errors_1.StoreAlreadyExistsError; } });
Object.defineProperty(exports, "AuthenticationError", { enumerable: true, get: function () { return errors_1.AuthenticationError; } });

@@ -196,3 +201,5 @@ Object.defineProperty(exports, "CancelledError", { enumerable: true, get: function () { return errors_1.CancelledError; } });

Object.defineProperty(exports, "PermissionError", { enumerable: true, get: function () { return errors_1.PermissionError; } });
Object.defineProperty(exports, "NotFoundError", { enumerable: true, get: function () { return errors_1.NotFoundError; } });
Object.defineProperty(exports, "CacheNotFoundError", { enumerable: true, get: function () { return errors_1.CacheNotFoundError; } });
Object.defineProperty(exports, "StoreItemNotFoundError", { enumerable: true, get: function () { return errors_1.StoreItemNotFoundError; } });
Object.defineProperty(exports, "StoreNotFoundError", { enumerable: true, get: function () { return errors_1.StoreNotFoundError; } });
Object.defineProperty(exports, "UnknownError", { enumerable: true, get: function () { return errors_1.UnknownError; } });

@@ -225,2 +232,2 @@ __exportStar(require("./messages/responses/enums"), exports);

Object.defineProperty(exports, "CompressionLevel", { enumerable: true, get: function () { return compression_level_1.CompressionLevel; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhCQUE4QjtBQUM5QiwyREFBMkQ7QUFrTnpELDRCQUFRO0FBak5WLDZGQUE2RjtBQWtOM0YsNERBQXdCO0FBak4xQiwrRkFBK0Y7QUFrTjdGLDhEQUF5QjtBQWpOM0Isd0VBQXdFO0FBa050RSx3Q0FBYztBQWpOaEIsMEVBQTBFO0FBa054RSwwQ0FBZTtBQWpOakIsNkVBQTZFO0FBa04zRSw0Q0FBZ0I7QUFqTmxCLCtFQUErRTtBQWtON0UsOENBQWlCO0FBak5uQiwrRUFBK0U7QUFrTjdFLDhDQUFpQjtBQWpObkIsaUZBQWlGO0FBa04vRSxnREFBa0I7QUFqTnBCLHFGQUFxRjtBQWtObkYsb0RBQW9CO0FBak50QiwwRUFBMEU7QUFrTnhFLDBDQUFlO0FBak5qQiwyREFBMkQ7QUFrTnpELDRCQUFRO0FBak5WLGlFQUFpRTtBQXlOL0Qsa0NBQVc7QUF4TmIsK0RBQStEO0FBeU43RCxnQ0FBVTtBQXhOWixpRUFBaUU7QUF5Ti9ELGtDQUFXO0FBeE5iLGlFQUFpRTtBQXlOL0Qsa0NBQVc7QUF4TmIsK0RBQStEO0FBeU43RCxnQ0FBVTtBQXhOWixzRUFBc0U7QUEwTnBFLHNDQUFhO0FBek5mLG9GQUFvRjtBQTBObEYsb0RBQW9CO0FBek50QiwyRkFBMkY7QUEwTnpGLDBEQUF1QjtBQXpOekIsNkZBQTZGO0FBME4zRiw0REFBd0I7QUF6TjFCLDJGQUEyRjtBQTBOekYsMERBQXVCO0FBek56Qiw2RkFBNkY7QUEwTjNGLDREQUF3QjtBQXpOMUIsaUdBQWlHO0FBME4vRixnRUFBMEI7QUF6TjVCLG1HQUFtRztBQTBOakcsa0VBQTJCO0FBek43Qiw0RkFBNEY7QUEwTjFGLDREQUF3QjtBQXpOMUIsc0ZBQXNGO0FBME5wRixzREFBcUI7QUF6TnZCLG1GQUFtRjtBQTBOakYsa0RBQW1CO0FB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QUFtQixPQTJMQTtBQUNuQix1R0EzTEEsK0JBQXNCLE9BMkxBO0FBQ3RCLDZGQTNMQSxxQkFBWSxPQTJMQTtBQUNaLGdHQTNMQSx3QkFBZSxPQTJMQTtBQUNmLGdHQTNMQSx3QkFBZSxPQTJMQTtBQUNmLDhGQTNMQSxzQkFBYSxPQTJMQTtBQUNiLDZGQTNMQSxxQkFBWSxPQTJMQTtBQW5MZCw2REFBMkM7QUFFM0MsNEVBRzhDO0FBRjVDLHdIQUFBLGlCQUFpQixPQUFBO0FBQ2pCLCtIQUFBLHdCQUF3QixPQUFBO0FBcUIxQixtRUFzQndDO0FBckJ0Qyw2R0FBQSxTQUFTLE9BQUE7QUFFVCw2R0FBQSxTQUFTLE9BQUE7QUFJVCxvSEFBQSxnQkFBZ0IsT0FBQTtBQU9oQiwrR0FBQSxXQUFXLE9BQUE7QUFFWCwrR0FBQSxXQUFXLE9BQUE7QUFHWCw2R0FBQSxTQUFTLE9BQUE7QUFDVCw2R0FBQSxTQUFTLE9BQUE7QUFDVCxpSEFBQSxhQUFhLE9BQUE7QUFHZiwrRUFPOEM7QUFGNUMsd0hBQUEsY0FBYyxPQUFBO0FBQ2QsOEhBQUEsb0JBQW9CLE9BQUE7QUFHdEIsc0VBQW9FO0FBQ3BFOztHQUVHO0FBQ0gsaUVBQStEO0FBQy9ELGlGQUErRTtBQUUvRSxzREFBa0Q7QUFBMUMsMkdBQUEsV0FBVyxPQUFBO0FBQ25CLHFFQUFpRTtBQUF6RCxxSEFBQSxnQkFBZ0IsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIENhY2hlIENsaWVudCBSZXNwb25zZSBUeXBlc1xuaW1wb3J0ICogYXMgQ2FjaGVHZXQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZ2V0JztcbmltcG9ydCAqIGFzIENhY2hlTGlzdENvbmNhdGVuYXRlQmFjayBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LWNvbmNhdGVuYXRlLWJhY2snO1xuaW1wb3J0ICogYXMgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LWNvbmNhdGVuYXRlLWZyb250JztcbmltcG9ydCAqIGFzIENhY2hlTGlzdEZldGNoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWxpc3QtZmV0Y2gnO1xuaW1wb3J0ICogYXMgQ2FjaGVMaXN0TGVuZ3RoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWxpc3QtbGVuZ3RoJztcbmltcG9ydCAqIGFzIENhY2hlTGlzdFBvcEJhY2sgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtbGlzdC1wb3AtYmFjayc7XG5pbXBvcnQgKiBhcyBDYWNoZUxpc3RQb3BGcm9udCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LXBvcC1mcm9udCc7XG5pbXBvcnQgKiBhcyBDYWNoZUxpc3RQdXNoQmFjayBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LXB1c2gtYmFjayc7XG5pbXBvcnQgKiBhcyBDYWNoZUxpc3RQdXNoRnJvbnQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtbGlzdC1wdXNoLWZyb250JztcbmltcG9ydCAqIGFzIENhY2hlTGlzdFJlbW92ZVZhbHVlIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWxpc3QtcmVtb3ZlLXZhbHVlJztcbmltcG9ydCAqIGFzIENhY2hlTGlzdFJldGFpbiBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LXJldGFpbic7XG5pbXBvcnQgKiBhcyBDYWNoZVNldCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQnO1xuaW1wb3J0ICogYXMgQ2FjaGVEZWxldGUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZGVsZXRlJztcbmltcG9ydCAqIGFzIENhY2hlRmx1c2ggZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZmx1c2gnO1xuaW1wb3J0ICogYXMgQ3JlYXRlQ2FjaGUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY3JlYXRlLWNhY2hlJztcbmltcG9ydCAqIGFzIERlbGV0ZUNhY2hlIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2RlbGV0ZS1jYWNoZSc7XG5pbXBvcnQgKiBhcyBMaXN0Q2FjaGVzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2xpc3QtY2FjaGVzJztcbmltcG9ydCAqIGFzIENhY2hlU2V0RmV0Y2ggZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWZldGNoJztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeUZldGNoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktZmV0Y2gnO1xuaW1wb3J0ICogYXMgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZGljdGlvbmFyeS1zZXQtZmllbGQnO1xuaW1wb3J0ICogYXMgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGRzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktc2V0LWZpZWxkcyc7XG5pbXBvcnQgKiBhcyBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1kaWN0aW9uYXJ5LWdldC1maWVsZCc7XG5pbXBvcnQgKiBhcyBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZHMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZGljdGlvbmFyeS1nZXQtZmllbGRzJztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktcmVtb3ZlLWZpZWxkJztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkcyBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1kaWN0aW9uYXJ5LXJlbW92ZS1maWVsZHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktaW5jcmVtZW50JztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeUxlbmd0aCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1kaWN0aW9uYXJ5LWxlbmd0aCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldEFkZEVsZW1lbnRzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1hZGQtZWxlbWVudHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVTZXRBZGRFbGVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1hZGQtZWxlbWVudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldFJlbW92ZUVsZW1lbnRzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1yZW1vdmUtZWxlbWVudHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVTZXRSZW1vdmVFbGVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1yZW1vdmUtZWxlbWVudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldFNhbXBsZSBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtc2FtcGxlJztcbmltcG9ydCAqIGFzIENhY2hlSW5jcmVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWluY3JlbWVudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmTm90RXhpc3RzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1pZi1ub3QtZXhpc3RzJztcbmltcG9ydCAqIGFzIENhY2hlU2V0SWZBYnNlbnQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWlmLWFic2VudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmUHJlc2VudCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtaWYtcHJlc2VudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmRXF1YWwgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWlmLWVxdWFsJztcbmltcG9ydCAqIGFzIENhY2hlU2V0SWZOb3RFcXVhbCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtaWYtbm90LWVxdWFsJztcbmltcG9ydCAqIGFzIENhY2hlU2V0SWZQcmVzZW50QW5kTm90RXF1YWwgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWlmLXByZXNlbnQtYW5kLW5vdC1lcXVhbCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmQWJzZW50T3JFcXVhbCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtaWYtYWJzZW50LW9yLWVxdWFsJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LXB1dC1lbGVtZW50JztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1wdXQtZWxlbWVudHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRGZXRjaCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LWZldGNoJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0R2V0UmFuayBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LWdldC1yYW5rJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0R2V0U2NvcmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1nZXQtc2NvcmUnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1nZXQtc2NvcmVzJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1pbmNyZW1lbnQtc2NvcmUnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNvcnRlZC1zZXQtcmVtb3ZlLWVsZW1lbnQnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50cyBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LXJlbW92ZS1lbGVtZW50cyc7XG5pbXBvcnQgKiBhcyBDYWNoZVNvcnRlZFNldExlbmd0aCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LWxlbmd0aCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNvcnRlZFNldExlbmd0aEJ5U2NvcmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1sZW5ndGgtYnktc2NvcmUnO1xuaW1wb3J0ICogYXMgQ2FjaGVJdGVtR2V0VHlwZSBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1pdGVtLWdldC10eXBlJztcbmltcG9ydCAqIGFzIENhY2hlSXRlbUdldFR0bCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1pdGVtLWdldC10dGwnO1xuaW1wb3J0ICogYXMgQ2FjaGVLZXlFeGlzdHMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUta2V5LWV4aXN0cyc7XG5pbXBvcnQgKiBhcyBDYWNoZUtleXNFeGlzdCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1rZXlzLWV4aXN0JztcbmltcG9ydCAqIGFzIENhY2hlVXBkYXRlVHRsIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXR0bC11cGRhdGUnO1xuaW1wb3J0ICogYXMgQ2FjaGVJbmNyZWFzZVR0bCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS10dGwtaW5jcmVhc2UnO1xuaW1wb3J0ICogYXMgQ2FjaGVEZWNyZWFzZVR0bCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS10dGwtZGVjcmVhc2UnO1xuaW1wb3J0ICogYXMgQ2FjaGVTZXRCYXRjaCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1iYXRjaC1zZXQnO1xuaW1wb3J0ICogYXMgQ2FjaGVHZXRCYXRjaCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1iYXRjaC1nZXQnO1xuXG4vLyBUb3BpY0NsaWVudCBSZXNwb25zZSBUeXBlc1xuaW1wb3J0ICogYXMgVG9waWNQdWJsaXNoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3RvcGljLXB1Ymxpc2gnO1xuaW1wb3J0ICogYXMgVG9waWNTdWJzY3JpYmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvdG9waWMtc3Vic2NyaWJlJztcbmltcG9ydCB7VG9waWNJdGVtfSBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy90b3BpYy1pdGVtJztcblxuLy8gQXV0aENsaWVudCBSZXNwb25zZSBUeXBlc1xuaW1wb3J0ICogYXMgR2VuZXJhdGVBcGlLZXkgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvZ2VuZXJhdGUtYXBpLWtleSc7XG5pbXBvcnQgKiBhcyBSZWZyZXNoQXBpS2V5IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3JlZnJlc2gtYXBpLWtleSc7XG5cbmltcG9ydCAqIGFzIEdlbmVyYXRlRGlzcG9zYWJsZVRva2VuIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2dlbmVyYXRlLWRpc3Bvc2FibGUtdG9rZW4nO1xuXG4vLyBMZWFkZXJib2FyZCBSZXNwb25zZSBUeXBlc1xuZXhwb3J0ICogYXMgbGVhZGVyYm9hcmQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvbGVhZGVyYm9hcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvbGVhZGVyYm9hcmQnO1xuXG5leHBvcnQgKiBhcyB3ZWJob29rIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3dlYmhvb2snO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvd2ViaG9vayc7XG5leHBvcnQge1dlYmhvb2ssIFdlYmhvb2tJZH0gZnJvbSAnLi9tZXNzYWdlcy93ZWJob29rJztcblxuaW1wb3J0IHtDYWNoZUluZm99IGZyb20gJy4vbWVzc2FnZXMvY2FjaGUtaW5mbyc7XG5pbXBvcnQge1xuICBTdWJzY3JpYmVDYWxsT3B0aW9ucyxcbiAgQ29sbGVjdGlvblR0bCxcbiAgU29ydGVkU2V0T3JkZXIsXG4gIExlYWRlcmJvYXJkT3JkZXIsXG4gIEV4cGlyZXNJbixcbiAgRXhwaXJlc0F0LFxuICBJdGVtVHlwZSxcbiAgV2ViaG9va0Rlc3RpbmF0aW9uLFxuICBQb3N0VXJsV2ViaG9va0Rlc3RpbmF0aW9uLFxuICBXZWJob29rRGVzdGluYXRpb25UeXBlLFxuICBTZXRCYXRjaEl0ZW0sXG59IGZyb20gJy4vdXRpbHMnO1xuXG5pbXBvcnQge1xuICBDcmVkZW50aWFsUHJvdmlkZXIsXG4gIFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyLFxuICBFbnZNb21lbnRvVG9rZW5Qcm92aWRlcixcbn0gZnJvbSAnLi9hdXRoJztcblxuaW1wb3J0IHtcbiAgTW9tZW50b0Vycm9yQ29kZSxcbiAgU2RrRXJyb3IsXG4gIEFscmVhZHlFeGlzdHNFcnJvcixcbiAgQXV0aGVudGljYXRpb25FcnJvcixcbiAgQ2FuY2VsbGVkRXJyb3IsXG4gIENvbm5lY3Rpb25FcnJvcixcbiAgRmFpbGVkUHJlY29uZGl0aW9uRXJyb3IsXG4gIExpbWl0RXhjZWVkZWRFcnJvcixcbiAgSW50ZXJuYWxTZXJ2ZXJFcnJvcixcbiAgSW52YWxpZEFyZ3VtZW50RXJyb3IsXG4gIFVua25vd25TZXJ2aWNlRXJyb3IsXG4gIFNlcnZlclVuYXZhaWxhYmxlRXJyb3IsXG4gIFRpbWVvdXRFcnJvcixcbiAgQmFkUmVxdWVzdEVycm9yLFxuICBQZXJtaXNzaW9uRXJyb3IsXG4gIE5vdEZvdW5kRXJyb3IsXG4gIFVua25vd25FcnJvcixcbn0gZnJvbSAnLi9lcnJvcnMnO1xuXG5leHBvcnQge1xuICBNb21lbnRvTG9nZ2VyLFxuICBNb21lbnRvTG9nZ2VyRmFjdG9yeSxcbn0gZnJvbSAnLi9jb25maWcvbG9nZ2luZy9tb21lbnRvLWxvZ2dlcic7XG5cbmV4cG9ydCAqIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2VudW1zJztcblxuZXhwb3J0IHtcbiAgTm9vcE1vbWVudG9Mb2dnZXIsXG4gIE5vb3BNb21lbnRvTG9nZ2VyRmFjdG9yeSxcbn0gZnJvbSAnLi9jb25maWcvbG9nZ2luZy9ub29wLW1vbWVudG8tbG9nZ2VyJztcblxuZXhwb3J0IHtcbiAgSUNhY2hlQ2xpZW50LFxuICBTZXRPcHRpb25zLFxuICBTZXRJZk5vdEV4aXN0c09wdGlvbnMsXG4gIFNldElmQWJzZW50T3B0aW9ucyxcbiAgU2V0SWZQcmVzZW50T3B0aW9ucyxcbiAgU2V0SWZFcXVhbE9wdGlvbnMsXG4gIFNldElmTm90RXF1YWxPcHRpb25zLFxuICBTZXRJZlByZXNlbnRBbmROb3RFcXVhbE9wdGlvbnMsXG4gIFNldElmQWJzZW50T3JFcXVhbE9wdGlvbnMsXG4gIEluY3JlbWVudE9wdGlvbnMsXG59IGZyb20gJy4vY2xpZW50cy9JQ2FjaGVDbGllbnQnO1xuXG5leHBvcnQge0lNb21lbnRvQ2FjaGV9IGZyb20gJy4vY2xpZW50cy9JTW9tZW50b0NhY2hlJztcblxuZXhwb3J0IHtJTGVhZGVyYm9hcmRDbGllbnR9IGZyb20gJy4vY2xpZW50cy9JTGVhZGVyYm9hcmRDbGllbnQnO1xuZXhwb3J0IHtJTGVhZGVyYm9hcmR9IGZyb20gJy4vY2xpZW50cy9JTGVhZGVyYm9hcmQnO1xuXG5leHBvcnQge1xuICBDYWNoZVJvbGUsXG4gIENhY2hlUGVybWlzc2lvbixcbiAgVG9waWNSb2xlLFxuICBUb3BpY1Blcm1pc3Npb24sXG4gIFBlcm1pc3Npb24sXG4gIFBlcm1pc3Npb25zLFxuICBBbGxEYXRhUmVhZFdyaXRlLFxuICBQZXJtaXNzaW9uU2NvcGUsXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCAtIHBsZWFzZSB1c2UgUGVybWlzc2lvblNjb3BlXG4gICAqL1xuICBUb2tlblNjb3BlLFxuICBDYWNoZU5hbWUsXG4gIGlzQ2FjaGVOYW1lLFxuICBUb3BpY05hbWUsXG4gIGlzVG9waWNOYW1lLFxuICBDYWNoZVNlbGVjdG9yLFxuICBUb3BpY1NlbGVjdG9yLFxuICBBbGxDYWNoZXMsXG4gIEFsbFRvcGljcyxcbiAgQWxsQ2FjaGVJdGVtcyxcbn0gZnJvbSAnLi9hdXRoL3Rva2Vucy9wZXJtaXNzaW9uLXNjb3BlJztcblxuZXhwb3J0IHtcbiAgRGlzcG9zYWJsZVRva2VuU2NvcGUsXG4gIENhY2hlSXRlbVNlbGVjdG9yLFxuICBDYWNoZUl0ZW1LZXksXG4gIENhY2hlSXRlbUtleVByZWZpeCxcbiAgaXNDYWNoZUl0ZW1LZXksXG4gIGlzQ2FjaGVJdGVtS2V5UHJlZml4LFxufSBmcm9tICcuL2F1dGgvdG9rZW5zL2Rpc3Bvc2FibGUtdG9rZW4tc2NvcGUnO1xuXG5leHBvcnQgKiBhcyBQZXJtaXNzaW9uU2NvcGVzIGZyb20gJy4vYXV0aC90b2tlbnMvcGVybWlzc2lvbi1zY29wZXMnO1xuLyoqXG4gKiBAZGVwcmVjYXRlZCBwbGVhc2UgdXNlIFBlcm1pc3Npb25TY29wZXMgaW5zdGVhZFxuICovXG5leHBvcnQgKiBhcyBUb2tlblNjb3BlcyBmcm9tICcuL2F1dGgvdG9rZW5zL3Blcm1pc3Npb24tc2NvcGVzJztcbmV4cG9ydCAqIGFzIERpc3Bvc2FibGVUb2tlblNjb3BlcyBmcm9tICcuL2F1dGgvdG9rZW5zL2Rpc3Bvc2FibGUtdG9rZW4tc2NvcGVzJztcblxuZXhwb3J0IHtSZWFkQ29uY2Vybn0gZnJvbSAnLi9jb25maWcvcmVhZC1jb25jZXJuJztcbmV4cG9ydCB7Q29tcHJlc3Npb25MZXZlbH0gZnJvbSAnLi9jb21wcmVzc2lvbi9jb21wcmVzc2lvbi1sZXZlbCc7XG5cbmV4cG9ydCB7XG4gIEV4cGlyZXNJbixcbiAgRXhwaXJlc0F0LFxuICBDb2xsZWN0aW9uVHRsLFxuICBJdGVtVHlwZSxcbiAgV2ViaG9va0Rlc3RpbmF0aW9uLFxuICBQb3N0VXJsV2ViaG9va0Rlc3RpbmF0aW9uLFxuICBXZWJob29rRGVzdGluYXRpb25UeXBlLFxuICBTb3J0ZWRTZXRPcmRlcixcbiAgTGVhZGVyYm9hcmRPcmRlcixcbiAgQ3JlZGVudGlhbFByb3ZpZGVyLFxuICBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlcixcbiAgRW52TW9tZW50b1Rva2VuUHJvdmlkZXIsXG4gIFNldEJhdGNoSXRlbSxcblxuICAvLyBDYWNoZUNsaWVudCBSZXNwb25zZSBUeXBlc1xuICBDYWNoZUdldCxcbiAgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVCYWNrLFxuICBDYWNoZUxpc3RDb25jYXRlbmF0ZUZyb250LFxuICBDYWNoZUxpc3RGZXRjaCxcbiAgQ2FjaGVMaXN0TGVuZ3RoLFxuICBDYWNoZUxpc3RQb3BCYWNrLFxuICBDYWNoZUxpc3RQb3BGcm9udCxcbiAgQ2FjaGVMaXN0UHVzaEJhY2ssXG4gIENhY2hlTGlzdFB1c2hGcm9udCxcbiAgQ2FjaGVMaXN0UmVtb3ZlVmFsdWUsXG4gIENhY2hlTGlzdFJldGFpbixcbiAgQ2FjaGVTZXQsXG4gIENhY2hlU2V0SWZOb3RFeGlzdHMsXG4gIENhY2hlU2V0SWZQcmVzZW50LFxuICBDYWNoZVNldElmQWJzZW50LFxuICBDYWNoZVNldElmRXF1YWwsXG4gIENhY2hlU2V0SWZOb3RFcXVhbCxcbiAgQ2FjaGVTZXRJZlByZXNlbnRBbmROb3RFcXVhbCxcbiAgQ2FjaGVTZXRJZkFic2VudE9yRXF1YWwsXG4gIENhY2hlRGVsZXRlLFxuICBDYWNoZUZsdXNoLFxuICBDcmVhdGVDYWNoZSxcbiAgRGVsZXRlQ2FjaGUsXG4gIExpc3RDYWNoZXMsXG4gIENhY2hlSW5jcmVtZW50LFxuICBDYWNoZVNldEZldGNoLFxuICBDYWNoZURpY3Rpb25hcnlGZXRjaCxcbiAgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGQsXG4gIENhY2hlRGljdGlvbmFyeVNldEZpZWxkcyxcbiAgQ2FjaGVEaWN0aW9uYXJ5R2V0RmllbGQsXG4gIENhY2hlRGljdGlvbmFyeUdldEZpZWxkcyxcbiAgQ2FjaGVEaWN0aW9uYXJ5UmVtb3ZlRmllbGQsXG4gIENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkcyxcbiAgQ2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50LFxuICBDYWNoZURpY3Rpb25hcnlMZW5ndGgsXG4gIENhY2hlU2V0QWRkRWxlbWVudHMsXG4gIENhY2hlU2V0QWRkRWxlbWVudCxcbiAgQ2FjaGVTZXRSZW1vdmVFbGVtZW50cyxcbiAgQ2FjaGVTZXRSZW1vdmVFbGVtZW50LFxuICBDYWNoZVNldFNhbXBsZSxcbiAgQ2FjaGVTb3J0ZWRTZXRQdXRFbGVtZW50LFxuICBDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnRzLFxuICBDYWNoZVNvcnRlZFNldEZldGNoLFxuICBDYWNoZVNvcnRlZFNldEdldFJhbmssXG4gIENhY2hlU29ydGVkU2V0R2V0U2NvcmUsXG4gIENhY2hlU29ydGVkU2V0R2V0U2NvcmVzLFxuICBDYWNoZVNvcnRlZFNldEluY3JlbWVudFNjb3JlLFxuICBDYWNoZVNvcnRlZFNldFJlbW92ZUVsZW1lbnQsXG4gIENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudHMsXG4gIENhY2hlU29ydGVkU2V0TGVuZ3RoLFxuICBDYWNoZVNvcnRlZFNldExlbmd0aEJ5U2NvcmUsXG4gIENhY2hlSXRlbUdldFR5cGUsXG4gIENhY2hlSXRlbUdldFR0bCxcbiAgQ2FjaGVLZXlFeGlzdHMsXG4gIENhY2hlS2V5c0V4aXN0LFxuICBDYWNoZVVwZGF0ZVR0bCxcbiAgQ2FjaGVJbmNyZWFzZVR0bCxcbiAgQ2FjaGVEZWNyZWFzZVR0bCxcbiAgQ2FjaGVJbmZvLFxuICBDYWNoZVNldEJhdGNoLFxuICBDYWNoZUdldEJhdGNoLFxuICAvLyBUb3BpY0NsaWVudCBSZXNwb25zZSBUeXBlc1xuICBUb3BpY1B1Ymxpc2gsXG4gIFRvcGljU3Vic2NyaWJlLFxuICBUb3BpY0l0ZW0sXG4gIFN1YnNjcmliZUNhbGxPcHRpb25zLFxuICAvLyBBdXRoQ2xpZW50IFJlc3BvbnNlIFR5cGVzXG4gIEdlbmVyYXRlQXBpS2V5LFxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgLSBwbGVhc2UgdXNlIEdlbmVyYXRlQXBpS2V5XG4gICAqL1xuICBHZW5lcmF0ZUFwaUtleSBhcyBHZW5lcmF0ZUF1dGhUb2tlbixcbiAgUmVmcmVzaEFwaUtleSxcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIC0gcGxlYXNlIHVzZSBSZWZyZXNoQXBpS2V5XG4gICAqL1xuICBSZWZyZXNoQXBpS2V5IGFzIFJlZnJlc2hBdXRoVG9rZW4sXG4gIEdlbmVyYXRlRGlzcG9zYWJsZVRva2VuLFxuICAvLyBFcnJvcnNcbiAgTW9tZW50b0Vycm9yQ29kZSxcbiAgU2RrRXJyb3IsXG4gIEFscmVhZHlFeGlzdHNFcnJvcixcbiAgQXV0aGVudGljYXRpb25FcnJvcixcbiAgQ2FuY2VsbGVkRXJyb3IsXG4gIENvbm5lY3Rpb25FcnJvcixcbiAgRmFpbGVkUHJlY29uZGl0aW9uRXJyb3IsXG4gIExpbWl0RXhjZWVkZWRFcnJvcixcbiAgSW50ZXJuYWxTZXJ2ZXJFcnJvcixcbiAgSW52YWxpZEFyZ3VtZW50RXJyb3IsXG4gIFVua25vd25TZXJ2aWNlRXJyb3IsXG4gIFNlcnZlclVuYXZhaWxhYmxlRXJyb3IsXG4gIFRpbWVvdXRFcnJvcixcbiAgQmFkUmVxdWVzdEVycm9yLFxuICBQZXJtaXNzaW9uRXJyb3IsXG4gIE5vdEZvdW5kRXJyb3IsXG4gIFVua25vd25FcnJvcixcbn07XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDhCQUE4QjtBQUM5QiwyREFBMkQ7QUEyTnpELDRCQUFRO0FBMU5WLDZGQUE2RjtBQTJOM0YsNERBQXdCO0FBMU4xQiwrRkFBK0Y7QUEyTjdGLDhEQUF5QjtBQTFOM0Isd0VBQXdFO0FBMk50RSx3Q0FBYztBQTFOaEIsMEVBQTBFO0FBMk54RSwwQ0FBZTtBQTFOakIsNkVBQTZFO0FBMk4zRSw0Q0FBZ0I7QUExTmxCLCtFQUErRTtBQTJON0UsOENBQWlCO0FBMU5uQiwrRUFBK0U7QUEyTjdFLDhDQUFpQjtBQTFObkIsaUZBQWlGO0FBMk4vRSxnREFBa0I7QUExTnBCLHFGQUFxRjtBQTJObkYsb0RBQW9CO0FBMU50QiwwRUFBMEU7QUEyTnhFLDBDQUFlO0FBMU5qQiwyREFBMkQ7QUEyTnpELDRCQUFRO0FBMU5WLGlFQUFpRTtBQWtPL0Qsa0NBQVc7QUFqT2IsK0RBQStEO0FBa083RCxnQ0FBVTtBQWpPWixpRUFBaUU7QUFrTy9ELGtDQUFXO0FBak9iLGlFQUFpRTtBQWtPL0Qsa0NBQVc7QUFqT2IsK0RBQStEO0FBa083RCxnQ0FBVTtBQWpPWixzRUFBc0U7QUFtT3BFLHNDQUFhO0FBbE9mLG9GQUFvRjtBQW1PbEYsb0RBQW9CO0FBbE90QiwyRkFBMkY7QUFtT3pGLDBEQUF1QjtBQWxPekIsNkZBQTZGO0FBbU8zRiw0REFBd0I7QUFsTzFCLDJGQUEyRjtBQW1PekYsMERBQXVCO0FBbE96Qiw2RkFBNkY7QUFtTzNGLDREQUF3QjtBQWxPMUIsaUdBQWlHO0FBbU8vRixnRUFBMEI7QUFsTzVCLG1HQUFtRztBQW1Pakcsa0VBQTJCO0FBbE83Qiw0RkFBNEY7QUFtTzFGLDREQUF3QjtBQWxPMUIsc0ZBQXNGO0FBbU9wRixzREFBcUI7QUFsT3ZCLG1GQUFtRjtBQW1PakYsa0RBQW1CO0FB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bUdBaE1BLDJCQUFrQixPQWdNQTtBQUNsQixvR0FoTUEsNEJBQW1CLE9BZ01BO0FBQ25CLHFHQWhNQSw2QkFBb0IsT0FnTUE7QUFDcEIsb0dBaE1BLDRCQUFtQixPQWdNQTtBQUNuQix1R0FoTUEsK0JBQXNCLE9BZ01BO0FBQ3RCLDZGQWhNQSxxQkFBWSxPQWdNQTtBQUNaLGdHQWhNQSx3QkFBZSxPQWdNQTtBQUNmLGdHQWhNQSx3QkFBZSxPQWdNQTtBQUNmLG1HQWhNQSwyQkFBa0IsT0FnTUE7QUFDbEIsdUdBaE1BLCtCQUFzQixPQWdNQTtBQUN0QixtR0FoTUEsMkJBQWtCLE9BZ01BO0FBQ2xCLDZGQWhNQSxxQkFBWSxPQWdNQTtBQXhMZCw2REFBMkM7QUFFM0MsNEVBRzhDO0FBRjVDLHdIQUFBLGlCQUFpQixPQUFBO0FBQ2pCLCtIQUFBLHdCQUF3QixPQUFBO0FBdUIxQixtRUFzQndDO0FBckJ0Qyw2R0FBQSxTQUFTLE9BQUE7QUFFVCw2R0FBQSxTQUFTLE9BQUE7QUFJVCxvSEFBQSxnQkFBZ0IsT0FBQTtBQU9oQiwrR0FBQSxXQUFXLE9BQUE7QUFFWCwrR0FBQSxXQUFXLE9BQUE7QUFHWCw2R0FBQSxTQUFTLE9BQUE7QUFDVCw2R0FBQSxTQUFTLE9BQUE7QUFDVCxpSEFBQSxhQUFhLE9BQUE7QUFHZiwrRUFPOEM7QUFGNUMsd0hBQUEsY0FBYyxPQUFBO0FBQ2QsOEhBQUEsb0JBQW9CLE9BQUE7QUFHdEIsc0VBQW9FO0FBQ3BFOztHQUVHO0FBQ0gsaUVBQStEO0FBQy9ELGlGQUErRTtBQUUvRSxzREFBa0Q7QUFBMUMsMkdBQUEsV0FBVyxPQUFBO0FBQ25CLHFFQUFpRTtBQUF6RCxxSEFBQSxnQkFBZ0IsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8vIENhY2hlIENsaWVudCBSZXNwb25zZSBUeXBlc1xuaW1wb3J0ICogYXMgQ2FjaGVHZXQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZ2V0JztcbmltcG9ydCAqIGFzIENhY2hlTGlzdENvbmNhdGVuYXRlQmFjayBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LWNvbmNhdGVuYXRlLWJhY2snO1xuaW1wb3J0ICogYXMgQ2FjaGVMaXN0Q29uY2F0ZW5hdGVGcm9udCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LWNvbmNhdGVuYXRlLWZyb250JztcbmltcG9ydCAqIGFzIENhY2hlTGlzdEZldGNoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWxpc3QtZmV0Y2gnO1xuaW1wb3J0ICogYXMgQ2FjaGVMaXN0TGVuZ3RoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWxpc3QtbGVuZ3RoJztcbmltcG9ydCAqIGFzIENhY2hlTGlzdFBvcEJhY2sgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtbGlzdC1wb3AtYmFjayc7XG5pbXBvcnQgKiBhcyBDYWNoZUxpc3RQb3BGcm9udCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LXBvcC1mcm9udCc7XG5pbXBvcnQgKiBhcyBDYWNoZUxpc3RQdXNoQmFjayBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LXB1c2gtYmFjayc7XG5pbXBvcnQgKiBhcyBDYWNoZUxpc3RQdXNoRnJvbnQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtbGlzdC1wdXNoLWZyb250JztcbmltcG9ydCAqIGFzIENhY2hlTGlzdFJlbW92ZVZhbHVlIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWxpc3QtcmVtb3ZlLXZhbHVlJztcbmltcG9ydCAqIGFzIENhY2hlTGlzdFJldGFpbiBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1saXN0LXJldGFpbic7XG5pbXBvcnQgKiBhcyBDYWNoZVNldCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQnO1xuaW1wb3J0ICogYXMgQ2FjaGVEZWxldGUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZGVsZXRlJztcbmltcG9ydCAqIGFzIENhY2hlRmx1c2ggZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZmx1c2gnO1xuaW1wb3J0ICogYXMgQ3JlYXRlQ2FjaGUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY3JlYXRlLWNhY2hlJztcbmltcG9ydCAqIGFzIERlbGV0ZUNhY2hlIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2RlbGV0ZS1jYWNoZSc7XG5pbXBvcnQgKiBhcyBMaXN0Q2FjaGVzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2xpc3QtY2FjaGVzJztcbmltcG9ydCAqIGFzIENhY2hlU2V0RmV0Y2ggZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWZldGNoJztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeUZldGNoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktZmV0Y2gnO1xuaW1wb3J0ICogYXMgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZGljdGlvbmFyeS1zZXQtZmllbGQnO1xuaW1wb3J0ICogYXMgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGRzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktc2V0LWZpZWxkcyc7XG5pbXBvcnQgKiBhcyBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1kaWN0aW9uYXJ5LWdldC1maWVsZCc7XG5pbXBvcnQgKiBhcyBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZHMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtZGljdGlvbmFyeS1nZXQtZmllbGRzJztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktcmVtb3ZlLWZpZWxkJztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeVJlbW92ZUZpZWxkcyBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1kaWN0aW9uYXJ5LXJlbW92ZS1maWVsZHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVEaWN0aW9uYXJ5SW5jcmVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWRpY3Rpb25hcnktaW5jcmVtZW50JztcbmltcG9ydCAqIGFzIENhY2hlRGljdGlvbmFyeUxlbmd0aCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1kaWN0aW9uYXJ5LWxlbmd0aCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldEFkZEVsZW1lbnRzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1hZGQtZWxlbWVudHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVTZXRBZGRFbGVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1hZGQtZWxlbWVudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldFJlbW92ZUVsZW1lbnRzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1yZW1vdmUtZWxlbWVudHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVTZXRSZW1vdmVFbGVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1yZW1vdmUtZWxlbWVudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldFNhbXBsZSBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtc2FtcGxlJztcbmltcG9ydCAqIGFzIENhY2hlSW5jcmVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLWluY3JlbWVudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmTm90RXhpc3RzIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNldC1pZi1ub3QtZXhpc3RzJztcbmltcG9ydCAqIGFzIENhY2hlU2V0SWZBYnNlbnQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWlmLWFic2VudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmUHJlc2VudCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtaWYtcHJlc2VudCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmRXF1YWwgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWlmLWVxdWFsJztcbmltcG9ydCAqIGFzIENhY2hlU2V0SWZOb3RFcXVhbCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtaWYtbm90LWVxdWFsJztcbmltcG9ydCAqIGFzIENhY2hlU2V0SWZQcmVzZW50QW5kTm90RXF1YWwgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc2V0LWlmLXByZXNlbnQtYW5kLW5vdC1lcXVhbCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNldElmQWJzZW50T3JFcXVhbCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zZXQtaWYtYWJzZW50LW9yLWVxdWFsJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LXB1dC1lbGVtZW50JztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1wdXQtZWxlbWVudHMnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRGZXRjaCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LWZldGNoJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0R2V0UmFuayBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LWdldC1yYW5rJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0R2V0U2NvcmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1nZXQtc2NvcmUnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1nZXQtc2NvcmVzJztcbmltcG9ydCAqIGFzIENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1pbmNyZW1lbnQtc2NvcmUnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXNvcnRlZC1zZXQtcmVtb3ZlLWVsZW1lbnQnO1xuaW1wb3J0ICogYXMgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50cyBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LXJlbW92ZS1lbGVtZW50cyc7XG5pbXBvcnQgKiBhcyBDYWNoZVNvcnRlZFNldExlbmd0aCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1zb3J0ZWQtc2V0LWxlbmd0aCc7XG5pbXBvcnQgKiBhcyBDYWNoZVNvcnRlZFNldExlbmd0aEJ5U2NvcmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUtc29ydGVkLXNldC1sZW5ndGgtYnktc2NvcmUnO1xuaW1wb3J0ICogYXMgQ2FjaGVJdGVtR2V0VHlwZSBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1pdGVtLWdldC10eXBlJztcbmltcG9ydCAqIGFzIENhY2hlSXRlbUdldFR0bCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1pdGVtLWdldC10dGwnO1xuaW1wb3J0ICogYXMgQ2FjaGVLZXlFeGlzdHMgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvY2FjaGUta2V5LWV4aXN0cyc7XG5pbXBvcnQgKiBhcyBDYWNoZUtleXNFeGlzdCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1rZXlzLWV4aXN0JztcbmltcG9ydCAqIGFzIENhY2hlVXBkYXRlVHRsIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2NhY2hlLXR0bC11cGRhdGUnO1xuaW1wb3J0ICogYXMgQ2FjaGVJbmNyZWFzZVR0bCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS10dGwtaW5jcmVhc2UnO1xuaW1wb3J0ICogYXMgQ2FjaGVEZWNyZWFzZVR0bCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS10dGwtZGVjcmVhc2UnO1xuaW1wb3J0ICogYXMgQ2FjaGVTZXRCYXRjaCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1iYXRjaC1zZXQnO1xuaW1wb3J0ICogYXMgQ2FjaGVHZXRCYXRjaCBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy9jYWNoZS1iYXRjaC1nZXQnO1xuXG4vLyBUb3BpY0NsaWVudCBSZXNwb25zZSBUeXBlc1xuaW1wb3J0ICogYXMgVG9waWNQdWJsaXNoIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3RvcGljLXB1Ymxpc2gnO1xuaW1wb3J0ICogYXMgVG9waWNTdWJzY3JpYmUgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvdG9waWMtc3Vic2NyaWJlJztcbmltcG9ydCB7VG9waWNJdGVtfSBmcm9tICcuL21lc3NhZ2VzL3Jlc3BvbnNlcy90b3BpYy1pdGVtJztcblxuLy8gQXV0aENsaWVudCBSZXNwb25zZSBUeXBlc1xuaW1wb3J0ICogYXMgR2VuZXJhdGVBcGlLZXkgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvZ2VuZXJhdGUtYXBpLWtleSc7XG5pbXBvcnQgKiBhcyBSZWZyZXNoQXBpS2V5IGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3JlZnJlc2gtYXBpLWtleSc7XG5cbmltcG9ydCAqIGFzIEdlbmVyYXRlRGlzcG9zYWJsZVRva2VuIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL2dlbmVyYXRlLWRpc3Bvc2FibGUtdG9rZW4nO1xuXG4vLyBMZWFkZXJib2FyZCBSZXNwb25zZSBUeXBlc1xuZXhwb3J0ICogYXMgbGVhZGVyYm9hcmQgZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvbGVhZGVyYm9hcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvbGVhZGVyYm9hcmQnO1xuXG5leHBvcnQgKiBhcyB3ZWJob29rIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3dlYmhvb2snO1xuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvd2ViaG9vayc7XG5leHBvcnQge1dlYmhvb2ssIFdlYmhvb2tJZH0gZnJvbSAnLi9tZXNzYWdlcy93ZWJob29rJztcblxuLy8gU3RvcmVDbGllbnQgUmVzcG9uc2UgVHlwZXNcbmV4cG9ydCAqIGZyb20gJy4vbWVzc2FnZXMvcmVzcG9uc2VzL3N0b3JhZ2UnO1xuZXhwb3J0IHtTdG9yZUluZm99IGZyb20gJy4vbWVzc2FnZXMvc3RvcmUtaW5mbyc7XG5cbmltcG9ydCB7Q2FjaGVJbmZvfSBmcm9tICcuL21lc3NhZ2VzL2NhY2hlLWluZm8nO1xuaW1wb3J0IHtcbiAgU3Vic2NyaWJlQ2FsbE9wdGlvbnMsXG4gIENvbGxlY3Rpb25UdGwsXG4gIFNvcnRlZFNldE9yZGVyLFxuICBMZWFkZXJib2FyZE9yZGVyLFxuICBFeHBpcmVzSW4sXG4gIEV4cGlyZXNBdCxcbiAgSXRlbVR5cGUsXG4gIFdlYmhvb2tEZXN0aW5hdGlvbixcbiAgUG9zdFVybFdlYmhvb2tEZXN0aW5hdGlvbixcbiAgV2ViaG9va0Rlc3RpbmF0aW9uVHlwZSxcbiAgU2V0QmF0Y2hJdGVtLFxufSBmcm9tICcuL3V0aWxzJztcblxuaW1wb3J0IHtcbiAgQ3JlZGVudGlhbFByb3ZpZGVyLFxuICBTdHJpbmdNb21lbnRvVG9rZW5Qcm92aWRlcixcbiAgRW52TW9tZW50b1Rva2VuUHJvdmlkZXIsXG59IGZyb20gJy4vYXV0aCc7XG5cbmltcG9ydCB7XG4gIE1vbWVudG9FcnJvckNvZGUsXG4gIFNka0Vycm9yLFxuICBDYWNoZUFscmVhZHlFeGlzdHNFcnJvcixcbiAgU3RvcmVBbHJlYWR5RXhpc3RzRXJyb3IsXG4gIEF1dGhlbnRpY2F0aW9uRXJyb3IsXG4gIENhbmNlbGxlZEVycm9yLFxuICBDb25uZWN0aW9uRXJyb3IsXG4gIEZhaWxlZFByZWNvbmRpdGlvbkVycm9yLFxuICBMaW1pdEV4Y2VlZGVkRXJyb3IsXG4gIEludGVybmFsU2VydmVyRXJyb3IsXG4gIEludmFsaWRBcmd1bWVudEVycm9yLFxuICBVbmtub3duU2VydmljZUVycm9yLFxuICBTZXJ2ZXJVbmF2YWlsYWJsZUVycm9yLFxuICBUaW1lb3V0RXJyb3IsXG4gIEJhZFJlcXVlc3RFcnJvcixcbiAgUGVybWlzc2lvbkVycm9yLFxuICBDYWNoZU5vdEZvdW5kRXJyb3IsXG4gIFN0b3JlSXRlbU5vdEZvdW5kRXJyb3IsXG4gIFN0b3JlTm90Rm91bmRFcnJvcixcbiAgVW5rbm93bkVycm9yLFxufSBmcm9tICcuL2Vycm9ycyc7XG5cbmV4cG9ydCB7XG4gIE1vbWVudG9Mb2dnZXIsXG4gIE1vbWVudG9Mb2dnZXJGYWN0b3J5LFxufSBmcm9tICcuL2NvbmZpZy9sb2dnaW5nL21vbWVudG8tbG9nZ2VyJztcblxuZXhwb3J0ICogZnJvbSAnLi9tZXNzYWdlcy9yZXNwb25zZXMvZW51bXMnO1xuXG5leHBvcnQge1xuICBOb29wTW9tZW50b0xvZ2dlcixcbiAgTm9vcE1vbWVudG9Mb2dnZXJGYWN0b3J5LFxufSBmcm9tICcuL2NvbmZpZy9sb2dnaW5nL25vb3AtbW9tZW50by1sb2dnZXInO1xuXG5leHBvcnQge1xuICBJQ2FjaGVDbGllbnQsXG4gIFNldE9wdGlvbnMsXG4gIFNldElmTm90RXhpc3RzT3B0aW9ucyxcbiAgU2V0SWZBYnNlbnRPcHRpb25zLFxuICBTZXRJZlByZXNlbnRPcHRpb25zLFxuICBTZXRJZkVxdWFsT3B0aW9ucyxcbiAgU2V0SWZOb3RFcXVhbE9wdGlvbnMsXG4gIFNldElmUHJlc2VudEFuZE5vdEVxdWFsT3B0aW9ucyxcbiAgU2V0SWZBYnNlbnRPckVxdWFsT3B0aW9ucyxcbiAgSW5jcmVtZW50T3B0aW9ucyxcbn0gZnJvbSAnLi9jbGllbnRzL0lDYWNoZUNsaWVudCc7XG5cbmV4cG9ydCB7SVN0b3JhZ2VDbGllbnR9IGZyb20gJy4vY2xpZW50cy9JU3RvcmFnZUNsaWVudCc7XG5cbmV4cG9ydCB7SU1vbWVudG9DYWNoZX0gZnJvbSAnLi9jbGllbnRzL0lNb21lbnRvQ2FjaGUnO1xuXG5leHBvcnQge0lMZWFkZXJib2FyZENsaWVudH0gZnJvbSAnLi9jbGllbnRzL0lMZWFkZXJib2FyZENsaWVudCc7XG5leHBvcnQge0lMZWFkZXJib2FyZH0gZnJvbSAnLi9jbGllbnRzL0lMZWFkZXJib2FyZCc7XG5cbmV4cG9ydCB7XG4gIENhY2hlUm9sZSxcbiAgQ2FjaGVQZXJtaXNzaW9uLFxuICBUb3BpY1JvbGUsXG4gIFRvcGljUGVybWlzc2lvbixcbiAgUGVybWlzc2lvbixcbiAgUGVybWlzc2lvbnMsXG4gIEFsbERhdGFSZWFkV3JpdGUsXG4gIFBlcm1pc3Npb25TY29wZSxcbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIC0gcGxlYXNlIHVzZSBQZXJtaXNzaW9uU2NvcGVcbiAgICovXG4gIFRva2VuU2NvcGUsXG4gIENhY2hlTmFtZSxcbiAgaXNDYWNoZU5hbWUsXG4gIFRvcGljTmFtZSxcbiAgaXNUb3BpY05hbWUsXG4gIENhY2hlU2VsZWN0b3IsXG4gIFRvcGljU2VsZWN0b3IsXG4gIEFsbENhY2hlcyxcbiAgQWxsVG9waWNzLFxuICBBbGxDYWNoZUl0ZW1zLFxufSBmcm9tICcuL2F1dGgvdG9rZW5zL3Blcm1pc3Npb24tc2NvcGUnO1xuXG5leHBvcnQge1xuICBEaXNwb3NhYmxlVG9rZW5TY29wZSxcbiAgQ2FjaGVJdGVtU2VsZWN0b3IsXG4gIENhY2hlSXRlbUtleSxcbiAgQ2FjaGVJdGVtS2V5UHJlZml4LFxuICBpc0NhY2hlSXRlbUtleSxcbiAgaXNDYWNoZUl0ZW1LZXlQcmVmaXgsXG59IGZyb20gJy4vYXV0aC90b2tlbnMvZGlzcG9zYWJsZS10b2tlbi1zY29wZSc7XG5cbmV4cG9ydCAqIGFzIFBlcm1pc3Npb25TY29wZXMgZnJvbSAnLi9hdXRoL3Rva2Vucy9wZXJtaXNzaW9uLXNjb3Blcyc7XG4vKipcbiAqIEBkZXByZWNhdGVkIHBsZWFzZSB1c2UgUGVybWlzc2lvblNjb3BlcyBpbnN0ZWFkXG4gKi9cbmV4cG9ydCAqIGFzIFRva2VuU2NvcGVzIGZyb20gJy4vYXV0aC90b2tlbnMvcGVybWlzc2lvbi1zY29wZXMnO1xuZXhwb3J0ICogYXMgRGlzcG9zYWJsZVRva2VuU2NvcGVzIGZyb20gJy4vYXV0aC90b2tlbnMvZGlzcG9zYWJsZS10b2tlbi1zY29wZXMnO1xuXG5leHBvcnQge1JlYWRDb25jZXJufSBmcm9tICcuL2NvbmZpZy9yZWFkLWNvbmNlcm4nO1xuZXhwb3J0IHtDb21wcmVzc2lvbkxldmVsfSBmcm9tICcuL2NvbXByZXNzaW9uL2NvbXByZXNzaW9uLWxldmVsJztcblxuZXhwb3J0IHtcbiAgRXhwaXJlc0luLFxuICBFeHBpcmVzQXQsXG4gIENvbGxlY3Rpb25UdGwsXG4gIEl0ZW1UeXBlLFxuICBXZWJob29rRGVzdGluYXRpb24sXG4gIFBvc3RVcmxXZWJob29rRGVzdGluYXRpb24sXG4gIFdlYmhvb2tEZXN0aW5hdGlvblR5cGUsXG4gIFNvcnRlZFNldE9yZGVyLFxuICBMZWFkZXJib2FyZE9yZGVyLFxuICBDcmVkZW50aWFsUHJvdmlkZXIsXG4gIFN0cmluZ01vbWVudG9Ub2tlblByb3ZpZGVyLFxuICBFbnZNb21lbnRvVG9rZW5Qcm92aWRlcixcbiAgU2V0QmF0Y2hJdGVtLFxuXG4gIC8vIENhY2hlQ2xpZW50IFJlc3BvbnNlIFR5cGVzXG4gIENhY2hlR2V0LFxuICBDYWNoZUxpc3RDb25jYXRlbmF0ZUJhY2ssXG4gIENhY2hlTGlzdENvbmNhdGVuYXRlRnJvbnQsXG4gIENhY2hlTGlzdEZldGNoLFxuICBDYWNoZUxpc3RMZW5ndGgsXG4gIENhY2hlTGlzdFBvcEJhY2ssXG4gIENhY2hlTGlzdFBvcEZyb250LFxuICBDYWNoZUxpc3RQdXNoQmFjayxcbiAgQ2FjaGVMaXN0UHVzaEZyb250LFxuICBDYWNoZUxpc3RSZW1vdmVWYWx1ZSxcbiAgQ2FjaGVMaXN0UmV0YWluLFxuICBDYWNoZVNldCxcbiAgQ2FjaGVTZXRJZk5vdEV4aXN0cyxcbiAgQ2FjaGVTZXRJZlByZXNlbnQsXG4gIENhY2hlU2V0SWZBYnNlbnQsXG4gIENhY2hlU2V0SWZFcXVhbCxcbiAgQ2FjaGVTZXRJZk5vdEVxdWFsLFxuICBDYWNoZVNldElmUHJlc2VudEFuZE5vdEVxdWFsLFxuICBDYWNoZVNldElmQWJzZW50T3JFcXVhbCxcbiAgQ2FjaGVEZWxldGUsXG4gIENhY2hlRmx1c2gsXG4gIENyZWF0ZUNhY2hlLFxuICBEZWxldGVDYWNoZSxcbiAgTGlzdENhY2hlcyxcbiAgQ2FjaGVJbmNyZW1lbnQsXG4gIENhY2hlU2V0RmV0Y2gsXG4gIENhY2hlRGljdGlvbmFyeUZldGNoLFxuICBDYWNoZURpY3Rpb25hcnlTZXRGaWVsZCxcbiAgQ2FjaGVEaWN0aW9uYXJ5U2V0RmllbGRzLFxuICBDYWNoZURpY3Rpb25hcnlHZXRGaWVsZCxcbiAgQ2FjaGVEaWN0aW9uYXJ5R2V0RmllbGRzLFxuICBDYWNoZURpY3Rpb25hcnlSZW1vdmVGaWVsZCxcbiAgQ2FjaGVEaWN0aW9uYXJ5UmVtb3ZlRmllbGRzLFxuICBDYWNoZURpY3Rpb25hcnlJbmNyZW1lbnQsXG4gIENhY2hlRGljdGlvbmFyeUxlbmd0aCxcbiAgQ2FjaGVTZXRBZGRFbGVtZW50cyxcbiAgQ2FjaGVTZXRBZGRFbGVtZW50LFxuICBDYWNoZVNldFJlbW92ZUVsZW1lbnRzLFxuICBDYWNoZVNldFJlbW92ZUVsZW1lbnQsXG4gIENhY2hlU2V0U2FtcGxlLFxuICBDYWNoZVNvcnRlZFNldFB1dEVsZW1lbnQsXG4gIENhY2hlU29ydGVkU2V0UHV0RWxlbWVudHMsXG4gIENhY2hlU29ydGVkU2V0RmV0Y2gsXG4gIENhY2hlU29ydGVkU2V0R2V0UmFuayxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZSxcbiAgQ2FjaGVTb3J0ZWRTZXRHZXRTY29yZXMsXG4gIENhY2hlU29ydGVkU2V0SW5jcmVtZW50U2NvcmUsXG4gIENhY2hlU29ydGVkU2V0UmVtb3ZlRWxlbWVudCxcbiAgQ2FjaGVTb3J0ZWRTZXRSZW1vdmVFbGVtZW50cyxcbiAgQ2FjaGVTb3J0ZWRTZXRMZW5ndGgsXG4gIENhY2hlU29ydGVkU2V0TGVuZ3RoQnlTY29yZSxcbiAgQ2FjaGVJdGVtR2V0VHlwZSxcbiAgQ2FjaGVJdGVtR2V0VHRsLFxuICBDYWNoZUtleUV4aXN0cyxcbiAgQ2FjaGVLZXlzRXhpc3QsXG4gIENhY2hlVXBkYXRlVHRsLFxuICBDYWNoZUluY3JlYXNlVHRsLFxuICBDYWNoZURlY3JlYXNlVHRsLFxuICBDYWNoZUluZm8sXG4gIENhY2hlU2V0QmF0Y2gsXG4gIENhY2hlR2V0QmF0Y2gsXG4gIC8vIFRvcGljQ2xpZW50IFJlc3BvbnNlIFR5cGVzXG4gIFRvcGljUHVibGlzaCxcbiAgVG9waWNTdWJzY3JpYmUsXG4gIFRvcGljSXRlbSxcbiAgU3Vic2NyaWJlQ2FsbE9wdGlvbnMsXG4gIC8vIEF1dGhDbGllbnQgUmVzcG9uc2UgVHlwZXNcbiAgR2VuZXJhdGVBcGlLZXksXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCAtIHBsZWFzZSB1c2UgR2VuZXJhdGVBcGlLZXlcbiAgICovXG4gIEdlbmVyYXRlQXBpS2V5IGFzIEdlbmVyYXRlQXV0aFRva2VuLFxuICBSZWZyZXNoQXBpS2V5LFxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgLSBwbGVhc2UgdXNlIFJlZnJlc2hBcGlLZXlcbiAgICovXG4gIFJlZnJlc2hBcGlLZXkgYXMgUmVmcmVzaEF1dGhUb2tlbixcbiAgR2VuZXJhdGVEaXNwb3NhYmxlVG9rZW4sXG4gIC8vIEVycm9yc1xuICBNb21lbnRvRXJyb3JDb2RlLFxuICBTZGtFcnJvcixcbiAgQ2FjaGVBbHJlYWR5RXhpc3RzRXJyb3IsXG4gIFN0b3JlQWxyZWFkeUV4aXN0c0Vycm9yLFxuICBBdXRoZW50aWNhdGlvbkVycm9yLFxuICBDYW5jZWxsZWRFcnJvcixcbiAgQ29ubmVjdGlvbkVycm9yLFxuICBGYWlsZWRQcmVjb25kaXRpb25FcnJvcixcbiAgTGltaXRFeGNlZWRlZEVycm9yLFxuICBJbnRlcm5hbFNlcnZlckVycm9yLFxuICBJbnZhbGlkQXJndW1lbnRFcnJvcixcbiAgVW5rbm93blNlcnZpY2VFcnJvcixcbiAgU2VydmVyVW5hdmFpbGFibGVFcnJvcixcbiAgVGltZW91dEVycm9yLFxuICBCYWRSZXF1ZXN0RXJyb3IsXG4gIFBlcm1pc3Npb25FcnJvcixcbiAgQ2FjaGVOb3RGb3VuZEVycm9yLFxuICBTdG9yZUl0ZW1Ob3RGb3VuZEVycm9yLFxuICBTdG9yZU5vdEZvdW5kRXJyb3IsXG4gIFVua25vd25FcnJvcixcbn07XG4iXX0=

@@ -5,1 +5,2 @@ export * from './cache';

export * from './leaderboard';
export * from './storage';

@@ -21,2 +21,3 @@ "use strict";

__exportStar(require("./leaderboard"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCO0FBQ3hCLHlDQUF1QjtBQUN2QiwyQ0FBeUI7QUFDekIsZ0RBQThCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYWNoZSc7XG5leHBvcnQgKiBmcm9tICcuL2F1dGgnO1xuZXhwb3J0ICogZnJvbSAnLi9wdWJzdWInO1xuZXhwb3J0ICogZnJvbSAnLi9sZWFkZXJib2FyZCc7XG4iXX0=
__exportStar(require("./storage"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCO0FBQ3hCLHlDQUF1QjtBQUN2QiwyQ0FBeUI7QUFDekIsZ0RBQThCO0FBQzlCLDRDQUEwQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FjaGUnO1xuZXhwb3J0ICogZnJvbSAnLi9hdXRoJztcbmV4cG9ydCAqIGZyb20gJy4vcHVic3ViJztcbmV4cG9ydCAqIGZyb20gJy4vbGVhZGVyYm9hcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlJztcbiJdfQ==

@@ -107,3 +107,3 @@ "use strict";

// a subscription.
if (momentoError.errorCode() === errors_1.MomentoErrorCode.NOT_FOUND_ERROR) {
if (momentoError.errorCode() === errors_1.MomentoErrorCode.CACHE_NOT_FOUND_ERROR) {
this.logger.trace('Stream ended due to cache not found error on topic: %s', options.topicName);

@@ -120,2 +120,2 @@ options.subscription.unsubscribe();

exports.AbstractPubsubClient = AbstractPubsubClient;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RQdWJzdWJDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9wdWJzdWIvQWJzdHJhY3RQdWJzdWJDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBSXFCO0FBQ3JCLDRDQUFpRDtBQUNqRCwwQ0FPd0I7QUFDeEIsaUVBQTJEO0FBd0MzRCxNQUFzQixvQkFBb0I7SUFPakMsV0FBVztRQUNoQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN2RCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQU8sQ0FDbEIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsS0FBMEI7UUFFMUIsSUFBSTtZQUNGLElBQUEseUJBQWlCLEVBQUMsU0FBUyxDQUFDLENBQUM7WUFDN0IsSUFBQSx5QkFBaUIsRUFBQyxTQUFTLENBQUMsQ0FBQztTQUM5QjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsa0JBQWtCLENBQ3BELEdBQVksRUFDWixHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksb0JBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQ25DLENBQUM7WUFDRiw4REFBOEQ7U0FDL0Q7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZix3REFBd0QsRUFDeEQsSUFBQSxzQkFBYyxFQUFDLFNBQVMsQ0FBQyxFQUN6QixLQUFLLENBQUMsTUFBTSxDQUNiLENBQUM7UUFFRixPQUFPLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7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QXNEO1FBQ3RELG9FQUFvRTtRQUNwRSxJQUFJLGtCQUFrQixFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHdEQUF3RCxDQUN6RCxDQUFDO1lBQ0Ysc0VBQXNFO1lBQ3RFLCtFQUErRTtZQUMvRSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztpQkFDeEIsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVCxPQUFPO1lBQ1QsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsT0FBTztZQUNULENBQUMsQ0FBQyxDQUFDO1lBQ0wsT0FBTyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztZQUNuQyxPQUFPO1NBQ1I7UUFFRCx1REFBdUQ7UUFDdkQsbUVBQW1FO1FBQ25FLGtCQUFrQjtRQUNsQixJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsS0FBSyx5QkFBZ0IsQ0FBQyxlQUFlLEVBQUU7WUFDakUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQ2Ysd0RBQXdELEVBQ3hELE9BQU8sQ0FBQyxTQUFTLENBQ2xCLENBQUM7WUFDRixPQUFPLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25DLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztZQUNwRCxPQUFPO1NBQ1I7YUFBTTtZQUNMLE9BQU8sQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUNyRDtJQUNILENBQUM7Q0FDRjtBQXBMRCxvREFvTEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICB0cnVuY2F0ZVN0cmluZyxcbiAgdmFsaWRhdGVDYWNoZU5hbWUsXG4gIHZhbGlkYXRlVG9waWNOYW1lLFxufSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge01vbWVudG9FcnJvckNvZGV9IGZyb20gJy4uLy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQge1xuICBDcmVkZW50aWFsUHJvdmlkZXIsXG4gIFRvcGljUHVibGlzaCxcbiAgVG9waWNJdGVtLFxuICBNb21lbnRvTG9nZ2VyLFxuICBUb3BpY1N1YnNjcmliZSxcbiAgU3Vic2NyaWJlQ2FsbE9wdGlvbnMsXG59IGZyb20gJy4uLy4uLy4uL2luZGV4JztcbmltcG9ydCB7U3Vic2NyaXB0aW9uU3RhdGV9IGZyb20gJy4uLy4uL3N1YnNjcmlwdGlvbi1zdGF0ZSc7XG5pbXBvcnQge0lQdWJzdWJDbGllbnR9IGZyb20gJy4vSVB1YnN1YkNsaWVudCc7XG5pbXBvcnQge0lDYWNoZVNlcnZpY2VFcnJvck1hcHBlcn0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzL0lDYWNoZVNlcnZpY2VFcnJvck1hcHBlcic7XG5cbi8qKlxuICogRW5jYXBzdWxhdGVzIHBhcmFtZXRlcnMgZm9yIHRoZSBgc2VuZFN1YnNjcmliZWAgbWV0aG9kLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRTdWJzY3JpYmVPcHRpb25zIHtcbiAgY2FjaGVOYW1lOiBzdHJpbmc7XG4gIHRvcGljTmFtZTogc3RyaW5nO1xuICBvbkl0ZW06IChpdGVtOiBUb3BpY0l0ZW0pID0+IHZvaWQ7XG4gIG9uRXJyb3I6IChcbiAgICBlcnJvcjogVG9waWNTdWJzY3JpYmUuRXJyb3IsXG4gICAgc3Vic2NyaXB0aW9uOiBUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb25cbiAgKSA9PiB2b2lkO1xuICBzdWJzY3JpcHRpb25TdGF0ZTogU3Vic2NyaXB0aW9uU3RhdGU7XG4gIHN1YnNjcmlwdGlvbjogVG9waWNTdWJzY3JpYmUuU3Vic2NyaXB0aW9uO1xufVxuXG4vKipcbiAqIEVuY2Fwc3VsYXRlcyBwYXJhbWV0ZXJzIGZvciB0aGUgc3Vic2NyaWJlIGNhbGxiYWNrIHByZXBhcmUgbWV0aG9kcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcmVwYXJlU3Vic2NyaWJlQ2FsbGJhY2tPcHRpb25zIGV4dGVuZHMgU2VuZFN1YnNjcmliZU9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIHByb21pc2UgcmVzb2x2ZSBmdW5jdGlvbi5cbiAgICovXG4gIHJlc29sdmU6IChcbiAgICB2YWx1ZTogVG9waWNTdWJzY3JpYmUuUmVzcG9uc2UgfCBQcm9taXNlTGlrZTxUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb24+XG4gICkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHN0cmVhbSB3YXMgcmVzdGFydGVkIGR1ZSB0byBhbiBlcnJvci4gSWYgc28sIHdlIHNraXAgdGhlIGVuZCBzdHJlYW0gaGFuZGxlclxuICAgKiBsb2dpYyBhcyB0aGUgZXJyb3IgaGFuZGxlciB3aWxsIGhhdmUgcmVzdGFydGVkIHRoZSBzdHJlYW0uXG4gICAqL1xuICByZXN0YXJ0ZWREdWVUb0Vycm9yOiBib29sZWFuO1xuICAvKipcbiAgICogSWYgdGhlIGZpcnN0IG1lc3NhZ2UgaXMgYW4gZXJyb3IsIHdlIHJldHVybiBhbiBlcnJvciBpbW1lZGlhdGVseSBhbmQgZG8gbm90IHN1YnNjcmliZS5cbiAgICovXG4gIGZpcnN0TWVzc2FnZTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0UHVic3ViQ2xpZW50PFRHcnBjRXJyb3I+XG4gIGltcGxlbWVudHMgSVB1YnN1YkNsaWVudFxue1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgbG9nZ2VyOiBNb21lbnRvTG9nZ2VyO1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY3JlZGVudGlhbFByb3ZpZGVyOiBDcmVkZW50aWFsUHJvdmlkZXI7XG4gIHByb3RlY3RlZCByZWFkb25seSBjYWNoZVNlcnZpY2VFcnJvck1hcHBlcjogSUNhY2hlU2VydmljZUVycm9yTWFwcGVyPFRHcnBjRXJyb3I+O1xuXG4gIHB1YmxpYyBnZXRFbmRwb2ludCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGVuZHBvaW50ID0gdGhpcy5jcmVkZW50aWFsUHJvdmlkZXIuZ2V0Q2FjaGVFbmRwb2ludCgpO1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKGBVc2luZyBjYWNoZSBlbmRwb2ludDogJHtlbmRwb2ludH1gKTtcbiAgICByZXR1cm4gZW5kcG9pbnQ7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgcHVibGlzaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICB0b3BpY05hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPFRvcGljUHVibGlzaC5SZXNwb25zZT4ge1xuICAgIHRyeSB7XG4gICAgICB2YWxpZGF0ZUNhY2hlTmFtZShjYWNoZU5hbWUpO1xuICAgICAgdmFsaWRhdGVUb3BpY05hbWUodG9waWNOYW1lKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIHJldHVybiB0aGlzLmNhY2hlU2VydmljZUVycm9yTWFwcGVyLnJldHVybk9yVGhyb3dFcnJvcihcbiAgICAgICAgZXJyIGFzIEVycm9yLFxuICAgICAgICBlcnIgPT4gbmV3IFRvcGljUHVibGlzaC5FcnJvcihlcnIpXG4gICAgICApO1xuICAgICAgLy8gKSAgbmV3IFRvcGljUHVibGlzaC5FcnJvcihub3JtYWxpemVTZGtFcnJvcihlcnIgYXMgRXJyb3IpKTtcbiAgICB9XG4gICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAnSXNzdWluZyBwdWJsaXNoIHJlcXVlc3Q7IHRvcGljOiAlcywgbWVzc2FnZSBsZW5ndGg6ICVzJyxcbiAgICAgIHRydW5jYXRlU3RyaW5nKHRvcGljTmFtZSksXG4gICAgICB2YWx1ZS5sZW5ndGhcbiAgICApO1xuXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2VuZFB1Ymxpc2goY2FjaGVOYW1lLCB0b3BpY05hbWUsIHZhbHVlKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzZW5kUHVibGlzaChcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICB0b3BpY05hbWU6IHN0cmluZyxcbiAgICB2YWx1ZTogc3RyaW5nIHwgVWludDhBcnJheVxuICApOiBQcm9taXNlPFRvcGljUHVibGlzaC5SZXNwb25zZT47XG5cbiAgcHVibGljIGFzeW5jIHN1YnNjcmliZShcbiAgICBjYWNoZU5hbWU6IHN0cmluZyxcbiAgICB0b3BpY05hbWU6IHN0cmluZyxcbiAgICBvcHRpb25zOiBTdWJzY3JpYmVDYWxsT3B0aW9uc1xuICApOiBQcm9taXNlPFRvcGljU3Vic2NyaWJlLlJlc3BvbnNlPiB7XG4gICAgdHJ5IHtcbiAgICAgIHZhbGlkYXRlQ2FjaGVOYW1lKGNhY2hlTmFtZSk7XG4gICAgICB2YWxpZGF0ZVRvcGljTmFtZSh0b3BpY05hbWUpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHRoaXMuY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXIucmV0dXJuT3JUaHJvd0Vycm9yKFxuICAgICAgICBlcnIgYXMgRXJyb3IsXG4gICAgICAgIGVyciA9PiBuZXcgVG9waWNTdWJzY3JpYmUuRXJyb3IoZXJyKVxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAnSXNzdWluZyBzdWJzY3JpYmUgcmVxdWVzdDsgdG9waWM6ICVzJyxcbiAgICAgIHRydW5jYXRlU3RyaW5nKHRvcGljTmFtZSlcbiAgICApO1xuXG4gICAgY29uc3Qgb25JdGVtID1cbiAgICAgIG9wdGlvbnMub25JdGVtID8/XG4gICAgICAoKCkgPT4ge1xuICAgICAgICByZXR1cm47XG4gICAgICB9KTtcbiAgICBjb25zdCBvbkVycm9yID1cbiAgICAgIG9wdGlvbnMub25FcnJvciA/P1xuICAgICAgKCgpID0+IHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSk7XG5cbiAgICBjb25zdCBzdWJzY3JpcHRpb25TdGF0ZSA9IG5ldyBTdWJzY3JpcHRpb25TdGF0ZSgpO1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbiA9IG5ldyBUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb24oc3Vic2NyaXB0aW9uU3RhdGUpO1xuICAgIHJldHVybiBhd2FpdCB0aGlzLnNlbmRTdWJzY3JpYmUoe1xuICAgICAgY2FjaGVOYW1lOiBjYWNoZU5hbWUsXG4gICAgICB0b3BpY05hbWU6IHRvcGljTmFtZSxcbiAgICAgIG9uSXRlbTogb25JdGVtLFxuICAgICAgb25FcnJvcjogb25FcnJvcixcbiAgICAgIHN1YnNjcmlwdGlvblN0YXRlOiBzdWJzY3JpcHRpb25TdGF0ZSxcbiAgICAgIHN1YnNjcmlwdGlvbjogc3Vic2NyaXB0aW9uLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNlbmRTdWJzY3JpYmUoXG4gICAgb3B0aW9uczogU2VuZFN1YnNjcmliZU9wdGlvbnNcbiAgKTogUHJvbWlzZTxUb3BpY1N1YnNjcmliZS5SZXNwb25zZT47XG5cbiAgcHJvdGVjdGVkIHByZXBhcmVFbmRDYWxsYmFjayhcbiAgICBvcHRpb25zOiBQcmVwYXJlU3Vic2NyaWJlQ2FsbGJhY2tPcHRpb25zXG4gICk6ICgpID0+IHZvaWQge1xuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAvLyBXZSB3YW50IHRvIHJlc3RhcnQgb24gc3RyZWFtIGVuZCwgZXhjZXB0IGlmOlxuICAgICAgLy8gMS4gVGhlIHN0cmVhbSB3YXMgY2FuY2VsbGVkIGJ5IHRoZSBjYWxsZXIuXG4gICAgICAvLyAyLiBUaGUgc3RyZWFtIHdhcyByZXN0YXJ0ZWQgZm9sbG93aW5nIGFuIGVycm9yLlxuICAgICAgaWYgKG9wdGlvbnMucmVzdGFydGVkRHVlVG9FcnJvcikge1xuICAgICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgICAnU3RyZWFtIGVuZGVkIGFmdGVyIGVycm9yIGJ1dCB3YXMgcmVzdGFydGVkIG9uIHRvcGljOiAlcycsXG4gICAgICAgICAgb3B0aW9ucy50b3BpY05hbWVcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfSBlbHNlIGlmICghb3B0aW9ucy5zdWJzY3JpcHRpb25TdGF0ZS5pc1N1YnNjcmliZWQpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAgICAgJ1N0cmVhbSBlbmRlZCBhZnRlciB1bnN1YnNjcmliZSBvbiB0b3BpYzogJXMnLFxuICAgICAgICAgIG9wdGlvbnMudG9waWNOYW1lXG4gICAgICAgICk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAgICdTdHJlYW0gZW5kZWQgb24gdG9waWM6ICVzOyByZXN0YXJ0aW5nLicsXG4gICAgICAgIG9wdGlvbnMudG9waWNOYW1lXG4gICAgICApO1xuXG4gICAgICAvLyBXaGVuIHJlc3RhcnRpbmcgdGhlIHN0cmVhbSB3ZSBkbyBub3QgZG8gYW55dGhpbmcgd2l0aCB0aGUgcHJvbWlzZXMsXG4gICAgICAvLyBiZWNhdXNlIHdlIHNob3VsZCBoYXZlIGFscmVhZHkgcmV0dXJuZWQgdGhlIHN1YnNjcmlwdGlvbiBvYmplY3QgdG8gdGhlIHVzZXIuXG4gICAgICB0aGlzLnNlbmRTdWJzY3JpYmUob3B0aW9ucylcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pO1xuICAgIH07XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlU3Vic2NyaWJlRXJyb3IoXG4gICAgb3B0aW9uczogUHJlcGFyZVN1YnNjcmliZUNhbGxiYWNrT3B0aW9ucyxcbiAgICBtb21lbnRvRXJyb3I6IFRvcGljU3Vic2NyaWJlLkVycm9yLFxuICAgIGlzUnN0U3RyZWFtTm9FcnJvcjogYm9vbGVhblxuICApOiB2b2lkIHtcbiAgICAvLyBXaGVuIHRoZSBmaXJzdCBtZXNzYWdlIGlzIGFuIGVycm9yLCBhbiBpcnJlY292ZXJhYmxlIGVycm9yIGhhcyBoYXBwZW5lZCxcbiAgICAvLyBlZyB0aGUgY2FjaGUgZG9lcyBub3QgZXhpc3QuIFRoZSB1c2VyIHNob3VsZCBub3QgcmVjZWl2ZSBhIHN1YnNjcmlwdGlvblxuICAgIC8vIG9iamVjdCBidXQgYW4gZXJyb3IuXG4gICAgaWYgKG9wdGlvbnMuZmlyc3RNZXNzYWdlKSB7XG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1JlY2VpdmVkIHN1YnNjcmlwdGlvbiBzdHJlYW0gZXJyb3I7IHRvcGljOiAlcycsXG4gICAgICAgIHRydW5jYXRlU3RyaW5nKG9wdGlvbnMudG9waWNOYW1lKVxuICAgICAgKTtcblxuICAgICAgb3B0aW9ucy5yZXNvbHZlKG1vbWVudG9FcnJvcik7XG4gICAgICBvcHRpb25zLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFRoZSBzZXJ2aWNlIGN1dHMgdGhlIHN0cmVhbSBhZnRlciBhIHBlcmlvZCBvZiB0aW1lLlxuICAgIC8vIFRyYW5zcGFyZW50bHkgcmVzdGFydCB0aGUgc3RyZWFtIGluc3RlYWQgb2YgcHJvcGFnYXRpbmcgYW4gZXJyb3IuXG4gICAgaWYgKGlzUnN0U3RyZWFtTm9FcnJvcikge1xuICAgICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAgICdTZXJ2ZXIgY2xvc2VkIHN0cmVhbSBkdWUgdG8gaWRsZSBhY3Rpdml0eS4gUmVzdGFydGluZy4nXG4gICAgICApO1xuICAgICAgLy8gV2hlbiByZXN0YXJ0aW5nIHRoZSBzdHJlYW0gd2UgZG8gbm90IGRvIGFueXRoaW5nIHdpdGggdGhlIHByb21pc2VzLFxuICAgICAgLy8gYmVjYXVzZSB3ZSBzaG91bGQgaGF2ZSBhbHJlYWR5IHJldHVybmVkIHRoZSBzdWJzY3JpcHRpb24gb2JqZWN0IHRvIHRoZSB1c2VyLlxuICAgICAgdGhpcy5zZW5kU3Vic2NyaWJlKG9wdGlvbnMpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9KTtcbiAgICAgIG9wdGlvbnMucmVzdGFydGVkRHVlVG9FcnJvciA9IHRydWU7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gQW5vdGhlciBzcGVjaWFsIGNhc2UgaXMgd2hlbiB0aGUgY2FjaGUgaXMgbm90IGZvdW5kLlxuICAgIC8vIFRoaXMgaGFwcGVucyBoZXJlIGlmIHRoZSB1c2VyIGRlbGV0ZXMgdGhlIGNhY2hlIGluIHRoZSBtaWRkbGUgb2ZcbiAgICAvLyBhIHN1YnNjcmlwdGlvbi5cbiAgICBpZiAobW9tZW50b0Vycm9yLmVycm9yQ29kZSgpID09PSBNb21lbnRvRXJyb3JDb2RlLk5PVF9GT1VORF9FUlJPUikge1xuICAgICAgdGhpcy5sb2dnZXIudHJhY2UoXG4gICAgICAgICdTdHJlYW0gZW5kZWQgZHVlIHRvIGNhY2hlIG5vdCBmb3VuZCBlcnJvciBvbiB0b3BpYzogJXMnLFxuICAgICAgICBvcHRpb25zLnRvcGljTmFtZVxuICAgICAgKTtcbiAgICAgIG9wdGlvbnMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICBvcHRpb25zLm9uRXJyb3IobW9tZW50b0Vycm9yLCBvcHRpb25zLnN1YnNjcmlwdGlvbik7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIG9wdGlvbnMub25FcnJvcihtb21lbnRvRXJyb3IsIG9wdGlvbnMuc3Vic2NyaXB0aW9uKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWJzdHJhY3RQdWJzdWJDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvaW50ZXJuYWwvY2xpZW50cy9wdWJzdWIvQWJzdHJhY3RQdWJzdWJDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsdUNBSXFCO0FBQ3JCLDRDQUFpRDtBQUNqRCwwQ0FPd0I7QUFDeEIsaUVBQTJEO0FBd0MzRCxNQUFzQixvQkFBb0I7SUFPakMsV0FBVztRQUNoQixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyx5QkFBeUIsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN2RCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRU0sS0FBSyxDQUFDLE9BQU8sQ0FDbEIsU0FBaUIsRUFDakIsU0FBaUIsRUFDakIsS0FBMEI7UUFFMUIsSUFBSTtZQUNGLElBQUEseUJBQWlCLEVBQUMsU0FBUyxDQUFDLENBQUM7WUFDN0IsSUFBQSx5QkFBaUIsRUFBQyxTQUFTLENBQUMsQ0FBQztTQUM5QjtRQUFDLE9BQU8sR0FBRyxFQUFFO1lBQ1osT0FBTyxJQUFJLENBQUMsdUJBQXVCLENBQUMsa0JBQWtCLENBQ3BELEdBQVksRUFDWixHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksb0JBQVksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQ25DLENBQUM7WUFDRiw4REFBOEQ7U0FDL0Q7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZix3REFBd0QsRUFDeEQsSUFBQSxzQkFBYyxFQUFDLFNBQVMsQ0FBQyxFQUN6QixLQUFLLENBQUMsTUFBTSxDQUNiLENBQUM7UUFFRixPQUFPLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7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QXNEO1FBQ3RELG9FQUFvRTtRQUNwRSxJQUFJLGtCQUFrQixFQUFFO1lBQ3RCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUNmLHdEQUF3RCxDQUN6RCxDQUFDO1lBQ0Ysc0VBQXNFO1lBQ3RFLCtFQUErRTtZQUMvRSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztpQkFDeEIsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVCxPQUFPO1lBQ1QsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsT0FBTztZQUNULENBQUMsQ0FBQyxDQUFDO1lBQ0wsT0FBTyxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztZQUNuQyxPQUFPO1NBQ1I7UUFFRCx1REFBdUQ7UUFDdkQsbUVBQW1FO1FBQ25FLGtCQUFrQjtRQUNsQixJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsS0FBSyx5QkFBZ0IsQ0FBQyxxQkFBcUIsRUFBRTtZQUN2RSxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FDZix3REFBd0QsRUFDeEQsT0FBTyxDQUFDLFNBQVMsQ0FDbEIsQ0FBQztZQUNGLE9BQU8sQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDbkMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3BELE9BQU87U0FDUjthQUFNO1lBQ0wsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3JEO0lBQ0gsQ0FBQztDQUNGO0FBcExELG9EQW9MQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHRydW5jYXRlU3RyaW5nLFxuICB2YWxpZGF0ZUNhY2hlTmFtZSxcbiAgdmFsaWRhdGVUb3BpY05hbWUsXG59IGZyb20gJy4uLy4uL3V0aWxzJztcbmltcG9ydCB7TW9tZW50b0Vycm9yQ29kZX0gZnJvbSAnLi4vLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7XG4gIENyZWRlbnRpYWxQcm92aWRlcixcbiAgVG9waWNQdWJsaXNoLFxuICBUb3BpY0l0ZW0sXG4gIE1vbWVudG9Mb2dnZXIsXG4gIFRvcGljU3Vic2NyaWJlLFxuICBTdWJzY3JpYmVDYWxsT3B0aW9ucyxcbn0gZnJvbSAnLi4vLi4vLi4vaW5kZXgnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb25TdGF0ZX0gZnJvbSAnLi4vLi4vc3Vic2NyaXB0aW9uLXN0YXRlJztcbmltcG9ydCB7SVB1YnN1YkNsaWVudH0gZnJvbSAnLi9JUHVic3ViQ2xpZW50JztcbmltcG9ydCB7SUNhY2hlU2VydmljZUVycm9yTWFwcGVyfSBmcm9tICcuLi8uLi8uLi9lcnJvcnMvSUNhY2hlU2VydmljZUVycm9yTWFwcGVyJztcblxuLyoqXG4gKiBFbmNhcHN1bGF0ZXMgcGFyYW1ldGVycyBmb3IgdGhlIGBzZW5kU3Vic2NyaWJlYCBtZXRob2QuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VuZFN1YnNjcmliZU9wdGlvbnMge1xuICBjYWNoZU5hbWU6IHN0cmluZztcbiAgdG9waWNOYW1lOiBzdHJpbmc7XG4gIG9uSXRlbTogKGl0ZW06IFRvcGljSXRlbSkgPT4gdm9pZDtcbiAgb25FcnJvcjogKFxuICAgIGVycm9yOiBUb3BpY1N1YnNjcmliZS5FcnJvcixcbiAgICBzdWJzY3JpcHRpb246IFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvblxuICApID0+IHZvaWQ7XG4gIHN1YnNjcmlwdGlvblN0YXRlOiBTdWJzY3JpcHRpb25TdGF0ZTtcbiAgc3Vic2NyaXB0aW9uOiBUb3BpY1N1YnNjcmliZS5TdWJzY3JpcHRpb247XG59XG5cbi8qKlxuICogRW5jYXBzdWxhdGVzIHBhcmFtZXRlcnMgZm9yIHRoZSBzdWJzY3JpYmUgY2FsbGJhY2sgcHJlcGFyZSBtZXRob2RzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFByZXBhcmVTdWJzY3JpYmVDYWxsYmFja09wdGlvbnMgZXh0ZW5kcyBTZW5kU3Vic2NyaWJlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvbWlzZSByZXNvbHZlIGZ1bmN0aW9uLlxuICAgKi9cbiAgcmVzb2x2ZTogKFxuICAgIHZhbHVlOiBUb3BpY1N1YnNjcmliZS5SZXNwb25zZSB8IFByb21pc2VMaWtlPFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvbj5cbiAgKSA9PiB2b2lkO1xuICAvKipcbiAgICogV2hldGhlciB0aGUgc3RyZWFtIHdhcyByZXN0YXJ0ZWQgZHVlIHRvIGFuIGVycm9yLiBJZiBzbywgd2Ugc2tpcCB0aGUgZW5kIHN0cmVhbSBoYW5kbGVyXG4gICAqIGxvZ2ljIGFzIHRoZSBlcnJvciBoYW5kbGVyIHdpbGwgaGF2ZSByZXN0YXJ0ZWQgdGhlIHN0cmVhbS5cbiAgICovXG4gIHJlc3RhcnRlZER1ZVRvRXJyb3I6IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJZiB0aGUgZmlyc3QgbWVzc2FnZSBpcyBhbiBlcnJvciwgd2UgcmV0dXJuIGFuIGVycm9yIGltbWVkaWF0ZWx5IGFuZCBkbyBub3Qgc3Vic2NyaWJlLlxuICAgKi9cbiAgZmlyc3RNZXNzYWdlOiBib29sZWFuO1xufVxuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RQdWJzdWJDbGllbnQ8VEdycGNFcnJvcj5cbiAgaW1wbGVtZW50cyBJUHVic3ViQ2xpZW50XG57XG4gIHByb3RlY3RlZCByZWFkb25seSBsb2dnZXI6IE1vbWVudG9Mb2dnZXI7XG4gIHByb3RlY3RlZCByZWFkb25seSBjcmVkZW50aWFsUHJvdmlkZXI6IENyZWRlbnRpYWxQcm92aWRlcjtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNhY2hlU2VydmljZUVycm9yTWFwcGVyOiBJQ2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXI8VEdycGNFcnJvcj47XG5cbiAgcHVibGljIGdldEVuZHBvaW50KCk6IHN0cmluZyB7XG4gICAgY29uc3QgZW5kcG9pbnQgPSB0aGlzLmNyZWRlbnRpYWxQcm92aWRlci5nZXRDYWNoZUVuZHBvaW50KCk7XG4gICAgdGhpcy5sb2dnZXIuZGVidWcoYFVzaW5nIGNhY2hlIGVuZHBvaW50OiAke2VuZHBvaW50fWApO1xuICAgIHJldHVybiBlbmRwb2ludDtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBwdWJsaXNoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8VG9waWNQdWJsaXNoLlJlc3BvbnNlPiB7XG4gICAgdHJ5IHtcbiAgICAgIHZhbGlkYXRlQ2FjaGVOYW1lKGNhY2hlTmFtZSk7XG4gICAgICB2YWxpZGF0ZVRvcGljTmFtZSh0b3BpY05hbWUpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgcmV0dXJuIHRoaXMuY2FjaGVTZXJ2aWNlRXJyb3JNYXBwZXIucmV0dXJuT3JUaHJvd0Vycm9yKFxuICAgICAgICBlcnIgYXMgRXJyb3IsXG4gICAgICAgIGVyciA9PiBuZXcgVG9waWNQdWJsaXNoLkVycm9yKGVycilcbiAgICAgICk7XG4gICAgICAvLyApICBuZXcgVG9waWNQdWJsaXNoLkVycm9yKG5vcm1hbGl6ZVNka0Vycm9yKGVyciBhcyBFcnJvcikpO1xuICAgIH1cbiAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICdJc3N1aW5nIHB1Ymxpc2ggcmVxdWVzdDsgdG9waWM6ICVzLCBtZXNzYWdlIGxlbmd0aDogJXMnLFxuICAgICAgdHJ1bmNhdGVTdHJpbmcodG9waWNOYW1lKSxcbiAgICAgIHZhbHVlLmxlbmd0aFxuICAgICk7XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy5zZW5kUHVibGlzaChjYWNoZU5hbWUsIHRvcGljTmFtZSwgdmFsdWUpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFic3RyYWN0IHNlbmRQdWJsaXNoKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIHZhbHVlOiBzdHJpbmcgfCBVaW50OEFycmF5XG4gICk6IFByb21pc2U8VG9waWNQdWJsaXNoLlJlc3BvbnNlPjtcblxuICBwdWJsaWMgYXN5bmMgc3Vic2NyaWJlKFxuICAgIGNhY2hlTmFtZTogc3RyaW5nLFxuICAgIHRvcGljTmFtZTogc3RyaW5nLFxuICAgIG9wdGlvbnM6IFN1YnNjcmliZUNhbGxPcHRpb25zXG4gICk6IFByb21pc2U8VG9waWNTdWJzY3JpYmUuUmVzcG9uc2U+IHtcbiAgICB0cnkge1xuICAgICAgdmFsaWRhdGVDYWNoZU5hbWUoY2FjaGVOYW1lKTtcbiAgICAgIHZhbGlkYXRlVG9waWNOYW1lKHRvcGljTmFtZSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gdGhpcy5jYWNoZVNlcnZpY2VFcnJvck1hcHBlci5yZXR1cm5PclRocm93RXJyb3IoXG4gICAgICAgIGVyciBhcyBFcnJvcixcbiAgICAgICAgZXJyID0+IG5ldyBUb3BpY1N1YnNjcmliZS5FcnJvcihlcnIpXG4gICAgICApO1xuICAgIH1cbiAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICdJc3N1aW5nIHN1YnNjcmliZSByZXF1ZXN0OyB0b3BpYzogJXMnLFxuICAgICAgdHJ1bmNhdGVTdHJpbmcodG9waWNOYW1lKVxuICAgICk7XG5cbiAgICBjb25zdCBvbkl0ZW0gPVxuICAgICAgb3B0aW9ucy5vbkl0ZW0gPz9cbiAgICAgICgoKSA9PiB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH0pO1xuICAgIGNvbnN0IG9uRXJyb3IgPVxuICAgICAgb3B0aW9ucy5vbkVycm9yID8/XG4gICAgICAoKCkgPT4ge1xuICAgICAgICByZXR1cm47XG4gICAgICB9KTtcblxuICAgIGNvbnN0IHN1YnNjcmlwdGlvblN0YXRlID0gbmV3IFN1YnNjcmlwdGlvblN0YXRlKCk7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gbmV3IFRvcGljU3Vic2NyaWJlLlN1YnNjcmlwdGlvbihzdWJzY3JpcHRpb25TdGF0ZSk7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuc2VuZFN1YnNjcmliZSh7XG4gICAgICBjYWNoZU5hbWU6IGNhY2hlTmFtZSxcbiAgICAgIHRvcGljTmFtZTogdG9waWNOYW1lLFxuICAgICAgb25JdGVtOiBvbkl0ZW0sXG4gICAgICBvbkVycm9yOiBvbkVycm9yLFxuICAgICAgc3Vic2NyaXB0aW9uU3RhdGU6IHN1YnNjcmlwdGlvblN0YXRlLFxuICAgICAgc3Vic2NyaXB0aW9uOiBzdWJzY3JpcHRpb24sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc2VuZFN1YnNjcmliZShcbiAgICBvcHRpb25zOiBTZW5kU3Vic2NyaWJlT3B0aW9uc1xuICApOiBQcm9taXNlPFRvcGljU3Vic2NyaWJlLlJlc3BvbnNlPjtcblxuICBwcm90ZWN0ZWQgcHJlcGFyZUVuZENhbGxiYWNrKFxuICAgIG9wdGlvbnM6IFByZXBhcmVTdWJzY3JpYmVDYWxsYmFja09wdGlvbnNcbiAgKTogKCkgPT4gdm9pZCB7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIC8vIFdlIHdhbnQgdG8gcmVzdGFydCBvbiBzdHJlYW0gZW5kLCBleGNlcHQgaWY6XG4gICAgICAvLyAxLiBUaGUgc3RyZWFtIHdhcyBjYW5jZWxsZWQgYnkgdGhlIGNhbGxlci5cbiAgICAgIC8vIDIuIFRoZSBzdHJlYW0gd2FzIHJlc3RhcnRlZCBmb2xsb3dpbmcgYW4gZXJyb3IuXG4gICAgICBpZiAob3B0aW9ucy5yZXN0YXJ0ZWREdWVUb0Vycm9yKSB7XG4gICAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAgICdTdHJlYW0gZW5kZWQgYWZ0ZXIgZXJyb3IgYnV0IHdhcyByZXN0YXJ0ZWQgb24gdG9waWM6ICVzJyxcbiAgICAgICAgICBvcHRpb25zLnRvcGljTmFtZVxuICAgICAgICApO1xuICAgICAgICByZXR1cm47XG4gICAgICB9IGVsc2UgaWYgKCFvcHRpb25zLnN1YnNjcmlwdGlvblN0YXRlLmlzU3Vic2NyaWJlZCkge1xuICAgICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgICAnU3RyZWFtIGVuZGVkIGFmdGVyIHVuc3Vic2NyaWJlIG9uIHRvcGljOiAlcycsXG4gICAgICAgICAgb3B0aW9ucy50b3BpY05hbWVcbiAgICAgICAgKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1N0cmVhbSBlbmRlZCBvbiB0b3BpYzogJXM7IHJlc3RhcnRpbmcuJyxcbiAgICAgICAgb3B0aW9ucy50b3BpY05hbWVcbiAgICAgICk7XG5cbiAgICAgIC8vIFdoZW4gcmVzdGFydGluZyB0aGUgc3RyZWFtIHdlIGRvIG5vdCBkbyBhbnl0aGluZyB3aXRoIHRoZSBwcm9taXNlcyxcbiAgICAgIC8vIGJlY2F1c2Ugd2Ugc2hvdWxkIGhhdmUgYWxyZWFkeSByZXR1cm5lZCB0aGUgc3Vic2NyaXB0aW9uIG9iamVjdCB0byB0aGUgdXNlci5cbiAgICAgIHRoaXMuc2VuZFN1YnNjcmliZShvcHRpb25zKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSk7XG4gICAgfTtcbiAgfVxuXG4gIHByb3RlY3RlZCBoYW5kbGVTdWJzY3JpYmVFcnJvcihcbiAgICBvcHRpb25zOiBQcmVwYXJlU3Vic2NyaWJlQ2FsbGJhY2tPcHRpb25zLFxuICAgIG1vbWVudG9FcnJvcjogVG9waWNTdWJzY3JpYmUuRXJyb3IsXG4gICAgaXNSc3RTdHJlYW1Ob0Vycm9yOiBib29sZWFuXG4gICk6IHZvaWQge1xuICAgIC8vIFdoZW4gdGhlIGZpcnN0IG1lc3NhZ2UgaXMgYW4gZXJyb3IsIGFuIGlycmVjb3ZlcmFibGUgZXJyb3IgaGFzIGhhcHBlbmVkLFxuICAgIC8vIGVnIHRoZSBjYWNoZSBkb2VzIG5vdCBleGlzdC4gVGhlIHVzZXIgc2hvdWxkIG5vdCByZWNlaXZlIGEgc3Vic2NyaXB0aW9uXG4gICAgLy8gb2JqZWN0IGJ1dCBhbiBlcnJvci5cbiAgICBpZiAob3B0aW9ucy5maXJzdE1lc3NhZ2UpIHtcbiAgICAgIHRoaXMubG9nZ2VyLnRyYWNlKFxuICAgICAgICAnUmVjZWl2ZWQgc3Vic2NyaXB0aW9uIHN0cmVhbSBlcnJvcjsgdG9waWM6ICVzJyxcbiAgICAgICAgdHJ1bmNhdGVTdHJpbmcob3B0aW9ucy50b3BpY05hbWUpXG4gICAgICApO1xuXG4gICAgICBvcHRpb25zLnJlc29sdmUobW9tZW50b0Vycm9yKTtcbiAgICAgIG9wdGlvbnMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgLy8gVGhlIHNlcnZpY2UgY3V0cyB0aGUgc3RyZWFtIGFmdGVyIGEgcGVyaW9kIG9mIHRpbWUuXG4gICAgLy8gVHJhbnNwYXJlbnRseSByZXN0YXJ0IHRoZSBzdHJlYW0gaW5zdGVhZCBvZiBwcm9wYWdhdGluZyBhbiBlcnJvci5cbiAgICBpZiAoaXNSc3RTdHJlYW1Ob0Vycm9yKSB7XG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1NlcnZlciBjbG9zZWQgc3RyZWFtIGR1ZSB0byBpZGxlIGFjdGl2aXR5LiBSZXN0YXJ0aW5nLidcbiAgICAgICk7XG4gICAgICAvLyBXaGVuIHJlc3RhcnRpbmcgdGhlIHN0cmVhbSB3ZSBkbyBub3QgZG8gYW55dGhpbmcgd2l0aCB0aGUgcHJvbWlzZXMsXG4gICAgICAvLyBiZWNhdXNlIHdlIHNob3VsZCBoYXZlIGFscmVhZHkgcmV0dXJuZWQgdGhlIHN1YnNjcmlwdGlvbiBvYmplY3QgdG8gdGhlIHVzZXIuXG4gICAgICB0aGlzLnNlbmRTdWJzY3JpYmUob3B0aW9ucylcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH0pO1xuICAgICAgb3B0aW9ucy5yZXN0YXJ0ZWREdWVUb0Vycm9yID0gdHJ1ZTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICAvLyBBbm90aGVyIHNwZWNpYWwgY2FzZSBpcyB3aGVuIHRoZSBjYWNoZSBpcyBub3QgZm91bmQuXG4gICAgLy8gVGhpcyBoYXBwZW5zIGhlcmUgaWYgdGhlIHVzZXIgZGVsZXRlcyB0aGUgY2FjaGUgaW4gdGhlIG1pZGRsZSBvZlxuICAgIC8vIGEgc3Vic2NyaXB0aW9uLlxuICAgIGlmIChtb21lbnRvRXJyb3IuZXJyb3JDb2RlKCkgPT09IE1vbWVudG9FcnJvckNvZGUuQ0FDSEVfTk9UX0ZPVU5EX0VSUk9SKSB7XG4gICAgICB0aGlzLmxvZ2dlci50cmFjZShcbiAgICAgICAgJ1N0cmVhbSBlbmRlZCBkdWUgdG8gY2FjaGUgbm90IGZvdW5kIGVycm9yIG9uIHRvcGljOiAlcycsXG4gICAgICAgIG9wdGlvbnMudG9waWNOYW1lXG4gICAgICApO1xuICAgICAgb3B0aW9ucy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIG9wdGlvbnMub25FcnJvcihtb21lbnRvRXJyb3IsIG9wdGlvbnMuc3Vic2NyaXB0aW9uKTtcbiAgICAgIHJldHVybjtcbiAgICB9IGVsc2Uge1xuICAgICAgb3B0aW9ucy5vbkVycm9yKG1vbWVudG9FcnJvciwgb3B0aW9ucy5zdWJzY3JpcHRpb24pO1xuICAgIH1cbiAgfVxufVxuIl19

@@ -21,2 +21,3 @@ import { PredefinedScope } from '../../auth/tokens/permission-scope';

tokenEndpoint: string | undefined;
storageEndpoint: string | undefined;
authToken: string;

@@ -32,2 +33,3 @@ }

tokenEndpoint: Endpoint;
storageEndpoint: Endpoint;
}

@@ -34,0 +36,0 @@ export declare function populateAllEndpointsFromBaseEndpoint(endpointOverride: BaseEndpointOverride): AllEndpoints;

@@ -30,2 +30,6 @@ "use strict";

},
storageEndpoint: {
endpoint: `${prefix}storage.${endpointOverride.baseEndpoint}`,
secureConnection: endpointOverride.secureConnection,
},
};

@@ -60,2 +64,3 @@ }

tokenEndpoint: endpoints.tokenEndpoint.endpoint,
storageEndpoint: endpoints.storageEndpoint.endpoint,
authToken: base64DecodedToken.api_key,

@@ -73,2 +78,3 @@ };

tokenEndpoint: decodedLegacyToken.c,
storageEndpoint: decodedLegacyToken.c,
authToken: token,

@@ -87,2 +93,2 @@ };

exports.InternalSuperUserPermissions = InternalSuperUserPermissions;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC91dGlscy9hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUFrRDtBQUNsRCwyQ0FBbUM7QUFDbkMsNkNBQXNDO0FBQ3RDLHFDQUEwQztBQUMxQyx5RUFBbUU7QUFtQm5FLFNBQVMscUJBQXFCLENBQUksU0FBaUI7SUFDakQsT0FBTyxJQUFBLG9CQUFTLEVBQUksU0FBUyxDQUFDLENBQUM7QUFDakMsQ0FBQztBQXNCRCxTQUFnQixvQ0FBb0MsQ0FDbEQsZ0JBQXNDO0lBRXRDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNoQixJQUFJLGdCQUFnQixDQUFDLGNBQWMsRUFBRTtRQUNuQyxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLEdBQUcsQ0FBQztLQUNoRDtJQUNELE9BQU87UUFDTCxlQUFlLEVBQUU7WUFDZixRQUFRLEVBQUUsR0FBRyxNQUFNLFdBQVcsZ0JBQWdCLENBQUMsWUFBWSxFQUFFO1lBQzdELGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtTQUNwRDtRQUNELGFBQWEsRUFBRTtZQUNiLFFBQVEsRUFBRSxHQUFHLE1BQU0sU0FBUyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUU7WUFDM0QsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsZ0JBQWdCO1NBQ3BEO1FBQ0QsYUFBYSxFQUFFO1lBQ2IsUUFBUSxFQUFFLEdBQUcsTUFBTSxTQUFTLGdCQUFnQixDQUFDLFlBQVksRUFBRTtZQUMzRCxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxnQkFBZ0I7U0FDcEQ7S0FDRixDQUFDO0FBQ0osQ0FBQztBQXJCRCxvRkFxQkM7QUFFRDs7O0dBR0c7QUFDSSxNQUFNLGVBQWUsR0FBRyxDQUFDLEtBQWMsRUFBcUIsRUFBRTtJQUNuRSxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsTUFBTSxJQUFJLDZCQUFvQixDQUFDLHNCQUFzQixDQUFDLENBQUM7S0FDeEQ7SUFFRCxJQUFJO1FBQ0YseUdBQXlHO1FBQ3pHLGdIQUFnSDtRQUNoSCxxSEFBcUg7UUFDckgseUhBQXlIO1FBQ3pILGdDQUFnQztRQUNoQyxJQUFJLElBQUEscUJBQVEsRUFBQyxLQUFLLENBQUMsRUFBRTtZQUNuQixNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQ25DLElBQUEseUJBQWdCLEVBQUMsS0FBSyxDQUFDLENBQ0EsQ0FBQztZQUMxQixJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxFQUFFO2dCQUMvRCxNQUFNLElBQUksNkJBQW9CLENBQUMsdUJBQXVCLENBQUMsQ0FBQzthQUN6RDtZQUNELE1BQU0sU0FBUyxHQUFHLG9DQUFvQyxDQUFDO2dCQUNyRCxZQUFZLEVBQUUsa0JBQWtCLENBQUMsUUFBUTthQUMxQyxDQUFDLENBQUM7WUFDSCxPQUFPO2dCQUNMLGVBQWUsRUFBRSxTQUFTLENBQUMsZUFBZSxDQUFDLFFBQVE7Z0JBQ25ELGFBQWEsRUFBRSxTQUFTLENBQUMsYUFBYSxDQUFDLFFBQVE7Z0JBQy9DLGFBQWEsRUFBRSxTQUFTLENBQUMsYUFBYSxDQUFDLFFBQVE7Z0JBQy9DLFNBQVMsRUFBRSxrQkFBa0IsQ0FBQyxPQUFPO2FBQ3RDLENBQUM7U0FDSDthQUFNO1lBQ0wsa0hBQWtIO1lBQ2xILGdIQUFnSDtZQUNoSCxvSEFBb0g7WUFDcEgsTUFBTSxrQkFBa0IsR0FBRyxxQkFBcUIsQ0FBZSxLQUFLLENBQUMsQ0FBQztZQUN0RSxPQUFPO2dCQUNMLGVBQWUsRUFBRSxrQkFBa0IsQ0FBQyxFQUFFO2dCQUN0QyxhQUFhLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztnQkFDbkMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLENBQUM7Z0JBQ25DLFNBQVMsRUFBRSxLQUFLO2FBQ2pCLENBQUM7U0FDSDtLQUNGO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDViw0RUFBNEU7UUFDNUUsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDBCQUEwQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQy9EO0FBQ0gsQ0FBQyxDQUFDO0FBM0NXLFFBQUEsZUFBZSxtQkEyQzFCO0FBRUYsTUFBYSw0QkFBNkIsU0FBUSxrQ0FBZTtDQUFHO0FBQXBFLG9FQUFvRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW52YWxpZEFyZ3VtZW50RXJyb3J9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQgand0RGVjb2RlIGZyb20gJ2p3dC1kZWNvZGUnO1xuaW1wb3J0IHtpc0Jhc2U2NH0gZnJvbSAnLi92YWxpZGF0b3JzJztcbmltcG9ydCB7ZGVjb2RlRnJvbUJhc2U2NH0gZnJvbSAnLi9zdHJpbmcnO1xuaW1wb3J0IHtQcmVkZWZpbmVkU2NvcGV9IGZyb20gJy4uLy4uL2F1dGgvdG9rZW5zL3Blcm1pc3Npb24tc2NvcGUnO1xuaW1wb3J0IHtCYXNlRW5kcG9pbnRPdmVycmlkZX0gZnJvbSAnLi4vLi4vYXV0aCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGVnYWN5Q2xhaW1zIHtcbiAgLyoqXG4gICAqIGNvbnRyb2wgcGxhbmUgZW5kcG9pbnRcbiAgICovXG4gIGNwOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBjYWNoZSBlbmRwb2ludFxuICAgKi9cbiAgYzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2U2NERlY29kZWRWMVRva2VuIHtcbiAgYXBpX2tleTogc3RyaW5nO1xuICBlbmRwb2ludDogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBkZWNvZGVBdXRoVG9rZW5DbGFpbXM8VD4oYXV0aFRva2VuOiBzdHJpbmcpOiBUIHtcbiAgcmV0dXJuIGp3dERlY29kZTxUPihhdXRoVG9rZW4pO1xufVxuXG5pbnRlcmZhY2UgVG9rZW5BbmRFbmRwb2ludHMge1xuICAvLyBJZiB3ZSBkZWNvZGUgYSBKV1QgdGhhdCBkb2Vzbid0IGFjdHVhbGx5IGhhdmUgdGhlIGNvbnRyb2xFbmRwb2ludC9jYWNoZUVuZHBvaW50IGNsYWltcywgdGhlbiB0aGV5IHdpbGwgY29tZSBiYWNrXG4gIC8vIGFzIHVuZGVmaW5lZDsgdGh1cyB3ZSBuZWVkIHRoZSB0eXBlcyBoZXJlIHRvIGJlIGBzdHJpbmcgfCB1bmRlZmluZWRgLlxuICBjb250cm9sRW5kcG9pbnQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY2FjaGVFbmRwb2ludDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB0b2tlbkVuZHBvaW50OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIGF1dGhUb2tlbjogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVuZHBvaW50IHtcbiAgZW5kcG9pbnQ6IHN0cmluZztcbiAgc2VjdXJlQ29ubmVjdGlvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQWxsRW5kcG9pbnRzIHtcbiAgY29udHJvbEVuZHBvaW50OiBFbmRwb2ludDtcbiAgY2FjaGVFbmRwb2ludDogRW5kcG9pbnQ7XG4gIHRva2VuRW5kcG9pbnQ6IEVuZHBvaW50O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcG9wdWxhdGVBbGxFbmRwb2ludHNGcm9tQmFzZUVuZHBvaW50KFxuICBlbmRwb2ludE92ZXJyaWRlOiBCYXNlRW5kcG9pbnRPdmVycmlkZVxuKTogQWxsRW5kcG9pbnRzIHtcbiAgbGV0IHByZWZpeCA9ICcnO1xuICBpZiAoZW5kcG9pbnRPdmVycmlkZS5lbmRwb2ludFByZWZpeCkge1xuICAgIHByZWZpeCA9IGAke2VuZHBvaW50T3ZlcnJpZGUuZW5kcG9pbnRQcmVmaXh9LmA7XG4gIH1cbiAgcmV0dXJuIHtcbiAgICBjb250cm9sRW5kcG9pbnQ6IHtcbiAgICAgIGVuZHBvaW50OiBgJHtwcmVmaXh9Y29udHJvbC4ke2VuZHBvaW50T3ZlcnJpZGUuYmFzZUVuZHBvaW50fWAsXG4gICAgICBzZWN1cmVDb25uZWN0aW9uOiBlbmRwb2ludE92ZXJyaWRlLnNlY3VyZUNvbm5lY3Rpb24sXG4gICAgfSxcbiAgICBjYWNoZUVuZHBvaW50OiB7XG4gICAgICBlbmRwb2ludDogYCR7cHJlZml4fWNhY2hlLiR7ZW5kcG9pbnRPdmVycmlkZS5iYXNlRW5kcG9pbnR9YCxcbiAgICAgIHNlY3VyZUNvbm5lY3Rpb246IGVuZHBvaW50T3ZlcnJpZGUuc2VjdXJlQ29ubmVjdGlvbixcbiAgICB9LFxuICAgIHRva2VuRW5kcG9pbnQ6IHtcbiAgICAgIGVuZHBvaW50OiBgJHtwcmVmaXh9dG9rZW4uJHtlbmRwb2ludE92ZXJyaWRlLmJhc2VFbmRwb2ludH1gLFxuICAgICAgc2VjdXJlQ29ubmVjdGlvbjogZW5kcG9pbnRPdmVycmlkZS5zZWN1cmVDb25uZWN0aW9uLFxuICAgIH0sXG4gIH07XG59XG5cbi8qKlxuICogQHBhcmFtIHtzdHJpbmd9IHRva2VuXG4gKiBAcmV0dXJucyBUb2tlbkFuZEVuZHBvaW50c1xuICovXG5leHBvcnQgY29uc3QgZGVjb2RlQXV0aFRva2VuID0gKHRva2VuPzogc3RyaW5nKTogVG9rZW5BbmRFbmRwb2ludHMgPT4ge1xuICBpZiAoIXRva2VuKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdtYWxmb3JtZWQgYXV0aCB0b2tlbicpO1xuICB9XG5cbiAgdHJ5IHtcbiAgICAvLyB2MSBhcGkgdG9rZW5zIGRvbid0IGhhdmUgYW4gZW5kcG9pbnQgYXMgcGFydCBvZiB0aGVpciBjbGFpbXMuIEluc3RlYWQsIHdoZW4gdGhlIFNESyByZXR1cm5zIHRva2Vucywgd2VcbiAgICAvLyBnaXZlIGl0IHRvIHRoZW0gYXMgYSBiYXNlNjQgZW5jb2RlZCBzdHJpbmcgb2YgJ3sgXCJhcGlfa2V5XCI6IFwiPHRoZSBrZXk+XCIsIFwiZW5kcG9pbnRcIjogXCJwcm9kLm1vbWVudG9ocS5jb21cIiB9Jy5cbiAgICAvLyBTaW5jZSBpbiB0aGUgbmVhciBmdXR1cmUsIG1vc3QgY3VzdG9tZXJzIGFyZSBnb2luZyB0byBiZSB1c2luZyB0aGVzZSBuZXdlciB0b2tlbnMsIHdlIGFyZSBmaXJzdCBjaGVja2luZyB0byBzZWUgaWZcbiAgICAvLyB0aGV5IGFyZSBiYXNlNjQgZW5jb2RlZCwgd2hpY2ggd2lsbCB0ZWxsIHVzIHRoYXQgdGhleSBhcmUgb3VyIHYxIGFwaSB0b2tlbnMuIElmIGl0cyBub3QsIHdlIHdpbGwgZmFsbCBiYWNrIHRvIGRlY29kaW5nXG4gICAgLy8gaXQgYXMgb25lIG9mIG91ciBsZWdhY3kgand0cy5cbiAgICBpZiAoaXNCYXNlNjQodG9rZW4pKSB7XG4gICAgICBjb25zdCBiYXNlNjREZWNvZGVkVG9rZW4gPSBKU09OLnBhcnNlKFxuICAgICAgICBkZWNvZGVGcm9tQmFzZTY0KHRva2VuKVxuICAgICAgKSBhcyBCYXNlNjREZWNvZGVkVjFUb2tlbjtcbiAgICAgIGlmICghYmFzZTY0RGVjb2RlZFRva2VuLmVuZHBvaW50IHx8ICFiYXNlNjREZWNvZGVkVG9rZW4uYXBpX2tleSkge1xuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2ZhaWxlZCB0byBwYXJzZSB0b2tlbicpO1xuICAgICAgfVxuICAgICAgY29uc3QgZW5kcG9pbnRzID0gcG9wdWxhdGVBbGxFbmRwb2ludHNGcm9tQmFzZUVuZHBvaW50KHtcbiAgICAgICAgYmFzZUVuZHBvaW50OiBiYXNlNjREZWNvZGVkVG9rZW4uZW5kcG9pbnQsXG4gICAgICB9KTtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGNvbnRyb2xFbmRwb2ludDogZW5kcG9pbnRzLmNvbnRyb2xFbmRwb2ludC5lbmRwb2ludCxcbiAgICAgICAgY2FjaGVFbmRwb2ludDogZW5kcG9pbnRzLmNhY2hlRW5kcG9pbnQuZW5kcG9pbnQsXG4gICAgICAgIHRva2VuRW5kcG9pbnQ6IGVuZHBvaW50cy50b2tlbkVuZHBvaW50LmVuZHBvaW50LFxuICAgICAgICBhdXRoVG9rZW46IGJhc2U2NERlY29kZWRUb2tlbi5hcGlfa2V5LFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVGhpcyBkZWNvZGUgZnVuY3Rpb24gdXNlcyBnZW5lcmljcyB0byBhZHZlcnRpc2UgdGhhdCB3ZSB3aWxsIHVzdWFsbHkgZXhwZWN0IHRvIGZpbmQgdGhlIExlZ2FjeUNsYWltcy4gIEhvd2V2ZXIsXG4gICAgICAvLyBpZiB0aGUgdG9rZW4gaXMgYSB2YWxpZCBKV1QgYnV0IG5vdCBhY3R1YWxseSBvbmUgb2Ygb3VyIGxlZ2FjeSB0b2tlbnMsIHRoZSBlbmRwb2ludCBjbGFpbXMgd2lsbCBiZSB1bmRlZmluZWQsXG4gICAgICAvLyB3aGljaCBpcyB3aHkgdGhlIHJldHVybiB0eXBlIGZvciB0aGlzIGZ1bmN0aW9uIHNwZWNpZmllcyB0aGF0IHRoZSBjb250cm9sRW5kcG9pbnQvY2FjaGVFbmRwb2ludCBtYXkgYmUgdW5kZWZpbmVkLlxuICAgICAgY29uc3QgZGVjb2RlZExlZ2FjeVRva2VuID0gZGVjb2RlQXV0aFRva2VuQ2xhaW1zPExlZ2FjeUNsYWltcz4odG9rZW4pO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY29udHJvbEVuZHBvaW50OiBkZWNvZGVkTGVnYWN5VG9rZW4uY3AsXG4gICAgICAgIGNhY2hlRW5kcG9pbnQ6IGRlY29kZWRMZWdhY3lUb2tlbi5jLFxuICAgICAgICB0b2tlbkVuZHBvaW50OiBkZWNvZGVkTGVnYWN5VG9rZW4uYyxcbiAgICAgICAgYXV0aFRva2VuOiB0b2tlbixcbiAgICAgIH07XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9yZXN0cmljdC10ZW1wbGF0ZS1leHByZXNzaW9uc1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihgZmFpbGVkIHRvIHBhcnNlIHRva2VuOiAke2V9YCk7XG4gIH1cbn07XG5cbmV4cG9ydCBjbGFzcyBJbnRlcm5hbFN1cGVyVXNlclBlcm1pc3Npb25zIGV4dGVuZHMgUHJlZGVmaW5lZFNjb3BlIHt9XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC91dGlscy9hdXRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUFrRDtBQUNsRCwyQ0FBbUM7QUFDbkMsNkNBQXNDO0FBQ3RDLHFDQUEwQztBQUMxQyx5RUFBbUU7QUFtQm5FLFNBQVMscUJBQXFCLENBQUksU0FBaUI7SUFDakQsT0FBTyxJQUFBLG9CQUFTLEVBQUksU0FBUyxDQUFDLENBQUM7QUFDakMsQ0FBQztBQXdCRCxTQUFnQixvQ0FBb0MsQ0FDbEQsZ0JBQXNDO0lBRXRDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztJQUNoQixJQUFJLGdCQUFnQixDQUFDLGNBQWMsRUFBRTtRQUNuQyxNQUFNLEdBQUcsR0FBRyxnQkFBZ0IsQ0FBQyxjQUFjLEdBQUcsQ0FBQztLQUNoRDtJQUNELE9BQU87UUFDTCxlQUFlLEVBQUU7WUFDZixRQUFRLEVBQUUsR0FBRyxNQUFNLFdBQVcsZ0JBQWdCLENBQUMsWUFBWSxFQUFFO1lBQzdELGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtTQUNwRDtRQUNELGFBQWEsRUFBRTtZQUNiLFFBQVEsRUFBRSxHQUFHLE1BQU0sU0FBUyxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUU7WUFDM0QsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsZ0JBQWdCO1NBQ3BEO1FBQ0QsYUFBYSxFQUFFO1lBQ2IsUUFBUSxFQUFFLEdBQUcsTUFBTSxTQUFTLGdCQUFnQixDQUFDLFlBQVksRUFBRTtZQUMzRCxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxnQkFBZ0I7U0FDcEQ7UUFDRCxlQUFlLEVBQUU7WUFDZixRQUFRLEVBQUUsR0FBRyxNQUFNLFdBQVcsZ0JBQWdCLENBQUMsWUFBWSxFQUFFO1lBQzdELGdCQUFnQixFQUFFLGdCQUFnQixDQUFDLGdCQUFnQjtTQUNwRDtLQUNGLENBQUM7QUFDSixDQUFDO0FBekJELG9GQXlCQztBQUVEOzs7R0FHRztBQUNJLE1BQU0sZUFBZSxHQUFHLENBQUMsS0FBYyxFQUFxQixFQUFFO0lBQ25FLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixNQUFNLElBQUksNkJBQW9CLENBQUMsc0JBQXNCLENBQUMsQ0FBQztLQUN4RDtJQUVELElBQUk7UUFDRix5R0FBeUc7UUFDekcsZ0hBQWdIO1FBQ2hILHFIQUFxSDtRQUNySCx5SEFBeUg7UUFDekgsZ0NBQWdDO1FBQ2hDLElBQUksSUFBQSxxQkFBUSxFQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ25CLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FDbkMsSUFBQSx5QkFBZ0IsRUFBQyxLQUFLLENBQUMsQ0FDQSxDQUFDO1lBQzFCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUU7Z0JBQy9ELE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDO2FBQ3pEO1lBQ0QsTUFBTSxTQUFTLEdBQUcsb0NBQW9DLENBQUM7Z0JBQ3JELFlBQVksRUFBRSxrQkFBa0IsQ0FBQyxRQUFRO2FBQzFDLENBQUMsQ0FBQztZQUNILE9BQU87Z0JBQ0wsZUFBZSxFQUFFLFNBQVMsQ0FBQyxlQUFlLENBQUMsUUFBUTtnQkFDbkQsYUFBYSxFQUFFLFNBQVMsQ0FBQyxhQUFhLENBQUMsUUFBUTtnQkFDL0MsYUFBYSxFQUFFLFNBQVMsQ0FBQyxhQUFhLENBQUMsUUFBUTtnQkFDL0MsZUFBZSxFQUFFLFNBQVMsQ0FBQyxlQUFlLENBQUMsUUFBUTtnQkFDbkQsU0FBUyxFQUFFLGtCQUFrQixDQUFDLE9BQU87YUFDdEMsQ0FBQztTQUNIO2FBQU07WUFDTCxrSEFBa0g7WUFDbEgsZ0hBQWdIO1lBQ2hILG9IQUFvSDtZQUNwSCxNQUFNLGtCQUFrQixHQUFHLHFCQUFxQixDQUFlLEtBQUssQ0FBQyxDQUFDO1lBQ3RFLE9BQU87Z0JBQ0wsZUFBZSxFQUFFLGtCQUFrQixDQUFDLEVBQUU7Z0JBQ3RDLGFBQWEsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO2dCQUNuQyxhQUFhLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztnQkFDbkMsZUFBZSxFQUFFLGtCQUFrQixDQUFDLENBQUM7Z0JBQ3JDLFNBQVMsRUFBRSxLQUFLO2FBQ2pCLENBQUM7U0FDSDtLQUNGO0lBQUMsT0FBTyxDQUFDLEVBQUU7UUFDViw0RUFBNEU7UUFDNUUsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDBCQUEwQixDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBQy9EO0FBQ0gsQ0FBQyxDQUFDO0FBN0NXLFFBQUEsZUFBZSxtQkE2QzFCO0FBRUYsTUFBYSw0QkFBNkIsU0FBUSxrQ0FBZTtDQUFHO0FBQXBFLG9FQUFvRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW52YWxpZEFyZ3VtZW50RXJyb3J9IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQgand0RGVjb2RlIGZyb20gJ2p3dC1kZWNvZGUnO1xuaW1wb3J0IHtpc0Jhc2U2NH0gZnJvbSAnLi92YWxpZGF0b3JzJztcbmltcG9ydCB7ZGVjb2RlRnJvbUJhc2U2NH0gZnJvbSAnLi9zdHJpbmcnO1xuaW1wb3J0IHtQcmVkZWZpbmVkU2NvcGV9IGZyb20gJy4uLy4uL2F1dGgvdG9rZW5zL3Blcm1pc3Npb24tc2NvcGUnO1xuaW1wb3J0IHtCYXNlRW5kcG9pbnRPdmVycmlkZX0gZnJvbSAnLi4vLi4vYXV0aCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTGVnYWN5Q2xhaW1zIHtcbiAgLyoqXG4gICAqIGNvbnRyb2wgcGxhbmUgZW5kcG9pbnRcbiAgICovXG4gIGNwOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBjYWNoZSBlbmRwb2ludFxuICAgKi9cbiAgYzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEJhc2U2NERlY29kZWRWMVRva2VuIHtcbiAgYXBpX2tleTogc3RyaW5nO1xuICBlbmRwb2ludDogc3RyaW5nO1xufVxuXG5mdW5jdGlvbiBkZWNvZGVBdXRoVG9rZW5DbGFpbXM8VD4oYXV0aFRva2VuOiBzdHJpbmcpOiBUIHtcbiAgcmV0dXJuIGp3dERlY29kZTxUPihhdXRoVG9rZW4pO1xufVxuXG5pbnRlcmZhY2UgVG9rZW5BbmRFbmRwb2ludHMge1xuICAvLyBJZiB3ZSBkZWNvZGUgYSBKV1QgdGhhdCBkb2Vzbid0IGFjdHVhbGx5IGhhdmUgdGhlIGNvbnRyb2xFbmRwb2ludC9jYWNoZUVuZHBvaW50IGNsYWltcywgdGhlbiB0aGV5IHdpbGwgY29tZSBiYWNrXG4gIC8vIGFzIHVuZGVmaW5lZDsgdGh1cyB3ZSBuZWVkIHRoZSB0eXBlcyBoZXJlIHRvIGJlIGBzdHJpbmcgfCB1bmRlZmluZWRgLlxuICBjb250cm9sRW5kcG9pbnQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgY2FjaGVFbmRwb2ludDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB0b2tlbkVuZHBvaW50OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIHN0b3JhZ2VFbmRwb2ludDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBhdXRoVG9rZW46IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbmRwb2ludCB7XG4gIGVuZHBvaW50OiBzdHJpbmc7XG4gIHNlY3VyZUNvbm5lY3Rpb24/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsbEVuZHBvaW50cyB7XG4gIGNvbnRyb2xFbmRwb2ludDogRW5kcG9pbnQ7XG4gIGNhY2hlRW5kcG9pbnQ6IEVuZHBvaW50O1xuICB0b2tlbkVuZHBvaW50OiBFbmRwb2ludDtcbiAgc3RvcmFnZUVuZHBvaW50OiBFbmRwb2ludDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBvcHVsYXRlQWxsRW5kcG9pbnRzRnJvbUJhc2VFbmRwb2ludChcbiAgZW5kcG9pbnRPdmVycmlkZTogQmFzZUVuZHBvaW50T3ZlcnJpZGVcbik6IEFsbEVuZHBvaW50cyB7XG4gIGxldCBwcmVmaXggPSAnJztcbiAgaWYgKGVuZHBvaW50T3ZlcnJpZGUuZW5kcG9pbnRQcmVmaXgpIHtcbiAgICBwcmVmaXggPSBgJHtlbmRwb2ludE92ZXJyaWRlLmVuZHBvaW50UHJlZml4fS5gO1xuICB9XG4gIHJldHVybiB7XG4gICAgY29udHJvbEVuZHBvaW50OiB7XG4gICAgICBlbmRwb2ludDogYCR7cHJlZml4fWNvbnRyb2wuJHtlbmRwb2ludE92ZXJyaWRlLmJhc2VFbmRwb2ludH1gLFxuICAgICAgc2VjdXJlQ29ubmVjdGlvbjogZW5kcG9pbnRPdmVycmlkZS5zZWN1cmVDb25uZWN0aW9uLFxuICAgIH0sXG4gICAgY2FjaGVFbmRwb2ludDoge1xuICAgICAgZW5kcG9pbnQ6IGAke3ByZWZpeH1jYWNoZS4ke2VuZHBvaW50T3ZlcnJpZGUuYmFzZUVuZHBvaW50fWAsXG4gICAgICBzZWN1cmVDb25uZWN0aW9uOiBlbmRwb2ludE92ZXJyaWRlLnNlY3VyZUNvbm5lY3Rpb24sXG4gICAgfSxcbiAgICB0b2tlbkVuZHBvaW50OiB7XG4gICAgICBlbmRwb2ludDogYCR7cHJlZml4fXRva2VuLiR7ZW5kcG9pbnRPdmVycmlkZS5iYXNlRW5kcG9pbnR9YCxcbiAgICAgIHNlY3VyZUNvbm5lY3Rpb246IGVuZHBvaW50T3ZlcnJpZGUuc2VjdXJlQ29ubmVjdGlvbixcbiAgICB9LFxuICAgIHN0b3JhZ2VFbmRwb2ludDoge1xuICAgICAgZW5kcG9pbnQ6IGAke3ByZWZpeH1zdG9yYWdlLiR7ZW5kcG9pbnRPdmVycmlkZS5iYXNlRW5kcG9pbnR9YCxcbiAgICAgIHNlY3VyZUNvbm5lY3Rpb246IGVuZHBvaW50T3ZlcnJpZGUuc2VjdXJlQ29ubmVjdGlvbixcbiAgICB9LFxuICB9O1xufVxuXG4vKipcbiAqIEBwYXJhbSB7c3RyaW5nfSB0b2tlblxuICogQHJldHVybnMgVG9rZW5BbmRFbmRwb2ludHNcbiAqL1xuZXhwb3J0IGNvbnN0IGRlY29kZUF1dGhUb2tlbiA9ICh0b2tlbj86IHN0cmluZyk6IFRva2VuQW5kRW5kcG9pbnRzID0+IHtcbiAgaWYgKCF0b2tlbikge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbWFsZm9ybWVkIGF1dGggdG9rZW4nKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgLy8gdjEgYXBpIHRva2VucyBkb24ndCBoYXZlIGFuIGVuZHBvaW50IGFzIHBhcnQgb2YgdGhlaXIgY2xhaW1zLiBJbnN0ZWFkLCB3aGVuIHRoZSBTREsgcmV0dXJucyB0b2tlbnMsIHdlXG4gICAgLy8gZ2l2ZSBpdCB0byB0aGVtIGFzIGEgYmFzZTY0IGVuY29kZWQgc3RyaW5nIG9mICd7IFwiYXBpX2tleVwiOiBcIjx0aGUga2V5PlwiLCBcImVuZHBvaW50XCI6IFwicHJvZC5tb21lbnRvaHEuY29tXCIgfScuXG4gICAgLy8gU2luY2UgaW4gdGhlIG5lYXIgZnV0dXJlLCBtb3N0IGN1c3RvbWVycyBhcmUgZ29pbmcgdG8gYmUgdXNpbmcgdGhlc2UgbmV3ZXIgdG9rZW5zLCB3ZSBhcmUgZmlyc3QgY2hlY2tpbmcgdG8gc2VlIGlmXG4gICAgLy8gdGhleSBhcmUgYmFzZTY0IGVuY29kZWQsIHdoaWNoIHdpbGwgdGVsbCB1cyB0aGF0IHRoZXkgYXJlIG91ciB2MSBhcGkgdG9rZW5zLiBJZiBpdHMgbm90LCB3ZSB3aWxsIGZhbGwgYmFjayB0byBkZWNvZGluZ1xuICAgIC8vIGl0IGFzIG9uZSBvZiBvdXIgbGVnYWN5IGp3dHMuXG4gICAgaWYgKGlzQmFzZTY0KHRva2VuKSkge1xuICAgICAgY29uc3QgYmFzZTY0RGVjb2RlZFRva2VuID0gSlNPTi5wYXJzZShcbiAgICAgICAgZGVjb2RlRnJvbUJhc2U2NCh0b2tlbilcbiAgICAgICkgYXMgQmFzZTY0RGVjb2RlZFYxVG9rZW47XG4gICAgICBpZiAoIWJhc2U2NERlY29kZWRUb2tlbi5lbmRwb2ludCB8fCAhYmFzZTY0RGVjb2RlZFRva2VuLmFwaV9rZXkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdmYWlsZWQgdG8gcGFyc2UgdG9rZW4nKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGVuZHBvaW50cyA9IHBvcHVsYXRlQWxsRW5kcG9pbnRzRnJvbUJhc2VFbmRwb2ludCh7XG4gICAgICAgIGJhc2VFbmRwb2ludDogYmFzZTY0RGVjb2RlZFRva2VuLmVuZHBvaW50LFxuICAgICAgfSk7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBjb250cm9sRW5kcG9pbnQ6IGVuZHBvaW50cy5jb250cm9sRW5kcG9pbnQuZW5kcG9pbnQsXG4gICAgICAgIGNhY2hlRW5kcG9pbnQ6IGVuZHBvaW50cy5jYWNoZUVuZHBvaW50LmVuZHBvaW50LFxuICAgICAgICB0b2tlbkVuZHBvaW50OiBlbmRwb2ludHMudG9rZW5FbmRwb2ludC5lbmRwb2ludCxcbiAgICAgICAgc3RvcmFnZUVuZHBvaW50OiBlbmRwb2ludHMuc3RvcmFnZUVuZHBvaW50LmVuZHBvaW50LFxuICAgICAgICBhdXRoVG9rZW46IGJhc2U2NERlY29kZWRUb2tlbi5hcGlfa2V5LFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gVGhpcyBkZWNvZGUgZnVuY3Rpb24gdXNlcyBnZW5lcmljcyB0byBhZHZlcnRpc2UgdGhhdCB3ZSB3aWxsIHVzdWFsbHkgZXhwZWN0IHRvIGZpbmQgdGhlIExlZ2FjeUNsYWltcy4gIEhvd2V2ZXIsXG4gICAgICAvLyBpZiB0aGUgdG9rZW4gaXMgYSB2YWxpZCBKV1QgYnV0IG5vdCBhY3R1YWxseSBvbmUgb2Ygb3VyIGxlZ2FjeSB0b2tlbnMsIHRoZSBlbmRwb2ludCBjbGFpbXMgd2lsbCBiZSB1bmRlZmluZWQsXG4gICAgICAvLyB3aGljaCBpcyB3aHkgdGhlIHJldHVybiB0eXBlIGZvciB0aGlzIGZ1bmN0aW9uIHNwZWNpZmllcyB0aGF0IHRoZSBjb250cm9sRW5kcG9pbnQvY2FjaGVFbmRwb2ludCBtYXkgYmUgdW5kZWZpbmVkLlxuICAgICAgY29uc3QgZGVjb2RlZExlZ2FjeVRva2VuID0gZGVjb2RlQXV0aFRva2VuQ2xhaW1zPExlZ2FjeUNsYWltcz4odG9rZW4pO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgY29udHJvbEVuZHBvaW50OiBkZWNvZGVkTGVnYWN5VG9rZW4uY3AsXG4gICAgICAgIGNhY2hlRW5kcG9pbnQ6IGRlY29kZWRMZWdhY3lUb2tlbi5jLFxuICAgICAgICB0b2tlbkVuZHBvaW50OiBkZWNvZGVkTGVnYWN5VG9rZW4uYyxcbiAgICAgICAgc3RvcmFnZUVuZHBvaW50OiBkZWNvZGVkTGVnYWN5VG9rZW4uYyxcbiAgICAgICAgYXV0aFRva2VuOiB0b2tlbixcbiAgICAgIH07XG4gICAgfVxuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9yZXN0cmljdC10ZW1wbGF0ZS1leHByZXNzaW9uc1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihgZmFpbGVkIHRvIHBhcnNlIHRva2VuOiAke2V9YCk7XG4gIH1cbn07XG5cbmV4cG9ydCBjbGFzcyBJbnRlcm5hbFN1cGVyVXNlclBlcm1pc3Npb25zIGV4dGVuZHMgUHJlZGVmaW5lZFNjb3BlIHt9XG4iXX0=
import { ExpiresIn } from '../../utils';
export declare function validateStoreName(name: string): void;
export declare function validateCacheName(name: string): void;

@@ -3,0 +4,0 @@ export declare function validateCacheKeyOrPrefix(name: string): void;

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.validateMaxConcurrentRequests = exports.validateLeaderboardNumberOfElements = exports.validateLeaderboardCount = exports.validateLeaderboardOffset = exports.validateLeaderboardRanks = exports.validateLeaderboardName = exports.isBase64 = exports.validateDisposableTokenTokenID = exports.validateDisposableTokenExpiry = exports.validateTimeout = exports.validateValidForSeconds = exports.validateTtlSeconds = exports.validateTtlMinutes = exports.validateTopK = exports.validateNumDimensions = exports.validateIndexName = exports.validateWebhookName = exports.validateTopicName = exports.validateListSliceStartEnd = exports.validateListName = exports.validateDictionaryName = exports.validateSortedSetCount = exports.validateSortedSetOffset = exports.validateSortedSetScores = exports.validateSortedSetRanks = exports.validateSortedSetName = exports.validateSetSampleLimit = exports.validateSetName = exports.validateCacheKeyOrPrefix = exports.validateCacheName = void 0;
exports.validateMaxConcurrentRequests = exports.validateLeaderboardNumberOfElements = exports.validateLeaderboardCount = exports.validateLeaderboardOffset = exports.validateLeaderboardRanks = exports.validateLeaderboardName = exports.isBase64 = exports.validateDisposableTokenTokenID = exports.validateDisposableTokenExpiry = exports.validateTimeout = exports.validateValidForSeconds = exports.validateTtlSeconds = exports.validateTtlMinutes = exports.validateTopK = exports.validateNumDimensions = exports.validateIndexName = exports.validateWebhookName = exports.validateTopicName = exports.validateListSliceStartEnd = exports.validateListName = exports.validateDictionaryName = exports.validateSortedSetCount = exports.validateSortedSetOffset = exports.validateSortedSetScores = exports.validateSortedSetRanks = exports.validateSortedSetName = exports.validateSetSampleLimit = exports.validateSetName = exports.validateCacheKeyOrPrefix = exports.validateCacheName = exports.validateStoreName = void 0;
const errors_1 = require("../../errors");
const string_1 = require("./string");
function validateStoreName(name) {
if (isEmpty(name)) {
throw new errors_1.InvalidArgumentError('store name must not be empty');
}
}
exports.validateStoreName = validateStoreName;
function validateCacheName(name) {

@@ -219,2 +225,2 @@ if (isEmpty(name)) {

exports.validateMaxConcurrentRequests = validateMaxConcurrentRequests;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC91dGlscy92YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUFrRDtBQUVsRCxxQ0FBMEQ7QUFFMUQsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWTtJQUM1QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsOEJBQThCLENBQUMsQ0FBQztLQUNoRTtBQUNILENBQUM7QUFKRCw4Q0FJQztBQUVELFNBQWdCLHdCQUF3QixDQUFDLElBQVk7SUFDbkQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDJDQUEyQyxDQUFDLENBQUM7S0FDN0U7QUFDSCxDQUFDO0FBSkQsNERBSUM7QUFFRCxTQUFnQixlQUFlLENBQUMsSUFBWTtJQUMxQyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsNEJBQTRCLENBQUMsQ0FBQztLQUM5RDtBQUNILENBQUM7QUFKRCwwQ0FJQztBQUVELFNBQWdCLHNCQUFzQixDQUFDLEtBQWE7SUFDbEQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1FBQ2IsTUFBTSxJQUFJLDZCQUFvQixDQUFDLG1DQUFtQyxDQUFDLENBQUM7S0FDckU7QUFDSCxDQUFDO0FBSkQsd0RBSUM7QUFFRCxTQUFnQixxQkFBcUIsQ0FBQyxJQUFZO0lBQ2hELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0tBQ3JFO0FBQ0gsQ0FBQztBQUpELHNEQUlDO0FBRUQsU0FBZ0Isc0JBQXNCLENBQUMsVUFBa0IsRUFBRSxRQUFpQjtJQUMxRSxJQUFJLFFBQVEsS0FBSyxTQUFT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QUFVLElBQUksUUFBUSxFQUFFO1FBQzVELE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0tBQ3pFO0lBQ0QsSUFBSSxVQUFVLEdBQUcsQ0FBQyxJQUFJLFFBQVEsR0FBRyxDQUFDLEVBQUU7UUFDbEMsTUFBTSxJQUFJLDZCQUFvQixDQUFDLHdCQUF3QixDQUFDLENBQUM7S0FDMUQ7QUFDSCxDQUFDO0FBUEQsNERBT0M7QUFFRCxTQUFnQix5QkFBeUIsQ0FBQyxNQUFjO0lBQ3RELElBQUksTUFBTSxHQUFHLENBQUMsRUFBRTtRQUNkLE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0tBQ3RFO0FBQ0gsQ0FBQztBQUpELDhEQUlDO0FBRUQsU0FBZ0Isd0JBQXdCLENBQUMsS0FBYTtJQUNwRCxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUU7UUFDYixNQUFNLElBQUksNkJBQW9CLENBQUMsdUNBQXVDLENBQUMsQ0FBQztLQUN6RTtBQUNILENBQUM7QUFKRCw0REFJQztBQUVELFNBQWdCLG1DQUFtQyxDQUFDLFdBQW1CO0lBQ3JFLElBQUksV0FBVyxHQUFHLENBQUMsRUFBRTtRQUNuQixNQUFNLElBQUksNkJBQW9CLENBQUMsbUNBQW1DLENBQUMsQ0FBQztLQUNyRTtBQUNILENBQUM7QUFKRCxrRkFJQztBQUVELFNBQWdCLDZCQUE2QixDQUFDLEtBQWE7SUFDekQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxFQUFFO1FBQ2IsTUFBTSxJQUFJLDZCQUFvQixDQUM1QiwyREFBMkQsQ0FDNUQsQ0FBQztLQUNIO0FBQ0gsQ0FBQztBQU5ELHNFQU1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbnZhbGlkQXJndW1lbnRFcnJvcn0gZnJvbSAnLi4vLi4vZXJyb3JzJztcbmltcG9ydCB7RXhwaXJlc0lufSBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQge2RlY29kZUZyb21CYXNlNjQsIGVuY29kZVRvQmFzZTY0fSBmcm9tICcuL3N0cmluZyc7XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUNhY2hlTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2NhY2hlIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVDYWNoZUtleU9yUHJlZml4KG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY2FjaGUga2V5IG9yIGtleSBwcmVmaXggbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTZXROYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignc2V0IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTZXRTYW1wbGVMaW1pdChsaW1pdDogbnVtYmVyKSB7XG4gIGlmIChsaW1pdCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2xpbWl0IG11c3QgYmUgbm9uLW5lZ2F0aXZlICg+PSAwKScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldE5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzb3J0ZWQgc2V0IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXRSYW5rcyhzdGFydF9yYW5rOiBudW1iZXIsIGVuZF9yYW5rPzogbnVtYmVyKSB7XG4gIGlmIChlbmRfcmFuayA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuO1xuICB9XG4gIGlmIChzdGFydF9yYW5rID4gMCAmJiBlbmRfcmFuayA+IDAgJiYgc3RhcnRfcmFuayA+IGVuZF9yYW5rKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzdGFydCByYW5rIG11c3QgYmUgbGVzcyB0aGFuIGVuZCByYW5rJyk7XG4gIH1cbiAgaWYgKHN0YXJ0X3JhbmsgPCAwICYmIGVuZF9yYW5rIDwgMCAmJiBzdGFydF9yYW5rID49IGVuZF9yYW5rKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ25lZ2F0aXZlIHN0YXJ0IHJhbmsgbXVzdCBiZSBsZXNzIHRoYW4gbmVnYXRpdmUgZW5kIHJhbmsnXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXRTY29yZXMobWluU2NvcmU/OiBudW1iZXIsIG1heFNjb3JlPzogbnVtYmVyKSB7XG4gIGlmIChtaW5TY29yZSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIGlmIChtYXhTY29yZSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIGlmIChtaW5TY29yZSA+IG1heFNjb3JlKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ21pblNjb3JlIG11c3QgYmUgbGVzcyB0aGFuIG9yIGVxdWFsIHRvIG1heFNjb3JlJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU29ydGVkU2V0T2Zmc2V0KG9mZnNldDogbnVtYmVyKSB7XG4gIGlmIChvZmZzZXQgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdvZmZzZXQgbXVzdCBiZSBub24tbmVnYXRpdmUgKD49IDApJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU29ydGVkU2V0Q291bnQoY291bnQ6IG51bWJlcikge1xuICBpZiAoY291bnQgPCAxKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdjb3VudCBtdXN0IGJlIHN0cmljdGx5IHBvc2l0aXZlICg+IDApJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRGljdGlvbmFyeU5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdkaWN0aW9uYXJ5IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMaXN0TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2xpc3QgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxpc3RTbGljZVN0YXJ0RW5kKFxuICBzdGFydEluZGV4PzogbnVtYmVyLFxuICBlbmRJbmRleD86IG51bWJlclxuKSB7XG4gIGlmIChzdGFydEluZGV4ID09PSB1bmRlZmluZWQgfHwgZW5kSW5kZXggPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuICAvLyBjYW4ndCB2YWxpZGF0ZSBib3VuZHMgZm9yIHN0YXJ0IGFuZCBpbmRleCBvZiBlaXRoZXIgb3IgYXJlIG5lZ2F0aXZlIHdpdGhvdXQgbGlzdCBsZW5ndGhcbiAgaWYgKHN0YXJ0SW5kZXggPiAwIHx8IGVuZEluZGV4IDwgMCkgcmV0dXJuO1xuICBpZiAoZW5kSW5kZXggPD0gc3RhcnRJbmRleCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgICdlbmRJbmRleCAoZXhjbHVzaXZlKSBtdXN0IGJlIGxhcmdlciB0aGFuIHN0YXJ0SW5kZXggKGluY2x1c2l2ZSknXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUb3BpY05hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd0b3BpYyBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlV2ViaG9va05hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd3ZWJob29rIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVJbmRleE5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdpbmRleCBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTnVtRGltZW5zaW9ucyhudW1EaW1lbnNpb25zOiBudW1iZXIpIHtcbiAgaWYgKG51bURpbWVuc2lvbnMgPD0gMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbnVtRGltZW5zaW9ucyBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVG9wSyh0b3BLOiBudW1iZXIpIHtcbiAgaWYgKHRvcEsgPD0gMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndG9wSyBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVHRsTWludXRlcyh0dGxNaW51dGVzOiBudW1iZXIpIHtcbiAgaWYgKHR0bE1pbnV0ZXMgPCAwIHx8ICFOdW1iZXIuaXNTYWZlSW50ZWdlcih0dGxNaW51dGVzKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndHRsTWludXRlcyBtdXN0IGJlIGEgcG9zaXRpdmUgaW50ZWdlcicpO1xuICB9XG59XG5cbi8vIEN1cnJlbnRseSBhY2NlcHRpbmcgdHRsIGluIHNlY29uZHMsIGJ1dCBpZiBzb21lb25lIHJlcXVlc3RzIHN1cHBvcnQgZm9yIG1pbGxpcyxcbi8vIHRoZSB2YWxpZGF0b3Igd2lsbCBuZWVkIHRvIGNoZWNrIGZvciBOdW1iZXIuaXNTYWZlSW50ZWdlcih0dGwgKiAxMDAwKS5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVR0bFNlY29uZHModHRsOiBudW1iZXIpIHtcbiAgaWYgKHR0bCA8IDAgfHwgIU51bWJlci5pc1NhZmVJbnRlZ2VyKHR0bCkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICBgdHRsIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyLCByZWNlaXZlZCAke3R0bH1gXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVWYWxpZEZvclNlY29uZHModmFsaWRGb3JTZWNvbmRzOiBudW1iZXIpIHtcbiAgaWYgKHZhbGlkRm9yU2Vjb25kcyA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3ZhbGlkRm9yU2Vjb25kcyBtdXN0IGJlIHBvc2l0aXZlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVGltZW91dCh0aW1lb3V0OiBudW1iZXIpIHtcbiAgaWYgKHRpbWVvdXQgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd0aW1lb3V0IG11c3QgYmUgcG9zaXRpdmUnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVEaXNwb3NhYmxlVG9rZW5FeHBpcnkoZXhwaXJlc0luOiBFeHBpcmVzSW4pIHtcbiAgaWYgKCFleHBpcmVzSW4uZG9lc0V4cGlyZSgpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdkaXNwb3NhYmxlIHRva2VucyBtdXN0IGhhdmUgYW4gZXhwaXJ5Jyk7XG4gIH1cbiAgaWYgKGV4cGlyZXNJbi5zZWNvbmRzKCkgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdkaXNwb3NhYmxlIHRva2VuIGV4cGlyeSBtdXN0IGJlIHBvc2l0aXZlJyk7XG4gIH1cbiAgaWYgKGV4cGlyZXNJbi5zZWNvbmRzKCkgPiA2MCAqIDYwKSB7XG4gICAgLy8gNjAgc2Vjb25kcyAqIDYwIG1pbnV0ZXNcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnZGlzcG9zYWJsZSB0b2tlbnMgbXVzdCBleHBpcmUgd2l0aGluIDEgaG91cidcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZURpc3Bvc2FibGVUb2tlblRva2VuSUQodG9rZW5JZDogc3RyaW5nKSB7XG4gIGlmICh0b2tlbklkLmxlbmd0aCA+IDY0KSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ1Rva2VuSUQgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gNjQgY2hhcmFjdGVycy4nXG4gICAgKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBpc0VtcHR5KHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiAhc3RyLnRyaW0oKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQmFzZTY0KHN0cjogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGVuY29kZVRvQmFzZTY0KGRlY29kZUZyb21CYXNlNjQoc3RyKSkgPT09IHN0cjtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZE5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdsZWFkZXJib2FyZCBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGVhZGVyYm9hcmRSYW5rcyhzdGFydF9yYW5rOiBudW1iZXIsIGVuZF9yYW5rOiBudW1iZXIpIHtcbiAgaWYgKHN0YXJ0X3JhbmsgPiAwICYmIGVuZF9yYW5rID4gMCAmJiBzdGFydF9yYW5rID49IGVuZF9yYW5rKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzdGFydCByYW5rIG11c3QgYmUgbGVzcyB0aGFuIGVuZCByYW5rJyk7XG4gIH1cbiAgaWYgKHN0YXJ0X3JhbmsgPCAwIHx8IGVuZF9yYW5rIDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigncmFua3MgbXVzdCBiZSBwb3NpdGl2ZScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkT2Zmc2V0KG9mZnNldDogbnVtYmVyKSB7XG4gIGlmIChvZmZzZXQgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdvZmZzZXQgbXVzdCBiZSBub24tbmVnYXRpdmUgKD49IDApJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGVhZGVyYm9hcmRDb3VudChjb3VudDogbnVtYmVyKSB7XG4gIGlmIChjb3VudCA8IDEpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2NvdW50IG11c3QgYmUgc3RyaWN0bHkgcG9zaXRpdmUgKD4gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZE51bWJlck9mRWxlbWVudHMobnVtRWxlbWVudHM6IG51bWJlcikge1xuICBpZiAobnVtRWxlbWVudHMgPCAxKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdtdXN0IHByb3ZpZGUgYXQgbGVhc3Qgb25lIGVsZW1lbnQnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVNYXhDb25jdXJyZW50UmVxdWVzdHMobGltaXQ6IG51bWJlcikge1xuICBpZiAobGltaXQgPCAxKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ2NvbmN1cnJlbnQgcmVxdWVzdHMgbGltaXQgbXVzdCBiZSBzdHJpY3RseSBwb3NpdGl2ZSAoPiAwKSdcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9ycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbnRlcm5hbC91dGlscy92YWxpZGF0b3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHlDQUFrRDtBQUVsRCxxQ0FBMEQ7QUFFMUQsU0FBZ0IsaUJBQWlCLENBQUMsSUFBWTtJQUM1QyxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtRQUNqQixNQUFNLElBQUksNkJBQW9CLENBQUMsOEJBQThCLENBQUMsQ0FBQztLQUNoRTtBQUNILENBQUM7QUFKRCw4Q0FJQztBQUVELFNBQWdCLGlCQUFpQixDQUFDLElBQVk7SUFDNUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDhCQUE4QixDQUFDLENBQUM7S0FDaEU7QUFDSCxDQUFDO0FBSkQsOENBSUM7QUFFRCxTQUFnQix3QkFBd0IsQ0FBQyxJQUFZO0lBQ25ELElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSw2QkFBb0IsQ0FBQywyQ0FBMkMsQ0FBQyxDQUFDO0tBQzdFO0FBQ0gsQ0FBQztBQUpELDREQUlDO0FBRUQsU0FBZ0IsZUFBZSxDQUFDLElBQVk7SUFDMUMsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDakIsTUFBTSxJQUFJLDZCQUFvQixDQUFDLDRCQUE0QixDQUFDLENBQUM7S0FDOUQ7QUFDSCxDQUFDO0FBSkQsMENBSUM7QUFFRCxTQUFnQixzQkFBc0IsQ0FBQyxLQUFhO0lBQ2xELElBQUksS0FBSyxHQUFHLENBQUMsRUFBRTtRQUNiLE1BQU0sSUFBSSw2QkFBb0IsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0tBQ3JFO0FBQ0gsQ0FBQztBQUpELHdEQUlDO0FBRUQsU0FBZ0IscUJBQXFCLENBQUMsSUFBWTtJQUNoRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtR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IGZyb20gJy4uLy4uL2Vycm9ycyc7XG5pbXBvcnQge0V4cGlyZXNJbn0gZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHtkZWNvZGVGcm9tQmFzZTY0LCBlbmNvZGVUb0Jhc2U2NH0gZnJvbSAnLi9zdHJpbmcnO1xuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTdG9yZU5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzdG9yZSBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlQ2FjaGVOYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY2FjaGUgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUNhY2hlS2V5T3JQcmVmaXgobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdjYWNoZSBrZXkgb3Iga2V5IHByZWZpeCBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNldE5hbWUobmFtZTogc3RyaW5nKSB7XG4gIGlmIChpc0VtcHR5KG5hbWUpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdzZXQgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNldFNhbXBsZUxpbWl0KGxpbWl0OiBudW1iZXIpIHtcbiAgaWYgKGxpbWl0IDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbGltaXQgbXVzdCBiZSBub24tbmVnYXRpdmUgKD49IDApJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlU29ydGVkU2V0TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3NvcnRlZCBzZXQgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldFJhbmtzKHN0YXJ0X3Jhbms6IG51bWJlciwgZW5kX3Jhbms/OiBudW1iZXIpIHtcbiAgaWYgKGVuZF9yYW5rID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgaWYgKHN0YXJ0X3JhbmsgPiAwICYmIGVuZF9yYW5rID4gMCAmJiBzdGFydF9yYW5rID4gZW5kX3JhbmspIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3N0YXJ0IHJhbmsgbXVzdCBiZSBsZXNzIHRoYW4gZW5kIHJhbmsnKTtcbiAgfVxuICBpZiAoc3RhcnRfcmFuayA8IDAgJiYgZW5kX3JhbmsgPCAwICYmIHN0YXJ0X3JhbmsgPj0gZW5kX3JhbmspIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnbmVnYXRpdmUgc3RhcnQgcmFuayBtdXN0IGJlIGxlc3MgdGhhbiBuZWdhdGl2ZSBlbmQgcmFuaydcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVNvcnRlZFNldFNjb3JlcyhtaW5TY29yZT86IG51bWJlciwgbWF4U2NvcmU/OiBudW1iZXIpIHtcbiAgaWYgKG1pblNjb3JlID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgaWYgKG1heFNjb3JlID09PSB1bmRlZmluZWQpIHJldHVybjtcbiAgaWYgKG1pblNjb3JlID4gbWF4U2NvcmUpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnbWluU2NvcmUgbXVzdCBiZSBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gbWF4U2NvcmUnXG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXRPZmZzZXQob2Zmc2V0OiBudW1iZXIpIHtcbiAgaWYgKG9mZnNldCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ29mZnNldCBtdXN0IGJlIG5vbi1uZWdhdGl2ZSAoPj0gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVTb3J0ZWRTZXRDb3VudChjb3VudDogbnVtYmVyKSB7XG4gIGlmIChjb3VudCA8IDEpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2NvdW50IG11c3QgYmUgc3RyaWN0bHkgcG9zaXRpdmUgKD4gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVEaWN0aW9uYXJ5TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2RpY3Rpb25hcnkgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxpc3ROYW1lKG5hbWU6IHN0cmluZykge1xuICBpZiAoaXNFbXB0eShuYW1lKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignbGlzdCBuYW1lIG11c3Qgbm90IGJlIGVtcHR5Jyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGlzdFNsaWNlU3RhcnRFbmQoXG4gIHN0YXJ0SW5kZXg/OiBudW1iZXIsXG4gIGVuZEluZGV4PzogbnVtYmVyXG4pIHtcbiAgaWYgKHN0YXJ0SW5kZXggPT09IHVuZGVmaW5lZCB8fCBlbmRJbmRleCA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG4gIC8vIGNhbid0IHZhbGlkYXRlIGJvdW5kcyBmb3Igc3RhcnQgYW5kIGluZGV4IG9mIGVpdGhlciBvciBhcmUgbmVnYXRpdmUgd2l0aG91dCBsaXN0IGxlbmd0aFxuICBpZiAoc3RhcnRJbmRleCA+IDAgfHwgZW5kSW5kZXggPCAwKSByZXR1cm47XG4gIGlmIChlbmRJbmRleCA8PSBzdGFydEluZGV4KSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKFxuICAgICAgJ2VuZEluZGV4IChleGNsdXNpdmUpIG11c3QgYmUgbGFyZ2VyIHRoYW4gc3RhcnRJbmRleCAoaW5jbHVzaXZlKSdcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVRvcGljTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RvcGljIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVXZWJob29rTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3dlYmhvb2sgbmFtZSBtdXN0IG5vdCBiZSBlbXB0eScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUluZGV4TmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2luZGV4IG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVOdW1EaW1lbnNpb25zKG51bURpbWVuc2lvbnM6IG51bWJlcikge1xuICBpZiAobnVtRGltZW5zaW9ucyA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdudW1EaW1lbnNpb25zIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8nKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUb3BLKHRvcEs6IG51bWJlcikge1xuICBpZiAodG9wSyA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd0b3BLIG11c3QgYmUgZ3JlYXRlciB0aGFuIHplcm8nKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUdGxNaW51dGVzKHR0bE1pbnV0ZXM6IG51bWJlcikge1xuICBpZiAodHRsTWludXRlcyA8IDAgfHwgIU51bWJlci5pc1NhZmVJbnRlZ2VyKHR0bE1pbnV0ZXMpKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCd0dGxNaW51dGVzIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyJyk7XG4gIH1cbn1cblxuLy8gQ3VycmVudGx5IGFjY2VwdGluZyB0dGwgaW4gc2Vjb25kcywgYnV0IGlmIHNvbWVvbmUgcmVxdWVzdHMgc3VwcG9ydCBmb3IgbWlsbGlzLFxuLy8gdGhlIHZhbGlkYXRvciB3aWxsIG5lZWQgdG8gY2hlY2sgZm9yIE51bWJlci5pc1NhZmVJbnRlZ2VyKHR0bCAqIDEwMDApLlxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlVHRsU2Vjb25kcyh0dGw6IG51bWJlcikge1xuICBpZiAodHRsIDwgMCB8fCAhTnVtYmVyLmlzU2FmZUludGVnZXIodHRsKSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgIGB0dGwgbXVzdCBiZSBhIHBvc2l0aXZlIGludGVnZXIsIHJlY2VpdmVkICR7dHRsfWBcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZVZhbGlkRm9yU2Vjb25kcyh2YWxpZEZvclNlY29uZHM6IG51bWJlcikge1xuICBpZiAodmFsaWRGb3JTZWNvbmRzIDwgMCkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcigndmFsaWRGb3JTZWNvbmRzIG11c3QgYmUgcG9zaXRpdmUnKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVUaW1lb3V0KHRpbWVvdXQ6IG51bWJlcikge1xuICBpZiAodGltZW91dCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3RpbWVvdXQgbXVzdCBiZSBwb3NpdGl2ZScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZURpc3Bvc2FibGVUb2tlbkV4cGlyeShleHBpcmVzSW46IEV4cGlyZXNJbikge1xuICBpZiAoIWV4cGlyZXNJbi5kb2VzRXhwaXJlKCkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2Rpc3Bvc2FibGUgdG9rZW5zIG11c3QgaGF2ZSBhbiBleHBpcnknKTtcbiAgfVxuICBpZiAoZXhwaXJlc0luLnNlY29uZHMoKSA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2Rpc3Bvc2FibGUgdG9rZW4gZXhwaXJ5IG11c3QgYmUgcG9zaXRpdmUnKTtcbiAgfVxuICBpZiAoZXhwaXJlc0luLnNlY29uZHMoKSA+IDYwICogNjApIHtcbiAgICAvLyA2MCBzZWNvbmRzICogNjAgbWludXRlc1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcihcbiAgICAgICdkaXNwb3NhYmxlIHRva2VucyBtdXN0IGV4cGlyZSB3aXRoaW4gMSBob3VyJ1xuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlRGlzcG9zYWJsZVRva2VuVG9rZW5JRCh0b2tlbklkOiBzdHJpbmcpIHtcbiAgaWYgKHRva2VuSWQubGVuZ3RoID4gNjQpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnVG9rZW5JRCBtdXN0IGJlIGxlc3MgdGhhbiBvciBlcXVhbCB0byA2NCBjaGFyYWN0ZXJzLidcbiAgICApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzRW1wdHkoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgcmV0dXJuICFzdHIudHJpbSgpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNCYXNlNjQoc3RyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgdHJ5IHtcbiAgICByZXR1cm4gZW5jb2RlVG9CYXNlNjQoZGVjb2RlRnJvbUJhc2U2NChzdHIpKSA9PT0gc3RyO1xuICB9IGNhdGNoIChlKSB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkTmFtZShuYW1lOiBzdHJpbmcpIHtcbiAgaWYgKGlzRW1wdHkobmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ2xlYWRlcmJvYXJkIG5hbWUgbXVzdCBub3QgYmUgZW1wdHknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZFJhbmtzKHN0YXJ0X3Jhbms6IG51bWJlciwgZW5kX3Jhbms6IG51bWJlcikge1xuICBpZiAoc3RhcnRfcmFuayA+IDAgJiYgZW5kX3JhbmsgPiAwICYmIHN0YXJ0X3JhbmsgPj0gZW5kX3JhbmspIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ3N0YXJ0IHJhbmsgbXVzdCBiZSBsZXNzIHRoYW4gZW5kIHJhbmsnKTtcbiAgfVxuICBpZiAoc3RhcnRfcmFuayA8IDAgfHwgZW5kX3JhbmsgPCAwKSB7XG4gICAgdGhyb3cgbmV3IEludmFsaWRBcmd1bWVudEVycm9yKCdyYW5rcyBtdXN0IGJlIHBvc2l0aXZlJyk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHZhbGlkYXRlTGVhZGVyYm9hcmRPZmZzZXQob2Zmc2V0OiBudW1iZXIpIHtcbiAgaWYgKG9mZnNldCA8IDApIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ29mZnNldCBtdXN0IGJlIG5vbi1uZWdhdGl2ZSAoPj0gMCknKTtcbiAgfVxufVxuXG5leHBvcnQgZnVuY3Rpb24gdmFsaWRhdGVMZWFkZXJib2FyZENvdW50KGNvdW50OiBudW1iZXIpIHtcbiAgaWYgKGNvdW50IDwgMSkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkQXJndW1lbnRFcnJvcignY291bnQgbXVzdCBiZSBzdHJpY3RseSBwb3NpdGl2ZSAoPiAwKScpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZUxlYWRlcmJvYXJkTnVtYmVyT2ZFbGVtZW50cyhudW1FbGVtZW50czogbnVtYmVyKSB7XG4gIGlmIChudW1FbGVtZW50cyA8IDEpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoJ211c3QgcHJvdmlkZSBhdCBsZWFzdCBvbmUgZWxlbWVudCcpO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB2YWxpZGF0ZU1heENvbmN1cnJlbnRSZXF1ZXN0cyhsaW1pdDogbnVtYmVyKSB7XG4gIGlmIChsaW1pdCA8IDEpIHtcbiAgICB0aHJvdyBuZXcgSW52YWxpZEFyZ3VtZW50RXJyb3IoXG4gICAgICAnY29uY3VycmVudCByZXF1ZXN0cyBsaW1pdCBtdXN0IGJlIHN0cmljdGx5IHBvc2l0aXZlICg+IDApJ1xuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -5,1 +5,2 @@ export * from './auth';

export * from './leaderboard';
export * from './store';

@@ -21,2 +21,3 @@ "use strict";

__exportStar(require("./leaderboard"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbWVzc2FnZXMvcmVzcG9uc2VzL2VudW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5Q0FBdUI7QUFDdkIsMENBQXdCO0FBQ3hCLDJDQUF5QjtBQUN6QixnREFBOEIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGgnO1xuZXhwb3J0ICogZnJvbSAnLi9jYWNoZSc7XG5leHBvcnQgKiBmcm9tICcuL3RvcGljcyc7XG5leHBvcnQgKiBmcm9tICcuL2xlYWRlcmJvYXJkJztcbiJdfQ==
__exportStar(require("./store"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbWVzc2FnZXMvcmVzcG9uc2VzL2VudW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx5Q0FBdUI7QUFDdkIsMENBQXdCO0FBQ3hCLDJDQUF5QjtBQUN6QixnREFBOEI7QUFDOUIsMENBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hdXRoJztcbmV4cG9ydCAqIGZyb20gJy4vY2FjaGUnO1xuZXhwb3J0ICogZnJvbSAnLi90b3BpY3MnO1xuZXhwb3J0ICogZnJvbSAnLi9sZWFkZXJib2FyZCc7XG5leHBvcnQgKiBmcm9tICcuL3N0b3JlJztcbiJdfQ==
{
"name": "@gomomento/sdk-core",
"version": "1.90.1",
"version": "1.91.0",
"description": "Common code for Momento JS SDKs",

@@ -5,0 +5,0 @@ "main": "dist/src/index.js",

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc