UNPKG

34.2 kBJavaScriptView Raw
1var __extends = (this && this.__extends) || (function () {
2 var extendStatics = function (d, b) {
3 extendStatics = Object.setPrototypeOf ||
4 ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5 function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
6 return extendStatics(d, b);
7 };
8 return function (d, b) {
9 extendStatics(d, b);
10 function __() { this.constructor = d; }
11 d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12 };
13})();
14import { IonicNativePlugin, cordova } from '@ionic-native/core';
15import { Observable } from 'rxjs';
16export var ELocalNotificationTriggerUnit;
17(function (ELocalNotificationTriggerUnit) {
18 ELocalNotificationTriggerUnit["SECOND"] = "second";
19 ELocalNotificationTriggerUnit["MINUTE"] = "minute";
20 ELocalNotificationTriggerUnit["HOUR"] = "hour";
21 ELocalNotificationTriggerUnit["DAY"] = "day";
22 ELocalNotificationTriggerUnit["WEEK"] = "week";
23 ELocalNotificationTriggerUnit["MONTH"] = "month";
24 ELocalNotificationTriggerUnit["QUARTER"] = "quarter";
25 ELocalNotificationTriggerUnit["YEAR"] = "year";
26 ELocalNotificationTriggerUnit["WEEKDAY"] = "weekday";
27 ELocalNotificationTriggerUnit["WEEKDAY_ORDINAL"] = "weekdayOrdinal";
28 ELocalNotificationTriggerUnit["WEEK_OF_MONTH"] = "weekOfMonth";
29})(ELocalNotificationTriggerUnit || (ELocalNotificationTriggerUnit = {}));
30export var ILocalNotificationActionType;
31(function (ILocalNotificationActionType) {
32 ILocalNotificationActionType["INPUT"] = "input";
33 ILocalNotificationActionType["BUTTON"] = "button";
34})(ILocalNotificationActionType || (ILocalNotificationActionType = {}));
35var LocalNotificationsOriginal = /** @class */ (function (_super) {
36 __extends(LocalNotificationsOriginal, _super);
37 function LocalNotificationsOriginal() {
38 return _super !== null && _super.apply(this, arguments) || this;
39 }
40 LocalNotificationsOriginal.prototype.hasPermission = function () { return cordova(this, "hasPermission", {}, arguments); };
41 LocalNotificationsOriginal.prototype.requestPermission = function () { return cordova(this, "requestPermission", {}, arguments); };
42 LocalNotificationsOriginal.prototype.schedule = function (options) { return cordova(this, "schedule", { "sync": true }, arguments); };
43 LocalNotificationsOriginal.prototype.update = function (options) { return cordova(this, "update", { "sync": true }, arguments); };
44 LocalNotificationsOriginal.prototype.clear = function (notificationId) { return cordova(this, "clear", {}, arguments); };
45 LocalNotificationsOriginal.prototype.clearAll = function () { return cordova(this, "clearAll", {}, arguments); };
46 LocalNotificationsOriginal.prototype.cancel = function (notificationId) { return cordova(this, "cancel", {}, arguments); };
47 LocalNotificationsOriginal.prototype.cancelAll = function () { return cordova(this, "cancelAll", {}, arguments); };
48 LocalNotificationsOriginal.prototype.isPresent = function (notificationId) { return cordova(this, "isPresent", {}, arguments); };
49 LocalNotificationsOriginal.prototype.isScheduled = function (notificationId) { return cordova(this, "isScheduled", {}, arguments); };
50 LocalNotificationsOriginal.prototype.isTriggered = function (notificationId) { return cordova(this, "isTriggered", {}, arguments); };
51 LocalNotificationsOriginal.prototype.hasType = function (id, type) { return cordova(this, "hasType", {}, arguments); };
52 LocalNotificationsOriginal.prototype.getType = function (id) { return cordova(this, "getType", {}, arguments); };
53 LocalNotificationsOriginal.prototype.getIds = function () { return cordova(this, "getIds", {}, arguments); };
54 LocalNotificationsOriginal.prototype.getScheduledIds = function () { return cordova(this, "getScheduledIds", {}, arguments); };
55 LocalNotificationsOriginal.prototype.getTriggeredIds = function () { return cordova(this, "getTriggeredIds", {}, arguments); };
56 LocalNotificationsOriginal.prototype.get = function (notificationId) { return cordova(this, "get", {}, arguments); };
57 LocalNotificationsOriginal.prototype.getAll = function () { return cordova(this, "getAll", {}, arguments); };
58 LocalNotificationsOriginal.prototype.getScheduled = function (notificationId) { return cordova(this, "getScheduled", {}, arguments); };
59 LocalNotificationsOriginal.prototype.getTriggered = function (notificationId) { return cordova(this, "getTriggered", {}, arguments); };
60 LocalNotificationsOriginal.prototype.addActions = function (groupId, actions) { return cordova(this, "addActions", {}, arguments); };
61 LocalNotificationsOriginal.prototype.removeActions = function (groupId) { return cordova(this, "removeActions", {}, arguments); };
62 LocalNotificationsOriginal.prototype.hasActions = function (groupId) { return cordova(this, "hasActions", {}, arguments); };
63 LocalNotificationsOriginal.prototype.getDefaults = function () { return cordova(this, "getDefaults", { "sync": true }, arguments); };
64 LocalNotificationsOriginal.prototype.setDefaults = function (defaults) { return cordova(this, "setDefaults", { "sync": true }, arguments); };
65 LocalNotificationsOriginal.prototype.getAllScheduled = function () { return cordova(this, "getAllScheduled", {}, arguments); };
66 LocalNotificationsOriginal.prototype.getAllTriggered = function () { return cordova(this, "getAllTriggered", {}, arguments); };
67 LocalNotificationsOriginal.prototype.on = function (eventName) { return cordova(this, "on", { "observable": true, "clearFunction": "un", "clearWithArgs": true }, arguments); };
68 LocalNotificationsOriginal.prototype.fireEvent = function (eventName, args) { return cordova(this, "fireEvent", { "sync": true }, arguments); };
69 LocalNotificationsOriginal.prototype.fireQueuedEvents = function () { return cordova(this, "fireQueuedEvents", {}, arguments); };
70 LocalNotificationsOriginal.pluginName = "LocalNotifications";
71 LocalNotificationsOriginal.plugin = "cordova-plugin-local-notification";
72 LocalNotificationsOriginal.pluginRef = "cordova.plugins.notification.local";
73 LocalNotificationsOriginal.repo = "https://github.com/katzer/cordova-plugin-local-notifications";
74 LocalNotificationsOriginal.platforms = ["Android", "iOS", "Windows"];
75 return LocalNotificationsOriginal;
76}(IonicNativePlugin));
77var LocalNotifications = new LocalNotificationsOriginal();
78export { LocalNotifications };
79//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvQGlvbmljLW5hdGl2ZS9wbHVnaW5zL2xvY2FsLW5vdGlmaWNhdGlvbnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUNBLE9BQU8sOEJBQXNDLE1BQU0sb0JBQW9CLENBQUM7QUFDeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVsQyxNQUFNLENBQU4sSUFBWSw2QkFZWDtBQVpELFdBQVksNkJBQTZCO0lBQ3ZDLGtEQUFpQixDQUFBO0lBQ2pCLGtEQUFpQixDQUFBO0lBQ2pCLDhDQUFhLENBQUE7SUFDYiw0Q0FBVyxDQUFBO0lBQ1gsOENBQWEsQ0FBQTtJQUNiLGdEQUFlLENBQUE7SUFDZixvREFBbUIsQ0FBQTtJQUNuQiw4Q0FBYSxDQUFBO0lBQ2Isb0RBQW1CLENBQUE7SUFDbkIsbUVBQWtDLENBQUE7SUFDbEMsOERBQTZCLENBQUE7QUFDL0IsQ0FBQyxFQVpXLDZCQUE2QixLQUE3Qiw2QkFBNkIsUUFZeEM7QUEwSUQsTUFBTSxDQUFOLElBQVksNEJBR1g7QUFIRCxXQUFZLDRCQUE0QjtJQUN0QywrQ0FBZSxDQUFBO0lBQ2YsaURBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUhXLDRCQUE0QixLQUE1Qiw0QkFBNEIsUUFHdkM7O0lBMlh1QyxzQ0FBaUI7Ozs7SUFNdkQsMENBQWE7SUFTYiw4Q0FBaUI7SUFXakIscUNBQVEsYUFBQyxPQUFtRDtJQVM1RCxtQ0FBTSxhQUFDLE9BQTRCO0lBUW5DLGtDQUFLLGFBQUMsY0FBbUI7SUFTekIscUNBQVE7SUFVUixtQ0FBTSxhQUFDLGNBQW1CO0lBUzFCLHNDQUFTO0lBVVQsc0NBQVMsYUFBQyxjQUFzQjtJQVVoQyx3Q0FBVyxhQUFDLGNBQXNCO0lBVWxDLHdDQUFXLGFBQUMsY0FBc0I7SUFXbEMsb0NBQU8sYUFBQyxFQUFVLEVBQUUsSUFBWTtJQVNoQyxvQ0FBTyxhQUFDLEVBQVU7SUFTbEIsbUNBQU07SUFTTiw0Q0FBZTtJQVNmLDRDQUFlO0lBVWYsZ0NBQUcsYUFBQyxjQUFtQjtJQVN2QixtQ0FBTTtJQVVOLHlDQUFZLGFBQUMsY0FBbUI7SUFVaEMseUNBQVksYUFBQyxjQUFtQjtJQVdoQyx1Q0FBVSxhQUFDLE9BQVksRUFBRSxPQUFtQztJQVU1RCwwQ0FBYSxhQUFDLE9BQVk7SUFVMUIsdUNBQVUsYUFBQyxPQUFZO0lBV3ZCLHdDQUFXO0lBV1gsd0NBQVcsYUFBQyxRQUFhO0lBU3pCLDRDQUFlO0lBU2YsNENBQWU7SUFjZiwrQkFBRSxhQUFDLFNBQWlCO0lBWXBCLHNDQUFTLGFBQUMsU0FBaUIsRUFBRSxJQUFTO0lBT3RDLDZDQUFnQjs7Ozs7OzZCQTN6QmxCO0VBd2hCd0MsaUJBQWlCO1NBQTVDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvcmRvdmEsIElvbmljTmF0aXZlUGx1Z2luLCBQbHVnaW4gfSBmcm9tICdAaW9uaWMtbmF0aXZlL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgZW51bSBFTG9jYWxOb3RpZmljYXRpb25UcmlnZ2VyVW5pdCB7XG4gIFNFQ09ORCA9ICdzZWNvbmQnLFxuICBNSU5VVEUgPSAnbWludXRlJyxcbiAgSE9VUiA9ICdob3VyJyxcbiAgREFZID0gJ2RheScsXG4gIFdFRUsgPSAnd2VlaycsXG4gIE1PTlRIID0gJ21vbnRoJyxcbiAgUVVBUlRFUiA9ICdxdWFydGVyJyxcbiAgWUVBUiA9ICd5ZWFyJyxcbiAgV0VFS0RBWSA9ICd3ZWVrZGF5JyxcbiAgV0VFS0RBWV9PUkRJTkFMID0gJ3dlZWtkYXlPcmRpbmFsJyxcbiAgV0VFS19PRl9NT05USCA9ICd3ZWVrT2ZNb250aCcsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvY2FsTm90aWZpY2F0aW9uRXZlcnkge1xuICAvKipcbiAgICogVGhlIG1pbnV0ZS5cbiAgICovXG4gIG1pbnV0ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIGhvdXIuXG4gICAqL1xuICBob3VyPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgZGF5LlxuICAgKi9cbiAgZGF5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgZGF5IG9mIHdlZWsuXG4gICAqL1xuICB3ZWVrZGF5PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgd2VlayBvZiB5ZWFkYXkgb2YgdGhlIGFyZGluYWwgd2Vlay5cbiAgICovXG4gIHdlZWs/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBkYXkgb2YgdGhlIG9yZGluYWwgd2Vlay5cbiAgICovXG4gIHdlZWtkYXlPcmRpbmFsPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgd2VlayBvZiBtb250aC5cbiAgICovXG4gIHdlZWtPZk1vbnRoPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgbW9udGguXG4gICAqL1xuICBtb250aD86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHF1YXJ0ZXIuXG4gICAqL1xuICBxdWFydGVyPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgeWVhci5cbiAgICovXG4gIHllYXI/OiBudW1iZXI7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUxvY2FsTm90aWZpY2F0aW9uVHJpZ2dlciB7XG4gIC8qKiAqKioqKiBGSVggKioqKiogKi9cblxuICAvKipcbiAgICogVGhlIGRhdGUgYW5kIHRpbWUgd2hlbiB0aGUgc3lzdGVtIHNob3VsZCBkZWxpdmVyIHRoZSBsb2NhbCBub3RpZmljYXRpb24uIElmIHRoZSBzcGVjaWZpZWQgdmFsdWUgaXMgbmlsIG9yIGlzIGEgZGF0ZSBpbiB0aGUgcGFzdCwgdGhlIGxvY2FsIG5vdGlmaWNhdGlvbiBpcyBkZWxpdmVyZWQgaW1tZWRpYXRlbHkuXG4gICAqIERlZmF1bHQ6IG5vdyB+IG5ldyBEYXRlKClcbiAgICovXG4gIGF0PzogRGF0ZTtcblxuICAvKiogKioqKiogVElNRVNQQU4gKioqKiogKi9cblxuICAvKipcbiAgICogQW1vdW50IG9mIHVuaXRzXG4gICAqL1xuICBpbj86IG51bWJlcjtcblxuICAvKipcbiAgICogVW5pdFxuICAgKi9cbiAgdW5pdD86IEVMb2NhbE5vdGlmaWNhdGlvblRyaWdnZXJVbml0O1xuXG4gIC8qKiAqKioqKiBSRVBFQVQvTUFUQ0ggKioqKiogKi9cblxuICAvKipcbiAgICogQW1vdW50IG9mIHVuaXRzXG4gICAqL1xuICBjb3VudD86IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHVuaXRcbiAgICovXG4gIGV2ZXJ5PzogRUxvY2FsTm90aWZpY2F0aW9uVHJpZ2dlclVuaXQgfCBJTG9jYWxOb3RpZmljYXRpb25FdmVyeTtcblxuICAvKipcbiAgICogVGhlIGVuZCBvZiB0aGUgcmVwZWF0aW5nIG5vdGlmaWNhdGlvblxuICAgKi9cbiAgYmVmb3JlPzogRGF0ZTtcblxuICAvKipcbiAgICogVGhlIGRhdGUgYW5kIHRpbWUgd2hlbiB0aGUgc3lzdGVtIHNob3VsZCBkZWxpdmVyIHRoZSBsb2NhbCBub3RpZmljYXRpb24uIElmIHRoZSBzcGVjaWZpZWQgdmFsdWUgaXMgbmlsIG9yIGlzIGEgZGF0ZSBpbiB0aGUgcGFzdCwgdGhlIGxvY2FsIG5vdGlmaWNhdGlvbiBpcyBkZWxpdmVyZWQgaW1tZWRpYXRlbHkuXG4gICAqIE9ubHkgZm9yIFwicmVwZWF0XCJcbiAgICogRGVmYXVsdDogbm93IH4gbmV3IERhdGUoKVxuICAgKi9cbiAgZmlyc3RBdD86IERhdGU7XG5cbiAgLyoqXG4gICAqIE9ubHkgZm9yIFwibWF0Y2hcIlxuICAgKi9cbiAgYWZ0ZXI/OiBEYXRlO1xuXG4gIC8qKiAqKioqKiBMT0NBVElPTiAqKioqKiAqL1xuXG4gIC8qKlxuICAgKiBJT1MgT05MWVxuICAgKiBDZW50ZXIgb2YgdGhlIGxvY2F0aW9uXG4gICAqIExhdGl0dWRlIGFuZCBMb25naXR1ZGUgdmFsdWVzXG4gICAqL1xuICBjZW50ZXI/OiBudW1iZXJbXTtcblxuICAvKipcbiAgICogSU9TIE9OTFlcbiAgICogUmFkaXVzIGluIG1ldGVyc1xuICAgKi9cbiAgcmFkaXVzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBJT1MgT05MWVxuICAgKiBUcmlnZ2VyIG9uIGVudHJ5IG9mIHRoZSBsb2NhdGlvblxuICAgKi9cbiAgbm90aWZ5T25FbnRyeT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElPUyBPTkxZXG4gICAqIFRyaWdnZXIgb24gZXhpdCBvZiB0aGUgbG9jYXRpb25cbiAgICovXG4gIG5vdGlmeU9uRXhpdD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElPUyBPTkxZXG4gICAqIFRyaWdnZXIgb25seSBvbmNlP1xuICAgKi9cbiAgc2luZ2xlPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGVudW0gSUxvY2FsTm90aWZpY2F0aW9uQWN0aW9uVHlwZSB7XG4gIElOUFVUID0gJ2lucHV0JyxcbiAgQlVUVE9OID0gJ2J1dHRvbicsXG59XG5cbi8qKlxuICogTm90aWZpY2F0aW9uIGFjdGlvblxuICpcbiAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2thdHplci9jb3Jkb3ZhLXBsdWdpbi1sb2NhbC1ub3RpZmljYXRpb25zI2FjdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJTG9jYWxOb3RpZmljYXRpb25BY3Rpb24ge1xuICAvKipcbiAgICogVGhlIGlkIG9mIHRoZSBhY3Rpb24gaXMgdXNlZCBhcyB0aGUgZXZlbnQgbmFtZSBpbiB0aGUgbGlzdGVuZXIgZnVuY3Rpb25cbiAgICovXG4gIGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGl0bGUgb2YgdGhlIG5vdGlmaWNhdGlvbiBtZXNzYWdlXG4gICAqL1xuICB0aXRsZT86IHN0cmluZztcblxuICAvKipcbiAgICogTWFrZSB0aGlzIG5vdGlmaWNhdGlvbiBzaG93IHdoZW4gYXBwIGluIGZvcmVncm91bmQuXG4gICAqL1xuICBmb3JlZ3JvdW5kPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdGhlIGFjdGlvbiBjYXVzZXMgdGhlIGFwcCB0byBsYXVuY2ggaW4gdGhlIGZvcmVncm91bmRcbiAgICovXG4gIGxhdW5jaD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIElmIHRoZSB2YWx1ZSBpcyAnZGVjbGluZScgdGhlIGFjdGlvbiBpcyBkaXNwbGF5ZWQgd2l0aCBzcGVjaWFsIGhpZ2hsaWdodGluZyB0byBpbmRpY2F0ZSB0aGF0IGl0IHBlcmZvcm1zIGEgZGVzdHJ1Y3RpdmUgdGFza1xuICAgKi9cbiAgdWk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB3aGV0aGVyIHRoZSBhY3Rpb24gcmVxdWlyZXMgdGhhdCB0aGUgdXNlcuKAmXMgZGV2aWNlIGJlIHVubG9ja2VkLlxuICAgKiBXaGVuIHRoZSB1c2VyIHNlbGVjdHMgYW4gYWN0aW9uIHdpdGggdGhpcyBvcHRpb24sIHRoZSBzeXN0ZW0gcHJvbXB0c1xuICAgKiB0aGUgdXNlciB0byB1bmxvY2sgdGhlIGRldmljZVxuICAgKi9cbiAgbmVlZHNBdXRoPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIHJlc291cmNlIHBhdGggb2YgdGhlIGFjdGlvbiBpY29uXG4gICAqL1xuICBpY29uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBTkRST0lEIE9OTFlcbiAgICogQW4gYXJyYXkgb2YgcHJlLWRlZmluZWQgY2hvaWNlcyBmb3IgdXNlcnMgaW5wdXRcbiAgICovXG4gIGNob2ljZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIFNwZWNpZmllcyB3aGV0aGVyIHRoZSB1c2VyIGNhbiBwcm92aWRlIGFyYml0cmFyeSB0ZXh0IHZhbHVlc1xuICAgKi9cbiAgZWRpdGFibGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJT1MgT05MWVxuICAgKiBUaGUgdGl0bGUgb2YgdGhlIHRleHQgaW5wdXQgYnV0dG9uIHRoYXQgaXMgZGlzcGxheWVkIHRvIHRoZSB1c2VyLlxuICAgKi9cbiAgc3VibWl0VGl0bGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIHRoZSBhY3Rpb24uIElmIG9taXR0ZWQgJ2J1dHRvbicgaXMgdXNlZC5cbiAgICovXG4gIHR5cGU/OiBJTG9jYWxOb3RpZmljYXRpb25BY3Rpb25UeXBlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElMb2NhbE5vdGlmaWNhdGlvblByb2dyZXNzQmFyIHtcbiAgLyoqXG4gICAqIElzIHRoZSBwcm9ncmVzcyBiYXIgZW5hYmxlZD9cbiAgICovXG4gIGVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgY3VycmVudCB2YWx1ZVxuICAgKi9cbiAgdmFsdWU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBUaGUgbWF4aW11bSB2YWx1ZSAoZGVmYXVsdCBpcyAxMDApXG4gICAqL1xuICBtYXhWYWx1ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIFNob3cgYW4gaW5kZXRlcm1pbmF0ZSBwcm9ncmVzcyBiYXJcbiAgICovXG4gIGluZGV0ZXJtaW5hdGU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBXSU5ET1dTIE9OTFlcbiAgICogR2V0cyBvciBzZXRzIGFuIG9wdGlvbmFsIHN0cmluZyB0byBiZSBkaXNwbGF5ZWQgaW5zdGVhZCBvZiB0aGVcbiAgICogZGVmYXVsdCBwZXJjZW50YWdlIHN0cmluZy4gSWYgdGhpcyBpc24ndCBwcm92aWRlZCwgc29tZXRoaW5nXG4gICAqIGxpa2UgXCI3MCVcIiB3aWxsIGJlIGRpc3BsYXllZC5cbiAgICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXSU5ET1dTIE9OTFlcbiAgICogU2V0cyB0aGUgc3RhdHVzIChyZXF1aXJlZCksIHdoaWNoIGlzIGRpc3BsYXllZCB1bmRlcm5lYXRoIHRoZSBwcm9ncmVzcyBiYXJcbiAgICogb24gdGhlIGxlZnQuXG4gICAqIFRoaXMgc3RyaW5nIHNob3VsZCByZWZsZWN0IHRoZSBzdGF0dXMgb2YgdGhlIG9wZXJhdGlvbixcbiAgICogbGlrZSBcIkRvd25sb2FkaW5nLi4uXCIgb3IgXCJJbnN0YWxsaW5nLi4uXCJcbiAgICovXG4gIHN0YXR1cz86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJTG9jYWxOb3RpZmljYXRpb24ge1xuICAvKipcbiAgICogQSB1bmlxdWUgaWRlbnRpZmllciByZXF1aXJlZCB0byBjbGVhciwgY2FuY2VsLCB1cGRhdGUgb3IgcmV0cmlldmUgdGhlIGxvY2FsIG5vdGlmaWNhdGlvbiBpbiB0aGUgZnV0dXJlXG4gICAqIERlZmF1bHQ6IDBcbiAgICovXG4gIGlkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGaXJzdCByb3cgb2YgdGhlIG5vdGlmaWNhdGlvblxuICAgKiBEZWZhdWx0OiBFbXB0eSBzdHJpbmcgKGlPUykgb3IgdGhlIGFwcCBuYW1lIChBbmRyb2lkKVxuICAgKi9cbiAgdGl0bGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNlY29uZCByb3cgb2YgdGhlIG5vdGlmaWNhdGlvblxuICAgKiBEZWZhdWx0OiBFbXB0eSBzdHJpbmdcbiAgICovXG4gIHRleHQ/OiBzdHJpbmcgfCBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBjdXJyZW50bHkgc2V0IGFzIHRoZSBiYWRnZSBvZiB0aGUgYXBwIGljb24gaW4gU3ByaW5nYm9hcmQgKGlPUykgb3IgYXQgdGhlIHJpZ2h0LWhhbmQgc2lkZSBvZiB0aGUgbG9jYWwgbm90aWZpY2F0aW9uIChBbmRyb2lkKVxuICAgKiBEZWZhdWx0OiAwICh3aGljaCBtZWFucyBkb24ndCBzaG93IGEgbnVtYmVyKVxuICAgKi9cbiAgYmFkZ2U/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFVyaSBvZiB0aGUgZmlsZSBjb250YWluaW5nIHRoZSBzb3VuZCB0byBwbGF5IHdoZW4gYW4gYWxlcnQgaXMgZGlzcGxheWVkXG4gICAqIERlZmF1bHQ6IHJlczovL3BsYXRmb3JtX2RlZmF1bHRcbiAgICovXG4gIHNvdW5kPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBcmJpdHJhcnkgZGF0YSwgb2JqZWN0cyB3aWxsIGJlIGVuY29kZWQgdG8gSlNPTiBzdHJpbmdcbiAgICogRGVmYXVsdDogbnVsbFxuICAgKi9cbiAgZGF0YT86IGFueTtcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIFVyaSBvZiB0aGUgaWNvbiB0aGF0IGlzIHNob3duIGluIHRoZSB0aWNrZXIgYW5kIG5vdGlmaWNhdGlvblxuICAgKiBEZWZhdWx0OiByZXM6Ly9pY29uXG4gICAqL1xuICBpY29uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBTkRST0lEIE9OTFlcbiAgICogVXJpIG9mIHRoZSByZXNvdXJjZSAob25seSByZXM6Ly8pIHRvIHVzZSBpbiB0aGUgbm90aWZpY2F0aW9uIGxheW91dHMuIERpZmZlcmVudCBjbGFzc2VzIG9mIGRldmljZXMgbWF5IHJldHVybiBkaWZmZXJlbnQgc2l6ZXNcbiAgICogRGVmYXVsdDogcmVzOi8vaWNfcG9wdXBfcmVtaW5kZXJcbiAgICovXG4gIHNtYWxsSWNvbj86IHN0cmluZztcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIFJHQiB2YWx1ZSBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHNtYWxsSWNvbi5cbiAgICogRGVmYXVsdDogQW5kcm9pZHMgQ09MT1JfREVGQVVMVCwgd2hpY2ggd2lsbCB2YXJ5IGJhc2VkIG9uIEFuZHJvaWQgdmVyc2lvbi5cbiAgICovXG4gIGNvbG9yPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBTkRST0lEIE9OTFlcbiAgICogVXNlIHRoZSBkZWZhdWx0IG5vdGlmaWNhdGlvbiB2aWJyYXRlLlxuICAgKi9cbiAgdmlicmF0ZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBEZWZpbmUgdGhlIGJsaW5raW5nIG9mIHRoZSBMRUQgb24gdGhlIGRldmljZS5cbiAgICogSWYgc2V0IHRvIHRydWUsIHRoZSBMRUQgd2lsbCBibGluayBpbiB0aGUgZGVmYXVsdCBjb2xvciB3aXRoXG4gICAqIHRpbWluZ3MgZm9yIG9uIGFuZCBvZmYgc2V0IHRvIDEwMDAgbXMuXG4gICAqIElmIHNldCB0byBhIHN0cmluZywgdGhlIExFRCB3aWxsIGJsaW5rIGluIHRoaXMgQVJHQiB2YWx1ZSB3aXRoXG4gICAqIHRpbWluZ3MgZm9yIG9uIGFuZCBvZmYgc2V0IHRvIDEwMDAgbXMuXG4gICAqIElmIHNldCB0byBhbiBhcnJheSwgdGhlIHZhbHVlIG9mIHRoZSBrZXkgMCB3aWxsIGJlIHVzZWQgYXMgdGhlIGNvbG9yLFxuICAgKiB0aGUgdmFsdWUgb2YgdGhlIGtleSAxIHdpbGwgYmUgdXNlZCBhcyB0aGUgJ29uJyB0aW1pbmcsIHRoZSB2YWx1ZSBvZlxuICAgKiB0aGUga2V5IDIgd2lsbCBiZSB1c2VkIGFzIHRoZSAnb2ZmJyB0aW1pbmdcbiAgICovXG4gIGxlZD86IHsgY29sb3I6IHN0cmluZzsgb246IG51bWJlcjsgb2ZmOiBudW1iZXIgfSB8IGFueVtdIHwgYm9vbGVhbiB8IHN0cmluZztcblxuICAvKipcbiAgICogTm90aWZpY2F0aW9uIHByaW9yaXR5LlxuICAgKiBJbnRlZ2VycyBiZXR3ZWVuIC0yIGFuZCAyLCB3aGVyZWFzIC0yIGlzIG1pbmltdW0gYW5kIDIgaXMgbWF4aW11bSBwcmlvcml0eVxuICAgKi9cbiAgcHJpb3JpdHk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIElzIGEgc2lsZW50IG5vdGlmaWNhdGlvblxuICAgKi9cbiAgc2lsZW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgdGhlIGEgY2xpY2sgb24gdGhlIG5vdGlmaWNhdGlvbiBjYXVzZXMgdGhlIGFwcFxuICAgKiB0byBsYXVuY2ggaW4gdGhlIGZvcmVncm91bmRcbiAgICovXG4gIGxhdW5jaD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBXYWtldXAgdGhlIGRldmljZS4gKGRlZmF1bHQgaXMgdHJ1ZSlcbiAgICovXG4gIHdha2V1cD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBTcGVjaWZpZXMgYSBkdXJhdGlvbiBpbiBtaWxsaXNlY29uZHMgYWZ0ZXIgd2hpY2ggdGhpcyBub3RpZmljYXRpb24gc2hvdWxkIGJlIGNhbmNlbGVkLCBpZiBpdCBpcyBub3QgYWxyZWFkeSBjYW5jZWxlZC5cbiAgICovXG4gIHRpbWVvdXRBZnRlcj86IG51bWJlciB8IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBBY3Rpb25zIGlkIG9yIGFjdGlvbnNcbiAgICovXG4gIGFjdGlvbnM/OiBzdHJpbmcgfCBJTG9jYWxOb3RpZmljYXRpb25BY3Rpb25bXTtcblxuICAvKipcbiAgICogV2hlbiB0byB0cmlnZ2VyIHRoZSBub3RpZmljYXRpb25cbiAgICovXG4gIHRyaWdnZXI/OiBJTG9jYWxOb3RpZmljYXRpb25UcmlnZ2VyO1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgaW1hZ2UgYXR0YWNobWVudHNcbiAgICovXG4gIGF0dGFjaG1lbnRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBJZiBhbmQgaG93IHRoZSBub3RpZmljYXRpb24gc2hhbGwgc2hvdyB0aGUgd2hlbiBkYXRlLlxuICAgKiBQb3NzYmlsZSB2YWx1ZXM6XG4gICAqICAgICAgICAgICAgICAgICAgYm9vbGVhbjogdHJ1ZSBlcXVhbHMgJ2Nsb2NrJywgZmFsc2UgZGlzYWJsZSBhIHdhdGNoL2NvdW50ZXJcbiAgICogICAgICAgICAgICAgICAgICAnY2xvY2snOiBTaG93IHRoZSB3aGVuIGRhdGUgaW4gdGhlIGNvbnRlbnQgdmlld1xuICAgKiAgICAgICAgICAgICAgICAgICdjaHJvbm9tZXRlcic6IFNob3cgYSBzdG9wd2F0Y2hcbiAgICpcbiAgICovXG4gIGNsb2NrPzogYm9vbGVhbiB8IHN0cmluZztcblxuICAvKipcbiAgICogU2hvd3MgYSBwcm9ncmVzcyBiYXJcbiAgICogU2V0dGluZyBhIGJvb2xlYW4gaXMgYSBzaG9ydGN1dCBmb3Ige2VuYWJsZWQ6IHRydWUvZmFsc2V9IHJlc3BlY3RpdmVseVxuICAgKi9cbiAgcHJvZ3Jlc3NCYXI/OiBJTG9jYWxOb3RpZmljYXRpb25Qcm9ncmVzc0JhciB8IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBJZiBtdWx0aXBsZSBub3RpZmljYXRpb25zIGhhdmUgdGhlIHNhbWUgZ3JvdXAgeW91ciBhcHAgY2FuIHByZXNlbnRcbiAgICogdGhlbSBhcyBhIHNpbmdsZSBncm91cC5cbiAgICovXG4gIGdyb3VwPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBTkRST0lEIE9OTFlcbiAgICogSWYgc2V0IHRvICd0cnVlJyB0aGlzIG5vdGlmaWNhdGlvbiBjb3VsZCB1c2UgJ3N1bW1hcnknIHRvIHN1bW1hcml6ZVxuICAgKiB0aGUgY29udGVudHMgb2YgdGhlIHdob2xlIGdyb3VwXG4gICAqL1xuICBncm91cFN1bW1hcnk/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBTkRST0lEIE9OTFlcbiAgICogU3VtbWFyeSBvZiB0aGUgd2hvbGUgbm90aWZpY2F0aW9uIGdyb3VwLiBTaG91bGQgYmUgdXNlZCBpbiBjb25qdW50aW9uXG4gICAqIHdpdGggJ2dyb3VwU3VtbWFyeScgc2V0IHRvIHRydWVcbiAgICovXG4gIHN1bW1hcnk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBTZXRzIHRoZSBudW1iZXIgb2YgaXRlbXMgdGhpcyBub3RpZmljYXRpb24gcmVwcmVzZW50cy5cbiAgICovXG4gIG51bWJlcj86IG51bWJlcjtcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIFNldCB3aGV0aGVyIHRoaXMgaXMgYW4gXCJvbmdvaW5nXCIgbm90aWZpY2F0aW9uLlxuICAgKiBPbmdvaW5nIG5vdGlmaWNhdGlvbnMgY2Fubm90IGJlIGRpc21pc3NlZCBieSB0aGUgdXNlcixcbiAgICogc28geW91ciBhcHBsaWNhdGlvbiBvciBzZXJ2aWNlIG11c3QgdGFrZSBjYXJlIG9mIGNhbmNlbGluZyB0aGVtLlxuICAgKi9cbiAgc3RpY2t5PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIE1ha2UgdGhpcyBub3RpZmljYXRpb24gYXV0b21hdGljYWxseSBkaXNtaXNzZWQgd2hlbiB0aGUgdXNlciB0b3VjaGVzIGl0LlxuICAgKi9cbiAgYXV0b0NsZWFyPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIElmIHNldCB0byB0cnVlIHRoZSBub3RpZmljYXRpb24gd2lsbCBiZSBzaG93IGluIGl0cyBlbnRpcmV0eSBvbiBhbGwgbG9ja3NjcmVlbnMuXG4gICAqIElmIHNldCB0byBmYWxzZSBpdCB3aWxsIG5vdCBiZSByZXZlYWxlZCBvbiBhIHNlY3VyZSBsb2Nrc2NyZWVuLlxuICAgKi9cbiAgbG9ja3NjcmVlbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBTZXQgdGhlIGRlZmF1bHQgbm90aWZpY2F0aW9uIG9wdGlvbnMgdGhhdCB3aWxsIGJlIHVzZWQuXG4gICAqIFRoZSB2YWx1ZSBzaG91bGQgYmUgb25lIG9yIG1vcmUgb2YgdGhlIGZvbGxvd2luZyBmaWVsZHMgY29tYmluZWQgd2l0aFxuICAgKiBiaXR3aXNlLW9yOiBERUZBVUxUX1NPVU5ELCBERUZBVUxUX1ZJQlJBVEUsIERFRkFVTFRfTElHSFRTLlxuICAgKi9cbiAgZGVmYXVsdHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEFORFJPSUQgT05MWVxuICAgKiBTcGVjaWZpZXMgdGhlIGNoYW5uZWwgdGhlIG5vdGlmaWNhdGlvbiBzaG91bGQgYmUgZGVsaXZlcmVkIG9uLlxuICAgKi9cbiAgY2hhbm5lbD86IHN0cmluZztcblxuICAvKipcbiAgICogQU5EUk9JRCBPTkxZXG4gICAqIFNldCB0aGUgdG9rZW4gZm9yIHRoZSBtZWRpYSBzZXNzaW9uXG4gICAqL1xuICBtZWRpYVNlc3Npb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1ha2UgdGhpcyBub3RpZmljYXRpb24gc2hvdyB3aGVuIGFwcCBpbiBmb3JlZ3JvdW5kLlxuICAgKi9cbiAgZm9yZWdyb3VuZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQG5hbWUgTG9jYWwgTm90aWZpY2F0aW9uc1xuICogQGRlc2NyaXB0aW9uXG4gKiBUaGlzIHBsdWdpbiBhbGxvd3MgeW91IHRvIGRpc3BsYXkgbG9jYWwgbm90aWZpY2F0aW9ucyBvbiB0aGUgZGV2aWNlXG4gKlxuICogQHVzYWdlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBMb2NhbE5vdGlmaWNhdGlvbnMgfSBmcm9tICdAaW9uaWMtbmF0aXZlL2xvY2FsLW5vdGlmaWNhdGlvbnMvbmd4JztcbiAqXG4gKlxuICogY29uc3RydWN0b3IocHJpdmF0ZSBsb2NhbE5vdGlmaWNhdGlvbnM6IExvY2FsTm90aWZpY2F0aW9ucykgeyB9XG4gKlxuICogLi4uXG4gKlxuICpcbiAqIC8vIFNjaGVkdWxlIGEgc2luZ2xlIG5vdGlmaWNhdGlvblxuICogdGhpcy5sb2NhbE5vdGlmaWNhdGlvbnMuc2NoZWR1bGUoe1xuICogICBpZDogMSxcbiAqICAgdGV4dDogJ1NpbmdsZSBJTG9jYWxOb3RpZmljYXRpb24nLFxuICogICBzb3VuZDogaXNBbmRyb2lkPyAnZmlsZTovL3NvdW5kLm1wMyc6ICdmaWxlOi8vYmVlcC5jYWYnLFxuICogICBkYXRhOiB7IHNlY3JldDoga2V5IH1cbiAqIH0pO1xuICpcbiAqXG4gKiAvLyBTY2hlZHVsZSBtdWx0aXBsZSBub3RpZmljYXRpb25zXG4gKiB0aGlzLmxvY2FsTm90aWZpY2F0aW9ucy5zY2hlZHVsZShbe1xuICogICAgaWQ6IDEsXG4gKiAgICB0ZXh0OiAnTXVsdGkgSUxvY2FsTm90aWZpY2F0aW9uIDEnLFxuICogICAgc291bmQ6IGlzQW5kcm9pZCA/ICdmaWxlOi8vc291bmQubXAzJzogJ2ZpbGU6Ly9iZWVwLmNhZicsXG4gKiAgICBkYXRhOiB7IHNlY3JldDprZXkgfVxuICogICB9LHtcbiAqICAgIGlkOiAyLFxuICogICAgdGl0bGU6ICdMb2NhbCBJTG9jYWxOb3RpZmljYXRpb24gRXhhbXBsZScsXG4gKiAgICB0ZXh0OiAnTXVsdGkgSUxvY2FsTm90aWZpY2F0aW9uIDInLFxuICogICAgaWNvbjogJ2h0dHA6Ly9leGFtcGxlLmNvbS9pY29uLnBuZydcbiAqIH1dKTtcbiAqXG4gKlxuICogLy8gU2NoZWR1bGUgZGVsYXllZCBub3RpZmljYXRpb25cbiAqIHRoaXMubG9jYWxOb3RpZmljYXRpb25zLnNjaGVkdWxlKHtcbiAqICAgIHRleHQ6ICdEZWxheWVkIElMb2NhbE5vdGlmaWNhdGlvbicsXG4gKiAgICB0cmlnZ2VyOiB7YXQ6IG5ldyBEYXRlKG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgMzYwMCl9LFxuICogICAgbGVkOiAnRkYwMDAwJyxcbiAqICAgIHNvdW5kOiBudWxsXG4gKiB9KTtcbiAqIGBgYFxuICogQGludGVyZmFjZXNcbiAqIElMb2NhbE5vdGlmaWNhdGlvblxuICovXG5AUGx1Z2luKHtcbiAgcGx1Z2luTmFtZTogJ0xvY2FsTm90aWZpY2F0aW9ucycsXG4gIHBsdWdpbjogJ2NvcmRvdmEtcGx1Z2luLWxvY2FsLW5vdGlmaWNhdGlvbicsXG4gIHBsdWdpblJlZjogJ2NvcmRvdmEucGx1Z2lucy5ub3RpZmljYXRpb24ubG9jYWwnLFxuICByZXBvOiAnaHR0cHM6Ly9naXRodWIuY29tL2thdHplci9jb3Jkb3ZhLXBsdWdpbi1sb2NhbC1ub3RpZmljYXRpb25zJyxcbiAgcGxhdGZvcm1zOiBbJ0FuZHJvaWQnLCAnaU9TJywgJ1dpbmRvd3MnXSxcbn0pXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTG9jYWxOb3RpZmljYXRpb25zIGV4dGVuZHMgSW9uaWNOYXRpdmVQbHVnaW4ge1xuICAvKipcbiAgICogSW5mb3JtcyBpZiB0aGUgYXBwIGhhcyB0aGUgcGVybWlzc2lvbiB0byBzaG93IG5vdGlmaWNhdGlvbnMuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGJvb2xlYW4+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBoYXNQZXJtaXNzaW9uKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXF1ZXN0IHBlcm1pc3Npb24gdG8gc2hvdyBub3RpZmljYXRpb25zIGlmIG5vdCBhbHJlYWR5IGdyYW50ZWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGJvb2xlYW4+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICByZXF1ZXN0UGVybWlzc2lvbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2NoZWR1bGVzIGEgc2luZ2xlIG9yIG11bHRpcGxlIG5vdGlmaWNhdGlvbnNcbiAgICogQHBhcmFtIG9wdGlvbnMge05vdGlmaWNhdGlvbiB8IElMb2NhbE5vdGlmaWNhdGlvbltdfSBvcHRpb25hbFxuICAgKi9cbiAgQENvcmRvdmEoe1xuICAgIHN5bmM6IHRydWUsXG4gIH0pXG4gIHNjaGVkdWxlKG9wdGlvbnM/OiBJTG9jYWxOb3RpZmljYXRpb24gfCBJTG9jYWxOb3RpZmljYXRpb25bXSk6IHZvaWQge31cblxuICAvKipcbiAgICogVXBkYXRlcyBhIHByZXZpb3VzbHkgc2NoZWR1bGVkIG5vdGlmaWNhdGlvbi4gTXVzdCBpbmNsdWRlIHRoZSBpZCBpbiB0aGUgb3B0aW9ucyBwYXJhbWV0ZXIuXG4gICAqIEBwYXJhbSBvcHRpb25zIHtJTG9jYWxOb3RpZmljYXRpb259IG9wdGlvbmFsXG4gICAqL1xuICBAQ29yZG92YSh7XG4gICAgc3luYzogdHJ1ZSxcbiAgfSlcbiAgdXBkYXRlKG9wdGlvbnM/OiBJTG9jYWxOb3RpZmljYXRpb24pOiB2b2lkIHt9XG5cbiAgLyoqXG4gICAqIENsZWFycyBzaW5nbGUgb3IgbXVsdGlwbGUgbm90aWZpY2F0aW9uc1xuICAgKiBAcGFyYW0gbm90aWZpY2F0aW9uSWQge2FueX0gQSBzaW5nbGUgbm90aWZpY2F0aW9uIGlkLCBvciBhbiBhcnJheSBvZiBub3RpZmljYXRpb24gaWRzLlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgcHJvbWlzZSB3aGVuIHRoZSBub3RpZmljYXRpb24gaGFkIGJlZW4gY2xlYXJlZFxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBjbGVhcihub3RpZmljYXRpb25JZDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIGFsbCBub3RpZmljYXRpb25zXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59IFJldHVybnMgYSBwcm9taXNlIHdoZW4gYWxsIG5vdGlmaWNhdGlvbnMgaGF2ZSBjbGVhcmVkXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGNsZWFyQWxsKCk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbmNlbHMgc2luZ2xlIG9yIG11bHRpcGxlIG5vdGlmaWNhdGlvbnNcbiAgICogQHBhcmFtIG5vdGlmaWNhdGlvbklkIHthbnl9IEEgc2luZ2xlIG5vdGlmaWNhdGlvbiBpZCwgb3IgYW4gYXJyYXkgb2Ygbm90aWZpY2F0aW9uIGlkcy5cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gUmV0dXJucyBhIHByb21pc2Ugd2hlbiB0aGUgbm90aWZpY2F0aW9uIGlzIGNhbmNlbGVkXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGNhbmNlbChub3RpZmljYXRpb25JZDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2FuY2VscyBhbGwgbm90aWZpY2F0aW9uc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxhbnk+fSBSZXR1cm5zIGEgcHJvbWlzZSB3aGVuIGFsbCBub3RpZmljYXRpb25zIGFyZSBjYW5jZWxlZFxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBjYW5jZWxBbGwoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIHByZXNlbmNlIG9mIGEgbm90aWZpY2F0aW9uXG4gICAqIEBwYXJhbSBub3RpZmljYXRpb25JZCB7bnVtYmVyfVxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxib29sZWFuPn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgaXNQcmVzZW50KG5vdGlmaWNhdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlzIGEgbm90aWZpY2F0aW9uIGlzIHNjaGVkdWxlZFxuICAgKiBAcGFyYW0gbm90aWZpY2F0aW9uSWQge251bWJlcn1cbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGlzU2NoZWR1bGVkKG5vdGlmaWNhdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgbm90aWZpY2F0aW9uIGlzIHRyaWdnZXJlZFxuICAgKiBAcGFyYW0gbm90aWZpY2F0aW9uSWQge251bWJlcn1cbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGlzVHJpZ2dlcmVkKG5vdGlmaWNhdGlvbklkOiBudW1iZXIpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgYSBub3RpZmljYXRpb24gaGFzIGEgZ2l2ZW4gdHlwZS5cbiAgICogQHBhcmFtIHtudW1iZXJ9IGlkIFRoZSBJRCBvZiB0aGUgbm90aWZpY2F0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gdHlwZSAgVGhlIHR5cGUgb2YgdGhlIG5vdGlmaWNhdGlvbi5cbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGhhc1R5cGUoaWQ6IG51bWJlciwgdHlwZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgdHlwZSAodHJpZ2dlcmVkLCBzY2hlZHVsZWQpIGZvciB0aGUgbm90aWZpY2F0aW9uLlxuICAgKiBAcGFyYW0ge251bWJlcn0gaWQgVGhlIElEIG9mIHRoZSBub3RpZmljYXRpb24uXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldFR5cGUoaWQ6IG51bWJlcik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYWxsIHRoZSBub3RpZmljYXRpb24gaWRzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFycmF5PG51bWJlcj4+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRJZHMoKTogUHJvbWlzZTxudW1iZXJbXT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdGhlIGlkcyBvZiBzY2hlZHVsZWQgbm90aWZpY2F0aW9uc1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxudW1iZXJbXT59IFJldHVybnMgYSBwcm9taXNlXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGdldFNjaGVkdWxlZElkcygpOiBQcm9taXNlPG51bWJlcltdPiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0aGUgaWRzIG9mIHRyaWdnZXJlZCBub3RpZmljYXRpb25zXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFycmF5PG51bWJlcj4+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRUcmlnZ2VyZWRJZHMoKTogUHJvbWlzZTxudW1iZXJbXT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBub3RpZmljYXRpb24gb2JqZWN0XG4gICAqIEBwYXJhbSBub3RpZmljYXRpb25JZCB7YW55fSBUaGUgaWQgb2YgdGhlIG5vdGlmaWNhdGlvbiB0byBnZXRcbiAgICogQHJldHVybnMge1Byb21pc2U8SUxvY2FsTm90aWZpY2F0aW9uPn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0KG5vdGlmaWNhdGlvbklkOiBhbnkpOiBQcm9taXNlPElMb2NhbE5vdGlmaWNhdGlvbj4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYWxsIG5vdGlmaWNhdGlvbiBvYmplY3RzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPElMb2NhbE5vdGlmaWNhdGlvbltdPn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0QWxsKCk6IFByb21pc2U8SUxvY2FsTm90aWZpY2F0aW9uW10+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc2NoZWR1bGVkIG5vdGlmaWNhdGlvbiBvYmplY3RcbiAgICogQHBhcmFtIG5vdGlmaWNhdGlvbklkIHthbnl9IFRoZSBpZCBvZiB0aGUgbm90aWZpY2F0aW9uIHRvIGdldFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxJTG9jYWxOb3RpZmljYXRpb24+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRTY2hlZHVsZWQobm90aWZpY2F0aW9uSWQ6IGFueSk6IFByb21pc2U8SUxvY2FsTm90aWZpY2F0aW9uPiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhIHRyaWdnZXJlZCBub3RpZmljYXRpb24gb2JqZWN0XG4gICAqIEBwYXJhbSBub3RpZmljYXRpb25JZCBUaGUgaWQgb2YgdGhlIG5vdGlmaWNhdGlvbiB0byBnZXRcbiAgICogQHJldHVybnMge1Byb21pc2U8SUxvY2FsTm90aWZpY2F0aW9uPn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0VHJpZ2dlcmVkKG5vdGlmaWNhdGlvbklkOiBhbnkpOiBQcm9taXNlPElMb2NhbE5vdGlmaWNhdGlvbj4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIGEgZ3JvdXAgb2YgYWN0aW9uc1xuICAgKiBAcGFyYW0gZ3JvdXBJZCBUaGUgaWQgb2YgdGhlIGFjdGlvbiBncm91cFxuICAgKiBAcGFyYW0gYWN0aW9ucyBUaGUgYWN0aW9ucyBvZiB0aGlzIGdyb3VwXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGFkZEFjdGlvbnMoZ3JvdXBJZDogYW55LCBhY3Rpb25zOiBJTG9jYWxOb3RpZmljYXRpb25BY3Rpb25bXSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlbW92ZXMgYSBncm91cCBvZiBhY3Rpb25zXG4gICAqIEBwYXJhbSBncm91cElkIFRoZSBpZCBvZiB0aGUgYWN0aW9uIGdyb3VwXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIHJlbW92ZUFjdGlvbnMoZ3JvdXBJZDogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2tzIGlmIGEgZ3JvdXAgb2YgYWN0aW9ucyBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBncm91cElkIFRoZSBpZCBvZiB0aGUgYWN0aW9uIGdyb3VwXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGJvb2xlYW4+fSBXaGV0aGVyIHRoZSBncm91cCBpcyBkZWZpbmVkXG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGhhc0FjdGlvbnMoZ3JvdXBJZDogYW55KTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIChwbGF0Zm9ybSBzcGVjaWZpYykgZGVmYXVsdCBzZXR0aW5ncy5cbiAgICogQHJldHVybnMge1Byb21pc2U8YW55Pn0gQW4gb2JqZWN0IHdpdGggYWxsIGRlZmF1bHQgc2V0dGluZ3NcbiAgICovXG4gIEBDb3Jkb3ZhKHtcbiAgICBzeW5jOiB0cnVlLFxuICB9KVxuICBnZXREZWZhdWx0cygpOiBQcm9taXNlPGFueT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBPdmVyd3JpdGVzIHRoZSAocGxhdGZvcm0gc3BlY2lmaWMpIGRlZmF1bHQgc2V0dGluZ3MuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSh7XG4gICAgc3luYzogdHJ1ZSxcbiAgfSlcbiAgc2V0RGVmYXVsdHMoZGVmYXVsdHM6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBhbGwgc2NoZWR1bGVkIG5vdGlmaWNhdGlvbiBvYmplY3RzXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPEFycmF5PElMb2NhbE5vdGlmaWNhdGlvbj4+fVxuICAgKi9cbiAgQENvcmRvdmEoKVxuICBnZXRBbGxTY2hlZHVsZWQoKTogUHJvbWlzZTxJTG9jYWxOb3RpZmljYXRpb25bXT4ge1xuICAgIHJldHVybjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYWxsIHRyaWdnZXJlZCBub3RpZmljYXRpb24gb2JqZWN0c1xuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxBcnJheTxJTG9jYWxOb3RpZmljYXRpb24+Pn1cbiAgICovXG4gIEBDb3Jkb3ZhKClcbiAgZ2V0QWxsVHJpZ2dlcmVkKCk6IFByb21pc2U8SUxvY2FsTm90aWZpY2F0aW9uW10+IHtcbiAgICByZXR1cm47XG4gIH1cblxuICAvKipcbiAgICogU2V0cyBhIGNhbGxiYWNrIGZvciBhIHNwZWNpZmljIGV2ZW50XG4gICAqIEBwYXJhbSBldmVudE5hbWUge3N0cmluZ30gVGhlIG5hbWUgb2YgdGhlIGV2ZW50LiBBdmFpbGFibGUgZXZlbnRzOiBzY2hlZHVsZSwgdHJpZ2dlciwgY2xpY2ssIHVwZGF0ZSwgY2xlYXIsIGNsZWFyYWxsLCBjYW5jZWwsIGNhbmNlbGFsbC4gQ3VzdG9tIGV2ZW50IG5hbWVzIGFyZSBwb3NzaWJsZSBmb3IgYWN0aW9uc1xuICAgKiBAcmV0dXJuIHtPYnNlcnZhYmxlfVxuICAgKi9cbiAgQENvcmRvdmEoe1xuICAgIG9ic2VydmFibGU6IHRydWUsXG4gICAgY2xlYXJGdW5jdGlvbjogJ3VuJyxcbiAgICBjbGVhcldpdGhBcmdzOiB0cnVlLFxuICB9KVxuICBvbihldmVudE5hbWU6IHN0cmluZyk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgLyoqXG4gICAqIE5vdCBhbiBvZmZpY2lhbCBpbnRlcmZhY2UsIGhvd2V2ZXIgaXRzIHBvc3NpYmxlIHRvIG1hbnVhbGx5IGZpcmUgZXZlbnRzLlxuICAgKiBAcGFyYW0gZXZlbnROYW1lIFRoZSBuYW1lIG9mIHRoZSBldmVudC4gQXZhaWxhYmxlIGV2ZW50czogc2NoZWR1bGUsIHRyaWdnZXIsIGNsaWNrLCB1cGRhdGUsIGNsZWFyLCBjbGVhcmFsbCwgY2FuY2VsLCBjYW5jZWxhbGwuIEN1c3RvbSBldmVudCBuYW1lcyBhcmUgcG9zc2libGUgZm9yIGFjdGlvbnNcbiAgICogQHBhcmFtIGFyZ3MgT3B0aW9uYWwgYXJndW1lbnRzXG4gICAqL1xuICBAQ29yZG92YSh7XG4gICAgc3luYzogdHJ1ZSxcbiAgfSlcbiAgZmlyZUV2ZW50KGV2ZW50TmFtZTogc3RyaW5nLCBhcmdzOiBhbnkpOiB2b2lkIHt9XG5cbiAgLyoqXG4gICAqIEZpcmUgcXVldWVkIGV2ZW50cyBvbmNlIHRoZSBkZXZpY2UgaXMgcmVhZHkgYW5kIGFsbCBsaXN0ZW5lcnMgYXJlIHJlZ2lzdGVyZWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGFueT59XG4gICAqL1xuICBAQ29yZG92YSgpXG4gIGZpcmVRdWV1ZWRFdmVudHMoKTogUHJvbWlzZTxhbnk+IHtcbiAgICByZXR1cm47XG4gIH1cbn1cbiJdfQ==
\No newline at end of file