@wireio/shared 1.0.62 → 1.0.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/logging/appenders/aws-firehose/AWSFirehoseAppender.js +1 -1
- package/lib/cjs/logging/appenders/push/PushLogRecordsAppender.js +2 -2
- package/lib/esm/logging/appenders/aws-firehose/AWSFirehoseAppender.js +1 -1
- package/lib/esm/logging/appenders/push/PushLogRecordsAppender.js +2 -2
- package/lib/tsconfig.cjs.tsbuildinfo +1 -1
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -174,4 +174,4 @@ class AWSFirehoseAppender {
|
|
|
174
174
|
}
|
|
175
175
|
exports.AWSFirehoseAppender = AWSFirehoseAppender;
|
|
176
176
|
exports.default = AWSFirehoseAppender;
|
|
177
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQVdTRmlyZWhvc2VBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9hd3MtZmlyZWhvc2UvQVdTRmlyZWhvc2VBcHBlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQSx3R0FFMEM7QUFDMUMsK0RBQTJEO0FBQzNELG1DQUE2QjtBQUM3Qix3REFBb0Q7QUFJcEQsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUE7QUFDaEMsTUFBTSx5QkFBeUIsR0FBRyx1QkFBdUIsQ0FBQTtBQUV6RCxNQUFNLEdBQUcsR0FBRyxJQUFBLHFDQUFpQixHQUFFLENBQUE7QUFDL0IsSUFBSSxjQUFjLEdBQXVELElBQUksQ0FBQTtBQUU3RSxTQUFTLGlCQUFpQjtJQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEIsY0FBYyxHQUFHLGtEQUFPLDBCQUEwQixJQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM5RCxjQUFjLEdBQUcsSUFBSSxDQUFBO1lBQ3JCLE1BQU0sR0FBRyxDQUFBO1FBQ1gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsT0FBTyxjQUFjLENBQUE7QUFDdkIsQ0FBQztBQUVELE1BQWEsbUJBQW1CO0lBU0Y7SUFOcEIsY0FBYyxHQUFHLEtBQUssRUFBYSxDQUFBO0lBQ25DLGFBQWEsQ0FBZ0I7SUFDN0IsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUVkLGlCQUFpQixDQUE4QjtJQUUvRCxZQUE0QixxQkFBNkI7UUFBN0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFRO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLHlDQUE0QixDQUN2RCxxQkFBcUIsQ0FDdEIsQ0FBQTtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLEdBQUcs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WUFDckMsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLHlCQUF5QixFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFBO1lBQ2pELENBQUM7WUFDRCxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3RCLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFBO1lBRXpCLGtDQUFrQztZQUNsQyxpQkFBaUI7UUFDbkIsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQTtJQUN6QixDQUFDO0NBQ0Y7QUFwSkQsa0RBb0pDO0FBRUQsa0JBQWUsbUJBQW1CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSB0eXBlc2NyaXB0L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHR5cGUge1xuICBGaXJlaG9zZUNsaWVudCxcbiAgUHV0UmVjb3JkQmF0Y2hJbnB1dFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWZpcmVob3NlXCJcbmltcG9ydCB7IExldmVsIH0gZnJvbSBcIi4uLy4uL0xldmVsLmpzXCJcblxuaW1wb3J0IEFXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXIsIHtcbiAgdHlwZSBBV1NDcmVkZW50aWFsc1xufSBmcm9tIFwiLi9BV1NGaXJlaG9zZUNyZWRlbnRpYWxNYW5hZ2VyLmpzXCJcbmltcG9ydCB7IGdldEludGVybmFsTG9nZ2VyIH0gZnJvbSBcIi4uLy4uL0ludGVybmFsTG9nZ2VyLmpzXCJcbmltcG9ydCB7IHBpY2sgfSBmcm9tIFwibG9kYXNoXCJcbmltcG9ydCB7IERlZmVycmVkIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvaW5kZXguanNcIlxuaW1wb3J0IHsgTG9nUmVjb3JkIH0gZnJvbSBcIi4uLy4uL0xvZ1JlY29yZC5qc1wiXG5pbXBvcnQgeyBBcHBlbmRlciB9IGZyb20gXCIuLi8uLi9BcHBlbmRlci5qc1wiXG5cbmNvbnN0IExvZ1F1ZXVlTWF4UmVjb3JkcyA9IDEwMDAwXG5jb25zdCBFeHBpcmVkVG9rZW5FeGNlcHRpb25Db2RlID0gXCJFeHBpcmVkVG9rZW5FeGNlcHRpb25cIlxuXG5jb25zdCBsb2cgPSBnZXRJbnRlcm5hbExvZ2dlcigpXG5sZXQgZmlyZWhvc2VNb2R1bGU6IFByb21pc2U8dHlwZW9mIGltcG9ydChcIkBhd3Mtc2RrL2NsaWVudC1maXJlaG9zZVwiKT4gPSBudWxsXG5cbmZ1bmN0aW9uIGdldEZpcmVob3NlTW9kdWxlKCkge1xuICBpZiAoIWZpcmVob3NlTW9kdWxlKSB7XG4gICAgZmlyZWhvc2VNb2R1bGUgPSBpbXBvcnQoXCJAYXdzLXNkay9jbGllbnQtZmlyZWhvc2VcIikuY2F0Y2goZXJyID0+IHtcbiAgICAgIGZpcmVob3NlTW9kdWxlID0gbnVsbFxuICAgICAgdGhyb3cgZXJyXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBmaXJlaG9zZU1vZHVsZVxufVxuXG5leHBvcnQgY2xhc3MgQVdTRmlyZWhvc2VBcHBlbmRlcjxcbiAgUmVjb3JkIGV4dGVuZHMgTG9nUmVjb3JkID0gTG9nUmVjb3JkXG4+IGltcGxlbWVudHMgQXBwZW5kZXI8UmVjb3JkPiB7XG4gIHByaXZhdGUgcGVuZGluZ1JlY29yZHMgPSBBcnJheTxMb2dSZWNvcmQ+KClcbiAgcHJpdmF0ZSBmbHVzaERlZmVycmVkOiBEZWZlcnJlZDx2b2lkPlxuICBwcml2YXRlIGZsdXNoSW50ZXJ2YWxNcyA9IDEwMDBcblxuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbE1hbmFnZXI6IEFXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXJcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbEVuZHBvaW50VXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyID0gbmV3IEFXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXIoXG4gICAgICBjcmVkZW50aWFsRW5kcG9pbnRVcmxcbiAgICApXG4gICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlci5vbihcInJlY2VpdmVkXCIsICgpID0+IHtcbiAgICAgIGxvZy5pbmZvKFwiQ3JlZGVudGlhbHMgcmVjZWl2ZWQsIGluaXRpYWxpemluZyBmaXJlaG9zZSBjbGllbnRcIilcbiAgICAgIGlmICghdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggfHwgISF0aGlzLmZsdXNoRGVmZXJyZWQpIHtcbiAgICAgICAgbG9nLmRlYnVnKFxuICAgICAgICAgIFwiTm90aGluZyB0byBmbHVzaCB1cG9uIGNyZWRlbnRpYWwgcmVjZWlwdCBPUiBmbHVzaCBhbHJlYWR5IGluIHByb2dyZXNzXCJcbiAgICAgICAgKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoZTogRXJyb3IpID0+IHtcbiAgICAgICAgbG9nLmVycm9yKFxuICAgICAgICAgIGBFcnJvciBmbHVzaGluZyBsb2dzIGFmdGVyIGNyZWRlbnRpYWwgcmVjZWlwdDogJHtlLm1lc3NhZ2V9YCxcbiAgICAgICAgICBlXG4gICAgICAgIClcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuICBhcHBlbmQocmVjb3JkOiBSZWNvcmQpOiB2b2lkIHtcbiAgICBjb25zdCBwZW5kaW5nQ291bnQgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCArIDEsXG4gICAgICByZW1vdmVDb3VudCA9IExvZ1F1ZXVlTWF4UmVjb3JkcyAtIHBlbmRpbmdDb3VudFxuXG4gICAgaWYgKHJlbW92ZUNvdW50IDwgMCkge1xuICAgICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy5zcGxpY2UoMCwgTWF0aC5hYnMocmVtb3ZlQ291bnQpKVxuICAgIH1cblxuICAgIHRoaXMucGVuZGluZ1JlY29yZHMucHVzaCh7XG4gICAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXG4gICAgICAuLi5yZWNvcmQsXG4gICAgICBhcHA6IHJlY29yZC5hcHA/Lmxlbmd0aCA+IDAgPyByZWNvcmQuYXBwIDogXCJVTktOT1dOXCIsXG4gICAgICBlbnY6IHJlY29yZC5lbnY/Lmxlbmd0aCA+IDAgPyByZWNvcmQuZW52IDogXCJVTktOT1dOXCIsXG4gICAgICB1cmw6IHR5cGVvZiB3aW5kb3cgPT09IFwidW5kZWZpbmVkXCIgPyBcImxvY2FsOi8vXCIgOiB3aW5kb3cubG9jYXRpb24uaHJlZlxuICAgIH0pXG5cbiAgICB0aGlzLmZsdXNoKClcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdGhlIEZpcmVob3NlIGNsaWVudCBmb3IgYSBsb2FkZWQgY3JlZGVudGlhbCBzZXQuXG4gICAqIEBwYXJhbSBjcmVkcyBMb2FkZWQgRmlyZWhvc2UgY3JlZGVudGlhbHMuXG4gICAqIEByZXR1cm5zIEZpcmVob3NlIGNsaWVudC5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZ2V0RmlyZWhvc2UoY3JlZHM6IEFXU0NyZWRlbnRpYWxzKTogUHJvbWlzZTxGaXJlaG9zZUNsaWVudD4ge1xuICAgIGNvbnN0IHsgcmVnaW9uLCBzdHJlYW1OYW1lIH0gPSBjcmVkc1xuXG4gICAgaWYgKCFyZWdpb24gfHwgIXN0cmVhbU5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIlJlZ2lvbiBvciBzdHJlYW0gbmFtZSBub3QgYXZhaWxhYmxlXCIpXG4gICAgfVxuXG4gICAgY29uc3QgeyBGaXJlaG9zZUNsaWVudCB9ID0gYXdhaXQgZ2V0RmlyZWhvc2VNb2R1bGUoKVxuICAgIGNvbnN0IGNsaWVudCA9IG5ldyBGaXJlaG9zZUNsaWVudCh7XG4gICAgICByZWdpb246IGNyZWRzLnJlZ2lvbixcbiAgICAgIGNyZWRlbnRpYWxzOiBwaWNrKGNyZWRzLCBcImFjY2Vzc0tleUlkXCIsIFwic2VjcmV0QWNjZXNzS2V5XCIsIFwic2Vzc2lvblRva2VuXCIpXG4gICAgfSlcblxuICAgIHJldHVybiBjbGllbnRcbiAgfVxuXG4gIC8qKlxuICAgKiBGbHVzaCBwZW5kaW5nIHJlY29yZHNcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGZsdXNoKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghIXRoaXMuZmx1c2hEZWZlcnJlZCkge1xuICAgICAgbG9nLmRlYnVnKFwiRmx1c2ggYWxyZWFkeSBpbiBwcm9ncmVzcywgc2tpcHBpbmdcIilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgIGxvZy5kZWJ1ZyhcIk5vIHBlbmRpbmcgcmVjb3JkcyB0byBmbHVzaFwiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGNyZWRzID0gdGhpcy5jcmVkZW50aWFsTWFuYWdlci5nZXRDcmVkZW50aWFscygpXG4gICAgaWYgKCFjcmVkcykge1xuICAgICAgbG9nLndhcm4oXCJObyBjcmVkZW50aWFscyBhdmFpbGFibGUgZm9yIGZsdXNoXCIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBkZWZlcnJlZCA9ICh0aGlzLmZsdXNoRGVmZXJyZWQgPSBuZXcgRGVmZXJyZWQ8dm9pZD4oKSlcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzdHJlYW1OYW1lIH0gPSBjcmVkcyxcbiAgICAgICAgY2xpZW50ID0gYXdhaXQgdGhpcy5nZXRGaXJlaG9zZShjcmVkcyksXG4gICAgICAgIHsgUHV0UmVjb3JkQmF0Y2hDb21tYW5kIH0gPSBhd2FpdCBnZXRGaXJlaG9zZU1vZHVsZSgpXG5cbiAgICAgIHdoaWxlICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBjaHVua1NpemUgPSBNYXRoLm1pbih0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCwgMTApLFxuICAgICAgICAgIHJlY29yZHMgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLnNwbGljZSgwLCBjaHVua1NpemUpLFxuICAgICAgICAgIHJlY29yZEpzb25zID0gcmVjb3Jkcy5tYXAocmVjb3JkID0+IEpTT04uc3RyaW5naWZ5KHJlY29yZCkpXG5cbiAgICAgICAgaWYgKGxvZy5pc0RlYnVnRW5hYmxlZCgpKSBsb2cuZGVidWcoXCJSZWNvcmRzXCIsIHJlY29yZHMpXG5cbiAgICAgICAgY29uc3QgdGV4dEVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKSxcbiAgICAgICAgICBiYXRjaDogUHV0UmVjb3JkQmF0Y2hJbnB1dFtcIlJlY29yZHNcIl0gPSByZWNvcmRKc29ucy5tYXAoanNvblN0ciA9PiAoe1xuICAgICAgICAgICAgRGF0YTogdGV4dEVuY29kZXIuZW5jb2RlKGpzb25TdHIpXG4gICAgICAgICAgfSkpXG5cbiAgICAgICAgbG9nLmluZm8oYFB1c2hpbmcgJHtyZWNvcmRzLmxlbmd0aH0gcmVjb3JkcyB0byBmaXJlaG9zZWApXG5cbiAgICAgICAgY29uc3QgY21kID0gbmV3IFB1dFJlY29yZEJhdGNoQ29tbWFuZCh7XG4gICAgICAgICAgRGVsaXZlcnlTdHJlYW1OYW1lOiBzdHJlYW1OYW1lLFxuICAgICAgICAgIFJlY29yZHM6IGJhdGNoXG4gICAgICAgIH0pXG5cbiAgICAgICAgY29uc3QgcmVzcCA9IGF3YWl0IGNsaWVudC5zZW5kKGNtZClcbiAgICAgICAgY29uc3QgZmFpbGVkID0gcmVzcC5GYWlsZWRQdXRDb3VudCB8fCAwXG4gICAgICAgIGlmIChmYWlsZWQpIHtcbiAgICAgICAgICBjb25zdCByciA9IHJlc3AuUmVxdWVzdFJlc3BvbnNlcyB8fCBbXVxuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChycltpXS5FcnJvckNvZGUpIHtcbiAgICAgICAgICAgICAgbG9nLndhcm4oXG4gICAgICAgICAgICAgICAgYFJlY29yZCBmYWlsZWQ6ICR7cnJbaV0uRXJyb3JDb2RlfSAke3JyW2ldLkVycm9yTWVzc2FnZX1gXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgLy90aGlzLnBlbmRpbmdSZWNvcmRzLnVuc2hpZnQocmVjb3Jkc1tpXSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgbG9nLmluZm8oYFB1dFJlY29yZEJhdGNoIGZhaWxlZD0ke2ZhaWxlZH07IHJlcXVldWVkIGZhaWxlZCByZWNvcmRzYClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsb2cuaW5mbyhgUHV0UmVjb3JkQmF0Y2ggb2sgY291bnQ9JHtyZWNvcmRzLmxlbmd0aH1gKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBkZWZlcnJlZC5yZXNvbHZlKClcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZy5lcnJvcihcIkZhaWxlZCB0byBwdXNoIGxvZ3NcIiwgZXJyKVxuICAgICAgaWYgKGVyci5uYW1lID09PSBFeHBpcmVkVG9rZW5FeGNlcHRpb25Db2RlKSB7XG4gICAgICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZm9yY2VVcGRhdGVDcmVkZW50aWFscygpXG4gICAgICB9XG4gICAgICBkZWZlcnJlZC5yZWplY3QoZXJyKVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmZsdXNoRGVmZXJyZWQgPSBudWxsXG5cbiAgICAgIC8vIGlmICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aClcbiAgICAgIC8vICAgdGhpcy5mbHVzaCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIGRlZmVycmVkLnByb21pc2VcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBBV1NGaXJlaG9zZUFwcGVuZGVyXG4iXX0=
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQVdTRmlyZWhvc2VBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9hd3MtZmlyZWhvc2UvQVdTRmlyZWhvc2VBcHBlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFPQSx3R0FFMEM7QUFDMUMsK0RBQTJEO0FBQzNELG1DQUE2QjtBQUM3Qix3REFBb0Q7QUFJcEQsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUE7QUFDaEMsTUFBTSx5QkFBeUIsR0FBRyx1QkFBdUIsQ0FBQTtBQUV6RCxNQUFNLEdBQUcsR0FBRyxJQUFBLHFDQUFpQixHQUFFLENBQUE7QUFDL0IsSUFBSSxjQUFjLEdBQXVELElBQUksQ0FBQTtBQUU3RSxTQUFTLGlCQUFpQjtJQUN4QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDcEIsY0FBYyxHQUFHLGtEQUFPLDBCQUEwQixJQUFFLEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRTtZQUM5RCxjQUFjLEdBQUcsSUFBSSxDQUFBO1lBQ3JCLE1BQU0sR0FBRyxDQUFBO1FBQ1gsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQsT0FBTyxjQUFjLENBQUE7QUFDdkIsQ0FBQztBQUVELE1BQWEsbUJBQW1CO0lBU0Y7SUFOcEIsY0FBYyxHQUFHLEtBQUssRUFBYSxDQUFBO0lBQ25DLGFBQWEsQ0FBZ0I7SUFDN0IsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUVkLGlCQUFpQixDQUE4QjtJQUUvRCxZQUE0QixxQkFBNkI7UUFBN0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFRO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLHlDQUE0QixDQUN2RCxxQkFBcUIsQ0FDdEIsQ0FBQTtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLEdBQUcs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WUFDckMsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLHlCQUF5QixFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFBO1lBQ2pELENBQUM7WUFDRCxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3RCLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFBO1lBRXpCLGtDQUFrQztZQUNsQyxpQkFBaUI7UUFDbkIsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQTtJQUN6QixDQUFDO0NBQ0Y7QUFwSkQsa0RBb0pDO0FBRUQsa0JBQWUsbUJBQW1CLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgdHlwZSB7XG4gIEZpcmVob3NlQ2xpZW50LFxuICBQdXRSZWNvcmRCYXRjaElucHV0XG59IGZyb20gXCJAYXdzLXNkay9jbGllbnQtZmlyZWhvc2VcIlxuaW1wb3J0IHsgTGV2ZWwgfSBmcm9tIFwiLi4vLi4vTGV2ZWwuanNcIlxuXG5pbXBvcnQgQVdTRmlyZWhvc2VDcmVkZW50aWFsTWFuYWdlciwge1xuICB0eXBlIEFXU0NyZWRlbnRpYWxzXG59IGZyb20gXCIuL0FXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXIuanNcIlxuaW1wb3J0IHsgZ2V0SW50ZXJuYWxMb2dnZXIgfSBmcm9tIFwiLi4vLi4vSW50ZXJuYWxMb2dnZXIuanNcIlxuaW1wb3J0IHsgcGljayB9IGZyb20gXCJsb2Rhc2hcIlxuaW1wb3J0IHsgRGVmZXJyZWQgfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9pbmRleC5qc1wiXG5pbXBvcnQgeyBMb2dSZWNvcmQgfSBmcm9tIFwiLi4vLi4vTG9nUmVjb3JkLmpzXCJcbmltcG9ydCB7IEFwcGVuZGVyIH0gZnJvbSBcIi4uLy4uL0FwcGVuZGVyLmpzXCJcblxuY29uc3QgTG9nUXVldWVNYXhSZWNvcmRzID0gMTAwMDBcbmNvbnN0IEV4cGlyZWRUb2tlbkV4Y2VwdGlvbkNvZGUgPSBcIkV4cGlyZWRUb2tlbkV4Y2VwdGlvblwiXG5cbmNvbnN0IGxvZyA9IGdldEludGVybmFsTG9nZ2VyKClcbmxldCBmaXJlaG9zZU1vZHVsZTogUHJvbWlzZTx0eXBlb2YgaW1wb3J0KFwiQGF3cy1zZGsvY2xpZW50LWZpcmVob3NlXCIpPiA9IG51bGxcblxuZnVuY3Rpb24gZ2V0RmlyZWhvc2VNb2R1bGUoKSB7XG4gIGlmICghZmlyZWhvc2VNb2R1bGUpIHtcbiAgICBmaXJlaG9zZU1vZHVsZSA9IGltcG9ydChcIkBhd3Mtc2RrL2NsaWVudC1maXJlaG9zZVwiKS5jYXRjaChlcnIgPT4ge1xuICAgICAgZmlyZWhvc2VNb2R1bGUgPSBudWxsXG4gICAgICB0aHJvdyBlcnJcbiAgICB9KVxuICB9XG5cbiAgcmV0dXJuIGZpcmVob3NlTW9kdWxlXG59XG5cbmV4cG9ydCBjbGFzcyBBV1NGaXJlaG9zZUFwcGVuZGVyPFxuICBSZWNvcmQgZXh0ZW5kcyBMb2dSZWNvcmQgPSBMb2dSZWNvcmRcbj4gaW1wbGVtZW50cyBBcHBlbmRlcjxSZWNvcmQ+IHtcbiAgcHJpdmF0ZSBwZW5kaW5nUmVjb3JkcyA9IEFycmF5PExvZ1JlY29yZD4oKVxuICBwcml2YXRlIGZsdXNoRGVmZXJyZWQ6IERlZmVycmVkPHZvaWQ+XG4gIHByaXZhdGUgZmx1c2hJbnRlcnZhbE1zID0gMTAwMFxuXG4gIHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsTWFuYWdlcjogQVdTRmlyZWhvc2VDcmVkZW50aWFsTWFuYWdlclxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsRW5kcG9pbnRVcmw6IHN0cmluZykge1xuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIgPSBuZXcgQVdTRmlyZWhvc2VDcmVkZW50aWFsTWFuYWdlcihcbiAgICAgIGNyZWRlbnRpYWxFbmRwb2ludFVybFxuICAgIClcbiAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyLm9uKFwicmVjZWl2ZWRcIiwgKCkgPT4ge1xuICAgICAgbG9nLmluZm8oXCJDcmVkZW50aWFscyByZWNlaXZlZCwgaW5pdGlhbGl6aW5nIGZpcmVob3NlIGNsaWVudFwiKVxuICAgICAgaWYgKCF0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCB8fCAhIXRoaXMuZmx1c2hEZWZlcnJlZCkge1xuICAgICAgICBsb2cuZGVidWcoXG4gICAgICAgICAgXCJOb3RoaW5nIHRvIGZsdXNoIHVwb24gY3JlZGVudGlhbCByZWNlaXB0IE9SIGZsdXNoIGFscmVhZHkgaW4gcHJvZ3Jlc3NcIlxuICAgICAgICApXG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgdGhpcy5mbHVzaCgpLmNhdGNoKChlOiBFcnJvcikgPT4ge1xuICAgICAgICBsb2cuZXJyb3IoXG4gICAgICAgICAgYEVycm9yIGZsdXNoaW5nIGxvZ3MgYWZ0ZXIgY3JlZGVudGlhbCByZWNlaXB0OiAke2UubWVzc2FnZX1gLFxuICAgICAgICAgIGVcbiAgICAgICAgKVxuICAgICAgfSlcbiAgICB9KVxuICB9XG4gIGFwcGVuZChyZWNvcmQ6IFJlY29yZCk6IHZvaWQge1xuICAgIGNvbnN0IHBlbmRpbmdDb3VudCA9IHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoICsgMSxcbiAgICAgIHJlbW92ZUNvdW50ID0gTG9nUXVldWVNYXhSZWNvcmRzIC0gcGVuZGluZ0NvdW50XG5cbiAgICBpZiAocmVtb3ZlQ291bnQgPCAwKSB7XG4gICAgICB0aGlzLnBlbmRpbmdSZWNvcmRzLnNwbGljZSgwLCBNYXRoLmFicyhyZW1vdmVDb3VudCkpXG4gICAgfVxuXG4gICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy5wdXNoKHtcbiAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcbiAgICAgIC4uLnJlY29yZCxcbiAgICAgIGFwcDogcmVjb3JkLmFwcD8ubGVuZ3RoID4gMCA/IHJlY29yZC5hcHAgOiBcIlVOS05PV05cIixcbiAgICAgIGVudjogcmVjb3JkLmVudj8ubGVuZ3RoID4gMCA/IHJlY29yZC5lbnYgOiBcIlVOS05PV05cIixcbiAgICAgIHVybDogdHlwZW9mIHdpbmRvdyA9PT0gXCJ1bmRlZmluZWRcIiA/IFwibG9jYWw6Ly9cIiA6IHdpbmRvdy5sb2NhdGlvbi5ocmVmXG4gICAgfSlcblxuICAgIHRoaXMuZmx1c2goKVxuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSB0aGUgRmlyZWhvc2UgY2xpZW50IGZvciBhIGxvYWRlZCBjcmVkZW50aWFsIHNldC5cbiAgICogQHBhcmFtIGNyZWRzIExvYWRlZCBGaXJlaG9zZSBjcmVkZW50aWFscy5cbiAgICogQHJldHVybnMgRmlyZWhvc2UgY2xpZW50LlxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBnZXRGaXJlaG9zZShjcmVkczogQVdTQ3JlZGVudGlhbHMpOiBQcm9taXNlPEZpcmVob3NlQ2xpZW50PiB7XG4gICAgY29uc3QgeyByZWdpb24sIHN0cmVhbU5hbWUgfSA9IGNyZWRzXG5cbiAgICBpZiAoIXJlZ2lvbiB8fCAhc3RyZWFtTmFtZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiUmVnaW9uIG9yIHN0cmVhbSBuYW1lIG5vdCBhdmFpbGFibGVcIilcbiAgICB9XG5cbiAgICBjb25zdCB7IEZpcmVob3NlQ2xpZW50IH0gPSBhd2FpdCBnZXRGaXJlaG9zZU1vZHVsZSgpXG4gICAgY29uc3QgY2xpZW50ID0gbmV3IEZpcmVob3NlQ2xpZW50KHtcbiAgICAgIHJlZ2lvbjogY3JlZHMucmVnaW9uLFxuICAgICAgY3JlZGVudGlhbHM6IHBpY2soY3JlZHMsIFwiYWNjZXNzS2V5SWRcIiwgXCJzZWNyZXRBY2Nlc3NLZXlcIiwgXCJzZXNzaW9uVG9rZW5cIilcbiAgICB9KVxuXG4gICAgcmV0dXJuIGNsaWVudFxuICB9XG5cbiAgLyoqXG4gICAqIEZsdXNoIHBlbmRpbmcgcmVjb3Jkc1xuICAgKlxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmx1c2goKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCEhdGhpcy5mbHVzaERlZmVycmVkKSB7XG4gICAgICBsb2cuZGVidWcoXCJGbHVzaCBhbHJlYWR5IGluIHByb2dyZXNzLCBza2lwcGluZ1wiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCkge1xuICAgICAgbG9nLmRlYnVnKFwiTm8gcGVuZGluZyByZWNvcmRzIHRvIGZsdXNoXCIpXG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgY29uc3QgY3JlZHMgPSB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyLmdldENyZWRlbnRpYWxzKClcbiAgICBpZiAoIWNyZWRzKSB7XG4gICAgICBsb2cud2FybihcIk5vIGNyZWRlbnRpYWxzIGF2YWlsYWJsZSBmb3IgZmx1c2hcIilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGRlZmVycmVkID0gKHRoaXMuZmx1c2hEZWZlcnJlZCA9IG5ldyBEZWZlcnJlZDx2b2lkPigpKVxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IHN0cmVhbU5hbWUgfSA9IGNyZWRzLFxuICAgICAgICBjbGllbnQgPSBhd2FpdCB0aGlzLmdldEZpcmVob3NlKGNyZWRzKSxcbiAgICAgICAgeyBQdXRSZWNvcmRCYXRjaENvbW1hbmQgfSA9IGF3YWl0IGdldEZpcmVob3NlTW9kdWxlKClcblxuICAgICAgd2hpbGUgKHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoKSB7XG4gICAgICAgIGNvbnN0IGNodW5rU2l6ZSA9IE1hdGgubWluKHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoLCAxMCksXG4gICAgICAgICAgcmVjb3JkcyA9IHRoaXMucGVuZGluZ1JlY29yZHMuc3BsaWNlKDAsIGNodW5rU2l6ZSksXG4gICAgICAgICAgcmVjb3JkSnNvbnMgPSByZWNvcmRzLm1hcChyZWNvcmQgPT4gSlNPTi5zdHJpbmdpZnkocmVjb3JkKSlcblxuICAgICAgICBpZiAobG9nLmlzRGVidWdFbmFibGVkKCkpIGxvZy5kZWJ1ZyhcIlJlY29yZHNcIiwgcmVjb3JkcylcblxuICAgICAgICBjb25zdCB0ZXh0RW5jb2RlciA9IG5ldyBUZXh0RW5jb2RlcigpLFxuICAgICAgICAgIGJhdGNoOiBQdXRSZWNvcmRCYXRjaElucHV0W1wiUmVjb3Jkc1wiXSA9IHJlY29yZEpzb25zLm1hcChqc29uU3RyID0+ICh7XG4gICAgICAgICAgICBEYXRhOiB0ZXh0RW5jb2Rlci5lbmNvZGUoanNvblN0cilcbiAgICAgICAgICB9KSlcblxuICAgICAgICBsb2cuaW5mbyhgUHVzaGluZyAke3JlY29yZHMubGVuZ3RofSByZWNvcmRzIHRvIGZpcmVob3NlYClcblxuICAgICAgICBjb25zdCBjbWQgPSBuZXcgUHV0UmVjb3JkQmF0Y2hDb21tYW5kKHtcbiAgICAgICAgICBEZWxpdmVyeVN0cmVhbU5hbWU6IHN0cmVhbU5hbWUsXG4gICAgICAgICAgUmVjb3JkczogYmF0Y2hcbiAgICAgICAgfSlcblxuICAgICAgICBjb25zdCByZXNwID0gYXdhaXQgY2xpZW50LnNlbmQoY21kKVxuICAgICAgICBjb25zdCBmYWlsZWQgPSByZXNwLkZhaWxlZFB1dENvdW50IHx8IDBcbiAgICAgICAgaWYgKGZhaWxlZCkge1xuICAgICAgICAgIGNvbnN0IHJyID0gcmVzcC5SZXF1ZXN0UmVzcG9uc2VzIHx8IFtdXG4gICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByci5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKHJyW2ldLkVycm9yQ29kZSkge1xuICAgICAgICAgICAgICBsb2cud2FybihcbiAgICAgICAgICAgICAgICBgUmVjb3JkIGZhaWxlZDogJHtycltpXS5FcnJvckNvZGV9ICR7cnJbaV0uRXJyb3JNZXNzYWdlfWBcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAvL3RoaXMucGVuZGluZ1JlY29yZHMudW5zaGlmdChyZWNvcmRzW2ldKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBsb2cuaW5mbyhgUHV0UmVjb3JkQmF0Y2ggZmFpbGVkPSR7ZmFpbGVkfTsgcmVxdWV1ZWQgZmFpbGVkIHJlY29yZHNgKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZy5pbmZvKGBQdXRSZWNvcmRCYXRjaCBvayBjb3VudD0ke3JlY29yZHMubGVuZ3RofWApXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGRlZmVycmVkLnJlc29sdmUoKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgbG9nLmVycm9yKFwiRmFpbGVkIHRvIHB1c2ggbG9nc1wiLCBlcnIpXG4gICAgICBpZiAoZXJyLm5hbWUgPT09IEV4cGlyZWRUb2tlbkV4Y2VwdGlvbkNvZGUpIHtcbiAgICAgICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlci5mb3JjZVVwZGF0ZUNyZWRlbnRpYWxzKClcbiAgICAgIH1cbiAgICAgIGRlZmVycmVkLnJlamVjdChlcnIpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuZmx1c2hEZWZlcnJlZCA9IG51bGxcblxuICAgICAgLy8gaWYgKHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoKVxuICAgICAgLy8gICB0aGlzLmZsdXNoKClcbiAgICB9XG5cbiAgICByZXR1cm4gZGVmZXJyZWQucHJvbWlzZVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEFXU0ZpcmVob3NlQXBwZW5kZXJcbiJdfQ==
|
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.PushLogRecordsAppender = exports.PushLogRecordsCredentialManager = void 0;
|
|
7
|
-
/* eslint-disable typescript/no-explicit-any */
|
|
7
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
8
8
|
const eventemitter3_1 = __importDefault(require("eventemitter3"));
|
|
9
9
|
const index_js_1 = require("../../../helpers/index.js");
|
|
10
10
|
const InternalLogger_js_1 = require("../../InternalLogger.js");
|
|
@@ -296,4 +296,4 @@ class PushLogRecordsAppender {
|
|
|
296
296
|
}
|
|
297
297
|
exports.PushLogRecordsAppender = PushLogRecordsAppender;
|
|
298
298
|
exports.default = PushLogRecordsAppender;
|
|
299
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVzaExvZ1JlY29yZHNBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9wdXNoL1B1c2hMb2dSZWNvcmRzQXBwZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsK0NBQStDO0FBQy9DLGtFQUF5QztBQUN6Qyx3REFBb0Q7QUFHcEQsK0RBQTJEO0FBRTNELG1EQUFtRDtBQUNuRCxNQUFNLG9CQUFvQixHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFBLENBQUMsYUFBYTtBQUN4RCxNQUFNLHdCQUF3QixHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFBLENBQUMsc0NBQXNDO0FBQ3JGLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFBO0FBQzlCLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQSxDQUFDLGFBQWE7QUFDaEQsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLENBQUE7QUFDbkMsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFBO0FBRWxDLE1BQU0sR0FBRyxHQUFHLElBQUEscUNBQWlCLEdBQUUsQ0FBQTtBQU8vQjs7O0dBR0c7QUFDSCxNQUFhLCtCQUFnQyxTQUFRLHVCQUFzRDtJQUs3RTtJQUpwQixZQUFZLEdBQXlDLElBQUksQ0FBQTtJQUN6RCxrQkFBa0IsR0FBMEIsSUFBSSxDQUFBO0lBQ2hELG9CQUFvQixHQUFrQixJQUFJLENBQUE7SUFFbEQsWUFBNEIsV0FBbUI7UUFDN0MsS0FBSyxFQUFFLENBQUE7UUFEbUIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7SUFFL0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUMvQixPQUFPLEtBQUssQ0FBQTtRQUNkLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxJ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QztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7WUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7UUFDeEIsQ0FBQztRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUVoQyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFBO1FBQzVELENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQTtRQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFyS0Qsd0RBcUtDO0FBRUQsa0JBQWUsc0JBQXNCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSB0eXBlc2NyaXB0L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IEV2ZW50RW1pdHRlcjMgZnJvbSBcImV2ZW50ZW1pdHRlcjNcIlxuaW1wb3J0IHsgRGVmZXJyZWQgfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9pbmRleC5qc1wiXG5pbXBvcnQgeyBMb2dSZWNvcmQgfSBmcm9tIFwiLi4vLi4vTG9nUmVjb3JkLmpzXCJcbmltcG9ydCB7IEFwcGVuZGVyIH0gZnJvbSBcIi4uLy4uL0FwcGVuZGVyLmpzXCJcbmltcG9ydCB7IGdldEludGVybmFsTG9nZ2VyIH0gZnJvbSBcIi4uLy4uL0ludGVybmFsTG9nZ2VyLmpzXCJcblxuLy8gQ29uc3RhbnRzIGZvciB0dW5pbmcgKGFkanVzdGFibGUgaW4gZGV2ZWxvcG1lbnQpXG5jb25zdCBDT09LSUVfRVhQSVJBVElPTl9NUyA9IDUgKiA2MCAqIDEwMDAgLy8gMzAgbWludXRlc1xuY29uc3QgQ09PS0lFX1JFRlJFU0hfQlVGRkVSX01TID0gMiAqIDYwICogMTAwMCAvLyBSZWZyZXNoIDIgbWludXRlcyBiZWZvcmUgZXhwaXJhdGlvblxuY29uc3QgRkxVU0hfUVVFVUVfREVQVEggPSAxMDAwXG5jb25zdCBGTFVTSF9JTlRFUlZBTF9NUyA9IDUgKiAxMDAwIC8vIDEwIHNlY29uZHNcbmNvbnN0IExPR19RVUVVRV9NQVhfUkVDT1JEUyA9IDEwMDAwXG5jb25zdCBDT09LSUVfTkFNRSA9IFwid2lyZV9sb2dzX2lkXCJcblxuY29uc3QgbG9nID0gZ2V0SW50ZXJuYWxMb2dnZXIoKVxuXG5pbnRlcmZhY2UgUHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlckV2ZW50TWFwIHtcbiAgcmVjZWl2ZWQ6ICgpID0+IHZvaWRcbiAgZXhwaXJlZDogKCkgPT4gdm9pZFxufVxuXG4vKipcbiAqIE1hbmFnZXMgY3JlZGVudGlhbCBjb29raWUgZm9yIFB1c2hMb2dSZWNvcmRzQXBwZW5kZXIuXG4gKiBJbnZva2VzIHRoZSBlbmRwb2ludCB2aWEgUE9TVCB0byBvYnRhaW4gYSBzZXNzaW9uIGNvb2tpZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXIgZXh0ZW5kcyBFdmVudEVtaXR0ZXIzPFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXJFdmVudE1hcD4ge1xuICBwcml2YXRlIHJlZnJlc2hUaW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsID0gbnVsbFxuICBwcml2YXRlIGNyZWRlbnRpYWxEZWZlcnJlZDogRGVmZXJyZWQ8dm9pZD4gfCBudWxsID0gbnVsbFxuICBwcml2YXRlIGNvb2tpZUV4cGlyYXRpb25UaW1lOiBudW1iZXIgfCBudWxsID0gbnVsbFxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBlbmRwb2ludFVybDogc3RyaW5nKSB7XG4gICAgc3VwZXIoKVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHZhbGlkIGNyZWRlbnRpYWxzIGV4aXN0XG4gICAqL1xuICBoYXNDcmVkZW50aWFscygpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY29va2llRXhwaXJhdGlvblRpbWUpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIGlmIChEYXRlLm5vdygpID49IHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUpIHtcbiAgICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBudWxsXG4gICAgICB0aGlzLmVtaXQoXCJleHBpcmVkXCIpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjcmVkZW50aWFscywgZmV0Y2hpbmcgdGhlbSBpZiBuZWNlc3NhcnlcbiAgICovXG4gIGFzeW5jIGVuc3VyZUNyZWRlbnRpYWxzKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIC8vIElmIHdlIGhhdmUgdmFsaWQgY3JlZGVudGlhbHMsIHJldHVybiBpbW1lZGlhdGVseVxuICAgIGlmICh0aGlzLmhhc0NyZWRlbnRpYWxzKCkpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgLy8gSWYgYSBmZXRjaCBpcyBhbHJlYWR5IGluIHByb2dyZXNzLCB3YWl0IGZvciBpdFxuICAgIGlmICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCAmJiAhdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHRoaXMuY3JlZGVudGlhbERlZmVycmVkLnByb21pc2VcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQ3JlZGVudGlhbHMoKVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZldGNoIG5ldyBjcmVkZW50aWFsc1xuICAgIHJldHVybiB0aGlzLmZldGNoQ3JlZGVudGlhbHMoKVxuICB9XG5cbiAgLyoqXG4gICAqIEZvcmNlIHJlZnJlc2ggb2YgY3JlZGVudGlhbHNcbiAgICovXG4gIGZvcmNlUmVmcmVzaCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlZnJlc2hUaW1lcilcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBudWxsXG5cbiAgICBpZiAodGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgJiYgIXRoaXMuY3JlZGVudGlhbERlZmVycmVkLmlzU2V0dGxlZCgpKSB7XG4gICAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5yZWplY3QobmV3IEVycm9yKFwiRm9yY2UgcmVmcmVzaCByZXF1ZXN0ZWRcIikpXG4gICAgfVxuICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuXG4gICAgdGhpcy5mZXRjaENyZWRlbnRpYWxzKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgLy8gSWdub3JlIGVycm9ycyBkdXJpbmcgZm9yY2UgcmVmcmVzaCwgdGhleSdsbCBiZSBoYW5kbGVkIG9uIG5leHQgcmVxdWVzdFxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggY3JlZGVudGlhbHMgZnJvbSB0aGUgZW5kcG9pbnRcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmV0Y2hDcmVkZW50aWFscygpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBkZWZlcnJlZCA9ICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCA9IG5ldyBEZWZlcnJlZDx2b2lkPigpKVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godGhpcy5lbmRwb2ludFVybCwge1xuICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICBtb2RlOiBcImNvcnNcIixcbiAgICAgICAgY3JlZGVudGlhbHM6IFwiaW5jbHVkZVwiLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCJcbiAgICAgICAgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe30pXG4gICAgICB9KVxuXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgQ3JlZGVudGlhbCByZXF1ZXN0IGZhaWxlZCB3aXRoIHN0YXR1cyAke3Jlc3BvbnNlLnN0YXR1c31gXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gQ29va2llIGlzIHNldCBieSBTZXQtQ29va2llIGhlYWRlciwgd2UganVzdCBuZWVkIHRvIHRyYWNrIGV4cGlyYXRpb25cbiAgICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBEYXRlLm5vdygpICsgQ09PS0lFX0VYUElSQVRJT05fTVNcblxuICAgICAgLy8gU2NoZWR1bGUgcmVmcmVzaCBiZWZvcmUgZXhwaXJhdGlvblxuICAgICAgdGhpcy5zY2hlZHVsZVJlZnJlc2goKVxuXG4gICAgICBkZWZlcnJlZC5yZXNvbHZlKClcbiAgICAgIHRoaXMuZW1pdChcInJlY2VpdmVkXCIpXG5cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cud2FybihcIkZhaWxlZCB0byBmZXRjaCBwdXNoIGxvZyBjcmVkZW50aWFsc1wiLCBlcnIpXG4gICAgICBkZWZlcnJlZC5yZWplY3QoZXJyKVxuICAgICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgPSBudWxsXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2NoZWR1bGUgYSBjcmVkZW50aWFsIHJlZnJlc2ggYmVmb3JlIGV4cGlyYXRpb25cbiAgICovXG4gIHByaXZhdGUgc2NoZWR1bGVSZWZyZXNoKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZnJlc2hUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaFRpbWVyKVxuICAgIH1cblxuICAgIGNvbnN0IHJlZnJlc2hJbiA9IENPT0tJRV9FWFBJUkFUSU9OX01TIC0gQ09PS0lFX1JFRlJFU0hfQlVGRkVSX01TXG4gICAgdGhpcy5yZWZyZXNoVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuICAgICAgdGhpcy5mZXRjaENyZWRlbnRpYWxzKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAvLyBMb2cgYnV0IGRvbid0IHRocm93IC0gd2lsbCByZXRyeSBvbiBuZXh0IHJlcXVlc3RcbiAgICAgICAgbG9nLmRlYnVnKFwiU2NoZWR1bGVkIGNyZWRlbnRpYWwgcmVmcmVzaCBmYWlsZWRcIilcbiAgICAgIH0pXG4gICAgfSwgcmVmcmVzaEluKVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIHVwIHJlc291cmNlc1xuICAgKi9cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlZnJlc2hUaW1lcilcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIGlmICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCAmJiAhdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkLnJlamVjdChuZXcgRXJyb3IoXCJDcmVkZW50aWFsIG1hbmFnZXIgZGVzdHJveWVkXCIpKVxuICAgIH1cblxuICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBudWxsXG4gIH1cbn1cblxuLyoqXG4gKiBBcHBlbmRlciB0aGF0IHB1c2hlcyBsb2cgcmVjb3JkcyB0byBhIHJlbW90ZSBlbmRwb2ludCB2aWEgSFRUUCBQVVQuXG4gKiBCYXRjaGVzIHJlY29yZHMgYW5kIHNlbmRzIHdoZW4gcXVldWUgcmVhY2hlcyBGTFVTSF9RVUVVRV9ERVBUSCBvciBGTFVTSF9JTlRFUlZBTF9NUyBoYXMgZWxhcHNlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFB1c2hMb2dSZWNvcmRzQXBwZW5kZXI8XG4gIFJlY29yZCBleHRlbmRzIExvZ1JlY29yZCA9IExvZ1JlY29yZFxuPiBpbXBsZW1lbnRzIEFwcGVuZGVyPFJlY29yZD4ge1xuICBwcml2YXRlIHBlbmRpbmdSZWNvcmRzOiBMb2dSZWNvcmRbXSA9IFtdXG4gIHByaXZhdGUgZmx1c2hEZWZlcnJlZDogRGVmZXJyZWQ8dm9pZD4gfCBudWxsID0gbnVsbFxuICBwcml2YXRlIGZsdXNoVGltZXI6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGxcblxuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbE1hbmFnZXI6IFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXJcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZW5kcG9pbnRVcmw6IHN0cmluZykge1xuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIgPSBuZXcgUHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlcihlbmRwb2ludFVybClcblxuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIub24oXCJyZWNlaXZlZFwiLCAoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoIHx8IHRoaXMuZmx1c2hEZWZlcnJlZCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIEVycm9ycyBoYW5kbGVkIGluIGZsdXNoXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQXBwZW5kIGEgbG9nIHJlY29yZCB0byB0aGUgcXVldWVcbiAgICovXG4gIGFwcGVuZChyZWNvcmQ6IFJlY29yZCk6IHZvaWQge1xuICAgIC8vIEFkZCB0aGUgcmVjb3JkIHdpdGggZW5yaWNoZWQgbWV0YWRhdGFcbiAgICB0aGlzLnBlbmRpbmdSZWNvcmRzLnB1c2goe1xuICAgICAgdGltZXN0YW1wOiBEYXRlLm5vdygpLFxuICAgICAgLi4ucmVjb3JkLFxuICAgICAgYXBwOiByZWNvcmQuYXBwICYmIHJlY29yZC5hcHAubGVuZ3RoID4gMCA/IHJlY29yZC5hcHAgOiBcIlVOS05PV05cIixcbiAgICAgIGVudjogcmVjb3JkLmVudiAmJiByZWNvcmQuZW52Lmxlbmd0aCA+IDAgPyByZWNvcmQuZW52IDogXCJVTktOT1dOXCIsXG4gICAgICB1cmw6IHR5cGVvZiB3aW5kb3cgPT09IFwidW5kZWZpbmVkXCIgPyBcImxvY2FsOi8vXCIgOiB3aW5kb3cubG9jYXRpb24uaHJlZlxuICAgIH0pXG4gICAgdGhpcy50cmltUGVuZGluZ1JlY29yZHNUb1F1ZXVlQ2FwKClcblxuICAgIC8vIENoZWNrIGlmIHdlIHNob3VsZCBmbHVzaCBpbW1lZGlhdGVseSBkdWUgdG8gcXVldWUgZGVwdGhcbiAgICBpZiAodGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggPj0gRkxVU0hfUVVFVUVfREVQVEgpIHtcbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIEVycm9ycyBoYW5kbGVkIGluIGZsdXNoXG4gICAgICB9KVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTY2hlZHVsZSBhIGZsdXNoIGlmIG5vdCBhbHJlYWR5IHNjaGVkdWxlZFxuICAgICAgdGhpcy5zY2hlZHVsZUZsdXNoKClcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2NoZWR1bGUgYSBmbHVzaCBhZnRlciB0aGUgaW50ZXJ2YWxcbiAgICovXG4gIHByaXZhdGUgc2NoZWR1bGVGbHVzaCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mbHVzaFRpbWVyKSB7XG4gICAgICByZXR1cm4gLy8gQWxyZWFkeSBzY2hlZHVsZWRcbiAgICB9XG5cbiAgICB0aGlzLmZsdXNoVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuZmx1c2hUaW1lciA9IG51bGxcbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIEVycm9ycyBoYW5kbGVkIGluIGZsdXNoXG4gICAgICB9KVxuICAgIH0sIEZMVVNIX0lOVEVSVkFMX01TKVxuICB9XG5cbiAgLyoqXG4gICAqIEZsdXNoIHBlbmRpbmcgcmVjb3JkcyB0byB0aGUgZW5kcG9pbnRcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmx1c2goKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gUHJldmVudCBjb25jdXJyZW50IGZsdXNoZXNcbiAgICBpZiAodGhpcy5mbHVzaERlZmVycmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5mbHVzaERlZmVycmVkLnByb21pc2VcbiAgICB9XG5cbiAgICAvLyBOb3RoaW5nIHRvIGZsdXNoXG4gICAgaWYgKCF0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIHdlIGhhdmUgdmFsaWQgY3JlZGVudGlhbHNcbiAgICBjb25zdCBoYXNDcmVkZW50aWFscyA9IGF3YWl0IHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZW5zdXJlQ3JlZGVudGlhbHMoKVxuICAgIGlmICghaGFzQ3JlZGVudGlhbHMpIHtcbiAgICAgIGxvZy5kZWJ1ZyhcIkZhaWxlZCB0byBwdXNoIGxvZyByZWNvcmRzXCIsIFwiTm8gdmFsaWQgY3JlZGVudGlhbHMgYXZhaWxhYmxlXCIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBkZWZlcnJlZCA9ICh0aGlzLmZsdXNoRGVmZXJyZWQgPSBuZXcgRGVmZXJyZWQ8dm9pZD4oKSlcblxuICAgIHRyeSB7XG4gICAgICAvLyBUYWtlIGFsbCBwZW5kaW5nIHJlY29yZHMgZm9yIHRoaXMgZmx1c2hcbiAgICAgIGNvbnN0IHJlY29yZHMgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLnNwbGljZSgwLCB0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aClcbiAgICAgIGNvbnN0IHBheWxvYWQgPSB7IHJlY29yZHM6IHJlY29yZHMubWFwKHJlY29yZCA9PiBKU09OLnN0cmluZ2lmeShyZWNvcmQpKSB9XG5cbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godGhpcy5lbmRwb2ludFVybCwge1xuICAgICAgICBtZXRob2Q6IFwiUFVUXCIsXG4gICAgICAgIG1vZGU6IFwiY29yc1wiLFxuICAgICAgICBjcmVkZW50aWFsczogXCJpbmNsdWRlXCIsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIlxuICAgICAgICB9LFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKVxuICAgICAgfSlcblxuICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICAvLyBSZS1xdWV1ZSByZWNvcmRzIG9uIGZhaWx1cmVcbiAgICAgICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy51bnNoaWZ0KC4uLnJlY29yZHMpXG4gICAgICAgIHRoaXMudHJpbVBlbmRpbmdSZWNvcmRzVG9RdWV1ZUNhcCgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgUHVzaCBmYWlsZWQgd2l0aCBzdGF0dXMgJHtyZXNwb25zZS5zdGF0dXN9YClcbiAgICAgIH1cblxuICAgICAgZGVmZXJyZWQucmVzb2x2ZSgpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cuZGVidWcoXCJGYWlsZWQgdG8gcHVzaCBsb2cgcmVjb3Jkc1wiLCBlcnIpXG4gICAgICBkZWZlcnJlZC5yZWplY3QoZXJyKVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmZsdXNoRGVmZXJyZWQgPSBudWxsXG5cbiAgICAgIC8vIElmIG1vcmUgcmVjb3JkcyBhY2N1bXVsYXRlZCBkdXJpbmcgZmx1c2gsIHNjaGVkdWxlIGFub3RoZXJcbiAgICAgIGlmICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5zY2hlZHVsZUZsdXNoKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZGVmZXJyZWQucHJvbWlzZVxuICB9XG5cbiAgLyoqXG4gICAqIEZvcmNlIGFuIGltbWVkaWF0ZSBmbHVzaFxuICAgKi9cbiAgYXN5bmMgZm9yY2VGbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5mbHVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5mbHVzaFRpbWVyKVxuICAgICAgdGhpcy5mbHVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmZsdXNoKClcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmZvcmNlIHRoZSBwZW5kaW5nIHF1ZXVlIGNhcCBieSBkcm9wcGluZyB0aGUgb2xkZXN0IHJlY29yZHMuXG4gICAqL1xuICBwcml2YXRlIHRyaW1QZW5kaW5nUmVjb3Jkc1RvUXVldWVDYXAoKTogdm9pZCB7XG4gICAgY29uc3QgcmVtb3ZlQ291bnQgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCAtIExPR19RVUVVRV9NQVhfUkVDT1JEU1xuXG4gICAgaWYgKHJlbW92ZUNvdW50ID4gMCkge1xuICAgICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy5zcGxpY2UoMCwgcmVtb3ZlQ291bnQpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIHVwIHJlc291cmNlc1xuICAgKi9cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mbHVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5mbHVzaFRpbWVyKVxuICAgICAgdGhpcy5mbHVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZGVzdHJveSgpXG5cbiAgICBpZiAodGhpcy5mbHVzaERlZmVycmVkICYmICF0aGlzLmZsdXNoRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRoaXMuZmx1c2hEZWZlcnJlZC5yZWplY3QobmV3IEVycm9yKFwiQXBwZW5kZXIgZGVzdHJveWVkXCIpKVxuICAgIH1cblxuICAgIHRoaXMuZmx1c2hEZWZlcnJlZCA9IG51bGxcbiAgICB0aGlzLnBlbmRpbmdSZWNvcmRzID0gW11cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBQdXNoTG9nUmVjb3Jkc0FwcGVuZGVyXG4iXX0=
|
|
299
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVzaExvZ1JlY29yZHNBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9wdXNoL1B1c2hMb2dSZWNvcmRzQXBwZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsdURBQXVEO0FBQ3ZELGtFQUF5QztBQUN6Qyx3REFBb0Q7QUFHcEQsK0RBQTJEO0FBRTNELG1EQUFtRDtBQUNuRCxNQUFNLG9CQUFvQixHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFBLENBQUMsYUFBYTtBQUN4RCxNQUFNLHdCQUF3QixHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxDQUFBLENBQUMsc0NBQXNDO0FBQ3JGLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFBO0FBQzlCLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQSxDQUFDLGFBQWE7QUFDaEQsTUFBTSxxQkFBcUIsR0FBRyxLQUFLLENBQUE7QUFDbkMsTUFBTSxXQUFXLEdBQUcsY0FBYyxDQUFBO0FBRWxDLE1BQU0sR0FBRyxHQUFHLElBQUEscUNBQWlCLEdBQUUsQ0FBQTtBQU8vQjs7O0dBR0c7QUFDSCxNQUFhLCtCQUFnQyxTQUFRLHVCQUFzRDtJQUs3RTtJQUpwQixZQUFZLEdBQXlDLElBQUksQ0FBQTtJQUN6RCxrQkFBa0IsR0FBMEIsSUFBSSxDQUFBO0lBQ2hELG9CQUFvQixHQUFrQixJQUFJLENBQUE7SUFFbEQsWUFBNEIsV0FBbUI7UUFDN0MsS0FBSyxFQUFFLENBQUE7UUFEbUIsZ0JBQVcsR0FBWCxXQUFXLENBQVE7SUFFL0MsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUMvQixPQUFPLEtBQUssQ0FBQTtRQUNkLENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFBO1lBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUE7WUFDcEIsT0FBTyxLQUFLLENBQUE7UUFDZCxDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUE7SUFDYixDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLG1EQUFtRDtRQUNuRCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDO1lBQzFCLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUVELGlEQUFpRDtRQUNqRCxJQUFJLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxTQUFTLEVBQUUsRUFBRSxDQUFDO1lBQ3BFLElBQUksQ0FBQztnQkFDSCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUE7Z0JBQ3JDLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFBO1lBQzlCLENBQUM7WUFBQyxNQUFNLENBQUM7Z0JBQ1AsT0FBTyxLQUFLLENBQUE7WUFDZCxDQUFDO1FBQ0gsQ0FBQztRQUVELHdCQUF3QjtRQUN4QixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFBO0lBQ2hDLENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVixJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUN0QixZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFBO1lBQy9CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFBO1FBQzFCLENBQUM7UUFFRCxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFBO1FBRWhDLElBQUksSUFBSSxDQUFDLGtCQUFrQixJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDcEUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUE7UUFDdEUsQ0FBQztRQUNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUE7UUFFOUIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtZQUNqQyx5RUFBeUU7UUFDM0UsQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSyxLQUFLLENBQUMsZ0JBQWdCO1FBQzVCLE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksbUJBQVEsRUFBUSxDQUFDLENBQUE7UUFFakUsSUFBSSxDQUFDO1lBQ0gsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDN0MsTUFBTSxFQUFFLE1BQU07Z0JBQ2QsSUFBSSxFQUFFLE1BQU07Z0JBQ1osV0FBVyxFQUFFLFNBQVM7Z0JBQ3RCLE9BQU8sRUFBRTtvQkFDUCxjQUFjLEVBQUUsa0JBQWtCO2lCQUNuQztnQkFDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7YUFDekIsQ0FBQyxDQUFBO1lBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDakIsTUFBTSxJQUFJLEtBQUssQ0FDYix5Q0FBeUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUMzRCxDQUFBO1lBQ0gsQ0FBQztZQUVELHVFQUF1RTtZQUN2RSxJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLG9CQUFvQixDQUFBO1lBRTdELHFDQUFxQztZQUNyQyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7WUFFdEIsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFBO1lBQ2xCLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7WUFFckIsT0FBTyxJQUFJLENBQUE7UUFDYixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLEdBQUcsQ0FBQyxJQUFJLENBQUMsc0NBQXNDLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDckQsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtZQUNwQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFBO1lBQzlCLE9BQU8sS0FBSyxDQUFBO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLGVBQWU7UUFDckIsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtRQUNqQyxDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsb0JBQW9CLEdBQUcsd0JBQXdCLENBQUE7UUFDakUsSUFBSSxDQUFDLFlBQVksR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUE7WUFDOUIsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtnQkFDakMsbURBQW1EO2dCQUNuRCxHQUFHLENBQUMsS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUE7WUFDbEQsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDZixDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsSUFBSSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDdEIsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQTtZQUMvQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQTtRQUMxQixDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsa0JBQWtCLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztZQUNwRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUMsQ0FBQTtRQUMzRSxDQUFDO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQTtRQUM5QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxDQUFBO0lBQ2xDLENBQUM7Q0FDRjtBQWpKRCwwRUFpSkM7QUFFRDs7O0dBR0c7QUFDSCxNQUFhLHNCQUFzQjtJQVNMO0lBTnBCLGNBQWMsR0FBZ0IsRUFBRSxDQUFBO0lBQ2hDLGFBQWEsR0FBMEIsSUFBSSxDQUFBO0lBQzNDLFVBQVUsR0FBeUMsSUFBSSxDQUFBO0lBRS9DLGlCQUFpQixDQUFpQztJQUVsRSxZQUE0QixXQUFtQjtRQUFuQixnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUM3QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSwrQkFBK0IsQ0FBQyxXQUFXLENBQUMsQ0FBQTtRQUV6RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLFVBQVUsRUFBRSxHQUFHLEVBQUU7WUFDekMsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztnQkFDdEQsT0FBTTtZQUNSLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRTtnQkFDdEIsMEJBQTBCO1lBQzVCLENBQUMsQ0FBQyxDQUFBO1FBQ0osQ0FBQyxDQUFDLENBQUE7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsTUFBYztRQUNuQix3Q0FBd0M7UUFDeEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUM7WUFDdkIsU0FBUyxFQUFFLElBQUksQ0FBQyxHQUFHLEVBQUU7WUFDckIsR0FBRyxNQUFNO1lBQ1QsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ2pFLEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxJQUFJLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNqRSxHQUFHLEVBQUUsT0FBTyxNQUFNLEtBQUssV0FBVyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSTtTQUN2RSxDQUFDLENBQUE7UUFDRixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQTtRQUVuQywwREFBMEQ7UUFDMUQsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sSUFBSSxpQkFBaUIsRUFBRSxDQUFDO1lBQ3BELElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO2dCQUN0QiwwQkFBMEI7WUFDNUIsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLDRDQUE0QztZQUM1QyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDdEIsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLGFBQWE7UUFDbkIsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsT0FBTSxDQUFDLG9CQUFvQjtRQUM3QixDQUFDO1FBRUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFBO1lBQ3RCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFO2dCQUN0QiwwQkFBMEI7WUFDNUIsQ0FBQyxDQUFDLENBQUE7UUFDSixDQUFDLEVBQUUsaUJBQWlCLENBQUMsQ0FBQTtJQUN2QixDQUFDO0lBRUQ7O09BRUc7SUFDSyxLQUFLLENBQUMsS0FBSztRQUNqQiw2QkFBNkI7UUFDN0IsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQTtRQUNuQyxDQUFDO1FBRUQsbUJBQW1CO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hDLE9BQU07UUFDUixDQUFDO1FBRUQsbUNBQW1DO1FBQ25DLE1BQU0sY0FBYyxHQUFHLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGlCQUFpQixFQUFFLENBQUE7UUFDdkUsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ3BCLEdBQUcsQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEVBQUUsZ0NBQWdDLENBQUMsQ0FBQTtZQUN6RSxPQUFNO1FBQ1IsQ0FBQztRQUVELE1BQU0sUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLG1CQUFRLEVBQVEsQ0FBQyxDQUFBO1FBRTVELElBQUksQ0FBQztZQUNILDBDQUEwQztZQUMxQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQTtZQUN6RSxNQUFNLE9BQU8sR0FBRyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUE7WUFFMUUsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDN0MsTUFBTSxFQUFFLEtBQUs7Z0JBQ2IsSUFBSSxFQUFFLE1BQU07Z0JBQ1osV0FBVyxFQUFFLFNBQVM7Z0JBQ3RCLE9BQU8sRUFBRTtvQkFDUCxjQUFjLEVBQUUsa0JBQWtCO2lCQUNuQztnQkFDRCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUM7YUFDOUIsQ0FBQyxDQUFBO1lBRUYsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDakIsOEJBQThCO2dCQUM5QixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxHQUFHLE9BQU8sQ0FBQyxDQUFBO2dCQUN2QyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQTtnQkFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7WUFDL0QsQ0FBQztZQUVELFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUNwQixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLEdBQUcsQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDNUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQTtRQUN0QixDQUFDO2dCQUFTLENBQUM7WUFDVCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQTtZQUV6Qiw2REFBNkQ7WUFDN0QsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDbkMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFBO1lBQ3RCLENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxRQUFRLENBQUMsT0FBTyxDQUFBO0lBQ3pCLENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUssQ0FBQyxVQUFVO1FBQ2QsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDcEIsWUFBWSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQTtZQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQTtRQUN4QixDQUFDO1FBRUQsT0FBTyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDckIsQ0FBQztJQUVEOztPQUVHO0lBQ0ssNEJBQTRCO1FBQ2xDLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLHFCQUFxQixDQUFBO1FBRXRFLElBQUksV0FBVyxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUM1QyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7WUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7UUFDeEIsQ0FBQztRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUVoQyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFBO1FBQzVELENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQTtRQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFyS0Qsd0RBcUtDO0FBRUQsa0JBQWUsc0JBQXNCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55ICovXG5pbXBvcnQgRXZlbnRFbWl0dGVyMyBmcm9tIFwiZXZlbnRlbWl0dGVyM1wiXG5pbXBvcnQgeyBEZWZlcnJlZCB9IGZyb20gXCIuLi8uLi8uLi9oZWxwZXJzL2luZGV4LmpzXCJcbmltcG9ydCB7IExvZ1JlY29yZCB9IGZyb20gXCIuLi8uLi9Mb2dSZWNvcmQuanNcIlxuaW1wb3J0IHsgQXBwZW5kZXIgfSBmcm9tIFwiLi4vLi4vQXBwZW5kZXIuanNcIlxuaW1wb3J0IHsgZ2V0SW50ZXJuYWxMb2dnZXIgfSBmcm9tIFwiLi4vLi4vSW50ZXJuYWxMb2dnZXIuanNcIlxuXG4vLyBDb25zdGFudHMgZm9yIHR1bmluZyAoYWRqdXN0YWJsZSBpbiBkZXZlbG9wbWVudClcbmNvbnN0IENPT0tJRV9FWFBJUkFUSU9OX01TID0gNSAqIDYwICogMTAwMCAvLyAzMCBtaW51dGVzXG5jb25zdCBDT09LSUVfUkVGUkVTSF9CVUZGRVJfTVMgPSAyICogNjAgKiAxMDAwIC8vIFJlZnJlc2ggMiBtaW51dGVzIGJlZm9yZSBleHBpcmF0aW9uXG5jb25zdCBGTFVTSF9RVUVVRV9ERVBUSCA9IDEwMDBcbmNvbnN0IEZMVVNIX0lOVEVSVkFMX01TID0gNSAqIDEwMDAgLy8gMTAgc2Vjb25kc1xuY29uc3QgTE9HX1FVRVVFX01BWF9SRUNPUkRTID0gMTAwMDBcbmNvbnN0IENPT0tJRV9OQU1FID0gXCJ3aXJlX2xvZ3NfaWRcIlxuXG5jb25zdCBsb2cgPSBnZXRJbnRlcm5hbExvZ2dlcigpXG5cbmludGVyZmFjZSBQdXNoTG9nUmVjb3Jkc0NyZWRlbnRpYWxNYW5hZ2VyRXZlbnRNYXAge1xuICByZWNlaXZlZDogKCkgPT4gdm9pZFxuICBleHBpcmVkOiAoKSA9PiB2b2lkXG59XG5cbi8qKlxuICogTWFuYWdlcyBjcmVkZW50aWFsIGNvb2tpZSBmb3IgUHVzaExvZ1JlY29yZHNBcHBlbmRlci5cbiAqIEludm9rZXMgdGhlIGVuZHBvaW50IHZpYSBQT1NUIHRvIG9idGFpbiBhIHNlc3Npb24gY29va2llLlxuICovXG5leHBvcnQgY2xhc3MgUHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlciBleHRlbmRzIEV2ZW50RW1pdHRlcjM8UHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlckV2ZW50TWFwPiB7XG4gIHByaXZhdGUgcmVmcmVzaFRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsXG4gIHByaXZhdGUgY3JlZGVudGlhbERlZmVycmVkOiBEZWZlcnJlZDx2b2lkPiB8IG51bGwgPSBudWxsXG4gIHByaXZhdGUgY29va2llRXhwaXJhdGlvblRpbWU6IG51bWJlciB8IG51bGwgPSBudWxsXG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGVuZHBvaW50VXJsOiBzdHJpbmcpIHtcbiAgICBzdXBlcigpXG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdmFsaWQgY3JlZGVudGlhbHMgZXhpc3RcbiAgICovXG4gIGhhc0NyZWRlbnRpYWxzKCk6IGJvb2xlYW4ge1xuICAgIGlmICghdGhpcy5jb29raWVFeHBpcmF0aW9uVGltZSkge1xuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgaWYgKERhdGUubm93KCkgPj0gdGhpcy5jb29raWVFeHBpcmF0aW9uVGltZSkge1xuICAgICAgdGhpcy5jb29raWVFeHBpcmF0aW9uVGltZSA9IG51bGxcbiAgICAgIHRoaXMuZW1pdChcImV4cGlyZWRcIilcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIHJldHVybiB0cnVlXG4gIH1cblxuICAvKipcbiAgICogR2V0IGNyZWRlbnRpYWxzLCBmZXRjaGluZyB0aGVtIGlmIG5lY2Vzc2FyeVxuICAgKi9cbiAgYXN5bmMgZW5zdXJlQ3JlZGVudGlhbHMoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgLy8gSWYgd2UgaGF2ZSB2YWxpZCBjcmVkZW50aWFscywgcmV0dXJuIGltbWVkaWF0ZWx5XG4gICAgaWYgKHRoaXMuaGFzQ3JlZGVudGlhbHMoKSkge1xuICAgICAgcmV0dXJuIHRydWVcbiAgICB9XG5cbiAgICAvLyBJZiBhIGZldGNoIGlzIGFscmVhZHkgaW4gcHJvZ3Jlc3MsIHdhaXQgZm9yIGl0XG4gICAgaWYgKHRoaXMuY3JlZGVudGlhbERlZmVycmVkICYmICF0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5pc1NldHRsZWQoKSkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgYXdhaXQgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQucHJvbWlzZVxuICAgICAgICByZXR1cm4gdGhpcy5oYXNDcmVkZW50aWFscygpXG4gICAgICB9IGNhdGNoIHtcbiAgICAgICAgcmV0dXJuIGZhbHNlXG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRmV0Y2ggbmV3IGNyZWRlbnRpYWxzXG4gICAgcmV0dXJuIHRoaXMuZmV0Y2hDcmVkZW50aWFscygpXG4gIH1cblxuICAvKipcbiAgICogRm9yY2UgcmVmcmVzaCBvZiBjcmVkZW50aWFsc1xuICAgKi9cbiAgZm9yY2VSZWZyZXNoKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZnJlc2hUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaFRpbWVyKVxuICAgICAgdGhpcy5yZWZyZXNoVGltZXIgPSBudWxsXG4gICAgfVxuXG4gICAgdGhpcy5jb29raWVFeHBpcmF0aW9uVGltZSA9IG51bGxcblxuICAgIGlmICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCAmJiAhdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkLnJlamVjdChuZXcgRXJyb3IoXCJGb3JjZSByZWZyZXNoIHJlcXVlc3RlZFwiKSlcbiAgICB9XG4gICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgPSBudWxsXG5cbiAgICB0aGlzLmZldGNoQ3JlZGVudGlhbHMoKS5jYXRjaCgoKSA9PiB7XG4gICAgICAvLyBJZ25vcmUgZXJyb3JzIGR1cmluZyBmb3JjZSByZWZyZXNoLCB0aGV5J2xsIGJlIGhhbmRsZWQgb24gbmV4dCByZXF1ZXN0XG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBGZXRjaCBjcmVkZW50aWFscyBmcm9tIHRoZSBlbmRwb2ludFxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBmZXRjaENyZWRlbnRpYWxzKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGRlZmVycmVkID0gKHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbmV3IERlZmVycmVkPHZvaWQ+KCkpXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh0aGlzLmVuZHBvaW50VXJsLCB7XG4gICAgICAgIG1ldGhvZDogXCJQT1NUXCIsXG4gICAgICAgIG1vZGU6IFwiY29yc1wiLFxuICAgICAgICBjcmVkZW50aWFsczogXCJpbmNsdWRlXCIsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIlxuICAgICAgICB9LFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeSh7fSlcbiAgICAgIH0pXG5cbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBDcmVkZW50aWFsIHJlcXVlc3QgZmFpbGVkIHdpdGggc3RhdHVzICR7cmVzcG9uc2Uuc3RhdHVzfWBcbiAgICAgICAgKVxuICAgICAgfVxuXG4gICAgICAvLyBDb29raWUgaXMgc2V0IGJ5IFNldC1Db29raWUgaGVhZGVyLCB3ZSBqdXN0IG5lZWQgdG8gdHJhY2sgZXhwaXJhdGlvblxuICAgICAgdGhpcy5jb29raWVFeHBpcmF0aW9uVGltZSA9IERhdGUubm93KCkgKyBDT09LSUVfRVhQSVJBVElPTl9NU1xuXG4gICAgICAvLyBTY2hlZHVsZSByZWZyZXNoIGJlZm9yZSBleHBpcmF0aW9uXG4gICAgICB0aGlzLnNjaGVkdWxlUmVmcmVzaCgpXG5cbiAgICAgIGRlZmVycmVkLnJlc29sdmUoKVxuICAgICAgdGhpcy5lbWl0KFwicmVjZWl2ZWRcIilcblxuICAgICAgcmV0dXJuIHRydWVcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZy53YXJuKFwiRmFpbGVkIHRvIGZldGNoIHB1c2ggbG9nIGNyZWRlbnRpYWxzXCIsIGVycilcbiAgICAgIGRlZmVycmVkLnJlamVjdChlcnIpXG4gICAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCA9IG51bGxcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTY2hlZHVsZSBhIGNyZWRlbnRpYWwgcmVmcmVzaCBiZWZvcmUgZXhwaXJhdGlvblxuICAgKi9cbiAgcHJpdmF0ZSBzY2hlZHVsZVJlZnJlc2goKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVmcmVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5yZWZyZXNoVGltZXIpXG4gICAgfVxuXG4gICAgY29uc3QgcmVmcmVzaEluID0gQ09PS0lFX0VYUElSQVRJT05fTVMgLSBDT09LSUVfUkVGUkVTSF9CVUZGRVJfTVNcbiAgICB0aGlzLnJlZnJlc2hUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgPSBudWxsXG4gICAgICB0aGlzLmZldGNoQ3JlZGVudGlhbHMoKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIExvZyBidXQgZG9uJ3QgdGhyb3cgLSB3aWxsIHJldHJ5IG9uIG5leHQgcmVxdWVzdFxuICAgICAgICBsb2cuZGVidWcoXCJTY2hlZHVsZWQgY3JlZGVudGlhbCByZWZyZXNoIGZhaWxlZFwiKVxuICAgICAgfSlcbiAgICB9LCByZWZyZXNoSW4pXG4gIH1cblxuICAvKipcbiAgICogQ2xlYW4gdXAgcmVzb3VyY2VzXG4gICAqL1xuICBkZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZnJlc2hUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaFRpbWVyKVxuICAgICAgdGhpcy5yZWZyZXNoVGltZXIgPSBudWxsXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuY3JlZGVudGlhbERlZmVycmVkICYmICF0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5pc1NldHRsZWQoKSkge1xuICAgICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQucmVqZWN0KG5ldyBFcnJvcihcIkNyZWRlbnRpYWwgbWFuYWdlciBkZXN0cm95ZWRcIikpXG4gICAgfVxuXG4gICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgPSBudWxsXG4gICAgdGhpcy5jb29raWVFeHBpcmF0aW9uVGltZSA9IG51bGxcbiAgfVxufVxuXG4vKipcbiAqIEFwcGVuZGVyIHRoYXQgcHVzaGVzIGxvZyByZWNvcmRzIHRvIGEgcmVtb3RlIGVuZHBvaW50IHZpYSBIVFRQIFBVVC5cbiAqIEJhdGNoZXMgcmVjb3JkcyBhbmQgc2VuZHMgd2hlbiBxdWV1ZSByZWFjaGVzIEZMVVNIX1FVRVVFX0RFUFRIIG9yIEZMVVNIX0lOVEVSVkFMX01TIGhhcyBlbGFwc2VkLlxuICovXG5leHBvcnQgY2xhc3MgUHVzaExvZ1JlY29yZHNBcHBlbmRlcjxcbiAgUmVjb3JkIGV4dGVuZHMgTG9nUmVjb3JkID0gTG9nUmVjb3JkXG4+IGltcGxlbWVudHMgQXBwZW5kZXI8UmVjb3JkPiB7XG4gIHByaXZhdGUgcGVuZGluZ1JlY29yZHM6IExvZ1JlY29yZFtdID0gW11cbiAgcHJpdmF0ZSBmbHVzaERlZmVycmVkOiBEZWZlcnJlZDx2b2lkPiB8IG51bGwgPSBudWxsXG4gIHByaXZhdGUgZmx1c2hUaW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsID0gbnVsbFxuXG4gIHB1YmxpYyByZWFkb25seSBjcmVkZW50aWFsTWFuYWdlcjogUHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlclxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBlbmRwb2ludFVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlciA9IG5ldyBQdXNoTG9nUmVjb3Jkc0NyZWRlbnRpYWxNYW5hZ2VyKGVuZHBvaW50VXJsKVxuXG4gICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlci5vbihcInJlY2VpdmVkXCIsICgpID0+IHtcbiAgICAgIGlmICghdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggfHwgdGhpcy5mbHVzaERlZmVycmVkKSB7XG4gICAgICAgIHJldHVyblxuICAgICAgfVxuICAgICAgdGhpcy5mbHVzaCgpLmNhdGNoKCgpID0+IHtcbiAgICAgICAgLy8gRXJyb3JzIGhhbmRsZWQgaW4gZmx1c2hcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBlbmQgYSBsb2cgcmVjb3JkIHRvIHRoZSBxdWV1ZVxuICAgKi9cbiAgYXBwZW5kKHJlY29yZDogUmVjb3JkKTogdm9pZCB7XG4gICAgLy8gQWRkIHRoZSByZWNvcmQgd2l0aCBlbnJpY2hlZCBtZXRhZGF0YVxuICAgIHRoaXMucGVuZGluZ1JlY29yZHMucHVzaCh7XG4gICAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXG4gICAgICAuLi5yZWNvcmQsXG4gICAgICBhcHA6IHJlY29yZC5hcHAgJiYgcmVjb3JkLmFwcC5sZW5ndGggPiAwID8gcmVjb3JkLmFwcCA6IFwiVU5LTk9XTlwiLFxuICAgICAgZW52OiByZWNvcmQuZW52ICYmIHJlY29yZC5lbnYubGVuZ3RoID4gMCA/IHJlY29yZC5lbnYgOiBcIlVOS05PV05cIixcbiAgICAgIHVybDogdHlwZW9mIHdpbmRvdyA9PT0gXCJ1bmRlZmluZWRcIiA/IFwibG9jYWw6Ly9cIiA6IHdpbmRvdy5sb2NhdGlvbi5ocmVmXG4gICAgfSlcbiAgICB0aGlzLnRyaW1QZW5kaW5nUmVjb3Jkc1RvUXVldWVDYXAoKVxuXG4gICAgLy8gQ2hlY2sgaWYgd2Ugc2hvdWxkIGZsdXNoIGltbWVkaWF0ZWx5IGR1ZSB0byBxdWV1ZSBkZXB0aFxuICAgIGlmICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCA+PSBGTFVTSF9RVUVVRV9ERVBUSCkge1xuICAgICAgdGhpcy5mbHVzaCgpLmNhdGNoKCgpID0+IHtcbiAgICAgICAgLy8gRXJyb3JzIGhhbmRsZWQgaW4gZmx1c2hcbiAgICAgIH0pXG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIFNjaGVkdWxlIGEgZmx1c2ggaWYgbm90IGFscmVhZHkgc2NoZWR1bGVkXG4gICAgICB0aGlzLnNjaGVkdWxlRmx1c2goKVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTY2hlZHVsZSBhIGZsdXNoIGFmdGVyIHRoZSBpbnRlcnZhbFxuICAgKi9cbiAgcHJpdmF0ZSBzY2hlZHVsZUZsdXNoKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZsdXNoVGltZXIpIHtcbiAgICAgIHJldHVybiAvLyBBbHJlYWR5IHNjaGVkdWxlZFxuICAgIH1cblxuICAgIHRoaXMuZmx1c2hUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5mbHVzaFRpbWVyID0gbnVsbFxuICAgICAgdGhpcy5mbHVzaCgpLmNhdGNoKCgpID0+IHtcbiAgICAgICAgLy8gRXJyb3JzIGhhbmRsZWQgaW4gZmx1c2hcbiAgICAgIH0pXG4gICAgfSwgRkxVU0hfSU5URVJWQUxfTVMpXG4gIH1cblxuICAvKipcbiAgICogRmx1c2ggcGVuZGluZyByZWNvcmRzIHRvIHRoZSBlbmRwb2ludFxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBmbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAvLyBQcmV2ZW50IGNvbmN1cnJlbnQgZmx1c2hlc1xuICAgIGlmICh0aGlzLmZsdXNoRGVmZXJyZWQpIHtcbiAgICAgIHJldHVybiB0aGlzLmZsdXNoRGVmZXJyZWQucHJvbWlzZVxuICAgIH1cblxuICAgIC8vIE5vdGhpbmcgdG8gZmx1c2hcbiAgICBpZiAoIXRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBFbnN1cmUgd2UgaGF2ZSB2YWxpZCBjcmVkZW50aWFsc1xuICAgIGNvbnN0IGhhc0NyZWRlbnRpYWxzID0gYXdhaXQgdGhpcy5jcmVkZW50aWFsTWFuYWdlci5lbnN1cmVDcmVkZW50aWFscygpXG4gICAgaWYgKCFoYXNDcmVkZW50aWFscykge1xuICAgICAgbG9nLmRlYnVnKFwiRmFpbGVkIHRvIHB1c2ggbG9nIHJlY29yZHNcIiwgXCJObyB2YWxpZCBjcmVkZW50aWFscyBhdmFpbGFibGVcIilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGNvbnN0IGRlZmVycmVkID0gKHRoaXMuZmx1c2hEZWZlcnJlZCA9IG5ldyBEZWZlcnJlZDx2b2lkPigpKVxuXG4gICAgdHJ5IHtcbiAgICAgIC8vIFRha2UgYWxsIHBlbmRpbmcgcmVjb3JkcyBmb3IgdGhpcyBmbHVzaFxuICAgICAgY29uc3QgcmVjb3JkcyA9IHRoaXMucGVuZGluZ1JlY29yZHMuc3BsaWNlKDAsIHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoKVxuICAgICAgY29uc3QgcGF5bG9hZCA9IHsgcmVjb3JkczogcmVjb3Jkcy5tYXAocmVjb3JkID0+IEpTT04uc3RyaW5naWZ5KHJlY29yZCkpIH1cblxuICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCh0aGlzLmVuZHBvaW50VXJsLCB7XG4gICAgICAgIG1ldGhvZDogXCJQVVRcIixcbiAgICAgICAgbW9kZTogXCJjb3JzXCIsXG4gICAgICAgIGNyZWRlbnRpYWxzOiBcImluY2x1ZGVcIixcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHBheWxvYWQpXG4gICAgICB9KVxuXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIC8vIFJlLXF1ZXVlIHJlY29yZHMgb24gZmFpbHVyZVxuICAgICAgICB0aGlzLnBlbmRpbmdSZWNvcmRzLnVuc2hpZnQoLi4ucmVjb3JkcylcbiAgICAgICAgdGhpcy50cmltUGVuZGluZ1JlY29yZHNUb1F1ZXVlQ2FwKClcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBQdXNoIGZhaWxlZCB3aXRoIHN0YXR1cyAke3Jlc3BvbnNlLnN0YXR1c31gKVxuICAgICAgfVxuXG4gICAgICBkZWZlcnJlZC5yZXNvbHZlKClcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZy5kZWJ1ZyhcIkZhaWxlZCB0byBwdXNoIGxvZyByZWNvcmRzXCIsIGVycilcbiAgICAgIGRlZmVycmVkLnJlamVjdChlcnIpXG4gICAgfSBmaW5hbGx5IHtcbiAgICAgIHRoaXMuZmx1c2hEZWZlcnJlZCA9IG51bGxcblxuICAgICAgLy8gSWYgbW9yZSByZWNvcmRzIGFjY3VtdWxhdGVkIGR1cmluZyBmbHVzaCwgc2NoZWR1bGUgYW5vdGhlclxuICAgICAgaWYgKHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoID4gMCkge1xuICAgICAgICB0aGlzLnNjaGVkdWxlRmx1c2goKVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBkZWZlcnJlZC5wcm9taXNlXG4gIH1cblxuICAvKipcbiAgICogRm9yY2UgYW4gaW1tZWRpYXRlIGZsdXNoXG4gICAqL1xuICBhc3luYyBmb3JjZUZsdXNoKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLmZsdXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmZsdXNoVGltZXIpXG4gICAgICB0aGlzLmZsdXNoVGltZXIgPSBudWxsXG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuZmx1c2goKVxuICB9XG5cbiAgLyoqXG4gICAqIEVuZm9yY2UgdGhlIHBlbmRpbmcgcXVldWUgY2FwIGJ5IGRyb3BwaW5nIHRoZSBvbGRlc3QgcmVjb3Jkcy5cbiAgICovXG4gIHByaXZhdGUgdHJpbVBlbmRpbmdSZWNvcmRzVG9RdWV1ZUNhcCgpOiB2b2lkIHtcbiAgICBjb25zdCByZW1vdmVDb3VudCA9IHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoIC0gTE9HX1FVRVVFX01BWF9SRUNPUkRTXG5cbiAgICBpZiAocmVtb3ZlQ291bnQgPiAwKSB7XG4gICAgICB0aGlzLnBlbmRpbmdSZWNvcmRzLnNwbGljZSgwLCByZW1vdmVDb3VudClcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2xlYW4gdXAgcmVzb3VyY2VzXG4gICAqL1xuICBkZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmZsdXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLmZsdXNoVGltZXIpXG4gICAgICB0aGlzLmZsdXNoVGltZXIgPSBudWxsXG4gICAgfVxuXG4gICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlci5kZXN0cm95KClcblxuICAgIGlmICh0aGlzLmZsdXNoRGVmZXJyZWQgJiYgIXRoaXMuZmx1c2hEZWZlcnJlZC5pc1NldHRsZWQoKSkge1xuICAgICAgdGhpcy5mbHVzaERlZmVycmVkLnJlamVjdChuZXcgRXJyb3IoXCJBcHBlbmRlciBkZXN0cm95ZWRcIikpXG4gICAgfVxuXG4gICAgdGhpcy5mbHVzaERlZmVycmVkID0gbnVsbFxuICAgIHRoaXMucGVuZGluZ1JlY29yZHMgPSBbXVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IFB1c2hMb2dSZWNvcmRzQXBwZW5kZXJcbiJdfQ==
|
|
@@ -134,4 +134,4 @@ export class AWSFirehoseAppender {
|
|
|
134
134
|
}
|
|
135
135
|
}
|
|
136
136
|
export default AWSFirehoseAppender;
|
|
137
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQVdTRmlyZWhvc2VBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9hd3MtZmlyZWhvc2UvQVdTRmlyZWhvc2VBcHBlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLDRCQUVOLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDM0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUM3QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFJcEQsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUE7QUFDaEMsTUFBTSx5QkFBeUIsR0FBRyx1QkFBdUIsQ0FBQTtBQUV6RCxNQUFNLEdBQUcsR0FBRyxpQkFBaUIsRUFBRSxDQUFBO0FBQy9CLElBQUksY0FBYyxHQUF1RCxJQUFJLENBQUE7QUFFN0UsU0FBUyxpQkFBaUI7SUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BCLGNBQWMsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDOUQsY0FBYyxHQUFHLElBQUksQ0FBQTtZQUNyQixNQUFNLEdBQUcsQ0FBQTtRQUNYLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELE9BQU8sY0FBYyxDQUFBO0FBQ3ZCLENBQUM7QUFFRCxNQUFNLE9BQU8sbUJBQW1CO0lBU0Y7SUFOcEIsY0FBYyxHQUFHLEtBQUssRUFBYSxDQUFBO0lBQ25DLGFBQWEsQ0FBZ0I7SUFDN0IsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUVkLGlCQUFpQixDQUE4QjtJQUUvRCxZQUE0QixxQkFBNkI7UUFBN0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFRO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLDRC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QUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLEdBQUcsQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDckMsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLHlCQUF5QixFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFBO1lBQ2pELENBQUM7WUFDRCxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3RCLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFBO1lBRXpCLGtDQUFrQztZQUNsQyxpQkFBaUI7UUFDbkIsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQTtJQUN6QixDQUFDO0NBQ0Y7QUFFRCxlQUFlLG1CQUFtQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgdHlwZXNjcmlwdC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCB0eXBlIHtcbiAgRmlyZWhvc2VDbGllbnQsXG4gIFB1dFJlY29yZEJhdGNoSW5wdXRcbn0gZnJvbSBcIkBhd3Mtc2RrL2NsaWVudC1maXJlaG9zZVwiXG5pbXBvcnQgeyBMZXZlbCB9IGZyb20gXCIuLi8uLi9MZXZlbC5qc1wiXG5cbmltcG9ydCBBV1NGaXJlaG9zZUNyZWRlbnRpYWxNYW5hZ2VyLCB7XG4gIHR5cGUgQVdTQ3JlZGVudGlhbHNcbn0gZnJvbSBcIi4vQVdTRmlyZWhvc2VDcmVkZW50aWFsTWFuYWdlci5qc1wiXG5pbXBvcnQgeyBnZXRJbnRlcm5hbExvZ2dlciB9IGZyb20gXCIuLi8uLi9JbnRlcm5hbExvZ2dlci5qc1wiXG5pbXBvcnQgeyBwaWNrIH0gZnJvbSBcImxvZGFzaFwiXG5pbXBvcnQgeyBEZWZlcnJlZCB9IGZyb20gXCIuLi8uLi8uLi9oZWxwZXJzL2luZGV4LmpzXCJcbmltcG9ydCB7IExvZ1JlY29yZCB9IGZyb20gXCIuLi8uLi9Mb2dSZWNvcmQuanNcIlxuaW1wb3J0IHsgQXBwZW5kZXIgfSBmcm9tIFwiLi4vLi4vQXBwZW5kZXIuanNcIlxuXG5jb25zdCBMb2dRdWV1ZU1heFJlY29yZHMgPSAxMDAwMFxuY29uc3QgRXhwaXJlZFRva2VuRXhjZXB0aW9uQ29kZSA9IFwiRXhwaXJlZFRva2VuRXhjZXB0aW9uXCJcblxuY29uc3QgbG9nID0gZ2V0SW50ZXJuYWxMb2dnZXIoKVxubGV0IGZpcmVob3NlTW9kdWxlOiBQcm9taXNlPHR5cGVvZiBpbXBvcnQoXCJAYXdzLXNkay9jbGllbnQtZmlyZWhvc2VcIik+ID0gbnVsbFxuXG5mdW5jdGlvbiBnZXRGaXJlaG9zZU1vZHVsZSgpIHtcbiAgaWYgKCFmaXJlaG9zZU1vZHVsZSkge1xuICAgIGZpcmVob3NlTW9kdWxlID0gaW1wb3J0KFwiQGF3cy1zZGsvY2xpZW50LWZpcmVob3NlXCIpLmNhdGNoKGVyciA9PiB7XG4gICAgICBmaXJlaG9zZU1vZHVsZSA9IG51bGxcbiAgICAgIHRocm93IGVyclxuICAgIH0pXG4gIH1cblxuICByZXR1cm4gZmlyZWhvc2VNb2R1bGVcbn1cblxuZXhwb3J0IGNsYXNzIEFXU0ZpcmVob3NlQXBwZW5kZXI8XG4gIFJlY29yZCBleHRlbmRzIExvZ1JlY29yZCA9IExvZ1JlY29yZFxuPiBpbXBsZW1lbnRzIEFwcGVuZGVyPFJlY29yZD4ge1xuICBwcml2YXRlIHBlbmRpbmdSZWNvcmRzID0gQXJyYXk8TG9nUmVjb3JkPigpXG4gIHByaXZhdGUgZmx1c2hEZWZlcnJlZDogRGVmZXJyZWQ8dm9pZD5cbiAgcHJpdmF0ZSBmbHVzaEludGVydmFsTXMgPSAxMDAwXG5cbiAgcHVibGljIHJlYWRvbmx5IGNyZWRlbnRpYWxNYW5hZ2VyOiBBV1NGaXJlaG9zZUNyZWRlbnRpYWxNYW5hZ2VyXG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGNyZWRlbnRpYWxFbmRwb2ludFVybDogc3RyaW5nKSB7XG4gICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlciA9IG5ldyBBV1NGaXJlaG9zZUNyZWRlbnRpYWxNYW5hZ2VyKFxuICAgICAgY3JlZGVudGlhbEVuZHBvaW50VXJsXG4gICAgKVxuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIub24oXCJyZWNlaXZlZFwiLCAoKSA9PiB7XG4gICAgICBsb2cuaW5mbyhcIkNyZWRlbnRpYWxzIHJlY2VpdmVkLCBpbml0aWFsaXppbmcgZmlyZWhvc2UgY2xpZW50XCIpXG4gICAgICBpZiAoIXRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoIHx8ICEhdGhpcy5mbHVzaERlZmVycmVkKSB7XG4gICAgICAgIGxvZy5kZWJ1ZyhcbiAgICAgICAgICBcIk5vdGhpbmcgdG8gZmx1c2ggdXBvbiBjcmVkZW50aWFsIHJlY2VpcHQgT1IgZmx1c2ggYWxyZWFkeSBpbiBwcm9ncmVzc1wiXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICB0aGlzLmZsdXNoKCkuY2F0Y2goKGU6IEVycm9yKSA9PiB7XG4gICAgICAgIGxvZy5lcnJvcihcbiAgICAgICAgICBgRXJyb3IgZmx1c2hpbmcgbG9ncyBhZnRlciBjcmVkZW50aWFsIHJlY2VpcHQ6ICR7ZS5tZXNzYWdlfWAsXG4gICAgICAgICAgZVxuICAgICAgICApXG4gICAgICB9KVxuICAgIH0pXG4gIH1cbiAgYXBwZW5kKHJlY29yZDogUmVjb3JkKTogdm9pZCB7XG4gICAgY29uc3QgcGVuZGluZ0NvdW50ID0gdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggKyAxLFxuICAgICAgcmVtb3ZlQ291bnQgPSBMb2dRdWV1ZU1heFJlY29yZHMgLSBwZW5kaW5nQ291bnRcblxuICAgIGlmIChyZW1vdmVDb3VudCA8IDApIHtcbiAgICAgIHRoaXMucGVuZGluZ1JlY29yZHMuc3BsaWNlKDAsIE1hdGguYWJzKHJlbW92ZUNvdW50KSlcbiAgICB9XG5cbiAgICB0aGlzLnBlbmRpbmdSZWNvcmRzLnB1c2goe1xuICAgICAgdGltZXN0YW1wOiBEYXRlLm5vdygpLFxuICAgICAgLi4ucmVjb3JkLFxuICAgICAgYXBwOiByZWNvcmQuYXBwPy5sZW5ndGggPiAwID8gcmVjb3JkLmFwcCA6IFwiVU5LTk9XTlwiLFxuICAgICAgZW52OiByZWNvcmQuZW52Py5sZW5ndGggPiAwID8gcmVjb3JkLmVudiA6IFwiVU5LTk9XTlwiLFxuICAgICAgdXJsOiB0eXBlb2Ygd2luZG93ID09PSBcInVuZGVmaW5lZFwiID8gXCJsb2NhbDovL1wiIDogd2luZG93LmxvY2F0aW9uLmhyZWZcbiAgICB9KVxuXG4gICAgdGhpcy5mbHVzaCgpXG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIHRoZSBGaXJlaG9zZSBjbGllbnQgZm9yIGEgbG9hZGVkIGNyZWRlbnRpYWwgc2V0LlxuICAgKiBAcGFyYW0gY3JlZHMgTG9hZGVkIEZpcmVob3NlIGNyZWRlbnRpYWxzLlxuICAgKiBAcmV0dXJucyBGaXJlaG9zZSBjbGllbnQuXG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGdldEZpcmVob3NlKGNyZWRzOiBBV1NDcmVkZW50aWFscyk6IFByb21pc2U8RmlyZWhvc2VDbGllbnQ+IHtcbiAgICBjb25zdCB7IHJlZ2lvbiwgc3RyZWFtTmFtZSB9ID0gY3JlZHNcblxuICAgIGlmICghcmVnaW9uIHx8ICFzdHJlYW1OYW1lKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZWdpb24gb3Igc3RyZWFtIG5hbWUgbm90IGF2YWlsYWJsZVwiKVxuICAgIH1cblxuICAgIGNvbnN0IHsgRmlyZWhvc2VDbGllbnQgfSA9IGF3YWl0IGdldEZpcmVob3NlTW9kdWxlKClcbiAgICBjb25zdCBjbGllbnQgPSBuZXcgRmlyZWhvc2VDbGllbnQoe1xuICAgICAgcmVnaW9uOiBjcmVkcy5yZWdpb24sXG4gICAgICBjcmVkZW50aWFsczogcGljayhjcmVkcywgXCJhY2Nlc3NLZXlJZFwiLCBcInNlY3JldEFjY2Vzc0tleVwiLCBcInNlc3Npb25Ub2tlblwiKVxuICAgIH0pXG5cbiAgICByZXR1cm4gY2xpZW50XG4gIH1cblxuICAvKipcbiAgICogRmx1c2ggcGVuZGluZyByZWNvcmRzXG4gICAqXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHZvaWQ+fVxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBmbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoISF0aGlzLmZsdXNoRGVmZXJyZWQpIHtcbiAgICAgIGxvZy5kZWJ1ZyhcIkZsdXNoIGFscmVhZHkgaW4gcHJvZ3Jlc3MsIHNraXBwaW5nXCIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBpZiAoIXRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoKSB7XG4gICAgICBsb2cuZGVidWcoXCJObyBwZW5kaW5nIHJlY29yZHMgdG8gZmx1c2hcIilcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBjb25zdCBjcmVkcyA9IHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZ2V0Q3JlZGVudGlhbHMoKVxuICAgIGlmICghY3JlZHMpIHtcbiAgICAgIGxvZy53YXJuKFwiTm8gY3JlZGVudGlhbHMgYXZhaWxhYmxlIGZvciBmbHVzaFwiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3QgZGVmZXJyZWQgPSAodGhpcy5mbHVzaERlZmVycmVkID0gbmV3IERlZmVycmVkPHZvaWQ+KCkpXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgc3RyZWFtTmFtZSB9ID0gY3JlZHMsXG4gICAgICAgIGNsaWVudCA9IGF3YWl0IHRoaXMuZ2V0RmlyZWhvc2UoY3JlZHMpLFxuICAgICAgICB7IFB1dFJlY29yZEJhdGNoQ29tbWFuZCB9ID0gYXdhaXQgZ2V0RmlyZWhvc2VNb2R1bGUoKVxuXG4gICAgICB3aGlsZSAodGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgICAgY29uc3QgY2h1bmtTaXplID0gTWF0aC5taW4odGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgsIDEwKSxcbiAgICAgICAgICByZWNvcmRzID0gdGhpcy5wZW5kaW5nUmVjb3Jkcy5zcGxpY2UoMCwgY2h1bmtTaXplKSxcbiAgICAgICAgICByZWNvcmRKc29ucyA9IHJlY29yZHMubWFwKHJlY29yZCA9PiBKU09OLnN0cmluZ2lmeShyZWNvcmQpKVxuXG4gICAgICAgIGlmIChsb2cuaXNEZWJ1Z0VuYWJsZWQoKSkgbG9nLmRlYnVnKFwiUmVjb3Jkc1wiLCByZWNvcmRzKVxuXG4gICAgICAgIGNvbnN0IHRleHRFbmNvZGVyID0gbmV3IFRleHRFbmNvZGVyKCksXG4gICAgICAgICAgYmF0Y2g6IFB1dFJlY29yZEJhdGNoSW5wdXRbXCJSZWNvcmRzXCJdID0gcmVjb3JkSnNvbnMubWFwKGpzb25TdHIgPT4gKHtcbiAgICAgICAgICAgIERhdGE6IHRleHRFbmNvZGVyLmVuY29kZShqc29uU3RyKVxuICAgICAgICAgIH0pKVxuXG4gICAgICAgIGxvZy5pbmZvKGBQdXNoaW5nICR7cmVjb3Jkcy5sZW5ndGh9IHJlY29yZHMgdG8gZmlyZWhvc2VgKVxuXG4gICAgICAgIGNvbnN0IGNtZCA9IG5ldyBQdXRSZWNvcmRCYXRjaENvbW1hbmQoe1xuICAgICAgICAgIERlbGl2ZXJ5U3RyZWFtTmFtZTogc3RyZWFtTmFtZSxcbiAgICAgICAgICBSZWNvcmRzOiBiYXRjaFxuICAgICAgICB9KVxuXG4gICAgICAgIGNvbnN0IHJlc3AgPSBhd2FpdCBjbGllbnQuc2VuZChjbWQpXG4gICAgICAgIGNvbnN0IGZhaWxlZCA9IHJlc3AuRmFpbGVkUHV0Q291bnQgfHwgMFxuICAgICAgICBpZiAoZmFpbGVkKSB7XG4gICAgICAgICAgY29uc3QgcnIgPSByZXNwLlJlcXVlc3RSZXNwb25zZXMgfHwgW11cbiAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHJyLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAocnJbaV0uRXJyb3JDb2RlKSB7XG4gICAgICAgICAgICAgIGxvZy53YXJuKFxuICAgICAgICAgICAgICAgIGBSZWNvcmQgZmFpbGVkOiAke3JyW2ldLkVycm9yQ29kZX0gJHtycltpXS5FcnJvck1lc3NhZ2V9YFxuICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgIC8vdGhpcy5wZW5kaW5nUmVjb3Jkcy51bnNoaWZ0KHJlY29yZHNbaV0pXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGxvZy5pbmZvKGBQdXRSZWNvcmRCYXRjaCBmYWlsZWQ9JHtmYWlsZWR9OyByZXF1ZXVlZCBmYWlsZWQgcmVjb3Jkc2ApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9nLmluZm8oYFB1dFJlY29yZEJhdGNoIG9rIGNvdW50PSR7cmVjb3Jkcy5sZW5ndGh9YClcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZGVmZXJyZWQucmVzb2x2ZSgpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cuZXJyb3IoXCJGYWlsZWQgdG8gcHVzaCBsb2dzXCIsIGVycilcbiAgICAgIGlmIChlcnIubmFtZSA9PT0gRXhwaXJlZFRva2VuRXhjZXB0aW9uQ29kZSkge1xuICAgICAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyLmZvcmNlVXBkYXRlQ3JlZGVudGlhbHMoKVxuICAgICAgfVxuICAgICAgZGVmZXJyZWQucmVqZWN0KGVycilcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5mbHVzaERlZmVycmVkID0gbnVsbFxuXG4gICAgICAvLyBpZiAodGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgpXG4gICAgICAvLyAgIHRoaXMuZmx1c2goKVxuICAgIH1cblxuICAgIHJldHVybiBkZWZlcnJlZC5wcm9taXNlXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgQVdTRmlyZWhvc2VBcHBlbmRlclxuIl19
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQVdTRmlyZWhvc2VBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9hd3MtZmlyZWhvc2UvQVdTRmlyZWhvc2VBcHBlbmRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLDRCQUVOLE1BQU0sbUNBQW1DLENBQUE7QUFDMUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDM0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQTtBQUM3QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFJcEQsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUE7QUFDaEMsTUFBTSx5QkFBeUIsR0FBRyx1QkFBdUIsQ0FBQTtBQUV6RCxNQUFNLEdBQUcsR0FBRyxpQkFBaUIsRUFBRSxDQUFBO0FBQy9CLElBQUksY0FBYyxHQUF1RCxJQUFJLENBQUE7QUFFN0UsU0FBUyxpQkFBaUI7SUFDeEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3BCLGNBQWMsR0FBRyxNQUFNLENBQUMsMEJBQTBCLENBQUMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDOUQsY0FBYyxHQUFHLElBQUksQ0FBQTtZQUNyQixNQUFNLEdBQUcsQ0FBQTtRQUNYLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVELE9BQU8sY0FBYyxDQUFBO0FBQ3ZCLENBQUM7QUFFRCxNQUFNLE9BQU8sbUJBQW1CO0lBU0Y7SUFOcEIsY0FBYyxHQUFHLEtBQUssRUFBYSxDQUFBO0lBQ25DLGFBQWEsQ0FBZ0I7SUFDN0IsZUFBZSxHQUFHLElBQUksQ0FBQTtJQUVkLGlCQUFpQixDQUE4QjtJQUUvRCxZQUE0QixxQkFBNkI7UUFBN0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUFRO1FBQ3ZELElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLDRCQUE0QixDQUN2RCxxQkFBcUIsQ0FDdEIsQ0FBQTtRQUNELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsVUFBVSxFQUFFLEdBQUcsRUFBRTtZQUN6QyxHQUFHLENBQUMsSUFBSSxDQUFDLG9EQUFvRCxDQUFDLENBQUE7WUFDOUQsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQ3hELEdBQUcsQ0FBQyxLQUFLLENBQ1AsdUVBQXVFLENBQ3hFLENBQUE7Z0JBQ0QsT0FBTTtZQUNSLENBQUM7WUFDRCxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBUSxFQUFFLEVBQUU7Z0JBQzlCLEdBQUcsQ0FBQyxLQUFLLENBQ1AsaURBQWlELENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFDNUQsQ0FBQyxDQUNGLENBQUE7WUFDSCxDQUFDLENBQUMsQ0FBQTtRQUNKLENBQUMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUNELE1BQU0sQ0FBQyxNQUFjO1FBQ25CLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDakQsV0FBVyxHQUFHLGtCQUFrQixHQUFHLFlBQVksQ0FBQTtRQUVqRCxJQUFJLFdBQVcsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFBO1FBQ3RELENBQUM7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQztZQUN2QixTQUFTLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNyQixHQUFHLE1BQU07WUFDVCxHQUFHLEVBQUUsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTO1lBQ3BELEdBQUcsRUFBRSxNQUFNLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDcEQsR0FBRyxFQUFFLE9BQU8sTUFBTSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUk7U0FDdkUsQ0FBQyxDQUFBO1FBRUYsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ2QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQXFCO1FBQzdDLE1BQU0sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsS0FBSyxDQUFBO1FBRXBDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUMzQixNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUE7UUFDeEQsQ0FBQztRQUVELE1BQU0sRUFBRSxjQUFjLEVBQUUsR0FBRyxNQUFNLGlCQUFpQixFQUFFLENBQUE7UUFDcEQsTUFBTSxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUM7WUFDaEMsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO1lBQ3BCLFdBQVcsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLENBQUM7U0FDM0UsQ0FBQyxDQUFBO1FBRUYsT0FBTyxNQUFNLENBQUE7SUFDZixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLEtBQUssQ0FBQyxLQUFLO1FBQ2pCLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUN6QixHQUFHLENBQUMsS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUE7WUFDaEQsT0FBTTtRQUNSLENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQyxHQUFHLENBQUMsS0FBSyxDQUFDLDZCQUE2QixDQUFDLENBQUE7WUFDeEMsT0FBTTtRQUNSLENBQUM7UUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsY0FBYyxFQUFFLENBQUE7UUFDckQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsR0FBRyxDQUFDLElBQUksQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFBO1lBQzlDLE9BQU07UUFDUixDQUFDO1FBRUQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksUUFBUSxFQUFRLENBQUMsQ0FBQTtRQUM1RCxJQUFJLENBQUM7WUFDSCxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsS0FBSyxFQUMxQixNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUN0QyxFQUFFLHFCQUFxQixFQUFFLEdBQUcsTUFBTSxpQkFBaUIsRUFBRSxDQUFBO1lBRXZELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFDeEQsT0FBTyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxTQUFTLENBQUMsRUFDbEQsV0FBVyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUE7Z0JBRTdELElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRTtvQkFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQTtnQkFFdkQsTUFBTSxXQUFXLEdBQUcsSUFBSSxXQUFXLEVBQUUsRUFDbkMsS0FBSyxHQUFtQyxXQUFXLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztvQkFDbEUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO2lCQUNsQyxDQUFDLENBQUMsQ0FBQTtnQkFFTCxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsT0FBTyxDQUFDLE1BQU0sc0JBQXNCLENBQUMsQ0FBQTtnQkFFekQsTUFBTSxHQUFHLEdBQUcsSUFBSSxxQkFBcUIsQ0FBQztvQkFDcEMsa0JBQWtCLEVBQUUsVUFBVTtvQkFDOUIsT0FBTyxFQUFFLEtBQUs7aUJBQ2YsQ0FBQyxDQUFBO2dCQUVGLE1BQU0sSUFBSSxHQUFHLE1BQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLGNBQWMsSUFBSSxDQUFDLENBQUE7Z0JBQ3ZDLElBQUksTUFBTSxFQUFFLENBQUM7b0JBQ1gsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixJQUFJLEVBQUUsQ0FBQTtvQkFDdEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQzt3QkFDbkMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUM7NEJBQ3BCLEdBQUcsQ0FBQyxJQUFJLENBQ04sa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUMxRCxDQUFBOzRCQUNELHlDQUF5Qzt3QkFDM0MsQ0FBQztvQkFDSCxDQUFDO29CQUNELEdBQUcsQ0FBQyxJQUFJLENBQUMseUJBQXlCLE1BQU0sMkJBQTJCLENBQUMsQ0FBQTtnQkFDdEUsQ0FBQztxQkFBTSxDQUFDO29CQUNOLEdBQUcsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFBO2dCQUN2RCxDQUFDO1lBQ0gsQ0FBQztZQUNELFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUNwQixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLEdBQUcsQ0FBQyxLQUFLLENBQUMscUJBQXFCLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDckMsSUFBSSxHQUFHLENBQUMsSUFBSSxLQUFLLHlCQUF5QixFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxzQkFBc0IsRUFBRSxDQUFBO1lBQ2pELENBQUM7WUFDRCxRQUFRLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFBO1FBQ3RCLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFBO1lBRXpCLGtDQUFrQztZQUNsQyxpQkFBaUI7UUFDbkIsQ0FBQztRQUVELE9BQU8sUUFBUSxDQUFDLE9BQU8sQ0FBQTtJQUN6QixDQUFDO0NBQ0Y7QUFFRCxlQUFlLG1CQUFtQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IHR5cGUge1xuICBGaXJlaG9zZUNsaWVudCxcbiAgUHV0UmVjb3JkQmF0Y2hJbnB1dFxufSBmcm9tIFwiQGF3cy1zZGsvY2xpZW50LWZpcmVob3NlXCJcbmltcG9ydCB7IExldmVsIH0gZnJvbSBcIi4uLy4uL0xldmVsLmpzXCJcblxuaW1wb3J0IEFXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXIsIHtcbiAgdHlwZSBBV1NDcmVkZW50aWFsc1xufSBmcm9tIFwiLi9BV1NGaXJlaG9zZUNyZWRlbnRpYWxNYW5hZ2VyLmpzXCJcbmltcG9ydCB7IGdldEludGVybmFsTG9nZ2VyIH0gZnJvbSBcIi4uLy4uL0ludGVybmFsTG9nZ2VyLmpzXCJcbmltcG9ydCB7IHBpY2sgfSBmcm9tIFwibG9kYXNoXCJcbmltcG9ydCB7IERlZmVycmVkIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvaW5kZXguanNcIlxuaW1wb3J0IHsgTG9nUmVjb3JkIH0gZnJvbSBcIi4uLy4uL0xvZ1JlY29yZC5qc1wiXG5pbXBvcnQgeyBBcHBlbmRlciB9IGZyb20gXCIuLi8uLi9BcHBlbmRlci5qc1wiXG5cbmNvbnN0IExvZ1F1ZXVlTWF4UmVjb3JkcyA9IDEwMDAwXG5jb25zdCBFeHBpcmVkVG9rZW5FeGNlcHRpb25Db2RlID0gXCJFeHBpcmVkVG9rZW5FeGNlcHRpb25cIlxuXG5jb25zdCBsb2cgPSBnZXRJbnRlcm5hbExvZ2dlcigpXG5sZXQgZmlyZWhvc2VNb2R1bGU6IFByb21pc2U8dHlwZW9mIGltcG9ydChcIkBhd3Mtc2RrL2NsaWVudC1maXJlaG9zZVwiKT4gPSBudWxsXG5cbmZ1bmN0aW9uIGdldEZpcmVob3NlTW9kdWxlKCkge1xuICBpZiAoIWZpcmVob3NlTW9kdWxlKSB7XG4gICAgZmlyZWhvc2VNb2R1bGUgPSBpbXBvcnQoXCJAYXdzLXNkay9jbGllbnQtZmlyZWhvc2VcIikuY2F0Y2goZXJyID0+IHtcbiAgICAgIGZpcmVob3NlTW9kdWxlID0gbnVsbFxuICAgICAgdGhyb3cgZXJyXG4gICAgfSlcbiAgfVxuXG4gIHJldHVybiBmaXJlaG9zZU1vZHVsZVxufVxuXG5leHBvcnQgY2xhc3MgQVdTRmlyZWhvc2VBcHBlbmRlcjxcbiAgUmVjb3JkIGV4dGVuZHMgTG9nUmVjb3JkID0gTG9nUmVjb3JkXG4+IGltcGxlbWVudHMgQXBwZW5kZXI8UmVjb3JkPiB7XG4gIHByaXZhdGUgcGVuZGluZ1JlY29yZHMgPSBBcnJheTxMb2dSZWNvcmQ+KClcbiAgcHJpdmF0ZSBmbHVzaERlZmVycmVkOiBEZWZlcnJlZDx2b2lkPlxuICBwcml2YXRlIGZsdXNoSW50ZXJ2YWxNcyA9IDEwMDBcblxuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbE1hbmFnZXI6IEFXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXJcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbEVuZHBvaW50VXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyID0gbmV3IEFXU0ZpcmVob3NlQ3JlZGVudGlhbE1hbmFnZXIoXG4gICAgICBjcmVkZW50aWFsRW5kcG9pbnRVcmxcbiAgICApXG4gICAgdGhpcy5jcmVkZW50aWFsTWFuYWdlci5vbihcInJlY2VpdmVkXCIsICgpID0+IHtcbiAgICAgIGxvZy5pbmZvKFwiQ3JlZGVudGlhbHMgcmVjZWl2ZWQsIGluaXRpYWxpemluZyBmaXJlaG9zZSBjbGllbnRcIilcbiAgICAgIGlmICghdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggfHwgISF0aGlzLmZsdXNoRGVmZXJyZWQpIHtcbiAgICAgICAgbG9nLmRlYnVnKFxuICAgICAgICAgIFwiTm90aGluZyB0byBmbHVzaCB1cG9uIGNyZWRlbnRpYWwgcmVjZWlwdCBPUiBmbHVzaCBhbHJlYWR5IGluIHByb2dyZXNzXCJcbiAgICAgICAgKVxuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoZTogRXJyb3IpID0+IHtcbiAgICAgICAgbG9nLmVycm9yKFxuICAgICAgICAgIGBFcnJvciBmbHVzaGluZyBsb2dzIGFmdGVyIGNyZWRlbnRpYWwgcmVjZWlwdDogJHtlLm1lc3NhZ2V9YCxcbiAgICAgICAgICBlXG4gICAgICAgIClcbiAgICAgIH0pXG4gICAgfSlcbiAgfVxuICBhcHBlbmQocmVjb3JkOiBSZWNvcmQpOiB2b2lkIHtcbiAgICBjb25zdCBwZW5kaW5nQ291bnQgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCArIDEsXG4gICAgICByZW1vdmVDb3VudCA9IExvZ1F1ZXVlTWF4UmVjb3JkcyAtIHBlbmRpbmdDb3VudFxuXG4gICAgaWYgKHJlbW92ZUNvdW50IDwgMCkge1xuICAgICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy5zcGxpY2UoMCwgTWF0aC5hYnMocmVtb3ZlQ291bnQpKVxuICAgIH1cblxuICAgIHRoaXMucGVuZGluZ1JlY29yZHMucHVzaCh7XG4gICAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXG4gICAgICAuLi5yZWNvcmQsXG4gICAgICBhcHA6IHJlY29yZC5hcHA/Lmxlbmd0aCA+IDAgPyByZWNvcmQuYXBwIDogXCJVTktOT1dOXCIsXG4gICAgICBlbnY6IHJlY29yZC5lbnY/Lmxlbmd0aCA+IDAgPyByZWNvcmQuZW52IDogXCJVTktOT1dOXCIsXG4gICAgICB1cmw6IHR5cGVvZiB3aW5kb3cgPT09IFwidW5kZWZpbmVkXCIgPyBcImxvY2FsOi8vXCIgOiB3aW5kb3cubG9jYXRpb24uaHJlZlxuICAgIH0pXG5cbiAgICB0aGlzLmZsdXNoKClcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgdGhlIEZpcmVob3NlIGNsaWVudCBmb3IgYSBsb2FkZWQgY3JlZGVudGlhbCBzZXQuXG4gICAqIEBwYXJhbSBjcmVkcyBMb2FkZWQgRmlyZWhvc2UgY3JlZGVudGlhbHMuXG4gICAqIEByZXR1cm5zIEZpcmVob3NlIGNsaWVudC5cbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZ2V0RmlyZWhvc2UoY3JlZHM6IEFXU0NyZWRlbnRpYWxzKTogUHJvbWlzZTxGaXJlaG9zZUNsaWVudD4ge1xuICAgIGNvbnN0IHsgcmVnaW9uLCBzdHJlYW1OYW1lIH0gPSBjcmVkc1xuXG4gICAgaWYgKCFyZWdpb24gfHwgIXN0cmVhbU5hbWUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcIlJlZ2lvbiBvciBzdHJlYW0gbmFtZSBub3QgYXZhaWxhYmxlXCIpXG4gICAgfVxuXG4gICAgY29uc3QgeyBGaXJlaG9zZUNsaWVudCB9ID0gYXdhaXQgZ2V0RmlyZWhvc2VNb2R1bGUoKVxuICAgIGNvbnN0IGNsaWVudCA9IG5ldyBGaXJlaG9zZUNsaWVudCh7XG4gICAgICByZWdpb246IGNyZWRzLnJlZ2lvbixcbiAgICAgIGNyZWRlbnRpYWxzOiBwaWNrKGNyZWRzLCBcImFjY2Vzc0tleUlkXCIsIFwic2VjcmV0QWNjZXNzS2V5XCIsIFwic2Vzc2lvblRva2VuXCIpXG4gICAgfSlcblxuICAgIHJldHVybiBjbGllbnRcbiAgfVxuXG4gIC8qKlxuICAgKiBGbHVzaCBwZW5kaW5nIHJlY29yZHNcbiAgICpcbiAgICogQHJldHVybnMge1Byb21pc2U8dm9pZD59XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGZsdXNoKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICghIXRoaXMuZmx1c2hEZWZlcnJlZCkge1xuICAgICAgbG9nLmRlYnVnKFwiRmx1c2ggYWxyZWFkeSBpbiBwcm9ncmVzcywgc2tpcHBpbmdcIilcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIGlmICghdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgIGxvZy5kZWJ1ZyhcIk5vIHBlbmRpbmcgcmVjb3JkcyB0byBmbHVzaFwiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIGNvbnN0IGNyZWRzID0gdGhpcy5jcmVkZW50aWFsTWFuYWdlci5nZXRDcmVkZW50aWFscygpXG4gICAgaWYgKCFjcmVkcykge1xuICAgICAgbG9nLndhcm4oXCJObyBjcmVkZW50aWFscyBhdmFpbGFibGUgZm9yIGZsdXNoXCIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBkZWZlcnJlZCA9ICh0aGlzLmZsdXNoRGVmZXJyZWQgPSBuZXcgRGVmZXJyZWQ8dm9pZD4oKSlcbiAgICB0cnkge1xuICAgICAgY29uc3QgeyBzdHJlYW1OYW1lIH0gPSBjcmVkcyxcbiAgICAgICAgY2xpZW50ID0gYXdhaXQgdGhpcy5nZXRGaXJlaG9zZShjcmVkcyksXG4gICAgICAgIHsgUHV0UmVjb3JkQmF0Y2hDb21tYW5kIH0gPSBhd2FpdCBnZXRGaXJlaG9zZU1vZHVsZSgpXG5cbiAgICAgIHdoaWxlICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCkge1xuICAgICAgICBjb25zdCBjaHVua1NpemUgPSBNYXRoLm1pbih0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCwgMTApLFxuICAgICAgICAgIHJlY29yZHMgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLnNwbGljZSgwLCBjaHVua1NpemUpLFxuICAgICAgICAgIHJlY29yZEpzb25zID0gcmVjb3Jkcy5tYXAocmVjb3JkID0+IEpTT04uc3RyaW5naWZ5KHJlY29yZCkpXG5cbiAgICAgICAgaWYgKGxvZy5pc0RlYnVnRW5hYmxlZCgpKSBsb2cuZGVidWcoXCJSZWNvcmRzXCIsIHJlY29yZHMpXG5cbiAgICAgICAgY29uc3QgdGV4dEVuY29kZXIgPSBuZXcgVGV4dEVuY29kZXIoKSxcbiAgICAgICAgICBiYXRjaDogUHV0UmVjb3JkQmF0Y2hJbnB1dFtcIlJlY29yZHNcIl0gPSByZWNvcmRKc29ucy5tYXAoanNvblN0ciA9PiAoe1xuICAgICAgICAgICAgRGF0YTogdGV4dEVuY29kZXIuZW5jb2RlKGpzb25TdHIpXG4gICAgICAgICAgfSkpXG5cbiAgICAgICAgbG9nLmluZm8oYFB1c2hpbmcgJHtyZWNvcmRzLmxlbmd0aH0gcmVjb3JkcyB0byBmaXJlaG9zZWApXG5cbiAgICAgICAgY29uc3QgY21kID0gbmV3IFB1dFJlY29yZEJhdGNoQ29tbWFuZCh7XG4gICAgICAgICAgRGVsaXZlcnlTdHJlYW1OYW1lOiBzdHJlYW1OYW1lLFxuICAgICAgICAgIFJlY29yZHM6IGJhdGNoXG4gICAgICAgIH0pXG5cbiAgICAgICAgY29uc3QgcmVzcCA9IGF3YWl0IGNsaWVudC5zZW5kKGNtZClcbiAgICAgICAgY29uc3QgZmFpbGVkID0gcmVzcC5GYWlsZWRQdXRDb3VudCB8fCAwXG4gICAgICAgIGlmIChmYWlsZWQpIHtcbiAgICAgICAgICBjb25zdCByciA9IHJlc3AuUmVxdWVzdFJlc3BvbnNlcyB8fCBbXVxuICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgcnIubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGlmIChycltpXS5FcnJvckNvZGUpIHtcbiAgICAgICAgICAgICAgbG9nLndhcm4oXG4gICAgICAgICAgICAgICAgYFJlY29yZCBmYWlsZWQ6ICR7cnJbaV0uRXJyb3JDb2RlfSAke3JyW2ldLkVycm9yTWVzc2FnZX1gXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgLy90aGlzLnBlbmRpbmdSZWNvcmRzLnVuc2hpZnQocmVjb3Jkc1tpXSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgbG9nLmluZm8oYFB1dFJlY29yZEJhdGNoIGZhaWxlZD0ke2ZhaWxlZH07IHJlcXVldWVkIGZhaWxlZCByZWNvcmRzYClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsb2cuaW5mbyhgUHV0UmVjb3JkQmF0Y2ggb2sgY291bnQ9JHtyZWNvcmRzLmxlbmd0aH1gKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBkZWZlcnJlZC5yZXNvbHZlKClcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZy5lcnJvcihcIkZhaWxlZCB0byBwdXNoIGxvZ3NcIiwgZXJyKVxuICAgICAgaWYgKGVyci5uYW1lID09PSBFeHBpcmVkVG9rZW5FeGNlcHRpb25Db2RlKSB7XG4gICAgICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZm9yY2VVcGRhdGVDcmVkZW50aWFscygpXG4gICAgICB9XG4gICAgICBkZWZlcnJlZC5yZWplY3QoZXJyKVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmZsdXNoRGVmZXJyZWQgPSBudWxsXG5cbiAgICAgIC8vIGlmICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aClcbiAgICAgIC8vICAgdGhpcy5mbHVzaCgpXG4gICAgfVxuXG4gICAgcmV0dXJuIGRlZmVycmVkLnByb21pc2VcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBBV1NGaXJlaG9zZUFwcGVuZGVyXG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* eslint-disable typescript/no-explicit-any */
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
import EventEmitter3 from "eventemitter3";
|
|
3
3
|
import { Deferred } from "../../../helpers/index.js";
|
|
4
4
|
import { getInternalLogger } from "../../InternalLogger.js";
|
|
@@ -288,4 +288,4 @@ export class PushLogRecordsAppender {
|
|
|
288
288
|
}
|
|
289
289
|
}
|
|
290
290
|
export default PushLogRecordsAppender;
|
|
291
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVzaExvZ1JlY29yZHNBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9wdXNoL1B1c2hMb2dSZWNvcmRzQXBwZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLE9BQU8sYUFBYSxNQUFNLGVBQWUsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFHcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFFM0QsbURBQW1EO0FBQ25ELE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUEsQ0FBQyxhQUFhO0FBQ3hELE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUEsQ0FBQyxzQ0FBc0M7QUFDckYsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUE7QUFDOUIsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFBLENBQUMsYUFBYTtBQUNoRCxNQUFNLHFCQUFxQixHQUFHLEtBQUssQ0FBQTtBQUNuQyxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUE7QUFFbEMsTUFBTSxHQUFHLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQTtBQU8vQjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsYUFBc0Q7SUFLN0U7SUFKcEIsWUFBWSxHQUF5QyxJQUFJLENBQUE7SUFDekQsa0JBQWtCLEdBQTBCLElBQUksQ0FBQTtJQUNoRCxvQkFBb0IsR0FBa0IsSUFBSSxDQUFBO0lBRWxELFlBQTRCLFdBQW1CO1FBQzdDLEtBQUssRUFBRSxDQUFBO1FBRG1CLGdCQUFXLEdBQVgsV0FBVyxDQUFRO0lBRS9DLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFF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QUFjLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUM1QyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7WUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7UUFDeEIsQ0FBQztRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUVoQyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFBO1FBQzVELENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQTtRQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFFRCxlQUFlLHNCQUFzQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgdHlwZXNjcmlwdC9uby1leHBsaWNpdC1hbnkgKi9cbmltcG9ydCBFdmVudEVtaXR0ZXIzIGZyb20gXCJldmVudGVtaXR0ZXIzXCJcbmltcG9ydCB7IERlZmVycmVkIH0gZnJvbSBcIi4uLy4uLy4uL2hlbHBlcnMvaW5kZXguanNcIlxuaW1wb3J0IHsgTG9nUmVjb3JkIH0gZnJvbSBcIi4uLy4uL0xvZ1JlY29yZC5qc1wiXG5pbXBvcnQgeyBBcHBlbmRlciB9IGZyb20gXCIuLi8uLi9BcHBlbmRlci5qc1wiXG5pbXBvcnQgeyBnZXRJbnRlcm5hbExvZ2dlciB9IGZyb20gXCIuLi8uLi9JbnRlcm5hbExvZ2dlci5qc1wiXG5cbi8vIENvbnN0YW50cyBmb3IgdHVuaW5nIChhZGp1c3RhYmxlIGluIGRldmVsb3BtZW50KVxuY29uc3QgQ09PS0lFX0VYUElSQVRJT05fTVMgPSA1ICogNjAgKiAxMDAwIC8vIDMwIG1pbnV0ZXNcbmNvbnN0IENPT0tJRV9SRUZSRVNIX0JVRkZFUl9NUyA9IDIgKiA2MCAqIDEwMDAgLy8gUmVmcmVzaCAyIG1pbnV0ZXMgYmVmb3JlIGV4cGlyYXRpb25cbmNvbnN0IEZMVVNIX1FVRVVFX0RFUFRIID0gMTAwMFxuY29uc3QgRkxVU0hfSU5URVJWQUxfTVMgPSA1ICogMTAwMCAvLyAxMCBzZWNvbmRzXG5jb25zdCBMT0dfUVVFVUVfTUFYX1JFQ09SRFMgPSAxMDAwMFxuY29uc3QgQ09PS0lFX05BTUUgPSBcIndpcmVfbG9nc19pZFwiXG5cbmNvbnN0IGxvZyA9IGdldEludGVybmFsTG9nZ2VyKClcblxuaW50ZXJmYWNlIFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXJFdmVudE1hcCB7XG4gIHJlY2VpdmVkOiAoKSA9PiB2b2lkXG4gIGV4cGlyZWQ6ICgpID0+IHZvaWRcbn1cblxuLyoqXG4gKiBNYW5hZ2VzIGNyZWRlbnRpYWwgY29va2llIGZvciBQdXNoTG9nUmVjb3Jkc0FwcGVuZGVyLlxuICogSW52b2tlcyB0aGUgZW5kcG9pbnQgdmlhIFBPU1QgdG8gb2J0YWluIGEgc2Vzc2lvbiBjb29raWUuXG4gKi9cbmV4cG9ydCBjbGFzcyBQdXNoTG9nUmVjb3Jkc0NyZWRlbnRpYWxNYW5hZ2VyIGV4dGVuZHMgRXZlbnRFbWl0dGVyMzxQdXNoTG9nUmVjb3Jkc0NyZWRlbnRpYWxNYW5hZ2VyRXZlbnRNYXA+IHtcbiAgcHJpdmF0ZSByZWZyZXNoVGltZXI6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGxcbiAgcHJpdmF0ZSBjcmVkZW50aWFsRGVmZXJyZWQ6IERlZmVycmVkPHZvaWQ+IHwgbnVsbCA9IG51bGxcbiAgcHJpdmF0ZSBjb29raWVFeHBpcmF0aW9uVGltZTogbnVtYmVyIHwgbnVsbCA9IG51bGxcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZW5kcG9pbnRVcmw6IHN0cmluZykge1xuICAgIHN1cGVyKClcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB2YWxpZCBjcmVkZW50aWFscyBleGlzdFxuICAgKi9cbiAgaGFzQ3JlZGVudGlhbHMoKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0aGlzLmNvb2tpZUV4cGlyYXRpb25UaW1lKSB7XG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICBpZiAoRGF0ZS5ub3coKSA+PSB0aGlzLmNvb2tpZUV4cGlyYXRpb25UaW1lKSB7XG4gICAgICB0aGlzLmNvb2tpZUV4cGlyYXRpb25UaW1lID0gbnVsbFxuICAgICAgdGhpcy5lbWl0KFwiZXhwaXJlZFwiKVxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWVcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgY3JlZGVudGlhbHMsIGZldGNoaW5nIHRoZW0gaWYgbmVjZXNzYXJ5XG4gICAqL1xuICBhc3luYyBlbnN1cmVDcmVkZW50aWFscygpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICAvLyBJZiB3ZSBoYXZlIHZhbGlkIGNyZWRlbnRpYWxzLCByZXR1cm4gaW1tZWRpYXRlbHlcbiAgICBpZiAodGhpcy5oYXNDcmVkZW50aWFscygpKSB7XG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH1cblxuICAgIC8vIElmIGEgZmV0Y2ggaXMgYWxyZWFkeSBpbiBwcm9ncmVzcywgd2FpdCBmb3IgaXRcbiAgICBpZiAodGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgJiYgIXRoaXMuY3JlZGVudGlhbERlZmVycmVkLmlzU2V0dGxlZCgpKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5wcm9taXNlXG4gICAgICAgIHJldHVybiB0aGlzLmhhc0NyZWRlbnRpYWxzKClcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICByZXR1cm4gZmFsc2VcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBGZXRjaCBuZXcgY3JlZGVudGlhbHNcbiAgICByZXR1cm4gdGhpcy5mZXRjaENyZWRlbnRpYWxzKClcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JjZSByZWZyZXNoIG9mIGNyZWRlbnRpYWxzXG4gICAqL1xuICBmb3JjZVJlZnJlc2goKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVmcmVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5yZWZyZXNoVGltZXIpXG4gICAgICB0aGlzLnJlZnJlc2hUaW1lciA9IG51bGxcbiAgICB9XG5cbiAgICB0aGlzLmNvb2tpZUV4cGlyYXRpb25UaW1lID0gbnVsbFxuXG4gICAgaWYgKHRoaXMuY3JlZGVudGlhbERlZmVycmVkICYmICF0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5pc1NldHRsZWQoKSkge1xuICAgICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQucmVqZWN0KG5ldyBFcnJvcihcIkZvcmNlIHJlZnJlc2ggcmVxdWVzdGVkXCIpKVxuICAgIH1cbiAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCA9IG51bGxcblxuICAgIHRoaXMuZmV0Y2hDcmVkZW50aWFscygpLmNhdGNoKCgpID0+IHtcbiAgICAgIC8vIElnbm9yZSBlcnJvcnMgZHVyaW5nIGZvcmNlIHJlZnJlc2gsIHRoZXknbGwgYmUgaGFuZGxlZCBvbiBuZXh0IHJlcXVlc3RcbiAgICB9KVxuICB9XG5cbiAgLyoqXG4gICAqIEZldGNoIGNyZWRlbnRpYWxzIGZyb20gdGhlIGVuZHBvaW50XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGZldGNoQ3JlZGVudGlhbHMoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZGVmZXJyZWQgPSAodGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgPSBuZXcgRGVmZXJyZWQ8dm9pZD4oKSlcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHRoaXMuZW5kcG9pbnRVcmwsIHtcbiAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgbW9kZTogXCJjb3JzXCIsXG4gICAgICAgIGNyZWRlbnRpYWxzOiBcImluY2x1ZGVcIixcbiAgICAgICAgaGVhZGVyczoge1xuICAgICAgICAgIFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiXG4gICAgICAgIH0sXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHt9KVxuICAgICAgfSlcblxuICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYENyZWRlbnRpYWwgcmVxdWVzdCBmYWlsZWQgd2l0aCBzdGF0dXMgJHtyZXNwb25zZS5zdGF0dXN9YFxuICAgICAgICApXG4gICAgICB9XG5cbiAgICAgIC8vIENvb2tpZSBpcyBzZXQgYnkgU2V0LUNvb2tpZSBoZWFkZXIsIHdlIGp1c3QgbmVlZCB0byB0cmFjayBleHBpcmF0aW9uXG4gICAgICB0aGlzLmNvb2tpZUV4cGlyYXRpb25UaW1lID0gRGF0ZS5ub3coKSArIENPT0tJRV9FWFBJUkFUSU9OX01TXG5cbiAgICAgIC8vIFNjaGVkdWxlIHJlZnJlc2ggYmVmb3JlIGV4cGlyYXRpb25cbiAgICAgIHRoaXMuc2NoZWR1bGVSZWZyZXNoKClcblxuICAgICAgZGVmZXJyZWQucmVzb2x2ZSgpXG4gICAgICB0aGlzLmVtaXQoXCJyZWNlaXZlZFwiKVxuXG4gICAgICByZXR1cm4gdHJ1ZVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgbG9nLndhcm4oXCJGYWlsZWQgdG8gZmV0Y2ggcHVzaCBsb2cgY3JlZGVudGlhbHNcIiwgZXJyKVxuICAgICAgZGVmZXJyZWQucmVqZWN0KGVycilcbiAgICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuICAgICAgcmV0dXJuIGZhbHNlXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNjaGVkdWxlIGEgY3JlZGVudGlhbCByZWZyZXNoIGJlZm9yZSBleHBpcmF0aW9uXG4gICAqL1xuICBwcml2YXRlIHNjaGVkdWxlUmVmcmVzaCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlZnJlc2hUaW1lcilcbiAgICB9XG5cbiAgICBjb25zdCByZWZyZXNoSW4gPSBDT09LSUVfRVhQSVJBVElPTl9NUyAtIENPT0tJRV9SRUZSRVNIX0JVRkZFUl9NU1xuICAgIHRoaXMucmVmcmVzaFRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCA9IG51bGxcbiAgICAgIHRoaXMuZmV0Y2hDcmVkZW50aWFscygpLmNhdGNoKCgpID0+IHtcbiAgICAgICAgLy8gTG9nIGJ1dCBkb24ndCB0aHJvdyAtIHdpbGwgcmV0cnkgb24gbmV4dCByZXF1ZXN0XG4gICAgICAgIGxvZy5kZWJ1ZyhcIlNjaGVkdWxlZCBjcmVkZW50aWFsIHJlZnJlc2ggZmFpbGVkXCIpXG4gICAgICB9KVxuICAgIH0sIHJlZnJlc2hJbilcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGVhbiB1cCByZXNvdXJjZXNcbiAgICovXG4gIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVmcmVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5yZWZyZXNoVGltZXIpXG4gICAgICB0aGlzLnJlZnJlc2hUaW1lciA9IG51bGxcbiAgICB9XG5cbiAgICBpZiAodGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgJiYgIXRoaXMuY3JlZGVudGlhbERlZmVycmVkLmlzU2V0dGxlZCgpKSB7XG4gICAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5yZWplY3QobmV3IEVycm9yKFwiQ3JlZGVudGlhbCBtYW5hZ2VyIGRlc3Ryb3llZFwiKSlcbiAgICB9XG5cbiAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCA9IG51bGxcbiAgICB0aGlzLmNvb2tpZUV4cGlyYXRpb25UaW1lID0gbnVsbFxuICB9XG59XG5cbi8qKlxuICogQXBwZW5kZXIgdGhhdCBwdXNoZXMgbG9nIHJlY29yZHMgdG8gYSByZW1vdGUgZW5kcG9pbnQgdmlhIEhUVFAgUFVULlxuICogQmF0Y2hlcyByZWNvcmRzIGFuZCBzZW5kcyB3aGVuIHF1ZXVlIHJlYWNoZXMgRkxVU0hfUVVFVUVfREVQVEggb3IgRkxVU0hfSU5URVJWQUxfTVMgaGFzIGVsYXBzZWQuXG4gKi9cbmV4cG9ydCBjbGFzcyBQdXNoTG9nUmVjb3Jkc0FwcGVuZGVyPFxuICBSZWNvcmQgZXh0ZW5kcyBMb2dSZWNvcmQgPSBMb2dSZWNvcmRcbj4gaW1wbGVtZW50cyBBcHBlbmRlcjxSZWNvcmQ+IHtcbiAgcHJpdmF0ZSBwZW5kaW5nUmVjb3JkczogTG9nUmVjb3JkW10gPSBbXVxuICBwcml2YXRlIGZsdXNoRGVmZXJyZWQ6IERlZmVycmVkPHZvaWQ+IHwgbnVsbCA9IG51bGxcbiAgcHJpdmF0ZSBmbHVzaFRpbWVyOiBSZXR1cm5UeXBlPHR5cGVvZiBzZXRUaW1lb3V0PiB8IG51bGwgPSBudWxsXG5cbiAgcHVibGljIHJlYWRvbmx5IGNyZWRlbnRpYWxNYW5hZ2VyOiBQdXNoTG9nUmVjb3Jkc0NyZWRlbnRpYWxNYW5hZ2VyXG5cbiAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IGVuZHBvaW50VXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyID0gbmV3IFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXIoZW5kcG9pbnRVcmwpXG5cbiAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyLm9uKFwicmVjZWl2ZWRcIiwgKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCB8fCB0aGlzLmZsdXNoRGVmZXJyZWQpIHtcbiAgICAgICAgcmV0dXJuXG4gICAgICB9XG4gICAgICB0aGlzLmZsdXNoKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAvLyBFcnJvcnMgaGFuZGxlZCBpbiBmbHVzaFxuICAgICAgfSlcbiAgICB9KVxuICB9XG5cbiAgLyoqXG4gICAqIEFwcGVuZCBhIGxvZyByZWNvcmQgdG8gdGhlIHF1ZXVlXG4gICAqL1xuICBhcHBlbmQocmVjb3JkOiBSZWNvcmQpOiB2b2lkIHtcbiAgICAvLyBBZGQgdGhlIHJlY29yZCB3aXRoIGVucmljaGVkIG1ldGFkYXRhXG4gICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy5wdXNoKHtcbiAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcbiAgICAgIC4uLnJlY29yZCxcbiAgICAgIGFwcDogcmVjb3JkLmFwcCAmJiByZWNvcmQuYXBwLmxlbmd0aCA+IDAgPyByZWNvcmQuYXBwIDogXCJVTktOT1dOXCIsXG4gICAgICBlbnY6IHJlY29yZC5lbnYgJiYgcmVjb3JkLmVudi5sZW5ndGggPiAwID8gcmVjb3JkLmVudiA6IFwiVU5LTk9XTlwiLFxuICAgICAgdXJsOiB0eXBlb2Ygd2luZG93ID09PSBcInVuZGVmaW5lZFwiID8gXCJsb2NhbDovL1wiIDogd2luZG93LmxvY2F0aW9uLmhyZWZcbiAgICB9KVxuICAgIHRoaXMudHJpbVBlbmRpbmdSZWNvcmRzVG9RdWV1ZUNhcCgpXG5cbiAgICAvLyBDaGVjayBpZiB3ZSBzaG91bGQgZmx1c2ggaW1tZWRpYXRlbHkgZHVlIHRvIHF1ZXVlIGRlcHRoXG4gICAgaWYgKHRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoID49IEZMVVNIX1FVRVVFX0RFUFRIKSB7XG4gICAgICB0aGlzLmZsdXNoKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAvLyBFcnJvcnMgaGFuZGxlZCBpbiBmbHVzaFxuICAgICAgfSlcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gU2NoZWR1bGUgYSBmbHVzaCBpZiBub3QgYWxyZWFkeSBzY2hlZHVsZWRcbiAgICAgIHRoaXMuc2NoZWR1bGVGbHVzaCgpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFNjaGVkdWxlIGEgZmx1c2ggYWZ0ZXIgdGhlIGludGVydmFsXG4gICAqL1xuICBwcml2YXRlIHNjaGVkdWxlRmx1c2goKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmx1c2hUaW1lcikge1xuICAgICAgcmV0dXJuIC8vIEFscmVhZHkgc2NoZWR1bGVkXG4gICAgfVxuXG4gICAgdGhpcy5mbHVzaFRpbWVyID0gc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLmZsdXNoVGltZXIgPSBudWxsXG4gICAgICB0aGlzLmZsdXNoKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAvLyBFcnJvcnMgaGFuZGxlZCBpbiBmbHVzaFxuICAgICAgfSlcbiAgICB9LCBGTFVTSF9JTlRFUlZBTF9NUylcbiAgfVxuXG4gIC8qKlxuICAgKiBGbHVzaCBwZW5kaW5nIHJlY29yZHMgdG8gdGhlIGVuZHBvaW50XG4gICAqL1xuICBwcml2YXRlIGFzeW5jIGZsdXNoKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFByZXZlbnQgY29uY3VycmVudCBmbHVzaGVzXG4gICAgaWYgKHRoaXMuZmx1c2hEZWZlcnJlZCkge1xuICAgICAgcmV0dXJuIHRoaXMuZmx1c2hEZWZlcnJlZC5wcm9taXNlXG4gICAgfVxuXG4gICAgLy8gTm90aGluZyB0byBmbHVzaFxuICAgIGlmICghdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgpIHtcbiAgICAgIHJldHVyblxuICAgIH1cblxuICAgIC8vIEVuc3VyZSB3ZSBoYXZlIHZhbGlkIGNyZWRlbnRpYWxzXG4gICAgY29uc3QgaGFzQ3JlZGVudGlhbHMgPSBhd2FpdCB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyLmVuc3VyZUNyZWRlbnRpYWxzKClcbiAgICBpZiAoIWhhc0NyZWRlbnRpYWxzKSB7XG4gICAgICBsb2cuZGVidWcoXCJGYWlsZWQgdG8gcHVzaCBsb2cgcmVjb3Jkc1wiLCBcIk5vIHZhbGlkIGNyZWRlbnRpYWxzIGF2YWlsYWJsZVwiKVxuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgY29uc3QgZGVmZXJyZWQgPSAodGhpcy5mbHVzaERlZmVycmVkID0gbmV3IERlZmVycmVkPHZvaWQ+KCkpXG5cbiAgICB0cnkge1xuICAgICAgLy8gVGFrZSBhbGwgcGVuZGluZyByZWNvcmRzIGZvciB0aGlzIGZsdXNoXG4gICAgICBjb25zdCByZWNvcmRzID0gdGhpcy5wZW5kaW5nUmVjb3Jkcy5zcGxpY2UoMCwgdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGgpXG4gICAgICBjb25zdCBwYXlsb2FkID0geyByZWNvcmRzOiByZWNvcmRzLm1hcChyZWNvcmQgPT4gSlNPTi5zdHJpbmdpZnkocmVjb3JkKSkgfVxuXG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKHRoaXMuZW5kcG9pbnRVcmwsIHtcbiAgICAgICAgbWV0aG9kOiBcIlBVVFwiLFxuICAgICAgICBtb2RlOiBcImNvcnNcIixcbiAgICAgICAgY3JlZGVudGlhbHM6IFwiaW5jbHVkZVwiLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCJcbiAgICAgICAgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkocGF5bG9hZClcbiAgICAgIH0pXG5cbiAgICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgICAgLy8gUmUtcXVldWUgcmVjb3JkcyBvbiBmYWlsdXJlXG4gICAgICAgIHRoaXMucGVuZGluZ1JlY29yZHMudW5zaGlmdCguLi5yZWNvcmRzKVxuICAgICAgICB0aGlzLnRyaW1QZW5kaW5nUmVjb3Jkc1RvUXVldWVDYXAoKVxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFB1c2ggZmFpbGVkIHdpdGggc3RhdHVzICR7cmVzcG9uc2Uuc3RhdHVzfWApXG4gICAgICB9XG5cbiAgICAgIGRlZmVycmVkLnJlc29sdmUoKVxuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgbG9nLmRlYnVnKFwiRmFpbGVkIHRvIHB1c2ggbG9nIHJlY29yZHNcIiwgZXJyKVxuICAgICAgZGVmZXJyZWQucmVqZWN0KGVycilcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5mbHVzaERlZmVycmVkID0gbnVsbFxuXG4gICAgICAvLyBJZiBtb3JlIHJlY29yZHMgYWNjdW11bGF0ZWQgZHVyaW5nIGZsdXNoLCBzY2hlZHVsZSBhbm90aGVyXG4gICAgICBpZiAodGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgIHRoaXMuc2NoZWR1bGVGbHVzaCgpXG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIGRlZmVycmVkLnByb21pc2VcbiAgfVxuXG4gIC8qKlxuICAgKiBGb3JjZSBhbiBpbW1lZGlhdGUgZmx1c2hcbiAgICovXG4gIGFzeW5jIGZvcmNlRmx1c2goKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuZmx1c2hUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuZmx1c2hUaW1lcilcbiAgICAgIHRoaXMuZmx1c2hUaW1lciA9IG51bGxcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5mbHVzaCgpXG4gIH1cblxuICAvKipcbiAgICogRW5mb3JjZSB0aGUgcGVuZGluZyBxdWV1ZSBjYXAgYnkgZHJvcHBpbmcgdGhlIG9sZGVzdCByZWNvcmRzLlxuICAgKi9cbiAgcHJpdmF0ZSB0cmltUGVuZGluZ1JlY29yZHNUb1F1ZXVlQ2FwKCk6IHZvaWQge1xuICAgIGNvbnN0IHJlbW92ZUNvdW50ID0gdGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggLSBMT0dfUVVFVUVfTUFYX1JFQ09SRFNcblxuICAgIGlmIChyZW1vdmVDb3VudCA+IDApIHtcbiAgICAgIHRoaXMucGVuZGluZ1JlY29yZHMuc3BsaWNlKDAsIHJlbW92ZUNvdW50KVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBDbGVhbiB1cCByZXNvdXJjZXNcbiAgICovXG4gIGRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZmx1c2hUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuZmx1c2hUaW1lcilcbiAgICAgIHRoaXMuZmx1c2hUaW1lciA9IG51bGxcbiAgICB9XG5cbiAgICB0aGlzLmNyZWRlbnRpYWxNYW5hZ2VyLmRlc3Ryb3koKVxuXG4gICAgaWYgKHRoaXMuZmx1c2hEZWZlcnJlZCAmJiAhdGhpcy5mbHVzaERlZmVycmVkLmlzU2V0dGxlZCgpKSB7XG4gICAgICB0aGlzLmZsdXNoRGVmZXJyZWQucmVqZWN0KG5ldyBFcnJvcihcIkFwcGVuZGVyIGRlc3Ryb3llZFwiKSlcbiAgICB9XG5cbiAgICB0aGlzLmZsdXNoRGVmZXJyZWQgPSBudWxsXG4gICAgdGhpcy5wZW5kaW5nUmVjb3JkcyA9IFtdXG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgUHVzaExvZ1JlY29yZHNBcHBlbmRlclxuIl19
|
|
291
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHVzaExvZ1JlY29yZHNBcHBlbmRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9sb2dnaW5nL2FwcGVuZGVycy9wdXNoL1B1c2hMb2dSZWNvcmRzQXBwZW5kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsdURBQXVEO0FBQ3ZELE9BQU8sYUFBYSxNQUFNLGVBQWUsQ0FBQTtBQUN6QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUE7QUFHcEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFFM0QsbURBQW1EO0FBQ25ELE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUEsQ0FBQyxhQUFhO0FBQ3hELE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUEsQ0FBQyxzQ0FBc0M7QUFDckYsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUE7QUFDOUIsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFBLENBQUMsYUFBYTtBQUNoRCxNQUFNLHFCQUFxQixHQUFHLEtBQUssQ0FBQTtBQUNuQyxNQUFNLFdBQVcsR0FBRyxjQUFjLENBQUE7QUFFbEMsTUFBTSxHQUFHLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQTtBQU8vQjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsYUFBc0Q7SUFLN0U7SUFKcEIsWUFBWSxHQUF5QyxJQUFJLENBQUE7SUFDekQsa0JBQWtCLEdBQTBCLElBQUksQ0FBQTtJQUNoRCxvQkFBb0IsR0FBa0IsSUFBSSxDQUFBO0lBRWxELFlBQTRCLFdBQW1CO1FBQzdDLEtBQUssRUFBRSxDQUFBO1FBRG1CLGdCQUFXLEdBQVgsV0FBVyxDQUFRO0lBRS9DLENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFF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QUFjLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQTtRQUM1QyxDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3BCLFlBQVksQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUE7WUFDN0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUE7UUFDeEIsQ0FBQztRQUVELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUVoQyxJQUFJLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFBO1FBQzVELENBQUM7UUFFRCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQTtRQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFFRCxlQUFlLHNCQUFzQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueSAqL1xuaW1wb3J0IEV2ZW50RW1pdHRlcjMgZnJvbSBcImV2ZW50ZW1pdHRlcjNcIlxuaW1wb3J0IHsgRGVmZXJyZWQgfSBmcm9tIFwiLi4vLi4vLi4vaGVscGVycy9pbmRleC5qc1wiXG5pbXBvcnQgeyBMb2dSZWNvcmQgfSBmcm9tIFwiLi4vLi4vTG9nUmVjb3JkLmpzXCJcbmltcG9ydCB7IEFwcGVuZGVyIH0gZnJvbSBcIi4uLy4uL0FwcGVuZGVyLmpzXCJcbmltcG9ydCB7IGdldEludGVybmFsTG9nZ2VyIH0gZnJvbSBcIi4uLy4uL0ludGVybmFsTG9nZ2VyLmpzXCJcblxuLy8gQ29uc3RhbnRzIGZvciB0dW5pbmcgKGFkanVzdGFibGUgaW4gZGV2ZWxvcG1lbnQpXG5jb25zdCBDT09LSUVfRVhQSVJBVElPTl9NUyA9IDUgKiA2MCAqIDEwMDAgLy8gMzAgbWludXRlc1xuY29uc3QgQ09PS0lFX1JFRlJFU0hfQlVGRkVSX01TID0gMiAqIDYwICogMTAwMCAvLyBSZWZyZXNoIDIgbWludXRlcyBiZWZvcmUgZXhwaXJhdGlvblxuY29uc3QgRkxVU0hfUVVFVUVfREVQVEggPSAxMDAwXG5jb25zdCBGTFVTSF9JTlRFUlZBTF9NUyA9IDUgKiAxMDAwIC8vIDEwIHNlY29uZHNcbmNvbnN0IExPR19RVUVVRV9NQVhfUkVDT1JEUyA9IDEwMDAwXG5jb25zdCBDT09LSUVfTkFNRSA9IFwid2lyZV9sb2dzX2lkXCJcblxuY29uc3QgbG9nID0gZ2V0SW50ZXJuYWxMb2dnZXIoKVxuXG5pbnRlcmZhY2UgUHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlckV2ZW50TWFwIHtcbiAgcmVjZWl2ZWQ6ICgpID0+IHZvaWRcbiAgZXhwaXJlZDogKCkgPT4gdm9pZFxufVxuXG4vKipcbiAqIE1hbmFnZXMgY3JlZGVudGlhbCBjb29raWUgZm9yIFB1c2hMb2dSZWNvcmRzQXBwZW5kZXIuXG4gKiBJbnZva2VzIHRoZSBlbmRwb2ludCB2aWEgUE9TVCB0byBvYnRhaW4gYSBzZXNzaW9uIGNvb2tpZS5cbiAqL1xuZXhwb3J0IGNsYXNzIFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXIgZXh0ZW5kcyBFdmVudEVtaXR0ZXIzPFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXJFdmVudE1hcD4ge1xuICBwcml2YXRlIHJlZnJlc2hUaW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCBudWxsID0gbnVsbFxuICBwcml2YXRlIGNyZWRlbnRpYWxEZWZlcnJlZDogRGVmZXJyZWQ8dm9pZD4gfCBudWxsID0gbnVsbFxuICBwcml2YXRlIGNvb2tpZUV4cGlyYXRpb25UaW1lOiBudW1iZXIgfCBudWxsID0gbnVsbFxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSBlbmRwb2ludFVybDogc3RyaW5nKSB7XG4gICAgc3VwZXIoKVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHZhbGlkIGNyZWRlbnRpYWxzIGV4aXN0XG4gICAqL1xuICBoYXNDcmVkZW50aWFscygpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY29va2llRXhwaXJhdGlvblRpbWUpIHtcbiAgICAgIHJldHVybiBmYWxzZVxuICAgIH1cblxuICAgIGlmIChEYXRlLm5vdygpID49IHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUpIHtcbiAgICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBudWxsXG4gICAgICB0aGlzLmVtaXQoXCJleHBpcmVkXCIpXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZVxuICB9XG5cbiAgLyoqXG4gICAqIEdldCBjcmVkZW50aWFscywgZmV0Y2hpbmcgdGhlbSBpZiBuZWNlc3NhcnlcbiAgICovXG4gIGFzeW5jIGVuc3VyZUNyZWRlbnRpYWxzKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIC8vIElmIHdlIGhhdmUgdmFsaWQgY3JlZGVudGlhbHMsIHJldHVybiBpbW1lZGlhdGVseVxuICAgIGlmICh0aGlzLmhhc0NyZWRlbnRpYWxzKCkpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuXG4gICAgLy8gSWYgYSBmZXRjaCBpcyBhbHJlYWR5IGluIHByb2dyZXNzLCB3YWl0IGZvciBpdFxuICAgIGlmICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCAmJiAhdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IHRoaXMuY3JlZGVudGlhbERlZmVycmVkLnByb21pc2VcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzQ3JlZGVudGlhbHMoKVxuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZldGNoIG5ldyBjcmVkZW50aWFsc1xuICAgIHJldHVybiB0aGlzLmZldGNoQ3JlZGVudGlhbHMoKVxuICB9XG5cbiAgLyoqXG4gICAqIEZvcmNlIHJlZnJlc2ggb2YgY3JlZGVudGlhbHNcbiAgICovXG4gIGZvcmNlUmVmcmVzaCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlZnJlc2hUaW1lcilcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBudWxsXG5cbiAgICBpZiAodGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgJiYgIXRoaXMuY3JlZGVudGlhbERlZmVycmVkLmlzU2V0dGxlZCgpKSB7XG4gICAgICB0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZC5yZWplY3QobmV3IEVycm9yKFwiRm9yY2UgcmVmcmVzaCByZXF1ZXN0ZWRcIikpXG4gICAgfVxuICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuXG4gICAgdGhpcy5mZXRjaENyZWRlbnRpYWxzKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgLy8gSWdub3JlIGVycm9ycyBkdXJpbmcgZm9yY2UgcmVmcmVzaCwgdGhleSdsbCBiZSBoYW5kbGVkIG9uIG5leHQgcmVxdWVzdFxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogRmV0Y2ggY3JlZGVudGlhbHMgZnJvbSB0aGUgZW5kcG9pbnRcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmV0Y2hDcmVkZW50aWFscygpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBkZWZlcnJlZCA9ICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCA9IG5ldyBEZWZlcnJlZDx2b2lkPigpKVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godGhpcy5lbmRwb2ludFVybCwge1xuICAgICAgICBtZXRob2Q6IFwiUE9TVFwiLFxuICAgICAgICBtb2RlOiBcImNvcnNcIixcbiAgICAgICAgY3JlZGVudGlhbHM6IFwiaW5jbHVkZVwiLFxuICAgICAgICBoZWFkZXJzOiB7XG4gICAgICAgICAgXCJDb250ZW50LVR5cGVcIjogXCJhcHBsaWNhdGlvbi9qc29uXCJcbiAgICAgICAgfSxcbiAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoe30pXG4gICAgICB9KVxuXG4gICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgQ3JlZGVudGlhbCByZXF1ZXN0IGZhaWxlZCB3aXRoIHN0YXR1cyAke3Jlc3BvbnNlLnN0YXR1c31gXG4gICAgICAgIClcbiAgICAgIH1cblxuICAgICAgLy8gQ29va2llIGlzIHNldCBieSBTZXQtQ29va2llIGhlYWRlciwgd2UganVzdCBuZWVkIHRvIHRyYWNrIGV4cGlyYXRpb25cbiAgICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBEYXRlLm5vdygpICsgQ09PS0lFX0VYUElSQVRJT05fTVNcblxuICAgICAgLy8gU2NoZWR1bGUgcmVmcmVzaCBiZWZvcmUgZXhwaXJhdGlvblxuICAgICAgdGhpcy5zY2hlZHVsZVJlZnJlc2goKVxuXG4gICAgICBkZWZlcnJlZC5yZXNvbHZlKClcbiAgICAgIHRoaXMuZW1pdChcInJlY2VpdmVkXCIpXG5cbiAgICAgIHJldHVybiB0cnVlXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cud2FybihcIkZhaWxlZCB0byBmZXRjaCBwdXNoIGxvZyBjcmVkZW50aWFsc1wiLCBlcnIpXG4gICAgICBkZWZlcnJlZC5yZWplY3QoZXJyKVxuICAgICAgdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQgPSBudWxsXG4gICAgICByZXR1cm4gZmFsc2VcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2NoZWR1bGUgYSBjcmVkZW50aWFsIHJlZnJlc2ggYmVmb3JlIGV4cGlyYXRpb25cbiAgICovXG4gIHByaXZhdGUgc2NoZWR1bGVSZWZyZXNoKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnJlZnJlc2hUaW1lcikge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMucmVmcmVzaFRpbWVyKVxuICAgIH1cblxuICAgIGNvbnN0IHJlZnJlc2hJbiA9IENPT0tJRV9FWFBJUkFUSU9OX01TIC0gQ09PS0lFX1JFRlJFU0hfQlVGRkVSX01TXG4gICAgdGhpcy5yZWZyZXNoVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuICAgICAgdGhpcy5mZXRjaENyZWRlbnRpYWxzKCkuY2F0Y2goKCkgPT4ge1xuICAgICAgICAvLyBMb2cgYnV0IGRvbid0IHRocm93IC0gd2lsbCByZXRyeSBvbiBuZXh0IHJlcXVlc3RcbiAgICAgICAgbG9nLmRlYnVnKFwiU2NoZWR1bGVkIGNyZWRlbnRpYWwgcmVmcmVzaCBmYWlsZWRcIilcbiAgICAgIH0pXG4gICAgfSwgcmVmcmVzaEluKVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIHVwIHJlc291cmNlc1xuICAgKi9cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5yZWZyZXNoVGltZXIpIHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLnJlZnJlc2hUaW1lcilcbiAgICAgIHRoaXMucmVmcmVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIGlmICh0aGlzLmNyZWRlbnRpYWxEZWZlcnJlZCAmJiAhdGhpcy5jcmVkZW50aWFsRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkLnJlamVjdChuZXcgRXJyb3IoXCJDcmVkZW50aWFsIG1hbmFnZXIgZGVzdHJveWVkXCIpKVxuICAgIH1cblxuICAgIHRoaXMuY3JlZGVudGlhbERlZmVycmVkID0gbnVsbFxuICAgIHRoaXMuY29va2llRXhwaXJhdGlvblRpbWUgPSBudWxsXG4gIH1cbn1cblxuLyoqXG4gKiBBcHBlbmRlciB0aGF0IHB1c2hlcyBsb2cgcmVjb3JkcyB0byBhIHJlbW90ZSBlbmRwb2ludCB2aWEgSFRUUCBQVVQuXG4gKiBCYXRjaGVzIHJlY29yZHMgYW5kIHNlbmRzIHdoZW4gcXVldWUgcmVhY2hlcyBGTFVTSF9RVUVVRV9ERVBUSCBvciBGTFVTSF9JTlRFUlZBTF9NUyBoYXMgZWxhcHNlZC5cbiAqL1xuZXhwb3J0IGNsYXNzIFB1c2hMb2dSZWNvcmRzQXBwZW5kZXI8XG4gIFJlY29yZCBleHRlbmRzIExvZ1JlY29yZCA9IExvZ1JlY29yZFxuPiBpbXBsZW1lbnRzIEFwcGVuZGVyPFJlY29yZD4ge1xuICBwcml2YXRlIHBlbmRpbmdSZWNvcmRzOiBMb2dSZWNvcmRbXSA9IFtdXG4gIHByaXZhdGUgZmx1c2hEZWZlcnJlZDogRGVmZXJyZWQ8dm9pZD4gfCBudWxsID0gbnVsbFxuICBwcml2YXRlIGZsdXNoVGltZXI6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgbnVsbCA9IG51bGxcblxuICBwdWJsaWMgcmVhZG9ubHkgY3JlZGVudGlhbE1hbmFnZXI6IFB1c2hMb2dSZWNvcmRzQ3JlZGVudGlhbE1hbmFnZXJcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgZW5kcG9pbnRVcmw6IHN0cmluZykge1xuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIgPSBuZXcgUHVzaExvZ1JlY29yZHNDcmVkZW50aWFsTWFuYWdlcihlbmRwb2ludFVybClcblxuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIub24oXCJyZWNlaXZlZFwiLCAoKSA9PiB7XG4gICAgICBpZiAoIXRoaXMucGVuZGluZ1JlY29yZHMubGVuZ3RoIHx8IHRoaXMuZmx1c2hEZWZlcnJlZCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIEVycm9ycyBoYW5kbGVkIGluIGZsdXNoXG4gICAgICB9KVxuICAgIH0pXG4gIH1cblxuICAvKipcbiAgICogQXBwZW5kIGEgbG9nIHJlY29yZCB0byB0aGUgcXVldWVcbiAgICovXG4gIGFwcGVuZChyZWNvcmQ6IFJlY29yZCk6IHZvaWQge1xuICAgIC8vIEFkZCB0aGUgcmVjb3JkIHdpdGggZW5yaWNoZWQgbWV0YWRhdGFcbiAgICB0aGlzLnBlbmRpbmdSZWNvcmRzLnB1c2goe1xuICAgICAgdGltZXN0YW1wOiBEYXRlLm5vdygpLFxuICAgICAgLi4ucmVjb3JkLFxuICAgICAgYXBwOiByZWNvcmQuYXBwICYmIHJlY29yZC5hcHAubGVuZ3RoID4gMCA/IHJlY29yZC5hcHAgOiBcIlVOS05PV05cIixcbiAgICAgIGVudjogcmVjb3JkLmVudiAmJiByZWNvcmQuZW52Lmxlbmd0aCA+IDAgPyByZWNvcmQuZW52IDogXCJVTktOT1dOXCIsXG4gICAgICB1cmw6IHR5cGVvZiB3aW5kb3cgPT09IFwidW5kZWZpbmVkXCIgPyBcImxvY2FsOi8vXCIgOiB3aW5kb3cubG9jYXRpb24uaHJlZlxuICAgIH0pXG4gICAgdGhpcy50cmltUGVuZGluZ1JlY29yZHNUb1F1ZXVlQ2FwKClcblxuICAgIC8vIENoZWNrIGlmIHdlIHNob3VsZCBmbHVzaCBpbW1lZGlhdGVseSBkdWUgdG8gcXVldWUgZGVwdGhcbiAgICBpZiAodGhpcy5wZW5kaW5nUmVjb3Jkcy5sZW5ndGggPj0gRkxVU0hfUVVFVUVfREVQVEgpIHtcbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIEVycm9ycyBoYW5kbGVkIGluIGZsdXNoXG4gICAgICB9KVxuICAgIH0gZWxzZSB7XG4gICAgICAvLyBTY2hlZHVsZSBhIGZsdXNoIGlmIG5vdCBhbHJlYWR5IHNjaGVkdWxlZFxuICAgICAgdGhpcy5zY2hlZHVsZUZsdXNoKClcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2NoZWR1bGUgYSBmbHVzaCBhZnRlciB0aGUgaW50ZXJ2YWxcbiAgICovXG4gIHByaXZhdGUgc2NoZWR1bGVGbHVzaCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mbHVzaFRpbWVyKSB7XG4gICAgICByZXR1cm4gLy8gQWxyZWFkeSBzY2hlZHVsZWRcbiAgICB9XG5cbiAgICB0aGlzLmZsdXNoVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuZmx1c2hUaW1lciA9IG51bGxcbiAgICAgIHRoaXMuZmx1c2goKS5jYXRjaCgoKSA9PiB7XG4gICAgICAgIC8vIEVycm9ycyBoYW5kbGVkIGluIGZsdXNoXG4gICAgICB9KVxuICAgIH0sIEZMVVNIX0lOVEVSVkFMX01TKVxuICB9XG5cbiAgLyoqXG4gICAqIEZsdXNoIHBlbmRpbmcgcmVjb3JkcyB0byB0aGUgZW5kcG9pbnRcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgZmx1c2goKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgLy8gUHJldmVudCBjb25jdXJyZW50IGZsdXNoZXNcbiAgICBpZiAodGhpcy5mbHVzaERlZmVycmVkKSB7XG4gICAgICByZXR1cm4gdGhpcy5mbHVzaERlZmVycmVkLnByb21pc2VcbiAgICB9XG5cbiAgICAvLyBOb3RoaW5nIHRvIGZsdXNoXG4gICAgaWYgKCF0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgLy8gRW5zdXJlIHdlIGhhdmUgdmFsaWQgY3JlZGVudGlhbHNcbiAgICBjb25zdCBoYXNDcmVkZW50aWFscyA9IGF3YWl0IHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZW5zdXJlQ3JlZGVudGlhbHMoKVxuICAgIGlmICghaGFzQ3JlZGVudGlhbHMpIHtcbiAgICAgIGxvZy5kZWJ1ZyhcIkZhaWxlZCB0byBwdXNoIGxvZyByZWNvcmRzXCIsIFwiTm8gdmFsaWQgY3JlZGVudGlhbHMgYXZhaWxhYmxlXCIpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICBjb25zdCBkZWZlcnJlZCA9ICh0aGlzLmZsdXNoRGVmZXJyZWQgPSBuZXcgRGVmZXJyZWQ8dm9pZD4oKSlcblxuICAgIHRyeSB7XG4gICAgICAvLyBUYWtlIGFsbCBwZW5kaW5nIHJlY29yZHMgZm9yIHRoaXMgZmx1c2hcbiAgICAgIGNvbnN0IHJlY29yZHMgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLnNwbGljZSgwLCB0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aClcbiAgICAgIGNvbnN0IHBheWxvYWQgPSB7IHJlY29yZHM6IHJlY29yZHMubWFwKHJlY29yZCA9PiBKU09OLnN0cmluZ2lmeShyZWNvcmQpKSB9XG5cbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2godGhpcy5lbmRwb2ludFVybCwge1xuICAgICAgICBtZXRob2Q6IFwiUFVUXCIsXG4gICAgICAgIG1vZGU6IFwiY29yc1wiLFxuICAgICAgICBjcmVkZW50aWFsczogXCJpbmNsdWRlXCIsXG4gICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICBcIkNvbnRlbnQtVHlwZVwiOiBcImFwcGxpY2F0aW9uL2pzb25cIlxuICAgICAgICB9LFxuICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShwYXlsb2FkKVxuICAgICAgfSlcblxuICAgICAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgICAgICAvLyBSZS1xdWV1ZSByZWNvcmRzIG9uIGZhaWx1cmVcbiAgICAgICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy51bnNoaWZ0KC4uLnJlY29yZHMpXG4gICAgICAgIHRoaXMudHJpbVBlbmRpbmdSZWNvcmRzVG9RdWV1ZUNhcCgpXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgUHVzaCBmYWlsZWQgd2l0aCBzdGF0dXMgJHtyZXNwb25zZS5zdGF0dXN9YClcbiAgICAgIH1cblxuICAgICAgZGVmZXJyZWQucmVzb2x2ZSgpXG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cuZGVidWcoXCJGYWlsZWQgdG8gcHVzaCBsb2cgcmVjb3Jkc1wiLCBlcnIpXG4gICAgICBkZWZlcnJlZC5yZWplY3QoZXJyKVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmZsdXNoRGVmZXJyZWQgPSBudWxsXG5cbiAgICAgIC8vIElmIG1vcmUgcmVjb3JkcyBhY2N1bXVsYXRlZCBkdXJpbmcgZmx1c2gsIHNjaGVkdWxlIGFub3RoZXJcbiAgICAgIGlmICh0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgdGhpcy5zY2hlZHVsZUZsdXNoKClcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gZGVmZXJyZWQucHJvbWlzZVxuICB9XG5cbiAgLyoqXG4gICAqIEZvcmNlIGFuIGltbWVkaWF0ZSBmbHVzaFxuICAgKi9cbiAgYXN5bmMgZm9yY2VGbHVzaCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5mbHVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5mbHVzaFRpbWVyKVxuICAgICAgdGhpcy5mbHVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmZsdXNoKClcbiAgfVxuXG4gIC8qKlxuICAgKiBFbmZvcmNlIHRoZSBwZW5kaW5nIHF1ZXVlIGNhcCBieSBkcm9wcGluZyB0aGUgb2xkZXN0IHJlY29yZHMuXG4gICAqL1xuICBwcml2YXRlIHRyaW1QZW5kaW5nUmVjb3Jkc1RvUXVldWVDYXAoKTogdm9pZCB7XG4gICAgY29uc3QgcmVtb3ZlQ291bnQgPSB0aGlzLnBlbmRpbmdSZWNvcmRzLmxlbmd0aCAtIExPR19RVUVVRV9NQVhfUkVDT1JEU1xuXG4gICAgaWYgKHJlbW92ZUNvdW50ID4gMCkge1xuICAgICAgdGhpcy5wZW5kaW5nUmVjb3Jkcy5zcGxpY2UoMCwgcmVtb3ZlQ291bnQpXG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENsZWFuIHVwIHJlc291cmNlc1xuICAgKi9cbiAgZGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5mbHVzaFRpbWVyKSB7XG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5mbHVzaFRpbWVyKVxuICAgICAgdGhpcy5mbHVzaFRpbWVyID0gbnVsbFxuICAgIH1cblxuICAgIHRoaXMuY3JlZGVudGlhbE1hbmFnZXIuZGVzdHJveSgpXG5cbiAgICBpZiAodGhpcy5mbHVzaERlZmVycmVkICYmICF0aGlzLmZsdXNoRGVmZXJyZWQuaXNTZXR0bGVkKCkpIHtcbiAgICAgIHRoaXMuZmx1c2hEZWZlcnJlZC5yZWplY3QobmV3IEVycm9yKFwiQXBwZW5kZXIgZGVzdHJveWVkXCIpKVxuICAgIH1cblxuICAgIHRoaXMuZmx1c2hEZWZlcnJlZCA9IG51bGxcbiAgICB0aGlzLnBlbmRpbmdSZWNvcmRzID0gW11cbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBQdXNoTG9nUmVjb3Jkc0FwcGVuZGVyXG4iXX0=
|