Socket
Socket
Sign inDemoInstall

@awesome-cordova-plugins/clevertap

Package Overview
Dependencies
4
Maintainers
1
Versions
30
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 6.0.0-alpha.4 to 6.0.0

32

ngx/bundle.js
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var tslib = require('tslib');
var core$1 = require('@angular/core');
var i0 = require('@angular/core');
var core = require('@awesome-cordova-plugins/core');
function _interopNamespaceDefault(e) {
var n = Object.create(null);
if (e) {
Object.keys(e).forEach(function (k) {
if (k !== 'default') {
var d = Object.getOwnPropertyDescriptor(e, k);
Object.defineProperty(n, k, d.get ? d : {
enumerable: true,
get: function () { return e[k]; }
});
}
});
}
n.default = e;
return Object.freeze(n);
}
var i0__namespace = /*#__PURE__*/_interopNamespaceDefault(i0);
var CleverTap = /** @class */ (function (_super) {

@@ -96,2 +113,4 @@ tslib.__extends(CleverTap, _super);

CleverTap.prototype.setDebugLevel = function (level) { return core.cordova(this, "setDebugLevel", {}, arguments); };
CleverTap.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: CleverTap, deps: null, target: i0__namespace.ɵɵFactoryTarget.Injectable });
CleverTap.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: CleverTap });
CleverTap.pluginName = "CleverTap";

@@ -102,8 +121,9 @@ CleverTap.plugin = "clevertap-cordova";

CleverTap.platforms = ["Android", "iOS"];
CleverTap.decorators = [
{ type: core$1.Injectable }
];
CleverTap = tslib.__decorate([], CleverTap);
return CleverTap;
}(core.AwesomeCordovaNativePlugin));
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0__namespace, type: CleverTap, decorators: [{
type: i0.Injectable
}], propDecorators: { notifyDeviceReady: [], enablePersonalization: [], disablePersonalization: [], setOptOut: [], setOffline: [], enableDeviceNetworkInfoReporting: [], registerPush: [], setPushToken: [], setPushXiaomiToken: [], setPushBaiduToken: [], setPushHuaweiToken: [], createNotification: [], createNotificationChannel: [], createNotificationChannelWithSound: [], createNotificationChannelWithGroupId: [], createNotificationChannelWithGroupIdAndSound: [], createNotificationChannelGroup: [], deleteNotificationChannel: [], deleteNotificationChannelGroup: [], recordScreenView: [], recordEventWithName: [], recordEventWithNameAndProps: [], recordChargedEventWithDetailsAndItems: [], eventGetFirstTime: [], eventGetLastTime: [], eventGetOccurrences: [], eventGetDetails: [], getEventHistory: [], getLocation: [], setLocation: [], onUserLogin: [], profileSet: [], profileGetProperty: [], profileGetCleverTapAttributionIdentifier: [], profileGetCleverTapID: [], getCleverTapID: [], profileRemoveValueForKey: [], profileSetMultiValues: [], profileAddMultiValue: [], profileAddMultiValues: [], profileRemoveMultiValue: [], profileRemoveMultiValues: [], profileIncrementValueBy: [], profileDecrementValueBy: [], suspendInAppNotifications: [], discardInAppNotifications: [], resumeInAppNotifications: [], sessionGetTimeElapsed: [], sessionGetTotalVisits: [], sessionGetScreenCount: [], sessionGetPreviousVisitTime: [], sessionGetUTMDetails: [], pushInstallReferrer: [], initializeInbox: [], getInboxMessageUnreadCount: [], getInboxMessageCount: [], showInbox: [], getAllInboxMessages: [], getUnreadInboxMessages: [], getInboxMessageForId: [], deleteInboxMessageForId: [], markReadInboxMessageForId: [], pushInboxNotificationViewedEventForId: [], pushInboxNotificationClickedEventForId: [], getAllDisplayUnits: [], getDisplayUnitForId: [], pushDisplayUnitViewedEventForID: [], pushDisplayUnitClickedEventForID: [], getFeatureFlag: [], setDefaultsMap: [], fetch: [], fetchWithMinimumFetchIntervalInSeconds: [], activate: [], fetchAndActivate: [], setMinimumFetchIntervalInSeconds: [], getLastFetchTimeStampInMillis: [], getString: [], getBoolean: [], getLong: [], getDouble: [], reset: [], setDebugLevel: [] } });
exports.CleverTap = CleverTap;

14

ngx/index.js

@@ -1,4 +0,5 @@

import { __extends } from "tslib";
import { __decorate, __extends } from "tslib";
import { Injectable } from '@angular/core';
import { AwesomeCordovaNativePlugin, cordova } from '@awesome-cordova-plugins/core';
import * as i0 from "@angular/core";
var CleverTap = /** @class */ (function (_super) {

@@ -91,2 +92,4 @@ __extends(CleverTap, _super);

CleverTap.prototype.setDebugLevel = function (level) { return cordova(this, "setDebugLevel", {}, arguments); };
CleverTap.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CleverTap, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
CleverTap.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CleverTap });
CleverTap.pluginName = "CleverTap";

@@ -97,8 +100,9 @@ CleverTap.plugin = "clevertap-cordova";

CleverTap.platforms = ["Android", "iOS"];
CleverTap.decorators = [
{ type: Injectable }
];
CleverTap = __decorate([], CleverTap);
return CleverTap;
}(AwesomeCordovaNativePlugin));
export { CleverTap };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL3BsdWdpbnMvY2xldmVydGFwL25neC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLHVDQUErQyxNQUFNLCtCQUErQixDQUFDOztJQXdCN0QsNkJBQTBCOzs7O0lBU3ZELHFDQUFpQjtJQWVqQix5Q0FBcUI7SUFXckIsMENBQXNCO0lBV3RCLDZCQUFTLGFBQUMsTUFBZTtJQVd6Qiw4QkFBVSxhQUFDLE9BQWdCO0lBVzNCLG9EQUFnQyxhQUFDLE1BQWU7SUFjaEQsZ0NBQVk7SUFXWixnQ0FBWSxhQUFDLEtBQWE7SUFXMUIsc0NBQWtCLGFBQUMsS0FBYTtJQVdoQyxxQ0FBaUIsYUFBQyxLQUFhO0lBVy9CLHNDQUFrQixhQUFDLEtBQWE7SUFXaEMsc0NBQWtCLGFBQUMsTUFBVztJQWU5Qiw2Q0FBeUIsYUFDdkIsU0FBaUIsRUFDakIsV0FBbUIsRUFDbkIsa0JBQTBCLEVBQzFCLFVBQWtCLEVBQ2xCLFNBQWtCO0lBaUJwQixzREFBa0MsYUFDaEMsU0FBaUIsRUFDakIsV0FBbUIsRUFDbkIsa0JBQTBCLEVBQzFCLFVBQWtCLEVBQ2xCLFNBQWtCLEVBQ2xCLEtBQWE7SUFrQmYsd0RBQW9DLGFBQ2xDLFNBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLGtCQUEwQixFQUMxQixVQUFrQixFQUNsQixPQUFlLEVBQ2YsU0FBa0I7SUFrQnBCLGdFQUE0QyxhQUMxQyxTQUFpQixFQUNqQixXQUFtQixFQUNuQixrQkFBMEIsRUFDMUIsVUFBa0IsRUFDbEIsT0FBZSxFQUNmLFNBQWtCLEVBQ2xCLEtBQWE7SUFhZixrREFBOEIsYUFBQyxPQUFlLEVBQUUsU0FBaUI7SUFXakUsNkNBQXlCLGFBQUMsU0FBaUI7SUFXM0Msa0RBQThCLGFBQUMsT0FBZTtJQWU5QyxvQ0FBZ0IsYUFBQyxVQUFrQjtJQVduQyx1Q0FBbUIsYUFBQyxTQUFpQjtJQVlyQywrQ0FBMkIsYUFBQyxTQUFpQixFQUFFLFVBQWU7SUFZOUQseURBQXFDLGFBQUMsT0FBWSxFQUFFLEtBQVU7SUFZOUQscUNBQWlCLGFBQUMsU0FBaUI7SUFZbkMsb0NBQWdCLGFBQUMsU0FBaUI7SUFZbEMsdUNBQW1CLGFBQUMsU0FBaUI7SUFZckMsbUNBQWUsYUFBQyxTQUFpQjtJQVdqQyxtQ0FBZTtJQXlCZiwrQkFBVztJQVlYLCtCQUFXLGFBQUMsR0FBVyxFQUFFLEdBQVc7SUEwQnBDLCtCQUFXLGFBQUMsT0FBWTtJQVd4Qiw4QkFBVSxhQUFDLE9BQVk7SUFZdkIsc0NBQWtCLGFBQUMsWUFBb0I7SUFZdkMsNERBQXdDO0lBWXhDLHlDQUFxQjtJQVdyQixrQ0FBYztJQVdkLDRDQUF3QixhQUFDLEdBQVc7SUFZcEMseUNBQXFCLGFBQUMsR0FBVyxFQUFFLE1BQVc7SUFZOUMsd0NBQW9CLGFBQUMsR0FBVyxFQUFFLEtBQWE7SUFZL0MseUNBQXFCLGFBQUMsR0FBVyxFQUFFLE1BQVc7SUFZOUMsMkNBQXVCLGFBQUMsR0FBVyxFQUFFLEtBQWE7SUFZbEQsNENBQXdCLGFBQUMsR0FBVyxFQUFFLE1BQVc7SUFZakQsMkNBQXVCLGFBQUMsR0FBVyxFQUFDLEtBQWE7SUFZakQsMkNBQXVCLGFBQUMsR0FBVyxFQUFDLEtBQWE7SUFnQmpELDZDQUF5QjtJQVV6Qiw2Q0FBeUI7SUFVekIsNENBQXdCO0lBZXhCLHlDQUFxQjtJQVdyQix5Q0FBcUI7SUFXckIseUNBQXFCO0lBV3JCLCtDQUEyQjtJQVczQix3Q0FBb0I7SUFhcEIsdUNBQW1CLGFBQUMsTUFBYyxFQUFFLE1BQWMsRUFBRSxRQUFnQjtJQVlwRSxtQ0FBZTtJQVFmLDhDQUEwQjtJQVExQix3Q0FBb0I7SUFVcEIsNkJBQVMsYUFBQyxXQUFnQjtJQVUxQix1Q0FBbUI7SUFVbkIsMENBQXNCO0lBV3RCLHdDQUFvQixhQUFDLFNBQWlCO0lBV3RDLDJDQUF1QixhQUFDLFNBQWlCO0lBV3pDLDZDQUF5QixhQUFDLFNBQWlCO0lBVzNDLHlEQUFxQyxhQUFDLFNBQWlCO0lBV3ZELDBEQUFzQyxhQUFDLFNBQWlCO0lBVXhELHNDQUFrQjtJQVdsQix1Q0FBbUIsYUFBQyxFQUFVO0lBVzlCLG1EQUErQixhQUFDLEVBQVU7SUFXMUMsb0RBQWdDLGFBQUMsRUFBVTtJQVkzQyxrQ0FBYyxhQUFDLEdBQVcsRUFBRSxZQUFvQjtJQVdoRCxrQ0FBYyxhQUFDLFFBQWE7SUFXNUIseUJBQUs7SUFXTCwwREFBc0MsYUFBQyxZQUFvQjtJQVUzRCw0QkFBUTtJQVVSLG9DQUFnQjtJQVdoQixvREFBZ0MsYUFBQyxZQUFvQjtJQVVyRCxpREFBNkI7SUFXN0IsNkJBQVMsYUFBQyxHQUFXO0lBV3JCLDhCQUFVLGFBQUMsR0FBVztJQVd0QiwyQkFBTyxhQUFDLEdBQVc7SUFXbkIsNkJBQVMsYUFBQyxHQUFXO0lBVXJCLHlCQUFLO0lBY0wsaUNBQWEsYUFBQyxLQUFhOzs7Ozs7O2dCQWgvQjVCLFVBQVU7O29CQXhCWDtFQXlCK0IsMEJBQTBCO1NBQTVDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb3Jkb3ZhLCBBd2Vzb21lQ29yZG92YU5hdGl2ZVBsdWdpbiwgUGx1Z2luIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2NvcmUnO1xuXG5kZWNsYXJlIGxldCBjbGV2ZXJ0YXA6IGFueTtcblxuLyoqXG4gKiBAbmFtZSBDbGV2ZXJUYXBcbiAqIEBkZXNjcmlwdGlvblxuICogQ29yZG92YSBQbHVnaW4gdGhhdCB3cmFwcyBDbGV2ZXJUYXAgU0RLIGZvciBBbmRyb2lkIGFuZCBpT1NcbiAqIEB1c2FnZVxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgQ2xldmVyVGFwIH0gZnJvbSAnQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL2NsZXZlcnRhcC9uZ3gnO1xuICpcbiAqIGNvbnN0cnVjdG9yKHByaXZhdGUgY2xldmVydGFwOiBDbGV2ZXJUYXApIHsgfVxuICpcbiAqIGBgYFxuICovXG5AUGx1Z2luKHtcbiAgcGx1Z2luTmFtZTogJ0NsZXZlclRhcCcsXG4gIHBsdWdpbjogJ2NsZXZlcnRhcC1jb3Jkb3ZhJyxcbiAgcGx1Z2luUmVmOiAnQ2xldmVyVGFwJyxcbiAgcmVwbzogJ2h0dHBzOi8vZ2l0aHViLmNvbS9DbGV2ZXJUYXAvY2xldmVydGFwLWNvcmRvdmEnLFxuICBwbGF0Zm9ybXM6IFsnQW5kcm9pZCcsICdpT1MnXSxcbn0pXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQ2xldmVyVGFwIGV4dGVuZHMgQXdlc29tZUNvcmRvdmFOYXRpdmVQbHVnaW4ge1xuICAvKipcbiAgICogbm90aWZ5IGRldmljZSByZWFkeVxuICAgKiBOT1RFOiBpbiBpT1MgdXNlIHRvIGJlIG5vdGlmaWVkIG9mIGxhdW5jaCBQdXNoIE5vdGlmaWNhdGlvbiBvciBEZWVwIExpbmtcbiAgICogaW4gQW5kcm9pZCB1c2Ugb25seSBpbiBhbmRyb2lkIHBob25lZ2FwIGJ1aWxkIHByb2plY3RzXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIG5vdGlmeURldmljZVJlYWR5KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKipcbiAgICogUGVyc29uYWxpemF0aW9uXG4gICAqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFBlcnNvbmFsaXphdGlvblxuICAgKiBFbmFibGVzIHRoZSBQZXJzb25hbGl6YXRpb24gQVBJXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGVuYWJsZVBlcnNvbmFsaXphdGlvbigpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBQZXJzb25hbGl6YXRpb25cbiAgICogRGlzYWJsZXMgdGhlIFBlcnNvbmFsaXphdGlvbiBBUElcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZGlzYWJsZVBlcnNvbmFsaXphdGlvbigpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmFibGVzIHRyYWNraW5nIG9wdCBvdXQgZm9yIHRoZSBjdXJyZW50bHkgYWN0aXZlIHVzZXIuXG4gICAqXG4gICAqIEBwYXJhbSBvcHRPdXQge2Jvb2xlYW59XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldE9wdE91dChvcHRPdXQ6IGJvb2xlYW4pOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIENsZXZlclRhcCBTREsgdG8gb2ZmbGluZSBtb2RlLlxuICAgKlxuICAgKiBAcGFyYW0gb2ZmbGluZSB7Ym9vbGVhbn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2V0T2ZmbGluZShvZmZsaW5lOiBib29sZWFuKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogRW5hYmxlcyB0aGUgcmVwb3J0aW5nIG9mIGRldmljZSBuZXR3b3JrIHJlbGF0ZWQgaW5mb3JtYXRpb24sIGluY2x1ZGluZyBJUCBhZGRyZXNzLiAgVGhpcyByZXBvcnRpbmcgaXMgZGlzYWJsZWQgYnkgZGVmYXVsdC5cbiAgICpcbiAgICogQHBhcmFtIGVuYWJsZSB7Ym9vbGVhbn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZW5hYmxlRGV2aWNlTmV0d29ya0luZm9SZXBvcnRpbmcoZW5hYmxlOiBib29sZWFuKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKlxuICAgKiBQdXNoXG4gICAqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBmb3IgcHVzaCBub3RpZmljYXRpb25zXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlZ2lzdGVyUHVzaCgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkZXZpY2UncyBwdXNoIHRva2VuXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXRQdXNoVG9rZW4odG9rZW46IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRldmljZSdzIFhpYW9taSBwdXNoIHRva2VuXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXRQdXNoWGlhb21pVG9rZW4odG9rZW46IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRldmljZSdzIEJhaWR1IHB1c2ggdG9rZW5cbiAgICpcbiAgICogQHBhcmFtIHRva2VuIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldFB1c2hCYWlkdVRva2VuKHRva2VuOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkZXZpY2UncyBIdWF3ZWkgcHVzaCB0b2tlblxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4ge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2V0UHVzaEh1YXdlaVRva2VuKHRva2VuOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgTm90aWZpY2F0aW9uIENoYW5uZWwgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGV4dHJhcyB7YW55fVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBjcmVhdGVOb3RpZmljYXRpb24oZXh0cmFzOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgTm90aWZpY2F0aW9uIENoYW5uZWwgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGNoYW5uZWxJRCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2hhbm5lbE5hbWUge3N0cmluZ31cbiAgICogQHBhcmFtIGNoYW5uZWxEZXNjcmlwdGlvbiB7c3RyaW5nfVxuICAgKiBAcGFyYW0gaW1wb3J0YW5jZSB7bnVtYmVyfVxuICAgKiBAcGFyYW0gc2hvd0JhZGdlIHtib29sZWFufVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBjcmVhdGVOb3RpZmljYXRpb25DaGFubmVsKFxuICAgIGNoYW5uZWxJRDogc3RyaW5nLFxuICAgIGNoYW5uZWxOYW1lOiBzdHJpbmcsXG4gICAgY2hhbm5lbERlc2NyaXB0aW9uOiBzdHJpbmcsXG4gICAgaW1wb3J0YW5jZTogbnVtYmVyLFxuICAgIHNob3dCYWRnZTogYm9vbGVhblxuICApOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgTm90aWZpY2F0aW9uIENoYW5uZWwgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGNoYW5uZWxJRCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2hhbm5lbE5hbWUge3N0cmluZ31cbiAgICogQHBhcmFtIGNoYW5uZWxEZXNjcmlwdGlvbiB7c3RyaW5nfVxuICAgKiBAcGFyYW0gaW1wb3J0YW5jZSB7bnVtYmVyfVxuICAgKiBAcGFyYW0gc2hvd0JhZGdlIHtib29sZWFufVxuICAgKiBAcGFyYW0gc291bmQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgY3JlYXRlTm90aWZpY2F0aW9uQ2hhbm5lbFdpdGhTb3VuZChcbiAgICBjaGFubmVsSUQ6IHN0cmluZyxcbiAgICBjaGFubmVsTmFtZTogc3RyaW5nLFxuICAgIGNoYW5uZWxEZXNjcmlwdGlvbjogc3RyaW5nLFxuICAgIGltcG9ydGFuY2U6IG51bWJlcixcbiAgICBzaG93QmFkZ2U6IGJvb2xlYW4sXG4gICAgc291bmQ6IHN0cmluZ1xuICApOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgTm90aWZpY2F0aW9uIENoYW5uZWwgd2l0aCBHcm91cCBJRCBmb3IgQW5kcm9pZCBPK1xuICAgKlxuICAgKiBAcGFyYW0gY2hhbm5lbElEIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBjaGFubmVsTmFtZSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2hhbm5lbERlc2NyaXB0aW9uIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBpbXBvcnRhbmNlIHtudW1iZXJ9XG4gICAqIEBwYXJhbSBncm91cElkIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBzaG93QmFkZ2Uge2Jvb2xlYW59XG4gICAqIEBwYXJhbSBzb3VuZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBjcmVhdGVOb3RpZmljYXRpb25DaGFubmVsV2l0aEdyb3VwSWQoXG4gICAgY2hhbm5lbElEOiBzdHJpbmcsXG4gICAgY2hhbm5lbE5hbWU6IHN0cmluZyxcbiAgICBjaGFubmVsRGVzY3JpcHRpb246IHN0cmluZyxcbiAgICBpbXBvcnRhbmNlOiBudW1iZXIsXG4gICAgZ3JvdXBJZDogc3RyaW5nLFxuICAgIHNob3dCYWRnZTogYm9vbGVhblxuICApOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgTm90aWZpY2F0aW9uIENoYW5uZWwgd2l0aCBHcm91cCBJRCBmb3IgQW5kcm9pZCBPK1xuICAgKlxuICAgKiBAcGFyYW0gY2hhbm5lbElEIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBjaGFubmVsTmFtZSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2hhbm5lbERlc2NyaXB0aW9uIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBpbXBvcnRhbmNlIHtudW1iZXJ9XG4gICAqIEBwYXJhbSBncm91cElkIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBzaG93QmFkZ2Uge2Jvb2xlYW59XG4gICAqIEBwYXJhbSBzb3VuZFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBjcmVhdGVOb3RpZmljYXRpb25DaGFubmVsV2l0aEdyb3VwSWRBbmRTb3VuZChcbiAgICBjaGFubmVsSUQ6IHN0cmluZyxcbiAgICBjaGFubmVsTmFtZTogc3RyaW5nLFxuICAgIGNoYW5uZWxEZXNjcmlwdGlvbjogc3RyaW5nLFxuICAgIGltcG9ydGFuY2U6IG51bWJlcixcbiAgICBncm91cElkOiBzdHJpbmcsXG4gICAgc2hvd0JhZGdlOiBib29sZWFuLFxuICAgIHNvdW5kOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIEdyb3VwIGZvciBBbmRyb2lkIE8rXG4gICAqXG4gICAqIEBwYXJhbSBncm91cElEIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBncm91cE5hbWUge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgY3JlYXRlTm90aWZpY2F0aW9uQ2hhbm5lbEdyb3VwKGdyb3VwSUQ6IHN0cmluZywgZ3JvdXBOYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBEZWxldGUgTm90aWZpY2F0aW9uIENoYW5uZWwgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGNoYW5uZWxJRCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBkZWxldGVOb3RpZmljYXRpb25DaGFubmVsKGNoYW5uZWxJRDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIE5vdGlmaWNhdGlvbiBHcm91cCBmb3IgQW5kcm9pZCBPK1xuICAgKlxuICAgKiBAcGFyYW0gZ3JvdXBJRCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBkZWxldGVOb3RpZmljYXRpb25DaGFubmVsR3JvdXAoZ3JvdXBJRDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKlxuICAgKiBFdmVudHNcbiAgICoqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogUmVjb3JkIFNjcmVlbiBWaWV3XG4gICAqXG4gICAqIEBwYXJhbSBzY3JlZW5OYW1lIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlY29yZFNjcmVlblZpZXcoc2NyZWVuTmFtZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogUmVjb3JkIEV2ZW50IHdpdGggTmFtZVxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlY29yZEV2ZW50V2l0aE5hbWUoZXZlbnROYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiAgUmVjb3JkIEV2ZW50IHdpdGggTmFtZSBhbmQgRXZlbnQgcHJvcGVydGllc1xuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBldmVudFByb3BzIHthbnl9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlY29yZEV2ZW50V2l0aE5hbWVBbmRQcm9wcyhldmVudE5hbWU6IHN0cmluZywgZXZlbnRQcm9wczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogIFJlY29yZCBDaGFyZ2VkIEV2ZW50IHdpdGggRGV0YWlscyBhbmQgSXRlbXNcbiAgICpcbiAgICogQHBhcmFtIGRldGFpbHMge2FueX0gIG9iamVjdCB3aXRoIHRyYW5zYWN0aW9uIGRldGFpbHNcbiAgICogQHBhcmFtIGl0ZW1zIHthbnl9ICBhcnJheSBvZiBpdGVtcyBwdXJjaGFzZWRcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcmVjb3JkQ2hhcmdlZEV2ZW50V2l0aERldGFpbHNBbmRJdGVtcyhkZXRhaWxzOiBhbnksIGl0ZW1zOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgRXZlbnQgRmlyc3QgVGltZVxuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIHtzdHJpbmd9XG4gICAqIGNhbGxiYWNrIHJldHVybnMgZXBvY2ggc2Vjb25kcyBvciAtMVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBldmVudEdldEZpcnN0VGltZShldmVudE5hbWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBFdmVudCBMYXN0IFRpbWVcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZSB7c3RyaW5nfVxuICAgKiBjYWxsYmFjayByZXR1cm5zIGVwb2NoIHNlY29uZHMgb3IgLTFcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZXZlbnRHZXRMYXN0VGltZShldmVudE5hbWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBFdmVudCBOdW1iZXIgb2YgT2NjdXJyZW5jZXNcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZSB7c3RyaW5nfVxuICAgKiBjYWxscyBiYWNrIHdpdGggaW50IG9yIC0xXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGV2ZW50R2V0T2NjdXJyZW5jZXMoZXZlbnROYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgRXZlbnQgRGV0YWlsc1xuICAgKlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIHtzdHJpbmd9XG4gICAqIGNhbGxzIGJhY2sgd2l0aCBvYmplY3Qge1wiZXZlbnROYW1lXCI6IDxzdHJpbmc+LCBcImZpcnN0VGltZVwiOjxlcG9jaCBzZWNvbmRzPiwgXCJsYXN0VGltZVwiOiA8ZXBvY2ggc2Vjb25kcz4sIFwiY291bnRcIjogPGludD59IG9yIGVtcHR5IG9iamVjdFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBldmVudEdldERldGFpbHMoZXZlbnROYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgRXZlbnQgSGlzdG9yeVxuICAgKiBjYWxscyBiYWNrIHdpdGggb2JqZWN0IHtcImV2ZW50TmFtZTFcIjo8ZXZlbnQxIGRldGFpbHMgb2JqZWN0PiwgXCJldmVudE5hbWUyXCI6PGV2ZW50MiBkZXRhaWxzIG9iamVjdD59XG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldEV2ZW50SGlzdG9yeSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqXG4gICAqIFByb2ZpbGVzXG4gICAqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEdldCB0aGUgZGV2aWNlIGxvY2F0aW9uIGlmIGF2YWlsYWJsZS5cbiAgICogT24gaU9TOlxuICAgKiBDYWxsaW5nIHRoaXMgd2lsbCBwcm9tcHQgdGhlIHVzZXIgbG9jYXRpb24gcGVybWlzc2lvbnMgZGlhbG9nLlxuICAgKiBQbGVhc2UgYmUgc3VyZSB0byBpbmNsdWRlIHRoZSBOU0xvY2F0aW9uV2hlbkluVXNlVXNhZ2VEZXNjcmlwdGlvbiBrZXkgaW4geW91ciBJbmZvLnBsaXN0LlxuICAgKiBVc2VzIGRlc2lyZWQgYWNjdXJhY3kgb2Yga0NMTG9jYXRpb25BY2N1cmFjeUh1bmRyZWRNZXRlcnMuXG4gICAqIElmIHlvdSBuZWVkIGJhY2tncm91bmQgbG9jYXRpb24gdXBkYXRlcyBvciBmaW5lciBhY2N1cmFjeSBwbGVhc2UgaW1wbGVtZW50IHlvdXIgb3duIGxvY2F0aW9uIGhhbmRsaW5nLlxuICAgKiBPbiBBbmRyb2lkOlxuICAgKiBSZXF1aXJlcyBMb2NhdGlvbiBQZXJtaXNzaW9uIGluIEFuZHJvaWRNYW5pZmVzdCBlLmcuIFwiYW5kcm9pZC5wZXJtaXNzaW9uLkFDQ0VTU19DT0FSU0VfTE9DQVRJT05cIlxuICAgKiBZb3UgY2FuIHVzZSBsb2NhdGlvbiB0byBwYXNzIGl0IHRvIENsZXZlclRhcCB2aWEgdGhlIHNldExvY2F0aW9uIEFQSVxuICAgKiBmb3IsIGFtb25nIG90aGVyIHRoaW5ncywgbW9yZSBmaW5lLWdyYWluZWQgZ2VvLXRhcmdldGluZyBhbmQgc2VnbWVudGF0aW9uIHB1cnBvc2VzLlxuICAgKiBOb3RlOiBvbiBpT1MgdGhlIGNhbGwgdG8gQ2xldmVyVGFwU0RLIG11c3QgYmUgbWFkZSBvbiB0aGUgbWFpbiB0aHJlYWQgZHVlIHRvIExvY2F0aW9uTWFuYWdlciByZXN0cmljdGlvbnMsIGJ1dCB0aGUgQ2xldmVyVGFwU0RLIG1ldGhvZCBpdHNlbGYgaXMgbm9uLWJsb2NraW5nLlxuICAgKiBjYWxscyBiYWNrIHdpdGgge2xhdDpsYXQsIGxvbjpsb259IGxhdCBhbmQgbG9uIGFyZSBmbG9hdHNcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0TG9jYXRpb24oKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2V0IGxvY2F0aW9uXG4gICAqXG4gICAqIEBwYXJhbSBsYXQge251bWJlcn1cbiAgICogQHBhcmFtIGxvbiB7bnVtYmVyfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXRMb2NhdGlvbihsYXQ6IG51bWJlciwgbG9uOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgc2VwYXJhdGUgYW5kIGRpc3RpbmN0IHVzZXIgcHJvZmlsZSBpZGVudGlmaWVkIGJ5IG9uZSBvciBtb3JlIG9mIElkZW50aXR5LCBFbWFpbCwgRkJJRCBvciBHUElEIHZhbHVlcyxcbiAgICogYW5kIHBvcHVsYXRlZCB3aXRoIHRoZSBrZXktdmFsdWVzIGluY2x1ZGVkIGluIHRoZSBwcm9maWxlIGRpY3Rpb25hcnkuXG4gICAqIElmIHlvdXIgYXBwIGlzIHVzZWQgYnkgbXVsdGlwbGUgdXNlcnMsIHlvdSBjYW4gdXNlIHRoaXMgbWV0aG9kIHRvIGFzc2lnbiB0aGVtIGVhY2ggYSB1bmlxdWUgcHJvZmlsZSB0byB0cmFjayB0aGVtIHNlcGFyYXRlbHkuXG4gICAqIElmIGluc3RlYWQgeW91IHdpc2ggdG8gYXNzaWduIG11bHRpcGxlIElkZW50aXR5LCBFbWFpbCwgRkJJRCBhbmQvb3IgR1BJRCB2YWx1ZXMgdG8gdGhlIHNhbWUgdXNlciBwcm9maWxlLFxuICAgKiB1c2UgcHJvZmlsZVNldCByYXRoZXIgdGhhbiB0aGlzIG1ldGhvZC5cbiAgICogSWYgbm9uZSBvZiBJZGVudGl0eSwgRW1haWwsIEZCSUQgb3IgR1BJRCBpcyBpbmNsdWRlZCBpbiB0aGUgcHJvZmlsZSBkaWN0aW9uYXJ5LFxuICAgKiBhbGwgcHJvcGVydGllcyB2YWx1ZXMgd2lsbCBiZSBhc3NvY2lhdGVkIHdpdGggdGhlIGN1cnJlbnQgdXNlciBwcm9maWxlLlxuICAgKiBXaGVuIGluaXRpYWxseSBpbnN0YWxsZWQgb24gdGhpcyBkZXZpY2UsIHlvdXIgYXBwIGlzIGFzc2lnbmVkIGFuIFwiYW5vbnltb3VzXCIgcHJvZmlsZS5cbiAgICogVGhlIGZpcnN0IHRpbWUgeW91IGlkZW50aWZ5IGEgdXNlciBvbiB0aGlzIGRldmljZSAod2hldGhlciB2aWEgb25Vc2VyTG9naW4gb3IgcHJvZmlsZVNldCksXG4gICAqIHRoZSBcImFub255bW91c1wiIGhpc3Rvcnkgb24gdGhlIGRldmljZSB3aWxsIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgbmV3bHkgaWRlbnRpZmllZCB1c2VyLlxuICAgKiBUaGVuLCB1c2UgdGhpcyBtZXRob2QgdG8gc3dpdGNoIGJldHdlZW4gc3Vic2VxdWVudCBzZXBhcmF0ZSBpZGVudGlmaWVkIHVzZXJzLlxuICAgKiBQbGVhc2Ugbm90ZSB0aGF0IHN3aXRjaGluZyBmcm9tIG9uZSBpZGVudGlmaWVkIHVzZXIgdG8gYW5vdGhlciBpcyBhIGNvc3RseSBvcGVyYXRpb25cbiAgICogaW4gdGhhdCB0aGUgY3VycmVudCBzZXNzaW9uIGZvciB0aGUgcHJldmlvdXMgdXNlciBpcyBhdXRvbWF0aWNhbGx5IGNsb3NlZFxuICAgKiBhbmQgZGF0YSByZWxhdGluZyB0byB0aGUgb2xkIHVzZXIgcmVtb3ZlZCwgYW5kIGEgbmV3IHNlc3Npb24gaXMgc3RhcnRlZFxuICAgKiBmb3IgdGhlIG5ldyB1c2VyIGFuZCBkYXRhIGZvciB0aGF0IHVzZXIgcmVmcmVzaGVkIHZpYSBhIG5ldHdvcmsgY2FsbCB0byBDbGV2ZXJUYXAuXG4gICAqIEluIGFkZGl0aW9uLCBhbnkgZ2xvYmFsIGZyZXF1ZW5jeSBjYXBzIGFyZSByZXNldCBhcyBwYXJ0IG9mIHRoZSBzd2l0Y2guXG4gICAqXG4gICAqIEBwYXJhbSBwcm9maWxlIHthbnl9IG9iamVjdFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBvblVzZXJMb2dpbihwcm9maWxlOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgcHJvZmlsZSBhdHRyaWJ1dGVzXG4gICAqXG4gICAqIEBwYXJhbSBwcm9maWxlIHthbnl9IG9iamVjdFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlU2V0KHByb2ZpbGU6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBVc2VyIFByb2ZpbGUgUHJvcGVydHlcbiAgICpcbiAgICogQHBhcmFtIHByb3BlcnR5TmFtZSB7c3RyaW5nfVxuICAgKiBjYWxscyBiYWNrIHdpdGggdmFsdWUgb2YgcHJvcGVydHlOYW1lIG9yIGZhbHNlXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHByb2ZpbGVHZXRQcm9wZXJ0eShwcm9wZXJ0eU5hbWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkIFRoaXMgbWV0aG9kIGlzIGRlcHJlY2F0ZWQuIFVzZSBnZXRDbGV2ZXJUYXBJRCgpIGluc3RlYWQuXG4gICAqIEdldCBhIHVuaXF1ZSBDbGV2ZXJUYXAgaWRlbnRpZmllciBzdWl0YWJsZSBmb3IgdXNlIHdpdGggaW5zdGFsbCBhdHRyaWJ1dGlvbiBwcm92aWRlcnMuXG4gICAqIGNhbGxzIGJhY2sgd2l0aCB1bmlxdWUgQ2xldmVyVGFwIGF0dHJpYnV0aW9uIGlkZW50aWZpZXJcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZUdldENsZXZlclRhcEF0dHJpYnV0aW9uSWRlbnRpZmllcigpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGlzIG1ldGhvZCBpcyBkZXByZWNhdGVkLiBVc2UgZ2V0Q2xldmVyVGFwSUQoKSBpbnN0ZWFkLlxuICAgKiBHZXQgVXNlciBQcm9maWxlIENsZXZlclRhcElEXG4gICAqIGNhbGxzIGJhY2sgd2l0aCBDbGV2ZXJUYXBJRCBvciBmYWxzZVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlR2V0Q2xldmVyVGFwSUQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IFVzZXIgUHJvZmlsZSBDbGV2ZXJUYXBJRFxuICAgKiBjYWxscyBiYWNrIHdpdGggQ2xldmVyVGFwSURcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0Q2xldmVyVGFwSUQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlIHRoZSBwcm9wZXJ0eSBzcGVjaWZpZWQgYnkga2V5IGZyb20gdGhlIHVzZXIgcHJvZmlsZVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHByb2ZpbGVSZW1vdmVWYWx1ZUZvcktleShrZXk6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3Igc2V0dGluZyBhIG11bHRpLXZhbHVlIHVzZXIgcHJvZmlsZSBwcm9wZXJ0eVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEBwYXJhbSB2YWx1ZXMge2FueX0gYXJyYXkgb2Ygc3RyaW5nc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlU2V0TXVsdGlWYWx1ZXMoa2V5OiBzdHJpbmcsIHZhbHVlczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBhZGRpbmcgYSB2YWx1ZSB0byBhIG11bHRpLXZhbHVlIHVzZXIgcHJvZmlsZSBwcm9wZXJ0eVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEBwYXJhbSB2YWx1ZSB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlQWRkTXVsdGlWYWx1ZShrZXk6IHN0cmluZywgdmFsdWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgYWRkaW5nIHZhbHVlcyB0byBhIG11bHRpLXZhbHVlIHVzZXIgcHJvZmlsZSBwcm9wZXJ0eVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEBwYXJhbSB2YWx1ZXMge2FueX0gYXJyYXkgb2Ygc3RyaW5nc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlQWRkTXVsdGlWYWx1ZXMoa2V5OiBzdHJpbmcsIHZhbHVlczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciByZW1vdmluZyBhIHZhbHVlIGZyb20gYSBtdWx0aS12YWx1ZSB1c2VyIHByb2ZpbGUgcHJvcGVydHlcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gdmFsdWUge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZVJlbW92ZU11bHRpVmFsdWUoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIHJlbW92aW5nIGEgdmFsdWUgZnJvbSBhIG11bHRpLXZhbHVlIHVzZXIgcHJvZmlsZSBwcm9wZXJ0eVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEBwYXJhbSB2YWx1ZXMge2FueX0gYXJyYXkgb2Ygc3RyaW5nc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlUmVtb3ZlTXVsdGlWYWx1ZXMoa2V5OiBzdHJpbmcsIHZhbHVlczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciBpbmNyZW1lbnRpbmcgYSB2YWx1ZSBmb3IgYSBzaW5nbGUtdmFsdWUgcHJvZmlsZSBwcm9wZXJ0eSAoaWYgaXQgZXhpc3RzKS5cbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gdmFsdWUge251bWJlcn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZUluY3JlbWVudFZhbHVlQnkoa2V5OiBzdHJpbmcsdmFsdWU6IG51bWJlcik6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgZGVjcmVtZW50aW5nIGEgdmFsdWUgZm9yIGEgc2luZ2xlLXZhbHVlIHByb2ZpbGUgcHJvcGVydHkgKGlmIGl0IGV4aXN0cykuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHBhcmFtIHZhbHVlIHtudW1iZXJ9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHByb2ZpbGVEZWNyZW1lbnRWYWx1ZUJ5KGtleTogc3RyaW5nLHZhbHVlOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqXG4gICAqIEluLUFwcCBDb250cm9sc1xuICAgKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBTdXNwZW5kcyBhbmQgc2F2ZXMgaW5BcHAgbm90aWZpY2F0aW9ucyB1bnRpbCAncmVzdW1lSW5BcHBOb3RpZmljYXRpb25zJyBpcyBjYWxsZWQgZm9yIGN1cnJlbnQgc2Vzc2lvbi5cbiAgICogQXV0b21hdGljYWxseSByZXN1bWVzIEluQXBwIG5vdGlmaWNhdGlvbnMgZGlzcGxheSBvbiBDbGV2ZXJUYXAgc2hhcmVkIGluc3RhbmNlIGNyZWF0aW9uLlxuICAgKiBQZW5kaW5nIGluQXBwIG5vdGlmaWNhdGlvbnMgYXJlIGRpc3BsYXllZCBvbmx5IGZvciBjdXJyZW50IHNlc3Npb24uXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHN1c3BlbmRJbkFwcE5vdGlmaWNhdGlvbnMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogRGlzY2FyZHMgaW5BcHAgbm90aWZpY2F0aW9ucyB1bnRpbCAncmVzdW1lSW5BcHBOb3RpZmljYXRpb25zJyBpcyBjYWxsZWQgZm9yIGN1cnJlbnQgc2Vzc2lvbi5cbiAgICogQXV0b21hdGljYWxseSByZXN1bWVzIEluQXBwIG5vdGlmaWNhdGlvbnMgZGlzcGxheSBvbiBDbGV2ZXJUYXAgc2hhcmVkIGluc3RhbmNlIGNyZWF0aW9uLlxuICAgKiBQZW5kaW5nIGluQXBwIG5vdGlmaWNhdGlvbnMgYXJlIG5vdCBkaXNwbGF5ZWQuXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGRpc2NhcmRJbkFwcE5vdGlmaWNhdGlvbnMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogUmVzdW1lcyBkaXNwbGF5aW5nIGluQXBwcyBub3RpZmljYXRpb25zIGFuZCBzaG93cyBwZW5kaW5nIGluQXBwIG5vdGlmaWNhdGlvbnMgaWYgYW55LlxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZXN1bWVJbkFwcE5vdGlmaWNhdGlvbnMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKlxuICAgKiBTZXNzaW9uXG4gICAqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEdldCBTZXNzaW9uIEVsYXBzZWQgVGltZVxuICAgKiBjYWxscyBiYWNrIHdpdGggc2Vjb25kc1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXNzaW9uR2V0VGltZUVsYXBzZWQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IFNlc3Npb24gVG90YWwgVmlzaXRzXG4gICAqIGNhbGxzIGJhY2sgd2l0aCB3aXRoIGludCBvciAtMVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXNzaW9uR2V0VG90YWxWaXNpdHMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IFNlc3Npb24gU2NyZWVuIENvdW50XG4gICAqIGNhbGxzIGJhY2sgd2l0aCB3aXRoIGludFxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXNzaW9uR2V0U2NyZWVuQ291bnQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IFNlc3Npb24gUHJldmlvdXMgVmlzaXQgVGltZVxuICAgKiBjYWxscyBiYWNrIHdpdGggd2l0aCBlcG9jaCBzZWNvbmRzIG9yIC0xXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNlc3Npb25HZXRQcmV2aW91c1Zpc2l0VGltZSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgU2Vzc3Npb24gUmVmZXJyZXIgVVRNIGRldGFpbHNcbiAgICogb2JqZWN0IHtcInNvdXJjZVwiOiA8c3RyaW5nPiwgXCJtZWRpdW1cIjogPHN0cmluZz4sIFwiY2FtcGFpZ25cIjogPHN0cmluZz59IG9yIGVtcHR5IG9iamVjdFxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXNzaW9uR2V0VVRNRGV0YWlscygpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gbWFudWFsbHkgdHJhY2sgdGhlIHV0bSBkZXRhaWxzIGZvciBhbiBpbmNvbWluZyBpbnN0YWxsIHJlZmVycmVyXG4gICAqXG4gICAqIEBwYXJhbSBzb3VyY2Uge3N0cmluZ31cbiAgICogQHBhcmFtIG1lZGl1bSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2FtcGFpZ24ge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHVzaEluc3RhbGxSZWZlcnJlcihzb3VyY2U6IHN0cmluZywgbWVkaXVtOiBzdHJpbmcsIGNhbXBhaWduOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqIE5vdGlmaWNhdGlvbiBJbmJveCBtZXRob2RzXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgbWV0aG9kIHRvIGluaXRpYWxpemUgdGhlIEFwcCBJbmJveFxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBpbml0aWFsaXplSW5ib3goKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIG1ldGhvZCB0byBnZXQgdGhlIGNvdW50IG9mIHVucmVhZCBJbmJveCBtZXNzYWdlc1xuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRJbmJveE1lc3NhZ2VVbnJlYWRDb3VudCgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgbWV0aG9kIHRvIGdldCB0aGUgY291bnQgb2YgdG90YWwgSW5ib3ggbWVzc2FnZXNcbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0SW5ib3hNZXNzYWdlQ291bnQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIG1ldGhvZCB0byBvcGVuIHRoZSBBcHAgSW5ib3hcbiAgICpcbiAgICogQHBhcmFtIHN0eWxlQ29uZmlnIDogYW55IG9yIGVtcHR5IG9iamVjdFxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzaG93SW5ib3goc3R5bGVDb25maWc6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBGZXRjaCBhbGwgSW5ib3ggTWVzc2FnZXNcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0QWxsSW5ib3hNZXNzYWdlcygpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gRmV0Y2ggYWxsIFVucmVhZCBJbmJveCBNZXNzYWdlc1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRVbnJlYWRJbmJveE1lc3NhZ2VzKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBGZXRjaCBJbmJveCBNZXNzYWdlIEZvciBJZFxuICAgKlxuICAgKiBAcGFyYW0gbWVzc2FnZUlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldEluYm94TWVzc2FnZUZvcklkKG1lc3NhZ2VJZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIERlbGV0ZSBJbmJveCBNZXNzYWdlIEZvciBJZFxuICAgKlxuICAgKiBAcGFyYW0gbWVzc2FnZUlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGRlbGV0ZUluYm94TWVzc2FnZUZvcklkKG1lc3NhZ2VJZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIE1hcmsgUmVhZCBJbmJveCBNZXNzYWdlIEZvciBJZFxuICAgKlxuICAgKiBAcGFyYW0gbWVzc2FnZUlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIG1hcmtSZWFkSW5ib3hNZXNzYWdlRm9ySWQobWVzc2FnZUlkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gTWFyayBQdXNoIEluYm94IE5vdGlmaWNhdGlvbiBWaWV3ZWQgRXZlbnQgZm9yIElkXG4gICAqXG4gICAqIEBwYXJhbSBtZXNzYWdlSWQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHVzaEluYm94Tm90aWZpY2F0aW9uVmlld2VkRXZlbnRGb3JJZChtZXNzYWdlSWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBNYXJrIFB1c2ggSW5ib3ggTm90aWZpY2F0aW9uIENsaWNrZWQgRXZlbnQgZm9yIElkXG4gICAqXG4gICAqIEBwYXJhbSBtZXNzYWdlSWQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHVzaEluYm94Tm90aWZpY2F0aW9uQ2xpY2tlZEV2ZW50Rm9ySWQobWVzc2FnZUlkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gR2V0IEFsbCBEaXNwbGF5IFVuaXRzXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldEFsbERpc3BsYXlVbml0cygpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gR2V0IERpc3BsYXkgVW5pdCBGb3IgSWRcbiAgICpcbiAgICogQHBhcmFtIGlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldERpc3BsYXlVbml0Rm9ySWQoaWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBQdXNoIERpc3BsYXlVbml0IFZpZXdlZCBFdmVudCBmb3IgSURcbiAgICpcbiAgICogQHBhcmFtIGlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHB1c2hEaXNwbGF5VW5pdFZpZXdlZEV2ZW50Rm9ySUQoaWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBQdXNoIERpc3BsYXlVbml0IENsaWNrZWQgRXZlbnQgZm9yIElEXG4gICAqXG4gICAqIEBwYXJhbSBpZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwdXNoRGlzcGxheVVuaXRDbGlja2VkRXZlbnRGb3JJRChpZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBGZWF0dXJlIEZsYWcgZm9yIGtleVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEBwYXJhbSBkZWZhdWx0VmFsdWUge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0RmVhdHVyZUZsYWcoa2V5OiBzdHJpbmcsIGRlZmF1bHRWYWx1ZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIFNldCBEZWZhdWx0cyBmb3IgUHJvZHVjdCBDb25maWdcbiAgICpcbiAgICogQHBhcmFtIGRlZmF1bHRzIHthbnl9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldERlZmF1bHRzTWFwKGRlZmF1bHRzOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgZm9yIFByb2R1Y3QgQ29uZmlnIEZldGNoXG4gICAqXG4gICAqIEBwYXJhbSBkZWZhdWx0cyB7YW55fVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBmZXRjaCgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgZm9yIFByb2R1Y3QgQ29uZmlnIEZldGNoIHdpdGggTWluIEludGVydmFsXG4gICAqXG4gICAqIEBwYXJhbSB0aW1lSW50ZXJ2YWwge251bWJlcn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZmV0Y2hXaXRoTWluaW11bUZldGNoSW50ZXJ2YWxJblNlY29uZHModGltZUludGVydmFsOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgZm9yIFByb2R1Y3QgQ29uZmlnIEFjdGl2YXRlXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGFjdGl2YXRlKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyBmb3IgUHJvZHVjdCBDb25maWcgRmV0Y2ggYW5kIEFjdGl2YXRlXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGZldGNoQW5kQWN0aXZhdGUoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIHNldCBQcm9kdWN0IENvbmZpZyBGZXRjaCB3aXRoIE1pbiBJbnRlcnZhbFxuICAgKlxuICAgKiBAcGFyYW0gdGltZUludGVydmFsIHtudW1iZXJ9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldE1pbmltdW1GZXRjaEludGVydmFsSW5TZWNvbmRzKHRpbWVJbnRlcnZhbDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBMYXN0IEZldGNoIFRpbWUgSW50ZXJ2YWxcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0TGFzdEZldGNoVGltZVN0YW1wSW5NaWxsaXMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBTdHJpbmdcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRTdHJpbmcoa2V5OiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gR2V0IEJvb2xlYW5cbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRCb29sZWFuKGtleTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBMb25nXG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0TG9uZyhrZXk6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBHZXQgRG91YmxlXG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0RG91YmxlKGtleTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIFJlc2V0IFByb2R1Y3QgQ29uZmlnXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlc2V0KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKipcbiAgICogRGV2ZWxvcGVyIE9wdGlvbnNcbiAgICoqKioqKioqKioqKioqKioqKi9cbiAgLyoqXG4gICAqIDAgaXMgb2ZmLCAxIGlzIGluZm8sIDIgaXMgZGVidWcsIGRlZmF1bHQgaXMgMVxuICAgKlxuICAgKiBAcGFyYW0gbGV2ZWwge251bWJlcn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2V0RGVidWdMZXZlbChsZXZlbDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cbn1cbiJdfQ==
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: CleverTap, decorators: [{
type: Injectable
}], propDecorators: { notifyDeviceReady: [], enablePersonalization: [], disablePersonalization: [], setOptOut: [], setOffline: [], enableDeviceNetworkInfoReporting: [], registerPush: [], setPushToken: [], setPushXiaomiToken: [], setPushBaiduToken: [], setPushHuaweiToken: [], createNotification: [], createNotificationChannel: [], createNotificationChannelWithSound: [], createNotificationChannelWithGroupId: [], createNotificationChannelWithGroupIdAndSound: [], createNotificationChannelGroup: [], deleteNotificationChannel: [], deleteNotificationChannelGroup: [], recordScreenView: [], recordEventWithName: [], recordEventWithNameAndProps: [], recordChargedEventWithDetailsAndItems: [], eventGetFirstTime: [], eventGetLastTime: [], eventGetOccurrences: [], eventGetDetails: [], getEventHistory: [], getLocation: [], setLocation: [], onUserLogin: [], profileSet: [], profileGetProperty: [], profileGetCleverTapAttributionIdentifier: [], profileGetCleverTapID: [], getCleverTapID: [], profileRemoveValueForKey: [], profileSetMultiValues: [], profileAddMultiValue: [], profileAddMultiValues: [], profileRemoveMultiValue: [], profileRemoveMultiValues: [], profileIncrementValueBy: [], profileDecrementValueBy: [], suspendInAppNotifications: [], discardInAppNotifications: [], resumeInAppNotifications: [], sessionGetTimeElapsed: [], sessionGetTotalVisits: [], sessionGetScreenCount: [], sessionGetPreviousVisitTime: [], sessionGetUTMDetails: [], pushInstallReferrer: [], initializeInbox: [], getInboxMessageUnreadCount: [], getInboxMessageCount: [], showInbox: [], getAllInboxMessages: [], getUnreadInboxMessages: [], getInboxMessageForId: [], deleteInboxMessageForId: [], markReadInboxMessageForId: [], pushInboxNotificationViewedEventForId: [], pushInboxNotificationClickedEventForId: [], getAllDisplayUnits: [], getDisplayUnitForId: [], pushDisplayUnitViewedEventForID: [], pushDisplayUnitClickedEventForID: [], getFeatureFlag: [], setDefaultsMap: [], fetch: [], fetchWithMinimumFetchIntervalInSeconds: [], activate: [], fetchAndActivate: [], setMinimumFetchIntervalInSeconds: [], getLastFetchTimeStampInMillis: [], getString: [], getBoolean: [], getLong: [], getDouble: [], reset: [], setDebugLevel: [] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvQGF3ZXNvbWUtY29yZG92YS1wbHVnaW5zL3BsdWdpbnMvY2xldmVydGFwL25neC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLHVDQUErQyxNQUFNLCtCQUErQixDQUFDOzs7SUF3QjdELDZCQUEwQjs7OztJQVN2RCxxQ0FBaUI7SUFlakIseUNBQXFCO0lBV3JCLDBDQUFzQjtJQVd0Qiw2QkFBUyxhQUFDLE1BQWU7SUFXekIsOEJBQVUsYUFBQyxPQUFnQjtJQVczQixvREFBZ0MsYUFBQyxNQUFlO0lBY2hELGdDQUFZO0lBV1osZ0NBQVksYUFBQyxLQUFhO0lBVzFCLHNDQUFrQixhQUFDLEtBQWE7SUFXaEMscUNBQWlCLGFBQUMsS0FBYTtJQVcvQixzQ0FBa0IsYUFBQyxLQUFhO0lBV2hDLHNDQUFrQixhQUFDLE1BQVc7SUFlOUIsNkNBQXlCLGFBQ3ZCLFNBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLGtCQUEwQixFQUMxQixVQUFrQixFQUNsQixTQUFrQjtJQWlCcEIsc0RBQWtDLGFBQ2hDLFNBQWlCLEVBQ2pCLFdBQW1CLEVBQ25CLGtCQUEwQixFQUMxQixVQUFrQixFQUNsQixTQUFrQixFQUNsQixLQUFhO0lBa0JmLHdEQUFvQyxhQUNsQyxTQUFpQixFQUNqQixXQUFtQixFQUNuQixrQkFBMEIsRUFDMUIsVUFBa0IsRUFDbEIsT0FBZSxFQUNmLFNBQWtCO0lBa0JwQixnRUFBNEMsYUFDMUMsU0FBaUIsRUFDakIsV0FBbUIsRUFDbkIsa0JBQTBCLEVBQzFCLFVBQWtCLEVBQ2xCLE9BQWUsRUFDZixTQUFrQixFQUNsQixLQUFhO0lBYWYsa0RBQThCLGFBQUMsT0FBZSxFQUFFLFNBQWlCO0lBV2pFLDZDQUF5QixhQUFDLFNBQWlCO0lBVzNDLGtEQUE4QixhQUFDLE9BQWU7SUFlOUMsb0NBQWdCLGFBQUMsVUFBa0I7SUFXbkMsdUNBQW1CLGFBQUMsU0FBaUI7SUFZckMsK0NBQTJCLGFBQUMsU0FBaUIsRUFBRSxVQUFlO0lBWTlELHlEQUFxQyxhQUFDLE9BQVksRUFBRSxLQUFVO0lBWTlELHFDQUFpQixhQUFDLFNBQWlCO0lBWW5DLG9DQUFnQixhQUFDLFNBQWlCO0lBWWxDLHVDQUFtQixhQUFDLFNBQWlCO0lBWXJDLG1DQUFlLGFBQUMsU0FBaUI7SUFXakMsbUNBQWU7SUF5QmYsK0JBQVc7SUFZWCwrQkFBVyxhQUFDLEdBQVcsRUFBRSxHQUFXO0lBMEJwQywrQkFBVyxhQUFDLE9BQVk7SUFXeEIsOEJBQVUsYUFBQyxPQUFZO0lBWXZCLHNDQUFrQixhQUFDLFlBQW9CO0lBWXZDLDREQUF3QztJQVl4Qyx5Q0FBcUI7SUFXckIsa0NBQWM7SUFXZCw0Q0FBd0IsYUFBQyxHQUFXO0lBWXBDLHlDQUFxQixhQUFDLEdBQVcsRUFBRSxNQUFXO0lBWTlDLHdDQUFvQixhQUFDLEdBQVcsRUFBRSxLQUFhO0lBWS9DLHlDQUFxQixhQUFDLEdBQVcsRUFBRSxNQUFXO0lBWTlDLDJDQUF1QixhQUFDLEdBQVcsRUFBRSxLQUFhO0lBWWxELDRDQUF3QixhQUFDLEdBQVcsRUFBRSxNQUFXO0lBWWpELDJDQUF1QixhQUFDLEdBQVcsRUFBQyxLQUFhO0lBWWpELDJDQUF1QixhQUFDLEdBQVcsRUFBQyxLQUFhO0lBZ0JqRCw2Q0FBeUI7SUFVekIsNkNBQXlCO0lBVXpCLDRDQUF3QjtJQWV4Qix5Q0FBcUI7SUFXckIseUNBQXFCO0lBV3JCLHlDQUFxQjtJQVdyQiwrQ0FBMkI7SUFXM0Isd0NBQW9CO0lBYXBCLHVDQUFtQixhQUFDLE1BQWMsRUFBRSxNQUFjLEVBQUUsUUFBZ0I7SUFZcEUsbUNBQWU7SUFRZiw4Q0FBMEI7SUFRMUIsd0NBQW9CO0lBVXBCLDZCQUFTLGFBQUMsV0FBZ0I7SUFVMUIsdUNBQW1CO0lBVW5CLDBDQUFzQjtJQVd0Qix3Q0FBb0IsYUFBQyxTQUFpQjtJQVd0QywyQ0FBdUIsYUFBQyxTQUFpQjtJQVd6Qyw2Q0FBeUIsYUFBQyxTQUFpQjtJQVczQyx5REFBcUMsYUFBQyxTQUFpQjtJQVd2RCwwREFBc0MsYUFBQyxTQUFpQjtJQVV4RCxzQ0FBa0I7SUFXbEIsdUNBQW1CLGFBQUMsRUFBVTtJQVc5QixtREFBK0IsYUFBQyxFQUFVO0lBVzFDLG9EQUFnQyxhQUFDLEVBQVU7SUFZM0Msa0NBQWMsYUFBQyxHQUFXLEVBQUUsWUFBb0I7SUFXaEQsa0NBQWMsYUFBQyxRQUFhO0lBVzVCLHlCQUFLO0lBV0wsMERBQXNDLGFBQUMsWUFBb0I7SUFVM0QsNEJBQVE7SUFVUixvQ0FBZ0I7SUFXaEIsb0RBQWdDLGFBQUMsWUFBb0I7SUFVckQsaURBQTZCO0lBVzdCLDZCQUFTLGFBQUMsR0FBVztJQVdyQiw4QkFBVSxhQUFDLEdBQVc7SUFXdEIsMkJBQU8sYUFBQyxHQUFXO0lBV25CLDZCQUFTLGFBQUMsR0FBVztJQVVyQix5QkFBSztJQWNMLGlDQUFhLGFBQUMsS0FBYTsyR0EvK0JoQixTQUFTOytHQUFULFNBQVM7Ozs7OztJQUFULFNBQVMsa0JBQVQsU0FBUztvQkF6QnRCO0VBeUIrQiwwQkFBMEI7U0FBNUMsU0FBUzs0RkFBVCxTQUFTO2tCQURyQixVQUFVOzhCQVVULGlCQUFpQixNQWVqQixxQkFBcUIsTUFXckIsc0JBQXNCLE1BV3RCLFNBQVMsTUFXVCxVQUFVLE1BV1YsZ0NBQWdDLE1BY2hDLFlBQVksTUFXWixZQUFZLE1BV1osa0JBQWtCLE1BV2xCLGlCQUFpQixNQVdqQixrQkFBa0IsTUFXbEIsa0JBQWtCLE1BZWxCLHlCQUF5QixNQXNCekIsa0NBQWtDLE1Bd0JsQyxvQ0FBb0MsTUF3QnBDLDRDQUE0QyxNQW9CNUMsOEJBQThCLE1BVzlCLHlCQUF5QixNQVd6Qiw4QkFBOEIsTUFlOUIsZ0JBQWdCLE1BV2hCLG1CQUFtQixNQVluQiwyQkFBMkIsTUFZM0IscUNBQXFDLE1BWXJDLGlCQUFpQixNQVlqQixnQkFBZ0IsTUFZaEIsbUJBQW1CLE1BWW5CLGVBQWUsTUFXZixlQUFlLE1BeUJmLFdBQVcsTUFZWCxXQUFXLE1BMEJYLFdBQVcsTUFXWCxVQUFVLE1BWVYsa0JBQWtCLE1BWWxCLHdDQUF3QyxNQVl4QyxxQkFBcUIsTUFXckIsY0FBYyxNQVdkLHdCQUF3QixNQVl4QixxQkFBcUIsTUFZckIsb0JBQW9CLE1BWXBCLHFCQUFxQixNQVlyQix1QkFBdUIsTUFZdkIsd0JBQXdCLE1BWXhCLHVCQUF1QixNQVl2Qix1QkFBdUIsTUFnQnZCLHlCQUF5QixNQVV6Qix5QkFBeUIsTUFVekIsd0JBQXdCLE1BZXhCLHFCQUFxQixNQVdyQixxQkFBcUIsTUFXckIscUJBQXFCLE1BV3JCLDJCQUEyQixNQVczQixvQkFBb0IsTUFhcEIsbUJBQW1CLE1BWW5CLGVBQWUsTUFRZiwwQkFBMEIsTUFRMUIsb0JBQW9CLE1BVXBCLFNBQVMsTUFVVCxtQkFBbUIsTUFVbkIsc0JBQXNCLE1BV3RCLG9CQUFvQixNQVdwQix1QkFBdUIsTUFXdkIseUJBQXlCLE1BV3pCLHFDQUFxQyxNQVdyQyxzQ0FBc0MsTUFVdEMsa0JBQWtCLE1BV2xCLG1CQUFtQixNQVduQiwrQkFBK0IsTUFXL0IsZ0NBQWdDLE1BWWhDLGNBQWMsTUFXZCxjQUFjLE1BV2QsS0FBSyxNQVdMLHNDQUFzQyxNQVV0QyxRQUFRLE1BVVIsZ0JBQWdCLE1BV2hCLGdDQUFnQyxNQVVoQyw2QkFBNkIsTUFXN0IsU0FBUyxNQVdULFVBQVUsTUFXVixPQUFPLE1BV1AsU0FBUyxNQVVULEtBQUssTUFjTCxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29yZG92YSwgQXdlc29tZUNvcmRvdmFOYXRpdmVQbHVnaW4sIFBsdWdpbiB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9jb3JlJztcblxuZGVjbGFyZSBsZXQgY2xldmVydGFwOiBhbnk7XG5cbi8qKlxuICogQG5hbWUgQ2xldmVyVGFwXG4gKiBAZGVzY3JpcHRpb25cbiAqIENvcmRvdmEgUGx1Z2luIHRoYXQgd3JhcHMgQ2xldmVyVGFwIFNESyBmb3IgQW5kcm9pZCBhbmQgaU9TXG4gKiBAdXNhZ2VcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGltcG9ydCB7IENsZXZlclRhcCB9IGZyb20gJ0Bhd2Vzb21lLWNvcmRvdmEtcGx1Z2lucy9jbGV2ZXJ0YXAvbmd4JztcbiAqXG4gKiBjb25zdHJ1Y3Rvcihwcml2YXRlIGNsZXZlcnRhcDogQ2xldmVyVGFwKSB7IH1cbiAqXG4gKiBgYGBcbiAqL1xuQFBsdWdpbih7XG4gIHBsdWdpbk5hbWU6ICdDbGV2ZXJUYXAnLFxuICBwbHVnaW46ICdjbGV2ZXJ0YXAtY29yZG92YScsXG4gIHBsdWdpblJlZjogJ0NsZXZlclRhcCcsXG4gIHJlcG86ICdodHRwczovL2dpdGh1Yi5jb20vQ2xldmVyVGFwL2NsZXZlcnRhcC1jb3Jkb3ZhJyxcbiAgcGxhdGZvcm1zOiBbJ0FuZHJvaWQnLCAnaU9TJ10sXG59KVxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIENsZXZlclRhcCBleHRlbmRzIEF3ZXNvbWVDb3Jkb3ZhTmF0aXZlUGx1Z2luIHtcbiAgLyoqXG4gICAqIG5vdGlmeSBkZXZpY2UgcmVhZHlcbiAgICogTk9URTogaW4gaU9TIHVzZSB0byBiZSBub3RpZmllZCBvZiBsYXVuY2ggUHVzaCBOb3RpZmljYXRpb24gb3IgRGVlcCBMaW5rXG4gICAqIGluIEFuZHJvaWQgdXNlIG9ubHkgaW4gYW5kcm9pZCBwaG9uZWdhcCBidWlsZCBwcm9qZWN0c1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBub3RpZnlEZXZpY2VSZWFkeSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqXG4gICAqIFBlcnNvbmFsaXphdGlvblxuICAgKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBQZXJzb25hbGl6YXRpb25cbiAgICogRW5hYmxlcyB0aGUgUGVyc29uYWxpemF0aW9uIEFQSVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBlbmFibGVQZXJzb25hbGl6YXRpb24oKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogUGVyc29uYWxpemF0aW9uXG4gICAqIERpc2FibGVzIHRoZSBQZXJzb25hbGl6YXRpb24gQVBJXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGRpc2FibGVQZXJzb25hbGl6YXRpb24oKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogRW5hYmxlcyB0cmFja2luZyBvcHQgb3V0IGZvciB0aGUgY3VycmVudGx5IGFjdGl2ZSB1c2VyLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0T3V0IHtib29sZWFufVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXRPcHRPdXQob3B0T3V0OiBib29sZWFuKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBDbGV2ZXJUYXAgU0RLIHRvIG9mZmxpbmUgbW9kZS5cbiAgICpcbiAgICogQHBhcmFtIG9mZmxpbmUge2Jvb2xlYW59XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldE9mZmxpbmUob2ZmbGluZTogYm9vbGVhbik6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEVuYWJsZXMgdGhlIHJlcG9ydGluZyBvZiBkZXZpY2UgbmV0d29yayByZWxhdGVkIGluZm9ybWF0aW9uLCBpbmNsdWRpbmcgSVAgYWRkcmVzcy4gIFRoaXMgcmVwb3J0aW5nIGlzIGRpc2FibGVkIGJ5IGRlZmF1bHQuXG4gICAqXG4gICAqIEBwYXJhbSBlbmFibGUge2Jvb2xlYW59XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGVuYWJsZURldmljZU5ldHdvcmtJbmZvUmVwb3J0aW5nKGVuYWJsZTogYm9vbGVhbik6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKipcbiAgICogUHVzaFxuICAgKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgZm9yIHB1c2ggbm90aWZpY2F0aW9uc1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZWdpc3RlclB1c2goKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGV2aWNlJ3MgcHVzaCB0b2tlblxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4ge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2V0UHVzaFRva2VuKHRva2VuOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkZXZpY2UncyBYaWFvbWkgcHVzaCB0b2tlblxuICAgKlxuICAgKiBAcGFyYW0gdG9rZW4ge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2V0UHVzaFhpYW9taVRva2VuKHRva2VuOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkZXZpY2UncyBCYWlkdSBwdXNoIHRva2VuXG4gICAqXG4gICAqIEBwYXJhbSB0b2tlbiB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXRQdXNoQmFpZHVUb2tlbih0b2tlbjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGV2aWNlJ3MgSHVhd2VpIHB1c2ggdG9rZW5cbiAgICpcbiAgICogQHBhcmFtIHRva2VuIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldFB1c2hIdWF3ZWlUb2tlbih0b2tlbjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIGZvciBBbmRyb2lkIE8rXG4gICAqXG4gICAqIEBwYXJhbSBleHRyYXMge2FueX1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgY3JlYXRlTm90aWZpY2F0aW9uKGV4dHJhczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIGZvciBBbmRyb2lkIE8rXG4gICAqXG4gICAqIEBwYXJhbSBjaGFubmVsSUQge3N0cmluZ31cbiAgICogQHBhcmFtIGNoYW5uZWxOYW1lIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBjaGFubmVsRGVzY3JpcHRpb24ge3N0cmluZ31cbiAgICogQHBhcmFtIGltcG9ydGFuY2Uge251bWJlcn1cbiAgICogQHBhcmFtIHNob3dCYWRnZSB7Ym9vbGVhbn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgY3JlYXRlTm90aWZpY2F0aW9uQ2hhbm5lbChcbiAgICBjaGFubmVsSUQ6IHN0cmluZyxcbiAgICBjaGFubmVsTmFtZTogc3RyaW5nLFxuICAgIGNoYW5uZWxEZXNjcmlwdGlvbjogc3RyaW5nLFxuICAgIGltcG9ydGFuY2U6IG51bWJlcixcbiAgICBzaG93QmFkZ2U6IGJvb2xlYW5cbiAgKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIGZvciBBbmRyb2lkIE8rXG4gICAqXG4gICAqIEBwYXJhbSBjaGFubmVsSUQge3N0cmluZ31cbiAgICogQHBhcmFtIGNoYW5uZWxOYW1lIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBjaGFubmVsRGVzY3JpcHRpb24ge3N0cmluZ31cbiAgICogQHBhcmFtIGltcG9ydGFuY2Uge251bWJlcn1cbiAgICogQHBhcmFtIHNob3dCYWRnZSB7Ym9vbGVhbn1cbiAgICogQHBhcmFtIHNvdW5kIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGNyZWF0ZU5vdGlmaWNhdGlvbkNoYW5uZWxXaXRoU291bmQoXG4gICAgY2hhbm5lbElEOiBzdHJpbmcsXG4gICAgY2hhbm5lbE5hbWU6IHN0cmluZyxcbiAgICBjaGFubmVsRGVzY3JpcHRpb246IHN0cmluZyxcbiAgICBpbXBvcnRhbmNlOiBudW1iZXIsXG4gICAgc2hvd0JhZGdlOiBib29sZWFuLFxuICAgIHNvdW5kOiBzdHJpbmdcbiAgKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIHdpdGggR3JvdXAgSUQgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGNoYW5uZWxJRCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2hhbm5lbE5hbWUge3N0cmluZ31cbiAgICogQHBhcmFtIGNoYW5uZWxEZXNjcmlwdGlvbiB7c3RyaW5nfVxuICAgKiBAcGFyYW0gaW1wb3J0YW5jZSB7bnVtYmVyfVxuICAgKiBAcGFyYW0gZ3JvdXBJZCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gc2hvd0JhZGdlIHtib29sZWFufVxuICAgKiBAcGFyYW0gc291bmQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgY3JlYXRlTm90aWZpY2F0aW9uQ2hhbm5lbFdpdGhHcm91cElkKFxuICAgIGNoYW5uZWxJRDogc3RyaW5nLFxuICAgIGNoYW5uZWxOYW1lOiBzdHJpbmcsXG4gICAgY2hhbm5lbERlc2NyaXB0aW9uOiBzdHJpbmcsXG4gICAgaW1wb3J0YW5jZTogbnVtYmVyLFxuICAgIGdyb3VwSWQ6IHN0cmluZyxcbiAgICBzaG93QmFkZ2U6IGJvb2xlYW5cbiAgKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIHdpdGggR3JvdXAgSUQgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGNoYW5uZWxJRCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gY2hhbm5lbE5hbWUge3N0cmluZ31cbiAgICogQHBhcmFtIGNoYW5uZWxEZXNjcmlwdGlvbiB7c3RyaW5nfVxuICAgKiBAcGFyYW0gaW1wb3J0YW5jZSB7bnVtYmVyfVxuICAgKiBAcGFyYW0gZ3JvdXBJZCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gc2hvd0JhZGdlIHtib29sZWFufVxuICAgKiBAcGFyYW0gc291bmRcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgY3JlYXRlTm90aWZpY2F0aW9uQ2hhbm5lbFdpdGhHcm91cElkQW5kU291bmQoXG4gICAgY2hhbm5lbElEOiBzdHJpbmcsXG4gICAgY2hhbm5lbE5hbWU6IHN0cmluZyxcbiAgICBjaGFubmVsRGVzY3JpcHRpb246IHN0cmluZyxcbiAgICBpbXBvcnRhbmNlOiBudW1iZXIsXG4gICAgZ3JvdXBJZDogc3RyaW5nLFxuICAgIHNob3dCYWRnZTogYm9vbGVhbixcbiAgICBzb3VuZDogc3RyaW5nXG4gICk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBOb3RpZmljYXRpb24gQ2hhbm5lbCBHcm91cCBmb3IgQW5kcm9pZCBPK1xuICAgKlxuICAgKiBAcGFyYW0gZ3JvdXBJRCB7c3RyaW5nfVxuICAgKiBAcGFyYW0gZ3JvdXBOYW1lIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGNyZWF0ZU5vdGlmaWNhdGlvbkNoYW5uZWxHcm91cChncm91cElEOiBzdHJpbmcsIGdyb3VwTmFtZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIE5vdGlmaWNhdGlvbiBDaGFubmVsIGZvciBBbmRyb2lkIE8rXG4gICAqXG4gICAqIEBwYXJhbSBjaGFubmVsSUQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZGVsZXRlTm90aWZpY2F0aW9uQ2hhbm5lbChjaGFubmVsSUQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBOb3RpZmljYXRpb24gR3JvdXAgZm9yIEFuZHJvaWQgTytcbiAgICpcbiAgICogQHBhcmFtIGdyb3VwSUQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZGVsZXRlTm90aWZpY2F0aW9uQ2hhbm5lbEdyb3VwKGdyb3VwSUQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKipcbiAgICogRXZlbnRzXG4gICAqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFJlY29yZCBTY3JlZW4gVmlld1xuICAgKlxuICAgKiBAcGFyYW0gc2NyZWVuTmFtZSB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZWNvcmRTY3JlZW5WaWV3KHNjcmVlbk5hbWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlY29yZCBFdmVudCB3aXRoIE5hbWVcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZSB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZWNvcmRFdmVudFdpdGhOYW1lKGV2ZW50TmFtZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogIFJlY29yZCBFdmVudCB3aXRoIE5hbWUgYW5kIEV2ZW50IHByb3BlcnRpZXNcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gZXZlbnRQcm9wcyB7YW55fVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZWNvcmRFdmVudFdpdGhOYW1lQW5kUHJvcHMoZXZlbnROYW1lOiBzdHJpbmcsIGV2ZW50UHJvcHM6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqICBSZWNvcmQgQ2hhcmdlZCBFdmVudCB3aXRoIERldGFpbHMgYW5kIEl0ZW1zXG4gICAqXG4gICAqIEBwYXJhbSBkZXRhaWxzIHthbnl9ICBvYmplY3Qgd2l0aCB0cmFuc2FjdGlvbiBkZXRhaWxzXG4gICAqIEBwYXJhbSBpdGVtcyB7YW55fSAgYXJyYXkgb2YgaXRlbXMgcHVyY2hhc2VkXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlY29yZENoYXJnZWRFdmVudFdpdGhEZXRhaWxzQW5kSXRlbXMoZGV0YWlsczogYW55LCBpdGVtczogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IEV2ZW50IEZpcnN0IFRpbWVcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZSB7c3RyaW5nfVxuICAgKiBjYWxsYmFjayByZXR1cm5zIGVwb2NoIHNlY29uZHMgb3IgLTFcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZXZlbnRHZXRGaXJzdFRpbWUoZXZlbnROYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgRXZlbnQgTGFzdCBUaW1lXG4gICAqXG4gICAqIEBwYXJhbSBldmVudE5hbWUge3N0cmluZ31cbiAgICogY2FsbGJhY2sgcmV0dXJucyBlcG9jaCBzZWNvbmRzIG9yIC0xXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGV2ZW50R2V0TGFzdFRpbWUoZXZlbnROYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgRXZlbnQgTnVtYmVyIG9mIE9jY3VycmVuY2VzXG4gICAqXG4gICAqIEBwYXJhbSBldmVudE5hbWUge3N0cmluZ31cbiAgICogY2FsbHMgYmFjayB3aXRoIGludCBvciAtMVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBldmVudEdldE9jY3VycmVuY2VzKGV2ZW50TmFtZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IEV2ZW50IERldGFpbHNcbiAgICpcbiAgICogQHBhcmFtIGV2ZW50TmFtZSB7c3RyaW5nfVxuICAgKiBjYWxscyBiYWNrIHdpdGggb2JqZWN0IHtcImV2ZW50TmFtZVwiOiA8c3RyaW5nPiwgXCJmaXJzdFRpbWVcIjo8ZXBvY2ggc2Vjb25kcz4sIFwibGFzdFRpbWVcIjogPGVwb2NoIHNlY29uZHM+LCBcImNvdW50XCI6IDxpbnQ+fSBvciBlbXB0eSBvYmplY3RcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZXZlbnRHZXREZXRhaWxzKGV2ZW50TmFtZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IEV2ZW50IEhpc3RvcnlcbiAgICogY2FsbHMgYmFjayB3aXRoIG9iamVjdCB7XCJldmVudE5hbWUxXCI6PGV2ZW50MSBkZXRhaWxzIG9iamVjdD4sIFwiZXZlbnROYW1lMlwiOjxldmVudDIgZGV0YWlscyBvYmplY3Q+fVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRFdmVudEhpc3RvcnkoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKlxuICAgKiBQcm9maWxlc1xuICAgKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGRldmljZSBsb2NhdGlvbiBpZiBhdmFpbGFibGUuXG4gICAqIE9uIGlPUzpcbiAgICogQ2FsbGluZyB0aGlzIHdpbGwgcHJvbXB0IHRoZSB1c2VyIGxvY2F0aW9uIHBlcm1pc3Npb25zIGRpYWxvZy5cbiAgICogUGxlYXNlIGJlIHN1cmUgdG8gaW5jbHVkZSB0aGUgTlNMb2NhdGlvbldoZW5JblVzZVVzYWdlRGVzY3JpcHRpb24ga2V5IGluIHlvdXIgSW5mby5wbGlzdC5cbiAgICogVXNlcyBkZXNpcmVkIGFjY3VyYWN5IG9mIGtDTExvY2F0aW9uQWNjdXJhY3lIdW5kcmVkTWV0ZXJzLlxuICAgKiBJZiB5b3UgbmVlZCBiYWNrZ3JvdW5kIGxvY2F0aW9uIHVwZGF0ZXMgb3IgZmluZXIgYWNjdXJhY3kgcGxlYXNlIGltcGxlbWVudCB5b3VyIG93biBsb2NhdGlvbiBoYW5kbGluZy5cbiAgICogT24gQW5kcm9pZDpcbiAgICogUmVxdWlyZXMgTG9jYXRpb24gUGVybWlzc2lvbiBpbiBBbmRyb2lkTWFuaWZlc3QgZS5nLiBcImFuZHJvaWQucGVybWlzc2lvbi5BQ0NFU1NfQ09BUlNFX0xPQ0FUSU9OXCJcbiAgICogWW91IGNhbiB1c2UgbG9jYXRpb24gdG8gcGFzcyBpdCB0byBDbGV2ZXJUYXAgdmlhIHRoZSBzZXRMb2NhdGlvbiBBUElcbiAgICogZm9yLCBhbW9uZyBvdGhlciB0aGluZ3MsIG1vcmUgZmluZS1ncmFpbmVkIGdlby10YXJnZXRpbmcgYW5kIHNlZ21lbnRhdGlvbiBwdXJwb3Nlcy5cbiAgICogTm90ZTogb24gaU9TIHRoZSBjYWxsIHRvIENsZXZlclRhcFNESyBtdXN0IGJlIG1hZGUgb24gdGhlIG1haW4gdGhyZWFkIGR1ZSB0byBMb2NhdGlvbk1hbmFnZXIgcmVzdHJpY3Rpb25zLCBidXQgdGhlIENsZXZlclRhcFNESyBtZXRob2QgaXRzZWxmIGlzIG5vbi1ibG9ja2luZy5cbiAgICogY2FsbHMgYmFjayB3aXRoIHtsYXQ6bGF0LCBsb246bG9ufSBsYXQgYW5kIGxvbiBhcmUgZmxvYXRzXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldExvY2F0aW9uKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldCBsb2NhdGlvblxuICAgKlxuICAgKiBAcGFyYW0gbGF0IHtudW1iZXJ9XG4gICAqIEBwYXJhbSBsb24ge251bWJlcn1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2V0TG9jYXRpb24obGF0OiBudW1iZXIsIGxvbjogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlcyBhIHNlcGFyYXRlIGFuZCBkaXN0aW5jdCB1c2VyIHByb2ZpbGUgaWRlbnRpZmllZCBieSBvbmUgb3IgbW9yZSBvZiBJZGVudGl0eSwgRW1haWwsIEZCSUQgb3IgR1BJRCB2YWx1ZXMsXG4gICAqIGFuZCBwb3B1bGF0ZWQgd2l0aCB0aGUga2V5LXZhbHVlcyBpbmNsdWRlZCBpbiB0aGUgcHJvZmlsZSBkaWN0aW9uYXJ5LlxuICAgKiBJZiB5b3VyIGFwcCBpcyB1c2VkIGJ5IG11bHRpcGxlIHVzZXJzLCB5b3UgY2FuIHVzZSB0aGlzIG1ldGhvZCB0byBhc3NpZ24gdGhlbSBlYWNoIGEgdW5pcXVlIHByb2ZpbGUgdG8gdHJhY2sgdGhlbSBzZXBhcmF0ZWx5LlxuICAgKiBJZiBpbnN0ZWFkIHlvdSB3aXNoIHRvIGFzc2lnbiBtdWx0aXBsZSBJZGVudGl0eSwgRW1haWwsIEZCSUQgYW5kL29yIEdQSUQgdmFsdWVzIHRvIHRoZSBzYW1lIHVzZXIgcHJvZmlsZSxcbiAgICogdXNlIHByb2ZpbGVTZXQgcmF0aGVyIHRoYW4gdGhpcyBtZXRob2QuXG4gICAqIElmIG5vbmUgb2YgSWRlbnRpdHksIEVtYWlsLCBGQklEIG9yIEdQSUQgaXMgaW5jbHVkZWQgaW4gdGhlIHByb2ZpbGUgZGljdGlvbmFyeSxcbiAgICogYWxsIHByb3BlcnRpZXMgdmFsdWVzIHdpbGwgYmUgYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXJyZW50IHVzZXIgcHJvZmlsZS5cbiAgICogV2hlbiBpbml0aWFsbHkgaW5zdGFsbGVkIG9uIHRoaXMgZGV2aWNlLCB5b3VyIGFwcCBpcyBhc3NpZ25lZCBhbiBcImFub255bW91c1wiIHByb2ZpbGUuXG4gICAqIFRoZSBmaXJzdCB0aW1lIHlvdSBpZGVudGlmeSBhIHVzZXIgb24gdGhpcyBkZXZpY2UgKHdoZXRoZXIgdmlhIG9uVXNlckxvZ2luIG9yIHByb2ZpbGVTZXQpLFxuICAgKiB0aGUgXCJhbm9ueW1vdXNcIiBoaXN0b3J5IG9uIHRoZSBkZXZpY2Ugd2lsbCBiZSBhc3NvY2lhdGVkIHdpdGggdGhlIG5ld2x5IGlkZW50aWZpZWQgdXNlci5cbiAgICogVGhlbiwgdXNlIHRoaXMgbWV0aG9kIHRvIHN3aXRjaCBiZXR3ZWVuIHN1YnNlcXVlbnQgc2VwYXJhdGUgaWRlbnRpZmllZCB1c2Vycy5cbiAgICogUGxlYXNlIG5vdGUgdGhhdCBzd2l0Y2hpbmcgZnJvbSBvbmUgaWRlbnRpZmllZCB1c2VyIHRvIGFub3RoZXIgaXMgYSBjb3N0bHkgb3BlcmF0aW9uXG4gICAqIGluIHRoYXQgdGhlIGN1cnJlbnQgc2Vzc2lvbiBmb3IgdGhlIHByZXZpb3VzIHVzZXIgaXMgYXV0b21hdGljYWxseSBjbG9zZWRcbiAgICogYW5kIGRhdGEgcmVsYXRpbmcgdG8gdGhlIG9sZCB1c2VyIHJlbW92ZWQsIGFuZCBhIG5ldyBzZXNzaW9uIGlzIHN0YXJ0ZWRcbiAgICogZm9yIHRoZSBuZXcgdXNlciBhbmQgZGF0YSBmb3IgdGhhdCB1c2VyIHJlZnJlc2hlZCB2aWEgYSBuZXR3b3JrIGNhbGwgdG8gQ2xldmVyVGFwLlxuICAgKiBJbiBhZGRpdGlvbiwgYW55IGdsb2JhbCBmcmVxdWVuY3kgY2FwcyBhcmUgcmVzZXQgYXMgcGFydCBvZiB0aGUgc3dpdGNoLlxuICAgKlxuICAgKiBAcGFyYW0gcHJvZmlsZSB7YW55fSBvYmplY3RcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgb25Vc2VyTG9naW4ocHJvZmlsZTogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2V0IHByb2ZpbGUgYXR0cmlidXRlc1xuICAgKlxuICAgKiBAcGFyYW0gcHJvZmlsZSB7YW55fSBvYmplY3RcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZVNldChwcm9maWxlOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgVXNlciBQcm9maWxlIFByb3BlcnR5XG4gICAqXG4gICAqIEBwYXJhbSBwcm9wZXJ0eU5hbWUge3N0cmluZ31cbiAgICogY2FsbHMgYmFjayB3aXRoIHZhbHVlIG9mIHByb3BlcnR5TmFtZSBvciBmYWxzZVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlR2V0UHJvcGVydHkocHJvcGVydHlOYW1lOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBAZGVwcmVjYXRlZCBUaGlzIG1ldGhvZCBpcyBkZXByZWNhdGVkLiBVc2UgZ2V0Q2xldmVyVGFwSUQoKSBpbnN0ZWFkLlxuICAgKiBHZXQgYSB1bmlxdWUgQ2xldmVyVGFwIGlkZW50aWZpZXIgc3VpdGFibGUgZm9yIHVzZSB3aXRoIGluc3RhbGwgYXR0cmlidXRpb24gcHJvdmlkZXJzLlxuICAgKiBjYWxscyBiYWNrIHdpdGggdW5pcXVlIENsZXZlclRhcCBhdHRyaWJ1dGlvbiBpZGVudGlmaWVyXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHByb2ZpbGVHZXRDbGV2ZXJUYXBBdHRyaWJ1dGlvbklkZW50aWZpZXIoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQGRlcHJlY2F0ZWQgVGhpcyBtZXRob2QgaXMgZGVwcmVjYXRlZC4gVXNlIGdldENsZXZlclRhcElEKCkgaW5zdGVhZC5cbiAgICogR2V0IFVzZXIgUHJvZmlsZSBDbGV2ZXJUYXBJRFxuICAgKiBjYWxscyBiYWNrIHdpdGggQ2xldmVyVGFwSUQgb3IgZmFsc2VcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZUdldENsZXZlclRhcElEKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBVc2VyIFByb2ZpbGUgQ2xldmVyVGFwSURcbiAgICogY2FsbHMgYmFjayB3aXRoIENsZXZlclRhcElEXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldENsZXZlclRhcElEKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZSB0aGUgcHJvcGVydHkgc3BlY2lmaWVkIGJ5IGtleSBmcm9tIHRoZSB1c2VyIHByb2ZpbGVcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlUmVtb3ZlVmFsdWVGb3JLZXkoa2V5OiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIHNldHRpbmcgYSBtdWx0aS12YWx1ZSB1c2VyIHByb2ZpbGUgcHJvcGVydHlcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gdmFsdWVzIHthbnl9IGFycmF5IG9mIHN0cmluZ3NcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZVNldE11bHRpVmFsdWVzKGtleTogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgYWRkaW5nIGEgdmFsdWUgdG8gYSBtdWx0aS12YWx1ZSB1c2VyIHByb2ZpbGUgcHJvcGVydHlcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gdmFsdWUge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZUFkZE11bHRpVmFsdWUoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIGFkZGluZyB2YWx1ZXMgdG8gYSBtdWx0aS12YWx1ZSB1c2VyIHByb2ZpbGUgcHJvcGVydHlcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gdmFsdWVzIHthbnl9IGFycmF5IG9mIHN0cmluZ3NcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZUFkZE11bHRpVmFsdWVzKGtleTogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgcmVtb3ZpbmcgYSB2YWx1ZSBmcm9tIGEgbXVsdGktdmFsdWUgdXNlciBwcm9maWxlIHByb3BlcnR5XG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHBhcmFtIHZhbHVlIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHByb2ZpbGVSZW1vdmVNdWx0aVZhbHVlKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIGZvciByZW1vdmluZyBhIHZhbHVlIGZyb20gYSBtdWx0aS12YWx1ZSB1c2VyIHByb2ZpbGUgcHJvcGVydHlcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gdmFsdWVzIHthbnl9IGFycmF5IG9mIHN0cmluZ3NcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHJvZmlsZVJlbW92ZU11bHRpVmFsdWVzKGtleTogc3RyaW5nLCB2YWx1ZXM6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCBmb3IgaW5jcmVtZW50aW5nIGEgdmFsdWUgZm9yIGEgc2luZ2xlLXZhbHVlIHByb2ZpbGUgcHJvcGVydHkgKGlmIGl0IGV4aXN0cykuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHBhcmFtIHZhbHVlIHtudW1iZXJ9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHByb2ZpbGVJbmNyZW1lbnRWYWx1ZUJ5KGtleTogc3RyaW5nLHZhbHVlOiBudW1iZXIpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgZm9yIGRlY3JlbWVudGluZyBhIHZhbHVlIGZvciBhIHNpbmdsZS12YWx1ZSBwcm9maWxlIHByb3BlcnR5IChpZiBpdCBleGlzdHMpLlxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEBwYXJhbSB2YWx1ZSB7bnVtYmVyfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwcm9maWxlRGVjcmVtZW50VmFsdWVCeShrZXk6IHN0cmluZyx2YWx1ZTogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKlxuICAgKiBJbi1BcHAgQ29udHJvbHNcbiAgICoqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogU3VzcGVuZHMgYW5kIHNhdmVzIGluQXBwIG5vdGlmaWNhdGlvbnMgdW50aWwgJ3Jlc3VtZUluQXBwTm90aWZpY2F0aW9ucycgaXMgY2FsbGVkIGZvciBjdXJyZW50IHNlc3Npb24uXG4gICAqIEF1dG9tYXRpY2FsbHkgcmVzdW1lcyBJbkFwcCBub3RpZmljYXRpb25zIGRpc3BsYXkgb24gQ2xldmVyVGFwIHNoYXJlZCBpbnN0YW5jZSBjcmVhdGlvbi5cbiAgICogUGVuZGluZyBpbkFwcCBub3RpZmljYXRpb25zIGFyZSBkaXNwbGF5ZWQgb25seSBmb3IgY3VycmVudCBzZXNzaW9uLlxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzdXNwZW5kSW5BcHBOb3RpZmljYXRpb25zKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc2NhcmRzIGluQXBwIG5vdGlmaWNhdGlvbnMgdW50aWwgJ3Jlc3VtZUluQXBwTm90aWZpY2F0aW9ucycgaXMgY2FsbGVkIGZvciBjdXJyZW50IHNlc3Npb24uXG4gICAqIEF1dG9tYXRpY2FsbHkgcmVzdW1lcyBJbkFwcCBub3RpZmljYXRpb25zIGRpc3BsYXkgb24gQ2xldmVyVGFwIHNoYXJlZCBpbnN0YW5jZSBjcmVhdGlvbi5cbiAgICogUGVuZGluZyBpbkFwcCBub3RpZmljYXRpb25zIGFyZSBub3QgZGlzcGxheWVkLlxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBkaXNjYXJkSW5BcHBOb3RpZmljYXRpb25zKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc3VtZXMgZGlzcGxheWluZyBpbkFwcHMgbm90aWZpY2F0aW9ucyBhbmQgc2hvd3MgcGVuZGluZyBpbkFwcCBub3RpZmljYXRpb25zIGlmIGFueS5cbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcmVzdW1lSW5BcHBOb3RpZmljYXRpb25zKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKipcbiAgICogU2Vzc2lvblxuICAgKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBHZXQgU2Vzc2lvbiBFbGFwc2VkIFRpbWVcbiAgICogY2FsbHMgYmFjayB3aXRoIHNlY29uZHNcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2Vzc2lvbkdldFRpbWVFbGFwc2VkKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBTZXNzaW9uIFRvdGFsIFZpc2l0c1xuICAgKiBjYWxscyBiYWNrIHdpdGggd2l0aCBpbnQgb3IgLTFcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2Vzc2lvbkdldFRvdGFsVmlzaXRzKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBTZXNzaW9uIFNjcmVlbiBDb3VudFxuICAgKiBjYWxscyBiYWNrIHdpdGggd2l0aCBpbnRcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2Vzc2lvbkdldFNjcmVlbkNvdW50KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBTZXNzaW9uIFByZXZpb3VzIFZpc2l0IFRpbWVcbiAgICogY2FsbHMgYmFjayB3aXRoIHdpdGggZXBvY2ggc2Vjb25kcyBvciAtMVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXNzaW9uR2V0UHJldmlvdXNWaXNpdFRpbWUoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IFNlc3NzaW9uIFJlZmVycmVyIFVUTSBkZXRhaWxzXG4gICAqIG9iamVjdCB7XCJzb3VyY2VcIjogPHN0cmluZz4sIFwibWVkaXVtXCI6IDxzdHJpbmc+LCBcImNhbXBhaWduXCI6IDxzdHJpbmc+fSBvciBlbXB0eSBvYmplY3RcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2Vzc2lvbkdldFVUTURldGFpbHMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIG1hbnVhbGx5IHRyYWNrIHRoZSB1dG0gZGV0YWlscyBmb3IgYW4gaW5jb21pbmcgaW5zdGFsbCByZWZlcnJlclxuICAgKlxuICAgKiBAcGFyYW0gc291cmNlIHtzdHJpbmd9XG4gICAqIEBwYXJhbSBtZWRpdW0ge3N0cmluZ31cbiAgICogQHBhcmFtIGNhbXBhaWduIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHB1c2hJbnN0YWxsUmVmZXJyZXIoc291cmNlOiBzdHJpbmcsIG1lZGl1bTogc3RyaW5nLCBjYW1wYWlnbjogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiBOb3RpZmljYXRpb24gSW5ib3ggbWV0aG9kc1xuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIG1ldGhvZCB0byBpbml0aWFsaXplIHRoZSBBcHAgSW5ib3hcbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgaW5pdGlhbGl6ZUluYm94KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyBtZXRob2QgdG8gZ2V0IHRoZSBjb3VudCBvZiB1bnJlYWQgSW5ib3ggbWVzc2FnZXNcbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0SW5ib3hNZXNzYWdlVW5yZWFkQ291bnQoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIG1ldGhvZCB0byBnZXQgdGhlIGNvdW50IG9mIHRvdGFsIEluYm94IG1lc3NhZ2VzXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldEluYm94TWVzc2FnZUNvdW50KCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyBtZXRob2QgdG8gb3BlbiB0aGUgQXBwIEluYm94XG4gICAqXG4gICAqIEBwYXJhbSBzdHlsZUNvbmZpZyA6IGFueSBvciBlbXB0eSBvYmplY3RcbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgc2hvd0luYm94KHN0eWxlQ29uZmlnOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gRmV0Y2ggYWxsIEluYm94IE1lc3NhZ2VzXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldEFsbEluYm94TWVzc2FnZXMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEZldGNoIGFsbCBVbnJlYWQgSW5ib3ggTWVzc2FnZXNcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0VW5yZWFkSW5ib3hNZXNzYWdlcygpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gRmV0Y2ggSW5ib3ggTWVzc2FnZSBGb3IgSWRcbiAgICpcbiAgICogQHBhcmFtIG1lc3NhZ2VJZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRJbmJveE1lc3NhZ2VGb3JJZChtZXNzYWdlSWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBEZWxldGUgSW5ib3ggTWVzc2FnZSBGb3IgSWRcbiAgICpcbiAgICogQHBhcmFtIG1lc3NhZ2VJZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBkZWxldGVJbmJveE1lc3NhZ2VGb3JJZChtZXNzYWdlSWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBNYXJrIFJlYWQgSW5ib3ggTWVzc2FnZSBGb3IgSWRcbiAgICpcbiAgICogQHBhcmFtIG1lc3NhZ2VJZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBtYXJrUmVhZEluYm94TWVzc2FnZUZvcklkKG1lc3NhZ2VJZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIE1hcmsgUHVzaCBJbmJveCBOb3RpZmljYXRpb24gVmlld2VkIEV2ZW50IGZvciBJZFxuICAgKlxuICAgKiBAcGFyYW0gbWVzc2FnZUlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHB1c2hJbmJveE5vdGlmaWNhdGlvblZpZXdlZEV2ZW50Rm9ySWQobWVzc2FnZUlkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gTWFyayBQdXNoIEluYm94IE5vdGlmaWNhdGlvbiBDbGlja2VkIEV2ZW50IGZvciBJZFxuICAgKlxuICAgKiBAcGFyYW0gbWVzc2FnZUlkIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHB1c2hJbmJveE5vdGlmaWNhdGlvbkNsaWNrZWRFdmVudEZvcklkKG1lc3NhZ2VJZDogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBBbGwgRGlzcGxheSBVbml0c1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRBbGxEaXNwbGF5VW5pdHMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBEaXNwbGF5IFVuaXQgRm9yIElkXG4gICAqXG4gICAqIEBwYXJhbSBpZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXREaXNwbGF5VW5pdEZvcklkKGlkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gUHVzaCBEaXNwbGF5VW5pdCBWaWV3ZWQgRXZlbnQgZm9yIElEXG4gICAqXG4gICAqIEBwYXJhbSBpZCB7c3RyaW5nfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBwdXNoRGlzcGxheVVuaXRWaWV3ZWRFdmVudEZvcklEKGlkOiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gUHVzaCBEaXNwbGF5VW5pdCBDbGlja2VkIEV2ZW50IGZvciBJRFxuICAgKlxuICAgKiBAcGFyYW0gaWQge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgcHVzaERpc3BsYXlVbml0Q2xpY2tlZEV2ZW50Rm9ySUQoaWQ6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBHZXQgRmVhdHVyZSBGbGFnIGZvciBrZXlcbiAgICpcbiAgICogQHBhcmFtIGtleSB7c3RyaW5nfVxuICAgKiBAcGFyYW0gZGVmYXVsdFZhbHVlIHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldEZlYXR1cmVGbGFnKGtleTogc3RyaW5nLCBkZWZhdWx0VmFsdWU6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBTZXQgRGVmYXVsdHMgZm9yIFByb2R1Y3QgQ29uZmlnXG4gICAqXG4gICAqIEBwYXJhbSBkZWZhdWx0cyB7YW55fVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXREZWZhdWx0c01hcChkZWZhdWx0czogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIGZvciBQcm9kdWN0IENvbmZpZyBGZXRjaFxuICAgKlxuICAgKiBAcGFyYW0gZGVmYXVsdHMge2FueX1cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZmV0Y2goKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIGZvciBQcm9kdWN0IENvbmZpZyBGZXRjaCB3aXRoIE1pbiBJbnRlcnZhbFxuICAgKlxuICAgKiBAcGFyYW0gdGltZUludGVydmFsIHtudW1iZXJ9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGZldGNoV2l0aE1pbmltdW1GZXRjaEludGVydmFsSW5TZWNvbmRzKHRpbWVJbnRlcnZhbDogbnVtYmVyKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIGZvciBQcm9kdWN0IENvbmZpZyBBY3RpdmF0ZVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBhY3RpdmF0ZSgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgZm9yIFByb2R1Y3QgQ29uZmlnIEZldGNoIGFuZCBBY3RpdmF0ZVxuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBmZXRjaEFuZEFjdGl2YXRlKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBzZXQgUHJvZHVjdCBDb25maWcgRmV0Y2ggd2l0aCBNaW4gSW50ZXJ2YWxcbiAgICpcbiAgICogQHBhcmFtIHRpbWVJbnRlcnZhbCB7bnVtYmVyfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBzZXRNaW5pbXVtRmV0Y2hJbnRlcnZhbEluU2Vjb25kcyh0aW1lSW50ZXJ2YWw6IG51bWJlcik6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBHZXQgTGFzdCBGZXRjaCBUaW1lIEludGVydmFsXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldExhc3RGZXRjaFRpbWVTdGFtcEluTWlsbGlzKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBHZXQgU3RyaW5nXG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0U3RyaW5nKGtleTogc3RyaW5nKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FsbCB0aGlzIHRvIEdldCBCb29sZWFuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkge3N0cmluZ31cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0Qm9vbGVhbihrZXk6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBHZXQgTG9uZ1xuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldExvbmcoa2V5OiBzdHJpbmcpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsIHRoaXMgdG8gR2V0IERvdWJsZVxuICAgKlxuICAgKiBAcGFyYW0ga2V5IHtzdHJpbmd9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldERvdWJsZShrZXk6IHN0cmluZyk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGwgdGhpcyB0byBSZXNldCBQcm9kdWN0IENvbmZpZ1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZXNldCgpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqXG4gICAqIERldmVsb3BlciBPcHRpb25zXG4gICAqKioqKioqKioqKioqKioqKiovXG4gIC8qKlxuICAgKiAwIGlzIG9mZiwgMSBpcyBpbmZvLCAyIGlzIGRlYnVnLCBkZWZhdWx0IGlzIDFcbiAgICpcbiAgICogQHBhcmFtIGxldmVsIHtudW1iZXJ9XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHNldERlYnVnTGV2ZWwobGV2ZWw6IG51bWJlcik6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG59XG4iXX0=

@@ -1,1 +0,1 @@

{"description":"Awesome Cordova Plugins - Native plugins for ionic apps","main":"bundle.js","module":"index.js","typings":"index.d.ts","author":"Daniel Sogl","license":"MIT","repository":{"type":"git","url":"https://github.com/danielsogl/awesome-cordova-plugins.git"},"name":"@awesome-cordova-plugins/clevertap","dependencies":{"@types/cordova":"latest"},"peerDependencies":{"rxjs":"^5.5.0 || ^6.5.0 || ^7.3.0","@awesome-cordova-plugins/core":"^6.0.0-alpha.0"},"version":"6.0.0-alpha.4"}
{"description":"Awesome Cordova Plugins - Native plugins for ionic apps","main":"bundle.js","module":"index.js","typings":"index.d.ts","author":"ionic","license":"MIT","repository":{"type":"git","url":"https://github.com/danielsogl/awesome-cordova-plugins.git"},"name":"@awesome-cordova-plugins/clevertap","dependencies":{"@types/cordova":"latest"},"peerDependencies":{"rxjs":"^5.5.0 || ^6.5.0 || ^7.3.0","@awesome-cordova-plugins/core":"^5.1.0"},"version":"6.0.0"}

@@ -1,1 +0,1 @@

{"description":"Awesome Cordova Plugins - Native plugins for ionic apps","main":"bundle.js","module":"index.js","typings":"index.d.ts","author":"Daniel Sogl","license":"MIT","repository":{"type":"git","url":"https://github.com/danielsogl/awesome-cordova-plugins.git"},"name":"@awesome-cordova-plugins/clevertap","dependencies":{"@types/cordova":"latest"},"peerDependencies":{"rxjs":"^5.5.0 || ^6.5.0 || ^7.3.0","@awesome-cordova-plugins/core":"^6.0.0-alpha.0"},"version":"6.0.0-alpha.4"}
{"description":"Awesome Cordova Plugins - Native plugins for ionic apps","main":"bundle.js","module":"index.js","typings":"index.d.ts","author":"ionic","license":"MIT","repository":{"type":"git","url":"https://github.com/danielsogl/awesome-cordova-plugins.git"},"name":"@awesome-cordova-plugins/clevertap","dependencies":{"@types/cordova":"latest"},"peerDependencies":{"rxjs":"^5.5.0 || ^6.5.0 || ^7.3.0","@awesome-cordova-plugins/core":"^5.1.0"},"version":"6.0.0"}
SocketSocket SOC 2 Logo

Product

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

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc