Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@ngxs-contrib/emitter

Package Overview
Dependencies
Maintainers
3
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ngxs-contrib/emitter - npm Package Compare versions

Comparing version 0.0.6 to 0.0.7

5

bundles/ngxs-contrib-emitter.umd.js

@@ -214,2 +214,5 @@ (function (global, factory) {

get: function () {
if (PayloadEmitterFactory.injector === null) {
throw new Error("You've forgotten to import `NgxsEmitPluginModule`");
}
var /** @type {?} */ store$$1 = ((PayloadEmitterFactory.injector)).get(EmitStore);

@@ -278,2 +281,2 @@ return store$$1.emitter(emitter);

//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1jb250cmliLWVtaXR0ZXIudW1kLmpzLm1hcCIsInNvdXJjZXMiOlsibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvaW50ZXJuYWwvaW50ZXJuYWxzLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9lbWl0dGVyLnRzIixudWxsLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9hY3Rpb25zL2FjdGlvbnMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5zZXJ2aWNlLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU3RhdGljIG1ldGFkYXRhIGZvciB0aGUgZW1pdHRlciBmdW5jdGlvblxuICpcbiAqIEBwcm9wZXJ0eSB0eXBlIC0gQWN0aW9uIHR5cGUgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGFjdGlvbiAtIEN1c3RvbSBhY3Rpb24gdG8gZGlzcGF0Y2ggKG9wdGlvbmFsKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJNZXRhRGF0YTxUIGV4dGVuZHMgRnVuY3Rpb24gPSBhbnk+IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBUeXBlPFQ+O1xufVxuXG4vKipcbiAqIFBsYWluIG9iamVjdCB0aGF0IGNvbnRhaW5zIGBlbWl0YCBmdW5jdGlvbiB0aGF0IGRpc3BhdGNoZXMgcGF5bG9hZFxuICpcbiAqIEBwcm9wZXJ0eSBlbWl0IC0gRnVuY3Rpb24gdGhhdCBkaXNwYXRjaGVzIHBheWxvYWQgdW5kZXIgdGhlIGhvb2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWl0dGFibGU8VCA9IGFueSwgVSA9IGFueT4ge1xuICAgIGVtaXQocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+O1xufVxuXG5leHBvcnQgY29uc3QgTUVUQV9LRVkgPSAnTkdYU19NRVRBJztcblxuLyoqXG4gKiBAY29uc3QgLSBUaGlzIGNvbnN0YW50IGlzIGEga2V5IGZvciBkZWZpbmluZyBzdGF0aWMgbWV0YWRhdGEgdXNpbmcgYEBFbWl0dGVyYFxuICovXG5leHBvcnQgY29uc3QgRU1JVFRFUl9NRVRBX0tFWSA9ICdOR1hTX0VNSVRURVJfTUVUQSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdG9yZU1ldGFkYXRhKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAoIXRhcmdldC5oYXNPd25Qcm9wZXJ0eShNRVRBX0tFWSkpIHtcbiAgICAgICAgY29uc3QgZGVmYXVsdE1ldGFkYXRhID0ge1xuICAgICAgICAgICAgbmFtZTogbnVsbCxcbiAgICAgICAgICAgIGFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHt9LFxuICAgICAgICAgICAgcGF0aDogbnVsbCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIGluc3RhbmNlOiBudWxsXG4gICAgICAgIH07XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIE1FVEFfS0VZLCB7IHZhbHVlOiBkZWZhdWx0TWV0YWRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBnZXRTdG9yZU1ldGFkYXRhKHRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIGdldFN0b3JlTWV0YWRhdGEodGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIHJldHVybiB0YXJnZXRbTUVUQV9LRVldO1xufVxuIiwiaW1wb3J0IHsgZW5zdXJlU3RvcmVNZXRhZGF0YSwgRW1pdHRlck1ldGFEYXRhLCBFTUlUVEVSX01FVEFfS0VZIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhbiBlbWl0dGVyIGluZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjb25maWd1cmluZyBzdGF0aWMgbWV0YWRhdGFcbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmb3IgZGVjb3JhdGluZyBtZXRob2RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEVtaXR0ZXIob3B0aW9ucz86IFBhcnRpYWw8RW1pdHRlck1ldGFEYXRhPik6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIDxUPih0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+KSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgdGFyZ2V0W2tleV0gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYE9ubHkgc3RhdGljIGZ1bmN0aW9ucyBjYW4gYmUgZGVjb3JhdGVkIHdpdGggQEVtaXR0ZXIoKSBkZWNvcmF0b3JgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3ltYm9sJykge1xuICAgICAgICAgICAga2V5ID0ga2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtZXRhID0gZW5zdXJlU3RvcmVNZXRhZGF0YSh0YXJnZXQpO1xuICAgICAgICBjb25zdCBhY3Rpb246IGFueSB8IHVuZGVmaW5lZCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb247XG5cbiAgICAgICAgaWYgKGFjdGlvbiAmJiB0eXBlb2YgYWN0aW9uLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbiB0eXBlIHNob3VsZCBiZSBkZWZpbmVkIGFzIGEgc3RhdGljIHByb3BlcnR5IGB0eXBlYCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdHlwZTogc3RyaW5nID0gYWN0aW9uID8gYWN0aW9uLnR5cGUgOiAoKG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlKSB8fCBgJHt0YXJnZXQubmFtZX0uJHtrZXl9YCk7XG5cbiAgICAgICAgaWYgKG1ldGEuYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgZGVjb3JhdGVkIHdpdGggc3VjaCB0eXBlIFxcYCR7dHlwZX1cXGAgYWxyZWFkeSBleGlzdHNgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFt7XG4gICAgICAgICAgICBmbjogYCR7a2V5fWAsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgfV07XG5cbiAgICAgICAgZGVzY3JpcHRvci52YWx1ZVtFTUlUVEVSX01FVEFfS0VZXSA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgfTtcblxuICAgICAgICB0YXJnZXQucHJvdG90eXBlW2tleV0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXRba2V5XS5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cbiIsIi8qISAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Db3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlXHJcbnRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlXHJcbkxpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcblxyXG5USElTIENPREUgSVMgUFJPVklERUQgT04gQU4gKkFTIElTKiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZXHJcbktJTkQsIEVJVEhFUiBFWFBSRVNTIE9SIElNUExJRUQsIElOQ0xVRElORyBXSVRIT1VUIExJTUlUQVRJT04gQU5ZIElNUExJRURcclxuV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIFRJVExFLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSxcclxuTUVSQ0hBTlRBQkxJVFkgT1IgTk9OLUlORlJJTkdFTUVOVC5cclxuXHJcblNlZSB0aGUgQXBhY2hlIFZlcnNpb24gMi4wIExpY2Vuc2UgZm9yIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xyXG5hbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbi8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlICovXHJcblxyXG52YXIgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fFxyXG4gICAgKHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24gKGQsIGIpIHsgZC5fX3Byb3RvX18gPSBiOyB9KSB8fFxyXG4gICAgZnVuY3Rpb24gKGQsIGIpIHsgZm9yICh2YXIgcCBpbiBiKSBpZiAoYi5oYXNPd25Qcm9wZXJ0eShwKSkgZFtwXSA9IGJbcF07IH07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19leHRlbmRzKGQsIGIpIHtcclxuICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7XHJcbiAgICBmdW5jdGlvbiBfXygpIHsgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7IH1cclxuICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTtcclxufVxyXG5cclxuZXhwb3J0IHZhciBfX2Fzc2lnbiA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gX19hc3NpZ24odCkge1xyXG4gICAgZm9yICh2YXIgcywgaSA9IDEsIG4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XHJcbiAgICAgICAgcyA9IGFyZ3VtZW50c1tpXTtcclxuICAgICAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkpIHRbcF0gPSBzW3BdO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3Jlc3QocywgZSkge1xyXG4gICAgdmFyIHQgPSB7fTtcclxuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxyXG4gICAgICAgIHRbcF0gPSBzW3BdO1xyXG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxyXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIGlmIChlLmluZGV4T2YocFtpXSkgPCAwKVxyXG4gICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcclxuICAgIHJldHVybiB0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYykge1xyXG4gICAgdmFyIGMgPSBhcmd1bWVudHMubGVuZ3RoLCByID0gYyA8IDMgPyB0YXJnZXQgOiBkZXNjID09PSBudWxsID8gZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpIDogZGVzYywgZDtcclxuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XHJcbiAgICBlbHNlIGZvciAodmFyIGkgPSBkZWNvcmF0b3JzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSBpZiAoZCA9IGRlY29yYXRvcnNbaV0pIHIgPSAoYyA8IDMgPyBkKHIpIDogYyA+IDMgPyBkKHRhcmdldCwga2V5LCByKSA6IGQodGFyZ2V0LCBrZXkpKSB8fCByO1xyXG4gICAgcmV0dXJuIGMgPiAzICYmIHIgJiYgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCByKSwgcjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fcGFyYW0ocGFyYW1JbmRleCwgZGVjb3JhdG9yKSB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7IGRlY29yYXRvcih0YXJnZXQsIGtleSwgcGFyYW1JbmRleCk7IH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fbWV0YWRhdGEobWV0YWRhdGFLZXksIG1ldGFkYXRhVmFsdWUpIHtcclxuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShtZXRhZGF0YUtleSwgbWV0YWRhdGFWYWx1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2F3YWl0ZXIodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XHJcbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHJlc3VsdC52YWx1ZSk7IH0pLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZ2VuZXJhdG9yKHRoaXNBcmcsIGJvZHkpIHtcclxuICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7IGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsgcmV0dXJuIHRbMV07IH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7XHJcbiAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgXCJ0aHJvd1wiOiB2ZXJiKDEpLCBcInJldHVyblwiOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSwgZztcclxuICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxyXG4gICAgZnVuY3Rpb24gc3RlcChvcCkge1xyXG4gICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLlwiKTtcclxuICAgICAgICB3aGlsZSAoXykgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0geVtvcFswXSAmIDIgPyBcInJldHVyblwiIDogb3BbMF0gPyBcInRocm93XCIgOiBcIm5leHRcIl0pICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0O1xyXG4gICAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gWzAsIHQudmFsdWVdO1xyXG4gICAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7XHJcbiAgICAgICAgICAgICAgICBjYXNlIDA6IGNhc2UgMTogdCA9IG9wOyBicmVhaztcclxuICAgICAgICAgICAgICAgIGNhc2UgNDogXy5sYWJlbCsrOyByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07XHJcbiAgICAgICAgICAgICAgICBjYXNlIDU6IF8ubGFiZWwrKzsgeSA9IG9wWzFdOyBvcCA9IFswXTsgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICBjYXNlIDc6IG9wID0gXy5vcHMucG9wKCk7IF8udHJ5cy5wb3AoKTsgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7IF8gPSAwOyBjb250aW51ZTsgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgKG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSkgeyBfLmxhYmVsID0gb3BbMV07IGJyZWFrOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7IF8ubGFiZWwgPSB0WzFdOyB0ID0gb3A7IGJyZWFrOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsgXy5sYWJlbCA9IHRbMl07IF8ub3BzLnB1c2gob3ApOyBicmVhazsgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTtcclxuICAgICAgICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7IGNvbnRpbnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHsgb3AgPSBbNiwgZV07IHkgPSAwOyB9IGZpbmFsbHkgeyBmID0gdCA9IDA7IH1cclxuICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZXhwb3J0U3RhcihtLCBleHBvcnRzKSB7XHJcbiAgICBmb3IgKHZhciBwIGluIG0pIGlmICghZXhwb3J0cy5oYXNPd25Qcm9wZXJ0eShwKSkgZXhwb3J0c1twXSA9IG1bcF07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3ZhbHVlcyhvKSB7XHJcbiAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl0sIGkgPSAwO1xyXG4gICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIG5leHQ6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDtcclxuICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9O1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3JlYWQobywgbikge1xyXG4gICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdO1xyXG4gICAgaWYgKCFtKSByZXR1cm4gbztcclxuICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTtcclxuICAgIH1cclxuICAgIGNhdGNoIChlcnJvcikgeyBlID0geyBlcnJvcjogZXJyb3IgfTsgfVxyXG4gICAgZmluYWxseSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbXCJyZXR1cm5cIl0pKSBtLmNhbGwoaSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZpbmFsbHkgeyBpZiAoZSkgdGhyb3cgZS5lcnJvcjsgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGFyO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWQoKSB7XHJcbiAgICBmb3IgKHZhciBhciA9IFtdLCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKylcclxuICAgICAgICBhciA9IGFyLmNvbmNhdChfX3JlYWQoYXJndW1lbnRzW2ldKSk7XHJcbiAgICByZXR1cm4gYXI7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2F3YWl0KHYpIHtcclxuICAgIHJldHVybiB0aGlzIGluc3RhbmNlb2YgX19hd2FpdCA/ICh0aGlzLnYgPSB2LCB0aGlzKSA6IG5ldyBfX2F3YWl0KHYpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY0dlbmVyYXRvcih0aGlzQXJnLCBfYXJndW1lbnRzLCBnZW5lcmF0b3IpIHtcclxuICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJTeW1ib2wuYXN5bmNJdGVyYXRvciBpcyBub3QgZGVmaW5lZC5cIik7XHJcbiAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdO1xyXG4gICAgcmV0dXJuIGkgPSB7fSwgdmVyYihcIm5leHRcIiksIHZlcmIoXCJ0aHJvd1wiKSwgdmVyYihcInJldHVyblwiKSwgaVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9LCBpO1xyXG4gICAgZnVuY3Rpb24gdmVyYihuKSB7IGlmIChnW25dKSBpW25dID0gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChhLCBiKSB7IHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7IH0pOyB9OyB9XHJcbiAgICBmdW5jdGlvbiByZXN1bWUobiwgdikgeyB0cnkgeyBzdGVwKGdbbl0odikpOyB9IGNhdGNoIChlKSB7IHNldHRsZShxWzBdWzNdLCBlKTsgfSB9XHJcbiAgICBmdW5jdGlvbiBzdGVwKHIpIHsgci52YWx1ZSBpbnN0YW5jZW9mIF9fYXdhaXQgPyBQcm9taXNlLnJlc29sdmUoci52YWx1ZS52KS50aGVuKGZ1bGZpbGwsIHJlamVjdCkgOiBzZXR0bGUocVswXVsyXSwgcik7ICB9XHJcbiAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7IHJlc3VtZShcIm5leHRcIiwgdmFsdWUpOyB9XHJcbiAgICBmdW5jdGlvbiByZWplY3QodmFsdWUpIHsgcmVzdW1lKFwidGhyb3dcIiwgdmFsdWUpOyB9XHJcbiAgICBmdW5jdGlvbiBzZXR0bGUoZiwgdikgeyBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOyB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jRGVsZWdhdG9yKG8pIHtcclxuICAgIHZhciBpLCBwO1xyXG4gICAgcmV0dXJuIGkgPSB7fSwgdmVyYihcIm5leHRcIiksIHZlcmIoXCJ0aHJvd1wiLCBmdW5jdGlvbiAoZSkgeyB0aHJvdyBlOyB9KSwgdmVyYihcInJldHVyblwiKSwgaVtTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfSwgaTtcclxuICAgIGZ1bmN0aW9uIHZlcmIobiwgZikgeyBpZiAob1tuXSkgaVtuXSA9IGZ1bmN0aW9uICh2KSB7IHJldHVybiAocCA9ICFwKSA/IHsgdmFsdWU6IF9fYXdhaXQob1tuXSh2KSksIGRvbmU6IG4gPT09IFwicmV0dXJuXCIgfSA6IGYgPyBmKHYpIDogdjsgfTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY1ZhbHVlcyhvKSB7XHJcbiAgICBpZiAoIVN5bWJvbC5hc3luY0l0ZXJhdG9yKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuXCIpO1xyXG4gICAgdmFyIG0gPSBvW1N5bWJvbC5hc3luY0l0ZXJhdG9yXTtcclxuICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogdHlwZW9mIF9fdmFsdWVzID09PSBcImZ1bmN0aW9uXCIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19tYWtlVGVtcGxhdGVPYmplY3QoY29va2VkLCByYXcpIHtcclxuICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvb2tlZCwgXCJyYXdcIiwgeyB2YWx1ZTogcmF3IH0pOyB9IGVsc2UgeyBjb29rZWQucmF3ID0gcmF3OyB9XHJcbiAgICByZXR1cm4gY29va2VkO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9faW1wb3J0U3Rhcihtb2QpIHtcclxuICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7XHJcbiAgICB2YXIgcmVzdWx0ID0ge307XHJcbiAgICBpZiAobW9kICE9IG51bGwpIGZvciAodmFyIGsgaW4gbW9kKSBpZiAoT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwobW9kLCBrKSkgcmVzdWx0W2tdID0gbW9kW2tdO1xyXG4gICAgcmVzdWx0LmRlZmF1bHQgPSBtb2Q7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19pbXBvcnREZWZhdWx0KG1vZCkge1xyXG4gICAgcmV0dXJuIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpID8gbW9kIDogeyBkZWZhdWx0OiBtb2QgfTtcclxufVxyXG4iLCIvKipcbiAqIFRoaXMgY2xhc3MgaXMgdXNlZCBhcyBhIGRlZmF1bHQgYWN0aW9uIHdoZW4gdGhlIHVzZXIgZG9lc24ndCBwYXNzIGFueSBjdXN0b20gYWN0aW9uIGFzIGFuIGFyZ3VtZW50XG4gKi9cbmV4cG9ydCBjbGFzcyBFbWl0dGVyQWN0aW9uPFQgPSBhbnk+IHtcbiAgICAvKipcbiAgICAgKiBBY3Rpb24gdHlwZVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgdHlwZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIEVtaXR0ZXJBY3Rpb24gaW5zdGFuY2VcbiAgICAgKlxuICAgICAqIEBwYXJhbSBwYXlsb2FkIC0gRGF0YSB0byBkaXNwYXRjaFxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkPzogVCkge31cbn1cbiIsImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEVNSVRURVJfTUVUQV9LRVksIEVtaXR0YWJsZSwgRW1pdHRlck1ldGFEYXRhIH0gZnJvbSAnLi9jb3JlL2ludGVybmFsL2ludGVybmFscyc7XG5pbXBvcnQgeyBFbWl0dGVyQWN0aW9uIH0gZnJvbSAnLi9jb3JlL2FjdGlvbnMvYWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbWl0U3RvcmUgZXh0ZW5kcyBTdG9yZSB7XG4gICAgLyoqXG4gICAgICogQHBhcmFtIGVtaXR0ZXIgLSBSZWZlcmVuY2UgdG8gdGhlIHN0YXRpYyBmdW5jdGlvbiBmcm9tIHRoZSBzdG9yZVxuICAgICAqIEByZXR1cm5zIC0gQSBwbGFpbiBvYmplY3Qgd2l0aCBhbiBgZW1pdGAgZnVuY3Rpb24gZm9yIGNhbGxpbmcgZW1pdHRlclxuICAgICAqL1xuICAgIHB1YmxpYyBlbWl0dGVyPFQgPSBhbnksIFUgPSBhbnk+KGVtaXR0ZXI6IEZ1bmN0aW9uKTogRW1pdHRhYmxlPFQsIFU+IHtcbiAgICAgICAgY29uc3QgZW1pdHRlckV2ZW50OiBFbWl0dGVyTWV0YURhdGEgPSBlbWl0dGVyW0VNSVRURVJfTUVUQV9LRVldO1xuXG4gICAgICAgIGlmICghZW1pdHRlckV2ZW50KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VtaXR0ZXIgbWV0aG9kcyBzaG91bGQgYmUgZGVjb3JhdGVkIHVzaW5nIEBFbWl0dGVyKCkgZGVjb3JhdG9yJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZW1pdDogKHBheWxvYWQ/OiBUKTogT2JzZXJ2YWJsZTxVPiA9PiB7XG4gICAgICAgICAgICAgICAgRW1pdHRlckFjdGlvbi50eXBlID0gZW1pdHRlckV2ZW50LnR5cGU7XG4gICAgICAgICAgICAgICAgY29uc3QgQWN0aW9uOiBhbnkgfCB0eXBlb2YgRW1pdHRlckFjdGlvbiA9IGVtaXR0ZXJFdmVudC5hY3Rpb24gPyBlbWl0dGVyRXZlbnQuYWN0aW9uIDogRW1pdHRlckFjdGlvbjtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kaXNwYXRjaChuZXcgQWN0aW9uKHBheWxvYWQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG59XG4iLCJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbWl0U3RvcmUgfSBmcm9tICcuLi8uLi9lbWl0LnNlcnZpY2UnO1xuXG4vKipcbiAqIEFsbG93cyB0aGUgYEBQYXlsb2FkRW1pdHRlcigpYCBkZWNvcmF0b3IgdG8gZ2V0IGFjY2VzcyB0byB0aGUgREkgc3RvcmVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSB7XG4gICAgLyoqXG4gICAgICogSW5qZWN0b3IgZm9yIGFjY2Vzc2luZyBESVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaW5qZWN0b3I6IEluamVjdG9yIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIGluamVjdG9yIC0gUm9vdCBpbmplY3RvclxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB9XG59XG5cbi8qKlxuICogRGVjb3JhdGVzIGEgcHJvcGVydHkgYW5kIGRlZmluZXMgbmV3IGdldHRlclxuICpcbiAqIEBwYXJhbSBlbWl0dGVyIC0gUmVmZXJlbmNlIHRvIHRoZSBzdGF0aWMgZnVuY3Rpb25cbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmdW5jdGlvbiBmb3IgZGVjb3JhdGluZyBwcm9wZXJ0aWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBQYXlsb2FkRW1pdHRlcihlbWl0dGVyOiBGdW5jdGlvbik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgICByZXR1cm4gKHRhcmdldDogT2JqZWN0LCBrZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHtcbiAgICAgICAgICAgIGdldDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0b3JlID0gUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yIS5nZXQ8RW1pdFN0b3JlPihFbWl0U3RvcmUpO1xuICAgICAgICAgICAgICAgIHJldHVybiBzdG9yZS5lbWl0dGVyKGVtaXR0ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9O1xufVxuIiwiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IH0gZnJvbSAnLi9jb3JlL2RlY29yYXRvcnMvcGF5bG9hZC1lbWl0dGVyJztcbmltcG9ydCB7IEVtaXRTdG9yZSB9IGZyb20gJy4vZW1pdC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LFxuICAgICAgICBFbWl0U3RvcmVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5neHNFbWl0UGx1Z2luTW9kdWxlIHtcbiAgICBjb25zdHJ1Y3RvcihwYXlsb2FkRW1pdHRlckZhY3Rvcnk6IFBheWxvYWRFbWl0dGVyRmFjdG9yeSkge31cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIC0gQSB3cmFwcGVyIGFyb3VuZCBgTmdNb2R1bGVgXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmd4c0VtaXRQbHVnaW5Nb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOZ3hzRW1pdFBsdWdpbk1vZHVsZVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6WyJ0c2xpYl8xLl9fZXh0ZW5kcyIsIkluamVjdGFibGUiLCJTdG9yZSIsIkluamVjdG9yIiwic3RvcmUiLCJOZ01vZHVsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztJQXdCTyxxQkFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDOzs7O0FBS3BDLElBQU8scUJBQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7Ozs7O0FBRXBELGlDQUFvQyxNQUFnQjtRQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNsQyxxQkFBTSxlQUFlLEdBQUc7Z0JBQ3BCLElBQUksRUFBRSxJQUFJO2dCQUNWLE9BQU8sRUFBRSxFQUFFO2dCQUNYLFFBQVEsRUFBRSxFQUFFO2dCQUNaLElBQUksRUFBRSxJQUFJO2dCQUNWLFFBQVEsRUFBRSxFQUFFO2dCQUNaLFFBQVEsRUFBRSxJQUFJO2FBQ2pCLENBQUM7WUFDRixNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztTQUN2RTtRQUNELE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDbkM7Ozs7O0lBRUQsMEJBQTBCLE1BQWdCO1FBQ3RDLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0tBQzNCOzs7Ozs7QUNoREQ7Ozs7OztBQVFBLHFCQUF3QixPQUFrQztRQUN0RCxPQUFPLFVBQUksTUFBVyxFQUFFLEdBQW9CLEVBQUUsVUFBc0M7WUFDaEYsSUFBSSxPQUFPLFVBQVUsQ0FBQyxLQUFLLEtBQUssVUFBVSxJQUFJLE9BQU8sTUFBTSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFVB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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1jb250cmliLWVtaXR0ZXIudW1kLmpzLm1hcCIsInNvdXJjZXMiOlsibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvaW50ZXJuYWwvaW50ZXJuYWxzLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9lbWl0dGVyLnRzIixudWxsLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9hY3Rpb25zL2FjdGlvbnMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5zZXJ2aWNlLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU3RhdGljIG1ldGFkYXRhIGZvciB0aGUgZW1pdHRlciBmdW5jdGlvblxuICpcbiAqIEBwcm9wZXJ0eSB0eXBlIC0gQWN0aW9uIHR5cGUgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGFjdGlvbiAtIEN1c3RvbSBhY3Rpb24gdG8gZGlzcGF0Y2ggKG9wdGlvbmFsKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJNZXRhRGF0YTxUIGV4dGVuZHMgRnVuY3Rpb24gPSBhbnk+IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBUeXBlPFQ+O1xufVxuXG4vKipcbiAqIFBsYWluIG9iamVjdCB0aGF0IGNvbnRhaW5zIGBlbWl0YCBmdW5jdGlvbiB0aGF0IGRpc3BhdGNoZXMgcGF5bG9hZFxuICpcbiAqIEBwcm9wZXJ0eSBlbWl0IC0gRnVuY3Rpb24gdGhhdCBkaXNwYXRjaGVzIHBheWxvYWQgdW5kZXIgdGhlIGhvb2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWl0dGFibGU8VCA9IGFueSwgVSA9IGFueT4ge1xuICAgIGVtaXQocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+O1xufVxuXG5leHBvcnQgY29uc3QgTUVUQV9LRVkgPSAnTkdYU19NRVRBJztcblxuLyoqXG4gKiBAY29uc3QgLSBUaGlzIGNvbnN0YW50IGlzIGEga2V5IGZvciBkZWZpbmluZyBzdGF0aWMgbWV0YWRhdGEgdXNpbmcgYEBFbWl0dGVyYFxuICovXG5leHBvcnQgY29uc3QgRU1JVFRFUl9NRVRBX0tFWSA9ICdOR1hTX0VNSVRURVJfTUVUQSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdG9yZU1ldGFkYXRhKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAoIXRhcmdldC5oYXNPd25Qcm9wZXJ0eShNRVRBX0tFWSkpIHtcbiAgICAgICAgY29uc3QgZGVmYXVsdE1ldGFkYXRhID0ge1xuICAgICAgICAgICAgbmFtZTogbnVsbCxcbiAgICAgICAgICAgIGFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHt9LFxuICAgICAgICAgICAgcGF0aDogbnVsbCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIGluc3RhbmNlOiBudWxsXG4gICAgICAgIH07XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIE1FVEFfS0VZLCB7IHZhbHVlOiBkZWZhdWx0TWV0YWRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBnZXRTdG9yZU1ldGFkYXRhKHRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIGdldFN0b3JlTWV0YWRhdGEodGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIHJldHVybiB0YXJnZXRbTUVUQV9LRVldO1xufVxuIiwiaW1wb3J0IHsgZW5zdXJlU3RvcmVNZXRhZGF0YSwgRW1pdHRlck1ldGFEYXRhLCBFTUlUVEVSX01FVEFfS0VZIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhbiBlbWl0dGVyIGluZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjb25maWd1cmluZyBzdGF0aWMgbWV0YWRhdGFcbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmb3IgZGVjb3JhdGluZyBtZXRob2RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEVtaXR0ZXIob3B0aW9ucz86IFBhcnRpYWw8RW1pdHRlck1ldGFEYXRhPik6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIDxUPih0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+KSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgdGFyZ2V0W2tleV0gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYE9ubHkgc3RhdGljIGZ1bmN0aW9ucyBjYW4gYmUgZGVjb3JhdGVkIHdpdGggQEVtaXR0ZXIoKSBkZWNvcmF0b3JgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3ltYm9sJykge1xuICAgICAgICAgICAga2V5ID0ga2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtZXRhID0gZW5zdXJlU3RvcmVNZXRhZGF0YSh0YXJnZXQpO1xuICAgICAgICBjb25zdCBhY3Rpb246IGFueSB8IHVuZGVmaW5lZCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb247XG5cbiAgICAgICAgaWYgKGFjdGlvbiAmJiB0eXBlb2YgYWN0aW9uLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbiB0eXBlIHNob3VsZCBiZSBkZWZpbmVkIGFzIGEgc3RhdGljIHByb3BlcnR5IGB0eXBlYCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdHlwZTogc3RyaW5nID0gYWN0aW9uID8gYWN0aW9uLnR5cGUgOiAoKG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlKSB8fCBgJHt0YXJnZXQubmFtZX0uJHtrZXl9YCk7XG5cbiAgICAgICAgaWYgKG1ldGEuYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgZGVjb3JhdGVkIHdpdGggc3VjaCB0eXBlIFxcYCR7dHlwZX1cXGAgYWxyZWFkeSBleGlzdHNgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFt7XG4gICAgICAgICAgICBmbjogYCR7a2V5fWAsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgfV07XG5cbiAgICAgICAgZGVzY3JpcHRvci52YWx1ZVtFTUlUVEVSX01FVEFfS0VZXSA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgfTtcblxuICAgICAgICB0YXJnZXQucHJvdG90eXBlW2tleV0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXRba2V5XS5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cbiIsIi8qISAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxyXG5Db3B5cmlnaHQgKGMpIE1pY3Jvc29mdCBDb3Jwb3JhdGlvbi4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTsgeW91IG1heSBub3QgdXNlXHJcbnRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlXHJcbkxpY2Vuc2UgYXQgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXHJcblxyXG5USElTIENPREUgSVMgUFJPVklERUQgT04gQU4gKkFTIElTKiBCQVNJUywgV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZXHJcbktJTkQsIEVJVEhFUiBFWFBSRVNTIE9SIElNUExJRUQsIElOQ0xVRElORyBXSVRIT1VUIExJTUlUQVRJT04gQU5ZIElNUExJRURcclxuV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIFRJVExFLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSxcclxuTUVSQ0hBTlRBQkxJVFkgT1IgTk9OLUlORlJJTkdFTUVOVC5cclxuXHJcblNlZSB0aGUgQXBhY2hlIFZlcnNpb24gMi4wIExpY2Vuc2UgZm9yIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9uc1xyXG5hbmQgbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXHJcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICovXHJcbi8qIGdsb2JhbCBSZWZsZWN0LCBQcm9taXNlICovXHJcblxyXG52YXIgZXh0ZW5kU3RhdGljcyA9IE9iamVjdC5zZXRQcm90b3R5cGVPZiB8fFxyXG4gICAgKHsgX19wcm90b19fOiBbXSB9IGluc3RhbmNlb2YgQXJyYXkgJiYgZnVuY3Rpb24gKGQsIGIpIHsgZC5fX3Byb3RvX18gPSBiOyB9KSB8fFxyXG4gICAgZnVuY3Rpb24gKGQsIGIpIHsgZm9yICh2YXIgcCBpbiBiKSBpZiAoYi5oYXNPd25Qcm9wZXJ0eShwKSkgZFtwXSA9IGJbcF07IH07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19leHRlbmRzKGQsIGIpIHtcclxuICAgIGV4dGVuZFN0YXRpY3MoZCwgYik7XHJcbiAgICBmdW5jdGlvbiBfXygpIHsgdGhpcy5jb25zdHJ1Y3RvciA9IGQ7IH1cclxuICAgIGQucHJvdG90eXBlID0gYiA9PT0gbnVsbCA/IE9iamVjdC5jcmVhdGUoYikgOiAoX18ucHJvdG90eXBlID0gYi5wcm90b3R5cGUsIG5ldyBfXygpKTtcclxufVxyXG5cclxuZXhwb3J0IHZhciBfX2Fzc2lnbiA9IE9iamVjdC5hc3NpZ24gfHwgZnVuY3Rpb24gX19hc3NpZ24odCkge1xyXG4gICAgZm9yICh2YXIgcywgaSA9IDEsIG4gPSBhcmd1bWVudHMubGVuZ3RoOyBpIDwgbjsgaSsrKSB7XHJcbiAgICAgICAgcyA9IGFyZ3VtZW50c1tpXTtcclxuICAgICAgICBmb3IgKHZhciBwIGluIHMpIGlmIChPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwocywgcCkpIHRbcF0gPSBzW3BdO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3Jlc3QocywgZSkge1xyXG4gICAgdmFyIHQgPSB7fTtcclxuICAgIGZvciAodmFyIHAgaW4gcykgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChzLCBwKSAmJiBlLmluZGV4T2YocCkgPCAwKVxyXG4gICAgICAgIHRbcF0gPSBzW3BdO1xyXG4gICAgaWYgKHMgIT0gbnVsbCAmJiB0eXBlb2YgT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyA9PT0gXCJmdW5jdGlvblwiKVxyXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBwID0gT2JqZWN0LmdldE93blByb3BlcnR5U3ltYm9scyhzKTsgaSA8IHAubGVuZ3RoOyBpKyspIGlmIChlLmluZGV4T2YocFtpXSkgPCAwKVxyXG4gICAgICAgICAgICB0W3BbaV1dID0gc1twW2ldXTtcclxuICAgIHJldHVybiB0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYykge1xyXG4gICAgdmFyIGMgPSBhcmd1bWVudHMubGVuZ3RoLCByID0gYyA8IDMgPyB0YXJnZXQgOiBkZXNjID09PSBudWxsID8gZGVzYyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IodGFyZ2V0LCBrZXkpIDogZGVzYywgZDtcclxuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5kZWNvcmF0ZSA9PT0gXCJmdW5jdGlvblwiKSByID0gUmVmbGVjdC5kZWNvcmF0ZShkZWNvcmF0b3JzLCB0YXJnZXQsIGtleSwgZGVzYyk7XHJcbiAgICBlbHNlIGZvciAodmFyIGkgPSBkZWNvcmF0b3JzLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSBpZiAoZCA9IGRlY29yYXRvcnNbaV0pIHIgPSAoYyA8IDMgPyBkKHIpIDogYyA+IDMgPyBkKHRhcmdldCwga2V5LCByKSA6IGQodGFyZ2V0LCBrZXkpKSB8fCByO1xyXG4gICAgcmV0dXJuIGMgPiAzICYmIHIgJiYgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCByKSwgcjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fcGFyYW0ocGFyYW1JbmRleCwgZGVjb3JhdG9yKSB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb24gKHRhcmdldCwga2V5KSB7IGRlY29yYXRvcih0YXJnZXQsIGtleSwgcGFyYW1JbmRleCk7IH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fbWV0YWRhdGEobWV0YWRhdGFLZXksIG1ldGFkYXRhVmFsdWUpIHtcclxuICAgIGlmICh0eXBlb2YgUmVmbGVjdCA9PT0gXCJvYmplY3RcIiAmJiB0eXBlb2YgUmVmbGVjdC5tZXRhZGF0YSA9PT0gXCJmdW5jdGlvblwiKSByZXR1cm4gUmVmbGVjdC5tZXRhZGF0YShtZXRhZGF0YUtleSwgbWV0YWRhdGFWYWx1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2F3YWl0ZXIodGhpc0FyZywgX2FyZ3VtZW50cywgUCwgZ2VuZXJhdG9yKSB7XHJcbiAgICByZXR1cm4gbmV3IChQIHx8IChQID0gUHJvbWlzZSkpKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcclxuICAgICAgICBmdW5jdGlvbiBmdWxmaWxsZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3IubmV4dCh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gcmVqZWN0ZWQodmFsdWUpIHsgdHJ5IHsgc3RlcChnZW5lcmF0b3JbXCJ0aHJvd1wiXSh2YWx1ZSkpOyB9IGNhdGNoIChlKSB7IHJlamVjdChlKTsgfSB9XHJcbiAgICAgICAgZnVuY3Rpb24gc3RlcChyZXN1bHQpIHsgcmVzdWx0LmRvbmUgPyByZXNvbHZlKHJlc3VsdC52YWx1ZSkgOiBuZXcgUChmdW5jdGlvbiAocmVzb2x2ZSkgeyByZXNvbHZlKHJlc3VsdC52YWx1ZSk7IH0pLnRoZW4oZnVsZmlsbGVkLCByZWplY3RlZCk7IH1cclxuICAgICAgICBzdGVwKChnZW5lcmF0b3IgPSBnZW5lcmF0b3IuYXBwbHkodGhpc0FyZywgX2FyZ3VtZW50cyB8fCBbXSkpLm5leHQoKSk7XHJcbiAgICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZ2VuZXJhdG9yKHRoaXNBcmcsIGJvZHkpIHtcclxuICAgIHZhciBfID0geyBsYWJlbDogMCwgc2VudDogZnVuY3Rpb24oKSB7IGlmICh0WzBdICYgMSkgdGhyb3cgdFsxXTsgcmV0dXJuIHRbMV07IH0sIHRyeXM6IFtdLCBvcHM6IFtdIH0sIGYsIHksIHQsIGc7XHJcbiAgICByZXR1cm4gZyA9IHsgbmV4dDogdmVyYigwKSwgXCJ0aHJvd1wiOiB2ZXJiKDEpLCBcInJldHVyblwiOiB2ZXJiKDIpIH0sIHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiAoZ1tTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24oKSB7IHJldHVybiB0aGlzOyB9KSwgZztcclxuICAgIGZ1bmN0aW9uIHZlcmIobikgeyByZXR1cm4gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIHN0ZXAoW24sIHZdKTsgfTsgfVxyXG4gICAgZnVuY3Rpb24gc3RlcChvcCkge1xyXG4gICAgICAgIGlmIChmKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiR2VuZXJhdG9yIGlzIGFscmVhZHkgZXhlY3V0aW5nLlwiKTtcclxuICAgICAgICB3aGlsZSAoXykgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKGYgPSAxLCB5ICYmICh0ID0geVtvcFswXSAmIDIgPyBcInJldHVyblwiIDogb3BbMF0gPyBcInRocm93XCIgOiBcIm5leHRcIl0pICYmICEodCA9IHQuY2FsbCh5LCBvcFsxXSkpLmRvbmUpIHJldHVybiB0O1xyXG4gICAgICAgICAgICBpZiAoeSA9IDAsIHQpIG9wID0gWzAsIHQudmFsdWVdO1xyXG4gICAgICAgICAgICBzd2l0Y2ggKG9wWzBdKSB7XHJcbiAgICAgICAgICAgICAgICBjYXNlIDA6IGNhc2UgMTogdCA9IG9wOyBicmVhaztcclxuICAgICAgICAgICAgICAgIGNhc2UgNDogXy5sYWJlbCsrOyByZXR1cm4geyB2YWx1ZTogb3BbMV0sIGRvbmU6IGZhbHNlIH07XHJcbiAgICAgICAgICAgICAgICBjYXNlIDU6IF8ubGFiZWwrKzsgeSA9IG9wWzFdOyBvcCA9IFswXTsgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICBjYXNlIDc6IG9wID0gXy5vcHMucG9wKCk7IF8udHJ5cy5wb3AoKTsgY29udGludWU7XHJcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgICAgICAgIGlmICghKHQgPSBfLnRyeXMsIHQgPSB0Lmxlbmd0aCA+IDAgJiYgdFt0Lmxlbmd0aCAtIDFdKSAmJiAob3BbMF0gPT09IDYgfHwgb3BbMF0gPT09IDIpKSB7IF8gPSAwOyBjb250aW51ZTsgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChvcFswXSA9PT0gMyAmJiAoIXQgfHwgKG9wWzFdID4gdFswXSAmJiBvcFsxXSA8IHRbM10pKSkgeyBfLmxhYmVsID0gb3BbMV07IGJyZWFrOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKG9wWzBdID09PSA2ICYmIF8ubGFiZWwgPCB0WzFdKSB7IF8ubGFiZWwgPSB0WzFdOyB0ID0gb3A7IGJyZWFrOyB9XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHQgJiYgXy5sYWJlbCA8IHRbMl0pIHsgXy5sYWJlbCA9IHRbMl07IF8ub3BzLnB1c2gob3ApOyBicmVhazsgfVxyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0WzJdKSBfLm9wcy5wb3AoKTtcclxuICAgICAgICAgICAgICAgICAgICBfLnRyeXMucG9wKCk7IGNvbnRpbnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG9wID0gYm9keS5jYWxsKHRoaXNBcmcsIF8pO1xyXG4gICAgICAgIH0gY2F0Y2ggKGUpIHsgb3AgPSBbNiwgZV07IHkgPSAwOyB9IGZpbmFsbHkgeyBmID0gdCA9IDA7IH1cclxuICAgICAgICBpZiAob3BbMF0gJiA1KSB0aHJvdyBvcFsxXTsgcmV0dXJuIHsgdmFsdWU6IG9wWzBdID8gb3BbMV0gOiB2b2lkIDAsIGRvbmU6IHRydWUgfTtcclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9fZXhwb3J0U3RhcihtLCBleHBvcnRzKSB7XHJcbiAgICBmb3IgKHZhciBwIGluIG0pIGlmICghZXhwb3J0cy5oYXNPd25Qcm9wZXJ0eShwKSkgZXhwb3J0c1twXSA9IG1bcF07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3ZhbHVlcyhvKSB7XHJcbiAgICB2YXIgbSA9IHR5cGVvZiBTeW1ib2wgPT09IFwiZnVuY3Rpb25cIiAmJiBvW1N5bWJvbC5pdGVyYXRvcl0sIGkgPSAwO1xyXG4gICAgaWYgKG0pIHJldHVybiBtLmNhbGwobyk7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIG5leHQ6IGZ1bmN0aW9uICgpIHtcclxuICAgICAgICAgICAgaWYgKG8gJiYgaSA+PSBvLmxlbmd0aCkgbyA9IHZvaWQgMDtcclxuICAgICAgICAgICAgcmV0dXJuIHsgdmFsdWU6IG8gJiYgb1tpKytdLCBkb25lOiAhbyB9O1xyXG4gICAgICAgIH1cclxuICAgIH07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX3JlYWQobywgbikge1xyXG4gICAgdmFyIG0gPSB0eXBlb2YgU3ltYm9sID09PSBcImZ1bmN0aW9uXCIgJiYgb1tTeW1ib2wuaXRlcmF0b3JdO1xyXG4gICAgaWYgKCFtKSByZXR1cm4gbztcclxuICAgIHZhciBpID0gbS5jYWxsKG8pLCByLCBhciA9IFtdLCBlO1xyXG4gICAgdHJ5IHtcclxuICAgICAgICB3aGlsZSAoKG4gPT09IHZvaWQgMCB8fCBuLS0gPiAwKSAmJiAhKHIgPSBpLm5leHQoKSkuZG9uZSkgYXIucHVzaChyLnZhbHVlKTtcclxuICAgIH1cclxuICAgIGNhdGNoIChlcnJvcikgeyBlID0geyBlcnJvcjogZXJyb3IgfTsgfVxyXG4gICAgZmluYWxseSB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgaWYgKHIgJiYgIXIuZG9uZSAmJiAobSA9IGlbXCJyZXR1cm5cIl0pKSBtLmNhbGwoaSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZpbmFsbHkgeyBpZiAoZSkgdGhyb3cgZS5lcnJvcjsgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIGFyO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19zcHJlYWQoKSB7XHJcbiAgICBmb3IgKHZhciBhciA9IFtdLCBpID0gMDsgaSA8IGFyZ3VtZW50cy5sZW5ndGg7IGkrKylcclxuICAgICAgICBhciA9IGFyLmNvbmNhdChfX3JlYWQoYXJndW1lbnRzW2ldKSk7XHJcbiAgICByZXR1cm4gYXI7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2F3YWl0KHYpIHtcclxuICAgIHJldHVybiB0aGlzIGluc3RhbmNlb2YgX19hd2FpdCA/ICh0aGlzLnYgPSB2LCB0aGlzKSA6IG5ldyBfX2F3YWl0KHYpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY0dlbmVyYXRvcih0aGlzQXJnLCBfYXJndW1lbnRzLCBnZW5lcmF0b3IpIHtcclxuICAgIGlmICghU3ltYm9sLmFzeW5jSXRlcmF0b3IpIHRocm93IG5ldyBUeXBlRXJyb3IoXCJTeW1ib2wuYXN5bmNJdGVyYXRvciBpcyBub3QgZGVmaW5lZC5cIik7XHJcbiAgICB2YXIgZyA9IGdlbmVyYXRvci5hcHBseSh0aGlzQXJnLCBfYXJndW1lbnRzIHx8IFtdKSwgaSwgcSA9IFtdO1xyXG4gICAgcmV0dXJuIGkgPSB7fSwgdmVyYihcIm5leHRcIiksIHZlcmIoXCJ0aHJvd1wiKSwgdmVyYihcInJldHVyblwiKSwgaVtTeW1ib2wuYXN5bmNJdGVyYXRvcl0gPSBmdW5jdGlvbiAoKSB7IHJldHVybiB0aGlzOyB9LCBpO1xyXG4gICAgZnVuY3Rpb24gdmVyYihuKSB7IGlmIChnW25dKSBpW25dID0gZnVuY3Rpb24gKHYpIHsgcmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChhLCBiKSB7IHEucHVzaChbbiwgdiwgYSwgYl0pID4gMSB8fCByZXN1bWUobiwgdik7IH0pOyB9OyB9XHJcbiAgICBmdW5jdGlvbiByZXN1bWUobiwgdikgeyB0cnkgeyBzdGVwKGdbbl0odikpOyB9IGNhdGNoIChlKSB7IHNldHRsZShxWzBdWzNdLCBlKTsgfSB9XHJcbiAgICBmdW5jdGlvbiBzdGVwKHIpIHsgci52YWx1ZSBpbnN0YW5jZW9mIF9fYXdhaXQgPyBQcm9taXNlLnJlc29sdmUoci52YWx1ZS52KS50aGVuKGZ1bGZpbGwsIHJlamVjdCkgOiBzZXR0bGUocVswXVsyXSwgcik7ICB9XHJcbiAgICBmdW5jdGlvbiBmdWxmaWxsKHZhbHVlKSB7IHJlc3VtZShcIm5leHRcIiwgdmFsdWUpOyB9XHJcbiAgICBmdW5jdGlvbiByZWplY3QodmFsdWUpIHsgcmVzdW1lKFwidGhyb3dcIiwgdmFsdWUpOyB9XHJcbiAgICBmdW5jdGlvbiBzZXR0bGUoZiwgdikgeyBpZiAoZih2KSwgcS5zaGlmdCgpLCBxLmxlbmd0aCkgcmVzdW1lKHFbMF1bMF0sIHFbMF1bMV0pOyB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBfX2FzeW5jRGVsZWdhdG9yKG8pIHtcclxuICAgIHZhciBpLCBwO1xyXG4gICAgcmV0dXJuIGkgPSB7fSwgdmVyYihcIm5leHRcIiksIHZlcmIoXCJ0aHJvd1wiLCBmdW5jdGlvbiAoZSkgeyB0aHJvdyBlOyB9KSwgdmVyYihcInJldHVyblwiKSwgaVtTeW1ib2wuaXRlcmF0b3JdID0gZnVuY3Rpb24gKCkgeyByZXR1cm4gdGhpczsgfSwgaTtcclxuICAgIGZ1bmN0aW9uIHZlcmIobiwgZikgeyBpZiAob1tuXSkgaVtuXSA9IGZ1bmN0aW9uICh2KSB7IHJldHVybiAocCA9ICFwKSA/IHsgdmFsdWU6IF9fYXdhaXQob1tuXSh2KSksIGRvbmU6IG4gPT09IFwicmV0dXJuXCIgfSA6IGYgPyBmKHYpIDogdjsgfTsgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19hc3luY1ZhbHVlcyhvKSB7XHJcbiAgICBpZiAoIVN5bWJvbC5hc3luY0l0ZXJhdG9yKSB0aHJvdyBuZXcgVHlwZUVycm9yKFwiU3ltYm9sLmFzeW5jSXRlcmF0b3IgaXMgbm90IGRlZmluZWQuXCIpO1xyXG4gICAgdmFyIG0gPSBvW1N5bWJvbC5hc3luY0l0ZXJhdG9yXTtcclxuICAgIHJldHVybiBtID8gbS5jYWxsKG8pIDogdHlwZW9mIF9fdmFsdWVzID09PSBcImZ1bmN0aW9uXCIgPyBfX3ZhbHVlcyhvKSA6IG9bU3ltYm9sLml0ZXJhdG9yXSgpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19tYWtlVGVtcGxhdGVPYmplY3QoY29va2VkLCByYXcpIHtcclxuICAgIGlmIChPYmplY3QuZGVmaW5lUHJvcGVydHkpIHsgT2JqZWN0LmRlZmluZVByb3BlcnR5KGNvb2tlZCwgXCJyYXdcIiwgeyB2YWx1ZTogcmF3IH0pOyB9IGVsc2UgeyBjb29rZWQucmF3ID0gcmF3OyB9XHJcbiAgICByZXR1cm4gY29va2VkO1xyXG59O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIF9faW1wb3J0U3Rhcihtb2QpIHtcclxuICAgIGlmIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpIHJldHVybiBtb2Q7XHJcbiAgICB2YXIgcmVzdWx0ID0ge307XHJcbiAgICBpZiAobW9kICE9IG51bGwpIGZvciAodmFyIGsgaW4gbW9kKSBpZiAoT2JqZWN0Lmhhc093blByb3BlcnR5LmNhbGwobW9kLCBrKSkgcmVzdWx0W2tdID0gbW9kW2tdO1xyXG4gICAgcmVzdWx0LmRlZmF1bHQgPSBtb2Q7XHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gX19pbXBvcnREZWZhdWx0KG1vZCkge1xyXG4gICAgcmV0dXJuIChtb2QgJiYgbW9kLl9fZXNNb2R1bGUpID8gbW9kIDogeyBkZWZhdWx0OiBtb2QgfTtcclxufVxyXG4iLCIvKipcbiAqIFRoaXMgY2xhc3MgaXMgdXNlZCBhcyBhIGRlZmF1bHQgYWN0aW9uIHdoZW4gdGhlIHVzZXIgZG9lc24ndCBwYXNzIGFueSBjdXN0b20gYWN0aW9uIGFzIGFuIGFyZ3VtZW50XG4gKi9cbmV4cG9ydCBjbGFzcyBFbWl0dGVyQWN0aW9uPFQgPSBhbnk+IHtcbiAgICAvKipcbiAgICAgKiBBY3Rpb24gdHlwZVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgdHlwZTogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIEVtaXR0ZXJBY3Rpb24gaW5zdGFuY2VcbiAgICAgKlxuICAgICAqIEBwYXJhbSBwYXlsb2FkIC0gRGF0YSB0byBkaXNwYXRjaFxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKHB1YmxpYyBwYXlsb2FkPzogVCkge31cbn1cbiIsImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5neHMvc3RvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEVNSVRURVJfTUVUQV9LRVksIEVtaXR0YWJsZSwgRW1pdHRlck1ldGFEYXRhIH0gZnJvbSAnLi9jb3JlL2ludGVybmFsL2ludGVybmFscyc7XG5pbXBvcnQgeyBFbWl0dGVyQWN0aW9uIH0gZnJvbSAnLi9jb3JlL2FjdGlvbnMvYWN0aW9ucyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBFbWl0U3RvcmUgZXh0ZW5kcyBTdG9yZSB7XG4gICAgLyoqXG4gICAgICogQHBhcmFtIGVtaXR0ZXIgLSBSZWZlcmVuY2UgdG8gdGhlIHN0YXRpYyBmdW5jdGlvbiBmcm9tIHRoZSBzdG9yZVxuICAgICAqIEByZXR1cm5zIC0gQSBwbGFpbiBvYmplY3Qgd2l0aCBhbiBgZW1pdGAgZnVuY3Rpb24gZm9yIGNhbGxpbmcgZW1pdHRlclxuICAgICAqL1xuICAgIHB1YmxpYyBlbWl0dGVyPFQgPSBhbnksIFUgPSBhbnk+KGVtaXR0ZXI6IEZ1bmN0aW9uKTogRW1pdHRhYmxlPFQsIFU+IHtcbiAgICAgICAgY29uc3QgZW1pdHRlckV2ZW50OiBFbWl0dGVyTWV0YURhdGEgPSBlbWl0dGVyW0VNSVRURVJfTUVUQV9LRVldO1xuXG4gICAgICAgIGlmICghZW1pdHRlckV2ZW50KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0VtaXR0ZXIgbWV0aG9kcyBzaG91bGQgYmUgZGVjb3JhdGVkIHVzaW5nIEBFbWl0dGVyKCkgZGVjb3JhdG9yJyk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgZW1pdDogKHBheWxvYWQ/OiBUKTogT2JzZXJ2YWJsZTxVPiA9PiB7XG4gICAgICAgICAgICAgICAgRW1pdHRlckFjdGlvbi50eXBlID0gZW1pdHRlckV2ZW50LnR5cGU7XG4gICAgICAgICAgICAgICAgY29uc3QgQWN0aW9uOiBhbnkgfCB0eXBlb2YgRW1pdHRlckFjdGlvbiA9IGVtaXR0ZXJFdmVudC5hY3Rpb24gPyBlbWl0dGVyRXZlbnQuYWN0aW9uIDogRW1pdHRlckFjdGlvbjtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kaXNwYXRjaChuZXcgQWN0aW9uKHBheWxvYWQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICB9XG59XG4iLCJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbWl0U3RvcmUgfSBmcm9tICcuLi8uLi9lbWl0LnNlcnZpY2UnO1xuXG4vKipcbiAqIEFsbG93cyB0aGUgYEBQYXlsb2FkRW1pdHRlcigpYCBkZWNvcmF0b3IgdG8gZ2V0IGFjY2VzcyB0byB0aGUgREkgc3RvcmVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSB7XG4gICAgLyoqXG4gICAgICogSW5qZWN0b3IgZm9yIGFjY2Vzc2luZyBESVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaW5qZWN0b3I6IEluamVjdG9yIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIGluamVjdG9yIC0gUm9vdCBpbmplY3RvclxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB9XG59XG5cbi8qKlxuICogRGVjb3JhdGVzIGEgcHJvcGVydHkgYW5kIGRlZmluZXMgbmV3IGdldHRlclxuICpcbiAqIEBwYXJhbSBlbWl0dGVyIC0gUmVmZXJlbmNlIHRvIHRoZSBzdGF0aWMgZnVuY3Rpb25cbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmdW5jdGlvbiBmb3IgZGVjb3JhdGluZyBwcm9wZXJ0aWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBQYXlsb2FkRW1pdHRlcihlbWl0dGVyOiBGdW5jdGlvbik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgICByZXR1cm4gKHRhcmdldDogT2JqZWN0LCBrZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHtcbiAgICAgICAgICAgIGdldDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBZb3UndmUgZm9yZ290dGVuIHRvIGltcG9ydCBcXGBOZ3hzRW1pdFBsdWdpbk1vZHVsZVxcYGApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHN0b3JlID0gUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yIS5nZXQ8RW1pdFN0b3JlPihFbWl0U3RvcmUpO1xuICAgICAgICAgICAgICAgIHJldHVybiBzdG9yZS5lbWl0dGVyKGVtaXR0ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9O1xufVxuIiwiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IH0gZnJvbSAnLi9jb3JlL2RlY29yYXRvcnMvcGF5bG9hZC1lbWl0dGVyJztcbmltcG9ydCB7IEVtaXRTdG9yZSB9IGZyb20gJy4vZW1pdC5zZXJ2aWNlJztcblxuQE5nTW9kdWxlKHtcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LFxuICAgICAgICBFbWl0U3RvcmVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIE5neHNFbWl0UGx1Z2luTW9kdWxlIHtcbiAgICBjb25zdHJ1Y3RvcihwYXlsb2FkRW1pdHRlckZhY3Rvcnk6IFBheWxvYWRFbWl0dGVyRmFjdG9yeSkge31cblxuICAgIC8qKlxuICAgICAqIEByZXR1cm5zIC0gQSB3cmFwcGVyIGFyb3VuZCBgTmdNb2R1bGVgXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8Tmd4c0VtaXRQbHVnaW5Nb2R1bGU+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG5nTW9kdWxlOiBOZ3hzRW1pdFBsdWdpbk1vZHVsZVxuICAgICAgICB9O1xuICAgIH1cbn1cbiJdLCJuYW1lcyI6WyJ0c2xpYl8xLl9fZXh0ZW5kcyIsIkluamVjdGFibGUiLCJTdG9yZSIsIkluamVjdG9yIiwic3RvcmUiLCJOZ01vZHVsZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7OztJQXdCTyxxQkFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDOzs7O0FBS3BDLElBQU8scUJBQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7Ozs7O0FBRXBELGlDQUFvQyxNQUFnQjtRQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUNsQyxxQkFBTSxlQUFlLEdBQUc7Z0JBQ3BCLElBQUksRUFBRSxJQUFJO2dCQUNWLE9BQU8sRUFBRSxFQUFFO2dCQUNYLFFBQVEsRUFBRSxFQUFFO2dCQUNaLElBQUksRUFBRSxJQUFJO2dCQUNWLFFBQVEsRUFBRSxFQUFFO2dCQUNaLFFBQVEsRUFBRSxJQUFJO2FBQ2pCLENBQUM7WUFDRixNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztTQUN2RTtRQUNELE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7S0FDbkM7Ozs7O0lBRUQsMEJBQTBCLE1BQWdCO1FBQ3RDLE9BQU8sTUFBTSxD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

2

bundles/ngxs-contrib-emitter.umd.min.js

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

!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ngxs/store")):"function"==typeof define&&define.amd?define("@ngxs-contrib/emitter",["exports","@angular/core","@ngxs/store"],e):e((t["ngxs-contrib"]=t["ngxs-contrib"]||{},t["ngxs-contrib"].emitter={}),t.ng.core,null)}(this,function(t,n,e){"use strict";var r="NGXS_META",u="NGXS_EMITTER_META";function a(t){if(!t.hasOwnProperty(r)){Object.defineProperty(t,r,{value:{name:null,actions:{},defaults:{},path:null,children:[],instance:null}})}return function e(t){return t[r]}(t)}var o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};var i=function(){function t(t){this.payload=t}return t.type=null,t}(),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return function r(t,e){function n(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,t),e.prototype.emitter=function(t){var n=this,r=t[u];if(!r)throw new Error("Emitter methods should be decorated using @Emitter() decorator");return{emit:function(t){i.type=r.type;var e=r.action?r.action:i;return n.dispatch(new e(t))}}},e.decorators=[{type:n.Injectable}],e}(e.Store),f=function(){function e(t){e.injector=t}return e.injector=null,e.decorators=[{type:n.Injectable}],e.ctorParameters=function(){return[{type:n.Injector}]},e}();var p=function(){function t(t){}return t.forRoot=function(){return{ngModule:t}},t.decorators=[{type:n.NgModule,args:[{providers:[f,c]}]}],t.ctorParameters=function(){return[{type:f}]},t}();t.PayloadEmitter=function s(n){return function(t,e){Object.defineProperty(t,e,{get:function(){return f.injector.get(c).emitter(n)}})}},t.Emitter=function y(c){return function(t,e,n){if("function"!=typeof n.value||"function"!=typeof t[e])throw new TypeError("Only static functions can be decorated with @Emitter() decorator");"symbol"==typeof e&&(e=e.toString());var r=a(t),o=c&&c.action;if(o&&"string"!=typeof o.type)throw new Error("Action type should be defined as a static property `type`");var i=o?o.type:c&&c.type||t.name+"."+e;if(r.actions[i])throw new Error("Method decorated with such type `"+i+"` already exists");r.actions[i]=[{fn:""+e,options:{},type:i}],n.value[u]={type:i,action:o},t.prototype[e]=function(){return t[e].apply(t,arguments)}}},t.EmitterAction=i,t.NgxsEmitPluginModule=p,t.ɵa=f,t.ɵb=c,Object.defineProperty(t,"__esModule",{value:!0})});
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@ngxs/store")):"function"==typeof define&&define.amd?define("@ngxs-contrib/emitter",["exports","@angular/core","@ngxs/store"],e):e((t["ngxs-contrib"]=t["ngxs-contrib"]||{},t["ngxs-contrib"].emitter={}),t.ng.core,null)}(this,function(t,n,e){"use strict";var r="NGXS_META",u="NGXS_EMITTER_META";function a(t){if(!t.hasOwnProperty(r)){Object.defineProperty(t,r,{value:{name:null,actions:{},defaults:{},path:null,children:[],instance:null}})}return function e(t){return t[r]}(t)}var o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])};var i=function(){function t(t){this.payload=t}return t.type=null,t}(),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return function r(t,e){function n(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,t),e.prototype.emitter=function(t){var n=this,r=t[u];if(!r)throw new Error("Emitter methods should be decorated using @Emitter() decorator");return{emit:function(t){i.type=r.type;var e=r.action?r.action:i;return n.dispatch(new e(t))}}},e.decorators=[{type:n.Injectable}],e}(e.Store),f=function(){function e(t){e.injector=t}return e.injector=null,e.decorators=[{type:n.Injectable}],e.ctorParameters=function(){return[{type:n.Injector}]},e}();var p=function(){function t(t){}return t.forRoot=function(){return{ngModule:t}},t.decorators=[{type:n.NgModule,args:[{providers:[f,c]}]}],t.ctorParameters=function(){return[{type:f}]},t}();t.PayloadEmitter=function s(n){return function(t,e){Object.defineProperty(t,e,{get:function(){if(null===f.injector)throw new Error("You've forgotten to import `NgxsEmitPluginModule`");return f.injector.get(c).emitter(n)}})}},t.Emitter=function l(c){return function(t,e,n){if("function"!=typeof n.value||"function"!=typeof t[e])throw new TypeError("Only static functions can be decorated with @Emitter() decorator");"symbol"==typeof e&&(e=e.toString());var r=a(t),o=c&&c.action;if(o&&"string"!=typeof o.type)throw new Error("Action type should be defined as a static property `type`");var i=o?o.type:c&&c.type||t.name+"."+e;if(r.actions[i])throw new Error("Method decorated with such type `"+i+"` already exists");r.actions[i]=[{fn:""+e,options:{},type:i}],n.value[u]={type:i,action:o},t.prototype[e]=function(){return t[e].apply(t,arguments)}}},t.EmitterAction=i,t.NgxsEmitPluginModule=p,t.ɵa=f,t.ɵb=c,Object.defineProperty(t,"__esModule",{value:!0})});
//# sourceMappingURL=ngxs-contrib-emitter.umd.min.js.map

@@ -48,2 +48,5 @@ /**

get: () => {
if (PayloadEmitterFactory.injector === null) {
throw new Error(`You've forgotten to import \`NgxsEmitPluginModule\``);
}
const /** @type {?} */ store = /** @type {?} */ ((PayloadEmitterFactory.injector)).get(EmitStore);

@@ -56,2 +59,2 @@ return store.emitter(emitter);

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bG9hZC1lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMtY29udHJpYi9lbWl0dGVyLyIsInNvdXJjZXMiOlsibGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQU0vQyxNQUFNOzs7Ozs7SUFXRixZQUFZLFFBQWtCO1FBQzFCLHFCQUFxQixDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7S0FDN0M7Ozs7O2lDQVR5QyxJQUFJOztZQUxqRCxVQUFVOzs7O1lBUFUsUUFBUTs7Ozs7Ozs7Ozs7Ozs7O0FBOEI3QixNQUFNLHlCQUF5QixPQUFpQjtJQUM1QyxNQUFNLENBQUMsQ0FBQyxNQUFjLEVBQUUsR0FBb0IsRUFBRSxFQUFFO1FBQzVDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtZQUMvQixHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUNOLHVCQUFNLEtBQUssc0JBQUcscUJBQXFCLENBQUMsUUFBUSxHQUFFLEdBQUcsQ0FBWSxTQUFTLENBQUMsQ0FBQztnQkFDeEUsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDakM7U0FDSixDQUFDLENBQUM7S0FDTixDQUFDO0NBQ0wiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbWl0U3RvcmUgfSBmcm9tICcuLi8uLi9lbWl0LnNlcnZpY2UnO1xuXG4vKipcbiAqIEFsbG93cyB0aGUgYEBQYXlsb2FkRW1pdHRlcigpYCBkZWNvcmF0b3IgdG8gZ2V0IGFjY2VzcyB0byB0aGUgREkgc3RvcmVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSB7XG4gICAgLyoqXG4gICAgICogSW5qZWN0b3IgZm9yIGFjY2Vzc2luZyBESVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaW5qZWN0b3I6IEluamVjdG9yIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIGluamVjdG9yIC0gUm9vdCBpbmplY3RvclxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB9XG59XG5cbi8qKlxuICogRGVjb3JhdGVzIGEgcHJvcGVydHkgYW5kIGRlZmluZXMgbmV3IGdldHRlclxuICpcbiAqIEBwYXJhbSBlbWl0dGVyIC0gUmVmZXJlbmNlIHRvIHRoZSBzdGF0aWMgZnVuY3Rpb25cbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmdW5jdGlvbiBmb3IgZGVjb3JhdGluZyBwcm9wZXJ0aWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBQYXlsb2FkRW1pdHRlcihlbWl0dGVyOiBGdW5jdGlvbik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgICByZXR1cm4gKHRhcmdldDogT2JqZWN0LCBrZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHtcbiAgICAgICAgICAgIGdldDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0b3JlID0gUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yIS5nZXQ8RW1pdFN0b3JlPihFbWl0U3RvcmUpO1xuICAgICAgICAgICAgICAgIHJldHVybiBzdG9yZS5lbWl0dGVyKGVtaXR0ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9O1xufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bG9hZC1lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMtY29udHJpYi9lbWl0dGVyLyIsInNvdXJjZXMiOlsibGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7OztBQU0vQyxNQUFNOzs7Ozs7SUFXRixZQUFZLFFBQWtCO1FBQzFCLHFCQUFxQixDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7S0FDN0M7Ozs7O2lDQVR5QyxJQUFJOztZQUxqRCxVQUFVOzs7O1lBUFUsUUFBUTs7Ozs7Ozs7Ozs7Ozs7O0FBOEI3QixNQUFNLHlCQUF5QixPQUFpQjtJQUM1QyxNQUFNLENBQUMsQ0FBQyxNQUFjLEVBQUUsR0FBb0IsRUFBRSxFQUFFO1FBQzVDLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRTtZQUMvQixHQUFHLEVBQUUsR0FBRyxFQUFFO2dCQUNOLEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLFFBQVEsS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFDO29CQUMxQyxNQUFNLElBQUksS0FBSyxDQUFDLHFEQUFxRCxDQUFDLENBQUM7aUJBQzFFO2dCQUVELHVCQUFNLEtBQUssc0JBQUcscUJBQXFCLENBQUMsUUFBUSxHQUFFLEdBQUcsQ0FBWSxTQUFTLENBQUMsQ0FBQztnQkFDeEUsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDakM7U0FDSixDQUFDLENBQUM7S0FDTixDQUFDO0NBQ0wiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBFbWl0U3RvcmUgfSBmcm9tICcuLi8uLi9lbWl0LnNlcnZpY2UnO1xuXG4vKipcbiAqIEFsbG93cyB0aGUgYEBQYXlsb2FkRW1pdHRlcigpYCBkZWNvcmF0b3IgdG8gZ2V0IGFjY2VzcyB0byB0aGUgREkgc3RvcmVcbiAqL1xuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSB7XG4gICAgLyoqXG4gICAgICogSW5qZWN0b3IgZm9yIGFjY2Vzc2luZyBESVxuICAgICAqL1xuICAgIHB1YmxpYyBzdGF0aWMgaW5qZWN0b3I6IEluamVjdG9yIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIFBheWxvYWRFbWl0dGVyRmFjdG9yeSBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIGluamVjdG9yIC0gUm9vdCBpbmplY3RvclxuICAgICAqL1xuICAgIGNvbnN0cnVjdG9yKGluamVjdG9yOiBJbmplY3Rvcikge1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IgPSBpbmplY3RvcjtcbiAgICB9XG59XG5cbi8qKlxuICogRGVjb3JhdGVzIGEgcHJvcGVydHkgYW5kIGRlZmluZXMgbmV3IGdldHRlclxuICpcbiAqIEBwYXJhbSBlbWl0dGVyIC0gUmVmZXJlbmNlIHRvIHRoZSBzdGF0aWMgZnVuY3Rpb25cbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmdW5jdGlvbiBmb3IgZGVjb3JhdGluZyBwcm9wZXJ0aWVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBQYXlsb2FkRW1pdHRlcihlbWl0dGVyOiBGdW5jdGlvbik6IFByb3BlcnR5RGVjb3JhdG9yIHtcbiAgICByZXR1cm4gKHRhcmdldDogT2JqZWN0LCBrZXk6IHN0cmluZyB8IHN5bWJvbCkgPT4ge1xuICAgICAgICBPYmplY3QuZGVmaW5lUHJvcGVydHkodGFyZ2V0LCBrZXksIHtcbiAgICAgICAgICAgIGdldDogKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IgPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBZb3UndmUgZm9yZ290dGVuIHRvIGltcG9ydCBcXGBOZ3hzRW1pdFBsdWdpbk1vZHVsZVxcYGApO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHN0b3JlID0gUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yIS5nZXQ8RW1pdFN0b3JlPihFbWl0U3RvcmUpO1xuICAgICAgICAgICAgICAgIHJldHVybiBzdG9yZS5lbWl0dGVyKGVtaXR0ZXIpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9O1xufVxuIl19

@@ -50,2 +50,5 @@ /**

get: function () {
if (PayloadEmitterFactory.injector === null) {
throw new Error("You've forgotten to import `NgxsEmitPluginModule`");
}
var /** @type {?} */ store = /** @type {?} */ ((PayloadEmitterFactory.injector)).get(EmitStore);

@@ -58,2 +61,2 @@ return store.emitter(emitter);

//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bG9hZC1lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMtY29udHJpYi9lbWl0dGVyLyIsInNvdXJjZXMiOlsibGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7SUFZM0M7Ozs7T0FJRztJQUNILCtCQUFZLFFBQWtCO1FBQzFCLHFCQUFxQixDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7S0FDN0M7Ozs7cUNBVHlDLElBQUk7O2dCQUxqRCxVQUFVOzs7O2dCQVBVLFFBQVE7O2dDQUE3Qjs7U0FRYSxxQkFBcUI7Ozs7Ozs7Ozs7Ozs7O0FBc0JsQyxNQUFNLHlCQUF5QixPQUFpQjtJQUM1QyxNQUFNLENBQUMsVUFBQyxNQUFjLEVBQUUsR0FBb0I7UUFDeEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1lBQy9CLEdBQUcsRUFBRTtnQkFDRCxxQkFBTSxLQUFLLHNCQUFHLHFCQUFxQixDQUFDLFFBQVEsR0FBRSxHQUFHLENBQVksU0FBUyxDQUFDLENBQUM7Z0JBQ3hFLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ2pDO1NBQ0osQ0FBQyxDQUFDO0tBQ04sQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW1pdFN0b3JlIH0gZnJvbSAnLi4vLi4vZW1pdC5zZXJ2aWNlJztcblxuLyoqXG4gKiBBbGxvd3MgdGhlIGBAUGF5bG9hZEVtaXR0ZXIoKWAgZGVjb3JhdG9yIHRvIGdldCBhY2Nlc3MgdG8gdGhlIERJIHN0b3JlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQYXlsb2FkRW1pdHRlckZhY3Rvcnkge1xuICAgIC8qKlxuICAgICAqIEluamVjdG9yIGZvciBhY2Nlc3NpbmcgRElcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGluamVjdG9yOiBJbmplY3RvciB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBQYXlsb2FkRW1pdHRlckZhY3RvcnkgaW5zdGFuY2VcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpbmplY3RvciAtIFJvb3QgaW5qZWN0b3JcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yID0gaW5qZWN0b3I7XG4gICAgfVxufVxuXG4vKipcbiAqIERlY29yYXRlcyBhIHByb3BlcnR5IGFuZCBkZWZpbmVzIG5ldyBnZXR0ZXJcbiAqXG4gKiBAcGFyYW0gZW1pdHRlciAtIFJlZmVyZW5jZSB0byB0aGUgc3RhdGljIGZ1bmN0aW9uXG4gKiBAcmV0dXJucyAtIEZhY3RvcnkgZnVuY3Rpb24gZm9yIGRlY29yYXRpbmcgcHJvcGVydGllc1xuICovXG5leHBvcnQgZnVuY3Rpb24gUGF5bG9hZEVtaXR0ZXIoZW1pdHRlcjogRnVuY3Rpb24pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gICAgcmV0dXJuICh0YXJnZXQ6IE9iamVjdCwga2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCB7XG4gICAgICAgICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdG9yZSA9IFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciEuZ2V0PEVtaXRTdG9yZT4oRW1pdFN0b3JlKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3RvcmUuZW1pdHRlcihlbWl0dGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfTtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bG9hZC1lbWl0dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5neHMtY29udHJpYi9lbWl0dGVyLyIsInNvdXJjZXMiOlsibGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQzs7Ozs7SUFZM0M7Ozs7T0FJRztJQUNILCtCQUFZLFFBQWtCO1FBQzFCLHFCQUFxQixDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7S0FDN0M7Ozs7cUNBVHlDLElBQUk7O2dCQUxqRCxVQUFVOzs7O2dCQVBVLFFBQVE7O2dDQUE3Qjs7U0FRYSxxQkFBcUI7Ozs7Ozs7Ozs7Ozs7O0FBc0JsQyxNQUFNLHlCQUF5QixPQUFpQjtJQUM1QyxNQUFNLENBQUMsVUFBQyxNQUFjLEVBQUUsR0FBb0I7UUFDeEMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFO1lBQy9CLEdBQUcsRUFBRTtnQkFDRCxFQUFFLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLEtBQUssSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxtREFBcUQsQ0FBQyxDQUFDO2lCQUMxRTtnQkFFRCxxQkFBTSxLQUFLLHNCQUFHLHFCQUFxQixDQUFDLFFBQVEsR0FBRSxHQUFHLENBQVksU0FBUyxDQUFDLENBQUM7Z0JBQ3hFLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ2pDO1NBQ0osQ0FBQyxDQUFDO0tBQ04sQ0FBQztDQUNMIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRW1pdFN0b3JlIH0gZnJvbSAnLi4vLi4vZW1pdC5zZXJ2aWNlJztcblxuLyoqXG4gKiBBbGxvd3MgdGhlIGBAUGF5bG9hZEVtaXR0ZXIoKWAgZGVjb3JhdG9yIHRvIGdldCBhY2Nlc3MgdG8gdGhlIERJIHN0b3JlXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQYXlsb2FkRW1pdHRlckZhY3Rvcnkge1xuICAgIC8qKlxuICAgICAqIEluamVjdG9yIGZvciBhY2Nlc3NpbmcgRElcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGluamVjdG9yOiBJbmplY3RvciB8IG51bGwgPSBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBQYXlsb2FkRW1pdHRlckZhY3RvcnkgaW5zdGFuY2VcbiAgICAgKlxuICAgICAqIEBwYXJhbSBpbmplY3RvciAtIFJvb3QgaW5qZWN0b3JcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICAgICAgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yID0gaW5qZWN0b3I7XG4gICAgfVxufVxuXG4vKipcbiAqIERlY29yYXRlcyBhIHByb3BlcnR5IGFuZCBkZWZpbmVzIG5ldyBnZXR0ZXJcbiAqXG4gKiBAcGFyYW0gZW1pdHRlciAtIFJlZmVyZW5jZSB0byB0aGUgc3RhdGljIGZ1bmN0aW9uXG4gKiBAcmV0dXJucyAtIEZhY3RvcnkgZnVuY3Rpb24gZm9yIGRlY29yYXRpbmcgcHJvcGVydGllc1xuICovXG5leHBvcnQgZnVuY3Rpb24gUGF5bG9hZEVtaXR0ZXIoZW1pdHRlcjogRnVuY3Rpb24pOiBQcm9wZXJ0eURlY29yYXRvciB7XG4gICAgcmV0dXJuICh0YXJnZXQ6IE9iamVjdCwga2V5OiBzdHJpbmcgfCBzeW1ib2wpID0+IHtcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHRhcmdldCwga2V5LCB7XG4gICAgICAgICAgICBnZXQ6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoUGF5bG9hZEVtaXR0ZXJGYWN0b3J5LmluamVjdG9yID09PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgWW91J3ZlIGZvcmdvdHRlbiB0byBpbXBvcnQgXFxgTmd4c0VtaXRQbHVnaW5Nb2R1bGVcXGBgKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBzdG9yZSA9IFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciEuZ2V0PEVtaXRTdG9yZT4oRW1pdFN0b3JlKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3RvcmUuZW1pdHRlcihlbWl0dGVyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfTtcbn1cbiJdfQ==

@@ -170,2 +170,5 @@ import { Injectable, Injector, NgModule } from '@angular/core';

get: () => {
if (PayloadEmitterFactory.injector === null) {
throw new Error(`You've forgotten to import \`NgxsEmitPluginModule\``);
}
const /** @type {?} */ store = /** @type {?} */ ((PayloadEmitterFactory.injector)).get(EmitStore);

@@ -221,2 +224,2 @@ return store.emitter(emitter);

//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1jb250cmliLWVtaXR0ZXIuanMubWFwIiwic291cmNlcyI6WyJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9pbnRlcm5hbC9pbnRlcm5hbHMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9kZWNvcmF0b3JzL2VtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9hY3Rpb25zL2FjdGlvbnMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5zZXJ2aWNlLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU3RhdGljIG1ldGFkYXRhIGZvciB0aGUgZW1pdHRlciBmdW5jdGlvblxuICpcbiAqIEBwcm9wZXJ0eSB0eXBlIC0gQWN0aW9uIHR5cGUgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGFjdGlvbiAtIEN1c3RvbSBhY3Rpb24gdG8gZGlzcGF0Y2ggKG9wdGlvbmFsKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJNZXRhRGF0YTxUIGV4dGVuZHMgRnVuY3Rpb24gPSBhbnk+IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBUeXBlPFQ+O1xufVxuXG4vKipcbiAqIFBsYWluIG9iamVjdCB0aGF0IGNvbnRhaW5zIGBlbWl0YCBmdW5jdGlvbiB0aGF0IGRpc3BhdGNoZXMgcGF5bG9hZFxuICpcbiAqIEBwcm9wZXJ0eSBlbWl0IC0gRnVuY3Rpb24gdGhhdCBkaXNwYXRjaGVzIHBheWxvYWQgdW5kZXIgdGhlIGhvb2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWl0dGFibGU8VCA9IGFueSwgVSA9IGFueT4ge1xuICAgIGVtaXQocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+O1xufVxuXG5leHBvcnQgY29uc3QgTUVUQV9LRVkgPSAnTkdYU19NRVRBJztcblxuLyoqXG4gKiBAY29uc3QgLSBUaGlzIGNvbnN0YW50IGlzIGEga2V5IGZvciBkZWZpbmluZyBzdGF0aWMgbWV0YWRhdGEgdXNpbmcgYEBFbWl0dGVyYFxuICovXG5leHBvcnQgY29uc3QgRU1JVFRFUl9NRVRBX0tFWSA9ICdOR1hTX0VNSVRURVJfTUVUQSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdG9yZU1ldGFkYXRhKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAoIXRhcmdldC5oYXNPd25Qcm9wZXJ0eShNRVRBX0tFWSkpIHtcbiAgICAgICAgY29uc3QgZGVmYXVsdE1ldGFkYXRhID0ge1xuICAgICAgICAgICAgbmFtZTogbnVsbCxcbiAgICAgICAgICAgIGFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHt9LFxuICAgICAgICAgICAgcGF0aDogbnVsbCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIGluc3RhbmNlOiBudWxsXG4gICAgICAgIH07XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIE1FVEFfS0VZLCB7IHZhbHVlOiBkZWZhdWx0TWV0YWRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBnZXRTdG9yZU1ldGFkYXRhKHRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIGdldFN0b3JlTWV0YWRhdGEodGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIHJldHVybiB0YXJnZXRbTUVUQV9LRVldO1xufVxuIiwiaW1wb3J0IHsgZW5zdXJlU3RvcmVNZXRhZGF0YSwgRW1pdHRlck1ldGFEYXRhLCBFTUlUVEVSX01FVEFfS0VZIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhbiBlbWl0dGVyIGluZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjb25maWd1cmluZyBzdGF0aWMgbWV0YWRhdGFcbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmb3IgZGVjb3JhdGluZyBtZXRob2RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEVtaXR0ZXIob3B0aW9ucz86IFBhcnRpYWw8RW1pdHRlck1ldGFEYXRhPik6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIDxUPih0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+KSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgdGFyZ2V0W2tleV0gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYE9ubHkgc3RhdGljIGZ1bmN0aW9ucyBjYW4gYmUgZGVjb3JhdGVkIHdpdGggQEVtaXR0ZXIoKSBkZWNvcmF0b3JgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3ltYm9sJykge1xuICAgICAgICAgICAga2V5ID0ga2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtZXRhID0gZW5zdXJlU3RvcmVNZXRhZGF0YSh0YXJnZXQpO1xuICAgICAgICBjb25zdCBhY3Rpb246IGFueSB8IHVuZGVmaW5lZCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb247XG5cbiAgICAgICAgaWYgKGFjdGlvbiAmJiB0eXBlb2YgYWN0aW9uLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbiB0eXBlIHNob3VsZCBiZSBkZWZpbmVkIGFzIGEgc3RhdGljIHByb3BlcnR5IGB0eXBlYCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdHlwZTogc3RyaW5nID0gYWN0aW9uID8gYWN0aW9uLnR5cGUgOiAoKG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlKSB8fCBgJHt0YXJnZXQubmFtZX0uJHtrZXl9YCk7XG5cbiAgICAgICAgaWYgKG1ldGEuYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgZGVjb3JhdGVkIHdpdGggc3VjaCB0eXBlIFxcYCR7dHlwZX1cXGAgYWxyZWFkeSBleGlzdHNgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFt7XG4gICAgICAgICAgICBmbjogYCR7a2V5fWAsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgfV07XG5cbiAgICAgICAgZGVzY3JpcHRvci52YWx1ZVtFTUlUVEVSX01FVEFfS0VZXSA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgfTtcblxuICAgICAgICB0YXJnZXQucHJvdG90eXBlW2tleV0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXRba2V5XS5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cbiIsIi8qKlxuICogVGhpcyBjbGFzcyBpcyB1c2VkIGFzIGEgZGVmYXVsdCBhY3Rpb24gd2hlbiB0aGUgdXNlciBkb2Vzbid0IHBhc3MgYW55IGN1c3RvbSBhY3Rpb24gYXMgYW4gYXJndW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEVtaXR0ZXJBY3Rpb248VCA9IGFueT4ge1xuICAgIC8qKlxuICAgICAqIEFjdGlvbiB0eXBlXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0eXBlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgRW1pdHRlckFjdGlvbiBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIHBheWxvYWQgLSBEYXRhIHRvIGRpc3BhdGNoXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHBheWxvYWQ/OiBUKSB7fVxufVxuIiwiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRU1JVFRFUl9NRVRBX0tFWSwgRW1pdHRhYmxlLCBFbWl0dGVyTWV0YURhdGEgfSBmcm9tICcuL2NvcmUvaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IEVtaXR0ZXJBY3Rpb24gfSBmcm9tICcuL2NvcmUvYWN0aW9ucy9hY3Rpb25zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVtaXRTdG9yZSBleHRlbmRzIFN0b3JlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gZW1pdHRlciAtIFJlZmVyZW5jZSB0byB0aGUgc3RhdGljIGZ1bmN0aW9uIGZyb20gdGhlIHN0b3JlXG4gICAgICogQHJldHVybnMgLSBBIHBsYWluIG9iamVjdCB3aXRoIGFuIGBlbWl0YCBmdW5jdGlvbiBmb3IgY2FsbGluZyBlbWl0dGVyXG4gICAgICovXG4gICAgcHVibGljIGVtaXR0ZXI8VCA9IGFueSwgVSA9IGFueT4oZW1pdHRlcjogRnVuY3Rpb24pOiBFbWl0dGFibGU8VCwgVT4ge1xuICAgICAgICBjb25zdCBlbWl0dGVyRXZlbnQ6IEVtaXR0ZXJNZXRhRGF0YSA9IGVtaXR0ZXJbRU1JVFRFUl9NRVRBX0tFWV07XG5cbiAgICAgICAgaWYgKCFlbWl0dGVyRXZlbnQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW1pdHRlciBtZXRob2RzIHNob3VsZCBiZSBkZWNvcmF0ZWQgdXNpbmcgQEVtaXR0ZXIoKSBkZWNvcmF0b3InKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlbWl0OiAocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+ID0+IHtcbiAgICAgICAgICAgICAgICBFbWl0dGVyQWN0aW9uLnR5cGUgPSBlbWl0dGVyRXZlbnQudHlwZTtcbiAgICAgICAgICAgICAgICBjb25zdCBBY3Rpb246IGFueSB8IHR5cGVvZiBFbWl0dGVyQWN0aW9uID0gZW1pdHRlckV2ZW50LmFjdGlvbiA/IGVtaXR0ZXJFdmVudC5hY3Rpb24gOiBFbWl0dGVyQWN0aW9uO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRpc3BhdGNoKG5ldyBBY3Rpb24ocGF5bG9hZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cbn1cbiIsImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEVtaXRTdG9yZSB9IGZyb20gJy4uLy4uL2VtaXQuc2VydmljZSc7XG5cbi8qKlxuICogQWxsb3dzIHRoZSBgQFBheWxvYWRFbWl0dGVyKClgIGRlY29yYXRvciB0byBnZXQgYWNjZXNzIHRvIHRoZSBESSBzdG9yZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IHtcbiAgICAvKipcbiAgICAgKiBJbmplY3RvciBmb3IgYWNjZXNzaW5nIERJXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbmplY3RvcjogSW5qZWN0b3IgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IGluc3RhbmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaW5qZWN0b3IgLSBSb290IGluamVjdG9yXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciA9IGluamVjdG9yO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBwcm9wZXJ0eSBhbmQgZGVmaW5lcyBuZXcgZ2V0dGVyXG4gKlxuICogQHBhcmFtIGVtaXR0ZXIgLSBSZWZlcmVuY2UgdG8gdGhlIHN0YXRpYyBmdW5jdGlvblxuICogQHJldHVybnMgLSBGYWN0b3J5IGZ1bmN0aW9uIGZvciBkZWNvcmF0aW5nIHByb3BlcnRpZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFBheWxvYWRFbWl0dGVyKGVtaXR0ZXI6IEZ1bmN0aW9uKTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICAgIHJldHVybiAodGFyZ2V0OiBPYmplY3QsIGtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwge1xuICAgICAgICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvcmUgPSBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IhLmdldDxFbWl0U3RvcmU+KEVtaXRTdG9yZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlLmVtaXR0ZXIoZW1pdHRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG59XG4iLCJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQYXlsb2FkRW1pdHRlckZhY3RvcnkgfSBmcm9tICcuL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXInO1xuaW1wb3J0IHsgRW1pdFN0b3JlIH0gZnJvbSAnLi9lbWl0LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnksXG4gICAgICAgIEVtaXRTdG9yZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c0VtaXRQbHVnaW5Nb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHBheWxvYWRFbWl0dGVyRmFjdG9yeTogUGF5bG9hZEVtaXR0ZXJGYWN0b3J5KSB7fVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgLSBBIHdyYXBwZXIgYXJvdW5kIGBOZ01vZHVsZWBcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hzRW1pdFBsdWdpbk1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5neHNFbWl0UGx1Z2luTW9kdWxlXG4gICAgICAgIH07XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUF3Qk8sdUJBQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQzs7OztBQUtwQyxBQUFPLHVCQUFNLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDOzs7OztBQUVwRCw2QkFBb0MsTUFBZ0I7SUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDbEMsdUJBQU0sZUFBZSxHQUFHO1lBQ3BCLElBQUksRUFBRSxJQUFJO1lBQ1YsT0FBTyxFQUFFLEVBQUU7WUFDWCxRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxJQUFJO1lBQ1YsUUFBUSxFQUFFLEVBQUU7WUFDWixRQUFRLEVBQUUsSUFBSTtTQUNqQixDQUFDO1FBQ0YsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7S0FDdkU7SUFDRCxPQUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ25DOzs7OztBQUVELDBCQUEwQixNQUFnQjtJQUN0QyxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztDQUMzQjs7Ozs7O0FDaEREOzs7Ozs7QUFRQSxpQkFBd0IsT0FBa0M7SUFDdEQsT0FBTyxDQUFJLE1BQVcsRUFB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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1jb250cmliLWVtaXR0ZXIuanMubWFwIiwic291cmNlcyI6WyJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9pbnRlcm5hbC9pbnRlcm5hbHMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9kZWNvcmF0b3JzL2VtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9hY3Rpb25zL2FjdGlvbnMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5zZXJ2aWNlLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU3RhdGljIG1ldGFkYXRhIGZvciB0aGUgZW1pdHRlciBmdW5jdGlvblxuICpcbiAqIEBwcm9wZXJ0eSB0eXBlIC0gQWN0aW9uIHR5cGUgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGFjdGlvbiAtIEN1c3RvbSBhY3Rpb24gdG8gZGlzcGF0Y2ggKG9wdGlvbmFsKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJNZXRhRGF0YTxUIGV4dGVuZHMgRnVuY3Rpb24gPSBhbnk+IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBUeXBlPFQ+O1xufVxuXG4vKipcbiAqIFBsYWluIG9iamVjdCB0aGF0IGNvbnRhaW5zIGBlbWl0YCBmdW5jdGlvbiB0aGF0IGRpc3BhdGNoZXMgcGF5bG9hZFxuICpcbiAqIEBwcm9wZXJ0eSBlbWl0IC0gRnVuY3Rpb24gdGhhdCBkaXNwYXRjaGVzIHBheWxvYWQgdW5kZXIgdGhlIGhvb2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWl0dGFibGU8VCA9IGFueSwgVSA9IGFueT4ge1xuICAgIGVtaXQocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+O1xufVxuXG5leHBvcnQgY29uc3QgTUVUQV9LRVkgPSAnTkdYU19NRVRBJztcblxuLyoqXG4gKiBAY29uc3QgLSBUaGlzIGNvbnN0YW50IGlzIGEga2V5IGZvciBkZWZpbmluZyBzdGF0aWMgbWV0YWRhdGEgdXNpbmcgYEBFbWl0dGVyYFxuICovXG5leHBvcnQgY29uc3QgRU1JVFRFUl9NRVRBX0tFWSA9ICdOR1hTX0VNSVRURVJfTUVUQSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdG9yZU1ldGFkYXRhKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAoIXRhcmdldC5oYXNPd25Qcm9wZXJ0eShNRVRBX0tFWSkpIHtcbiAgICAgICAgY29uc3QgZGVmYXVsdE1ldGFkYXRhID0ge1xuICAgICAgICAgICAgbmFtZTogbnVsbCxcbiAgICAgICAgICAgIGFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHt9LFxuICAgICAgICAgICAgcGF0aDogbnVsbCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIGluc3RhbmNlOiBudWxsXG4gICAgICAgIH07XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIE1FVEFfS0VZLCB7IHZhbHVlOiBkZWZhdWx0TWV0YWRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBnZXRTdG9yZU1ldGFkYXRhKHRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIGdldFN0b3JlTWV0YWRhdGEodGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIHJldHVybiB0YXJnZXRbTUVUQV9LRVldO1xufVxuIiwiaW1wb3J0IHsgZW5zdXJlU3RvcmVNZXRhZGF0YSwgRW1pdHRlck1ldGFEYXRhLCBFTUlUVEVSX01FVEFfS0VZIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhbiBlbWl0dGVyIGluZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjb25maWd1cmluZyBzdGF0aWMgbWV0YWRhdGFcbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmb3IgZGVjb3JhdGluZyBtZXRob2RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEVtaXR0ZXIob3B0aW9ucz86IFBhcnRpYWw8RW1pdHRlck1ldGFEYXRhPik6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIDxUPih0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+KSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgdGFyZ2V0W2tleV0gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYE9ubHkgc3RhdGljIGZ1bmN0aW9ucyBjYW4gYmUgZGVjb3JhdGVkIHdpdGggQEVtaXR0ZXIoKSBkZWNvcmF0b3JgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3ltYm9sJykge1xuICAgICAgICAgICAga2V5ID0ga2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtZXRhID0gZW5zdXJlU3RvcmVNZXRhZGF0YSh0YXJnZXQpO1xuICAgICAgICBjb25zdCBhY3Rpb246IGFueSB8IHVuZGVmaW5lZCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb247XG5cbiAgICAgICAgaWYgKGFjdGlvbiAmJiB0eXBlb2YgYWN0aW9uLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbiB0eXBlIHNob3VsZCBiZSBkZWZpbmVkIGFzIGEgc3RhdGljIHByb3BlcnR5IGB0eXBlYCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdHlwZTogc3RyaW5nID0gYWN0aW9uID8gYWN0aW9uLnR5cGUgOiAoKG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlKSB8fCBgJHt0YXJnZXQubmFtZX0uJHtrZXl9YCk7XG5cbiAgICAgICAgaWYgKG1ldGEuYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgZGVjb3JhdGVkIHdpdGggc3VjaCB0eXBlIFxcYCR7dHlwZX1cXGAgYWxyZWFkeSBleGlzdHNgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFt7XG4gICAgICAgICAgICBmbjogYCR7a2V5fWAsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgfV07XG5cbiAgICAgICAgZGVzY3JpcHRvci52YWx1ZVtFTUlUVEVSX01FVEFfS0VZXSA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgfTtcblxuICAgICAgICB0YXJnZXQucHJvdG90eXBlW2tleV0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXRba2V5XS5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cbiIsIi8qKlxuICogVGhpcyBjbGFzcyBpcyB1c2VkIGFzIGEgZGVmYXVsdCBhY3Rpb24gd2hlbiB0aGUgdXNlciBkb2Vzbid0IHBhc3MgYW55IGN1c3RvbSBhY3Rpb24gYXMgYW4gYXJndW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEVtaXR0ZXJBY3Rpb248VCA9IGFueT4ge1xuICAgIC8qKlxuICAgICAqIEFjdGlvbiB0eXBlXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0eXBlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgRW1pdHRlckFjdGlvbiBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIHBheWxvYWQgLSBEYXRhIHRvIGRpc3BhdGNoXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHBheWxvYWQ/OiBUKSB7fVxufVxuIiwiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRU1JVFRFUl9NRVRBX0tFWSwgRW1pdHRhYmxlLCBFbWl0dGVyTWV0YURhdGEgfSBmcm9tICcuL2NvcmUvaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IEVtaXR0ZXJBY3Rpb24gfSBmcm9tICcuL2NvcmUvYWN0aW9ucy9hY3Rpb25zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVtaXRTdG9yZSBleHRlbmRzIFN0b3JlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gZW1pdHRlciAtIFJlZmVyZW5jZSB0byB0aGUgc3RhdGljIGZ1bmN0aW9uIGZyb20gdGhlIHN0b3JlXG4gICAgICogQHJldHVybnMgLSBBIHBsYWluIG9iamVjdCB3aXRoIGFuIGBlbWl0YCBmdW5jdGlvbiBmb3IgY2FsbGluZyBlbWl0dGVyXG4gICAgICovXG4gICAgcHVibGljIGVtaXR0ZXI8VCA9IGFueSwgVSA9IGFueT4oZW1pdHRlcjogRnVuY3Rpb24pOiBFbWl0dGFibGU8VCwgVT4ge1xuICAgICAgICBjb25zdCBlbWl0dGVyRXZlbnQ6IEVtaXR0ZXJNZXRhRGF0YSA9IGVtaXR0ZXJbRU1JVFRFUl9NRVRBX0tFWV07XG5cbiAgICAgICAgaWYgKCFlbWl0dGVyRXZlbnQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW1pdHRlciBtZXRob2RzIHNob3VsZCBiZSBkZWNvcmF0ZWQgdXNpbmcgQEVtaXR0ZXIoKSBkZWNvcmF0b3InKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlbWl0OiAocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+ID0+IHtcbiAgICAgICAgICAgICAgICBFbWl0dGVyQWN0aW9uLnR5cGUgPSBlbWl0dGVyRXZlbnQudHlwZTtcbiAgICAgICAgICAgICAgICBjb25zdCBBY3Rpb246IGFueSB8IHR5cGVvZiBFbWl0dGVyQWN0aW9uID0gZW1pdHRlckV2ZW50LmFjdGlvbiA/IGVtaXR0ZXJFdmVudC5hY3Rpb24gOiBFbWl0dGVyQWN0aW9uO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRpc3BhdGNoKG5ldyBBY3Rpb24ocGF5bG9hZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cbn1cbiIsImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEVtaXRTdG9yZSB9IGZyb20gJy4uLy4uL2VtaXQuc2VydmljZSc7XG5cbi8qKlxuICogQWxsb3dzIHRoZSBgQFBheWxvYWRFbWl0dGVyKClgIGRlY29yYXRvciB0byBnZXQgYWNjZXNzIHRvIHRoZSBESSBzdG9yZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IHtcbiAgICAvKipcbiAgICAgKiBJbmplY3RvciBmb3IgYWNjZXNzaW5nIERJXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbmplY3RvcjogSW5qZWN0b3IgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IGluc3RhbmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaW5qZWN0b3IgLSBSb290IGluamVjdG9yXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciA9IGluamVjdG9yO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBwcm9wZXJ0eSBhbmQgZGVmaW5lcyBuZXcgZ2V0dGVyXG4gKlxuICogQHBhcmFtIGVtaXR0ZXIgLSBSZWZlcmVuY2UgdG8gdGhlIHN0YXRpYyBmdW5jdGlvblxuICogQHJldHVybnMgLSBGYWN0b3J5IGZ1bmN0aW9uIGZvciBkZWNvcmF0aW5nIHByb3BlcnRpZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFBheWxvYWRFbWl0dGVyKGVtaXR0ZXI6IEZ1bmN0aW9uKTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICAgIHJldHVybiAodGFyZ2V0OiBPYmplY3QsIGtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwge1xuICAgICAgICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFlvdSd2ZSBmb3Jnb3R0ZW4gdG8gaW1wb3J0IFxcYE5neHNFbWl0UGx1Z2luTW9kdWxlXFxgYCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvcmUgPSBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IhLmdldDxFbWl0U3RvcmU+KEVtaXRTdG9yZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlLmVtaXR0ZXIoZW1pdHRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG59XG4iLCJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQYXlsb2FkRW1pdHRlckZhY3RvcnkgfSBmcm9tICcuL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXInO1xuaW1wb3J0IHsgRW1pdFN0b3JlIH0gZnJvbSAnLi9lbWl0LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnksXG4gICAgICAgIEVtaXRTdG9yZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c0VtaXRQbHVnaW5Nb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHBheWxvYWRFbWl0dGVyRmFjdG9yeTogUGF5bG9hZEVtaXR0ZXJGYWN0b3J5KSB7fVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgLSBBIHdyYXBwZXIgYXJvdW5kIGBOZ01vZHVsZWBcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hzRW1pdFBsdWdpbk1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5neHNFbWl0UGx1Z2luTW9kdWxlXG4gICAgICAgIH07XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUF3Qk8sdUJBQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQzs7OztBQUtwQyxBQUFPLHVCQUFNLGdCQUFnQixHQUFHLG1CQUFtQixDQUFDOzs7OztBQUVwRCw2QkFBb0MsTUFBZ0I7SUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDbEMsdUJBQU0sZUFBZSxHQUFHO1lBQ3BCLElBQUksRUFBRSxJQUFJO1lBQ1YsT0FBTyxFQUFFLEVBQUU7WUFDWCxRQUFRLEVBQUUsRUFBRTtZQUNaLElBQUksRUFBRSxJQUFJO1lBQ1YsUUFBUSxFQUFFLEVBQUU7WUFDWixRQUFRLEVBQUUsSUFBSTtTQUNqQixDQUFDO1FBQ0YsTUFBTSxDQUFDLGNBQWMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxDQUFDLENBQUM7S0FDdkU7SUFDRCxPQUFPLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0NBQ25DOzs7OztBQUVELDBCQUEwQixNQUFnQjtJQUN0QyxPQUFPLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztDQUMzQjs7Ozs7O0FDaEREOzs7Ozs7QUFRQSxpQkFBd0IsT0FBa0M7SUFDdEQsT0FBTyxDQUFJLE1BQVcsRUFBRSxHQUFvQixFQUFFLFVBQXNDO1FBQ2hGLElBQUksT0FBTyxVQUFVLENBQUMsS0FBSyxLQUFLLFVBQVUsSUFBSSxPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsS0FBSyxVQUFVLEVBQUU7WUFDN0UsTUFBTSxJQUFJLFNBQVMsQ0FBQyxrRUFBa0UsQ0FBQyxDQUFDO1NBQzNGO1FBRUQsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDekIsR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUN4QjtRQUVELHVCQUFNLElBQUksR0FBRyxtQkFBbUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6Qyx1QkFBTSxNQUFNLEdBQW9CLE9BQU8sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDO1FBRTFELElBQUksTUFBTSxJQUFJLE9BQU8sTUFBTSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUU7WUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQywyREFBMkQsQ0FBQyxDQUFDO1NBQ2hGO1FBRUQsdUJBQU0sSUFBSSxHQUFXLE1BQU0sR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFFbkcsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3BCLE1BQU0sSUFBSSxLQUFLLENBQUMscUNBQXFDLElBQUksbUJBQW1CLENBQUMsQ0FBQztTQUNqRjtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQztnQkFDbEIsRUFBRSxFQUFFLEdBQUcsR0FBRyxFQUFFO2dCQUNaLE9BQU8sRUFBRSxFQUFFO2dCQUNYLElBQUk7YUFDUCxDQUFDLENBQUM7UUFFSCxVQUFVLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEdBQUc7WUFDakMsSUFBSTtZQUNKLE1BQU07U0FDVCxDQUFDO1FBRUYsTUFBTSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRztZQUNwQixPQUFPLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1NBQy9DLENBQUM7S0FDTCxDQUFDO0NBQ0w7Ozs7Ozs7Ozs7QUMzQ0Q7Ozs7OztJQVdJLFlBQW1CLE9BQVc7UUFBWCxZQUFPLEdBQVAsT0FBTyxDQUFJO0tBQUk7Ozs7O3FCQVBFLElBQUk7Ozs7OztBQ1A1QyxlQVN1QixTQUFRLEtBQUs7Ozs7OztJQUt6QixPQUFPLENBQW1CLE9BQWlCO1FBQzlDLHVCQUFNLFlBQVksR0FBb0IsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFaEUsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNmLE1BQU0sSUFBSSxLQUFLLENBQUMsZ0VBQWdFLENBQUMsQ0FBQztTQUNyRjtRQUVELE9BQU87WUFDSCxJQUFJLEVBQUUsQ0FBQyxPQUFXO2dCQUNkLGFBQWEsQ0FBQyxJQUFJLEdBQUcsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDdkMsdUJBQU0sTUFBTSxHQUErQixZQUFZLENBQUMsTUFBTSxHQUFHLFlBQVksQ0FBQyxNQUFNLEdBQUcsYUFBYSxDQUFDO2dCQUNyRyxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQzthQUM3QztTQUNKLENBQUM7Ozs7WUFuQlQsVUFBVTs7Ozs7OztBQ1JYOzs7QUFRQTs7Ozs7O0lBV0ksWUFBWSxRQUFrQjtRQUMxQixxQkFBcUIsQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0tBQzdDOzs7OztpQ0FUeUMsSUFBSTs7WUFMakQsVUFBVTs7OztZQVBVLFFBQVE7Ozs7Ozs7O0FBOEI3Qix3QkFBK0IsT0FBaUI7SUFDNUMsT0FBTyxDQUFDLE1BQWMsRUFBRSxHQUFvQjtRQUN4QyxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUU7WUFDL0IsR0FBRyxFQUFFO2dCQUNELElBQUkscUJBQXFCLENBQUMsUUFBUSxLQUFLLElBQUksRUFBRTtvQkFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQyxxREFBcUQsQ0FBQyxDQUFDO2lCQUMxRTtnQkFFRCx1QkFBTSxLQUFLLHNCQUFHLHFCQUFxQixDQUFDLFFBQVEsR0FBRSxHQUFHLENBQVksU0FBUyxDQUFDLENBQUM7Z0JBQ3hFLE9BQU8sS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUNqQztTQUNKLENBQUMsQ0FBQztLQUNOLENBQUM7Q0FDTDs7Ozs7O0FDM0NEOzs7O0lBWUksWUFBWSxxQkFBNEMsS0FBSTs7OztJQUtyRCxPQUFPLE9BQU87UUFDakIsT0FBTztZQUNILFFBQVEsRUFBRSxvQkFBb0I7U0FDakMsQ0FBQzs7OztZQWZULFFBQVEsU0FBQztnQkFDTixTQUFTLEVBQUU7b0JBQ1AscUJBQXFCO29CQUNyQixTQUFTO2lCQUNaO2FBQ0o7Ozs7WUFSUSxxQkFBcUI7Ozs7Ozs7Ozs7Ozs7OzsifQ==

@@ -184,2 +184,5 @@ import { __extends } from 'tslib';

get: function () {
if (PayloadEmitterFactory.injector === null) {
throw new Error("You've forgotten to import `NgxsEmitPluginModule`");
}
var /** @type {?} */ store = /** @type {?} */ ((PayloadEmitterFactory.injector)).get(EmitStore);

@@ -237,2 +240,2 @@ return store.emitter(emitter);

//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1jb250cmliLWVtaXR0ZXIuanMubWFwIiwic291cmNlcyI6WyJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9pbnRlcm5hbC9pbnRlcm5hbHMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9kZWNvcmF0b3JzL2VtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9hY3Rpb25zL2FjdGlvbnMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5zZXJ2aWNlLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU3RhdGljIG1ldGFkYXRhIGZvciB0aGUgZW1pdHRlciBmdW5jdGlvblxuICpcbiAqIEBwcm9wZXJ0eSB0eXBlIC0gQWN0aW9uIHR5cGUgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGFjdGlvbiAtIEN1c3RvbSBhY3Rpb24gdG8gZGlzcGF0Y2ggKG9wdGlvbmFsKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJNZXRhRGF0YTxUIGV4dGVuZHMgRnVuY3Rpb24gPSBhbnk+IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBUeXBlPFQ+O1xufVxuXG4vKipcbiAqIFBsYWluIG9iamVjdCB0aGF0IGNvbnRhaW5zIGBlbWl0YCBmdW5jdGlvbiB0aGF0IGRpc3BhdGNoZXMgcGF5bG9hZFxuICpcbiAqIEBwcm9wZXJ0eSBlbWl0IC0gRnVuY3Rpb24gdGhhdCBkaXNwYXRjaGVzIHBheWxvYWQgdW5kZXIgdGhlIGhvb2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWl0dGFibGU8VCA9IGFueSwgVSA9IGFueT4ge1xuICAgIGVtaXQocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+O1xufVxuXG5leHBvcnQgY29uc3QgTUVUQV9LRVkgPSAnTkdYU19NRVRBJztcblxuLyoqXG4gKiBAY29uc3QgLSBUaGlzIGNvbnN0YW50IGlzIGEga2V5IGZvciBkZWZpbmluZyBzdGF0aWMgbWV0YWRhdGEgdXNpbmcgYEBFbWl0dGVyYFxuICovXG5leHBvcnQgY29uc3QgRU1JVFRFUl9NRVRBX0tFWSA9ICdOR1hTX0VNSVRURVJfTUVUQSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdG9yZU1ldGFkYXRhKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAoIXRhcmdldC5oYXNPd25Qcm9wZXJ0eShNRVRBX0tFWSkpIHtcbiAgICAgICAgY29uc3QgZGVmYXVsdE1ldGFkYXRhID0ge1xuICAgICAgICAgICAgbmFtZTogbnVsbCxcbiAgICAgICAgICAgIGFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHt9LFxuICAgICAgICAgICAgcGF0aDogbnVsbCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIGluc3RhbmNlOiBudWxsXG4gICAgICAgIH07XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIE1FVEFfS0VZLCB7IHZhbHVlOiBkZWZhdWx0TWV0YWRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBnZXRTdG9yZU1ldGFkYXRhKHRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIGdldFN0b3JlTWV0YWRhdGEodGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIHJldHVybiB0YXJnZXRbTUVUQV9LRVldO1xufVxuIiwiaW1wb3J0IHsgZW5zdXJlU3RvcmVNZXRhZGF0YSwgRW1pdHRlck1ldGFEYXRhLCBFTUlUVEVSX01FVEFfS0VZIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhbiBlbWl0dGVyIGluZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjb25maWd1cmluZyBzdGF0aWMgbWV0YWRhdGFcbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmb3IgZGVjb3JhdGluZyBtZXRob2RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEVtaXR0ZXIob3B0aW9ucz86IFBhcnRpYWw8RW1pdHRlck1ldGFEYXRhPik6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIDxUPih0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+KSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgdGFyZ2V0W2tleV0gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYE9ubHkgc3RhdGljIGZ1bmN0aW9ucyBjYW4gYmUgZGVjb3JhdGVkIHdpdGggQEVtaXR0ZXIoKSBkZWNvcmF0b3JgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3ltYm9sJykge1xuICAgICAgICAgICAga2V5ID0ga2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtZXRhID0gZW5zdXJlU3RvcmVNZXRhZGF0YSh0YXJnZXQpO1xuICAgICAgICBjb25zdCBhY3Rpb246IGFueSB8IHVuZGVmaW5lZCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb247XG5cbiAgICAgICAgaWYgKGFjdGlvbiAmJiB0eXBlb2YgYWN0aW9uLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbiB0eXBlIHNob3VsZCBiZSBkZWZpbmVkIGFzIGEgc3RhdGljIHByb3BlcnR5IGB0eXBlYCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdHlwZTogc3RyaW5nID0gYWN0aW9uID8gYWN0aW9uLnR5cGUgOiAoKG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlKSB8fCBgJHt0YXJnZXQubmFtZX0uJHtrZXl9YCk7XG5cbiAgICAgICAgaWYgKG1ldGEuYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgZGVjb3JhdGVkIHdpdGggc3VjaCB0eXBlIFxcYCR7dHlwZX1cXGAgYWxyZWFkeSBleGlzdHNgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFt7XG4gICAgICAgICAgICBmbjogYCR7a2V5fWAsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgfV07XG5cbiAgICAgICAgZGVzY3JpcHRvci52YWx1ZVtFTUlUVEVSX01FVEFfS0VZXSA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgfTtcblxuICAgICAgICB0YXJnZXQucHJvdG90eXBlW2tleV0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXRba2V5XS5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cbiIsIi8qKlxuICogVGhpcyBjbGFzcyBpcyB1c2VkIGFzIGEgZGVmYXVsdCBhY3Rpb24gd2hlbiB0aGUgdXNlciBkb2Vzbid0IHBhc3MgYW55IGN1c3RvbSBhY3Rpb24gYXMgYW4gYXJndW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEVtaXR0ZXJBY3Rpb248VCA9IGFueT4ge1xuICAgIC8qKlxuICAgICAqIEFjdGlvbiB0eXBlXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0eXBlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgRW1pdHRlckFjdGlvbiBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIHBheWxvYWQgLSBEYXRhIHRvIGRpc3BhdGNoXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHBheWxvYWQ/OiBUKSB7fVxufVxuIiwiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRU1JVFRFUl9NRVRBX0tFWSwgRW1pdHRhYmxlLCBFbWl0dGVyTWV0YURhdGEgfSBmcm9tICcuL2NvcmUvaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IEVtaXR0ZXJBY3Rpb24gfSBmcm9tICcuL2NvcmUvYWN0aW9ucy9hY3Rpb25zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVtaXRTdG9yZSBleHRlbmRzIFN0b3JlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gZW1pdHRlciAtIFJlZmVyZW5jZSB0byB0aGUgc3RhdGljIGZ1bmN0aW9uIGZyb20gdGhlIHN0b3JlXG4gICAgICogQHJldHVybnMgLSBBIHBsYWluIG9iamVjdCB3aXRoIGFuIGBlbWl0YCBmdW5jdGlvbiBmb3IgY2FsbGluZyBlbWl0dGVyXG4gICAgICovXG4gICAgcHVibGljIGVtaXR0ZXI8VCA9IGFueSwgVSA9IGFueT4oZW1pdHRlcjogRnVuY3Rpb24pOiBFbWl0dGFibGU8VCwgVT4ge1xuICAgICAgICBjb25zdCBlbWl0dGVyRXZlbnQ6IEVtaXR0ZXJNZXRhRGF0YSA9IGVtaXR0ZXJbRU1JVFRFUl9NRVRBX0tFWV07XG5cbiAgICAgICAgaWYgKCFlbWl0dGVyRXZlbnQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW1pdHRlciBtZXRob2RzIHNob3VsZCBiZSBkZWNvcmF0ZWQgdXNpbmcgQEVtaXR0ZXIoKSBkZWNvcmF0b3InKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlbWl0OiAocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+ID0+IHtcbiAgICAgICAgICAgICAgICBFbWl0dGVyQWN0aW9uLnR5cGUgPSBlbWl0dGVyRXZlbnQudHlwZTtcbiAgICAgICAgICAgICAgICBjb25zdCBBY3Rpb246IGFueSB8IHR5cGVvZiBFbWl0dGVyQWN0aW9uID0gZW1pdHRlckV2ZW50LmFjdGlvbiA/IGVtaXR0ZXJFdmVudC5hY3Rpb24gOiBFbWl0dGVyQWN0aW9uO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRpc3BhdGNoKG5ldyBBY3Rpb24ocGF5bG9hZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cbn1cbiIsImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEVtaXRTdG9yZSB9IGZyb20gJy4uLy4uL2VtaXQuc2VydmljZSc7XG5cbi8qKlxuICogQWxsb3dzIHRoZSBgQFBheWxvYWRFbWl0dGVyKClgIGRlY29yYXRvciB0byBnZXQgYWNjZXNzIHRvIHRoZSBESSBzdG9yZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IHtcbiAgICAvKipcbiAgICAgKiBJbmplY3RvciBmb3IgYWNjZXNzaW5nIERJXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbmplY3RvcjogSW5qZWN0b3IgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IGluc3RhbmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaW5qZWN0b3IgLSBSb290IGluamVjdG9yXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciA9IGluamVjdG9yO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBwcm9wZXJ0eSBhbmQgZGVmaW5lcyBuZXcgZ2V0dGVyXG4gKlxuICogQHBhcmFtIGVtaXR0ZXIgLSBSZWZlcmVuY2UgdG8gdGhlIHN0YXRpYyBmdW5jdGlvblxuICogQHJldHVybnMgLSBGYWN0b3J5IGZ1bmN0aW9uIGZvciBkZWNvcmF0aW5nIHByb3BlcnRpZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFBheWxvYWRFbWl0dGVyKGVtaXR0ZXI6IEZ1bmN0aW9uKTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICAgIHJldHVybiAodGFyZ2V0OiBPYmplY3QsIGtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwge1xuICAgICAgICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvcmUgPSBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IhLmdldDxFbWl0U3RvcmU+KEVtaXRTdG9yZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlLmVtaXR0ZXIoZW1pdHRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG59XG4iLCJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQYXlsb2FkRW1pdHRlckZhY3RvcnkgfSBmcm9tICcuL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXInO1xuaW1wb3J0IHsgRW1pdFN0b3JlIH0gZnJvbSAnLi9lbWl0LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnksXG4gICAgICAgIEVtaXRTdG9yZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c0VtaXRQbHVnaW5Nb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHBheWxvYWRFbWl0dGVyRmFjdG9yeTogUGF5bG9hZEVtaXR0ZXJGYWN0b3J5KSB7fVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgLSBBIHdyYXBwZXIgYXJvdW5kIGBOZ01vZHVsZWBcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hzRW1pdFBsdWdpbk1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5neHNFbWl0UGx1Z2luTW9kdWxlXG4gICAgICAgIH07XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbInRzbGliXzEuX19leHRlbmRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQXdCTyxxQkFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDOzs7O0FBS3BDLEFBQU8scUJBQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7Ozs7O0FBRXBELDZCQUFvQyxNQUFnQjtJQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNsQyxxQkFBTSxlQUFlLEdBQUc7WUFDcEIsSUFBSSxFQUFFLElBQUk7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLFFBQVEsRUFBRSxFQUFFO1lBQ1osSUFBSSxFQUFFLElBQUk7WUFDVixRQUFRLEVBQUUsRUFBRTtZQUNaLFFBQVEsRUFBRSxJQUFJO1NBQ2pCLENBQUM7UUFDRixNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztLQUN2RTtJQUNELE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDbkM7Ozs7O0FBRUQsMEJBQTBCLE1BQWdCO0lBQ3RDLE9BQU8sTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0NBQzNCOzs7Ozs7QUNoREQ7Ozs7OztBQVFBLGlCQUF3QixPQUFrQztJQUN0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
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4cy1jb250cmliLWVtaXR0ZXIuanMubWFwIiwic291cmNlcyI6WyJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9pbnRlcm5hbC9pbnRlcm5hbHMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9kZWNvcmF0b3JzL2VtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvY29yZS9hY3Rpb25zL2FjdGlvbnMudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5zZXJ2aWNlLnRzIiwibmc6Ly9Abmd4cy1jb250cmliL2VtaXR0ZXIvbGliL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXIudHMiLCJuZzovL0BuZ3hzLWNvbnRyaWIvZW1pdHRlci9saWIvZW1pdC5tb2R1bGUudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU3RhdGljIG1ldGFkYXRhIGZvciB0aGUgZW1pdHRlciBmdW5jdGlvblxuICpcbiAqIEBwcm9wZXJ0eSB0eXBlIC0gQWN0aW9uIHR5cGUgKG9wdGlvbmFsKVxuICogQHByb3BlcnR5IGFjdGlvbiAtIEN1c3RvbSBhY3Rpb24gdG8gZGlzcGF0Y2ggKG9wdGlvbmFsKVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJNZXRhRGF0YTxUIGV4dGVuZHMgRnVuY3Rpb24gPSBhbnk+IHtcbiAgICB0eXBlOiBzdHJpbmc7XG4gICAgYWN0aW9uOiBUeXBlPFQ+O1xufVxuXG4vKipcbiAqIFBsYWluIG9iamVjdCB0aGF0IGNvbnRhaW5zIGBlbWl0YCBmdW5jdGlvbiB0aGF0IGRpc3BhdGNoZXMgcGF5bG9hZFxuICpcbiAqIEBwcm9wZXJ0eSBlbWl0IC0gRnVuY3Rpb24gdGhhdCBkaXNwYXRjaGVzIHBheWxvYWQgdW5kZXIgdGhlIGhvb2RcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFbWl0dGFibGU8VCA9IGFueSwgVSA9IGFueT4ge1xuICAgIGVtaXQocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+O1xufVxuXG5leHBvcnQgY29uc3QgTUVUQV9LRVkgPSAnTkdYU19NRVRBJztcblxuLyoqXG4gKiBAY29uc3QgLSBUaGlzIGNvbnN0YW50IGlzIGEga2V5IGZvciBkZWZpbmluZyBzdGF0aWMgbWV0YWRhdGEgdXNpbmcgYEBFbWl0dGVyYFxuICovXG5leHBvcnQgY29uc3QgRU1JVFRFUl9NRVRBX0tFWSA9ICdOR1hTX0VNSVRURVJfTUVUQSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVTdG9yZU1ldGFkYXRhKHRhcmdldDogRnVuY3Rpb24pIHtcbiAgICBpZiAoIXRhcmdldC5oYXNPd25Qcm9wZXJ0eShNRVRBX0tFWSkpIHtcbiAgICAgICAgY29uc3QgZGVmYXVsdE1ldGFkYXRhID0ge1xuICAgICAgICAgICAgbmFtZTogbnVsbCxcbiAgICAgICAgICAgIGFjdGlvbnM6IHt9LFxuICAgICAgICAgICAgZGVmYXVsdHM6IHt9LFxuICAgICAgICAgICAgcGF0aDogbnVsbCxcbiAgICAgICAgICAgIGNoaWxkcmVuOiBbXSxcbiAgICAgICAgICAgIGluc3RhbmNlOiBudWxsXG4gICAgICAgIH07XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIE1FVEFfS0VZLCB7IHZhbHVlOiBkZWZhdWx0TWV0YWRhdGEgfSk7XG4gICAgfVxuICAgIHJldHVybiBnZXRTdG9yZU1ldGFkYXRhKHRhcmdldCk7XG59XG5cbmZ1bmN0aW9uIGdldFN0b3JlTWV0YWRhdGEodGFyZ2V0OiBGdW5jdGlvbikge1xuICAgIHJldHVybiB0YXJnZXRbTUVUQV9LRVldO1xufVxuIiwiaW1wb3J0IHsgZW5zdXJlU3RvcmVNZXRhZGF0YSwgRW1pdHRlck1ldGFEYXRhLCBFTUlUVEVSX01FVEFfS0VZIH0gZnJvbSAnLi4vaW50ZXJuYWwvaW50ZXJuYWxzJztcblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBtZXRob2Qgd2l0aCBhbiBlbWl0dGVyIGluZm9ybWF0aW9uXG4gKlxuICogQHBhcmFtIG9wdGlvbnMgLSBPcHRpb25zIGZvciBjb25maWd1cmluZyBzdGF0aWMgbWV0YWRhdGFcbiAqIEByZXR1cm5zIC0gRmFjdG9yeSBmb3IgZGVjb3JhdGluZyBtZXRob2RcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIEVtaXR0ZXIob3B0aW9ucz86IFBhcnRpYWw8RW1pdHRlck1ldGFEYXRhPik6IE1ldGhvZERlY29yYXRvciB7XG4gICAgcmV0dXJuIDxUPih0YXJnZXQ6IGFueSwga2V5OiBzdHJpbmcgfCBzeW1ib2wsIGRlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFQ+KSA9PiB7XG4gICAgICAgIGlmICh0eXBlb2YgZGVzY3JpcHRvci52YWx1ZSAhPT0gJ2Z1bmN0aW9uJyB8fCB0eXBlb2YgdGFyZ2V0W2tleV0gIT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoYE9ubHkgc3RhdGljIGZ1bmN0aW9ucyBjYW4gYmUgZGVjb3JhdGVkIHdpdGggQEVtaXR0ZXIoKSBkZWNvcmF0b3JgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0eXBlb2Yga2V5ID09PSAnc3ltYm9sJykge1xuICAgICAgICAgICAga2V5ID0ga2V5LnRvU3RyaW5nKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBtZXRhID0gZW5zdXJlU3RvcmVNZXRhZGF0YSh0YXJnZXQpO1xuICAgICAgICBjb25zdCBhY3Rpb246IGFueSB8IHVuZGVmaW5lZCA9IG9wdGlvbnMgJiYgb3B0aW9ucy5hY3Rpb247XG5cbiAgICAgICAgaWYgKGFjdGlvbiAmJiB0eXBlb2YgYWN0aW9uLnR5cGUgIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0FjdGlvbiB0eXBlIHNob3VsZCBiZSBkZWZpbmVkIGFzIGEgc3RhdGljIHByb3BlcnR5IGB0eXBlYCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdHlwZTogc3RyaW5nID0gYWN0aW9uID8gYWN0aW9uLnR5cGUgOiAoKG9wdGlvbnMgJiYgb3B0aW9ucy50eXBlKSB8fCBgJHt0YXJnZXQubmFtZX0uJHtrZXl9YCk7XG5cbiAgICAgICAgaWYgKG1ldGEuYWN0aW9uc1t0eXBlXSkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBNZXRob2QgZGVjb3JhdGVkIHdpdGggc3VjaCB0eXBlIFxcYCR7dHlwZX1cXGAgYWxyZWFkeSBleGlzdHNgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1ldGEuYWN0aW9uc1t0eXBlXSA9IFt7XG4gICAgICAgICAgICBmbjogYCR7a2V5fWAsXG4gICAgICAgICAgICBvcHRpb25zOiB7fSxcbiAgICAgICAgICAgIHR5cGVcbiAgICAgICAgfV07XG5cbiAgICAgICAgZGVzY3JpcHRvci52YWx1ZVtFTUlUVEVSX01FVEFfS0VZXSA9IHtcbiAgICAgICAgICAgIHR5cGUsXG4gICAgICAgICAgICBhY3Rpb25cbiAgICAgICAgfTtcblxuICAgICAgICB0YXJnZXQucHJvdG90eXBlW2tleV0gPSBmdW5jdGlvbigpIHtcbiAgICAgICAgICAgIHJldHVybiB0YXJnZXRba2V5XS5hcHBseSh0YXJnZXQsIGFyZ3VtZW50cyk7XG4gICAgICAgIH07XG4gICAgfTtcbn1cbiIsIi8qKlxuICogVGhpcyBjbGFzcyBpcyB1c2VkIGFzIGEgZGVmYXVsdCBhY3Rpb24gd2hlbiB0aGUgdXNlciBkb2Vzbid0IHBhc3MgYW55IGN1c3RvbSBhY3Rpb24gYXMgYW4gYXJndW1lbnRcbiAqL1xuZXhwb3J0IGNsYXNzIEVtaXR0ZXJBY3Rpb248VCA9IGFueT4ge1xuICAgIC8qKlxuICAgICAqIEFjdGlvbiB0eXBlXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyB0eXBlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgRW1pdHRlckFjdGlvbiBpbnN0YW5jZVxuICAgICAqXG4gICAgICogQHBhcmFtIHBheWxvYWQgLSBEYXRhIHRvIGRpc3BhdGNoXG4gICAgICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHBheWxvYWQ/OiBUKSB7fVxufVxuIiwiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmd4cy9zdG9yZSc7XG5cbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgRU1JVFRFUl9NRVRBX0tFWSwgRW1pdHRhYmxlLCBFbWl0dGVyTWV0YURhdGEgfSBmcm9tICcuL2NvcmUvaW50ZXJuYWwvaW50ZXJuYWxzJztcbmltcG9ydCB7IEVtaXR0ZXJBY3Rpb24gfSBmcm9tICcuL2NvcmUvYWN0aW9ucy9hY3Rpb25zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEVtaXRTdG9yZSBleHRlbmRzIFN0b3JlIHtcbiAgICAvKipcbiAgICAgKiBAcGFyYW0gZW1pdHRlciAtIFJlZmVyZW5jZSB0byB0aGUgc3RhdGljIGZ1bmN0aW9uIGZyb20gdGhlIHN0b3JlXG4gICAgICogQHJldHVybnMgLSBBIHBsYWluIG9iamVjdCB3aXRoIGFuIGBlbWl0YCBmdW5jdGlvbiBmb3IgY2FsbGluZyBlbWl0dGVyXG4gICAgICovXG4gICAgcHVibGljIGVtaXR0ZXI8VCA9IGFueSwgVSA9IGFueT4oZW1pdHRlcjogRnVuY3Rpb24pOiBFbWl0dGFibGU8VCwgVT4ge1xuICAgICAgICBjb25zdCBlbWl0dGVyRXZlbnQ6IEVtaXR0ZXJNZXRhRGF0YSA9IGVtaXR0ZXJbRU1JVFRFUl9NRVRBX0tFWV07XG5cbiAgICAgICAgaWYgKCFlbWl0dGVyRXZlbnQpIHtcbiAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignRW1pdHRlciBtZXRob2RzIHNob3VsZCBiZSBkZWNvcmF0ZWQgdXNpbmcgQEVtaXR0ZXIoKSBkZWNvcmF0b3InKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBlbWl0OiAocGF5bG9hZD86IFQpOiBPYnNlcnZhYmxlPFU+ID0+IHtcbiAgICAgICAgICAgICAgICBFbWl0dGVyQWN0aW9uLnR5cGUgPSBlbWl0dGVyRXZlbnQudHlwZTtcbiAgICAgICAgICAgICAgICBjb25zdCBBY3Rpb246IGFueSB8IHR5cGVvZiBFbWl0dGVyQWN0aW9uID0gZW1pdHRlckV2ZW50LmFjdGlvbiA/IGVtaXR0ZXJFdmVudC5hY3Rpb24gOiBFbWl0dGVyQWN0aW9uO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmRpc3BhdGNoKG5ldyBBY3Rpb24ocGF5bG9hZCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgIH1cbn1cbiIsImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEVtaXRTdG9yZSB9IGZyb20gJy4uLy4uL2VtaXQuc2VydmljZSc7XG5cbi8qKlxuICogQWxsb3dzIHRoZSBgQFBheWxvYWRFbWl0dGVyKClgIGRlY29yYXRvciB0byBnZXQgYWNjZXNzIHRvIHRoZSBESSBzdG9yZVxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IHtcbiAgICAvKipcbiAgICAgKiBJbmplY3RvciBmb3IgYWNjZXNzaW5nIERJXG4gICAgICovXG4gICAgcHVibGljIHN0YXRpYyBpbmplY3RvcjogSW5qZWN0b3IgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgUGF5bG9hZEVtaXR0ZXJGYWN0b3J5IGluc3RhbmNlXG4gICAgICpcbiAgICAgKiBAcGFyYW0gaW5qZWN0b3IgLSBSb290IGluamVjdG9yXG4gICAgICovXG4gICAgY29uc3RydWN0b3IoaW5qZWN0b3I6IEluamVjdG9yKSB7XG4gICAgICAgIFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciA9IGluamVjdG9yO1xuICAgIH1cbn1cblxuLyoqXG4gKiBEZWNvcmF0ZXMgYSBwcm9wZXJ0eSBhbmQgZGVmaW5lcyBuZXcgZ2V0dGVyXG4gKlxuICogQHBhcmFtIGVtaXR0ZXIgLSBSZWZlcmVuY2UgdG8gdGhlIHN0YXRpYyBmdW5jdGlvblxuICogQHJldHVybnMgLSBGYWN0b3J5IGZ1bmN0aW9uIGZvciBkZWNvcmF0aW5nIHByb3BlcnRpZXNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIFBheWxvYWRFbWl0dGVyKGVtaXR0ZXI6IEZ1bmN0aW9uKTogUHJvcGVydHlEZWNvcmF0b3Ige1xuICAgIHJldHVybiAodGFyZ2V0OiBPYmplY3QsIGtleTogc3RyaW5nIHwgc3ltYm9sKSA9PiB7XG4gICAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eSh0YXJnZXQsIGtleSwge1xuICAgICAgICAgICAgZ2V0OiAoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKFBheWxvYWRFbWl0dGVyRmFjdG9yeS5pbmplY3RvciA9PT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFlvdSd2ZSBmb3Jnb3R0ZW4gdG8gaW1wb3J0IFxcYE5neHNFbWl0UGx1Z2luTW9kdWxlXFxgYCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgY29uc3Qgc3RvcmUgPSBQYXlsb2FkRW1pdHRlckZhY3RvcnkuaW5qZWN0b3IhLmdldDxFbWl0U3RvcmU+KEVtaXRTdG9yZSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlLmVtaXR0ZXIoZW1pdHRlcik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH07XG59XG4iLCJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBQYXlsb2FkRW1pdHRlckZhY3RvcnkgfSBmcm9tICcuL2NvcmUvZGVjb3JhdG9ycy9wYXlsb2FkLWVtaXR0ZXInO1xuaW1wb3J0IHsgRW1pdFN0b3JlIH0gZnJvbSAnLi9lbWl0LnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIHByb3ZpZGVyczogW1xuICAgICAgICBQYXlsb2FkRW1pdHRlckZhY3RvcnksXG4gICAgICAgIEVtaXRTdG9yZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgTmd4c0VtaXRQbHVnaW5Nb2R1bGUge1xuICAgIGNvbnN0cnVjdG9yKHBheWxvYWRFbWl0dGVyRmFjdG9yeTogUGF5bG9hZEVtaXR0ZXJGYWN0b3J5KSB7fVxuXG4gICAgLyoqXG4gICAgICogQHJldHVybnMgLSBBIHdyYXBwZXIgYXJvdW5kIGBOZ01vZHVsZWBcbiAgICAgKi9cbiAgICBwdWJsaWMgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hzRW1pdFBsdWdpbk1vZHVsZT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmdNb2R1bGU6IE5neHNFbWl0UGx1Z2luTW9kdWxlXG4gICAgICAgIH07XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbInRzbGliXzEuX19leHRlbmRzIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQXdCTyxxQkFBTSxRQUFRLEdBQUcsV0FBVyxDQUFDOzs7O0FBS3BDLEFBQU8scUJBQU0sZ0JBQWdCLEdBQUcsbUJBQW1CLENBQUM7Ozs7O0FBRXBELDZCQUFvQyxNQUFnQjtJQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsRUFBRTtRQUNsQyxxQkFBTSxlQUFlLEdBQUc7WUFDcEIsSUFBSSxFQUFFLElBQUk7WUFDVixPQUFPLEVBQUUsRUFBRTtZQUNYLFFBQVEsRUFBRSxFQUFFO1lBQ1osSUFBSSxFQUFFLElBQUk7WUFDVixRQUFRLEVBQUUsRUFBRTtZQUNaLFFBQVEsRUFBRSxJQUFJO1NBQ2pCLENBQUM7UUFDRixNQUFNLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsRUFBRSxL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
{
"name": "@ngxs-contrib/emitter",
"version": "0.0.6",
"version": "0.0.7",
"peerDependencies": {

@@ -5,0 +5,0 @@ "@angular/common": "^6.0.0-rc.0 || ^6.0.0",

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

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

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc