@atom-ide-community/nuclide-commons
Advanced tools
Comparing version 0.8.2 to 0.8.3
@@ -227,2 +227,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL19zaGVsbC1xdW90ZS5qcyJdLCJuYW1lcyI6WyJleHBvcnRzIiwicXVvdGUiLCJ4cyIsIm1hcCIsInMiLCJvcCIsInJlcGxhY2UiLCJ0ZXN0IiwiU3RyaW5nIiwiam9pbiIsIkNPTlRST0wiLCJNRVRBIiwiQkFSRVdPUkQiLCJTSU5HTEVfUVVPVEUiLCJET1VCTEVfUVVPVEUiLCJUT0tFTiIsImkiLCJNYXRoIiwicG93IiwicmFuZG9tIiwidG9TdHJpbmciLCJwYXJzZSIsImVudiIsIm9wdHMiLCJtYXBwZWQiLCJyZWR1Y2UiLCJhY2MiLCJjb25jYXQiLCJzcGxpdCIsIlJlZ0V4cCIsImxlbmd0aCIsImZpbHRlciIsIkJvb2xlYW4iLCJ4IiwiSlNPTiIsImNodW5rZXIiLCJtYXRjaCIsImNvbW1lbnRlZCIsImoiLCJjaGFyQXQiLCJjb21tZW50Iiwic3Vic3RyIiwic2xpY2UiLCJTUSIsIkRRIiwiRFMiLCJCUyIsImVzY2FwZSIsImVzYyIsIm91dCIsImlzR2xvYiIsImxlbiIsImMiLCJwYXJzZUVudlZhciIsInBhdHRlcm4iLCJ2YXJlbmQiLCJ2YXJuYW1lIiwiRXJyb3IiLCJpbmRleE9mIiwiaW5kZXgiLCJnZXRWYXIiLCJwcmV2IiwiYXJnIiwidW5kZWZpbmVkIiwiXyIsInByZSIsImtleSIsInIiLCJzdHJpbmdpZnkiXSwibWFwcGluZ3MiOiI7O0FBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUNBO0FBRUFBLE9BQU8sQ0FBQ0MsS0FBUixHQUFnQixVQUFVQyxFQUFWLEVBQWM7QUFDMUIsU0FBT0EsRUFBRSxDQUFDQyxHQUFILENBQU8sVUFBVUMsQ0FBVixFQUFhO0FBQ3ZCLFFBQUlBLENBQUMsSUFBSSxPQUFPQSxDQUFQLEtBQWEsUUFBdEIsRUFBZ0M7QUFDNUIsYUFBT0EsQ0FBQyxDQUFDQyxFQUFGLENBQUtDLE9BQUwsQ0FBYSxNQUFiLEVBQXFCLE1BQXJCLENBQVA7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QUcsR0FBR2xELEtBQU4sR0FBY21CLElBQUksQ0FBQ2tDLFNBQUwsQ0FBZUQsQ0FBZixDQUFkLEdBQWtDcEQsS0FBekM7QUFDSCxLQUZELE1BR0ssT0FBT2tELEdBQUcsR0FBR0UsQ0FBYjtBQUNSO0FBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuTW9kaWZpZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vc3Vic3RhY2svbm9kZS1zaGVsbC1xdW90ZS9jb21taXQvNzJmYjVhOC5cclxuSW5jbHVkZXMgaHR0cHM6Ly9naXRodWIuY29tL3N1YnN0YWNrL25vZGUtc2hlbGwtcXVvdGUvcHVsbC8yOSwgd2l0aCBtaW5vclxyXG5tb2RpZmljYXRpb25zIHRvIHJlbW92ZSB0aGUgdW5uZWNlc3NhcnkgQXJyYXkgcG9seWZpbGxzLlxyXG5cclxuVXNlIHRoZSB0eXBlZCB3cmFwcGVycyBpbiAuL3N0cmluZy5qcyB0byBhY2Nlc3MgdGhlc2UgZnVuY3Rpb25zLlxyXG5cclxuVGhlIE1JVCBMaWNlbnNlXHJcblxyXG5Db3B5cmlnaHQgKGMpIDIwMTMgSmFtZXMgSGFsbGlkYXkgKG1haWxAc3Vic3RhY2submV0KVxyXG5cclxuUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsXHJcbnRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weSBvZiB0aGlzIHNvZnR3YXJlIGFuZFxyXG5hc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0b1xyXG5kZWFsIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmdcclxud2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksXHJcbm1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxyXG5jb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbVxyXG50aGUgU29mdHdhcmUgaXMgZnVybmlzaGVkIHRvIGRvIHNvLFxyXG5zdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcclxuXHJcblRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlXHJcbnNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxyXG5cclxuVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCxcclxuRVhQUkVTUyBPUiBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTXHJcbk9GIE1FUkNIQU5UQUJJTElUWSwgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC5cclxuSU4gTk8gRVZFTlQgU0hBTEwgVEhFIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUlxyXG5BTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIgTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCxcclxuVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSwgT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEVcclxuU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUuXHJcblxyXG5Abm9mbG93XHJcbiovXHJcblxyXG4vKiBlc2xpbnQtZGlzYWJsZSAqL1xyXG5cclxuZXhwb3J0cy5xdW90ZSA9IGZ1bmN0aW9uICh4cykge1xyXG4gICAgcmV0dXJuIHhzLm1hcChmdW5jdGlvbiAocykge1xyXG4gICAgICAgIGlmIChzICYmIHR5cGVvZiBzID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgICByZXR1cm4gcy5vcC5yZXBsYWNlKC8oLikvZywgJ1xcXFwkMScpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICgvW1wiXFxzXS8udGVzdChzKSAmJiAhLycvLnRlc3QocykpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFwiJ1wiICsgcy5yZXBsYWNlKC8oWydcXFxcXSkvZywgJ1xcXFwkMScpICsgXCInXCI7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKC9bXCInXFxzXS8udGVzdChzKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gJ1wiJyArIHMucmVwbGFjZSgvKFtcIlxcXFwkYCFdKS9nLCAnXFxcXCQxJykgKyAnXCInO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIFN0cmluZyhzKS5yZXBsYWNlKC8oWyMhXCIkJicoKSosOjs8PT4/QFxcW1xcXFxcXF1eYHt8fV0pL2csICdcXFxcJDEnKTtcclxuICAgICAgICB9XHJcbiAgICB9KS5qb2luKCcgJyk7XHJcbn07XHJcblxyXG52YXIgQ09OVFJPTCA9ICcoPzonICsgW1xyXG4gICAgJ1xcXFx8XFxcXHwnLCAnXFxcXCZcXFxcJicsICc7OycsICdcXFxcfFxcXFwmJywgJ1smOygpfDw+XSdcclxuXS5qb2luKCd8JykgKyAnKSc7XHJcbnZhciBNRVRBID0gJ3wmOygpPD4gXFxcXHQnO1xyXG52YXIgQkFSRVdPUkQgPSAnKFxcXFxcXFxcW1xcJ1wiJyArIE1FVEEgKyAnXXxbXlxcXFxzXFwnXCInICsgTUVUQSArICddKSsnO1xyXG52YXIgU0lOR0xFX1FVT1RFID0gJ1wiKChcXFxcXFxcXFwifFteXCJdKSo/KVwiJztcclxudmFyIERPVUJMRV9RVU9URSA9ICdcXCcoKFxcXFxcXFxcXFwnfFteXFwnXSkqPylcXCcnO1xyXG5cclxudmFyIFRPS0VOID0gJyc7XHJcbmZvciAodmFyIGkgPSAwOyBpIDwgNDsgaSsrKSB7XHJcbiAgICBUT0tFTiArPSAoTWF0aC5wb3coMTYsOCkqTWF0aC5yYW5kb20oKSkudG9TdHJpbmcoMTYpO1xyXG59XHJcblxyXG5leHBvcnRzLnBhcnNlID0gZnVuY3Rpb24gKHMsIGVudiwgb3B0cykge1xyXG4gICAgdmFyIG1hcHBlZCA9IHBhcnNlKHMsIGVudiwgb3B0cyk7XHJcbiAgICBpZiAodHlwZW9mIGVudiAhPT0gJ2Z1bmN0aW9uJykgcmV0dXJuIG1hcHBlZDtcclxuICAgIHJldHVybiBtYXBwZWQucmVkdWNlKGZ1bmN0aW9uIChhY2MsIHMpIHtcclxuICAgICAgICBpZiAodHlwZW9mIHMgPT09ICdvYmplY3QnKSByZXR1cm4gYWNjLmNvbmNhdChzKTtcclxuICAgICAgICB2YXIgeHMgPSBzLnNwbGl0KFJlZ0V4cCgnKCcgKyBUT0tFTiArICcuKj8nICsgVE9LRU4gKyAnKScsICdnJykpO1xyXG4gICAgICAgIGlmICh4cy5sZW5ndGggPT09IDEpIHJldHVybiBhY2MuY29uY2F0KHhzWzBdKTtcclxuICAgICAgICByZXR1cm4gYWNjLmNvbmNhdCh4cy5maWx0ZXIoQm9vbGVhbikubWFwKGZ1bmN0aW9uICh4KSB7XHJcbiAgICAgICAgICAgIGlmIChSZWdFeHAoJ14nICsgVE9LRU4pLnRlc3QoeCkpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBKU09OLnBhcnNlKHguc3BsaXQoVE9LRU4pWzFdKTsgfVxyXG4gICAgICAgICAgICBlbHNlIHJldHVybiB4O1xyXG4gICAgICAgIH0pKTtcclxuICAgIH0sIFtdKTtcclxufTtcclxuXHJcbmZ1bmN0aW9uIHBhcnNlIChzLCBlbnYsIG9wdHMpIHtcclxuICAgIHZhciBjaHVua2VyID0gbmV3IFJlZ0V4cChbXHJcbiAgICAgICAgJygnICsgQ09OVFJPTCArICcpJywgLy8gY29udHJvbCBjaGFyc1xyXG4gICAgICAgICcoJyArIEJBUkVXT1JEICsgJ3wnICsgU0lOR0xFX1FVT1RFICsgJ3wnICsgRE9VQkxFX1FVT1RFICsgJykqJ1xyXG4gICAgXS5qb2luKCd8JyksICdnJyk7XHJcbiAgICB2YXIgbWF0Y2ggPSBzLm1hdGNoKGNodW5rZXIpLmZpbHRlcihCb29sZWFuKTtcclxuICAgIHZhciBjb21tZW50ZWQgPSBmYWxzZTtcclxuXHJcbiAgICBpZiAoIW1hdGNoKSByZXR1cm4gW107XHJcbiAgICBpZiAoIWVudikgZW52ID0ge307XHJcbiAgICBpZiAoIW9wdHMpIG9wdHMgPSB7fTtcclxuICAgIHJldHVybiBtYXRjaC5tYXAoZnVuY3Rpb24gKHMsIGopIHtcclxuICAgICAgICBpZiAoY29tbWVudGVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHMuY2hhckF0KDApID09PSAnIycpIHtcclxuICAgICAgICAgICAgY29tbWVudGVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgcmV0dXJuIHsgY29tbWVudDogcy5zdWJzdHIoMSkgKyBtYXRjaC5zbGljZShqKzEpLmpvaW4oJyAnKSB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoUmVnRXhwKCdeJyArIENPTlRST0wgKyAnJCcpLnRlc3QocykpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHsgb3A6IHMgfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEhhbmQtd3JpdHRlbiBzY2FubmVyL3BhcnNlciBmb3IgQmFzaCBxdW90aW5nIHJ1bGVzOlxyXG4gICAgICAgIC8vXHJcbiAgICAgICAgLy8gIDEuIGluc2lkZSBzaW5nbGUgcXVvdGVzLCBhbGwgY2hhcmFjdGVycyBhcmUgcHJpbnRlZCBsaXRlcmFsbHkuXHJcbiAgICAgICAgLy8gIDIuIGluc2lkZSBkb3VibGUgcXVvdGVzLCBhbGwgY2hhcmFjdGVycyBhcmUgcHJpbnRlZCBsaXRlcmFsbHlcclxuICAgICAgICAvLyAgICAgZXhjZXB0IHZhcmlhYmxlcyBwcmVmaXhlZCBieSAnJCcgYW5kIGJhY2tzbGFzaGVzIGZvbGxvd2VkIGJ5XHJcbiAgICAgICAgLy8gICAgIGVpdGhlciBhIGRvdWJsZSBxdW90ZSBvciBhbm90aGVyIGJhY2tzbGFzaC5cclxuICAgICAgICAvLyAgMy4gb3V0c2lkZSBvZiBhbnkgcXVvdGVzLCBiYWNrc2xhc2hlcyBhcmUgdHJlYXRlZCBhcyBlc2NhcGVcclxuICAgICAgICAvLyAgICAgY2hhcmFjdGVycyBhbmQgbm90IHByaW50ZWQgKHVubGVzcyB0aGV5IGFyZSB0aGVtc2VsdmVzIGVzY2FwZWQpXHJcbiAgICAgICAgLy8gIDQuIHF1b3RlIGNvbnRleHQgY2FuIHN3aXRjaCBtaWQtdG9rZW4gaWYgdGhlcmUgaXMgbm8gd2hpdGVzcGFjZVxyXG4gICAgICAgIC8vICAgICBiZXR3ZWVuIHRoZSB0d28gcXVvdGUgY29udGV4dHMgKGUuZy4gYWxsJ29uZSdcInRva2VuXCIgcGFyc2VzIGFzXHJcbiAgICAgICAgLy8gICAgIFwiYWxsb25ldG9rZW5cIilcclxuICAgICAgICB2YXIgU1EgPSBcIidcIjtcclxuICAgICAgICB2YXIgRFEgPSAnXCInO1xyXG4gICAgICAgIHZhciBEUyA9ICckJztcclxuICAgICAgICB2YXIgQlMgPSBvcHRzLmVzY2FwZSB8fCAnXFxcXCc7XHJcbiAgICAgICAgdmFyIHF1b3RlID0gZmFsc2U7XHJcbiAgICAgICAgdmFyIGVzYyA9IGZhbHNlO1xyXG4gICAgICAgIHZhciBvdXQgPSAnJztcclxuICAgICAgICB2YXIgaXNHbG9iID0gZmFsc2U7XHJcblxyXG4gICAgICAgIGZvciAodmFyIGkgPSAwLCBsZW4gPSBzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIHZhciBjID0gcy5jaGFyQXQoaSk7XHJcbiAgICAgICAgICAgIGlzR2xvYiA9IGlzR2xvYiB8fCAoIXF1b3RlICYmIChjID09PSAnKicgfHwgYyA9PT0gJz8nKSk7XHJcbiAgICAgICAgICAgIGlmIChlc2MpIHtcclxuICAgICAgICAgICAgICAgIG91dCArPSBjO1xyXG4gICAgICAgICAgICAgICAgZXNjID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSBpZiAocXVvdGUpIHtcclxuICAgICAgICAgICAgICAgIGlmIChjID09PSBxdW90ZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHF1b3RlID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIGlmIChxdW90ZSA9PSBTUSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG91dCArPSBjO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgZWxzZSB7IC8vIERvdWJsZSBxdW90ZVxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChjID09PSBCUykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpICs9IDE7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGMgPSBzLmNoYXJBdChpKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGMgPT09IERRIHx8IGMgPT09IEJTIHx8IGMgPT09IERTKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdXQgKz0gYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dCArPSBCUyArIGM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSBpZiAoYyA9PT0gRFMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3V0ICs9IHBhcnNlRW52VmFyKCk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdXQgKz0gYztcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSBpZiAoYyA9PT0gRFEgfHwgYyA9PT0gU1EpIHtcclxuICAgICAgICAgICAgICAgIHF1b3RlID0gYztcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChSZWdFeHAoJ14nICsgQ09OVFJPTCArICckJykudGVzdChjKSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIHsgb3A6IHMgfTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChjID09PSBCUykge1xyXG4gICAgICAgICAgICAgICAgZXNjID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChjID09PSBEUykge1xyXG4gICAgICAgICAgICAgICAgb3V0ICs9IHBhcnNlRW52VmFyKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSBvdXQgKz0gYztcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChpc0dsb2IpIHJldHVybiB7b3A6ICdnbG9iJywgcGF0dGVybjogb3V0fTtcclxuXHJcbiAgICAgICAgcmV0dXJuIG91dDtcclxuXHJcbiAgICAgICAgZnVuY3Rpb24gcGFyc2VFbnZWYXIoKSB7XHJcbiAgICAgICAgICAgIGkgKz0gMTtcclxuICAgICAgICAgICAgdmFyIHZhcmVuZCwgdmFybmFtZTtcclxuICAgICAgICAgICAgLy9kZWJ1Z2dlclxyXG4gICAgICAgICAgICBpZiAocy5jaGFyQXQoaSkgPT09ICd7Jykge1xyXG4gICAgICAgICAgICAgICAgaSArPSAxO1xyXG4gICAgICAgICAgICAgICAgaWYgKHMuY2hhckF0KGkpID09PSAnfScpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJCYWQgc3Vic3RpdHV0aW9uOiBcIiArIHMuc3Vic3RyKGkgLSAyLCAzKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB2YXJlbmQgPSBzLmluZGV4T2YoJ30nLCBpKTtcclxuICAgICAgICAgICAgICAgIGlmICh2YXJlbmQgPCAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQmFkIHN1YnN0aXR1dGlvbjogXCIgKyBzLnN1YnN0cihpKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB2YXJuYW1lID0gcy5zdWJzdHIoaSwgdmFyZW5kIC0gaSk7XHJcbiAgICAgICAgICAgICAgICBpID0gdmFyZW5kO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKC9bKkAjPyQhX1xcLV0vLnRlc3Qocy5jaGFyQXQoaSkpKSB7XHJcbiAgICAgICAgICAgICAgICB2YXJuYW1lID0gcy5jaGFyQXQoaSk7XHJcbiAgICAgICAgICAgICAgICBpICs9IDE7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB2YXJlbmQgPSBzLnN1YnN0cihpKS5tYXRjaCgvW15cXHdcXGRfXS8pO1xyXG4gICAgICAgICAgICAgICAgaWYgKCF2YXJlbmQpIHtcclxuICAgICAgICAgICAgICAgICAgICB2YXJuYW1lID0gcy5zdWJzdHIoaSk7XHJcbiAgICAgICAgICAgICAgICAgICAgaSA9IHMubGVuZ3RoO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB2YXJuYW1lID0gcy5zdWJzdHIoaSwgdmFyZW5kLmluZGV4KTtcclxuICAgICAgICAgICAgICAgICAgICBpICs9IHZhcmVuZC5pbmRleCAtIDE7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIGdldFZhcihudWxsLCAnJywgdmFybmFtZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfSlcclxuICAgIC8vIGZpbmFsaXplIHBhcnNlZCBhcnVtZW50c1xyXG4gICAgLnJlZHVjZShmdW5jdGlvbihwcmV2LCBhcmcpe1xyXG4gICAgICAgIGlmIChhcmcgPT09IHVuZGVmaW5lZCl7XHJcbiAgICAgICAgICAgIHJldHVybiBwcmV2O1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJldi5jb25jYXQoYXJnKTtcclxuICAgIH0sW10pO1xyXG5cclxuICAgIGZ1bmN0aW9uIGdldFZhciAoXywgcHJlLCBrZXkpIHtcclxuICAgICAgICB2YXIgciA9IHR5cGVvZiBlbnYgPT09ICdmdW5jdGlvbicgPyBlbnYoa2V5KSA6IGVudltrZXldO1xyXG4gICAgICAgIGlmIChyID09PSB1bmRlZmluZWQpIHIgPSAnJztcclxuXHJcbiAgICAgICAgaWYgKHR5cGVvZiByID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgICAgICByZXR1cm4gcHJlICsgVE9LRU4gKyBKU09OLnN0cmluZ2lmeShyKSArIFRPS0VOO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIHJldHVybiBwcmUgKyByO1xyXG4gICAgfVxyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL19zaGVsbC1xdW90ZS5qcyJdLCJuYW1lcyI6WyJleHBvcnRzIiwicXVvdGUiLCJ4cyIsIm1hcCIsInMiLCJvcCIsInJlcGxhY2UiLCJ0ZXN0IiwiU3RyaW5nIiwiam9pbiIsIkNPTlRST0wiLCJNRVRBIiwiQkFSRVdPUkQiLCJTSU5HTEVfUVVPVEUiLCJET1VCTEVfUVVPVEUiLCJUT0tFTiIsImkiLCJNYXRoIiwicG93IiwicmFuZG9tIiwidG9TdHJpbmciLCJwYXJzZSIsImVudiIsIm9wdHMiLCJtYXBwZWQiLCJyZWR1Y2UiLCJhY2MiLCJjb25jYXQiLCJzcGxpdCIsIlJlZ0V4cCIsImxlbmd0aCIsImZpbHRlciIsIkJvb2xlYW4iLCJ4IiwiSlNPTiIsImNodW5rZXIiLCJtYXRjaCIsImNvbW1lbnRlZCIsImoiLCJjaGFyQXQiLCJjb21tZW50Iiwic3Vic3RyIiwic2xpY2UiLCJTUSIsIkRRIiwiRFMiLCJCUyIsImVzY2FwZSIsImVzYyIsIm91dCIsImlzR2xvYiIsImxlbiIsImMiLCJwYXJzZUVudlZhciIsInBhdHRlcm4iLCJ2YXJlbmQiLCJ2YXJuYW1lIiwiRXJyb3IiLCJpbmRleE9mIiwiaW5kZXgiLCJnZXRWYXIiLCJwcmV2IiwiYXJnIiwidW5kZWZpbmVkIiwiXyIsInByZSIsImtleSIsInIiLCJzdHJpbmdpZnkiXSwibWFwcGluZ3MiOiI7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFFQUEsT0FBTyxDQUFDQyxLQUFSLEdBQWdCLFVBQVVDLEVBQVYsRUFBYztBQUMxQixTQUFPQSxFQUFFLENBQUNDLEdBQUgsQ0FBTyxV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dUM1QyxHQUFHLENBQUM0QyxHQUFELENBQWxEO0FBQ0EsUUFBSUMsQ0FBQyxLQUFLSixTQUFWLEVBQXFCSSxDQUFDLEdBQUcsRUFBSjs7QUFFckIsUUFBSSxPQUFPQSxDQUFQLEtBQWEsUUFBakIsRUFBMkI7QUFDdkIsYUFBT0YsR0FBRyxHQUFHbEQsS0FBTixHQUFjbUIsSUFBSSxDQUFDa0MsU0FBTCxDQUFlRCxDQUFmLENBQWQsR0FBa0NwRCxLQUF6QztBQUNILEtBRkQsTUFHSyxPQUFPa0QsR0FBRyxHQUFHRSxDQUFiO0FBQ1I7QUFDSiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG5Nb2RpZmllZCBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS9zdWJzdGFjay9ub2RlLXNoZWxsLXF1b3RlL2NvbW1pdC83MmZiNWE4LlxyXG5JbmNsdWRlcyBodHRwczovL2dpdGh1Yi5jb20vc3Vic3RhY2svbm9kZS1zaGVsbC1xdW90ZS9wdWxsLzI5LCB3aXRoIG1pbm9yXHJcbm1vZGlmaWNhdGlvbnMgdG8gcmVtb3ZlIHRoZSB1bm5lY2Vzc2FyeSBBcnJheSBwb2x5ZmlsbHMuXHJcblxyXG5Vc2UgdGhlIHR5cGVkIHdyYXBwZXJzIGluIC4vc3RyaW5nLmpzIHRvIGFjY2VzcyB0aGVzZSBmdW5jdGlvbnMuXHJcblxyXG5UaGUgTUlUIExpY2Vuc2VcclxuXHJcbkNvcHlyaWdodCAoYykgMjAxMyBKYW1lcyBIYWxsaWRheSAobWFpbEBzdWJzdGFjay5uZXQpXHJcblxyXG5QZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSxcclxudG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5IG9mIHRoaXMgc29mdHdhcmUgYW5kXHJcbmFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvXHJcbmRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZ1xyXG53aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0cyB0byB1c2UsIGNvcHksIG1vZGlmeSxcclxubWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXHJcbmNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tXHJcbnRoZSBTb2Z0d2FyZSBpcyBmdXJuaXNoZWQgdG8gZG8gc28sXHJcbnN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxyXG5cclxuVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Vcclxuc2hhbGwgYmUgaW5jbHVkZWQgaW4gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXHJcblxyXG5USEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELFxyXG5FWFBSRVNTIE9SIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVNcclxuT0YgTUVSQ0hBTlRBQklMSVRZLCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULlxyXG5JTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SXHJcbkFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULFxyXG5UT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRVxyXG5TT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRSBTT0ZUV0FSRS5cclxuXHJcbkBub2Zsb3dcclxuKi9cclxuXHJcbi8qIGVzbGludC1kaXNhYmxlICovXHJcblxyXG5leHBvcnRzLnF1b3RlID0gZnVuY3Rpb24gKHhzKSB7XHJcbiAgICByZXR1cm4geHMubWFwKGZ1bmN0aW9uIChzKSB7XHJcbiAgICAgICAgaWYgKHMgJiYgdHlwZW9mIHMgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBzLm9wLnJlcGxhY2UoLyguKS9nLCAnXFxcXCQxJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKC9bXCJcXHNdLy50ZXN0KHMpICYmICEvJy8udGVzdChzKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gXCInXCIgKyBzLnJlcGxhY2UoLyhbJ1xcXFxdKS9nLCAnXFxcXCQxJykgKyBcIidcIjtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAoL1tcIidcXHNdLy50ZXN0KHMpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAnXCInICsgcy5yZXBsYWNlKC8oW1wiXFxcXCRgIV0pL2csICdcXFxcJDEnKSArICdcIic7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gU3RyaW5nKHMpLnJlcGxhY2UoLyhbIyFcIiQmJygpKiw6Ozw9Pj9AXFxbXFxcXFxcXV5ge3x9XSkvZywgJ1xcXFwkMScpO1xyXG4gICAgICAgIH1cclxuICAgIH0pLmpvaW4oJyAnKTtcclxufTtcclxuXHJcbnZhciBDT05UUk9MID0gJyg/OicgKyBbXHJcbiAgICAnXFxcXHxcXFxcfCcsICdcXFxcJlxcXFwmJywgJzs7JywgJ1xcXFx8XFxcXCYnLCAnWyY7KCl8PD5dJ1xyXG5dLmpvaW4oJ3wnKSArICcpJztcclxudmFyIE1FVEEgPSAnfCY7KCk8PiBcXFxcdCc7XHJcbnZhciBCQVJFV09SRCA9ICcoXFxcXFxcXFxbXFwnXCInICsgTUVUQSArICddfFteXFxcXHNcXCdcIicgKyBNRVRBICsgJ10pKyc7XHJcbnZhciBTSU5HTEVfUVVPVEUgPSAnXCIoKFxcXFxcXFxcXCJ8W15cIl0pKj8pXCInO1xyXG52YXIgRE9VQkxFX1FVT1RFID0gJ1xcJygoXFxcXFxcXFxcXCd8W15cXCddKSo/KVxcJyc7XHJcblxyXG52YXIgVE9LRU4gPSAnJztcclxuZm9yICh2YXIgaSA9IDA7IGkgPCA0OyBpKyspIHtcclxuICAgIFRPS0VOICs9IChNYXRoLnBvdygxNiw4KSpNYXRoLnJhbmRvbSgpKS50b1N0cmluZygxNik7XHJcbn1cclxuXHJcbmV4cG9ydHMucGFyc2UgPSBmdW5jdGlvbiAocywgZW52LCBvcHRzKSB7XHJcbiAgICB2YXIgbWFwcGVkID0gcGFyc2UocywgZW52LCBvcHRzKTtcclxuICAgIGlmICh0eXBlb2YgZW52ICE9PSAnZnVuY3Rpb24nKSByZXR1cm4gbWFwcGVkO1xyXG4gICAgcmV0dXJuIG1hcHBlZC5yZWR1Y2UoZnVuY3Rpb24gKGFjYywgcykge1xyXG4gICAgICAgIGlmICh0eXBlb2YgcyA9PT0gJ29iamVjdCcpIHJldHVybiBhY2MuY29uY2F0KHMpO1xyXG4gICAgICAgIHZhciB4cyA9IHMuc3BsaXQoUmVnRXhwKCcoJyArIFRPS0VOICsgJy4qPycgKyBUT0tFTiArICcpJywgJ2cnKSk7XHJcbiAgICAgICAgaWYgKHhzLmxlbmd0aCA9PT0gMSkgcmV0dXJuIGFjYy5jb25jYXQoeHNbMF0pO1xyXG4gICAgICAgIHJldHVybiBhY2MuY29uY2F0KHhzLmZpbHRlcihCb29sZWFuKS5tYXAoZnVuY3Rpb24gKHgpIHtcclxuICAgICAgICAgICAgaWYgKFJlZ0V4cCgnXicgKyBUT0tFTikudGVzdCh4KSkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIEpTT04ucGFyc2UoeC5zcGxpdChUT0tFTilbMV0pOyB9XHJcbiAgICAgICAgICAgIGVsc2UgcmV0dXJuIHg7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgfSwgW10pO1xyXG59O1xyXG5cclxuZnVuY3Rpb24gcGFyc2UgKHMsIGVudiwgb3B0cykge1xyXG4gICAgdmFyIGNodW5rZXIgPSBuZXcgUmVnRXhwKFtcclxuICAgICAgICAnKCcgKyBDT05UUk9MICsgJyknLCAvLyBjb250cm9sIGNoYXJzXHJcbiAgICAgICAgJygnICsgQkFSRVdPUkQgKyAnfCcgKyBTSU5HTEVfUVVPVEUgKyAnfCcgKyBET1VCTEVfUVVPVEUgKyAnKSonXHJcbiAgICBdLmpvaW4oJ3wnKSwgJ2cnKTtcclxuICAgIHZhciBtYXRjaCA9IHMubWF0Y2goY2h1bmtlcikuZmlsdGVyKEJvb2xlYW4pO1xyXG4gICAgdmFyIGNvbW1lbnRlZCA9IGZhbHNlO1xyXG5cclxuICAgIGlmICghbWF0Y2gpIHJldHVybiBbXTtcclxuICAgIGlmICghZW52KSBlbnYgPSB7fTtcclxuICAgIGlmICghb3B0cykgb3B0cyA9IHt9O1xyXG4gICAgcmV0dXJuIG1hdGNoLm1hcChmdW5jdGlvbiAocywgaikge1xyXG4gICAgICAgIGlmIChjb21tZW50ZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocy5jaGFyQXQoMCkgPT09ICcjJykge1xyXG4gICAgICAgICAgICBjb21tZW50ZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICByZXR1cm4geyBjb21tZW50OiBzLnN1YnN0cigxKSArIG1hdGNoLnNsaWNlKGorMSkuam9pbignICcpIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChSZWdFeHAoJ14nICsgQ09OVFJPTCArICckJykudGVzdChzKSkge1xyXG4gICAgICAgICAgICByZXR1cm4geyBvcDogcyB9O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSGFuZC13cml0dGVuIHNjYW5uZXIvcGFyc2VyIGZvciBCYXNoIHF1b3RpbmcgcnVsZXM6XHJcbiAgICAgICAgLy9cclxuICAgICAgICAvLyAgMS4gaW5zaWRlIHNpbmdsZSBxdW90ZXMsIGFsbCBjaGFyYWN0ZXJzIGFyZSBwcmludGVkIGxpdGVyYWxseS5cclxuICAgICAgICAvLyAgMi4gaW5zaWRlIGRvdWJsZSBxdW90ZXMsIGFsbCBjaGFyYWN0ZXJzIGFyZSBwcmludGVkIGxpdGVyYWxseVxyXG4gICAgICAgIC8vICAgICBleGNlcHQgdmFyaWFibGVzIHByZWZpeGVkIGJ5ICckJyBhbmQgYmFja3NsYXNoZXMgZm9sbG93ZWQgYnlcclxuICAgICAgICAvLyAgICAgZWl0aGVyIGEgZG91YmxlIHF1b3RlIG9yIGFub3RoZXIgYmFja3NsYXNoLlxyXG4gICAgICAgIC8vICAzLiBvdXRzaWRlIG9mIGFueSBxdW90ZXMsIGJhY2tzbGFzaGVzIGFyZSB0cmVhdGVkIGFzIGVzY2FwZVxyXG4gICAgICAgIC8vICAgICBjaGFyYWN0ZXJzIGFuZCBub3QgcHJpbnRlZCAodW5sZXNzIHRoZXkgYXJlIHRoZW1zZWx2ZXMgZXNjYXBlZClcclxuICAgICAgICAvLyAgNC4gcXVvdGUgY29udGV4dCBjYW4gc3dpdGNoIG1pZC10b2tlbiBpZiB0aGVyZSBpcyBubyB3aGl0ZXNwYWNlXHJcbiAgICAgICAgLy8gICAgIGJldHdlZW4gdGhlIHR3byBxdW90ZSBjb250ZXh0cyAoZS5nLiBhbGwnb25lJ1widG9rZW5cIiBwYXJzZXMgYXNcclxuICAgICAgICAvLyAgICAgXCJhbGxvbmV0b2tlblwiKVxyXG4gICAgICAgIHZhciBTUSA9IFwiJ1wiO1xyXG4gICAgICAgIHZhciBEUSA9ICdcIic7XHJcbiAgICAgICAgdmFyIERTID0gJyQnO1xyXG4gICAgICAgIHZhciBCUyA9IG9wdHMuZXNjYXBlIHx8ICdcXFxcJztcclxuICAgICAgICB2YXIgcXVvdGUgPSBmYWxzZTtcclxuICAgICAgICB2YXIgZXNjID0gZmFsc2U7XHJcbiAgICAgICAgdmFyIG91dCA9ICcnO1xyXG4gICAgICAgIHZhciBpc0dsb2IgPSBmYWxzZTtcclxuXHJcbiAgICAgICAgZm9yICh2YXIgaSA9IDAsIGxlbiA9IHMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgdmFyIGMgPSBzLmNoYXJBdChpKTtcclxuICAgICAgICAgICAgaXNHbG9iID0gaXNHbG9iIHx8ICghcXVvdGUgJiYgKGMgPT09ICcqJyB8fCBjID09PSAnPycpKTtcclxuICAgICAgICAgICAgaWYgKGVzYykge1xyXG4gICAgICAgICAgICAgICAgb3V0ICs9IGM7XHJcbiAgICAgICAgICAgICAgICBlc2MgPSBmYWxzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChxdW90ZSkge1xyXG4gICAgICAgICAgICAgICAgaWYgKGMgPT09IHF1b3RlKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcXVvdGUgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGVsc2UgaWYgKHF1b3RlID09IFNRKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgb3V0ICs9IGM7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBlbHNlIHsgLy8gRG91YmxlIHF1b3RlXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKGMgPT09IEJTKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGkgKz0gMTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYyA9IHMuY2hhckF0KGkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoYyA9PT0gRFEgfHwgYyA9PT0gQlMgfHwgYyA9PT0gRFMpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG91dCArPSBjO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3V0ICs9IEJTICsgYztcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChjID09PSBEUykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvdXQgKz0gcGFyc2VFbnZWYXIoKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG91dCArPSBjO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIGlmIChjID09PSBEUSB8fCBjID09PSBTUSkge1xyXG4gICAgICAgICAgICAgICAgcXVvdGUgPSBjO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKFJlZ0V4cCgnXicgKyBDT05UUk9MICsgJyQnKS50ZXN0KGMpKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4geyBvcDogcyB9O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKGMgPT09IEJTKSB7XHJcbiAgICAgICAgICAgICAgICBlc2MgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGVsc2UgaWYgKGMgPT09IERTKSB7XHJcbiAgICAgICAgICAgICAgICBvdXQgKz0gcGFyc2VFbnZWYXIoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIG91dCArPSBjO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGlzR2xvYikgcmV0dXJuIHtvcDogJ2dsb2InLCBwYXR0ZXJuOiBvdXR9O1xyXG5cclxuICAgICAgICByZXR1cm4gb3V0O1xyXG5cclxuICAgICAgICBmdW5jdGlvbiBwYXJzZUVudlZhcigpIHtcclxuICAgICAgICAgICAgaSArPSAxO1xyXG4gICAgICAgICAgICB2YXIgdmFyZW5kLCB2YXJuYW1lO1xyXG4gICAgICAgICAgICAvL2RlYnVnZ2VyXHJcbiAgICAgICAgICAgIGlmIChzLmNoYXJBdChpKSA9PT0gJ3snKSB7XHJcbiAgICAgICAgICAgICAgICBpICs9IDE7XHJcbiAgICAgICAgICAgICAgICBpZiAocy5jaGFyQXQoaSkgPT09ICd9Jykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkJhZCBzdWJzdGl0dXRpb246IFwiICsgcy5zdWJzdHIoaSAtIDIsIDMpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHZhcmVuZCA9IHMuaW5kZXhPZignfScsIGkpO1xyXG4gICAgICAgICAgICAgICAgaWYgKHZhcmVuZCA8IDApIHtcclxuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJCYWQgc3Vic3RpdHV0aW9uOiBcIiArIHMuc3Vic3RyKGkpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHZhcm5hbWUgPSBzLnN1YnN0cihpLCB2YXJlbmQgLSBpKTtcclxuICAgICAgICAgICAgICAgIGkgPSB2YXJlbmQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZSBpZiAoL1sqQCM/JCFfXFwtXS8udGVzdChzLmNoYXJBdChpKSkpIHtcclxuICAgICAgICAgICAgICAgIHZhcm5hbWUgPSBzLmNoYXJBdChpKTtcclxuICAgICAgICAgICAgICAgIGkgKz0gMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHZhcmVuZCA9IHMuc3Vic3RyKGkpLm1hdGNoKC9bXlxcd1xcZF9dLyk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXZhcmVuZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhcm5hbWUgPSBzLnN1YnN0cihpKTtcclxuICAgICAgICAgICAgICAgICAgICBpID0gcy5sZW5ndGg7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhcm5hbWUgPSBzLnN1YnN0cihpLCB2YXJlbmQuaW5kZXgpO1xyXG4gICAgICAgICAgICAgICAgICAgIGkgKz0gdmFyZW5kLmluZGV4IC0gMTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZXR1cm4gZ2V0VmFyKG51bGwsICcnLCB2YXJuYW1lKTtcclxuICAgICAgICB9XHJcbiAgICB9KVxyXG4gICAgLy8gZmluYWxpemUgcGFyc2VkIGFydW1lbnRzXHJcbiAgICAucmVkdWNlKGZ1bmN0aW9uKHByZXYsIGFyZyl7XHJcbiAgICAgICAgaWYgKGFyZyA9PT0gdW5kZWZpbmVkKXtcclxuICAgICAgICAgICAgcmV0dXJuIHByZXY7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBwcmV2LmNvbmNhdChhcmcpO1xyXG4gICAgfSxbXSk7XHJcblxyXG4gICAgZnVuY3Rpb24gZ2V0VmFyIChfLCBwcmUsIGtleSkge1xyXG4gICAgICAgIHZhciByID0gdHlwZW9mIGVudiA9PT0gJ2Z1bmN0aW9uJyA/IGVudihrZXkpIDogZW52W2tleV07XHJcbiAgICAgICAgaWYgKHIgPT09IHVuZGVmaW5lZCkgciA9ICcnO1xyXG5cclxuICAgICAgICBpZiAodHlwZW9mIHIgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBwcmUgKyBUT0tFTiArIEpTT04uc3RyaW5naWZ5KHIpICsgVE9LRU47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgcmV0dXJuIHByZSArIHI7XHJcbiAgICB9XHJcbn1cclxuIl19 |
@@ -258,2 +258,2 @@ "use strict"; | ||
exports.default = _default; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2FuYWx5dGljcy5qcyJdLCJuYW1lcyI6WyJyYXdBbmFseXRpY3NTZXJ2aWNlIiwidHJhY2siLCJpc1RyYWNrU3VwcG9ydGVkIiwic2V0QXBwbGljYXRpb25TZXNzaW9uT2JzZXJ2YWJsZSIsIm9iIiwiZXZlbnROYW1lIiwidmFsdWVzIiwidHJhY2tJbW1lZGlhdGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRyYWNrRXZlbnQiLCJldmVudCIsInR5cGUiLCJkYXRhIiwidHJhY2tFdmVudHMiLCJldmVudHMiLCJVbml2ZXJzYWxEaXNwb3NhYmxlIiwic3Vic2NyaWJlIiwidHJhY2tTYW1wbGVkIiwic2FtcGxlUmF0ZSIsIk1hdGgiLCJyYW5kb20iLCJzYW1wbGVfcmF0ZSIsIlBFUkZPUk1BTkNFX0VWRU5UIiwiY2FuTWVhc3VyZSIsInBlcmZvcm1hbmNlIiwiVGltaW5nVHJhY2tlciIsImNvbnN0cnVjdG9yIiwiX2V2ZW50TmFtZSIsIl9zdGFydFRpbWUiLCJfc3RhcnRNYXJrIiwiX3ZhbHVlcyIsImV2ZW50Q291bnQiLCJtYXJrIiwib25FcnJvciIsImVycm9yIiwiX3RyYWNrVGltaW5nRXZlbnQiLCJvbkNhbmNlbCIsIm9uU3VjY2VzcyIsImV4Y2VwdGlvbiIsImNhbmNlbGVkIiwibWVhc3VyZSIsImNsZWFyTWFya3MiLCJjbGVhck1lYXN1cmVzIiwiZHVyYXRpb24iLCJyb3VuZCIsInRvU3RyaW5nIiwic3RhcnRUcmFja2luZyIsInRyYWNrVGltaW5nIiwib3BlcmF0aW9uIiwidHJhY2tlciIsInJlc3VsdCIsInRoZW4iLCJ2YWx1ZSIsInJlYXNvbiIsIkVycm9yIiwicmVqZWN0IiwiZGVjb3JhdGVUcmFja1RpbWluZyIsImZuIiwibmFtZSIsImRlY29yYXRlZFRyYWNrVGltaW5nIiwiYXJncyIsImJpbmQiLCJkaXNwbGF5TmFtZSIsInRyYWNrVGltaW5nU2FtcGxlZCIsImRlY29yYXRlVHJhY2tUaW1pbmdTYW1wbGVkIiwiZGVjb3JhdGVkVHJhY2tUaW1pbmdTYW1wbGVkIiwic2V0UmF3QW5hbHl0aWNzU2VydmljZSIsImFuYWx5dGljc1NlcnZpY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFjQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQWpCQTs7Ozs7Ozs7Ozs7QUFrQ0EsSUFBSUEsbUJBQXdDLEdBQUc7QUFDN0NDLEVBQUFBLEtBQUssR0FBb0IsQ0FBRSxDQURrQjs7QUFFN0NDLEVBQUFBLGdCQUFnQixFQUFFLE1BQU0sS0FGcUI7QUFHN0NDLEVBQUFBLCtCQUErQixFQUFHQyxFQUFELElBQWlDLENBQUU7QUFIdkIsQ0FBL0M7O0FBZ0JBOzs7Ozs7O0FBT08sU0FBU0gsS0FBVCxDQUNMSSxTQURLLEVBRUxDLE1BRkssRUFHQztBQUNOTixFQUFBQSxtQkFBbUIsQ0FBQ0MsS0FBcEIsQ0FBMEJJLFNBQTFCLEVBQXFDQyxNQUFNLElBQUksRUFBL0M7QUFDRDs7QUFFTSxTQUFTSixnQkFBVCxHQUFxQztBQUMxQyxTQUFPRixtQkFBbUIsQ0FBQ0UsZ0JBQXBCLEVBQVA7QUFDRDtBQUVEOzs7Ozs7QUFJTyxTQUFTSyxjQUFULENBQ0xGLFNBREssRUFFTEMsTUFGSyxFQUdXO0FBQ2hCLFNBQ0VOLG1CQUFtQixDQUFDQyxLQUFwQixDQUEwQkksU0FBMUIsRUFBcUNDLE1BQU0sSUFBSSxFQUEvQyxFQUFtRCxJQUFuRCxLQUNBRSxPQUFPLENBQUNDLE9BQVIsRUFGRjtBQUlEO0FBRUQ7Ozs7OztBQUlPLFNBQVNDLFVBQVQsQ0FBb0JDLEtBQXBCLEVBQWdEO0FBQ3JEVixFQUFBQSxLQUFLLENBQUNVLEtBQUssQ0FBQ0MsSUFBUCxFQUFhRCxLQUFLLENBQUNFLElBQW5CLENBQUw7QUFDRDtBQUVEOzs7OztBQUdPLFNBQVNDLFdBQVQsQ0FBcUJDLE1BQXJCLEVBQXFFO0FBQzFFLFNBQU8sSUFBSUMsNEJBQUosQ0FBd0JELE1BQU0sQ0FBQ0UsU0FBUCxDQUFpQlAsVUFBakIsQ0FBeEIsQ0FBUDtB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YitCLEVBQUFBLG1CQVJhO0FBU2JRLEVBQUFBO0FBVGEsQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuaW1wb3J0IGdldERpc3BsYXlOYW1lIGZyb20gJy4vZ2V0RGlzcGxheU5hbWUnO1xyXG5pbXBvcnQgVW5pdmVyc2FsRGlzcG9zYWJsZSBmcm9tICcuL1VuaXZlcnNhbERpc3Bvc2FibGUnO1xyXG5pbXBvcnQge2lzUHJvbWlzZX0gZnJvbSAnLi9wcm9taXNlJztcclxuaW1wb3J0IHBlcmZvcm1hbmNlTm93IGZyb20gJy4vcGVyZm9ybWFuY2VOb3cnO1xyXG5cclxuZXhwb3J0IHR5cGUgU2Vzc2lvbkluZm8gPSB7XHJcbiAgaWQ6IHN0cmluZyxcclxuICBzdGFydDogbnVtYmVyLFxyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgUmF3QW5hbHl0aWNzU2VydmljZSA9IHtcclxuICB0cmFjayhcclxuICAgIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gICAgdmFsdWVzPzoge1trZXk6IHN0cmluZ106IG1peGVkfSxcclxuICAgIGltbWVkaWF0ZT86IGJvb2xlYW4sXHJcbiAgKTogP1Byb21pc2U8bWl4ZWQ+LFxyXG4gIGlzVHJhY2tTdXBwb3J0ZWQ6ICgpID0+IGJvb2xlYW4sXHJcbiAgc2V0QXBwbGljYXRpb25TZXNzaW9uT2JzZXJ2YWJsZTogKE9ic2VydmFibGU8U2Vzc2lvbkluZm8+KSA9PiB2b2lkLFxyXG59O1xyXG5cclxubGV0IHJhd0FuYWx5dGljc1NlcnZpY2U6IFJhd0FuYWx5dGljc1NlcnZpY2UgPSB7XHJcbiAgdHJhY2soKTogP1Byb21pc2U8bWl4ZWQ+IHt9LFxyXG4gIGlzVHJhY2tTdXBwb3J0ZWQ6ICgpID0+IGZhbHNlLFxyXG4gIHNldEFwcGxpY2F0aW9uU2Vzc2lvbk9ic2VydmFibGU6IChvYjogT2JzZXJ2YWJsZTxTZXNzaW9uSW5mbz4pID0+IHt9LFxyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgVHJhY2tpbmdFdmVudCA9IHtcclxuICB0eXBlOiBzdHJpbmcsXHJcbiAgZGF0YT86IE9iamVjdCxcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFRyYWNrRXZlbnQgPSB7XHJcbiAga2V5OiBzdHJpbmcsXHJcbiAgdmFsdWVzOiB7W2tleTogc3RyaW5nXTogbWl4ZWR9LFxyXG59O1xyXG5cclxuLyoqXHJcbiAqIFRyYWNrIGEgc2V0IG9mIHZhbHVlcyBhZ2FpbnN0IGEgbmFtZWQgZXZlbnQuXHJcbiAqIEFuYWx5dGljcyB3aWxsIGJlIGJhdGNoZWQgYW5kIHByb2Nlc3NlZCBhc3luY2hyb25vdXNseSBpbiB0aGUgYmFja2dyb3VuZC5cclxuICpcclxuICogQHBhcmFtIGV2ZW50TmFtZSBOYW1lIG9mIHRoZSBldmVudCB0byBiZSB0cmFja2VkLlxyXG4gKiBAcGFyYW0gdmFsdWVzIFRoZSBvYmplY3QgY29udGFpbmluZyB0aGUgZGF0YSB0byB0cmFjay5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0cmFjayhcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICB2YWx1ZXM/OiB7W2tleTogc3RyaW5nXTogbWl4ZWR9LFxyXG4pOiB2b2lkIHtcclxuICByYXdBbmFseXRpY3NTZXJ2aWNlLnRyYWNrKGV2ZW50TmFtZSwgdmFsdWVzIHx8IHt9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzVHJhY2tTdXBwb3J0ZWQoKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIHJhd0FuYWx5dGljc1NlcnZpY2UuaXNUcmFja1N1cHBvcnRlZCgpO1xyXG59XHJcblxyXG4vKipcclxuICogU2FtZSBhcyBgdHJhY2tgLCBleGNlcHQgdGhpcyBpcyBndWFyYW50ZWVkIHRvIHNlbmQgaW1tZWRpYXRlbHkuXHJcbiAqIFRoZSByZXR1cm5lZCBwcm9taXNlIHdpbGwgcmVzb2x2ZSB3aGVuIHRoZSByZXF1ZXN0IGNvbXBsZXRlcyAob3IgcmVqZWN0IG9uIGZhaWx1cmUpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrSW1tZWRpYXRlKFxyXG4gIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gIHZhbHVlcz86IHtba2V5OiBzdHJpbmddOiBtaXhlZH0sXHJcbik6IFByb21pc2U8bWl4ZWQ+IHtcclxuICByZXR1cm4gKFxyXG4gICAgcmF3QW5hbHl0aWNzU2VydmljZS50cmFjayhldmVudE5hbWUsIHZhbHVlcyB8fCB7fSwgdHJ1ZSkgfHxcclxuICAgIFByb21pc2UucmVzb2x2ZSgpXHJcbiAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFuIGFsdGVybmF0aXZlIGludGVyZmFjZSBmb3IgYHRyYWNrYCB0aGF0IGFjY2VwdHMgYSBzaW5nbGUgZXZlbnQgb2JqZWN0LiBUaGlzIGlzIHBhcnRpY3VsYXJseVxyXG4gKiB1c2VmdWwgd2hlbiBkZWFsaW5nIHdpdGggc3RyZWFtcyAoT2JzZXJ2YWJsZXMpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrRXZlbnQoZXZlbnQ6IFRyYWNraW5nRXZlbnQpOiB2b2lkIHtcclxuICB0cmFjayhldmVudC50eXBlLCBldmVudC5kYXRhKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRyYWNrIGVhY2ggZXZlbnQgaW4gYSBzdHJlYW0gb2YgVHJhY2tpbmdFdmVudHMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdHJhY2tFdmVudHMoZXZlbnRzOiBPYnNlcnZhYmxlPFRyYWNraW5nRXZlbnQ+KTogSURpc3Bvc2FibGUge1xyXG4gIHJldHVybiBuZXcgVW5pdmVyc2FsRGlzcG9zYWJsZShldmVudHMuc3Vic2NyaWJlKHRyYWNrRXZlbnQpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEEgc2FtcGxlZCB2ZXJzaW9uIG9mIHRyYWNrIHRoYXQgb25seSB0cmFja3MgZXZlcnkgMS9zYW1wbGVSYXRlIGNhbGxzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrU2FtcGxlZChcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICBzYW1wbGVSYXRlOiBudW1iZXIsXHJcbiAgdmFsdWVzPzoge1trZXk6IHN0cmluZ106IG1peGVkfSxcclxuKTogdm9pZCB7XHJcbiAgaWYgKE1hdGgucmFuZG9tKCkgKiBzYW1wbGVSYXRlIDw9IDEpIHtcclxuICAgIHJhd0FuYWx5dGljc1NlcnZpY2UudHJhY2soZXZlbnROYW1lLCB7XHJcbiAgICAgIC4uLnZhbHVlcyxcclxuICAgICAgc2FtcGxlX3JhdGU6IHNhbXBsZVJhdGUsXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbmNvbnN0IFBFUkZPUk1BTkNFX0VWRU5UID0gJ3BlcmZvcm1hbmNlJztcclxuY29uc3QgY2FuTWVhc3VyZSA9IHR5cGVvZiBwZXJmb3JtYW5jZSAhPT0gJ3VuZGVmaW5lZCc7XHJcbmV4cG9ydCBjbGFzcyBUaW1pbmdUcmFja2VyIHtcclxuICBzdGF0aWMgZXZlbnRDb3VudCA9IDA7XHJcblxyXG4gIF9ldmVudE5hbWU6IHN0cmluZztcclxuICBfc3RhcnRUaW1lOiBudW1iZXI7XHJcbiAgX3N0YXJ0TWFyazogc3RyaW5nO1xyXG4gIF92YWx1ZXM6IHtba2V5OiBzdHJpbmddOiBtaXhlZH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKGV2ZW50TmFtZTogc3RyaW5nLCB2YWx1ZXM6IHtba2V5OiBzdHJpbmddOiBtaXhlZH0pIHtcclxuICAgIHRoaXMuX2V2ZW50TmFtZSA9IGV2ZW50TmFtZTtcclxuICAgIHRoaXMuX3N0YXJ0TWFyayA9IGAke3RoaXMuX2V2ZW50TmFtZX1fJHtUaW1pbmdUcmFja2VyLmV2ZW50Q291bnQrK31fc3RhcnRgO1xyXG4gICAgdGhpcy5fc3RhcnRUaW1lID0gcGVyZm9ybWFuY2VOb3coKTtcclxuICAgIHRoaXMuX3ZhbHVlcyA9IHZhbHVlcztcclxuICAgIGlmIChjYW5NZWFzdXJlKSB7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlZlxyXG4gICAgICBwZXJmb3JtYW5jZS5tYXJrKHRoaXMuX3N0YXJ0TWFyayk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xyXG4gICAgdGhpcy5fdHJhY2tUaW1pbmdFdmVudChlcnJvcik7XHJcbiAgfVxyXG5cclxuICBvbkNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3RyYWNrVGltaW5nRXZlbnQoLyogZXJyb3IgKi8gbnVsbCwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBvblN1Y2Nlc3MoKTogdm9pZCB7XHJcbiAgICB0aGlzLl90cmFja1RpbWluZ0V2ZW50KC8qIGVycm9yICovIG51bGwpO1xyXG4gIH1cclxuXHJcbiAgX3RyYWNrVGltaW5nRXZlbnQoZXhjZXB0aW9uOiA/RXJyb3IsIGNhbmNlbGVkOiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcclxuICAgIGlmIChjYW5NZWFzdXJlKSB7XHJcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIG5vLXVuZGVmICovXHJcbiAgICAgIC8vIGNhbGwgbWVhc3VyZSB0byBhZGQgdGhpcyBpbmZvcm1hdGlvbiB0byB0aGUgZGV2dG9vbHMgdGltZWxpbmUgaW4gdGhlXHJcbiAgICAgIC8vIGNhc2UgdGhlIHByb2ZpbGVyIGlzIHJ1bm5pbmcuXHJcbiAgICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUodGhpcy5fZXZlbnROYW1lLCB0aGlzLl9zdGFydE1hcmspO1xyXG4gICAgICAvLyB0aGVuIGNsZWFyIGFsbCB0aGUgbWFya3MgYW5kIG1lYXN1cmVtZW50cyB0byBhdm9pZCBncm93aW5nIHRoZVxyXG4gICAgICAvLyBwZXJmb3JtYW5jZSBlbnRyeSBidWZmZXJcclxuICAgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcyh0aGlzLl9zdGFydE1hcmspO1xyXG4gICAgICBwZXJmb3JtYW5jZS5jbGVhck1lYXN1cmVzKHRoaXMuX2V2ZW50TmFtZSk7XHJcbiAgICAgIC8qIGVzbGludC1lbmFibGUgbm8tdW5kZWYgKi9cclxuICAgIH1cclxuXHJcbiAgICB0cmFjayhQRVJGT1JNQU5DRV9FVkVOVCwge1xyXG4gICAgICAuLi50aGlzLl92YWx1ZXMsXHJcbiAgICAgIGR1cmF0aW9uOiBNYXRoLnJvdW5kKHBlcmZvcm1hbmNlTm93KCkgLSB0aGlzLl9zdGFydFRpbWUpLnRvU3RyaW5nKCksXHJcbiAgICAgIGV2ZW50TmFtZTogdGhpcy5fZXZlbnROYW1lLFxyXG4gICAgICBlcnJvcjogZXhjZXB0aW9uID8gJzEnIDogJzAnLFxyXG4gICAgICBleGNlcHRpb246IGV4Y2VwdGlvbiA/IGV4Y2VwdGlvbi50b1N0cmluZygpIDogJycsXHJcbiAgICAgIGNhbmNlbGVkLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RhcnRUcmFja2luZyhcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICB2YWx1ZXM/OiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9LFxyXG4pOiBUaW1pbmdUcmFja2VyIHtcclxuICByZXR1cm4gbmV3IFRpbWluZ1RyYWNrZXIoZXZlbnROYW1lLCB2YWx1ZXMpO1xyXG59XHJcblxyXG4vKipcclxuICogUmVwb3J0cyBhbmFseXRpY3MgaW5jbHVkaW5nIHRpbWluZyBmb3IgYSBzaW5nbGUgb3BlcmF0aW9uLlxyXG4gKlxyXG4gKiBVc2FnZTpcclxuICpcclxuICogYW5hbHl0aWNzLnRyYWNrVGltaW5nKCdteS1wYWNrYWdlLXNvbWUtbG9uZy1vcGVyYXRpb24nICgpID0+IGRvaXQoKSk7XHJcbiAqXHJcbiAqIFJldHVybnMgKG9yIHRocm93cykgdGhlIHJlc3VsdCBvZiB0aGUgb3BlcmF0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrVGltaW5nPFQ+KFxyXG4gIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gIG9wZXJhdGlvbjogKCkgPT4gVCxcclxuICB2YWx1ZXM/OiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9LFxyXG4pOiBUIHtcclxuICBjb25zdCB0cmFja2VyID0gc3RhcnRUcmFja2luZyhldmVudE5hbWUsIHZhbHVlcyk7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSBvcGVyYXRpb24oKTtcclxuXHJcbiAgICBpZiAoaXNQcm9taXNlKHJlc3VsdCkpIHtcclxuICAgICAgLy8gQXRvbSB1c2VzIGEgZGlmZmVyZW50IFByb21pc2UgaW1wbGVtZW50YXRpb24gdGhhbiBOdWNsaWRlLCBzbyB0aGUgZm9sbG93aW5nIGlzIG5vdCB0cnVlOlxyXG4gICAgICAvLyBpbnZhcmlhbnQocmVzdWx0IGluc3RhbmNlb2YgUHJvbWlzZSk7XHJcblxyXG4gICAgICAvLyBGb3IgdGhlIG1ldGhvZCByZXR1cm5pbmcgYSBQcm9taXNlLCB0cmFjayB0aGUgdGltZSBhZnRlciB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC9yZWplY3RlZC5cclxuICAgICAgcmV0dXJuIChyZXN1bHQ6IGFueSkudGhlbihcclxuICAgICAgICB2YWx1ZSA9PiB7XHJcbiAgICAgICAgICB0cmFja2VyLm9uU3VjY2VzcygpO1xyXG4gICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcmVhc29uID0+IHtcclxuICAgICAgICAgIHRyYWNrZXIub25FcnJvcihyZWFzb24gaW5zdGFuY2VvZiBFcnJvciA/IHJlYXNvbiA6IG5ldyBFcnJvcihyZWFzb24pKTtcclxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChyZWFzb24pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0cmFja2VyLm9uU3VjY2VzcygpO1xyXG4gICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICB0cmFja2VyLm9uRXJyb3IoZXJyb3IpO1xyXG4gICAgdGhyb3cgZXJyb3I7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVUcmFja1RpbWluZzxVOiBBcnJheTwqPiwgVD4oXHJcbiAgZm46ICguLi5hcmdzOiBVKSA9PiBULFxyXG4gIHZhbHVlcz86IHtba2V5OiBzdHJpbmddOiBhbnl9ID0ge30sXHJcbik6ICguLi5hcmdzOiBVKSA9PiBUIHtcclxuICBjb25zdCBuYW1lID0gZ2V0RGlzcGxheU5hbWUoZm4pO1xyXG4gIGZ1bmN0aW9uIGRlY29yYXRlZFRyYWNrVGltaW5nKC4uLmFyZ3M6IFUpIHtcclxuICAgIHJldHVybiB0cmFja1RpbWluZyhuYW1lLCBmbi5iaW5kKHRoaXMsIC4uLmFyZ3MpLCB2YWx1ZXMpO1xyXG4gIH1cclxuICBkZWNvcmF0ZWRUcmFja1RpbWluZy5kaXNwbGF5TmFtZSA9IGB0cmFja1RpbWluZygke25hbWV9KWA7XHJcbiAgcmV0dXJuIGRlY29yYXRlZFRyYWNrVGltaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogQSBzYW1wbGVkIHZlcnNpb24gb2YgdHJhY2tUaW1pbmcgdGhhdCBvbmx5IHRyYWNrcyBldmVyeSAxL3NhbXBsZVJhdGUgY2FsbHMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdHJhY2tUaW1pbmdTYW1wbGVkPFQ+KFxyXG4gIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gIG9wZXJhdGlvbjogKCkgPT4gVCxcclxuICBzYW1wbGVSYXRlOiBudW1iZXIsXHJcbiAgdmFsdWVzPzoge1trZXk6IHN0cmluZ106IGFueX0gPSB7fSxcclxuKTogVCB7XHJcbiAgaWYgKE1hdGgucmFuZG9tKCkgKiBzYW1wbGVSYXRlIDw9IDEpIHtcclxuICAgIHJldHVybiB0cmFja1RpbWluZyhldmVudE5hbWUsIG9wZXJhdGlvbiwge1xyXG4gICAgICAuLi52YWx1ZXMsXHJcbiAgICAgIHNhbXBsZV9yYXRlOiBzYW1wbGVSYXRlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJldHVybiBvcGVyYXRpb24oKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRlY29yYXRlVHJhY2tUaW1pbmdTYW1wbGVkPFU6IEFycmF5PCo+LCBUPihcclxuICBmbjogKC4uLmFyZ3M6IFUpID0+IFQsXHJcbiAgc2FtcGxlUmF0ZTogbnVtYmVyLFxyXG4gIHZhbHVlcz86IHtba2V5OiBzdHJpbmddOiBhbnl9ID0ge30sXHJcbik6ICguLi5hcmdzOiBVKSA9PiBUIHtcclxuICBjb25zdCBuYW1lID0gZ2V0RGlzcGxheU5hbWUoZm4pO1xyXG4gIGZ1bmN0aW9uIGRlY29yYXRlZFRyYWNrVGltaW5nU2FtcGxlZCguLi5hcmdzOiBVKSB7XHJcbiAgICByZXR1cm4gdHJhY2tUaW1pbmdTYW1wbGVkKG5hbWUsIGZuLmJpbmQodGhpcywgLi4uYXJncyksIHNhbXBsZVJhdGUsIHZhbHVlcyk7XHJcbiAgfVxyXG4gIGRlY29yYXRlZFRyYWNrVGltaW5nU2FtcGxlZC5kaXNwbGF5TmFtZSA9IGB0cmFja1RpbWluZ1NhbXBsZWQoJHtuYW1lfSlgO1xyXG4gIHJldHVybiBkZWNvcmF0ZWRUcmFja1RpbWluZ1NhbXBsZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRSYXdBbmFseXRpY3NTZXJ2aWNlKFxyXG4gIGFuYWx5dGljc1NlcnZpY2U6IFJhd0FuYWx5dGljc1NlcnZpY2UsXHJcbiAgb2I6IE9ic2VydmFibGU8U2Vzc2lvbkluZm8+LFxyXG4pOiB2b2lkIHtcclxuICBhbmFseXRpY3NTZXJ2aWNlLnNldEFwcGxpY2F0aW9uU2Vzc2lvbk9ic2VydmFibGUob2IpO1xyXG4gIHJhd0FuYWx5dGljc1NlcnZpY2UgPSBhbmFseXRpY3NTZXJ2aWNlO1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCB7XHJcbiAgdHJhY2ssXHJcbiAgdHJhY2tTYW1wbGVkLFxyXG4gIHRyYWNrRXZlbnQsXHJcbiAgdHJhY2tUaW1pbmcsXHJcbiAgdHJhY2tUaW1pbmdTYW1wbGVkLFxyXG4gIHN0YXJ0VHJhY2tpbmcsXHJcbiAgVGltaW5nVHJhY2tlcixcclxuICBkZWNvcmF0ZVRyYWNrVGltaW5nLFxyXG4gIGRlY29yYXRlVHJhY2tUaW1pbmdTYW1wbGVkLFxyXG59O1xyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2FuYWx5dGljcy5qcyJdLCJuYW1lcyI6WyJyYXdBbmFseXRpY3NTZXJ2aWNlIiwidHJhY2siLCJpc1RyYWNrU3VwcG9ydGVkIiwic2V0QXBwbGljYXRpb25TZXNzaW9uT2JzZXJ2YWJsZSIsIm9iIiwiZXZlbnROYW1lIiwidmFsdWVzIiwidHJhY2tJbW1lZGlhdGUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInRyYWNrRXZlbnQiLCJldmVudCIsInR5cGUiLCJkYXRhIiwidHJhY2tFdmVudHMiLCJldmVudHMiLCJVbml2ZXJzYWxEaXNwb3NhYmxlIiwic3Vic2NyaWJlIiwidHJhY2tTYW1wbGVkIiwic2FtcGxlUmF0ZSIsIk1hdGgiLCJyYW5kb20iLCJzYW1wbGVfcmF0ZSIsIlBFUkZPUk1BTkNFX0VWRU5UIiwiY2FuTWVhc3VyZSIsInBlcmZvcm1hbmNlIiwiVGltaW5nVHJhY2tlciIsImNvbnN0cnVjdG9yIiwiX2V2ZW50TmFtZSIsIl9zdGFydFRpbWUiLCJfc3RhcnRNYXJrIiwiX3ZhbHVlcyIsImV2ZW50Q291bnQiLCJtYXJrIiwib25FcnJvciIsImVycm9yIiwiX3RyYWNrVGltaW5nRXZlbnQiLCJvbkNhbmNlbCIsIm9uU3VjY2VzcyIsImV4Y2VwdGlvbiIsImNhbmNlbGVkIiwibWVhc3VyZSIsImNsZWFyTWFya3MiLCJjbGVhck1lYXN1cmVzIiwiZHVyYXRpb24iLCJyb3VuZCIsInRvU3RyaW5nIiwic3RhcnRUcmFja2luZyIsInRyYWNrVGltaW5nIiwib3BlcmF0aW9uIiwidHJhY2tlciIsInJlc3VsdCIsInRoZW4iLCJ2YWx1ZSIsInJlYXNvbiIsIkVycm9yIiwicmVqZWN0IiwiZGVjb3JhdGVUcmFja1RpbWluZyIsImZuIiwibmFtZSIsImRlY29yYXRlZFRyYWNrVGltaW5nIiwiYXJncyIsImJpbmQiLCJkaXNwbGF5TmFtZSIsInRyYWNrVGltaW5nU2FtcGxlZCIsImRlY29yYXRlVHJhY2tUaW1pbmdTYW1wbGVkIiwiZGVjb3JhdGVkVHJhY2tUaW1pbmdTYW1wbGVkIiwic2V0UmF3QW5hbHl0aWNzU2VydmljZSIsImFuYWx5dGljc1NlcnZpY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFjQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQWpCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBd0JBLElBQUlBLG1CQUF3QyxHQUFHO0FBQzdDQyxFQUFBQSxLQUFLLEdBQW9CLENBQUUsQ0FEa0I7O0FBRTdDQyxFQUFBQSxnQkFBZ0IsRUFBRSxNQUFNLEtBRnFCO0FBRzdDQyxFQUFBQSwrQkFBK0IsRUFBR0MsRUFBRCxJQUFpQyxDQUFFO0FBSHZCLENBQS9DOztBQWdCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNILEtBQVQsQ0FDTEksU0FESyxFQUVMQyxNQUZLLEVBR0M7QUFDTk4sRUFBQUEsbUJBQW1CLENBQUNDLEtBQXBCLENBQTBCSSxTQUExQixFQUFxQ0MsTUFBTSxJQUFJLEVBQS9DO0FBQ0Q7O0FBRU0sU0FBU0osZ0JBQVQsR0FBcUM7QUFDMUMsU0FBT0YsbUJBQW1CLENBQUNFLGdCQUFwQixFQUFQO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7QUFDQTs7O0FBQ08sU0FBU0ssY0FBVCxDQUNMRixTQURLLEVBRUxDLE1BRkssRUFHVztBQUNoQixTQUNFTixtQkFBbUIsQ0FBQ0MsS0FBcEIsQ0FBMEJJLFNBQTFCLEVBQXFDQyxNQUFNLElBQUksRUFBL0MsRUFBbUQsSUFBbkQsS0FDQUUsT0FBTyxDQUFDQyxPQUFSLEVBRkY7QUFJRDtBQUVEO0FBQ0E7QUFDQTtBQUNBOzs7QUFDTyxTQUFTQyxVQUFULENBQW9CQyxLQUFwQixFQUFnRDtBQUNyRFYsRUFBQUEsS0FBSyxDQUFDVSxLQUFLLENBQUNDLElBQVAsRUFBYUQsS0FBSyxDQUFDRSxJQUFuQixDQUFMO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7OztBQUNPLFNBQVND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QXRCO0FBQ0Q7O2VBRWM7QUFDYm5FLEVBQUFBLEtBRGE7QUFFYmlCLEVBQUFBLFlBRmE7QUFHYlIsRUFBQUEsVUFIYTtBQUlic0MsRUFBQUEsV0FKYTtBQUtiZ0IsRUFBQUEsa0JBTGE7QUFNYmpCLEVBQUFBLGFBTmE7QUFPYnJCLEVBQUFBLGFBUGE7QUFRYitCLEVBQUFBLG1CQVJhO0FBU2JRLEVBQUFBO0FBVGEsQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuaW1wb3J0IGdldERpc3BsYXlOYW1lIGZyb20gJy4vZ2V0RGlzcGxheU5hbWUnO1xyXG5pbXBvcnQgVW5pdmVyc2FsRGlzcG9zYWJsZSBmcm9tICcuL1VuaXZlcnNhbERpc3Bvc2FibGUnO1xyXG5pbXBvcnQge2lzUHJvbWlzZX0gZnJvbSAnLi9wcm9taXNlJztcclxuaW1wb3J0IHBlcmZvcm1hbmNlTm93IGZyb20gJy4vcGVyZm9ybWFuY2VOb3cnO1xyXG5cclxuZXhwb3J0IHR5cGUgU2Vzc2lvbkluZm8gPSB7XHJcbiAgaWQ6IHN0cmluZyxcclxuICBzdGFydDogbnVtYmVyLFxyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgUmF3QW5hbHl0aWNzU2VydmljZSA9IHtcclxuICB0cmFjayhcclxuICAgIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gICAgdmFsdWVzPzoge1trZXk6IHN0cmluZ106IG1peGVkfSxcclxuICAgIGltbWVkaWF0ZT86IGJvb2xlYW4sXHJcbiAgKTogP1Byb21pc2U8bWl4ZWQ+LFxyXG4gIGlzVHJhY2tTdXBwb3J0ZWQ6ICgpID0+IGJvb2xlYW4sXHJcbiAgc2V0QXBwbGljYXRpb25TZXNzaW9uT2JzZXJ2YWJsZTogKE9ic2VydmFibGU8U2Vzc2lvbkluZm8+KSA9PiB2b2lkLFxyXG59O1xyXG5cclxubGV0IHJhd0FuYWx5dGljc1NlcnZpY2U6IFJhd0FuYWx5dGljc1NlcnZpY2UgPSB7XHJcbiAgdHJhY2soKTogP1Byb21pc2U8bWl4ZWQ+IHt9LFxyXG4gIGlzVHJhY2tTdXBwb3J0ZWQ6ICgpID0+IGZhbHNlLFxyXG4gIHNldEFwcGxpY2F0aW9uU2Vzc2lvbk9ic2VydmFibGU6IChvYjogT2JzZXJ2YWJsZTxTZXNzaW9uSW5mbz4pID0+IHt9LFxyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgVHJhY2tpbmdFdmVudCA9IHtcclxuICB0eXBlOiBzdHJpbmcsXHJcbiAgZGF0YT86IE9iamVjdCxcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFRyYWNrRXZlbnQgPSB7XHJcbiAga2V5OiBzdHJpbmcsXHJcbiAgdmFsdWVzOiB7W2tleTogc3RyaW5nXTogbWl4ZWR9LFxyXG59O1xyXG5cclxuLyoqXHJcbiAqIFRyYWNrIGEgc2V0IG9mIHZhbHVlcyBhZ2FpbnN0IGEgbmFtZWQgZXZlbnQuXHJcbiAqIEFuYWx5dGljcyB3aWxsIGJlIGJhdGNoZWQgYW5kIHByb2Nlc3NlZCBhc3luY2hyb25vdXNseSBpbiB0aGUgYmFja2dyb3VuZC5cclxuICpcclxuICogQHBhcmFtIGV2ZW50TmFtZSBOYW1lIG9mIHRoZSBldmVudCB0byBiZSB0cmFja2VkLlxyXG4gKiBAcGFyYW0gdmFsdWVzIFRoZSBvYmplY3QgY29udGFpbmluZyB0aGUgZGF0YSB0byB0cmFjay5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0cmFjayhcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICB2YWx1ZXM/OiB7W2tleTogc3RyaW5nXTogbWl4ZWR9LFxyXG4pOiB2b2lkIHtcclxuICByYXdBbmFseXRpY3NTZXJ2aWNlLnRyYWNrKGV2ZW50TmFtZSwgdmFsdWVzIHx8IHt9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzVHJhY2tTdXBwb3J0ZWQoKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIHJhd0FuYWx5dGljc1NlcnZpY2UuaXNUcmFja1N1cHBvcnRlZCgpO1xyXG59XHJcblxyXG4vKipcclxuICogU2FtZSBhcyBgdHJhY2tgLCBleGNlcHQgdGhpcyBpcyBndWFyYW50ZWVkIHRvIHNlbmQgaW1tZWRpYXRlbHkuXHJcbiAqIFRoZSByZXR1cm5lZCBwcm9taXNlIHdpbGwgcmVzb2x2ZSB3aGVuIHRoZSByZXF1ZXN0IGNvbXBsZXRlcyAob3IgcmVqZWN0IG9uIGZhaWx1cmUpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrSW1tZWRpYXRlKFxyXG4gIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gIHZhbHVlcz86IHtba2V5OiBzdHJpbmddOiBtaXhlZH0sXHJcbik6IFByb21pc2U8bWl4ZWQ+IHtcclxuICByZXR1cm4gKFxyXG4gICAgcmF3QW5hbHl0aWNzU2VydmljZS50cmFjayhldmVudE5hbWUsIHZhbHVlcyB8fCB7fSwgdHJ1ZSkgfHxcclxuICAgIFByb21pc2UucmVzb2x2ZSgpXHJcbiAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEFuIGFsdGVybmF0aXZlIGludGVyZmFjZSBmb3IgYHRyYWNrYCB0aGF0IGFjY2VwdHMgYSBzaW5nbGUgZXZlbnQgb2JqZWN0LiBUaGlzIGlzIHBhcnRpY3VsYXJseVxyXG4gKiB1c2VmdWwgd2hlbiBkZWFsaW5nIHdpdGggc3RyZWFtcyAoT2JzZXJ2YWJsZXMpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrRXZlbnQoZXZlbnQ6IFRyYWNraW5nRXZlbnQpOiB2b2lkIHtcclxuICB0cmFjayhldmVudC50eXBlLCBldmVudC5kYXRhKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRyYWNrIGVhY2ggZXZlbnQgaW4gYSBzdHJlYW0gb2YgVHJhY2tpbmdFdmVudHMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdHJhY2tFdmVudHMoZXZlbnRzOiBPYnNlcnZhYmxlPFRyYWNraW5nRXZlbnQ+KTogSURpc3Bvc2FibGUge1xyXG4gIHJldHVybiBuZXcgVW5pdmVyc2FsRGlzcG9zYWJsZShldmVudHMuc3Vic2NyaWJlKHRyYWNrRXZlbnQpKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEEgc2FtcGxlZCB2ZXJzaW9uIG9mIHRyYWNrIHRoYXQgb25seSB0cmFja3MgZXZlcnkgMS9zYW1wbGVSYXRlIGNhbGxzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrU2FtcGxlZChcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICBzYW1wbGVSYXRlOiBudW1iZXIsXHJcbiAgdmFsdWVzPzoge1trZXk6IHN0cmluZ106IG1peGVkfSxcclxuKTogdm9pZCB7XHJcbiAgaWYgKE1hdGgucmFuZG9tKCkgKiBzYW1wbGVSYXRlIDw9IDEpIHtcclxuICAgIHJhd0FuYWx5dGljc1NlcnZpY2UudHJhY2soZXZlbnROYW1lLCB7XHJcbiAgICAgIC4uLnZhbHVlcyxcclxuICAgICAgc2FtcGxlX3JhdGU6IHNhbXBsZVJhdGUsXHJcbiAgICB9KTtcclxuICB9XHJcbn1cclxuXHJcbmNvbnN0IFBFUkZPUk1BTkNFX0VWRU5UID0gJ3BlcmZvcm1hbmNlJztcclxuY29uc3QgY2FuTWVhc3VyZSA9IHR5cGVvZiBwZXJmb3JtYW5jZSAhPT0gJ3VuZGVmaW5lZCc7XHJcbmV4cG9ydCBjbGFzcyBUaW1pbmdUcmFja2VyIHtcclxuICBzdGF0aWMgZXZlbnRDb3VudCA9IDA7XHJcblxyXG4gIF9ldmVudE5hbWU6IHN0cmluZztcclxuICBfc3RhcnRUaW1lOiBudW1iZXI7XHJcbiAgX3N0YXJ0TWFyazogc3RyaW5nO1xyXG4gIF92YWx1ZXM6IHtba2V5OiBzdHJpbmddOiBtaXhlZH07XHJcblxyXG4gIGNvbnN0cnVjdG9yKGV2ZW50TmFtZTogc3RyaW5nLCB2YWx1ZXM6IHtba2V5OiBzdHJpbmddOiBtaXhlZH0pIHtcclxuICAgIHRoaXMuX2V2ZW50TmFtZSA9IGV2ZW50TmFtZTtcclxuICAgIHRoaXMuX3N0YXJ0TWFyayA9IGAke3RoaXMuX2V2ZW50TmFtZX1fJHtUaW1pbmdUcmFja2VyLmV2ZW50Q291bnQrK31fc3RhcnRgO1xyXG4gICAgdGhpcy5fc3RhcnRUaW1lID0gcGVyZm9ybWFuY2VOb3coKTtcclxuICAgIHRoaXMuX3ZhbHVlcyA9IHZhbHVlcztcclxuICAgIGlmIChjYW5NZWFzdXJlKSB7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bmRlZlxyXG4gICAgICBwZXJmb3JtYW5jZS5tYXJrKHRoaXMuX3N0YXJ0TWFyayk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvbkVycm9yKGVycm9yOiBFcnJvcik6IHZvaWQge1xyXG4gICAgdGhpcy5fdHJhY2tUaW1pbmdFdmVudChlcnJvcik7XHJcbiAgfVxyXG5cclxuICBvbkNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3RyYWNrVGltaW5nRXZlbnQoLyogZXJyb3IgKi8gbnVsbCwgdHJ1ZSk7XHJcbiAgfVxyXG5cclxuICBvblN1Y2Nlc3MoKTogdm9pZCB7XHJcbiAgICB0aGlzLl90cmFja1RpbWluZ0V2ZW50KC8qIGVycm9yICovIG51bGwpO1xyXG4gIH1cclxuXHJcbiAgX3RyYWNrVGltaW5nRXZlbnQoZXhjZXB0aW9uOiA/RXJyb3IsIGNhbmNlbGVkOiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcclxuICAgIGlmIChjYW5NZWFzdXJlKSB7XHJcbiAgICAgIC8qIGVzbGludC1kaXNhYmxlIG5vLXVuZGVmICovXHJcbiAgICAgIC8vIGNhbGwgbWVhc3VyZSB0byBhZGQgdGhpcyBpbmZvcm1hdGlvbiB0byB0aGUgZGV2dG9vbHMgdGltZWxpbmUgaW4gdGhlXHJcbiAgICAgIC8vIGNhc2UgdGhlIHByb2ZpbGVyIGlzIHJ1bm5pbmcuXHJcbiAgICAgIHBlcmZvcm1hbmNlLm1lYXN1cmUodGhpcy5fZXZlbnROYW1lLCB0aGlzLl9zdGFydE1hcmspO1xyXG4gICAgICAvLyB0aGVuIGNsZWFyIGFsbCB0aGUgbWFya3MgYW5kIG1lYXN1cmVtZW50cyB0byBhdm9pZCBncm93aW5nIHRoZVxyXG4gICAgICAvLyBwZXJmb3JtYW5jZSBlbnRyeSBidWZmZXJcclxuICAgICAgcGVyZm9ybWFuY2UuY2xlYXJNYXJrcyh0aGlzLl9zdGFydE1hcmspO1xyXG4gICAgICBwZXJmb3JtYW5jZS5jbGVhck1lYXN1cmVzKHRoaXMuX2V2ZW50TmFtZSk7XHJcbiAgICAgIC8qIGVzbGludC1lbmFibGUgbm8tdW5kZWYgKi9cclxuICAgIH1cclxuXHJcbiAgICB0cmFjayhQRVJGT1JNQU5DRV9FVkVOVCwge1xyXG4gICAgICAuLi50aGlzLl92YWx1ZXMsXHJcbiAgICAgIGR1cmF0aW9uOiBNYXRoLnJvdW5kKHBlcmZvcm1hbmNlTm93KCkgLSB0aGlzLl9zdGFydFRpbWUpLnRvU3RyaW5nKCksXHJcbiAgICAgIGV2ZW50TmFtZTogdGhpcy5fZXZlbnROYW1lLFxyXG4gICAgICBlcnJvcjogZXhjZXB0aW9uID8gJzEnIDogJzAnLFxyXG4gICAgICBleGNlcHRpb246IGV4Y2VwdGlvbiA/IGV4Y2VwdGlvbi50b1N0cmluZygpIDogJycsXHJcbiAgICAgIGNhbmNlbGVkLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RhcnRUcmFja2luZyhcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICB2YWx1ZXM/OiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9LFxyXG4pOiBUaW1pbmdUcmFja2VyIHtcclxuICByZXR1cm4gbmV3IFRpbWluZ1RyYWNrZXIoZXZlbnROYW1lLCB2YWx1ZXMpO1xyXG59XHJcblxyXG4vKipcclxuICogUmVwb3J0cyBhbmFseXRpY3MgaW5jbHVkaW5nIHRpbWluZyBmb3IgYSBzaW5nbGUgb3BlcmF0aW9uLlxyXG4gKlxyXG4gKiBVc2FnZTpcclxuICpcclxuICogYW5hbHl0aWNzLnRyYWNrVGltaW5nKCdteS1wYWNrYWdlLXNvbWUtbG9uZy1vcGVyYXRpb24nICgpID0+IGRvaXQoKSk7XHJcbiAqXHJcbiAqIFJldHVybnMgKG9yIHRocm93cykgdGhlIHJlc3VsdCBvZiB0aGUgb3BlcmF0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRyYWNrVGltaW5nPFQ+KFxyXG4gIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gIG9wZXJhdGlvbjogKCkgPT4gVCxcclxuICB2YWx1ZXM/OiB7W2tleTogc3RyaW5nXTogYW55fSA9IHt9LFxyXG4pOiBUIHtcclxuICBjb25zdCB0cmFja2VyID0gc3RhcnRUcmFja2luZyhldmVudE5hbWUsIHZhbHVlcyk7XHJcblxyXG4gIHRyeSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSBvcGVyYXRpb24oKTtcclxuXHJcbiAgICBpZiAoaXNQcm9taXNlKHJlc3VsdCkpIHtcclxuICAgICAgLy8gQXRvbSB1c2VzIGEgZGlmZmVyZW50IFByb21pc2UgaW1wbGVtZW50YXRpb24gdGhhbiBOdWNsaWRlLCBzbyB0aGUgZm9sbG93aW5nIGlzIG5vdCB0cnVlOlxyXG4gICAgICAvLyBpbnZhcmlhbnQocmVzdWx0IGluc3RhbmNlb2YgUHJvbWlzZSk7XHJcblxyXG4gICAgICAvLyBGb3IgdGhlIG1ldGhvZCByZXR1cm5pbmcgYSBQcm9taXNlLCB0cmFjayB0aGUgdGltZSBhZnRlciB0aGUgcHJvbWlzZSBpcyByZXNvbHZlZC9yZWplY3RlZC5cclxuICAgICAgcmV0dXJuIChyZXN1bHQ6IGFueSkudGhlbihcclxuICAgICAgICB2YWx1ZSA9PiB7XHJcbiAgICAgICAgICB0cmFja2VyLm9uU3VjY2VzcygpO1xyXG4gICAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgcmVhc29uID0+IHtcclxuICAgICAgICAgIHRyYWNrZXIub25FcnJvcihyZWFzb24gaW5zdGFuY2VvZiBFcnJvciA/IHJlYXNvbiA6IG5ldyBFcnJvcihyZWFzb24pKTtcclxuICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChyZWFzb24pO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0cmFja2VyLm9uU3VjY2VzcygpO1xyXG4gICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgfVxyXG4gIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICB0cmFja2VyLm9uRXJyb3IoZXJyb3IpO1xyXG4gICAgdGhyb3cgZXJyb3I7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVjb3JhdGVUcmFja1RpbWluZzxVOiBBcnJheTwqPiwgVD4oXHJcbiAgZm46ICguLi5hcmdzOiBVKSA9PiBULFxyXG4gIHZhbHVlcz86IHtba2V5OiBzdHJpbmddOiBhbnl9ID0ge30sXHJcbik6ICguLi5hcmdzOiBVKSA9PiBUIHtcclxuICBjb25zdCBuYW1lID0gZ2V0RGlzcGxheU5hbWUoZm4pO1xyXG4gIGZ1bmN0aW9uIGRlY29yYXRlZFRyYWNrVGltaW5nKC4uLmFyZ3M6IFUpIHtcclxuICAgIHJldHVybiB0cmFja1RpbWluZyhuYW1lLCBmbi5iaW5kKHRoaXMsIC4uLmFyZ3MpLCB2YWx1ZXMpO1xyXG4gIH1cclxuICBkZWNvcmF0ZWRUcmFja1RpbWluZy5kaXNwbGF5TmFtZSA9IGB0cmFja1RpbWluZygke25hbWV9KWA7XHJcbiAgcmV0dXJuIGRlY29yYXRlZFRyYWNrVGltaW5nO1xyXG59XHJcblxyXG4vKipcclxuICogQSBzYW1wbGVkIHZlcnNpb24gb2YgdHJhY2tUaW1pbmcgdGhhdCBvbmx5IHRyYWNrcyBldmVyeSAxL3NhbXBsZVJhdGUgY2FsbHMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gdHJhY2tUaW1pbmdTYW1wbGVkPFQ+KFxyXG4gIGV2ZW50TmFtZTogc3RyaW5nLFxyXG4gIG9wZXJhdGlvbjogKCkgPT4gVCxcclxuICBzYW1wbGVSYXRlOiBudW1iZXIsXHJcbiAgdmFsdWVzPzoge1trZXk6IHN0cmluZ106IGFueX0gPSB7fSxcclxuKTogVCB7XHJcbiAgaWYgKE1hdGgucmFuZG9tKCkgKiBzYW1wbGVSYXRlIDw9IDEpIHtcclxuICAgIHJldHVybiB0cmFja1RpbWluZyhldmVudE5hbWUsIG9wZXJhdGlvbiwge1xyXG4gICAgICAuLi52YWx1ZXMsXHJcbiAgICAgIHNhbXBsZV9yYXRlOiBzYW1wbGVSYXRlLFxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIHJldHVybiBvcGVyYXRpb24oKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRlY29yYXRlVHJhY2tUaW1pbmdTYW1wbGVkPFU6IEFycmF5PCo+LCBUPihcclxuICBmbjogKC4uLmFyZ3M6IFUpID0+IFQsXHJcbiAgc2FtcGxlUmF0ZTogbnVtYmVyLFxyXG4gIHZhbHVlcz86IHtba2V5OiBzdHJpbmddOiBhbnl9ID0ge30sXHJcbik6ICguLi5hcmdzOiBVKSA9PiBUIHtcclxuICBjb25zdCBuYW1lID0gZ2V0RGlzcGxheU5hbWUoZm4pO1xyXG4gIGZ1bmN0aW9uIGRlY29yYXRlZFRyYWNrVGltaW5nU2FtcGxlZCguLi5hcmdzOiBVKSB7XHJcbiAgICByZXR1cm4gdHJhY2tUaW1pbmdTYW1wbGVkKG5hbWUsIGZuLmJpbmQodGhpcywgLi4uYXJncyksIHNhbXBsZVJhdGUsIHZhbHVlcyk7XHJcbiAgfVxyXG4gIGRlY29yYXRlZFRyYWNrVGltaW5nU2FtcGxlZC5kaXNwbGF5TmFtZSA9IGB0cmFja1RpbWluZ1NhbXBsZWQoJHtuYW1lfSlgO1xyXG4gIHJldHVybiBkZWNvcmF0ZWRUcmFja1RpbWluZ1NhbXBsZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRSYXdBbmFseXRpY3NTZXJ2aWNlKFxyXG4gIGFuYWx5dGljc1NlcnZpY2U6IFJhd0FuYWx5dGljc1NlcnZpY2UsXHJcbiAgb2I6IE9ic2VydmFibGU8U2Vzc2lvbkluZm8+LFxyXG4pOiB2b2lkIHtcclxuICBhbmFseXRpY3NTZXJ2aWNlLnNldEFwcGxpY2F0aW9uU2Vzc2lvbk9ic2VydmFibGUob2IpO1xyXG4gIHJhd0FuYWx5dGljc1NlcnZpY2UgPSBhbmFseXRpY3NTZXJ2aWNlO1xyXG59XHJcblxyXG5leHBvcnQgZGVmYXVsdCB7XHJcbiAgdHJhY2ssXHJcbiAgdHJhY2tTYW1wbGVkLFxyXG4gIHRyYWNrRXZlbnQsXHJcbiAgdHJhY2tUaW1pbmcsXHJcbiAgdHJhY2tUaW1pbmdTYW1wbGVkLFxyXG4gIHN0YXJ0VHJhY2tpbmcsXHJcbiAgVGltaW5nVHJhY2tlcixcclxuICBkZWNvcmF0ZVRyYWNrVGltaW5nLFxyXG4gIGRlY29yYXRlVHJhY2tUaW1pbmdTYW1wbGVkLFxyXG59O1xyXG4iXX0= |
@@ -64,2 +64,2 @@ "use strict"; | ||
exports.default = BatchProcessedQueue; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0JhdGNoUHJvY2Vzc2VkUXVldWUuanMiXSwibmFtZXMiOlsiQmF0Y2hQcm9jZXNzZWRRdWV1ZSIsImNvbnN0cnVjdG9yIiwiYmF0Y2hQZXJpb2QiLCJoYW5kbGVyIiwiX2JhdGNoUGVyaW9kIiwiX2hhbmRsZXIiLCJfdGltZW91dElkIiwiX2l0ZW1zIiwiYWRkIiwiaXRlbSIsInB1c2giLCJzZXRUaW1lb3V0IiwiX2hhbmRsZUJhdGNoIiwiYmF0Y2giLCJkaXNwb3NlIiwiY2xlYXJUaW1lb3V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7O0FBY0E7QUFDQTtBQUNlLE1BQU1BLG1CQUFOLENBQTZCO0FBTTFDQyxFQUFBQSxXQUFXLENBQUNDLFdBQUQsRUFBc0JDLE9BQXRCLEVBQWdEO0FBQUEsU0FMM0RDLFlBSzJEO0FBQUEsU0FKM0RDLFFBSTJEO0FBQUEsU0FIM0RDLFVBRzJEO0FBQUEsU0FGM0RDLE1BRTJEO0FBQ3pELFNBQUtILFlBQUwsR0FBb0JGLFdBQXBCO0FBQ0EsU0FBS0csUUFBTCxHQUFnQkYsT0FBaEI7QUFDQSxTQUFLRyxVQUFMLEdBQWtCLElBQWxCO0FBQ0EsU0FBS0MsTUFBTCxHQUFjLEVBQWQ7QUFDRDs7QUFFREMsRUFBQUEsR0FBRyxDQUFDQyxJQUFELEVBQWdCO0FBQ2pCLFNBQUtGLE1BQUwsQ0FBWUcsSUFBWixDQUFpQkQsSUFBakIsRUFEaUIsQ0FFakI7OztBQUNBLFFBQUksS0FBS0gsVUFBTCxLQUFvQixJQUF4QixFQUE4QjtBQUM1QixXQUFLQSxVQUFMLEdBQWtCSyxVQUFVLENBQUMsTUFBTTtBQUNqQyxhQUFLQyxZQUFMO0FBQ0QsT0FGMkIsRUFFekIsS0FBS1IsWUFGb0IsQ0FBNUI7QUFHRDtBQUNGOztBQUVEUSxFQUFBQSxZQUFZLEdBQUc7QUFDYixTQUFLTixVQUFMLEdBQWtCLElBQWxCO0FBQ0EsVUFBTU8sS0FBSyxHQUFHLEtBQUtOLE1BQW5CO0FBQ0EsU0FBS0EsTUFBTCxHQUFjLEVBQWQ7O0FBQ0EsU0FBS0YsUUFBTCxDQUFjUSxLQUFkO0FBQ0Q7O0FBRURDLEVBQUFBLE9BQU8sR0FBUztBQUNkO0FBQ0EsUUFBSSxLQUFLUixVQUFMLEtBQW9CLElBQXhCLEVBQThCO0FBQzVCUyxNQUFBQSxZQUFZLENBQUMsS0FBS1QsVUFBTixDQUFaOztBQUNBLFdBQUtNLFlBQUw7QUFDRDtBQUNGOztBQXBDeUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuZXhwb3J0IHR5cGUgQmF0Y2hIYW5kbGVyPFQ+ID0gKGJhdGNoOiBBcnJheTxUPikgPT4gdm9pZDtcclxuXHJcbi8vIEEgUXVldWUgd2hpY2ggd2lsbCBwcm9jZXNzIGVsZW1lbnRzIGF0IGludGVydmFscywgb25seSBpZiB0aGVcclxuLy8gcXVldWUgY29udGFpbnMgYW55IGVsZW1lbnRzLlxyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBCYXRjaFByb2Nlc3NlZFF1ZXVlPFQ+IHtcclxuICBfYmF0Y2hQZXJpb2Q6IG51bWJlcjtcclxuICBfaGFuZGxlcjogQmF0Y2hIYW5kbGVyPFQ+O1xyXG4gIF90aW1lb3V0SWQ6ID9UaW1lb3V0SUQ7XHJcbiAgX2l0ZW1zOiBBcnJheTxUPjtcclxuXHJcbiAgY29uc3RydWN0b3IoYmF0Y2hQZXJpb2Q6IG51bWJlciwgaGFuZGxlcjogQmF0Y2hIYW5kbGVyPFQ+KSB7XHJcbiAgICB0aGlzLl9iYXRjaFBlcmlvZCA9IGJhdGNoUGVyaW9kO1xyXG4gICAgdGhpcy5faGFuZGxlciA9IGhhbmRsZXI7XHJcbiAgICB0aGlzLl90aW1lb3V0SWQgPSBudWxsO1xyXG4gICAgdGhpcy5faXRlbXMgPSBbXTtcclxuICB9XHJcblxyXG4gIGFkZChpdGVtOiBUKTogdm9pZCB7XHJcbiAgICB0aGlzLl9pdGVtcy5wdXNoKGl0ZW0pO1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcVxyXG4gICAgaWYgKHRoaXMuX3RpbWVvdXRJZCA9PT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl90aW1lb3V0SWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLl9oYW5kbGVCYXRjaCgpO1xyXG4gICAgICB9LCB0aGlzLl9iYXRjaFBlcmlvZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBfaGFuZGxlQmF0Y2goKSB7XHJcbiAgICB0aGlzLl90aW1lb3V0SWQgPSBudWxsO1xyXG4gICAgY29uc3QgYmF0Y2ggPSB0aGlzLl9pdGVtcztcclxuICAgIHRoaXMuX2l0ZW1zID0gW107XHJcbiAgICB0aGlzLl9oYW5kbGVyKGJhdGNoKTtcclxuICB9XHJcblxyXG4gIGRpc3Bvc2UoKTogdm9pZCB7XHJcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXHJcbiAgICBpZiAodGhpcy5fdGltZW91dElkICE9PSBudWxsKSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl90aW1lb3V0SWQpO1xyXG4gICAgICB0aGlzLl9oYW5kbGVCYXRjaCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0JhdGNoUHJvY2Vzc2VkUXVldWUuanMiXSwibmFtZXMiOlsiQmF0Y2hQcm9jZXNzZWRRdWV1ZSIsImNvbnN0cnVjdG9yIiwiYmF0Y2hQZXJpb2QiLCJoYW5kbGVyIiwiX2JhdGNoUGVyaW9kIiwiX2hhbmRsZXIiLCJfdGltZW91dElkIiwiX2l0ZW1zIiwiYWRkIiwiaXRlbSIsInB1c2giLCJzZXRUaW1lb3V0IiwiX2hhbmRsZUJhdGNoIiwiYmF0Y2giLCJkaXNwb3NlIiwiY2xlYXJUaW1lb3V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUlBO0FBQ0E7QUFDZSxNQUFNQSxtQkFBTixDQUE2QjtBQU0xQ0MsRUFBQUEsV0FBVyxDQUFDQyxXQUFELEVBQXNCQyxPQUF0QixFQUFnRDtBQUFBLFNBTDNEQyxZQUsyRDtBQUFBLFNBSjNEQyxRQUkyRDtBQUFBLFNBSDNEQyxVQUcyRDtBQUFBLFNBRjNEQyxNQUUyRDtBQUN6RCxTQUFLSCxZQUFMLEdBQW9CRixXQUFwQjtBQUNBLFNBQUtHLFFBQUwsR0FBZ0JGLE9BQWhCO0FBQ0EsU0FBS0csVUFBTCxHQUFrQixJQUFsQjtBQUNBLFNBQUtDLE1BQUwsR0FBYyxFQUFkO0FBQ0Q7O0FBRURDLEVBQUFBLEdBQUcsQ0FBQ0MsSUFBRCxFQUFnQjtBQUNqQixTQUFLRixNQUFMLENBQVlHLElBQVosQ0FBaUJELElBQWpCLEVBRGlCLENBRWpCOzs7QUFDQSxRQUFJLEtBQUtILFVBQUwsS0FBb0IsSUFBeEIsRUFBOEI7QUFDNUIsV0FBS0EsVUFBTCxHQUFrQkssVUFBVSxDQUFDLE1BQU07QUFDakMsYUFBS0MsWUFBTDtBQUNELE9BRjJCLEVBRXpCLEtBQUtSLFlBRm9CLENBQTVCO0FBR0Q7QUFDRjs7QUFFRFEsRUFBQUEsWUFBWSxHQUFHO0FBQ2IsU0FBS04sVUFBTCxHQUFrQixJQUFsQjtBQUNBLFVBQU1PLEtBQUssR0FBRyxLQUFLTixNQUFuQjtBQUNBLFNBQUtBLE1BQUwsR0FBYyxFQUFkOztBQUNBLFNBQUtGLFFBQUwsQ0FBY1EsS0FBZDtBQUNEOztBQUVEQyxFQUFBQSxPQUFPLEdBQVM7QUFDZDtBQUNBLFFBQUksS0FBS1IsVUFBTCxLQUFvQixJQUF4QixFQUE4QjtBQUM1QlMsTUFBQUEsWUFBWSxDQUFDLEtBQUtULFVBQU4sQ0FBWjs7QUFDQSxXQUFLTSxZQUFMO0FBQ0Q7QUFDRjs7QUFwQ3lDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCB0eXBlIEJhdGNoSGFuZGxlcjxUPiA9IChiYXRjaDogQXJyYXk8VD4pID0+IHZvaWQ7XHJcblxyXG4vLyBBIFF1ZXVlIHdoaWNoIHdpbGwgcHJvY2VzcyBlbGVtZW50cyBhdCBpbnRlcnZhbHMsIG9ubHkgaWYgdGhlXHJcbi8vIHF1ZXVlIGNvbnRhaW5zIGFueSBlbGVtZW50cy5cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgQmF0Y2hQcm9jZXNzZWRRdWV1ZTxUPiB7XHJcbiAgX2JhdGNoUGVyaW9kOiBudW1iZXI7XHJcbiAgX2hhbmRsZXI6IEJhdGNoSGFuZGxlcjxUPjtcclxuICBfdGltZW91dElkOiA/VGltZW91dElEO1xyXG4gIF9pdGVtczogQXJyYXk8VD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKGJhdGNoUGVyaW9kOiBudW1iZXIsIGhhbmRsZXI6IEJhdGNoSGFuZGxlcjxUPikge1xyXG4gICAgdGhpcy5fYmF0Y2hQZXJpb2QgPSBiYXRjaFBlcmlvZDtcclxuICAgIHRoaXMuX2hhbmRsZXIgPSBoYW5kbGVyO1xyXG4gICAgdGhpcy5fdGltZW91dElkID0gbnVsbDtcclxuICAgIHRoaXMuX2l0ZW1zID0gW107XHJcbiAgfVxyXG5cclxuICBhZGQoaXRlbTogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5faXRlbXMucHVzaChpdGVtKTtcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBlcWVxZXFcclxuICAgIGlmICh0aGlzLl90aW1lb3V0SWQgPT09IG51bGwpIHtcclxuICAgICAgdGhpcy5fdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5faGFuZGxlQmF0Y2goKTtcclxuICAgICAgfSwgdGhpcy5fYmF0Y2hQZXJpb2QpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgX2hhbmRsZUJhdGNoKCkge1xyXG4gICAgdGhpcy5fdGltZW91dElkID0gbnVsbDtcclxuICAgIGNvbnN0IGJhdGNoID0gdGhpcy5faXRlbXM7XHJcbiAgICB0aGlzLl9pdGVtcyA9IFtdO1xyXG4gICAgdGhpcy5faGFuZGxlcihiYXRjaCk7XHJcbiAgfVxyXG5cclxuICBkaXNwb3NlKCk6IHZvaWQge1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcVxyXG4gICAgaWYgKHRoaXMuX3RpbWVvdXRJZCAhPT0gbnVsbCkge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fdGltZW91dElkKTtcclxuICAgICAgdGhpcy5faGFuZGxlQmF0Y2goKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19 |
@@ -132,2 +132,2 @@ "use strict"; | ||
exports.DISPOSE_VALUE = DISPOSE_VALUE; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2NhY2hlLmpzIl0sIm5hbWVzIjpbIkNhY2hlIiwiY29uc3RydWN0b3IiLCJmYWN0b3J5IiwiZGlzcG9zZVZhbHVlIiwidmFsdWUiLCJfdmFsdWVzIiwiX2ZhY3RvcnkiLCJfZGlzcG9zZVZhbHVlIiwiX2VudHJpZXNTdWJqZWN0IiwiTWFwIiwiU3ViamVjdCIsImhhcyIsImtleSIsImdldCIsIm5ld1ZhbHVlIiwic2V0IiwibmV4dCIsInNldEtleXMiLCJuZXdLZXlzIiwiZXhpc3RpbmdLZXkiLCJrZXlzIiwiZGVsZXRlIiwibmV3S2V5IiwiZW50cmllcyIsInZhbHVlcyIsIm9ic2VydmVWYWx1ZXMiLCJvYnNlcnZlRW50cmllcyIsIm1hcCIsImVudHJ5IiwiT2JzZXJ2YWJsZSIsImNvbmNhdCIsImZyb20iLCJvYnNlcnZlS2V5cyIsImNsZWFyIiwiZGlzcG9zZSIsImNvbXBsZXRlIiwiRElTUE9TRV9WQUxVRSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOztBQVpBOzs7Ozs7Ozs7OztBQWNBO0FBQ08sTUFBTUEsS0FBTixDQUFnQztBQU1yQ0MsRUFBQUEsV0FBVyxDQUNUQyxPQURTLEVBRVRDLFlBQXlDLEdBQUdDLEtBQUssSUFBSSxDQUFFLENBRjlDLEVBR1Q7QUFBQSxTQVJGQyxPQVFFO0FBQUEsU0FQRkMsUUFPRTtBQUFBLFNBTkZDLGFBTUU7QUFBQSxTQUxGQyxlQUtFO0FBQ0EsU0FBS0gsT0FBTCxHQUFlLElBQUlJLEdBQUosRUFBZjtBQUNBLFNBQUtILFFBQUwsR0FBZ0JKLE9BQWhCO0FBQ0EsU0FBS0ssYUFBTCxHQUFxQkosWUFBckI7QUFDQSxTQUFLSyxlQUFMLEdBQXVCLElBQUlFLHlCQUFKLEVBQXZCO0FBQ0Q7O0FBRURDLEVBQUFBLEdBQUcsQ0FBQ0MsR0FBRCxFQUF3QjtBQUN6QixXQUFPLEtBQUtQLE9BQUwsQ0FBYU0sR0FBYixDQUFpQkMsR0FBakIsQ0FBUDtBQUNEOztBQUVEQyxF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QUEsS0FBSyxDQUFDOEIsT0FBTjtBQUNELENBRk0iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG4vLyBBIENhY2hlIG1hcHBpbmcga2V5cyB0byB2YWx1ZXMgd2hpY2ggY3JlYXRlcyBlbnRyaWVzIGFzIHRoZXkgYXJlIHJlcXVlc3RlZC5cclxuZXhwb3J0IGNsYXNzIENhY2hlPEtleVR5cGUsIFZhbHVlVHlwZT4ge1xyXG4gIF92YWx1ZXM6IE1hcDxLZXlUeXBlLCBWYWx1ZVR5cGU+O1xyXG4gIF9mYWN0b3J5OiAoa2V5OiBLZXlUeXBlKSA9PiBWYWx1ZVR5cGU7XHJcbiAgX2Rpc3Bvc2VWYWx1ZTogKHZhbHVlOiBWYWx1ZVR5cGUpID0+IG1peGVkO1xyXG4gIF9lbnRyaWVzU3ViamVjdDogU3ViamVjdDxbS2V5VHlwZSwgVmFsdWVUeXBlXT47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgZmFjdG9yeTogKGtleTogS2V5VHlwZSkgPT4gVmFsdWVUeXBlLFxyXG4gICAgZGlzcG9zZVZhbHVlOiAodmFsdWU6IFZhbHVlVHlwZSkgPT4gbWl4ZWQgPSB2YWx1ZSA9PiB7fSxcclxuICApIHtcclxuICAgIHRoaXMuX3ZhbHVlcyA9IG5ldyBNYXAoKTtcclxuICAgIHRoaXMuX2ZhY3RvcnkgPSBmYWN0b3J5O1xyXG4gICAgdGhpcy5fZGlzcG9zZVZhbHVlID0gZGlzcG9zZVZhbHVlO1xyXG4gICAgdGhpcy5fZW50cmllc1N1YmplY3QgPSBuZXcgU3ViamVjdCgpO1xyXG4gIH1cclxuXHJcbiAgaGFzKGtleTogS2V5VHlwZSk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlcy5oYXMoa2V5KTtcclxuICB9XHJcblxyXG4gIGdldChrZXk6IEtleVR5cGUpOiBWYWx1ZVR5cGUge1xyXG4gICAgaWYgKCF0aGlzLl92YWx1ZXMuaGFzKGtleSkpIHtcclxuICAgICAgY29uc3QgbmV3VmFsdWUgPSB0aGlzLl9mYWN0b3J5KGtleSk7XHJcbiAgICAgIHRoaXMuX3ZhbHVlcy5zZXQoa2V5LCBuZXdWYWx1ZSk7XHJcbiAgICAgIHRoaXMuX2VudHJpZXNTdWJqZWN0Lm5leHQoW2tleSwgbmV3VmFsdWVdKTtcclxuICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgLy8gQ2Fubm90IHVzZSBpbnZhcmlhbnQgYXMgVmFsdWVUeXBlIG1heSBpbmNsdWRlIG51bGwvdW5kZWZpbmVkLlxyXG4gICAgICByZXR1cm4gKHRoaXMuX3ZhbHVlcy5nZXQoa2V5KTogYW55KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8vIEFmdGVyIHRoaXMgbWV0aG9kIHRoaXMuX3ZhbHVlcy5rZXlzKCkgPT09IG5ld0tleXMuXHJcbiAgLy8gZGVsZXRlcyBhbGwga2V5cyBub3QgaW4gbmV3S2V5c1xyXG4gIC8vIGdldHMgYWxsIGtleXMgaW4gbmV3S2V5c1xyXG4gIHNldEtleXMobmV3S2V5czogU2V0PEtleVR5cGU+KTogdm9pZCB7XHJcbiAgICBmb3IgKGNvbnN0IGV4aXN0aW5nS2V5IG9mIHRoaXMuX3ZhbHVlcy5rZXlzKCkpIHtcclxuICAgICAgaWYgKCFuZXdLZXlzLmhhcyhleGlzdGluZ0tleSkpIHtcclxuICAgICAgICB0aGlzLmRlbGV0ZShleGlzdGluZ0tleSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBmb3IgKGNvbnN0IG5ld0tleSBvZiBuZXdLZXlzKSB7XHJcbiAgICAgIHRoaXMuZ2V0KG5ld0tleSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBlbnRyaWVzKCk6IEl0ZXJhdG9yPFtLZXlUeXBlLCBWYWx1ZVR5cGVdPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVzLmVudHJpZXMoKTtcclxuICB9XHJcblxyXG4gIGtleXMoKTogSXRlcmF0b3I8S2V5VHlwZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlcy5rZXlzKCk7XHJcbiAgfVxyXG5cclxuICB2YWx1ZXMoKTogSXRlcmF0b3I8VmFsdWVUeXBlPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fdmFsdWVzLnZhbHVlcygpO1xyXG4gIH1cclxuXHJcbiAgb2JzZXJ2ZVZhbHVlcygpOiBPYnNlcnZhYmxlPFZhbHVlVHlwZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMub2JzZXJ2ZUVudHJpZXMoKS5tYXAoZW50cnkgPT4gZW50cnlbMV0pO1xyXG4gIH1cclxuXHJcbiAgb2JzZXJ2ZUVudHJpZXMoKTogT2JzZXJ2YWJsZTxbS2V5VHlwZSwgVmFsdWVUeXBlXT4ge1xyXG4gICAgcmV0dXJuIE9ic2VydmFibGUuY29uY2F0KFxyXG4gICAgICBPYnNlcnZhYmxlLmZyb20odGhpcy5fdmFsdWVzLmVudHJpZXMoKSksXHJcbiAgICAgIHRoaXMuX2VudHJpZXNTdWJqZWN0LFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG9ic2VydmVLZXlzKCk6IE9ic2VydmFibGU8S2V5VHlwZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMub2JzZXJ2ZUVudHJpZXMoKS5tYXAoZW50cnkgPT4gZW50cnlbMF0pO1xyXG4gIH1cclxuXHJcbiAgZGVsZXRlKGtleTogS2V5VHlwZSk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKHRoaXMuaGFzKGtleSkpIHtcclxuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmdldChrZXkpO1xyXG4gICAgICB0aGlzLl92YWx1ZXMuZGVsZXRlKGtleSk7XHJcbiAgICAgIHRoaXMuX2Rpc3Bvc2VWYWx1ZSh2YWx1ZSk7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICAvLyBEZWZlbmQgYWdhaW5zdCBhIGRpc3Bvc2UgY2FsbCByZW1vdmluZyBlbGVtZW50cyBmcm9tIHRoZSBDYWNoZS5cclxuICAgIGNvbnN0IHZhbHVlcyA9IHRoaXMuX3ZhbHVlcztcclxuICAgIHRoaXMuX3ZhbHVlcyA9IG5ldyBNYXAoKTtcclxuICAgIGZvciAoY29uc3QgdmFsdWUgb2YgdmFsdWVzLnZhbHVlcygpKSB7XHJcbiAgICAgIHRoaXMuX2Rpc3Bvc2VWYWx1ZSh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXNwb3NlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5jbGVhcigpO1xyXG4gICAgdGhpcy5fZW50cmllc1N1YmplY3QuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuXHJcbi8vIFVzZWZ1bCBmb3Igb3B0aW9uYWwgc2Vjb25kIHBhcmFtZXRlciB0byBDYWNoZSBjb25zdHJ1Y3Rvci5cclxuZXhwb3J0IGNvbnN0IERJU1BPU0VfVkFMVUUgPSAodmFsdWU6IElEaXNwb3NhYmxlKSA9PiB7XHJcbiAgdmFsdWUuZGlzcG9zZSgpO1xyXG59O1xyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2NhY2hlLmpzIl0sIm5hbWVzIjpbIkNhY2hlIiwiY29uc3RydWN0b3IiLCJmYWN0b3J5IiwiZGlzcG9zZVZhbHVlIiwidmFsdWUiLCJfdmFsdWVzIiwiX2ZhY3RvcnkiLCJfZGlzcG9zZVZhbHVlIiwiX2VudHJpZXNTdWJqZWN0IiwiTWFwIiwiU3ViamVjdCIsImhhcyIsImtleSIsImdldCIsIm5ld1ZhbHVlIiwic2V0IiwibmV4dCIsInNldEtleXMiLCJuZXdLZXlzIiwiZXhpc3RpbmdLZXkiLCJrZXlzIiwiZGVsZXRlIiwibmV3S2V5IiwiZW50cmllcyIsInZhbHVlcyIsIm9ic2VydmVWYWx1ZXMiLCJvYnNlcnZlRW50cmllcyIsIm1hcCIsImVudHJ5IiwiT2JzZXJ2YWJsZSIsImNvbmNhdCIsImZyb20iLCJvYnNlcnZlS2V5cyIsImNsZWFyIiwiZGlzcG9zZSIsImNvbXBsZXRlIiwiRElTUE9TRV9WQUxVRSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOztBQVpBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJQTtBQUNPLE1BQU1BLEtBQU4sQ0FBZ0M7QUFNckNDLEVBQUFBLFdBQVcsQ0FDVEMsT0FEUyxFQUVUQyxZQUF5QyxHQUFHQyxLQUFLLElBQUksQ0FBRSxDQUY5QyxFQUdUO0FBQUEsU0FSRkMsT0FRRTtBQUFBLFNBUEZDLFFBT0U7QUFBQSxTQU5GQyxhQU1FO0FBQUEsU0FMRkMsZUFLRTtBQUNBLFNBQUtILE9BQUwsR0FBZSxJQUFJSSxHQUFKLEVBQWY7QUFDQSxTQUFLSCxRQUFMLEdBQWdCSixPQUFoQjtBQUNBLFNBQUtLLGFBQUwsR0FBcUJKLFlBQXJCO0FBQ0EsU0FBS0ssZUFBTCxHQUF1QixJQUFJRSx5QkFBSixFQUF2QjtBQUNEOztBQUVEQyxFQUFBQSxHQUFHLENBQUNDLEdBQUQsRUFBd0I7QUFDekIsV0FBTyxLQUFLUCxPQUFMLENB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LE1BQU1DLGFBQWEsR0FBSWhDLEtBQUQsSUFBd0I7QUFDbkRBLEVBQUFBLEtBQUssQ0FBQzhCLE9BQU47QUFDRCxDQUZNIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuLy8gQSBDYWNoZSBtYXBwaW5nIGtleXMgdG8gdmFsdWVzIHdoaWNoIGNyZWF0ZXMgZW50cmllcyBhcyB0aGV5IGFyZSByZXF1ZXN0ZWQuXHJcbmV4cG9ydCBjbGFzcyBDYWNoZTxLZXlUeXBlLCBWYWx1ZVR5cGU+IHtcclxuICBfdmFsdWVzOiBNYXA8S2V5VHlwZSwgVmFsdWVUeXBlPjtcclxuICBfZmFjdG9yeTogKGtleTogS2V5VHlwZSkgPT4gVmFsdWVUeXBlO1xyXG4gIF9kaXNwb3NlVmFsdWU6ICh2YWx1ZTogVmFsdWVUeXBlKSA9PiBtaXhlZDtcclxuICBfZW50cmllc1N1YmplY3Q6IFN1YmplY3Q8W0tleVR5cGUsIFZhbHVlVHlwZV0+O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIGZhY3Rvcnk6IChrZXk6IEtleVR5cGUpID0+IFZhbHVlVHlwZSxcclxuICAgIGRpc3Bvc2VWYWx1ZTogKHZhbHVlOiBWYWx1ZVR5cGUpID0+IG1peGVkID0gdmFsdWUgPT4ge30sXHJcbiAgKSB7XHJcbiAgICB0aGlzLl92YWx1ZXMgPSBuZXcgTWFwKCk7XHJcbiAgICB0aGlzLl9mYWN0b3J5ID0gZmFjdG9yeTtcclxuICAgIHRoaXMuX2Rpc3Bvc2VWYWx1ZSA9IGRpc3Bvc2VWYWx1ZTtcclxuICAgIHRoaXMuX2VudHJpZXNTdWJqZWN0ID0gbmV3IFN1YmplY3QoKTtcclxuICB9XHJcblxyXG4gIGhhcyhrZXk6IEtleVR5cGUpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZXMuaGFzKGtleSk7XHJcbiAgfVxyXG5cclxuICBnZXQoa2V5OiBLZXlUeXBlKTogVmFsdWVUeXBlIHtcclxuICAgIGlmICghdGhpcy5fdmFsdWVzLmhhcyhrZXkpKSB7XHJcbiAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdGhpcy5fZmFjdG9yeShrZXkpO1xyXG4gICAgICB0aGlzLl92YWx1ZXMuc2V0KGtleSwgbmV3VmFsdWUpO1xyXG4gICAgICB0aGlzLl9lbnRyaWVzU3ViamVjdC5uZXh0KFtrZXksIG5ld1ZhbHVlXSk7XHJcbiAgICAgIHJldHVybiBuZXdWYWx1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIENhbm5vdCB1c2UgaW52YXJpYW50IGFzIFZhbHVlVHlwZSBtYXkgaW5jbHVkZSBudWxsL3VuZGVmaW5lZC5cclxuICAgICAgcmV0dXJuICh0aGlzLl92YWx1ZXMuZ2V0KGtleSk6IGFueSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvLyBBZnRlciB0aGlzIG1ldGhvZCB0aGlzLl92YWx1ZXMua2V5cygpID09PSBuZXdLZXlzLlxyXG4gIC8vIGRlbGV0ZXMgYWxsIGtleXMgbm90IGluIG5ld0tleXNcclxuICAvLyBnZXRzIGFsbCBrZXlzIGluIG5ld0tleXNcclxuICBzZXRLZXlzKG5ld0tleXM6IFNldDxLZXlUeXBlPik6IHZvaWQge1xyXG4gICAgZm9yIChjb25zdCBleGlzdGluZ0tleSBvZiB0aGlzLl92YWx1ZXMua2V5cygpKSB7XHJcbiAgICAgIGlmICghbmV3S2V5cy5oYXMoZXhpc3RpbmdLZXkpKSB7XHJcbiAgICAgICAgdGhpcy5kZWxldGUoZXhpc3RpbmdLZXkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZm9yIChjb25zdCBuZXdLZXkgb2YgbmV3S2V5cykge1xyXG4gICAgICB0aGlzLmdldChuZXdLZXkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZW50cmllcygpOiBJdGVyYXRvcjxbS2V5VHlwZSwgVmFsdWVUeXBlXT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlcy5lbnRyaWVzKCk7XHJcbiAgfVxyXG5cclxuICBrZXlzKCk6IEl0ZXJhdG9yPEtleVR5cGU+IHtcclxuICAgIHJldHVybiB0aGlzLl92YWx1ZXMua2V5cygpO1xyXG4gIH1cclxuXHJcbiAgdmFsdWVzKCk6IEl0ZXJhdG9yPFZhbHVlVHlwZT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlcy52YWx1ZXMoKTtcclxuICB9XHJcblxyXG4gIG9ic2VydmVWYWx1ZXMoKTogT2JzZXJ2YWJsZTxWYWx1ZVR5cGU+IHtcclxuICAgIHJldHVybiB0aGlzLm9ic2VydmVFbnRyaWVzKCkubWFwKGVudHJ5ID0+IGVudHJ5WzFdKTtcclxuICB9XHJcblxyXG4gIG9ic2VydmVFbnRyaWVzKCk6IE9ic2VydmFibGU8W0tleVR5cGUsIFZhbHVlVHlwZV0+IHtcclxuICAgIHJldHVybiBPYnNlcnZhYmxlLmNvbmNhdChcclxuICAgICAgT2JzZXJ2YWJsZS5mcm9tKHRoaXMuX3ZhbHVlcy5lbnRyaWVzKCkpLFxyXG4gICAgICB0aGlzLl9lbnRyaWVzU3ViamVjdCxcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBvYnNlcnZlS2V5cygpOiBPYnNlcnZhYmxlPEtleVR5cGU+IHtcclxuICAgIHJldHVybiB0aGlzLm9ic2VydmVFbnRyaWVzKCkubWFwKGVudHJ5ID0+IGVudHJ5WzBdKTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZShrZXk6IEtleVR5cGUpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLmhhcyhrZXkpKSB7XHJcbiAgICAgIGNvbnN0IHZhbHVlID0gdGhpcy5nZXQoa2V5KTtcclxuICAgICAgdGhpcy5fdmFsdWVzLmRlbGV0ZShrZXkpO1xyXG4gICAgICB0aGlzLl9kaXNwb3NlVmFsdWUodmFsdWUpO1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgLy8gRGVmZW5kIGFnYWluc3QgYSBkaXNwb3NlIGNhbGwgcmVtb3ZpbmcgZWxlbWVudHMgZnJvbSB0aGUgQ2FjaGUuXHJcbiAgICBjb25zdCB2YWx1ZXMgPSB0aGlzLl92YWx1ZXM7XHJcbiAgICB0aGlzLl92YWx1ZXMgPSBuZXcgTWFwKCk7XHJcbiAgICBmb3IgKGNvbnN0IHZhbHVlIG9mIHZhbHVlcy52YWx1ZXMoKSkge1xyXG4gICAgICB0aGlzLl9kaXNwb3NlVmFsdWUodmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGlzcG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xlYXIoKTtcclxuICAgIHRoaXMuX2VudHJpZXNTdWJqZWN0LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcblxyXG4vLyBVc2VmdWwgZm9yIG9wdGlvbmFsIHNlY29uZCBwYXJhbWV0ZXIgdG8gQ2FjaGUgY29uc3RydWN0b3IuXHJcbmV4cG9ydCBjb25zdCBESVNQT1NFX1ZBTFVFID0gKHZhbHVlOiBJRGlzcG9zYWJsZSkgPT4ge1xyXG4gIHZhbHVlLmRpc3Bvc2UoKTtcclxufTtcclxuIl19 |
@@ -759,2 +759,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2NvbGxlY3Rpb24uanMiXSwibmFtZXMiOlsiZW5zdXJlQXJyYXkiLCJ4IiwiQXJyYXkiLCJpc0FycmF5IiwiYXJyYXlSZW1vdmUiLCJhcnJheSIsImVsZW1lbnQiLCJpbmRleCIsImluZGV4T2YiLCJzcGxpY2UiLCJhcnJheUVxdWFsIiwiYXJyYXkxIiwiYXJyYXkyIiwiZXF1YWxDb21wYXJhdG9yIiwibGVuZ3RoIiwiZXF1YWxGdW5jdGlvbiIsImEiLCJiIiwiZXZlcnkiLCJpdGVtMSIsImkiLCJhcnJheUNvbXBhY3QiLCJyZXN1bHQiLCJlbGVtIiwicHVzaCIsImFycmF5RmxhdHRlbiIsInN1YkFycmF5IiwiYXJyYXlVbmlxdWUiLCJmcm9tIiwiU2V0IiwiYXJyYXlGaW5kTGFzdEluZGV4IiwicHJlZGljYXRlIiwidGhpc0FyZyIsImNhbGwiLCJmaW5kU3ViQXJyYXlJbmRleCIsInN1YmFyciIsImZpbmRJbmRleCIsIl8iLCJvZmZzZXQiLCJzbGljZSIsImFycmF5UGFydGl0aW9uIiwicGFzcyIsImZhaWwiLCJmb3JFYWNoIiwibWFwVW5pb24iLCJtYXBzIiwidW5pb25NYXAiLCJNYXAiLCJtYXAiLCJrZXkiLCJ2YWx1ZSIsInNldCIsIm1hcENvbXBhY3QiLCJzZWxlY3RlZCIsIm1hcEZpbHRlciIsInNlbGVjdG9yIiwibWFwVHJhbnNmb3JtIiwic3JjIiwidHJhbnNmb3JtIiwibWFwRXF1YWwiLCJtYXAxIiwibWFwMiIsInNpemUiLCJ2YWx1ZTEiLCJoYXMiLCJnZXQiLCJtYXBHZXRXaXRoRGVmYXVsdCIsImRlZmF1bHRfIiwiYXJlU2V0c0VxdWFsIiwidmFsdWVzIiwic2V0SW50ZXJzZWN0Iiwic2V0RmlsdGVyIiwiZSIsInNldFVuaW9uVHdvIiwiYWRkIiwic2V0VW5pb24iLCJzZXRzIiwic2V0UmVkdWNlciIsImFjY3VtdWxhdG9yIiwiY3VycmVudCIsInJlZHVjZSIsInNldERpZmZlcmVuY2UiLCJoYXNoXyIsImhhc2giLCJiSGFzaGVzIiwib3V0IiwiaXRlbSIsImlzRW1wdHkiLCJvYmoiLCJrZXlNaXJyb3IiLCJyZXQiLCJPYmplY3QiLCJrZXlzIiwiY29sbGVjdCIsInBhaXJzIiwicGFpciIsImsiLCJ2IiwibGlzdCIsIm9iamVjdEZyb21QYWlycyIsIml0ZXJhYmxlIiwib2JqZWN0TWFwVmFsdWVzIiwib2JqZWN0IiwicHJvamVjdCIsIk11bHRpTWFwIiwiY29uc3RydWN0b3IiLCJfbWFwIiwiZGVsZXRlQWxsIiwibmV3U2V0IiwiZGVsZXRlIiwiZGlkUmVtb3ZlIiwiY2xlYXIiLCJoYXNBbnkiLCJjYWxsYmFjayIsIm9iamVjdFZhbHVlcyIsIm9iamVjdEVudHJpZXMiLCJUeXBlRXJyb3IiLCJlbnRyaWVzIiwiaGFzT3duUHJvcGVydHkiLCJwcm90b3R5cGUiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsIm9iamVjdEZyb21NYXAiLCJjb25jYXRJdGVyYXRvcnMiLCJpdGVyYXRvcnMiLCJpdGVyYXRvciIsInNvbWVPZkl0ZXJhYmxlIiwiZmluZEluSXRlcmFibGUiLCJmaWx0ZXJJdGVyYWJsZSIsIm1hcEl0ZXJhYmxlIiwicHJvamVjdG9yRm4iLCJ0YWtlSXRlcmFibGUiLCJsaW1pdCIsInJhbmdlIiwic3RhcnQiLCJzdG9wIiwic3RlcCIsImZpcnN0T2ZJdGVyYWJsZSIsIml0ZXJhYmxlSXNFbXB0eSIsIml0ZXJhYmxlQ29udGFpbnMiLCJjb3VudCIsImlzSXRlcmFibGUiLCJTeW1ib2wiLCJpbnNpZGVPdXQiLCJhcnIiLCJzdGFydGluZ0luZGV4IiwiTWF0aCIsImZsb29yIiwibWluIiwibWF4IiwiaiIsIm1hcEZyb21PYmplY3QiLCJsYXN0RnJvbUFycmF5IiwiZGlzdGluY3QiLCJrZXlGbiIsInNlZW5LZXlzIiwiZmlsdGVyIiwiRGVmYXVsdE1hcCIsImZhY3RvcnkiLCJfZmFjdG9yeSIsIkRlZmF1bHRXZWFrTWFwIiwiV2Vha01hcCIsImZpbmRUb3BSYW5rZWQiLCJpdGVtcyIsInJh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QUFDQSxRQUFJaUYsSUFBSSxLQUFLSCxPQUFiLEVBQXNCO0FBQ3BCLGFBQU85RSxJQUFQO0FBQ0Q7O0FBQ0QsUUFBSWlGLElBQUksR0FBRyxDQUFQLElBQVlBLElBQUksR0FBR0YsV0FBdkIsRUFBb0M7QUFDbENBLE1BQUFBLFdBQVcsR0FBR0UsSUFBZDtBQUNBRCxNQUFBQSxhQUFhLEdBQUdoRixJQUFoQjtBQUNEO0FBQ0Y7O0FBQ0QsU0FBT2dGLGFBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnYXNzZXJ0JztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVBcnJheTxUPih4OiBBcnJheTxUPiB8IFQpOiBBcnJheTxUPiB7XHJcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkoeCkgPyB4IDogW3hdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXJyYXlSZW1vdmU8VD4oYXJyYXk6IEFycmF5PFQ+LCBlbGVtZW50OiBUKTogdm9pZCB7XHJcbiAgY29uc3QgaW5kZXggPSBhcnJheS5pbmRleE9mKGVsZW1lbnQpO1xyXG4gIGlmIChpbmRleCA+PSAwKSB7XHJcbiAgICBhcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5RXF1YWw8VD4oXHJcbiAgYXJyYXkxOiAkUmVhZE9ubHlBcnJheTxUPixcclxuICBhcnJheTI6ICRSZWFkT25seUFycmF5PFQ+LFxyXG4gIGVxdWFsQ29tcGFyYXRvcj86IChhOiBULCBiOiBUKSA9PiBib29sZWFuLFxyXG4pOiBib29sZWFuIHtcclxuICBpZiAoYXJyYXkxID09PSBhcnJheTIpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBpZiAoYXJyYXkxLmxlbmd0aCAhPT0gYXJyYXkyLmxlbmd0aCkge1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBjb25zdCBlcXVhbEZ1bmN0aW9uID0gZXF1YWxDb21wYXJhdG9yIHx8ICgoYTogVCwgYjogVCkgPT4gYSA9PT0gYik7XHJcbiAgcmV0dXJuIGFycmF5MS5ldmVyeSgoaXRlbTEsIGkpID0+IGVxdWFsRnVuY3Rpb24oaXRlbTEsIGFycmF5MltpXSkpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJucyBhIGNvcHkgb2YgdGhlIGlucHV0IEFycmF5IHdpdGggYWxsIGBudWxsYCBhbmQgYHVuZGVmaW5lZGAgdmFsdWVzIGZpbHRlcmVkIG91dC5cclxuICogQWxsb3dzIEZsb3cgdG8gdHlwZWNoZWNrIHRoZSBjb21tb24gYGZpbHRlcih4ID0+IHggIT0gbnVsbClgIHBhdHRlcm4uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXJyYXlDb21wYWN0PFQ+KGFycmF5OiAkUmVhZE9ubHlBcnJheTw/VD4pOiBBcnJheTxUPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gW107XHJcbiAgZm9yIChjb25zdCBlbGVtIG9mIGFycmF5KSB7XHJcbiAgICBpZiAoZWxlbSAhPSBudWxsKSB7XHJcbiAgICAgIHJlc3VsdC5wdXNoKGVsZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogRmxhdHRlbnMgYW4gQXJyYXk8QXJyYXk8VD4+IGludG8ganVzdCBhbiBBcnJheTxUPlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5RmxhdHRlbjxUPihcclxuICBhcnJheTogJFJlYWRPbmx5QXJyYXk8JFJlYWRPbmx5QXJyYXk8VD4+LFxyXG4pOiBBcnJheTxUPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gW107XHJcbiAgZm9yIChjb25zdCBzdWJBcnJheSBvZiBhcnJheSkge1xyXG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIHN1YkFycmF5KSB7XHJcbiAgICAgIHJlc3VsdC5wdXNoKGVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlcyBkdXBsaWNhdGVzIGZyb20gQXJyYXk8VD4uXHJcbiAqIFVzZXMgU2FtZVZhbHVlWmVybyBmb3IgZXF1YWxpdHkgcHVycG9zZXMsIHdoaWNoIGlzIGxpa2UgJz09PScgZXhjZXB0IGl0IGRlZW1zXHJcbiAqIHR3byBOYU5zIGVxdWFsLiBodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNi4wLyNzZWMtc2FtZXZhbHVlemVyb1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5VW5pcXVlPFQ+KGFycmF5OiAkUmVhZE9ubHlBcnJheTxUPik6IEFycmF5PFQ+IHtcclxuICByZXR1cm4gQXJyYXkuZnJvbShuZXcgU2V0KGFycmF5KSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm5zIHRoZSBsYXN0IGluZGV4IGluIHRoZSBpbnB1dCBhcnJheSB0aGF0IG1hdGNoZXMgdGhlIHByZWRpY2F0ZS5cclxuICogUmV0dXJucyAtMSBpZiBubyBtYXRjaCBpcyBmb3VuZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheUZpbmRMYXN0SW5kZXg8VD4oXHJcbiAgYXJyYXk6ICRSZWFkT25seUFycmF5PFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW06IFQsIGluZGV4OiBudW1iZXIsIGFycmF5OiAkUmVhZE9ubHlBcnJheTxUPikgPT4gYm9vbGVhbixcclxuICB0aGlzQXJnPzogYW55LFxyXG4pOiBudW1iZXIge1xyXG4gIGZvciAobGV0IGkgPSBhcnJheS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgaWYgKHByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIGFycmF5W2ldLCBpLCBhcnJheSkpIHtcclxuICAgICAgcmV0dXJuIGk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiAtMTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0aGUgZmlyc3QgaW5kZXggaW4gYXJyYXkgd2hlcmUgc3ViYXJyYXkgaXMgZXF1YWwgdG8gdGhlIG5leHRcclxuICogc3ViYXJyYXktc2l6ZWQgc2xpY2Ugb2YgYXJyYXkuIFJldHVybiAtMSBpZiBubyBtYXRjaCBpcyBmb3VuZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBmaW5kU3ViQXJyYXlJbmRleDxUPihcclxuICBhcnJheTogJFJlYWRPbmx5QXJyYXk8VD4sXHJcbiAgc3ViYXJyOiAkUmVhZE9ubHlBcnJheTxUPixcclxuKTogbnVtYmVyIHtcclxuICByZXR1cm4gYXJyYXkuZmluZEluZGV4KChfLCBvZmZzZXQpID0+XHJcbiAgICBhcnJheUVxdWFsKGFycmF5LnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgc3ViYXJyLmxlbmd0aCksIHN1YmFyciksXHJcbiAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFNlcGFyYXRlcyBhbiBhcnJheSBpbnRvIHR3byBzdWJhcnJheXMgLS0gdGhlIGZpcnN0IGNvbnRhaW5zIGFsbCBlbGVtZW50cyB0aGF0XHJcbiAqIG1hdGNoIHRoZSBwcmVkaWNhdGUgYW5kIHRoZSBsYXR0ZXIgY29udGFpbnMgYWxsIHRoZSByZXN0IHRoYXQgZmFpbC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheVBhcnRpdGlvbjxUPihcclxuICBhcnJheTogJFJlYWRPbmx5QXJyYXk8VD4sXHJcbiAgcHJlZGljYXRlOiAoZWxlbTogVCkgPT4gYm9vbGVhbixcclxuKTogW0FycmF5PFQ+LCBBcnJheTxUPl0ge1xyXG4gIGNvbnN0IHBhc3MgPSBbXTtcclxuICBjb25zdCBmYWlsID0gW107XHJcbiAgYXJyYXkuZm9yRWFjaChlbGVtID0+IChwcmVkaWNhdGUoZWxlbSkgPyBwYXNzLnB1c2goZWxlbSkgOiBmYWlsLnB1c2goZWxlbSkpKTtcclxuICByZXR1cm4gW3Bhc3MsIGZhaWxdO1xyXG59XHJcblxyXG4vKipcclxuICogTWVyZ2VzIGEgZ2l2ZW4gYXJndW1lbnRzIG9mIG1hcHMgaW50byBvbmUgTWFwLCB3aXRoIHRoZSBsYXRlc3QgbWFwc1xyXG4gKiBvdmVycmlkaW5nIHRoZSB2YWx1ZXMgb2YgdGhlIHByaW9yIG1hcHMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWFwVW5pb248VCwgWD4oLi4ubWFwczogJFJlYWRPbmx5QXJyYXk8TWFwPFQsIFg+Pik6IE1hcDxULCBYPiB7XHJcbiAgY29uc3QgdW5pb25NYXAgPSBuZXcgTWFwKCk7XHJcbiAgZm9yIChjb25zdCBtYXAgb2YgbWFwcykge1xyXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgbWFwKSB7XHJcbiAgICAgIHVuaW9uTWFwLnNldChrZXksIHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHVuaW9uTWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwQ29tcGFjdDxULCBYPihtYXA6IE1hcDxULCA/WD4pOiBNYXA8VCwgWD4ge1xyXG4gIGNvbnN0IHNlbGVjdGVkID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIG1hcCkge1xyXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcclxuICAgICAgc2VsZWN0ZWQuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gc2VsZWN0ZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXBGaWx0ZXI8VCwgWD4oXHJcbiAgbWFwOiBNYXA8VCwgWD4sXHJcbiAgc2VsZWN0b3I6IChrZXk6IFQsIHZhbHVlOiBYKSA9PiBib29sZWFuLFxyXG4pOiBNYXA8VCwgWD4ge1xyXG4gIGNvbnN0IHNlbGVjdGVkID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIG1hcCkge1xyXG4gICAgaWYgKHNlbGVjdG9yKGtleSwgdmFsdWUpKSB7XHJcbiAgICAgIHNlbGVjdGVkLnNldChrZXksIHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHNlbGVjdGVkO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwVHJhbnNmb3JtPFQsIFYxLCBWMj4oXHJcbiAgc3JjOiBNYXA8VCwgVjE+LFxyXG4gIHRyYW5zZm9ybTogKHZhbHVlOiBWMSwga2V5OiBUKSA9PiBWMixcclxuKTogTWFwPFQsIFYyPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIHNyYykge1xyXG4gICAgcmVzdWx0LnNldChrZXksIHRyYW5zZm9ybSh2YWx1ZSwga2V5KSk7XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXBFcXVhbDxULCBYPihcclxuICBtYXAxOiBNYXA8VCwgWD4sXHJcbiAgbWFwMjogTWFwPFQsIFg+LFxyXG4gIGVxdWFsQ29tcGFyYXRvcj86ICh2YWwxOiBYLCB2YWwyOiBYLCBrZXk/OiBUKSA9PiBib29sZWFuLFxyXG4pIHtcclxuICBpZiAobWFwMS5zaXplICE9PSBtYXAyLnNpemUpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3QgZXF1YWxGdW5jdGlvbiA9IGVxdWFsQ29tcGFyYXRvciB8fCAoKGE6IFgsIGI6IFgpID0+IGEgPT09IGIpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWUxXSBvZiBtYXAxKSB7XHJcbiAgICBpZiAoIW1hcDIuaGFzKGtleSkgfHwgIWVxdWFsRnVuY3Rpb24odmFsdWUxLCAobWFwMi5nZXQoa2V5KTogYW55KSkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcEdldFdpdGhEZWZhdWx0PEssIFY+KFxyXG4gIG1hcDogTWFwPEssIFY+LFxyXG4gIGtleTogSyxcclxuICBkZWZhdWx0XzogVixcclxuKTogViB7XHJcbiAgaWYgKG1hcC5oYXMoa2V5KSkge1xyXG4gICAgLy8gQ2FzdCB0aHJvdWdoIGBhbnlgIHNpbmNlIG1hcC5nZXQncyByZXR1cm4gaXMgYSBtYXliZSB0eXBlLiBXZSBjYW4ndCBqdXN0IGdldCB0aGUgdmFsdWUgYW5kXHJcbiAgICAvLyBjaGVjayBpdCBhZ2FpbnN0IGBudWxsYCwgc2luY2UgbnVsbC91bmRlZmluZWQgbWF5IGluaGFiaXQgVi4gV2Uga25vdyB0aGlzIGlzIHNhZmUgc2luY2Ugd2VcclxuICAgIC8vIGp1c3QgY2hlY2tlZCB0aGF0IHRoZSBtYXAgaGFzIHRoZSBrZXkuXHJcbiAgICByZXR1cm4gKG1hcC5nZXQoa2V5KTogYW55KTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIGRlZmF1bHRfO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFyZVNldHNFcXVhbDxUPihhOiBTZXQ8VD4sIGI6IFNldDxUPik6IGJvb2xlYW4ge1xyXG4gIHJldHVybiBhLnNpemUgPT09IGIuc2l6ZSAmJiBldmVyeShhLCBlbGVtZW50ID0+IGIuaGFzKGVsZW1lbnQpKTtcclxufVxyXG5cclxuLy8gQXJyYXkuZXZlcnkgYnV0IGZvciBhbnkgaXRlcmFibGUuXHJcbmV4cG9ydCBmdW5jdGlvbiBldmVyeTxUPihcclxuICB2YWx1ZXM6IEl0ZXJhYmxlPFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW1lbnQ6IFQpID0+IGJvb2xlYW4sXHJcbik6IGJvb2xlYW4ge1xyXG4gIGZvciAoY29uc3QgZWxlbWVudCBvZiB2YWx1ZXMpIHtcclxuICAgIGlmICghcHJlZGljYXRlKGVsZW1lbnQpKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRJbnRlcnNlY3Q8VD4oYTogU2V0PFQ+LCBiOiBTZXQ8VD4pOiBTZXQ8VD4ge1xyXG4gIHJldHVybiBzZXRGaWx0ZXIoYSwgZSA9PiBiLmhhcyhlKSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNldFVuaW9uVHdvPFQ+KGE6IFNldDxUPiwgYjogU2V0PFQ+KTogU2V0PFQ+IHtcclxuICAvLyBBdm9pZHMgdGhlIGV4dHJhIEFycmF5IGFsbG9jYXRpb25zIHRoYXQgYG5ldyBTZXQoWy4uLmEsIC4uLmJdKWAgd291bGQgaW5jdXIuIFNvbWUgcXVpY2sgdGVzdHNcclxuICAvLyBpbmRpY2F0ZSBpdCB3b3VsZCBiZSBhYm91dCA2MCUgc2xvd2VyLlxyXG4gIGNvbnN0IHJlc3VsdCA9IG5ldyBTZXQoYSk7XHJcbiAgYi5mb3JFYWNoKHggPT4ge1xyXG4gICAgcmVzdWx0LmFkZCh4KTtcclxuICB9KTtcclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2V0VW5pb248VD4oLi4uc2V0czogJFJlYWRPbmx5QXJyYXk8U2V0PFQ+Pik6IFNldDxUPiB7XHJcbiAgaWYgKHNldHMubGVuZ3RoIDwgMSkge1xyXG4gICAgcmV0dXJuIG5ldyBTZXQoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IHNldFJlZHVjZXIgPSAoYWNjdW11bGF0b3I6IFNldDxUPiwgY3VycmVudDogU2V0PFQ+KTogU2V0PFQ+ID0+IHtcclxuICAgIHJldHVybiBzZXRVbmlvblR3byhhY2N1bXVsYXRvciwgY3VycmVudCk7XHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIHNldHMucmVkdWNlKHNldFJlZHVjZXIpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2V0RGlmZmVyZW5jZTxUPihcclxuICBhOiBTZXQ8VD4sXHJcbiAgYjogU2V0PFQ+LFxyXG4gIGhhc2hfPzogKHY6IFQpID0+IGFueSxcclxuKTogU2V0PFQ+IHtcclxuICBpZiAoYS5zaXplID09PSAwKSB7XHJcbiAgICByZXR1cm4gbmV3IFNldCgpO1xyXG4gIH0gZWxzZSBpZiAoYi5zaXplID09PSAwKSB7XHJcbiAgICByZXR1cm4gbmV3IFNldChhKTtcclxuICB9XHJcbiAgY29uc3QgcmVzdWx0ID0gbmV3IFNldCgpO1xyXG4gIGNvbnN0IGhhc2ggPSBoYXNoXyB8fCAoeCA9PiB4KTtcclxuICBjb25zdCBiSGFzaGVzID0gaGFzaF8gPT0gbnVsbCA/IGIgOiBuZXcgU2V0KEFycmF5LmZyb20oYi52YWx1ZXMoKSkubWFwKGhhc2gpKTtcclxuICBhLmZvckVhY2godmFsdWUgPT4ge1xyXG4gICAgaWYgKCFiSGFzaGVzLmhhcyhoYXNoKHZhbHVlKSkpIHtcclxuICAgICAgcmVzdWx0LmFkZCh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEZpbHRlcjxUPihcclxuICBzZXQ6IFNldDxUPixcclxuICBwcmVkaWNhdGU6ICh2YWx1ZTogVCkgPT4gYm9vbGVhbixcclxuKTogU2V0PFQ+IHtcclxuICBjb25zdCBvdXQgPSBuZXcgU2V0KCk7XHJcbiAgZm9yIChjb25zdCBpdGVtIG9mIHNldCkge1xyXG4gICAgaWYgKHByZWRpY2F0ZShpdGVtKSkge1xyXG4gICAgICBvdXQuYWRkKGl0ZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIG91dDtcclxufVxyXG5cclxuLyoqXHJcbiAqIE8oMSktY2hlY2sgaWYgYSBnaXZlbiBvYmplY3QgaXMgZW1wdHkgKGhhcyBubyBwcm9wZXJ0aWVzLCBpbmhlcml0ZWQgb3Igbm90KVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRW1wdHkob2JqOiBPYmplY3QpOiBib29sZWFuIHtcclxuICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb25zdHJ1Y3RzIGFuIGVudW1lcmF0aW9uIHdpdGgga2V5cyBlcXVhbCB0byB0aGVpciB2YWx1ZS5cclxuICogZS5nLiBrZXlNaXJyb3Ioe2E6IG51bGwsIGI6IG51bGx9KSA9PiB7YTogJ2EnLCBiOiAnYid9XHJcbiAqXHJcbiAqIEJhc2VkIG9mZiB0aGUgZXF1aXZhbGVudCBmdW5jdGlvbiBpbiB3d3cuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24ga2V5TWlycm9yPFQ6IE9iamVjdD4ob2JqOiBUKTogJE9iak1hcGk8VCwgPEs+KGs6IEspID0+IEs+IHtcclxuICBjb25zdCByZXQgPSB7fTtcclxuICBPYmplY3Qua2V5cyhvYmopLmZvckVhY2goa2V5ID0+IHtcclxuICAgIHJldFtrZXldID0ga2V5O1xyXG4gIH0pO1xyXG4gIHJldHVybiByZXQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHaXZlbiBhbiBhcnJheSBvZiBba2V5LCB2YWx1ZV0gcGFpcnMsIGNvbnN0cnVjdCBhIG1hcCB3aGVyZSB0aGUgdmFsdWVzIGZvclxyXG4gKiBlYWNoIGtleSBhcmUgY29sbGVjdGVkIGludG8gYW4gYXJyYXkgb2YgdmFsdWVzLCBpbiBvcmRlci5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0PEssIFY+KHBhaXJzOiAkUmVhZE9ubHlBcnJheTxbSywgVl0+KTogTWFwPEssIEFycmF5PFY+PiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgcGFpciBvZiBwYWlycykge1xyXG4gICAgY29uc3QgW2ssIHZdID0gcGFpcjtcclxuICAgIGxldCBsaXN0ID0gcmVzdWx0LmdldChrKTtcclxuICAgIGlmIChsaXN0ID09IG51bGwpIHtcclxuICAgICAgbGlzdCA9IFtdO1xyXG4gICAgICByZXN1bHQuc2V0KGssIGxpc3QpO1xyXG4gICAgfVxyXG4gICAgbGlzdC5wdXNoKHYpO1xyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0RnJvbVBhaXJzPFQ6IHN0cmluZywgVT4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFtULCBVXT4sXHJcbik6IHtbVF06IFV9IHtcclxuICBjb25zdCByZXN1bHQgPSB7fTtcclxuICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBpdGVyYWJsZSkge1xyXG4gICAgcmVzdWx0W2tleV0gPSB2YWx1ZTtcclxuICB9XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9iamVjdE1hcFZhbHVlczxULCBVLCBWPihcclxuICBvYmplY3Q6IHtbVDogc3RyaW5nXTogVX0sXHJcbiAgcHJvamVjdDogKHZhbHVlOiBVLCBrZXk6IFQpID0+IFYsXHJcbik6IHtbVF06IFZ9IHtcclxuICBjb25zdCByZXN1bHQgPSB7fTtcclxuICBPYmplY3Qua2V5cyhvYmplY3QpLmZvckVhY2goa2V5ID0+IHtcclxuICAgIHJlc3VsdFtrZXldID0gcHJvamVjdChvYmplY3Rba2V5XSwgKChrZXk6IGFueSk6IFQpKTtcclxuICB9KTtcclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTXVsdGlNYXA8SywgVj4ge1xyXG4gIC8vIEludmFyaWFudDogbm8gZW1wdHkgc2V0cy4gVGhleSBzaG91bGQgYmUgcmVtb3ZlZCBpbnN0ZWFkLlxyXG4gIF9tYXA6IE1hcDxLLCBTZXQ8Vj4+O1xyXG5cclxuICAvLyBUT0RPIG1heSBiZSB3b3J0aCBkZWZpbmluZyBhIGdldHRlciBidXQgbm8gc2V0dGVyLCB0byBtaW1pYyBNYXAuIEJ1dCBwbGVhc2UganVzdCBiZWhhdmUgYW5kXHJcbiAgLy8gZG9uJ3QgbXV0YXRlIHRoaXMgZnJvbSBvdXRzaWRlIHRoaXMgY2xhc3MuXHJcbiAgLy9cclxuICAvLyBJbnZhcmlhbnQ6IGVxdWFsIHRvIHRoZSBzdW0gb2YgdGhlIHNpemVzIG9mIGFsbCB0aGUgc2V0cyBjb250YWluZWQgaW4gdGhpcy5fbWFwXHJcbiAgLyogVGhlIHRvdGFsIG51bWJlciBvZiBrZXktdmFsdWUgYmluZGluZ3MgY29udGFpbmVkICovXHJcbiAgc2l6ZTogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuX21hcCA9IG5ldyBNYXAoKTtcclxuICAgIHRoaXMuc2l6ZSA9IDA7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIFJldHVybnMgdGhlIHNldCBvZiB2YWx1ZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBnaXZlbiBrZXkuIERvIG5vdCBtdXRhdGUgdGhlIGdpdmVuIHNldC4gQ29weSBpdFxyXG4gICAqIGlmIHlvdSBuZWVkIHRvIHN0b3JlIGl0IHBhc3QgdGhlIG5leHQgb3BlcmF0aW9uIG9uIHRoaXMgTXVsdGlNYXAuXHJcbiAgICovXHJcbiAgZ2V0KGtleTogSyk6IFNldDxWPiB7XHJcbiAgICBjb25zdCBzZXQgPSB0aGlzLl9tYXAuZ2V0KGtleSk7XHJcbiAgICBpZiAoc2V0ID09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIG5ldyBTZXQoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzZXQ7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIE1pbWljcyB0aGUgTWFwLnByb3RvdHlwZS5zZXQgaW50ZXJmYWNlLiBEZWxpYmVyYXRlbHkgZGlkIG5vdCBjaG9vc2UgXCJzZXRcIiBhcyB0aGUgbmFtZSBzaW5jZSB0aGVcclxuICAgKiBpbXBsaWNhdGlvbiBpcyB0aGF0IGl0IHJlbW92ZXMgdGhlIHByZXZpb3VzIGJpbmRpbmcuXHJcbiAgICovXHJcbiAgYWRkKGtleTogSywgdmFsdWU6IFYpOiBNdWx0aU1hcDxLLCBWPiB7XHJcbiAgICBsZXQgc2V0ID0gdGhpcy5fbWFwLmdldChrZXkpO1xyXG4gICAgaWYgKHNldCA9PSBudWxsKSB7XHJcbiAgICAgIHNldCA9IG5ldyBTZXQoKTtcclxuICAgICAgdGhpcy5fbWFwLnNldChrZXksIHNldCk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXNldC5oYXModmFsdWUpKSB7XHJcbiAgICAgIHNldC5hZGQodmFsdWUpO1xyXG4gICAgICB0aGlzLnNpemUrKztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBNaW1pY3MgdGhlIE1hcC5wcm90b3R5cGUuc2V0IGludGVyZmFjZS4gUmVwbGFjZXMgdGhlIHByZXZpb3VzIGJpbmRpbmcgd2l0aCBuZXcgdmFsdWVzLlxyXG4gICAqL1xyXG4gIHNldChrZXk6IEssIHZhbHVlczogSXRlcmFibGU8Vj4pOiB2b2lkIHtcclxuICAgIHRoaXMuZGVsZXRlQWxsKGtleSk7XHJcbiAgICBjb25zdCBuZXdTZXQgPSBuZXcgU2V0KHZhbHVlcyk7XHJcbiAgICBpZiAobmV3U2V0LnNpemUgIT09IDApIHtcclxuICAgICAgdGhpcy5fbWFwLnNldChrZXksIG5ld1NldCk7XHJcbiAgICAgIHRoaXMuc2l6ZSArPSBuZXdTZXQuc2l6ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogRGVsZXRlcyBhIHNpbmdsZSBiaW5kaW5nLiBSZXR1cm5zIHRydWUgaWZmIHRoZSBiaW5kaW5nIGV4aXN0ZWQuXHJcbiAgICovXHJcbiAgZGVsZXRlKGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHNldCA9IHRoaXMuZ2V0KGtleSk7XHJcbiAgICBjb25zdCBkaWRSZW1vdmUgPSBzZXQuZGVsZXRlKHZhbHVlKTtcclxuICAgIGlmIChzZXQuc2l6ZSA9PT0gMCkge1xyXG4gICAgICB0aGlzLl9tYXAuZGVsZXRlKGtleSk7XHJcbiAgICB9XHJcbiAgICBpZiAoZGlkUmVtb3ZlKSB7XHJcbiAgICAgIHRoaXMuc2l6ZS0tO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRpZFJlbW92ZTtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogRGVsZXRlcyBhbGwgYmluZGluZ3MgYXNzb2NpYXRlZCB3aXRoIHRoZSBnaXZlbiBrZXkuIFJldHVybnMgdHJ1ZSBpZmYgYW55IGJpbmRpbmdzIHdlcmUgZGVsZXRlZC5cclxuICAgKi9cclxuICBkZWxldGVBbGwoa2V5OiBLKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBzZXQgPSB0aGlzLmdldChrZXkpO1xyXG4gICAgdGhpcy5zaXplIC09IHNldC5zaXplO1xyXG4gICAgcmV0dXJuIHRoaXMuX21hcC5kZWxldGUoa2V5KTtcclxuICB9XHJcblxyXG4gIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbWFwLmNsZWFyKCk7XHJcbiAgICB0aGlzLnNpemUgPSAwO1xyXG4gIH1cclxuXHJcbiAgaGFzKGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmdldChrZXkpLmhhcyh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBoYXNBbnkoa2V5OiBLKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWFwLmhhcyhrZXkpO1xyXG4gIH1cclxuXHJcbiAgKnZhbHVlcygpOiBJdGVyYWJsZTxWPiB7XHJcbiAgICBmb3IgKGNvbnN0IHNldCBvZiB0aGlzLl9tYXAudmFsdWVzKCkpIHtcclxuICAgICAgeWllbGQqIHNldDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvckVhY2goY2FsbGJhY2s6ICh2YWx1ZTogViwga2V5OiBLLCBvYmo6IE11bHRpTWFwPEssIFY+KSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLl9tYXAuZm9yRWFjaCgodmFsdWVzLCBrZXkpID0+XHJcbiAgICAgIHZhbHVlcy5mb3JFYWNoKHZhbHVlID0+IGNhbGxiYWNrKHZhbHVlLCBrZXksIHRoaXMpKSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0VmFsdWVzPFQ+KG9iajoge1trZXk6IHN0cmluZ106IFR9KTogQXJyYXk8VD4ge1xyXG4gIHJldHVybiBPYmplY3Qua2V5cyhvYmopLm1hcChrZXkgPT4gb2JqW2tleV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0RW50cmllczxUPihvYmo6ID97W2tleTogc3RyaW5nXTogVH0pOiBBcnJheTxbc3RyaW5nLCBUXT4ge1xyXG4gIGlmIChvYmogPT0gbnVsbCkge1xyXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcigpO1xyXG4gIH1cclxuICBjb25zdCBlbnRyaWVzID0gW107XHJcbiAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XHJcbiAgICBpZiAoXHJcbiAgICAgIG9iai5oYXNPd25Qcm9wZXJ0eShrZXkpICYmXHJcbiAgICAgIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChvYmosIGtleSlcclxuICAgICkge1xyXG4gICAgICBlbnRyaWVzLnB1c2goW2tleSwgb2JqW2tleV1dKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGVudHJpZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvYmplY3RGcm9tTWFwPFQ+KG1hcDogTWFwPHN0cmluZywgVD4pOiB7W2tleTogc3RyaW5nXTogVH0ge1xyXG4gIGNvbnN0IG9iaiA9IHt9O1xyXG4gIG1hcC5mb3JFYWNoKCh2LCBrKSA9PiB7XHJcbiAgICBvYmpba10gPSB2O1xyXG4gIH0pO1xyXG4gIHJldHVybiBvYmo7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiogY29uY2F0SXRlcmF0b3JzPFQ+KFxyXG4gIC4uLml0ZXJhdG9yczogJFJlYWRPbmx5QXJyYXk8SXRlcmFibGU8VD4+XHJcbik6IEl0ZXJhdG9yPFQ+IHtcclxuICBmb3IgKGNvbnN0IGl0ZXJhdG9yIG9mIGl0ZXJhdG9ycykge1xyXG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhdG9yKSB7XHJcbiAgICAgIHlpZWxkIGVsZW1lbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc29tZU9mSXRlcmFibGU8VD4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW1lbnQ6IFQpID0+IGJvb2xlYW4sXHJcbik6IGJvb2xlYW4ge1xyXG4gIGZvciAoY29uc3QgZWxlbWVudCBvZiBpdGVyYWJsZSkge1xyXG4gICAgaWYgKHByZWRpY2F0ZShlbGVtZW50KSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGZhbHNlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZmluZEluSXRlcmFibGU8VD4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW1lbnQ6IFQpID0+IGJvb2xlYW4sXHJcbik6ID9UIHtcclxuICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgaXRlcmFibGUpIHtcclxuICAgIGlmIChwcmVkaWNhdGUoZWxlbWVudCkpIHtcclxuICAgICAgcmV0dXJuIGVsZW1lbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24qIGZpbHRlckl0ZXJhYmxlPFQ+KFxyXG4gIGl0ZXJhYmxlOiBJdGVyYWJsZTxUPixcclxuICBwcmVkaWNhdGU6IChlbGVtZW50OiBUKSA9PiBib29sZWFuLFxyXG4pOiBJdGVyYWJsZTxUPiB7XHJcbiAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhYmxlKSB7XHJcbiAgICBpZiAocHJlZGljYXRlKGVsZW1lbnQpKSB7XHJcbiAgICAgIHlpZWxkIGVsZW1lbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24qIG1hcEl0ZXJhYmxlPFQsIE0+KFxyXG4gIGl0ZXJhYmxlOiBJdGVyYWJsZTxUPixcclxuICBwcm9qZWN0b3JGbjogKGVsZW1lbnQ6IFQpID0+IE0sXHJcbik6IEl0ZXJhYmxlPE0+IHtcclxuICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgaXRlcmFibGUpIHtcclxuICAgIHlpZWxkIHByb2plY3RvckZuKGVsZW1lbnQpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uKiB0YWtlSXRlcmFibGU8VD4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+LFxyXG4gIGxpbWl0OiBudW1iZXIsXHJcbik6IEl0ZXJhYmxlPFQ+IHtcclxuICBsZXQgaSA9IDA7XHJcbiAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhYmxlKSB7XHJcbiAgICBpZiAoKytpID4gbGltaXQpIHtcclxuICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB5aWVsZCBlbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmV0dXJuIGFuIGl0ZXJhYmxlIG9mIHRoZSBudW1iZXJzIHN0YXJ0IChpbmNsdXNpdmUpIHRocm91Z2ggc3RvcCAoZXhjbHVzaXZlKVxyXG5leHBvcnQgZnVuY3Rpb24qIHJhbmdlKFxyXG4gIHN0YXJ0OiBudW1iZXIsXHJcbiAgc3RvcDogbnVtYmVyLFxyXG4gIHN0ZXA/OiBudW1iZXIgPSAxLFxyXG4pOiBJdGVyYWJsZTxudW1iZXI+IHtcclxuICAvLyBXZSBkb24ndCBjdXJyZW50bHkgc3VwcG9ydCBuZWdhdGl2ZSBzdGVwIHZhbHVlcy5cclxuICBpbnZhcmlhbnQoc3RlcCA+IDApO1xyXG4gIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IHN0b3A7IGkgKz0gc3RlcCkge1xyXG4gICAgeWllbGQgaTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmaXJzdE9mSXRlcmFibGU8VD4oaXRlcmFibGU6IEl0ZXJhYmxlPFQ+KTogP1Qge1xyXG4gIHJldHVybiBmaW5kSW5JdGVyYWJsZShpdGVyYWJsZSwgKCkgPT4gdHJ1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpdGVyYWJsZUlzRW1wdHk8VD4oaXRlcmFibGU6IEl0ZXJhYmxlPFQ+KTogYm9vbGVhbiB7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhYmxlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIHJldHVybiB0cnVlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXRlcmFibGVDb250YWluczxUPihpdGVyYWJsZTogSXRlcmFibGU8VD4sIHZhbHVlOiBUKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuICFpdGVyYWJsZUlzRW1wdHkoXHJcbiAgICBmaWx0ZXJJdGVyYWJsZShpdGVyYWJsZSwgZWxlbWVudCA9PiBlbGVtZW50ID09PSB2YWx1ZSksXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvdW50PFQ+KGl0ZXJhYmxlOiBJdGVyYWJsZTxUPik6IG51bWJlciB7XHJcbiAgbGV0IHNpemUgPSAwO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gIGZvciAoY29uc3QgZWxlbWVudCBvZiBpdGVyYWJsZSkge1xyXG4gICAgc2l6ZSsrO1xyXG4gIH1cclxuICByZXR1cm4gc2l6ZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzSXRlcmFibGUob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICByZXR1cm4gdHlwZW9mIG9ialtTeW1ib2wuaXRlcmF0b3JdID09PSAnZnVuY3Rpb24nO1xyXG59XHJcblxyXG4vLyBUcmF2ZXJzZSBhbiBhcnJheSBmcm9tIHRoZSBpbnNpZGUgb3V0LCBzdGFydGluZyBhdCB0aGUgc3BlY2lmaWVkIGluZGV4LlxyXG5leHBvcnQgZnVuY3Rpb24qIGluc2lkZU91dDxUPihcclxuICBhcnI6ICRSZWFkT25seUFycmF5PFQ+LFxyXG4gIHN0YXJ0aW5nSW5kZXg/OiBudW1iZXIsXHJcbik6IEl0ZXJhYmxlPFtULCBudW1iZXJdPiB7XHJcbiAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIGxldCBpID1cclxuICAgIHN0YXJ0aW5nSW5kZXggPT0gbnVsbFxyXG4gICAgICA/IE1hdGguZmxvb3IoYXJyLmxlbmd0aCAvIDIpXHJcbiAgICAgIDogTWF0aC5taW4oYXJyLmxlbmd0aCwgTWF0aC5tYXgoMCwgc3RhcnRpbmdJbmRleCkpO1xyXG4gIGxldCBqID0gaSAtIDE7XHJcblxyXG4gIHdoaWxlIChpIDwgYXJyLmxlbmd0aCB8fCBqID49IDApIHtcclxuICAgIGlmIChpIDwgYXJyLmxlbmd0aCkge1xyXG4gICAgICB5aWVsZCBbYXJyW2ldLCBpXTtcclxuICAgICAgaSsrO1xyXG4gICAgfVxyXG4gICAgaWYgKGogPj0gMCkge1xyXG4gICAgICB5aWVsZCBbYXJyW2pdLCBqXTtcclxuICAgICAgai0tO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcEZyb21PYmplY3Q8VD4ob2JqOiB7W2tleTogc3RyaW5nXTogVH0pOiBNYXA8c3RyaW5nLCBUPiB7XHJcbiAgcmV0dXJuIG5ldyBNYXAob2JqZWN0RW50cmllcyhvYmopKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxhc3RGcm9tQXJyYXk8VD4oYXJyOiAkUmVhZE9ubHlBcnJheTxUPik6IFQge1xyXG4gIHJldHVybiBhcnJbYXJyLmxlbmd0aCAtIDFdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGlzdGluY3Q8VD4oYXJyYXk6IFRbXSwga2V5Rm4/OiAodDogVCkgPT4gc3RyaW5nKTogVFtdIHtcclxuICBpZiAoa2V5Rm4gPT0gbnVsbCkge1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20obmV3IFNldChhcnJheSkpO1xyXG4gIH1cclxuXHJcbiAgY29uc3Qgc2VlbktleXMgPSBuZXcgU2V0KCk7XHJcbiAgcmV0dXJuIGFycmF5LmZpbHRlcihlbGVtID0+IHtcclxuICAgIGNvbnN0IGtleSA9IGtleUZuKGVsZW0pO1xyXG4gICAgaWYgKHNlZW5LZXlzLmhhcyhrZXkpKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHNlZW5LZXlzLmFkZChrZXkpO1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0TWFwPEssIFY+IGV4dGVuZHMgTWFwPEssIFY+IHtcclxuICBfZmFjdG9yeTogSyA9PiBWO1xyXG5cclxuICBjb25zdHJ1Y3RvcihmYWN0b3J5OiBLID0+IFYsIGl0ZXJhYmxlOiA/SXRlcmFibGU8W0ssIFZdPikge1xyXG4gICAgc3VwZXIoaXRlcmFibGUpO1xyXG4gICAgdGhpcy5fZmFjdG9yeSA9IGZhY3Rvcnk7XHJcbiAgfVxyXG5cclxuICBnZXQoa2V5OiBLKTogViB7XHJcbiAgICBpZiAoIXRoaXMuaGFzKGtleSkpIHtcclxuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9mYWN0b3J5KGtleSk7XHJcbiAgICAgIHRoaXMuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgICAvLyBJZiB0aGUga2V5IGlzIHByZXNlbnQgd2UgbXVzdCBoYXZlIGEgdmFsdWUgb2YgdHlwZSBWLlxyXG4gICAgcmV0dXJuIChzdXBlci5nZXQoa2V5KTogYW55KTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0V2Vha01hcDxLOiB7fSwgVj4gZXh0ZW5kcyBXZWFrTWFwPEssIFY+IHtcclxuICBfZmFjdG9yeTogSyA9PiBWO1xyXG5cclxuICBjb25zdHJ1Y3RvcihmYWN0b3J5OiBLID0+IFYsIGl0ZXJhYmxlOiA/SXRlcmFibGU8W0ssIFZdPikge1xyXG4gICAgc3VwZXIoaXRlcmFibGUpO1xyXG4gICAgdGhpcy5fZmFjdG9yeSA9IGZhY3Rvcnk7XHJcbiAgfVxyXG5cclxuICBnZXQoa2V5OiBLKTogViB7XHJcbiAgICBpZiAoIXRoaXMuaGFzKGtleSkpIHtcclxuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9mYWN0b3J5KGtleSk7XHJcbiAgICAgIHRoaXMuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgICAvLyBJZiB0aGUga2V5IGlzIHByZXNlbnQgd2UgbXVzdCBoYXZlIGEgdmFsdWUgb2YgdHlwZSBWLlxyXG4gICAgcmV0dXJuIChzdXBlci5nZXQoa2V5KTogYW55KTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdGhlIGhpZ2hlc3QgcmFua2VkIGl0ZW0gaW4gYSBsaXN0LCBhY2NvcmRpbmcgdG8gdGhlIHByb3ZpZGVkIHJhbmtpbmcgZnVuY3Rpb24uIEEgbWF4IHJhbmtcclxuICogbWF5IG9wdGlvbmFsbHkgYmUgcHJvdmlkZWQgc28gdGhlIHdob2xlIGxpc3QgZG9lc24ndCBoYXZlIHRvIGJlIGl0ZXJhdGVkLiBJdGVtcyB3aXRoIHJhbmtzIG9mXHJcbiAqIHplcm8gb3IgbGVzcyBhcmUgbmV2ZXIgcmV0dXJuZWQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZmluZFRvcFJhbmtlZDxUPihcclxuICBpdGVtczogSXRlcmFibGU8VD4sXHJcbiAgcmFua2VyOiBUID0+IG51bWJlcixcclxuICBtYXhSYW5rPzogbnVtYmVyLFxyXG4pOiA/VCB7XHJcbiAgbGV0IG1heFNlZW5SYW5rID0gMDtcclxuICBsZXQgbWF4UmFua2VkSXRlbTtcclxuICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcclxuICAgIGNvbnN0IHJhbmsgPSByYW5rZXIoaXRlbSk7XHJcbiAgICBpZiAocmFuayA9PT0gbWF4UmFuaykge1xyXG4gICAgICByZXR1cm4gaXRlbTtcclxuICAgIH1cclxuICAgIGlmIChyYW5rID4gMCAmJiByYW5rID4gbWF4U2VlblJhbmspIHtcclxuICAgICAgbWF4U2VlblJhbmsgPSByYW5rO1xyXG4gICAgICBtYXhSYW5rZWRJdGVtID0gaXRlbTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIG1heFJhbmtlZEl0ZW07XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2NvbGxlY3Rpb24uanMiXSwibmFtZXMiOlsiZW5zdXJlQXJyYXkiLCJ4IiwiQXJyYXkiLCJpc0FycmF5IiwiYXJyYXlSZW1vdmUiLCJhcnJheSIsImVsZW1lbnQiLCJpbmRleCIsImluZGV4T2YiLCJzcGxpY2UiLCJhcnJheUVxdWFsIiwiYXJyYXkxIiwiYXJyYXkyIiwiZXF1YWxDb21wYXJhdG9yIiwibGVuZ3RoIiwiZXF1YWxGdW5jdGlvbiIsImEiLCJiIiwiZXZlcnkiLCJpdGVtMSIsImkiLCJhcnJheUNvbXBhY3QiLCJyZXN1bHQiLCJlbGVtIiwicHVzaCIsImFycmF5RmxhdHRlbiIsInN1YkFycmF5IiwiYXJyYXlVbmlxdWUiLCJmcm9tIiwiU2V0IiwiYXJyYXlGaW5kTGFzdEluZGV4IiwicHJlZGljYXRlIiwidGhpc0FyZyIsImNhbGwiLCJmaW5kU3ViQXJyYXlJbmRleCIsInN1YmFyciIsImZpbmRJbmRleCIsIl8iLCJvZmZzZXQiLCJzbGljZSIsImFycmF5UGFydGl0aW9uIiwicGFzcyIsImZhaWwiLCJmb3JFYWNoIiwibWFwVW5pb24iLCJtYXBzIiwidW5pb25NYXAiLCJNYXAiLCJtYXAiLCJrZXkiLCJ2YWx1ZSIsInNldCIsIm1hcENvbXBhY3QiLCJzZWxlY3RlZCIsIm1hcEZpbHRlciIsInNlbGVjdG9yIiwibWFwVHJhbnNmb3JtIiwic3JjIiwidHJhbnNmb3JtIiwibWFwRXF1YWwiLCJtYXAxIiwibWFwMiIsInNpemUiLCJ2YWx1ZTEiLCJoYXMiLCJnZXQiLCJtYXBHZXRXaXRoRGVmYXVsdCIsImRlZmF1bHRfIiwiYXJlU2V0c0VxdWFsIiwidmFsdWVzIiwic2V0SW50ZXJzZWN0Iiwic2V0RmlsdGVyIiwiZSIsInNldFVuaW9uVHdvIiwiYWRkIiwic2V0VW5pb24iLCJzZXRzIiwic2V0UmVkdWNlciIsImFjY3VtdWxhdG9yIiwiY3VycmVudCIsInJlZHVjZSIsInNldERpZmZlcmVuY2UiLCJoYXNoXyIsImhhc2giLCJiSGFzaGVzIiwib3V0IiwiaXRlbSIsImlzRW1wdHkiLCJvYmoiLCJrZXlNaXJyb3IiLCJyZXQiLCJPYmplY3QiLCJrZXlzIiwiY29sbGVjdCIsInBhaXJzIiwicGFpciIsImsiLCJ2IiwibGlzdCIsIm9iamVjdEZyb21QYWlycyIsIml0ZXJhYmxlIiwib2JqZWN0TWFwVmFsdWVzIiwib2JqZWN0IiwicHJvamVjdCIsIk11bHRpTWFwIiwiY29uc3RydWN0b3IiLCJfbWFwIiwiZGVsZXRlQWxsIiwibmV3U2V0IiwiZGVsZXRlIiwiZGlkUmVtb3ZlIiwiY2xlYXIiLCJoYXNBbnkiLCJjYWxsYmFjayIsIm9iamVjdFZhbHVlcyIsIm9iamVjdEVudHJpZXMiLCJUeXBlRXJyb3IiLCJlbnRyaWVzIiwiaGFzT3duUHJvcGVydHkiLCJwcm90b3R5cGUiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsIm9iamVjdEZyb21NYXAiLCJjb25jYXRJdGVyYXRvcnMiLCJpdGVyYXRvcnMiLCJpdGVyYXRvciIsInNvbWVPZkl0ZXJhYmxlIiwiZmluZEluSXRlcmFibGUiLCJmaWx0ZXJJdGVyYWJsZSIsIm1hcEl0ZXJhYmxlIiwicHJvamVjdG9yRm4iLCJ0YWtlSXRlcmFibGUiLCJsaW1pdCIsInJhbmdlIiwic3RhcnQiLCJzdG9wIiwic3RlcCIsImZpcnN0T2ZJdGVyYWJsZSIsIml0ZXJhYmxlSXNFbXB0eSIsIml0ZXJhYmxlQ29udGFpbnMiLCJjb3VudCIsImlzSXRlcmFibGUiLCJTeW1ib2wiLCJpbnNpZGVPdXQiLCJhcnIiLCJzdGFydGluZ0luZGV4IiwiTWF0aCIsImZsb29yIiwibWluIiwibWF4IiwiaiIsIm1hcEZyb21PYmplY3QiLCJsYXN0RnJvbUFycmF5IiwiZGlzdGluY3QiLCJrZXlGbiIsInNlZW5LZXlzIiwiZmlsdGVyIiwiRGVmYXVsdE1hcCIsImZhY3RvcnkiLCJfZmFjdG9yeSIsIkRlZmF1bHRXZWFrTWFwIiwiV2Vha01hcCIsImZpbmRUb3BSYW5rZWQiLCJpdGVtcyIsInJh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OztBQWhCeUQ7QUFtQjVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7Ozs7O0FBQ08sU0FBU2dILGFBQVQsQ0FDTEMsS0FESyxFQUVMQyxNQUZLLEVBR0xDLE9BSEssRUFJRDtBQUNKLE1BQUlDLFdBQVcsR0FBRyxDQUFsQjtBQUNBLE1BQUlDLGFBQUo7O0FBQ0EsT0FBSyxNQUFNaEYsSUFBWCxJQUFtQjRFLEtBQW5CLEVBQTBCO0FBQ3hCLFVBQU1LLElBQUksR0FBR0osTUFBTSxDQUFDN0UsSUFBRCxDQUFuQjs7QUFDQSxRQUFJaUYsSUFBSSxLQUFLSCxPQUFiLEVBQXNCO0FBQ3BCLGFBQU85RSxJQUFQO0FBQ0Q7O0FBQ0QsUUFBSWlGLElBQUksR0FBRyxDQUFQLElBQVlBLElBQUksR0FBR0YsV0FBdkIsRUFBb0M7QUFDbENBLE1BQUFBLFdBQVcsR0FBR0UsSUFBZDtBQUNBRCxNQUFBQSxhQUFhLEdBQUdoRixJQUFoQjtBQUNEO0FBQ0Y7O0FBQ0QsU0FBT2dGLGFBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnYXNzZXJ0JztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBlbnN1cmVBcnJheTxUPih4OiBBcnJheTxUPiB8IFQpOiBBcnJheTxUPiB7XHJcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkoeCkgPyB4IDogW3hdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gYXJyYXlSZW1vdmU8VD4oYXJyYXk6IEFycmF5PFQ+LCBlbGVtZW50OiBUKTogdm9pZCB7XHJcbiAgY29uc3QgaW5kZXggPSBhcnJheS5pbmRleE9mKGVsZW1lbnQpO1xyXG4gIGlmIChpbmRleCA+PSAwKSB7XHJcbiAgICBhcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5RXF1YWw8VD4oXHJcbiAgYXJyYXkxOiAkUmVhZE9ubHlBcnJheTxUPixcclxuICBhcnJheTI6ICRSZWFkT25seUFycmF5PFQ+LFxyXG4gIGVxdWFsQ29tcGFyYXRvcj86IChhOiBULCBiOiBUKSA9PiBib29sZWFuLFxyXG4pOiBib29sZWFuIHtcclxuICBpZiAoYXJyYXkxID09PSBhcnJheTIpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuICBpZiAoYXJyYXkxLmxlbmd0aCAhPT0gYXJyYXkyLmxlbmd0aCkge1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBjb25zdCBlcXVhbEZ1bmN0aW9uID0gZXF1YWxDb21wYXJhdG9yIHx8ICgoYTogVCwgYjogVCkgPT4gYSA9PT0gYik7XHJcbiAgcmV0dXJuIGFycmF5MS5ldmVyeSgoaXRlbTEsIGkpID0+IGVxdWFsRnVuY3Rpb24oaXRlbTEsIGFycmF5MltpXSkpO1xyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJucyBhIGNvcHkgb2YgdGhlIGlucHV0IEFycmF5IHdpdGggYWxsIGBudWxsYCBhbmQgYHVuZGVmaW5lZGAgdmFsdWVzIGZpbHRlcmVkIG91dC5cclxuICogQWxsb3dzIEZsb3cgdG8gdHlwZWNoZWNrIHRoZSBjb21tb24gYGZpbHRlcih4ID0+IHggIT0gbnVsbClgIHBhdHRlcm4uXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXJyYXlDb21wYWN0PFQ+KGFycmF5OiAkUmVhZE9ubHlBcnJheTw/VD4pOiBBcnJheTxUPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gW107XHJcbiAgZm9yIChjb25zdCBlbGVtIG9mIGFycmF5KSB7XHJcbiAgICBpZiAoZWxlbSAhPSBudWxsKSB7XHJcbiAgICAgIHJlc3VsdC5wdXNoKGVsZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogRmxhdHRlbnMgYW4gQXJyYXk8QXJyYXk8VD4+IGludG8ganVzdCBhbiBBcnJheTxUPlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5RmxhdHRlbjxUPihcclxuICBhcnJheTogJFJlYWRPbmx5QXJyYXk8JFJlYWRPbmx5QXJyYXk8VD4+LFxyXG4pOiBBcnJheTxUPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gW107XHJcbiAgZm9yIChjb25zdCBzdWJBcnJheSBvZiBhcnJheSkge1xyXG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIHN1YkFycmF5KSB7XHJcbiAgICAgIHJlc3VsdC5wdXNoKGVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG4vKipcclxuICogUmVtb3ZlcyBkdXBsaWNhdGVzIGZyb20gQXJyYXk8VD4uXHJcbiAqIFVzZXMgU2FtZVZhbHVlWmVybyBmb3IgZXF1YWxpdHkgcHVycG9zZXMsIHdoaWNoIGlzIGxpa2UgJz09PScgZXhjZXB0IGl0IGRlZW1zXHJcbiAqIHR3byBOYU5zIGVxdWFsLiBodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNi4wLyNzZWMtc2FtZXZhbHVlemVyb1xyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFycmF5VW5pcXVlPFQ+KGFycmF5OiAkUmVhZE9ubHlBcnJheTxUPik6IEFycmF5PFQ+IHtcclxuICByZXR1cm4gQXJyYXkuZnJvbShuZXcgU2V0KGFycmF5KSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm5zIHRoZSBsYXN0IGluZGV4IGluIHRoZSBpbnB1dCBhcnJheSB0aGF0IG1hdGNoZXMgdGhlIHByZWRpY2F0ZS5cclxuICogUmV0dXJucyAtMSBpZiBubyBtYXRjaCBpcyBmb3VuZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheUZpbmRMYXN0SW5kZXg8VD4oXHJcbiAgYXJyYXk6ICRSZWFkT25seUFycmF5PFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW06IFQsIGluZGV4OiBudW1iZXIsIGFycmF5OiAkUmVhZE9ubHlBcnJheTxUPikgPT4gYm9vbGVhbixcclxuICB0aGlzQXJnPzogYW55LFxyXG4pOiBudW1iZXIge1xyXG4gIGZvciAobGV0IGkgPSBhcnJheS5sZW5ndGggLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgaWYgKHByZWRpY2F0ZS5jYWxsKHRoaXNBcmcsIGFycmF5W2ldLCBpLCBhcnJheSkpIHtcclxuICAgICAgcmV0dXJuIGk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiAtMTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybiB0aGUgZmlyc3QgaW5kZXggaW4gYXJyYXkgd2hlcmUgc3ViYXJyYXkgaXMgZXF1YWwgdG8gdGhlIG5leHRcclxuICogc3ViYXJyYXktc2l6ZWQgc2xpY2Ugb2YgYXJyYXkuIFJldHVybiAtMSBpZiBubyBtYXRjaCBpcyBmb3VuZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBmaW5kU3ViQXJyYXlJbmRleDxUPihcclxuICBhcnJheTogJFJlYWRPbmx5QXJyYXk8VD4sXHJcbiAgc3ViYXJyOiAkUmVhZE9ubHlBcnJheTxUPixcclxuKTogbnVtYmVyIHtcclxuICByZXR1cm4gYXJyYXkuZmluZEluZGV4KChfLCBvZmZzZXQpID0+XHJcbiAgICBhcnJheUVxdWFsKGFycmF5LnNsaWNlKG9mZnNldCwgb2Zmc2V0ICsgc3ViYXJyLmxlbmd0aCksIHN1YmFyciksXHJcbiAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFNlcGFyYXRlcyBhbiBhcnJheSBpbnRvIHR3byBzdWJhcnJheXMgLS0gdGhlIGZpcnN0IGNvbnRhaW5zIGFsbCBlbGVtZW50cyB0aGF0XHJcbiAqIG1hdGNoIHRoZSBwcmVkaWNhdGUgYW5kIHRoZSBsYXR0ZXIgY29udGFpbnMgYWxsIHRoZSByZXN0IHRoYXQgZmFpbC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhcnJheVBhcnRpdGlvbjxUPihcclxuICBhcnJheTogJFJlYWRPbmx5QXJyYXk8VD4sXHJcbiAgcHJlZGljYXRlOiAoZWxlbTogVCkgPT4gYm9vbGVhbixcclxuKTogW0FycmF5PFQ+LCBBcnJheTxUPl0ge1xyXG4gIGNvbnN0IHBhc3MgPSBbXTtcclxuICBjb25zdCBmYWlsID0gW107XHJcbiAgYXJyYXkuZm9yRWFjaChlbGVtID0+IChwcmVkaWNhdGUoZWxlbSkgPyBwYXNzLnB1c2goZWxlbSkgOiBmYWlsLnB1c2goZWxlbSkpKTtcclxuICByZXR1cm4gW3Bhc3MsIGZhaWxdO1xyXG59XHJcblxyXG4vKipcclxuICogTWVyZ2VzIGEgZ2l2ZW4gYXJndW1lbnRzIG9mIG1hcHMgaW50byBvbmUgTWFwLCB3aXRoIHRoZSBsYXRlc3QgbWFwc1xyXG4gKiBvdmVycmlkaW5nIHRoZSB2YWx1ZXMgb2YgdGhlIHByaW9yIG1hcHMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gbWFwVW5pb248VCwgWD4oLi4ubWFwczogJFJlYWRPbmx5QXJyYXk8TWFwPFQsIFg+Pik6IE1hcDxULCBYPiB7XHJcbiAgY29uc3QgdW5pb25NYXAgPSBuZXcgTWFwKCk7XHJcbiAgZm9yIChjb25zdCBtYXAgb2YgbWFwcykge1xyXG4gICAgZm9yIChjb25zdCBba2V5LCB2YWx1ZV0gb2YgbWFwKSB7XHJcbiAgICAgIHVuaW9uTWFwLnNldChrZXksIHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHVuaW9uTWFwO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwQ29tcGFjdDxULCBYPihtYXA6IE1hcDxULCA/WD4pOiBNYXA8VCwgWD4ge1xyXG4gIGNvbnN0IHNlbGVjdGVkID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIG1hcCkge1xyXG4gICAgaWYgKHZhbHVlICE9IG51bGwpIHtcclxuICAgICAgc2VsZWN0ZWQuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gc2VsZWN0ZWQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXBGaWx0ZXI8VCwgWD4oXHJcbiAgbWFwOiBNYXA8VCwgWD4sXHJcbiAgc2VsZWN0b3I6IChrZXk6IFQsIHZhbHVlOiBYKSA9PiBib29sZWFuLFxyXG4pOiBNYXA8VCwgWD4ge1xyXG4gIGNvbnN0IHNlbGVjdGVkID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIG1hcCkge1xyXG4gICAgaWYgKHNlbGVjdG9yKGtleSwgdmFsdWUpKSB7XHJcbiAgICAgIHNlbGVjdGVkLnNldChrZXksIHZhbHVlKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHNlbGVjdGVkO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFwVHJhbnNmb3JtPFQsIFYxLCBWMj4oXHJcbiAgc3JjOiBNYXA8VCwgVjE+LFxyXG4gIHRyYW5zZm9ybTogKHZhbHVlOiBWMSwga2V5OiBUKSA9PiBWMixcclxuKTogTWFwPFQsIFYyPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIHNyYykge1xyXG4gICAgcmVzdWx0LnNldChrZXksIHRyYW5zZm9ybSh2YWx1ZSwga2V5KSk7XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXBFcXVhbDxULCBYPihcclxuICBtYXAxOiBNYXA8VCwgWD4sXHJcbiAgbWFwMjogTWFwPFQsIFg+LFxyXG4gIGVxdWFsQ29tcGFyYXRvcj86ICh2YWwxOiBYLCB2YWwyOiBYLCBrZXk/OiBUKSA9PiBib29sZWFuLFxyXG4pIHtcclxuICBpZiAobWFwMS5zaXplICE9PSBtYXAyLnNpemUpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3QgZXF1YWxGdW5jdGlvbiA9IGVxdWFsQ29tcGFyYXRvciB8fCAoKGE6IFgsIGI6IFgpID0+IGEgPT09IGIpO1xyXG4gIGZvciAoY29uc3QgW2tleSwgdmFsdWUxXSBvZiBtYXAxKSB7XHJcbiAgICBpZiAoIW1hcDIuaGFzKGtleSkgfHwgIWVxdWFsRnVuY3Rpb24odmFsdWUxLCAobWFwMi5nZXQoa2V5KTogYW55KSkpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcEdldFdpdGhEZWZhdWx0PEssIFY+KFxyXG4gIG1hcDogTWFwPEssIFY+LFxyXG4gIGtleTogSyxcclxuICBkZWZhdWx0XzogVixcclxuKTogViB7XHJcbiAgaWYgKG1hcC5oYXMoa2V5KSkge1xyXG4gICAgLy8gQ2FzdCB0aHJvdWdoIGBhbnlgIHNpbmNlIG1hcC5nZXQncyByZXR1cm4gaXMgYSBtYXliZSB0eXBlLiBXZSBjYW4ndCBqdXN0IGdldCB0aGUgdmFsdWUgYW5kXHJcbiAgICAvLyBjaGVjayBpdCBhZ2FpbnN0IGBudWxsYCwgc2luY2UgbnVsbC91bmRlZmluZWQgbWF5IGluaGFiaXQgVi4gV2Uga25vdyB0aGlzIGlzIHNhZmUgc2luY2Ugd2VcclxuICAgIC8vIGp1c3QgY2hlY2tlZCB0aGF0IHRoZSBtYXAgaGFzIHRoZSBrZXkuXHJcbiAgICByZXR1cm4gKG1hcC5nZXQoa2V5KTogYW55KTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuIGRlZmF1bHRfO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGFyZVNldHNFcXVhbDxUPihhOiBTZXQ8VD4sIGI6IFNldDxUPik6IGJvb2xlYW4ge1xyXG4gIHJldHVybiBhLnNpemUgPT09IGIuc2l6ZSAmJiBldmVyeShhLCBlbGVtZW50ID0+IGIuaGFzKGVsZW1lbnQpKTtcclxufVxyXG5cclxuLy8gQXJyYXkuZXZlcnkgYnV0IGZvciBhbnkgaXRlcmFibGUuXHJcbmV4cG9ydCBmdW5jdGlvbiBldmVyeTxUPihcclxuICB2YWx1ZXM6IEl0ZXJhYmxlPFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW1lbnQ6IFQpID0+IGJvb2xlYW4sXHJcbik6IGJvb2xlYW4ge1xyXG4gIGZvciAoY29uc3QgZWxlbWVudCBvZiB2YWx1ZXMpIHtcclxuICAgIGlmICghcHJlZGljYXRlKGVsZW1lbnQpKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXRJbnRlcnNlY3Q8VD4oYTogU2V0PFQ+LCBiOiBTZXQ8VD4pOiBTZXQ8VD4ge1xyXG4gIHJldHVybiBzZXRGaWx0ZXIoYSwgZSA9PiBiLmhhcyhlKSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHNldFVuaW9uVHdvPFQ+KGE6IFNldDxUPiwgYjogU2V0PFQ+KTogU2V0PFQ+IHtcclxuICAvLyBBdm9pZHMgdGhlIGV4dHJhIEFycmF5IGFsbG9jYXRpb25zIHRoYXQgYG5ldyBTZXQoWy4uLmEsIC4uLmJdKWAgd291bGQgaW5jdXIuIFNvbWUgcXVpY2sgdGVzdHNcclxuICAvLyBpbmRpY2F0ZSBpdCB3b3VsZCBiZSBhYm91dCA2MCUgc2xvd2VyLlxyXG4gIGNvbnN0IHJlc3VsdCA9IG5ldyBTZXQoYSk7XHJcbiAgYi5mb3JFYWNoKHggPT4ge1xyXG4gICAgcmVzdWx0LmFkZCh4KTtcclxuICB9KTtcclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2V0VW5pb248VD4oLi4uc2V0czogJFJlYWRPbmx5QXJyYXk8U2V0PFQ+Pik6IFNldDxUPiB7XHJcbiAgaWYgKHNldHMubGVuZ3RoIDwgMSkge1xyXG4gICAgcmV0dXJuIG5ldyBTZXQoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IHNldFJlZHVjZXIgPSAoYWNjdW11bGF0b3I6IFNldDxUPiwgY3VycmVudDogU2V0PFQ+KTogU2V0PFQ+ID0+IHtcclxuICAgIHJldHVybiBzZXRVbmlvblR3byhhY2N1bXVsYXRvciwgY3VycmVudCk7XHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIHNldHMucmVkdWNlKHNldFJlZHVjZXIpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2V0RGlmZmVyZW5jZTxUPihcclxuICBhOiBTZXQ8VD4sXHJcbiAgYjogU2V0PFQ+LFxyXG4gIGhhc2hfPzogKHY6IFQpID0+IGFueSxcclxuKTogU2V0PFQ+IHtcclxuICBpZiAoYS5zaXplID09PSAwKSB7XHJcbiAgICByZXR1cm4gbmV3IFNldCgpO1xyXG4gIH0gZWxzZSBpZiAoYi5zaXplID09PSAwKSB7XHJcbiAgICByZXR1cm4gbmV3IFNldChhKTtcclxuICB9XHJcbiAgY29uc3QgcmVzdWx0ID0gbmV3IFNldCgpO1xyXG4gIGNvbnN0IGhhc2ggPSBoYXNoXyB8fCAoeCA9PiB4KTtcclxuICBjb25zdCBiSGFzaGVzID0gaGFzaF8gPT0gbnVsbCA/IGIgOiBuZXcgU2V0KEFycmF5LmZyb20oYi52YWx1ZXMoKSkubWFwKGhhc2gpKTtcclxuICBhLmZvckVhY2godmFsdWUgPT4ge1xyXG4gICAgaWYgKCFiSGFzaGVzLmhhcyhoYXNoKHZhbHVlKSkpIHtcclxuICAgICAgcmVzdWx0LmFkZCh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNldEZpbHRlcjxUPihcclxuICBzZXQ6IFNldDxUPixcclxuICBwcmVkaWNhdGU6ICh2YWx1ZTogVCkgPT4gYm9vbGVhbixcclxuKTogU2V0PFQ+IHtcclxuICBjb25zdCBvdXQgPSBuZXcgU2V0KCk7XHJcbiAgZm9yIChjb25zdCBpdGVtIG9mIHNldCkge1xyXG4gICAgaWYgKHByZWRpY2F0ZShpdGVtKSkge1xyXG4gICAgICBvdXQuYWRkKGl0ZW0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmV0dXJuIG91dDtcclxufVxyXG5cclxuLyoqXHJcbiAqIE8oMSktY2hlY2sgaWYgYSBnaXZlbiBvYmplY3QgaXMgZW1wdHkgKGhhcyBubyBwcm9wZXJ0aWVzLCBpbmhlcml0ZWQgb3Igbm90KVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzRW1wdHkob2JqOiBPYmplY3QpOiBib29sZWFuIHtcclxuICBmb3IgKGNvbnN0IGtleSBpbiBvYmopIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb25zdHJ1Y3RzIGFuIGVudW1lcmF0aW9uIHdpdGgga2V5cyBlcXVhbCB0byB0aGVpciB2YWx1ZS5cclxuICogZS5nLiBrZXlNaXJyb3Ioe2E6IG51bGwsIGI6IG51bGx9KSA9PiB7YTogJ2EnLCBiOiAnYid9XHJcbiAqXHJcbiAqIEJhc2VkIG9mZiB0aGUgZXF1aXZhbGVudCBmdW5jdGlvbiBpbiB3d3cuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24ga2V5TWlycm9yPFQ6IE9iamVjdD4ob2JqOiBUKTogJE9iak1hcGk8VCwgPEs+KGs6IEspID0+IEs+IHtcclxuICBjb25zdCByZXQgPSB7fTtcclxuICBPYmplY3Qua2V5cyhvYmopLmZvckVhY2goa2V5ID0+IHtcclxuICAgIHJldFtrZXldID0ga2V5O1xyXG4gIH0pO1xyXG4gIHJldHVybiByZXQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHaXZlbiBhbiBhcnJheSBvZiBba2V5LCB2YWx1ZV0gcGFpcnMsIGNvbnN0cnVjdCBhIG1hcCB3aGVyZSB0aGUgdmFsdWVzIGZvclxyXG4gKiBlYWNoIGtleSBhcmUgY29sbGVjdGVkIGludG8gYW4gYXJyYXkgb2YgdmFsdWVzLCBpbiBvcmRlci5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjb2xsZWN0PEssIFY+KHBhaXJzOiAkUmVhZE9ubHlBcnJheTxbSywgVl0+KTogTWFwPEssIEFycmF5PFY+PiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gbmV3IE1hcCgpO1xyXG4gIGZvciAoY29uc3QgcGFpciBvZiBwYWlycykge1xyXG4gICAgY29uc3QgW2ssIHZdID0gcGFpcjtcclxuICAgIGxldCBsaXN0ID0gcmVzdWx0LmdldChrKTtcclxuICAgIGlmIChsaXN0ID09IG51bGwpIHtcclxuICAgICAgbGlzdCA9IFtdO1xyXG4gICAgICByZXN1bHQuc2V0KGssIGxpc3QpO1xyXG4gICAgfVxyXG4gICAgbGlzdC5wdXNoKHYpO1xyXG4gIH1cclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0RnJvbVBhaXJzPFQ6IHN0cmluZywgVT4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFtULCBVXT4sXHJcbik6IHtbVF06IFV9IHtcclxuICBjb25zdCByZXN1bHQgPSB7fTtcclxuICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBpdGVyYWJsZSkge1xyXG4gICAgcmVzdWx0W2tleV0gPSB2YWx1ZTtcclxuICB9XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9iamVjdE1hcFZhbHVlczxULCBVLCBWPihcclxuICBvYmplY3Q6IHtbVDogc3RyaW5nXTogVX0sXHJcbiAgcHJvamVjdDogKHZhbHVlOiBVLCBrZXk6IFQpID0+IFYsXHJcbik6IHtbVF06IFZ9IHtcclxuICBjb25zdCByZXN1bHQgPSB7fTtcclxuICBPYmplY3Qua2V5cyhvYmplY3QpLmZvckVhY2goa2V5ID0+IHtcclxuICAgIHJlc3VsdFtrZXldID0gcHJvamVjdChvYmplY3Rba2V5XSwgKChrZXk6IGFueSk6IFQpKTtcclxuICB9KTtcclxuICByZXR1cm4gcmVzdWx0O1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgTXVsdGlNYXA8SywgVj4ge1xyXG4gIC8vIEludmFyaWFudDogbm8gZW1wdHkgc2V0cy4gVGhleSBzaG91bGQgYmUgcmVtb3ZlZCBpbnN0ZWFkLlxyXG4gIF9tYXA6IE1hcDxLLCBTZXQ8Vj4+O1xyXG5cclxuICAvLyBUT0RPIG1heSBiZSB3b3J0aCBkZWZpbmluZyBhIGdldHRlciBidXQgbm8gc2V0dGVyLCB0byBtaW1pYyBNYXAuIEJ1dCBwbGVhc2UganVzdCBiZWhhdmUgYW5kXHJcbiAgLy8gZG9uJ3QgbXV0YXRlIHRoaXMgZnJvbSBvdXRzaWRlIHRoaXMgY2xhc3MuXHJcbiAgLy9cclxuICAvLyBJbnZhcmlhbnQ6IGVxdWFsIHRvIHRoZSBzdW0gb2YgdGhlIHNpemVzIG9mIGFsbCB0aGUgc2V0cyBjb250YWluZWQgaW4gdGhpcy5fbWFwXHJcbiAgLyogVGhlIHRvdGFsIG51bWJlciBvZiBrZXktdmFsdWUgYmluZGluZ3MgY29udGFpbmVkICovXHJcbiAgc2l6ZTogbnVtYmVyO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuX21hcCA9IG5ldyBNYXAoKTtcclxuICAgIHRoaXMuc2l6ZSA9IDA7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIFJldHVybnMgdGhlIHNldCBvZiB2YWx1ZXMgYXNzb2NpYXRlZCB3aXRoIHRoZSBnaXZlbiBrZXkuIERvIG5vdCBtdXRhdGUgdGhlIGdpdmVuIHNldC4gQ29weSBpdFxyXG4gICAqIGlmIHlvdSBuZWVkIHRvIHN0b3JlIGl0IHBhc3QgdGhlIG5leHQgb3BlcmF0aW9uIG9uIHRoaXMgTXVsdGlNYXAuXHJcbiAgICovXHJcbiAgZ2V0KGtleTogSyk6IFNldDxWPiB7XHJcbiAgICBjb25zdCBzZXQgPSB0aGlzLl9tYXAuZ2V0KGtleSk7XHJcbiAgICBpZiAoc2V0ID09IG51bGwpIHtcclxuICAgICAgcmV0dXJuIG5ldyBTZXQoKTtcclxuICAgIH1cclxuICAgIHJldHVybiBzZXQ7XHJcbiAgfVxyXG5cclxuICAvKlxyXG4gICAqIE1pbWljcyB0aGUgTWFwLnByb3RvdHlwZS5zZXQgaW50ZXJmYWNlLiBEZWxpYmVyYXRlbHkgZGlkIG5vdCBjaG9vc2UgXCJzZXRcIiBhcyB0aGUgbmFtZSBzaW5jZSB0aGVcclxuICAgKiBpbXBsaWNhdGlvbiBpcyB0aGF0IGl0IHJlbW92ZXMgdGhlIHByZXZpb3VzIGJpbmRpbmcuXHJcbiAgICovXHJcbiAgYWRkKGtleTogSywgdmFsdWU6IFYpOiBNdWx0aU1hcDxLLCBWPiB7XHJcbiAgICBsZXQgc2V0ID0gdGhpcy5fbWFwLmdldChrZXkpO1xyXG4gICAgaWYgKHNldCA9PSBudWxsKSB7XHJcbiAgICAgIHNldCA9IG5ldyBTZXQoKTtcclxuICAgICAgdGhpcy5fbWFwLnNldChrZXksIHNldCk7XHJcbiAgICB9XHJcbiAgICBpZiAoIXNldC5oYXModmFsdWUpKSB7XHJcbiAgICAgIHNldC5hZGQodmFsdWUpO1xyXG4gICAgICB0aGlzLnNpemUrKztcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzO1xyXG4gIH1cclxuXHJcbiAgLypcclxuICAgKiBNaW1pY3MgdGhlIE1hcC5wcm90b3R5cGUuc2V0IGludGVyZmFjZS4gUmVwbGFjZXMgdGhlIHByZXZpb3VzIGJpbmRpbmcgd2l0aCBuZXcgdmFsdWVzLlxyXG4gICAqL1xyXG4gIHNldChrZXk6IEssIHZhbHVlczogSXRlcmFibGU8Vj4pOiB2b2lkIHtcclxuICAgIHRoaXMuZGVsZXRlQWxsKGtleSk7XHJcbiAgICBjb25zdCBuZXdTZXQgPSBuZXcgU2V0KHZhbHVlcyk7XHJcbiAgICBpZiAobmV3U2V0LnNpemUgIT09IDApIHtcclxuICAgICAgdGhpcy5fbWFwLnNldChrZXksIG5ld1NldCk7XHJcbiAgICAgIHRoaXMuc2l6ZSArPSBuZXdTZXQuc2l6ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogRGVsZXRlcyBhIHNpbmdsZSBiaW5kaW5nLiBSZXR1cm5zIHRydWUgaWZmIHRoZSBiaW5kaW5nIGV4aXN0ZWQuXHJcbiAgICovXHJcbiAgZGVsZXRlKGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IHNldCA9IHRoaXMuZ2V0KGtleSk7XHJcbiAgICBjb25zdCBkaWRSZW1vdmUgPSBzZXQuZGVsZXRlKHZhbHVlKTtcclxuICAgIGlmIChzZXQuc2l6ZSA9PT0gMCkge1xyXG4gICAgICB0aGlzLl9tYXAuZGVsZXRlKGtleSk7XHJcbiAgICB9XHJcbiAgICBpZiAoZGlkUmVtb3ZlKSB7XHJcbiAgICAgIHRoaXMuc2l6ZS0tO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGRpZFJlbW92ZTtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICogRGVsZXRlcyBhbGwgYmluZGluZ3MgYXNzb2NpYXRlZCB3aXRoIHRoZSBnaXZlbiBrZXkuIFJldHVybnMgdHJ1ZSBpZmYgYW55IGJpbmRpbmdzIHdlcmUgZGVsZXRlZC5cclxuICAgKi9cclxuICBkZWxldGVBbGwoa2V5OiBLKTogYm9vbGVhbiB7XHJcbiAgICBjb25zdCBzZXQgPSB0aGlzLmdldChrZXkpO1xyXG4gICAgdGhpcy5zaXplIC09IHNldC5zaXplO1xyXG4gICAgcmV0dXJuIHRoaXMuX21hcC5kZWxldGUoa2V5KTtcclxuICB9XHJcblxyXG4gIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgdGhpcy5fbWFwLmNsZWFyKCk7XHJcbiAgICB0aGlzLnNpemUgPSAwO1xyXG4gIH1cclxuXHJcbiAgaGFzKGtleTogSywgdmFsdWU6IFYpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLmdldChrZXkpLmhhcyh2YWx1ZSk7XHJcbiAgfVxyXG5cclxuICBoYXNBbnkoa2V5OiBLKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fbWFwLmhhcyhrZXkpO1xyXG4gIH1cclxuXHJcbiAgKnZhbHVlcygpOiBJdGVyYWJsZTxWPiB7XHJcbiAgICBmb3IgKGNvbnN0IHNldCBvZiB0aGlzLl9tYXAudmFsdWVzKCkpIHtcclxuICAgICAgeWllbGQqIHNldDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvckVhY2goY2FsbGJhY2s6ICh2YWx1ZTogViwga2V5OiBLLCBvYmo6IE11bHRpTWFwPEssIFY+KSA9PiB2b2lkKTogdm9pZCB7XHJcbiAgICB0aGlzLl9tYXAuZm9yRWFjaCgodmFsdWVzLCBrZXkpID0+XHJcbiAgICAgIHZhbHVlcy5mb3JFYWNoKHZhbHVlID0+IGNhbGxiYWNrKHZhbHVlLCBrZXksIHRoaXMpKSxcclxuICAgICk7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0VmFsdWVzPFQ+KG9iajoge1trZXk6IHN0cmluZ106IFR9KTogQXJyYXk8VD4ge1xyXG4gIHJldHVybiBPYmplY3Qua2V5cyhvYmopLm1hcChrZXkgPT4gb2JqW2tleV0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JqZWN0RW50cmllczxUPihvYmo6ID97W2tleTogc3RyaW5nXTogVH0pOiBBcnJheTxbc3RyaW5nLCBUXT4ge1xyXG4gIGlmIChvYmogPT0gbnVsbCkge1xyXG4gICAgdGhyb3cgbmV3IFR5cGVFcnJvcigpO1xyXG4gIH1cclxuICBjb25zdCBlbnRyaWVzID0gW107XHJcbiAgZm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XHJcbiAgICBpZiAoXHJcbiAgICAgIG9iai5oYXNPd25Qcm9wZXJ0eShrZXkpICYmXHJcbiAgICAgIE9iamVjdC5wcm90b3R5cGUucHJvcGVydHlJc0VudW1lcmFibGUuY2FsbChvYmosIGtleSlcclxuICAgICkge1xyXG4gICAgICBlbnRyaWVzLnB1c2goW2tleSwgb2JqW2tleV1dKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGVudHJpZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvYmplY3RGcm9tTWFwPFQ+KG1hcDogTWFwPHN0cmluZywgVD4pOiB7W2tleTogc3RyaW5nXTogVH0ge1xyXG4gIGNvbnN0IG9iaiA9IHt9O1xyXG4gIG1hcC5mb3JFYWNoKCh2LCBrKSA9PiB7XHJcbiAgICBvYmpba10gPSB2O1xyXG4gIH0pO1xyXG4gIHJldHVybiBvYmo7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiogY29uY2F0SXRlcmF0b3JzPFQ+KFxyXG4gIC4uLml0ZXJhdG9yczogJFJlYWRPbmx5QXJyYXk8SXRlcmFibGU8VD4+XHJcbik6IEl0ZXJhdG9yPFQ+IHtcclxuICBmb3IgKGNvbnN0IGl0ZXJhdG9yIG9mIGl0ZXJhdG9ycykge1xyXG4gICAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhdG9yKSB7XHJcbiAgICAgIHlpZWxkIGVsZW1lbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc29tZU9mSXRlcmFibGU8VD4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW1lbnQ6IFQpID0+IGJvb2xlYW4sXHJcbik6IGJvb2xlYW4ge1xyXG4gIGZvciAoY29uc3QgZWxlbWVudCBvZiBpdGVyYWJsZSkge1xyXG4gICAgaWYgKHByZWRpY2F0ZShlbGVtZW50KSkge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGZhbHNlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZmluZEluSXRlcmFibGU8VD4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+LFxyXG4gIHByZWRpY2F0ZTogKGVsZW1lbnQ6IFQpID0+IGJvb2xlYW4sXHJcbik6ID9UIHtcclxuICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgaXRlcmFibGUpIHtcclxuICAgIGlmIChwcmVkaWNhdGUoZWxlbWVudCkpIHtcclxuICAgICAgcmV0dXJuIGVsZW1lbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBudWxsO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24qIGZpbHRlckl0ZXJhYmxlPFQ+KFxyXG4gIGl0ZXJhYmxlOiBJdGVyYWJsZTxUPixcclxuICBwcmVkaWNhdGU6IChlbGVtZW50OiBUKSA9PiBib29sZWFuLFxyXG4pOiBJdGVyYWJsZTxUPiB7XHJcbiAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhYmxlKSB7XHJcbiAgICBpZiAocHJlZGljYXRlKGVsZW1lbnQpKSB7XHJcbiAgICAgIHlpZWxkIGVsZW1lbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24qIG1hcEl0ZXJhYmxlPFQsIE0+KFxyXG4gIGl0ZXJhYmxlOiBJdGVyYWJsZTxUPixcclxuICBwcm9qZWN0b3JGbjogKGVsZW1lbnQ6IFQpID0+IE0sXHJcbik6IEl0ZXJhYmxlPE0+IHtcclxuICBmb3IgKGNvbnN0IGVsZW1lbnQgb2YgaXRlcmFibGUpIHtcclxuICAgIHlpZWxkIHByb2plY3RvckZuKGVsZW1lbnQpO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uKiB0YWtlSXRlcmFibGU8VD4oXHJcbiAgaXRlcmFibGU6IEl0ZXJhYmxlPFQ+LFxyXG4gIGxpbWl0OiBudW1iZXIsXHJcbik6IEl0ZXJhYmxlPFQ+IHtcclxuICBsZXQgaSA9IDA7XHJcbiAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhYmxlKSB7XHJcbiAgICBpZiAoKytpID4gbGltaXQpIHtcclxuICAgICAgYnJlYWs7XHJcbiAgICB9XHJcbiAgICB5aWVsZCBlbGVtZW50O1xyXG4gIH1cclxufVxyXG5cclxuLy8gUmV0dXJuIGFuIGl0ZXJhYmxlIG9mIHRoZSBudW1iZXJzIHN0YXJ0IChpbmNsdXNpdmUpIHRocm91Z2ggc3RvcCAoZXhjbHVzaXZlKVxyXG5leHBvcnQgZnVuY3Rpb24qIHJhbmdlKFxyXG4gIHN0YXJ0OiBudW1iZXIsXHJcbiAgc3RvcDogbnVtYmVyLFxyXG4gIHN0ZXA/OiBudW1iZXIgPSAxLFxyXG4pOiBJdGVyYWJsZTxudW1iZXI+IHtcclxuICAvLyBXZSBkb24ndCBjdXJyZW50bHkgc3VwcG9ydCBuZWdhdGl2ZSBzdGVwIHZhbHVlcy5cclxuICBpbnZhcmlhbnQoc3RlcCA+IDApO1xyXG4gIGZvciAobGV0IGkgPSBzdGFydDsgaSA8IHN0b3A7IGkgKz0gc3RlcCkge1xyXG4gICAgeWllbGQgaTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBmaXJzdE9mSXRlcmFibGU8VD4oaXRlcmFibGU6IEl0ZXJhYmxlPFQ+KTogP1Qge1xyXG4gIHJldHVybiBmaW5kSW5JdGVyYWJsZShpdGVyYWJsZSwgKCkgPT4gdHJ1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpdGVyYWJsZUlzRW1wdHk8VD4oaXRlcmFibGU6IEl0ZXJhYmxlPFQ+KTogYm9vbGVhbiB7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXVudXNlZC12YXJzXHJcbiAgZm9yIChjb25zdCBlbGVtZW50IG9mIGl0ZXJhYmxlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIHJldHVybiB0cnVlO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXRlcmFibGVDb250YWluczxUPihpdGVyYWJsZTogSXRlcmFibGU8VD4sIHZhbHVlOiBUKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuICFpdGVyYWJsZUlzRW1wdHkoXHJcbiAgICBmaWx0ZXJJdGVyYWJsZShpdGVyYWJsZSwgZWxlbWVudCA9PiBlbGVtZW50ID09PSB2YWx1ZSksXHJcbiAgKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvdW50PFQ+KGl0ZXJhYmxlOiBJdGVyYWJsZTxUPik6IG51bWJlciB7XHJcbiAgbGV0IHNpemUgPSAwO1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby11bnVzZWQtdmFyc1xyXG4gIGZvciAoY29uc3QgZWxlbWVudCBvZiBpdGVyYWJsZSkge1xyXG4gICAgc2l6ZSsrO1xyXG4gIH1cclxuICByZXR1cm4gc2l6ZTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGlzSXRlcmFibGUob2JqOiBhbnkpOiBib29sZWFuIHtcclxuICByZXR1cm4gdHlwZW9mIG9ialtTeW1ib2wuaXRlcmF0b3JdID09PSAnZnVuY3Rpb24nO1xyXG59XHJcblxyXG4vLyBUcmF2ZXJzZSBhbiBhcnJheSBmcm9tIHRoZSBpbnNpZGUgb3V0LCBzdGFydGluZyBhdCB0aGUgc3BlY2lmaWVkIGluZGV4LlxyXG5leHBvcnQgZnVuY3Rpb24qIGluc2lkZU91dDxUPihcclxuICBhcnI6ICRSZWFkT25seUFycmF5PFQ+LFxyXG4gIHN0YXJ0aW5nSW5kZXg/OiBudW1iZXIsXHJcbik6IEl0ZXJhYmxlPFtULCBudW1iZXJdPiB7XHJcbiAgaWYgKGFyci5sZW5ndGggPT09IDApIHtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIGxldCBpID1cclxuICAgIHN0YXJ0aW5nSW5kZXggPT0gbnVsbFxyXG4gICAgICA/IE1hdGguZmxvb3IoYXJyLmxlbmd0aCAvIDIpXHJcbiAgICAgIDogTWF0aC5taW4oYXJyLmxlbmd0aCwgTWF0aC5tYXgoMCwgc3RhcnRpbmdJbmRleCkpO1xyXG4gIGxldCBqID0gaSAtIDE7XHJcblxyXG4gIHdoaWxlIChpIDwgYXJyLmxlbmd0aCB8fCBqID49IDApIHtcclxuICAgIGlmIChpIDwgYXJyLmxlbmd0aCkge1xyXG4gICAgICB5aWVsZCBbYXJyW2ldLCBpXTtcclxuICAgICAgaSsrO1xyXG4gICAgfVxyXG4gICAgaWYgKGogPj0gMCkge1xyXG4gICAgICB5aWVsZCBbYXJyW2pdLCBqXTtcclxuICAgICAgai0tO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hcEZyb21PYmplY3Q8VD4ob2JqOiB7W2tleTogc3RyaW5nXTogVH0pOiBNYXA8c3RyaW5nLCBUPiB7XHJcbiAgcmV0dXJuIG5ldyBNYXAob2JqZWN0RW50cmllcyhvYmopKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGxhc3RGcm9tQXJyYXk8VD4oYXJyOiAkUmVhZE9ubHlBcnJheTxUPik6IFQge1xyXG4gIHJldHVybiBhcnJbYXJyLmxlbmd0aCAtIDFdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGlzdGluY3Q8VD4oYXJyYXk6IFRbXSwga2V5Rm4/OiAodDogVCkgPT4gc3RyaW5nKTogVFtdIHtcclxuICBpZiAoa2V5Rm4gPT0gbnVsbCkge1xyXG4gICAgcmV0dXJuIEFycmF5LmZyb20obmV3IFNldChhcnJheSkpO1xyXG4gIH1cclxuXHJcbiAgY29uc3Qgc2VlbktleXMgPSBuZXcgU2V0KCk7XHJcbiAgcmV0dXJuIGFycmF5LmZpbHRlcihlbGVtID0+IHtcclxuICAgIGNvbnN0IGtleSA9IGtleUZuKGVsZW0pO1xyXG4gICAgaWYgKHNlZW5LZXlzLmhhcyhrZXkpKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHNlZW5LZXlzLmFkZChrZXkpO1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0TWFwPEssIFY+IGV4dGVuZHMgTWFwPEssIFY+IHtcclxuICBfZmFjdG9yeTogSyA9PiBWO1xyXG5cclxuICBjb25zdHJ1Y3RvcihmYWN0b3J5OiBLID0+IFYsIGl0ZXJhYmxlOiA/SXRlcmFibGU8W0ssIFZdPikge1xyXG4gICAgc3VwZXIoaXRlcmFibGUpO1xyXG4gICAgdGhpcy5fZmFjdG9yeSA9IGZhY3Rvcnk7XHJcbiAgfVxyXG5cclxuICBnZXQoa2V5OiBLKTogViB7XHJcbiAgICBpZiAoIXRoaXMuaGFzKGtleSkpIHtcclxuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9mYWN0b3J5KGtleSk7XHJcbiAgICAgIHRoaXMuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgICAvLyBJZiB0aGUga2V5IGlzIHByZXNlbnQgd2UgbXVzdCBoYXZlIGEgdmFsdWUgb2YgdHlwZSBWLlxyXG4gICAgcmV0dXJuIChzdXBlci5nZXQoa2V5KTogYW55KTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBEZWZhdWx0V2Vha01hcDxLOiB7fSwgVj4gZXh0ZW5kcyBXZWFrTWFwPEssIFY+IHtcclxuICBfZmFjdG9yeTogSyA9PiBWO1xyXG5cclxuICBjb25zdHJ1Y3RvcihmYWN0b3J5OiBLID0+IFYsIGl0ZXJhYmxlOiA/SXRlcmFibGU8W0ssIFZdPikge1xyXG4gICAgc3VwZXIoaXRlcmFibGUpO1xyXG4gICAgdGhpcy5fZmFjdG9yeSA9IGZhY3Rvcnk7XHJcbiAgfVxyXG5cclxuICBnZXQoa2V5OiBLKTogViB7XHJcbiAgICBpZiAoIXRoaXMuaGFzKGtleSkpIHtcclxuICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLl9mYWN0b3J5KGtleSk7XHJcbiAgICAgIHRoaXMuc2V0KGtleSwgdmFsdWUpO1xyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9XHJcbiAgICAvLyBJZiB0aGUga2V5IGlzIHByZXNlbnQgd2UgbXVzdCBoYXZlIGEgdmFsdWUgb2YgdHlwZSBWLlxyXG4gICAgcmV0dXJuIChzdXBlci5nZXQoa2V5KTogYW55KTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm4gdGhlIGhpZ2hlc3QgcmFua2VkIGl0ZW0gaW4gYSBsaXN0LCBhY2NvcmRpbmcgdG8gdGhlIHByb3ZpZGVkIHJhbmtpbmcgZnVuY3Rpb24uIEEgbWF4IHJhbmtcclxuICogbWF5IG9wdGlvbmFsbHkgYmUgcHJvdmlkZWQgc28gdGhlIHdob2xlIGxpc3QgZG9lc24ndCBoYXZlIHRvIGJlIGl0ZXJhdGVkLiBJdGVtcyB3aXRoIHJhbmtzIG9mXHJcbiAqIHplcm8gb3IgbGVzcyBhcmUgbmV2ZXIgcmV0dXJuZWQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZmluZFRvcFJhbmtlZDxUPihcclxuICBpdGVtczogSXRlcmFibGU8VD4sXHJcbiAgcmFua2VyOiBUID0+IG51bWJlcixcclxuICBtYXhSYW5rPzogbnVtYmVyLFxyXG4pOiA/VCB7XHJcbiAgbGV0IG1heFNlZW5SYW5rID0gMDtcclxuICBsZXQgbWF4UmFua2VkSXRlbTtcclxuICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcclxuICAgIGNvbnN0IHJhbmsgPSByYW5rZXIoaXRlbSk7XHJcbiAgICBpZiAocmFuayA9PT0gbWF4UmFuaykge1xyXG4gICAgICByZXR1cm4gaXRlbTtcclxuICAgIH1cclxuICAgIGlmIChyYW5rID4gMCAmJiByYW5rID4gbWF4U2VlblJhbmspIHtcclxuICAgICAgbWF4U2VlblJhbmsgPSByYW5rO1xyXG4gICAgICBtYXhSYW5rZWRJdGVtID0gaXRlbTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIG1heFJhbmtlZEl0ZW07XHJcbn1cclxuIl19 |
@@ -135,2 +135,2 @@ "use strict"; | ||
exports.ConfigCache = ConfigCache; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0NvbmZpZ0NhY2hlLmpzIl0sIm5hbWVzIjpbIkNvbmZpZ0NhY2hlIiwiY29uc3RydWN0b3IiLCJjb25maWdQYXR0ZXJucyIsInNlYXJjaFN0cmF0ZWd5IiwiX2NvbmZpZ1BhdHRlcm5zIiwiX3NlYXJjaFN0cmF0ZWd5IiwiX2NvbmZpZ0NhY2hlIiwibWF4IiwibWF4QWdlIiwiZ2V0Q29uZmlnRGlyIiwicGF0aCIsInJlc3VsdCIsImdldCIsIl9maW5kQ29uZmlnRGlyIiwic2V0IiwiY29uZmlnRGlycyIsIlByb21pc2UiLCJhbGwiLCJtYXAiLCJjb25maWdGaWxlIiwiZnNQcm9taXNlIiwiZmluZEZ1cnRoZXN0RmlsZSIsImZpbHRlciIsIkJvb2xlYW4iLCJyZWR1Y2UiLCJwcmV2aW91cyIsImNvbmZpZ0RpciIsImxlbmd0aCIsInBhdGhTcGxpdCIsIm51Y2xpZGVVcmkiLCJzcGxpdCIsImNvbmZpZ1BhdHRlcm4iLCJjb25maWdTcGxpdCIsImZvdW5kSW5kZXgiLCJqb2luIiwic2xpY2UiLCJmaW5kIiwiZGlyIiwiZGlybmFtZSIsIndyYXBwZXIiLCJleGlzdHMiLCJpc1Jvb3QiLCJjYW5kaWRhdGVEaXIiLCJmaW5kTmVhcmVzdEZpbGUiLCJkaXNwb3NlIiwicmVzZXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFlQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQWxCQTs7Ozs7Ozs7Ozs7QUEyQk8sTUFBTUEsV0FBTixDQUFrQjtBQUt2QkMsRUFBQUEsV0FBVyxDQUNUQyxjQURTLEVBRVRDLGNBQStCLEdBQUcsU0FGekIsRUFHVDtBQUFBLFNBUEZDLGVBT0U7QUFBQSxTQU5GQyxlQU1FO0FBQUEsU0FMRkMsWUFLRTtBQUNBLFNBQUtGLGVBQUwsR0FBdUJGLGNBQXZCO0FBQ0EsU0FBS0csZUFBTCxHQUF1QkYsY0FBdkI7QUFDQSxTQUFLRyxZQUFMLEdBQW9CLHVCQUFJO0FBQ3RCQyxNQUFBQSxHQUFHLEVBQUUs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LElBQUksS0FBS2hDLGVBQUwsS0FBeUIsUUFBN0IsRUFBdUM7QUFDNUMsWUFBTXFDLFlBQVksR0FBRyxNQUFNdEIsbUJBQVV1QixlQUFWLENBQTBCLFdBQTFCLEVBQXVDakMsSUFBdkMsQ0FBM0I7O0FBQ0EsVUFDRWdDLFlBQVksSUFBSSxJQUFoQixLQUNDLE1BQU10QixtQkFBVW9CLE1BQVYsQ0FBaUJYLG9CQUFXSyxJQUFYLENBQWdCUSxZQUFoQixFQUE4QixZQUE5QixDQUFqQixDQURQLENBREYsRUFHRTtBQUNBLGVBQU9BLFlBQVA7QUFDRDs7QUFDRCxhQUFPLElBQVA7QUFDRCxLQVRNLE1BU0E7QUFDSixXQUFLckMsZUFBTixDQURLLENBRUw7O0FBQ0EsWUFBTVUsVUFBVSxHQUFHLE1BQU1DLE9BQU8sQ0FBQ0MsR0FBUixDQUN2QixLQUFLYixlQUFMLENBQXFCYyxHQUFyQixDQUF5QkMsVUFBVSxJQUNqQ0MsbUJBQVV1QixlQUFWLENBQTBCeEIsVUFBMUIsRUFBc0NULElBQXRDLENBREYsQ0FEdUIsQ0FBekI7QUFLQSxhQUFPSyxVQUFVLENBQUNPLE1BQVgsQ0FBa0JDLE9BQWxCLEVBQTJCQyxNQUEzQixDQUFrQyxDQUFDQyxRQUFELEVBQVdDLFNBQVgsS0FBeUI7QUFDaEUsWUFBSUQsUUFBUSxJQUFJLElBQVosSUFBb0JDLFNBQVMsQ0FBQ0MsTUFBVixHQUFtQkYsUUFBUSxDQUFDRSxNQUFwRCxFQUE0RDtBQUMxRCxpQkFBT0QsU0FBUDtBQUNEOztBQUNELGVBQU9ELFFBQVA7QUFDRCxPQUxNLEVBS0osSUFMSSxDQUFQO0FBTUQ7QUFDRjs7QUFFRG1CLEVBQUFBLE9BQU8sR0FBUztBQUNkLFNBQUt0QyxZQUFMLENBQWtCdUMsS0FBbEI7QUFDRDs7QUFySHNCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB0eXBlIHtMUlVDYWNoZX0gZnJvbSAnbHJ1LWNhY2hlJztcclxuaW1wb3J0IHR5cGUge051Y2xpZGVVcml9IGZyb20gJy4vbnVjbGlkZVVyaSc7XHJcblxyXG5pbXBvcnQgTFJVIGZyb20gJ2xydS1jYWNoZSc7XHJcbmltcG9ydCB7ZmluZFN1YkFycmF5SW5kZXh9IGZyb20gJy4vY29sbGVjdGlvbic7XHJcbmltcG9ydCBmc1Byb21pc2UgZnJvbSAnLi9mc1Byb21pc2UnO1xyXG5pbXBvcnQgbnVjbGlkZVVyaSBmcm9tICcuL251Y2xpZGVVcmknO1xyXG5cclxuZXhwb3J0IHR5cGUgU2VhcmNoU3RyYXRlZ3kgPVxyXG4gIHwgJ25lYXJlc3QnXHJcbiAgfCAnYXVyb3JhJ1xyXG4gIHwgJ2VjbGlwc2UnXHJcbiAgfCAnb2NhbWwnXHJcbiAgfCAndGhyaWZ0JztcclxuXHJcbmV4cG9ydCBjbGFzcyBDb25maWdDYWNoZSB7XHJcbiAgX2NvbmZpZ1BhdHRlcm5zOiBBcnJheTxzdHJpbmc+O1xyXG4gIF9zZWFyY2hTdHJhdGVneTogU2VhcmNoU3RyYXRlZ3k7XHJcbiAgX2NvbmZpZ0NhY2hlOiBMUlVDYWNoZTxOdWNsaWRlVXJpLCBQcm9taXNlPD9OdWNsaWRlVXJpPj47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgY29uZmlnUGF0dGVybnM6IEFycmF5PHN0cmluZz4sXHJcbiAgICBzZWFyY2hTdHJhdGVneT86IFNlYXJjaFN0cmF0ZWd5ID0gJ25lYXJlc3QnLFxyXG4gICkge1xyXG4gICAgdGhpcy5fY29uZmlnUGF0dGVybnMgPSBjb25maWdQYXR0ZXJucztcclxuICAgIHRoaXMuX3NlYXJjaFN0cmF0ZWd5ID0gc2VhcmNoU3RyYXRlZ3k7XHJcbiAgICB0aGlzLl9jb25maWdDYWNoZSA9IExSVSh7XHJcbiAgICAgIG1heDogMjAwLCAvLyBXYW50IHRoaXMgdG8gZXhjZWVkIHRoZSBtYXhpbXVtIGV4cGVjdGVkIG51bWJlciBvZiBvcGVuIGZpbGVzICsgZGlycy5cclxuICAgICAgbWF4QWdlOiAxMDAwICogMzAsIC8vIDMwIHNlY29uZHNcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uZmlnRGlyKHBhdGg6IE51Y2xpZGVVcmkpOiBQcm9taXNlPD9OdWNsaWRlVXJpPiB7XHJcbiAgICBsZXQgcmVzdWx0ID0gdGhpcy5fY29uZmlnQ2FjaGUuZ2V0KHBhdGgpO1xyXG4gICAgaWYgKHJlc3VsdCA9PSBudWxsKSB7XHJcbiAgICAgIHJlc3VsdCA9IHRoaXMuX2ZpbmRDb25maWdEaXIocGF0aCk7XHJcbiAgICAgIHRoaXMuX2NvbmZpZ0NhY2hlLnNldChwYXRoLCByZXN1bHQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIGFzeW5jIF9maW5kQ29uZmlnRGlyKHBhdGg6IE51Y2xpZGVVcmkpOiBQcm9taXNlPD9OdWNsaWRlVXJpPiB7XHJcbiAgICBpZiAodGhpcy5fc2VhcmNoU3RyYXRlZ3kgPT09ICdlY2xpcHNlJykge1xyXG4gICAgICBjb25zdCBjb25maWdEaXJzID0gYXdhaXQgUHJvbWlzZS5hbGwoXHJcbiAgICAgICAgdGhpcy5fY29uZmlnUGF0dGVybnMubWFwKGNvbmZpZ0ZpbGUgPT5cclxuICAgICAgICAgIGZzUHJvbWlzZS5maW5kRnVydGhlc3RGaWxlKGNvbmZpZ0ZpbGUsIHBhdGgpLFxyXG4gICAgICAgICksXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBjb25maWdEaXJzLmZpbHRlcihCb29sZWFuKS5yZWR1Y2UoKHByZXZpb3VzLCBjb25maWdEaXIpID0+IHtcclxuICAgICAgICBpZiAocHJldmlvdXMgPT0gbnVsbCB8fCBjb25maWdEaXIubGVuZ3RoIDwgcHJldmlvdXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICByZXR1cm4gY29uZmlnRGlyO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJldmlvdXM7XHJcbiAgICAgIH0sIG51bGwpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLl9zZWFyY2hTdHJhdGVneSA9PT0gJ3RocmlmdCcpIHtcclxuICAgICAgLy8gRmluZCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiBhIGNvbmZpZyBzZWdtZW50IGluIHRoZSBwYXRoLlxyXG4gICAgICBjb25zdCBwYXRoU3BsaXQgPSBudWNsaWRlVXJpLnNwbGl0KHBhdGgpO1xyXG4gICAgICByZXR1cm4gdGhpcy5fY29uZmlnUGF0dGVybnNcclxuICAgICAgICAubWFwKGNvbmZpZ1BhdHRlcm4gPT4ge1xyXG4gICAgICAgICAgY29uc3QgY29uZmlnU3BsaXQgPSBudWNsaWRlVXJpLnNwbGl0KGNvbmZpZ1BhdHRlcm4pO1xyXG4gICAgICAgICAgY29uc3QgZm91bmRJbmRleCA9IGZpbmRTdWJBcnJheUluZGV4KHBhdGhTcGxpdCwgY29uZmlnU3BsaXQpO1xyXG4gICAgICAgICAgcmV0dXJuIGZvdW5kSW5kZXggIT09IC0xXHJcbiAgICAgICAgICAgID8gbnVjbGlkZVVyaS5qb2luKFxyXG4gICAgICAgICAgICAgICAgLi4ucGF0aFNwbGl0LnNsaWNlKDAsIGZvdW5kSW5kZXggKyBjb25maWdTcGxpdC5sZW5ndGgpLFxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgOiBudWxsO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmZpbmQoQm9vbGVhbik7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3NlYXJjaFN0cmF0ZWd5ID09PSAnb2NhbWwnKSB7XHJcbiAgICAgIC8vIG9jYW1sLWxhbmd1YWdlLXNlcnZlciAodGhlIExTUCBzZXJ2ZXIpIGlzIHRoZSBzYW1lIHNpbmdsZSBMU1Agc2VydmVyIGJpbmFyeVxyXG4gICAgICAvLyBmb3IgYWxsIG9jYW1sIHByb2plY3RzIGFuZCBmb3IgYWxsIHZlcnNpb25zIG9mIG1lcmxpbi5cclxuICAgICAgLy9cclxuICAgICAgLy8gSXQgdXNlcyBpbml0aWFsaXphdGlvbk9wdGlvbnMucGF0aC5vY2FtbG1lcmxpbiBmcm9tIHRoZSBpbml0aWFsaXplIHJlcXVlc3RcclxuICAgICAgLy8gKG9yIGp1c3QgdGhlIHN0cmluZyBcIm9jYW1sbWVybGluXCIgaWYgdGhhdCB3YXMgYWJzZW50KSB0byBkZXRlcm1pbmUgd2hhdFxyXG4gICAgICAvLyBjb21tYW5kIHRvIHVzZSBmb3Igc3Bhd25pbmcgbWVybGluLiAobWVybGluIGl0c2VsZiBoYXMgbm8gbm90aW9uIG9mIHByb2plY3Qgcm9vdCkuXHJcbiAgICAgIC8vXHJcbiAgICAgIC8vIEl0IGFsc28gdXNlcyBwcm9qZWN0Um9vdCwgYnV0IHNvbGVseSB0byBjdXN0b21pemUgd2hpY2ggbWVybGluIGJpbmFyeSB0byBsYXVuY2g6XHJcbiAgICAgIC8vIGlmIGl0IGZpbmRzIHByb2plY3RSb290L25vZGVfbW9kdWxlcy8uY2FjaGUvX2VzeS9idWlsZC9iaW4vY29tbWFuZC1leGVjWy5iYXRdXHJcbiAgICAgIC8vIHRoZW4gaXQgd2lsbCBsYXVuY2ggXCJjb21tYW5kLWV4ZWMgPG9jYW1sbWVybGluPlwiOyBvdGhlcndpc2UgaXQganVzdCBsYXVuY2hlcyA8b2NhbWxtZXJsaW4+XHJcbiAgICAgIC8vIHVzaW5nIHByb2plY3RSb290IGFzIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LlxyXG4gICAgICAvL1xyXG4gICAgICAvLyBUaGVyZWZvcmU6IHRvIGZpbmQgcHJvamVjdCByb290IGZvciBhIGdpdmVuIGZpbGUsIHdlJ2xsIGVpdGhlciB1c2UgdGhlIG5lYXJlc3RcclxuICAgICAgLy8gY29udGFpbmluZyBwYXJlbnQgc3VjaCB0aGF0IGRpcmVjdG9yeSBwYXJlbnQvbm9kZV9tb2R1bGVzLy5jYWNoZS9fZXN5L2J1aWxkL2JpbiBleGlzdHMsXHJcbiAgICAgIC8vIG9yIFwiL1wiIG90aGVyd2lzZS5cclxuXHJcbiAgICAgIGxldCBkaXIgPSBudWNsaWRlVXJpLmRpcm5hbWUocGF0aCk7XHJcbiAgICAgIHdoaWxlICh0cnVlKSB7XHJcbiAgICAgICAgY29uc3Qgd3JhcHBlciA9IG51Y2xpZGVVcmkuam9pbihcclxuICAgICAgICAgIGRpcixcclxuICAgICAgICAgICdub2RlX21vZHVsZXMnLFxyXG4gICAgICAgICAgJy5jYWNoZScsXHJcbiAgICAgICAgICAnX2VzeScsXHJcbiAgICAgICAgICAnYnVpbGQnLFxyXG4gICAgICAgICAgJ2JpbicsXHJcbiAgICAgICAgKTtcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYXdhaXQtaW4tbG9vcFxyXG4gICAgICAgIGlmIChhd2FpdCBmc1Byb21pc2UuZXhpc3RzKHdyYXBwZXIpKSB7XHJcbiAgICAgICAgICByZXR1cm4gZGlyO1xyXG4gICAgICAgIH0gZWxzZSBpZiAobnVjbGlkZVVyaS5pc1Jvb3QoZGlyKSkge1xyXG4gICAgICAgICAgcmV0dXJuIGRpcjtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgZGlyID0gbnVjbGlkZVVyaS5kaXJuYW1lKGRpcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3NlYXJjaFN0cmF0ZWd5ID09PSAnYXVyb3JhJykge1xyXG4gICAgICBjb25zdCBjYW5kaWRhdGVEaXIgPSBhd2FpdCBmc1Byb21pc2UuZmluZE5lYXJlc3RGaWxlKCcuaGhjb25maWcnLCBwYXRoKTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGNhbmRpZGF0ZURpciAhPSBudWxsICYmXHJcbiAgICAgICAgKGF3YWl0IGZzUHJvbWlzZS5leGlzdHMobnVjbGlkZVVyaS5qb2luKGNhbmRpZGF0ZURpciwgJy5hcmNjb25maWcnKSkpXHJcbiAgICAgICkge1xyXG4gICAgICAgIHJldHVybiBjYW5kaWRhdGVEaXI7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAodGhpcy5fc2VhcmNoU3RyYXRlZ3k6ICduZWFyZXN0Jyk7XHJcbiAgICAgIC8vIEZpbmQgdGhlIHJlc3VsdCB3aXRoIHRoZSBncmVhdGVzdCBsZW5ndGggKHRoZSBjbG9zZXN0IG1hdGNoKS5cclxuICAgICAgY29uc3QgY29uZmlnRGlycyA9IGF3YWl0IFByb21pc2UuYWxsKFxyXG4gICAgICAgIHRoaXMuX2NvbmZpZ1BhdHRlcm5zLm1hcChjb25maWdGaWxlID0+XHJcbiAgICAgICAgICBmc1Byb21pc2UuZmluZE5lYXJlc3RGaWxlKGNvbmZpZ0ZpbGUsIHBhdGgpLFxyXG4gICAgICAgICksXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBjb25maWdEaXJzLmZpbHRlcihCb29sZWFuKS5yZWR1Y2UoKHByZXZpb3VzLCBjb25maWdEaXIpID0+IHtcclxuICAgICAgICBpZiAocHJldmlvdXMgPT0gbnVsbCB8fCBjb25maWdEaXIubGVuZ3RoID4gcHJldmlvdXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICByZXR1cm4gY29uZmlnRGlyO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJldmlvdXM7XHJcbiAgICAgIH0sIG51bGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGlzcG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NvbmZpZ0NhY2hlLnJlc2V0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0NvbmZpZ0NhY2hlLmpzIl0sIm5hbWVzIjpbIkNvbmZpZ0NhY2hlIiwiY29uc3RydWN0b3IiLCJjb25maWdQYXR0ZXJucyIsInNlYXJjaFN0cmF0ZWd5IiwiX2NvbmZpZ1BhdHRlcm5zIiwiX3NlYXJjaFN0cmF0ZWd5IiwiX2NvbmZpZ0NhY2hlIiwibWF4IiwibWF4QWdlIiwiZ2V0Q29uZmlnRGlyIiwicGF0aCIsInJlc3VsdCIsImdldCIsIl9maW5kQ29uZmlnRGlyIiwic2V0IiwiY29uZmlnRGlycyIsIlByb21pc2UiLCJhbGwiLCJtYXAiLCJjb25maWdGaWxlIiwiZnNQcm9taXNlIiwiZmluZEZ1cnRoZXN0RmlsZSIsImZpbHRlciIsIkJvb2xlYW4iLCJyZWR1Y2UiLCJwcmV2aW91cyIsImNvbmZpZ0RpciIsImxlbmd0aCIsInBhdGhTcGxpdCIsIm51Y2xpZGVVcmkiLCJzcGxpdCIsImNvbmZpZ1BhdHRlcm4iLCJjb25maWdTcGxpdCIsImZvdW5kSW5kZXgiLCJqb2luIiwic2xpY2UiLCJmaW5kIiwiZGlyIiwiZGlybmFtZSIsIndyYXBwZXIiLCJleGlzdHMiLCJpc1Jvb3QiLCJjYW5kaWRhdGVEaXIiLCJmaW5kTmVhcmVzdEZpbGUiLCJkaXNwb3NlIiwicmVzZXQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFlQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQWxCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBaUJPLE1BQU1BLFdBQU4sQ0FBa0I7QUFLdkJDLEVBQUFBLFdBQVcsQ0FDVEMsY0FEUyxFQUVUQyxjQUErQixHQUFHLFNBRnpCLEVBR1Q7QUFBQSxTQVBGQyxlQU9FO0FBQUEsU0FORkMsZUFNRTtBQUFBLFNBTEZDLFlBS0U7QUFDQSxTQUFLRixlQUFMLEdBQXVCRixjQUF2QjtBQUNBLFNBQUtHLGVBQUwsR0FBdUJGLGNBQXZCO0FBQ0EsU0FBS0cs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RCxHQUFuQixDQUFOO0FBQ0Q7QUFDRjtBQUNGLEtBcENNLE1Bb0NBLElBQUksS0FBS2hDLGVBQUwsS0FBeUIsUUFBN0IsRUFBdUM7QUFDNUMsWUFBTXFDLFlBQVksR0FBRyxNQUFNdEIsbUJBQVV1QixlQUFWLENBQTBCLFdBQTFCLEVBQXVDakMsSUFBdkMsQ0FBM0I7O0FBQ0EsVUFDRWdDLFlBQVksSUFBSSxJQUFoQixLQUNDLE1BQU10QixtQkFBVW9CLE1BQVYsQ0FBaUJYLG9CQUFXSyxJQUFYLENBQWdCUSxZQUFoQixFQUE4QixZQUE5QixDQUFqQixDQURQLENBREYsRUFHRTtBQUNBLGVBQU9BLFlBQVA7QUFDRDs7QUFDRCxhQUFPLElBQVA7QUFDRCxLQVRNLE1BU0E7QUFDSixXQUFLckMsZUFBTixDQURLLENBRUw7O0FBQ0EsWUFBTVUsVUFBVSxHQUFHLE1BQU1DLE9BQU8sQ0FBQ0MsR0FBUixDQUN2QixLQUFLYixlQUFMLENBQXFCYyxHQUFyQixDQUF5QkMsVUFBVSxJQUNqQ0MsbUJBQVV1QixlQUFWLENBQTBCeEIsVUFBMUIsRUFBc0NULElBQXRDLENBREYsQ0FEdUIsQ0FBekI7QUFLQSxhQUFPSyxVQUFVLENBQUNPLE1BQVgsQ0FBa0JDLE9BQWxCLEVBQTJCQyxNQUEzQixDQUFrQyxDQUFDQyxRQUFELEVBQVdDLFNBQVgsS0FBeUI7QUFDaEUsWUFBSUQsUUFBUSxJQUFJLElBQVosSUFBb0JDLFNBQVMsQ0FBQ0MsTUFBVixHQUFtQkYsUUFBUSxDQUFDRSxNQUFwRCxFQUE0RDtBQUMxRCxpQkFBT0QsU0FBUDtBQUNEOztBQUNELGVBQU9ELFFBQVA7QUFDRCxPQUxNLEVBS0osSUFMSSxDQUFQO0FBTUQ7QUFDRjs7QUFFRG1CLEVBQUFBLE9BQU8sR0FBUztBQUNkLFNBQUt0QyxZQUFMLENBQWtCdUMsS0FBbEI7QUFDRDs7QUFySHNCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB0eXBlIHtMUlVDYWNoZX0gZnJvbSAnbHJ1LWNhY2hlJztcclxuaW1wb3J0IHR5cGUge051Y2xpZGVVcml9IGZyb20gJy4vbnVjbGlkZVVyaSc7XHJcblxyXG5pbXBvcnQgTFJVIGZyb20gJ2xydS1jYWNoZSc7XHJcbmltcG9ydCB7ZmluZFN1YkFycmF5SW5kZXh9IGZyb20gJy4vY29sbGVjdGlvbic7XHJcbmltcG9ydCBmc1Byb21pc2UgZnJvbSAnLi9mc1Byb21pc2UnO1xyXG5pbXBvcnQgbnVjbGlkZVVyaSBmcm9tICcuL251Y2xpZGVVcmknO1xyXG5cclxuZXhwb3J0IHR5cGUgU2VhcmNoU3RyYXRlZ3kgPVxyXG4gIHwgJ25lYXJlc3QnXHJcbiAgfCAnYXVyb3JhJ1xyXG4gIHwgJ2VjbGlwc2UnXHJcbiAgfCAnb2NhbWwnXHJcbiAgfCAndGhyaWZ0JztcclxuXHJcbmV4cG9ydCBjbGFzcyBDb25maWdDYWNoZSB7XHJcbiAgX2NvbmZpZ1BhdHRlcm5zOiBBcnJheTxzdHJpbmc+O1xyXG4gIF9zZWFyY2hTdHJhdGVneTogU2VhcmNoU3RyYXRlZ3k7XHJcbiAgX2NvbmZpZ0NhY2hlOiBMUlVDYWNoZTxOdWNsaWRlVXJpLCBQcm9taXNlPD9OdWNsaWRlVXJpPj47XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgY29uZmlnUGF0dGVybnM6IEFycmF5PHN0cmluZz4sXHJcbiAgICBzZWFyY2hTdHJhdGVneT86IFNlYXJjaFN0cmF0ZWd5ID0gJ25lYXJlc3QnLFxyXG4gICkge1xyXG4gICAgdGhpcy5fY29uZmlnUGF0dGVybnMgPSBjb25maWdQYXR0ZXJucztcclxuICAgIHRoaXMuX3NlYXJjaFN0cmF0ZWd5ID0gc2VhcmNoU3RyYXRlZ3k7XHJcbiAgICB0aGlzLl9jb25maWdDYWNoZSA9IExSVSh7XHJcbiAgICAgIG1heDogMjAwLCAvLyBXYW50IHRoaXMgdG8gZXhjZWVkIHRoZSBtYXhpbXVtIGV4cGVjdGVkIG51bWJlciBvZiBvcGVuIGZpbGVzICsgZGlycy5cclxuICAgICAgbWF4QWdlOiAxMDAwICogMzAsIC8vIDMwIHNlY29uZHNcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uZmlnRGlyKHBhdGg6IE51Y2xpZGVVcmkpOiBQcm9taXNlPD9OdWNsaWRlVXJpPiB7XHJcbiAgICBsZXQgcmVzdWx0ID0gdGhpcy5fY29uZmlnQ2FjaGUuZ2V0KHBhdGgpO1xyXG4gICAgaWYgKHJlc3VsdCA9PSBudWxsKSB7XHJcbiAgICAgIHJlc3VsdCA9IHRoaXMuX2ZpbmRDb25maWdEaXIocGF0aCk7XHJcbiAgICAgIHRoaXMuX2NvbmZpZ0NhY2hlLnNldChwYXRoLCByZXN1bHQpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIGFzeW5jIF9maW5kQ29uZmlnRGlyKHBhdGg6IE51Y2xpZGVVcmkpOiBQcm9taXNlPD9OdWNsaWRlVXJpPiB7XHJcbiAgICBpZiAodGhpcy5fc2VhcmNoU3RyYXRlZ3kgPT09ICdlY2xpcHNlJykge1xyXG4gICAgICBjb25zdCBjb25maWdEaXJzID0gYXdhaXQgUHJvbWlzZS5hbGwoXHJcbiAgICAgICAgdGhpcy5fY29uZmlnUGF0dGVybnMubWFwKGNvbmZpZ0ZpbGUgPT5cclxuICAgICAgICAgIGZzUHJvbWlzZS5maW5kRnVydGhlc3RGaWxlKGNvbmZpZ0ZpbGUsIHBhdGgpLFxyXG4gICAgICAgICksXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBjb25maWdEaXJzLmZpbHRlcihCb29sZWFuKS5yZWR1Y2UoKHByZXZpb3VzLCBjb25maWdEaXIpID0+IHtcclxuICAgICAgICBpZiAocHJldmlvdXMgPT0gbnVsbCB8fCBjb25maWdEaXIubGVuZ3RoIDwgcHJldmlvdXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICByZXR1cm4gY29uZmlnRGlyO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJldmlvdXM7XHJcbiAgICAgIH0sIG51bGwpO1xyXG4gICAgfSBlbHNlIGlmICh0aGlzLl9zZWFyY2hTdHJhdGVneSA9PT0gJ3RocmlmdCcpIHtcclxuICAgICAgLy8gRmluZCB0aGUgZmlyc3Qgb2NjdXJyZW5jZSBvZiBhIGNvbmZpZyBzZWdtZW50IGluIHRoZSBwYXRoLlxyXG4gICAgICBjb25zdCBwYXRoU3BsaXQgPSBudWNsaWRlVXJpLnNwbGl0KHBhdGgpO1xyXG4gICAgICByZXR1cm4gdGhpcy5fY29uZmlnUGF0dGVybnNcclxuICAgICAgICAubWFwKGNvbmZpZ1BhdHRlcm4gPT4ge1xyXG4gICAgICAgICAgY29uc3QgY29uZmlnU3BsaXQgPSBudWNsaWRlVXJpLnNwbGl0KGNvbmZpZ1BhdHRlcm4pO1xyXG4gICAgICAgICAgY29uc3QgZm91bmRJbmRleCA9IGZpbmRTdWJBcnJheUluZGV4KHBhdGhTcGxpdCwgY29uZmlnU3BsaXQpO1xyXG4gICAgICAgICAgcmV0dXJuIGZvdW5kSW5kZXggIT09IC0xXHJcbiAgICAgICAgICAgID8gbnVjbGlkZVVyaS5qb2luKFxyXG4gICAgICAgICAgICAgICAgLi4ucGF0aFNwbGl0LnNsaWNlKDAsIGZvdW5kSW5kZXggKyBjb25maWdTcGxpdC5sZW5ndGgpLFxyXG4gICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgOiBudWxsO1xyXG4gICAgICAgIH0pXHJcbiAgICAgICAgLmZpbmQoQm9vbGVhbik7XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3NlYXJjaFN0cmF0ZWd5ID09PSAnb2NhbWwnKSB7XHJcbiAgICAgIC8vIG9jYW1sLWxhbmd1YWdlLXNlcnZlciAodGhlIExTUCBzZXJ2ZXIpIGlzIHRoZSBzYW1lIHNpbmdsZSBMU1Agc2VydmVyIGJpbmFyeVxyXG4gICAgICAvLyBmb3IgYWxsIG9jYW1sIHByb2plY3RzIGFuZCBmb3IgYWxsIHZlcnNpb25zIG9mIG1lcmxpbi5cclxuICAgICAgLy9cclxuICAgICAgLy8gSXQgdXNlcyBpbml0aWFsaXphdGlvbk9wdGlvbnMucGF0aC5vY2FtbG1lcmxpbiBmcm9tIHRoZSBpbml0aWFsaXplIHJlcXVlc3RcclxuICAgICAgLy8gKG9yIGp1c3QgdGhlIHN0cmluZyBcIm9jYW1sbWVybGluXCIgaWYgdGhhdCB3YXMgYWJzZW50KSB0byBkZXRlcm1pbmUgd2hhdFxyXG4gICAgICAvLyBjb21tYW5kIHRvIHVzZSBmb3Igc3Bhd25pbmcgbWVybGluLiAobWVybGluIGl0c2VsZiBoYXMgbm8gbm90aW9uIG9mIHByb2plY3Qgcm9vdCkuXHJcbiAgICAgIC8vXHJcbiAgICAgIC8vIEl0IGFsc28gdXNlcyBwcm9qZWN0Um9vdCwgYnV0IHNvbGVseSB0byBjdXN0b21pemUgd2hpY2ggbWVybGluIGJpbmFyeSB0byBsYXVuY2g6XHJcbiAgICAgIC8vIGlmIGl0IGZpbmRzIHByb2plY3RSb290L25vZGVfbW9kdWxlcy8uY2FjaGUvX2VzeS9idWlsZC9iaW4vY29tbWFuZC1leGVjWy5iYXRdXHJcbiAgICAgIC8vIHRoZW4gaXQgd2lsbCBsYXVuY2ggXCJjb21tYW5kLWV4ZWMgPG9jYW1sbWVybGluPlwiOyBvdGhlcndpc2UgaXQganVzdCBsYXVuY2hlcyA8b2NhbWxtZXJsaW4+XHJcbiAgICAgIC8vIHVzaW5nIHByb2plY3RSb290IGFzIHRoZSBjdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LlxyXG4gICAgICAvL1xyXG4gICAgICAvLyBUaGVyZWZvcmU6IHRvIGZpbmQgcHJvamVjdCByb290IGZvciBhIGdpdmVuIGZpbGUsIHdlJ2xsIGVpdGhlciB1c2UgdGhlIG5lYXJlc3RcclxuICAgICAgLy8gY29udGFpbmluZyBwYXJlbnQgc3VjaCB0aGF0IGRpcmVjdG9yeSBwYXJlbnQvbm9kZV9tb2R1bGVzLy5jYWNoZS9fZXN5L2J1aWxkL2JpbiBleGlzdHMsXHJcbiAgICAgIC8vIG9yIFwiL1wiIG90aGVyd2lzZS5cclxuXHJcbiAgICAgIGxldCBkaXIgPSBudWNsaWRlVXJpLmRpcm5hbWUocGF0aCk7XHJcbiAgICAgIHdoaWxlICh0cnVlKSB7XHJcbiAgICAgICAgY29uc3Qgd3JhcHBlciA9IG51Y2xpZGVVcmkuam9pbihcclxuICAgICAgICAgIGRpcixcclxuICAgICAgICAgICdub2RlX21vZHVsZXMnLFxyXG4gICAgICAgICAgJy5jYWNoZScsXHJcbiAgICAgICAgICAnX2VzeScsXHJcbiAgICAgICAgICAnYnVpbGQnLFxyXG4gICAgICAgICAgJ2JpbicsXHJcbiAgICAgICAgKTtcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tYXdhaXQtaW4tbG9vcFxyXG4gICAgICAgIGlmIChhd2FpdCBmc1Byb21pc2UuZXhpc3RzKHdyYXBwZXIpKSB7XHJcbiAgICAgICAgICByZXR1cm4gZGlyO1xyXG4gICAgICAgIH0gZWxzZSBpZiAobnVjbGlkZVVyaS5pc1Jvb3QoZGlyKSkge1xyXG4gICAgICAgICAgcmV0dXJuIGRpcjtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgZGlyID0gbnVjbGlkZVVyaS5kaXJuYW1lKGRpcik7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHRoaXMuX3NlYXJjaFN0cmF0ZWd5ID09PSAnYXVyb3JhJykge1xyXG4gICAgICBjb25zdCBjYW5kaWRhdGVEaXIgPSBhd2FpdCBmc1Byb21pc2UuZmluZE5lYXJlc3RGaWxlKCcuaGhjb25maWcnLCBwYXRoKTtcclxuICAgICAgaWYgKFxyXG4gICAgICAgIGNhbmRpZGF0ZURpciAhPSBudWxsICYmXHJcbiAgICAgICAgKGF3YWl0IGZzUHJvbWlzZS5leGlzdHMobnVjbGlkZVVyaS5qb2luKGNhbmRpZGF0ZURpciwgJy5hcmNjb25maWcnKSkpXHJcbiAgICAgICkge1xyXG4gICAgICAgIHJldHVybiBjYW5kaWRhdGVEaXI7XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAodGhpcy5fc2VhcmNoU3RyYXRlZ3k6ICduZWFyZXN0Jyk7XHJcbiAgICAgIC8vIEZpbmQgdGhlIHJlc3VsdCB3aXRoIHRoZSBncmVhdGVzdCBsZW5ndGggKHRoZSBjbG9zZXN0IG1hdGNoKS5cclxuICAgICAgY29uc3QgY29uZmlnRGlycyA9IGF3YWl0IFByb21pc2UuYWxsKFxyXG4gICAgICAgIHRoaXMuX2NvbmZpZ1BhdHRlcm5zLm1hcChjb25maWdGaWxlID0+XHJcbiAgICAgICAgICBmc1Byb21pc2UuZmluZE5lYXJlc3RGaWxlKGNvbmZpZ0ZpbGUsIHBhdGgpLFxyXG4gICAgICAgICksXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBjb25maWdEaXJzLmZpbHRlcihCb29sZWFuKS5yZWR1Y2UoKHByZXZpb3VzLCBjb25maWdEaXIpID0+IHtcclxuICAgICAgICBpZiAocHJldmlvdXMgPT0gbnVsbCB8fCBjb25maWdEaXIubGVuZ3RoID4gcHJldmlvdXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICByZXR1cm4gY29uZmlnRGlyO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcHJldmlvdXM7XHJcbiAgICAgIH0sIG51bGwpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZGlzcG9zZSgpOiB2b2lkIHtcclxuICAgIHRoaXMuX2NvbmZpZ0NhY2hlLnJlc2V0KCk7XHJcbiAgfVxyXG59XHJcbiJdfQ== |
@@ -77,2 +77,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2RlYm91bmNlLmpzIl0sIm5hbWVzIjpbImRlYm91bmNlIiwiZnVuYyIsIndhaXQiLCJpbW1lZGlhdGUiLCJ0aW1lb3V0IiwiYXJncyIsImNvbnRleHQiLCJ0aW1lc3RhbXAiLCJyZXN1bHQiLCJsYXRlciIsImxhc3QiLCJEYXRlIiwibm93Iiwic2V0VGltZW91dCIsImFwcGx5IiwiZGVib3VuY2VkIiwiYXJnc18iLCJjYWxsTm93IiwiZGlzcG9zZSIsImNsZWFyVGltZW91dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOzs7O0FBWkE7Ozs7Ozs7Ozs7O0FBY2UsU0FBU0EsUUFBVCxDQU1iQyxJQU5hLEVBT2JDLElBUGEsRUFRYkMsU0FBbUIsR0FBRyxLQVJULEVBWWI7QUFDQTtBQUNBLE1BQUlDLE9BQUo7QUFDQSxNQUFJQyxJQUFKO0FBQ0EsTUFBSUMsT0FBSjtBQUNBLE1BQUlDLFNBQVMsR0FBRyxDQUFoQjtBQUNBLE1BQUlDLE1BQUo7O0FBRUEsUUFBTUMsS0FBSyxHQUFHLFlBQVc7QUFDdkIsVUFBTUMsSUFBSSxHQUFHQyxJQUFJLENBQUNDLEdBQUwsS0FBYUwsU0FBMUI7O0FBRUEsUUFBSUcsSUFBSSxHQUFHUixJQUFQLElBQWVRLElBQUksSUFBSSxDQUEzQixFQUE4QjtBQUM1Qk4sTUFBQUEsT0FBTyxHQUFHUyxVQUFVLENBQUNKLEtBQUQsRUFBUVAsSUFBSSxHQUFHUSxJQUFmLENBQXBCO0FBQ0QsS0FGRCxNQUVPO0FBQ0xOLE1BQUFBLE9BQU8sR0FBRyxJQUFWOztBQUNBLFVBQUksQ0FBQ0QsU0FBTCxFQUFnQjtBQUNkLDZCQUFVRSxJQUFJLElBQUksSUFBbEI7QUFDQUcsUUFBQUEsTUFBTSxHQUFHUCxJQUFJLENBQUNhLEtBQUwsQ0FBV1IsT0FBWCxFQUFvQkQsSUFBcEIsQ0FBVDs7QUFDQSxZQUFJLENBQUNELE9BQUwsRUFBYztBQUNaRSxVQUFBQSxPQUFPLEdBQUdELElBQUksR0FBRyxJQUFqQjtBQUNEO0FBQ0Y7QUFDRjtBQUNGLEdBZkQ7O0FBaUJBLFFBQU1VLFNBQVMsR0FBRyxVQUFTLEdBQUdDLEtBQVosRUFBMEM7QUFDMURWLElBQUFBLE9BQU8sR0FBRyxJQUFWO0FBQ0FELElBQUFBLElBQUksR0FBR1csS0FBUDtBQUNBVCxJQUFBQSxTQUFTLEdBQUdJLElBQUksQ0FBQ0MsR0FBTCxFQUFaO0FBQ0EsVUFBTUssT0FBTyxHQUFHZCxTQUFTLElBQUksQ0FBQ0MsT0FBOUI7O0FBQ0EsUUFBSSxDQUFDQSxPQUFMLEVBQWM7QUFDWkEsTUFBQUEsT0FBTyxHQUFHUyxVQUFVLENBQUNKLEtBQUQsRUFBUVAsSUFBUixDQUFwQjtBQUNEOztBQUNELFFBQUllLE9BQUosRUFBYTtBQUNYVCxNQUFBQSxNQUFNLEdBQUdQLElBQUksQ0FBQ2EsS0FBTCxDQUFXUixPQUFYLEVBQW9CRCxJQUFwQixDQUFUO0FBQ0FDLE1BQUFBLE9BQU8sR0FBR0QsSUFBSSxHQUFHLElBQWpCO0FBQ0Q7O0FBRUQsV0FBT0csTUFBUDtBQUNELEdBZEQ7O0FBZ0JBTyxFQUFBQSxTQUFTLENBQUNHLE9BQVYsR0FBb0IsTUFBTTtBQUN4QixRQUFJZCxPQUFKLEVBQWE7QUFDWGUsTUFBQUEsWUFBWSxDQUFDZixPQUFELENBQVo7QUFDQUEsTUFBQUEsT0FBTyxHQUFHRSxPQUFPLEdBQUdELElBQUksR0FBRyxJQUEzQjtBQUNEO0FBQ0YsR0FMRDs7QUFPQSxTQUFPVSxTQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgaW52YXJpYW50IGZyb20gJ2Fzc2VydCc7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBkZWJvdW5jZTxcclxuICBULFxyXG4gIFRBcmdzOiBBcnJheTxUPixcclxuICBUUmV0dXJuLFxyXG4gIFRGdW5jOiAoLi4uVEFyZ3MpID0+IFRSZXR1cm4sIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc3BhY2UtYmVmb3JlLWZ1bmN0aW9uLXBhcmVuXHJcbj4oXHJcbiAgZnVuYzogVEZ1bmMsXHJcbiAgd2FpdDogbnVtYmVyLFxyXG4gIGltbWVkaWF0ZT86IGJvb2xlYW4gPSBmYWxzZSxcclxuKToge1xyXG4gICguLi5UQXJncyk6IFRSZXR1cm4gfCB2b2lkLFxyXG4gIGRpc3Bvc2UoKTogdm9pZCxcclxufSB7XHJcbiAgLy8gVGFrZW4gZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL2phc2hrZW5hcy91bmRlcnNjb3JlL2Jsb2IvYjEwYjJlNmQ3Mi91bmRlcnNjb3JlLmpzI0w4MTUuXHJcbiAgbGV0IHRpbWVvdXQ6ID9UaW1lb3V0SUQ7XHJcbiAgbGV0IGFyZ3M6ID9UQXJncztcclxuICBsZXQgY29udGV4dDogYW55O1xyXG4gIGxldCB0aW1lc3RhbXAgPSAwO1xyXG4gIGxldCByZXN1bHQ6IFRSZXR1cm4gfCB2b2lkO1xyXG5cclxuICBjb25zdCBsYXRlciA9IGZ1bmN0aW9uKCkge1xyXG4gICAgY29uc3QgbGFzdCA9IERhdGUubm93KCkgLSB0aW1lc3RhbXA7XHJcblxyXG4gICAgaWYgKGxhc3QgPCB3YWl0ICYmIGxhc3QgPj0gMCkge1xyXG4gICAgICB0aW1lb3V0ID0gc2V0VGltZW91dChsYXRlciwgd2FpdCAtIGxhc3QpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGltZW91dCA9IG51bGw7XHJcbiAgICAgIGlmICghaW1tZWRpYXRlKSB7XHJcbiAgICAgICAgaW52YXJpYW50KGFyZ3MgIT0gbnVsbCk7XHJcbiAgICAgICAgcmVzdWx0ID0gZnVuYy5hcHBseShjb250ZXh0LCBhcmdzKTtcclxuICAgICAgICBpZiAoIXRpbWVvdXQpIHtcclxuICAgICAgICAgIGNvbnRleHQgPSBhcmdzID0gbnVsbDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9O1xyXG5cclxuICBjb25zdCBkZWJvdW5jZWQgPSBmdW5jdGlvbiguLi5hcmdzXzogVEFyZ3MpOiBUUmV0dXJuIHwgdm9pZCB7XHJcbiAgICBjb250ZXh0ID0gdGhpcztcclxuICAgIGFyZ3MgPSBhcmdzXztcclxuICAgIHRpbWVzdGFtcCA9IERhdGUubm93KCk7XHJcbiAgICBjb25zdCBjYWxsTm93ID0gaW1tZWRpYXRlICYmICF0aW1lb3V0O1xyXG4gICAgaWYgKCF0aW1lb3V0KSB7XHJcbiAgICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KGxhdGVyLCB3YWl0KTtcclxuICAgIH1cclxuICAgIGlmIChjYWxsTm93KSB7XHJcbiAgICAgIHJlc3VsdCA9IGZ1bmMuYXBwbHkoY29udGV4dCwgYXJncyk7XHJcbiAgICAgIGNvbnRleHQgPSBhcmdzID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gcmVzdWx0O1xyXG4gIH07XHJcblxyXG4gIGRlYm91bmNlZC5kaXNwb3NlID0gKCkgPT4ge1xyXG4gICAgaWYgKHRpbWVvdXQpIHtcclxuICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xyXG4gICAgICB0aW1lb3V0ID0gY29udGV4dCA9IGFyZ3MgPSBudWxsO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIHJldHVybiBkZWJvdW5jZWQ7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2RlYm91bmNlLmpzIl0sIm5hbWVzIjpbImRlYm91bmNlIiwiZnVuYyIsIndhaXQiLCJpbW1lZGlhdGUiLCJ0aW1lb3V0IiwiYXJncyIsImNvbnRleHQiLCJ0aW1lc3RhbXAiLCJyZXN1bHQiLCJsYXRlciIsImxhc3QiLCJEYXRlIiwibm93Iiwic2V0VGltZW91dCIsImFwcGx5IiwiZGVib3VuY2VkIiwiYXJnc18iLCJjYWxsTm93IiwiZGlzcG9zZSIsImNsZWFyVGltZW91dCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOzs7O0FBWkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUllLFNBQVNBLFFBQVQsQ0FNYkMsSUFOYSxFQU9iQyxJQVBhLEVBUWJDLFNBQW1CLEdBQUcsS0FSVCxFQVliO0FBQ0E7QUFDQSxNQUFJQyxPQUFKO0FBQ0EsTUFBSUMsSUFBSjtBQUNBLE1BQUlDLE9BQUo7QUFDQSxNQUFJQyxTQUFTLEdBQUcsQ0FBaEI7QUFDQSxNQUFJQyxNQUFKOztBQUVBLFFBQU1DLEtBQUssR0FBRyxZQUFXO0FBQ3ZCLFVBQU1DLElBQUksR0FBR0MsSUFBSSxDQUFDQyxHQUFMLEtBQWFMLFNBQTFCOztBQUVBLFFBQUlHLElBQUksR0FBR1IsSUFBUCxJQUFlUSxJQUFJLElBQUksQ0FBM0IsRUFBOEI7QUFDNUJOLE1BQUFBLE9BQU8sR0FBR1MsVUFBVSxDQUFDSixLQUFELEVBQVFQLElBQUksR0FBR1EsSUFBZixDQUFwQjtBQUNELEtBRkQsTUFFTztBQUNMTixNQUFBQSxPQUFPLEdBQUcsSUFBVjs7QUFDQSxVQUFJLENBQUNELFNBQUwsRUFBZ0I7QUFDZCw2QkFBVUUsSUFBSSxJQUFJLElBQWxCO0FBQ0FHLFFBQUFBLE1BQU0sR0FBR1AsSUFBSSxDQUFDYSxLQUFMLENBQVdSLE9BQVgsRUFBb0JELElBQXBCLENBQVQ7O0FBQ0EsWUFBSSxDQUFDRCxPQUFMLEVBQWM7QUFDWkUsVUFBQUEsT0FBTyxHQUFHRCxJQUFJLEdBQUcsSUFBakI7QUFDRDtBQUNGO0FBQ0Y7QUFDRixHQWZEOztBQWlCQSxRQUFNVSxTQUFTLEdBQUcsVUFBUyxHQUFHQyxLQUFaLEVBQTBDO0FBQzFEVixJQUFBQSxPQUFPLEdBQUcsSUFBVjtBQUNBRCxJQUFBQSxJQUFJLEdBQUdXLEtBQVA7QUFDQVQsSUFBQUEsU0FBUyxHQUFHSSxJQUFJLENBQUNDLEdBQUwsRUFBWjtBQUNBLFVBQU1LLE9BQU8sR0FBR2QsU0FBUyxJQUFJLENBQUNDLE9BQTlCOztBQUNBLFFBQUksQ0FBQ0EsT0FBTCxFQUFjO0FBQ1pBLE1BQUFBLE9BQU8sR0FBR1MsVUFBVSxDQUFDSixLQUFELEVBQVFQLElBQVIsQ0FBcEI7QUFDRDs7QUFDRCxRQUFJZSxPQUFKLEVBQWE7QUFDWFQsTUFBQUEsTUFBTSxHQUFHUCxJQUFJLENBQUNhLEtBQUwsQ0FBV1IsT0FBWCxFQUFvQkQsSUFBcEIsQ0FBVDtBQUNBQyxNQUFBQSxPQUFPLEdBQUdELElBQUksR0FBRyxJQUFqQjtBQUNEOztBQUVELFdBQU9HLE1BQVA7QUFDRCxHQWREOztBQWdCQU8sRUFBQUEsU0FBUyxDQUFDRyxPQUFWLEdBQW9CLE1BQU07QUFDeEIsUUFBSWQsT0FBSixFQUFhO0FBQ1hlLE1BQUFBLFlBQVksQ0FBQ2YsT0FBRCxDQUFaO0FBQ0FBLE1BQUFBLE9BQU8sR0FBR0UsT0FBTyxHQUFHRCxJQUFJLEdBQUcsSUFBM0I7QUFDRDtBQUNGLEdBTEQ7O0FBT0EsU0FBT1UsU0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZGVib3VuY2U8XHJcbiAgVCxcclxuICBUQXJnczogQXJyYXk8VD4sXHJcbiAgVFJldHVybixcclxuICBURnVuYzogKC4uLlRBcmdzKSA9PiBUUmV0dXJuLCAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNwYWNlLWJlZm9yZS1mdW5jdGlvbi1wYXJlblxyXG4+KFxyXG4gIGZ1bmM6IFRGdW5jLFxyXG4gIHdhaXQ6IG51bWJlcixcclxuICBpbW1lZGlhdGU/OiBib29sZWFuID0gZmFsc2UsXHJcbik6IHtcclxuICAoLi4uVEFyZ3MpOiBUUmV0dXJuIHwgdm9pZCxcclxuICBkaXNwb3NlKCk6IHZvaWQsXHJcbn0ge1xyXG4gIC8vIFRha2VuIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9qYXNoa2VuYXMvdW5kZXJzY29yZS9ibG9iL2IxMGIyZTZkNzIvdW5kZXJzY29yZS5qcyNMODE1LlxyXG4gIGxldCB0aW1lb3V0OiA/VGltZW91dElEO1xyXG4gIGxldCBhcmdzOiA/VEFyZ3M7XHJcbiAgbGV0IGNvbnRleHQ6IGFueTtcclxuICBsZXQgdGltZXN0YW1wID0gMDtcclxuICBsZXQgcmVzdWx0OiBUUmV0dXJuIHwgdm9pZDtcclxuXHJcbiAgY29uc3QgbGF0ZXIgPSBmdW5jdGlvbigpIHtcclxuICAgIGNvbnN0IGxhc3QgPSBEYXRlLm5vdygpIC0gdGltZXN0YW1wO1xyXG5cclxuICAgIGlmIChsYXN0IDwgd2FpdCAmJiBsYXN0ID49IDApIHtcclxuICAgICAgdGltZW91dCA9IHNldFRpbWVvdXQobGF0ZXIsIHdhaXQgLSBsYXN0KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRpbWVvdXQgPSBudWxsO1xyXG4gICAgICBpZiAoIWltbWVkaWF0ZSkge1xyXG4gICAgICAgIGludmFyaWFudChhcmdzICE9IG51bGwpO1xyXG4gICAgICAgIHJlc3VsdCA9IGZ1bmMuYXBwbHkoY29udGV4dCwgYXJncyk7XHJcbiAgICAgICAgaWYgKCF0aW1lb3V0KSB7XHJcbiAgICAgICAgICBjb250ZXh0ID0gYXJncyA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfTtcclxuXHJcbiAgY29uc3QgZGVib3VuY2VkID0gZnVuY3Rpb24oLi4uYXJnc186IFRBcmdzKTogVFJldHVybiB8IHZvaWQge1xyXG4gICAgY29udGV4dCA9IHRoaXM7XHJcbiAgICBhcmdzID0gYXJnc187XHJcbiAgICB0aW1lc3RhbXAgPSBEYXRlLm5vdygpO1xyXG4gICAgY29uc3QgY2FsbE5vdyA9IGltbWVkaWF0ZSAmJiAhdGltZW91dDtcclxuICAgIGlmICghdGltZW91dCkge1xyXG4gICAgICB0aW1lb3V0ID0gc2V0VGltZW91dChsYXRlciwgd2FpdCk7XHJcbiAgICB9XHJcbiAgICBpZiAoY2FsbE5vdykge1xyXG4gICAgICByZXN1bHQgPSBmdW5jLmFwcGx5KGNvbnRleHQsIGFyZ3MpO1xyXG4gICAgICBjb250ZXh0ID0gYXJncyA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9O1xyXG5cclxuICBkZWJvdW5jZWQuZGlzcG9zZSA9ICgpID0+IHtcclxuICAgIGlmICh0aW1lb3V0KSB7XHJcbiAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcclxuICAgICAgdGltZW91dCA9IGNvbnRleHQgPSBhcmdzID0gbnVsbDtcclxuICAgIH1cclxuICB9O1xyXG5cclxuICByZXR1cm4gZGVib3VuY2VkO1xyXG59XHJcbiJdfQ== |
@@ -22,2 +22,2 @@ "use strict"; | ||
module.exports = _electron.remote; // eslint-disable-line nuclide-internal/no-commonjs | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2VsZWN0cm9uLXJlbW90ZS5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwicmVtb3RlIl0sIm1hcHBpbmdzIjoiOztBQWtCQTs7QUFsQkE7Ozs7Ozs7Ozs7O0FBWUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBQSxNQUFNLENBQUNDLE9BQVAsR0FBaUJDLGdCQUFqQixDLENBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbi8vIE5COiBUaGlzIGZpbGUgZXhpc3RzIHRvIG1ha2UgRmxvdyB0eXBpbmcgd2l0aCByZW1vdGUgb2JqZWN0cyBtb3JlIGVyZ29ub21pYy5cclxuLy8gQmVjYXVzZSBGbG93IGNhbid0IGRlYWwgd2l0aCBleHBvcnRpbmcgYSBjbGFzcyB1bmxlc3MgaXQncyBwYXJ0IG9mIHRoZVxyXG4vLyB0b3AtbGV2ZWwgYG1vZHVsZS5leHBvcnRzYCwgaXQncyBlYXNpZXIgZm9yIHVzIHRvIHJlLWV4cG9ydCBhbGwgb2YgYHJlbW90ZWBcclxuLy8gaW5zdGVhZCBvZiBkb2luZyBXZWlyZCBCYWNrZmxpcHMgZXZlcnkgdGltZSB3ZSB3YW50IHRvIGRlY2xhcmUgYSB2YXJpYWJsZSBvZlxyXG4vLyB0eXBlIGBCcm93c2VyV2luZG93YFxyXG5cclxuaW1wb3J0IHtyZW1vdGV9IGZyb20gJ2VsZWN0cm9uJztcclxubW9kdWxlLmV4cG9ydHMgPSByZW1vdGU7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgbnVjbGlkZS1pbnRlcm5hbC9uby1jb21tb25qc1xyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2VsZWN0cm9uLXJlbW90ZS5qcyJdLCJuYW1lcyI6WyJtb2R1bGUiLCJleHBvcnRzIiwicmVtb3RlIl0sIm1hcHBpbmdzIjoiOztBQWtCQTs7QUFsQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFHQUEsTUFBTSxDQUFDQyxPQUFQLEdBQWlCQyxnQkFBakIsQyxDQUF5QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vLyBOQjogVGhpcyBmaWxlIGV4aXN0cyB0byBtYWtlIEZsb3cgdHlwaW5nIHdpdGggcmVtb3RlIG9iamVjdHMgbW9yZSBlcmdvbm9taWMuXHJcbi8vIEJlY2F1c2UgRmxvdyBjYW4ndCBkZWFsIHdpdGggZXhwb3J0aW5nIGEgY2xhc3MgdW5sZXNzIGl0J3MgcGFydCBvZiB0aGVcclxuLy8gdG9wLWxldmVsIGBtb2R1bGUuZXhwb3J0c2AsIGl0J3MgZWFzaWVyIGZvciB1cyB0byByZS1leHBvcnQgYWxsIG9mIGByZW1vdGVgXHJcbi8vIGluc3RlYWQgb2YgZG9pbmcgV2VpcmQgQmFja2ZsaXBzIGV2ZXJ5IHRpbWUgd2Ugd2FudCB0byBkZWNsYXJlIGEgdmFyaWFibGUgb2ZcclxuLy8gdHlwZSBgQnJvd3NlcldpbmRvd2BcclxuXHJcbmltcG9ydCB7cmVtb3RlfSBmcm9tICdlbGVjdHJvbic7XHJcbm1vZHVsZS5leHBvcnRzID0gcmVtb3RlOyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG51Y2xpZGUtaW50ZXJuYWwvbm8tY29tbW9uanNcclxuIl19 |
@@ -36,2 +36,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2VwaWNIZWxwZXJzLmpzIl0sIm5hbWVzIjpbImNvbWJpbmVFcGljc0Zyb21JbXBvcnRzIiwiZXBpY3MiLCJtb2R1bGUiLCJPYmplY3QiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJlcGljIiwibWFwIiwiYXJncyIsImNhdGNoIiwiZXJyb3IiLCJzb3VyY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFDQTs7QUFiQTs7Ozs7Ozs7Ozs7QUFlTyxTQUFTQSx1QkFBVCxDQUNMQyxLQURLLEVBRUxDLE1BRkssRUFHSztBQUNWLFNBQU8sbUNBQ0wsR0FBR0MsTUFBTSxDQUFDQyxNQUFQLENBQWNILEtBQWQsRUFDQUksTUFEQSxDQUNPQyxJQUFJLElBQUksT0FBT0EsSUFBUCxLQUFnQixVQUQvQixFQUVEO0FBQ0E7QUFDQTtBQUpDLEdBS0FDLEdBTEEsQ0FLSUQsSUFBSSxJQUFJLENBQUMsR0FBR0UsSUFBSixLQUNYO0FBQ0FGLEVBQUFBLElBQUksQ0FBQyxHQUFHRSxJQUFKLENBQUosQ0FBY0MsS0FBZCxDQUFvQixDQUFDQyxLQUFELEVBQVFDLE1BQVIsS0FBbUI7QUFDckMsUUFBSVQsTUFBTSxJQUFJLElBQWQsRUFBb0I7QUFDbEIsNkJBQVVBLE1BQVYsRUFBa0JRLEtBQWxCLENBQXdCQSxLQUF4QjtBQUNEOztBQUNELFdBQU9DLE1BQVA7QUFDRCxHQUxELENBUEQsQ0FERSxDQUFQO0FBZ0JEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHtnZXRMb2dnZXJ9IGZyb20gJ2xvZzRqcyc7XHJcbmltcG9ydCB7Y29tYmluZUVwaWNzfSBmcm9tICcuL3JlZHV4LW9ic2VydmFibGUnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbWJpbmVFcGljc0Zyb21JbXBvcnRzKFxyXG4gIGVwaWNzOiBPYmplY3QsXHJcbiAgbW9kdWxlOiA/c3RyaW5nLFxyXG4pOiBGdW5jdGlvbiB7XHJcbiAgcmV0dXJuIGNvbWJpbmVFcGljcyhcclxuICAgIC4uLk9iamVjdC52YWx1ZXMoZXBpY3MpXHJcbiAgICAgIC5maWx0ZXIoZXBpYyA9PiB0eXBlb2YgZXBpYyA9PT0gJ2Z1bmN0aW9uJylcclxuICAgICAgLy8gQ2F0Y2ggZWFjaCBlcGljIGluZGl2aWR1YWxseSwgaW5zdGVhZCBvZiBjYXRjaGluZyB0aGUgcm9vdEVwaWNcclxuICAgICAgLy8gc2luY2Ugb3RoZXJ3aXNlIHdlJ2xsIHJlc3Vic2NyaWJlIGV2ZXJ5IGVwaWMgb24gYW55IGVycm9yLlxyXG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vcmVkdXgtb2JzZXJ2YWJsZS9yZWR1eC1vYnNlcnZhYmxlL2lzc3Vlcy85NFxyXG4gICAgICAubWFwKGVwaWMgPT4gKC4uLmFyZ3MpID0+XHJcbiAgICAgICAgLy8gJEZsb3dGaXhNZSg+PTAuNzAuMCkgRmxvdyBzdXBwcmVzc1xyXG4gICAgICAgIGVwaWMoLi4uYXJncykuY2F0Y2goKGVycm9yLCBzb3VyY2UpID0+IHtcclxuICAgICAgICAgIGlmIChtb2R1bGUgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBnZXRMb2dnZXIobW9kdWxlKS5lcnJvcihlcnJvcik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICByZXR1cm4gc291cmNlO1xyXG4gICAgICAgIH0pLFxyXG4gICAgICApLFxyXG4gICk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2VwaWNIZWxwZXJzLmpzIl0sIm5hbWVzIjpbImNvbWJpbmVFcGljc0Zyb21JbXBvcnRzIiwiZXBpY3MiLCJtb2R1bGUiLCJPYmplY3QiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJlcGljIiwibWFwIiwiYXJncyIsImNhdGNoIiwiZXJyb3IiLCJzb3VyY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFDQTs7QUFiQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBS08sU0FBU0EsdUJBQVQsQ0FDTEMsS0FESyxFQUVMQyxNQUZLLEVBR0s7QUFDVixTQUFPLG1DQUNMLEdBQUdDLE1BQU0sQ0FBQ0MsTUFBUCxDQUFjSCxLQUFkLEVBQ0FJLE1BREEsQ0FDT0MsSUFBSSxJQUFJLE9BQU9BLElBQVAsS0FBZ0IsVUFEL0IsRUFFRDtBQUNBO0FBQ0E7QUFKQyxHQUtBQyxHQUxBLENBS0lELElBQUksSUFBSSxDQUFDLEdBQUdFLElBQUosS0FDWDtBQUNBRixFQUFBQSxJQUFJLENBQUMsR0FBR0UsSUFBSixDQUFKLENBQWNDLEtBQWQsQ0FBb0IsQ0FBQ0MsS0FBRCxFQUFRQyxNQUFSLEtBQW1CO0FBQ3JDLFFBQUlULE1BQU0sSUFBSSxJQUFkLEVBQW9CO0FBQ2xCLDZCQUFVQSxNQUFWLEVBQWtCUSxLQUFsQixDQUF3QkEsS0FBeEI7QUFDRDs7QUFDRCxXQUFPQyxNQUFQO0FBQ0QsR0FMRCxDQVBELENBREUsQ0FBUDtBQWdCRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB7Z2V0TG9nZ2VyfSBmcm9tICdsb2c0anMnO1xyXG5pbXBvcnQge2NvbWJpbmVFcGljc30gZnJvbSAnLi9yZWR1eC1vYnNlcnZhYmxlJztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjb21iaW5lRXBpY3NGcm9tSW1wb3J0cyhcclxuICBlcGljczogT2JqZWN0LFxyXG4gIG1vZHVsZTogP3N0cmluZyxcclxuKTogRnVuY3Rpb24ge1xyXG4gIHJldHVybiBjb21iaW5lRXBpY3MoXHJcbiAgICAuLi5PYmplY3QudmFsdWVzKGVwaWNzKVxyXG4gICAgICAuZmlsdGVyKGVwaWMgPT4gdHlwZW9mIGVwaWMgPT09ICdmdW5jdGlvbicpXHJcbiAgICAgIC8vIENhdGNoIGVhY2ggZXBpYyBpbmRpdmlkdWFsbHksIGluc3RlYWQgb2YgY2F0Y2hpbmcgdGhlIHJvb3RFcGljXHJcbiAgICAgIC8vIHNpbmNlIG90aGVyd2lzZSB3ZSdsbCByZXN1YnNjcmliZSBldmVyeSBlcGljIG9uIGFueSBlcnJvci5cclxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3JlZHV4LW9ic2VydmFibGUvcmVkdXgtb2JzZXJ2YWJsZS9pc3N1ZXMvOTRcclxuICAgICAgLm1hcChlcGljID0+ICguLi5hcmdzKSA9PlxyXG4gICAgICAgIC8vICRGbG93Rml4TWUoPj0wLjcwLjApIEZsb3cgc3VwcHJlc3NcclxuICAgICAgICBlcGljKC4uLmFyZ3MpLmNhdGNoKChlcnJvciwgc291cmNlKSA9PiB7XHJcbiAgICAgICAgICBpZiAobW9kdWxlICE9IG51bGwpIHtcclxuICAgICAgICAgICAgZ2V0TG9nZ2VyKG1vZHVsZSkuZXJyb3IoZXJyb3IpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgcmV0dXJuIHNvdXJjZTtcclxuICAgICAgICB9KSxcclxuICAgICAgKSxcclxuICApO1xyXG59XHJcbiJdfQ== |
@@ -42,2 +42,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2V2ZW50LmpzIl0sIm5hbWVzIjpbImF0dGFjaEV2ZW50IiwiZW1pdHRlciIsImV2ZW50TmFtZSIsImNhbGxiYWNrIiwiYWRkTGlzdGVuZXIiLCJVbml2ZXJzYWxEaXNwb3NhYmxlIiwicmVtb3ZlTGlzdGVuZXIiLCJvYnNlcnZhYmxlRnJvbVN1YnNjcmliZUZ1bmN0aW9uIiwiZm4iLCJPYnNlcnZhYmxlIiwiY3JlYXRlIiwib2JzZXJ2ZXIiLCJuZXh0IiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBOzs7Ozs7Ozs7Ozs7QUFlQTs7Ozs7QUFLTyxTQUFTQSxXQUFULENBQ0xDLE9BREssRUFFTEMsU0FGSyxFQUdMQyxRQUhLLEVBSVE7QUFDYkYsRUFBQUEsT0FBTyxDQUFDRyxXQUFSLENBQW9CRixTQUFwQixFQUErQkMsUUFBL0I7QUFDQSxTQUFPLElBQUlFLDRCQUFKLENBQXdCLE1BQU07QUFDbkNKLElBQUFBLE9BQU8sQ0FBQ0ssY0FBUixDQUF1QkosU0FBdkIsRUFBa0NDLFFBQWxDO0FBQ0QsR0FGTSxDQUFQO0FBR0Q7O0FBT00sU0FBU0ksK0JBQVQsQ0FDTEMsRUFESyxFQUVVO0FBQ2YsU0FBT0MsNkJBQVdDLE1BQVgsQ0FDTEMsUUFBUSxJQUFJLElBQUlOLDRCQUFKLENBQXdCRyxFQUFFLENBQUNHLFFBQVEsQ0FBQ0MsSUFBVCxDQUFjQyxJQUFkLENBQW1CRixRQUFuQixDQUFELENBQTFCLENBRFAsQ0FBUDtBQUdEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IFVuaXZlcnNhbERpc3Bvc2FibGUgZnJvbSAnLi9Vbml2ZXJzYWxEaXNwb3NhYmxlJztcclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuLyoqXHJcbiAqIEFkZCBhbiBldmVudCBsaXN0ZW5lciBhbiByZXR1cm4gYSBkaXNwb3NhYmxlIGZvciByZW1vdmluZyBpdC4gTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gYXNzdW1lc1xyXG4gKiBub2RlIEV2ZW50RW1pdHRlciBzZW1hbnRpY3M6IG5hbWVseSwgdGhhdCBhZGRpbmcgdGhlIHNhbWUgY29tYmluYXRpb24gb2YgZXZlbnROYW1lIGFuZCBjYWxsYmFja1xyXG4gKiBhZGRzIGEgc2Vjb25kIGxpc3RlbmVyLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGF0dGFjaEV2ZW50KFxyXG4gIGVtaXR0ZXI6IGV2ZW50cyRFdmVudEVtaXR0ZXIsXHJcbiAgZXZlbnROYW1lOiBzdHJpbmcsXHJcbiAgY2FsbGJhY2s6IEZ1bmN0aW9uLFxyXG4pOiBJRGlzcG9zYWJsZSB7XHJcbiAgZW1pdHRlci5hZGRMaXN0ZW5lcihldmVudE5hbWUsIGNhbGxiYWNrKTtcclxuICByZXR1cm4gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUoKCkgPT4ge1xyXG4gICAgZW1pdHRlci5yZW1vdmVMaXN0ZW5lcihldmVudE5hbWUsIGNhbGxiYWNrKTtcclxuICB9KTtcclxufVxyXG5cclxudHlwZSBTdWJzY3JpYmVDYWxsYmFjazxUPiA9IChpdGVtOiBUKSA9PiBhbnk7XHJcbnR5cGUgU3Vic2NyaWJlRnVuY3Rpb248VD4gPSAoXHJcbiAgY2FsbGJhY2s6IFN1YnNjcmliZUNhbGxiYWNrPFQ+LFxyXG4pID0+IElEaXNwb3NhYmxlIHwgKCgpID0+IG1peGVkKTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvYnNlcnZhYmxlRnJvbVN1YnNjcmliZUZ1bmN0aW9uPFQ+KFxyXG4gIGZuOiBTdWJzY3JpYmVGdW5jdGlvbjxUPixcclxuKTogT2JzZXJ2YWJsZTxUPiB7XHJcbiAgcmV0dXJuIE9ic2VydmFibGUuY3JlYXRlKFxyXG4gICAgb2JzZXJ2ZXIgPT4gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUoZm4ob2JzZXJ2ZXIubmV4dC5iaW5kKG9ic2VydmVyKSkpLFxyXG4gICk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2V2ZW50LmpzIl0sIm5hbWVzIjpbImF0dGFjaEV2ZW50IiwiZW1pdHRlciIsImV2ZW50TmFtZSIsImNhbGxiYWNrIiwiYWRkTGlzdGVuZXIiLCJVbml2ZXJzYWxEaXNwb3NhYmxlIiwicmVtb3ZlTGlzdGVuZXIiLCJvYnNlcnZhYmxlRnJvbVN1YnNjcmliZUZ1bmN0aW9uIiwiZm4iLCJPYnNlcnZhYmxlIiwiY3JlYXRlIiwib2JzZXJ2ZXIiLCJuZXh0IiwiYmluZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNBLFdBQVQsQ0FDTEMsT0FESyxFQUVMQyxTQUZLLEVBR0xDLFFBSEssRUFJUTtBQUNiRixFQUFBQSxPQUFPLENBQUNHLFdBQVIsQ0FBb0JGLFNBQXBCLEVBQStCQyxRQUEvQjtBQUNBLFNBQU8sSUFBSUUsNEJBQUosQ0FBd0IsTUFBTTtBQUNuQ0osSUFBQUEsT0FBTyxDQUFDSyxjQUFSLENBQXVCSixTQUF2QixFQUFrQ0MsUUFBbEM7QUFDRCxHQUZNLENBQVA7QUFHRDs7QUFPTSxTQUFTSSwrQkFBVCxDQUNMQyxFQURLLEVBRVU7QUFDZixTQUFPQyw2QkFBV0MsTUFBWCxDQUNMQyxRQUFRLElBQUksSUFBSU4sNEJBQUosQ0FBd0JHLEVBQUUsQ0FBQ0csUUFBUSxDQUFDQyxJQUFULENBQWNDLElBQWQsQ0FBbUJGLFFBQW5CLENBQUQsQ0FBMUIsQ0FEUCxDQUFQO0FBR0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgVW5pdmVyc2FsRGlzcG9zYWJsZSBmcm9tICcuL1VuaXZlcnNhbERpc3Bvc2FibGUnO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG4vKipcclxuICogQWRkIGFuIGV2ZW50IGxpc3RlbmVyIGFuIHJldHVybiBhIGRpc3Bvc2FibGUgZm9yIHJlbW92aW5nIGl0LiBOb3RlIHRoYXQgdGhpcyBmdW5jdGlvbiBhc3N1bWVzXHJcbiAqIG5vZGUgRXZlbnRFbWl0dGVyIHNlbWFudGljczogbmFtZWx5LCB0aGF0IGFkZGluZyB0aGUgc2FtZSBjb21iaW5hdGlvbiBvZiBldmVudE5hbWUgYW5kIGNhbGxiYWNrXHJcbiAqIGFkZHMgYSBzZWNvbmQgbGlzdGVuZXIuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXR0YWNoRXZlbnQoXHJcbiAgZW1pdHRlcjogZXZlbnRzJEV2ZW50RW1pdHRlcixcclxuICBldmVudE5hbWU6IHN0cmluZyxcclxuICBjYWxsYmFjazogRnVuY3Rpb24sXHJcbik6IElEaXNwb3NhYmxlIHtcclxuICBlbWl0dGVyLmFkZExpc3RlbmVyKGV2ZW50TmFtZSwgY2FsbGJhY2spO1xyXG4gIHJldHVybiBuZXcgVW5pdmVyc2FsRGlzcG9zYWJsZSgoKSA9PiB7XHJcbiAgICBlbWl0dGVyLnJlbW92ZUxpc3RlbmVyKGV2ZW50TmFtZSwgY2FsbGJhY2spO1xyXG4gIH0pO1xyXG59XHJcblxyXG50eXBlIFN1YnNjcmliZUNhbGxiYWNrPFQ+ID0gKGl0ZW06IFQpID0+IGFueTtcclxudHlwZSBTdWJzY3JpYmVGdW5jdGlvbjxUPiA9IChcclxuICBjYWxsYmFjazogU3Vic2NyaWJlQ2FsbGJhY2s8VD4sXHJcbikgPT4gSURpc3Bvc2FibGUgfCAoKCkgPT4gbWl4ZWQpO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmFibGVGcm9tU3Vic2NyaWJlRnVuY3Rpb248VD4oXHJcbiAgZm46IFN1YnNjcmliZUZ1bmN0aW9uPFQ+LFxyXG4pOiBPYnNlcnZhYmxlPFQ+IHtcclxuICByZXR1cm4gT2JzZXJ2YWJsZS5jcmVhdGUoXHJcbiAgICBvYnNlcnZlciA9PiBuZXcgVW5pdmVyc2FsRGlzcG9zYWJsZShmbihvYnNlcnZlci5uZXh0LmJpbmQob2JzZXJ2ZXIpKSksXHJcbiAgKTtcclxufVxyXG4iXX0= |
@@ -95,2 +95,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2V4cGVjdGVkLmpzIl0sIm5hbWVzIjpbIkV4cGVjdCIsImVycm9yIiwiaXNFcnJvciIsImlzUGVuZGluZyIsImlzVmFsdWUiLCJnZXRPckRlZmF1bHQiLCJkZWYiLCJtYXAiLCJmbiIsInZhbHVlIiwicGVuZGluZyIsImV4cGVjdGVkRXF1YWwiLCJhIiwiYiIsInZhbHVlRXF1YWwiLCJlcnJvckVxdWFsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBOzs7Ozs7Ozs7Ozs7QUFZQTs7Ozs7QUFvQ08sTUFBTUEsTUFBTixDQUFhO0FBQ2xCLFNBQU9DLEtBQVAsQ0FBZ0JBLEtBQWhCLEVBQWdEO0FBQzlDLFdBQU87QUFDTEMsTUFBQUEsT0FBTyxFQUFFLElBREo7QUFFTEMsTUFBQUEsU0FBUyxFQUFFLEtBRk47QUFHTEMsTUFBQUEsT0FBTyxFQUFFLEtBSEo7QUFJTEgsTUFBQUEsS0FKSzs7QUFLTEksTUFBQUEsWUFBWSxDQUFDQyxHQUFELEVBQVk7QUFDdEIsZUFBT0EsR0FBUDtBQUNELE9BUEk7O0FBUUxDLE1BQUFBLEdBQUcsQ0FBSUMsRUFBSixFQUE2QjtBQUM5QixlQUFPUixNQUFNLENBQUNDLEtBQVAsQ0FBYUEsS0FBYixDQUFQO0FBQ0Q7O0FBVkksS0FBUDtBQVlEOztBQUVELFNBQU9RLEtBQVAsQ0FBZ0JBLEtBQWhCLEVBQTRDO0FBQzFDLFdBQU87QUFDTFAsTUFBQUEsT0FBTyxFQUFFLEtBREo7QUFFTEMsTUFBQUEsU0FBUyxFQUFFLEtBRk47QUFHTEMsTUFBQUEsT0FBTyxFQUFFLElBSEo7QUFJTEssTUFBQUEsS0FKSzs7QUFLTEosTUFBQUEsWUFBWSxDQUFDQyxHQUFELEVBQVk7QUFDdEIsZUFBTyxLQUFLRyxLQUFaO0FBQ0QsT0FQSTs7QUFRTEYsTUFBQUEsR0FBRyxDQUFJQyxFQUFKLEVBQTZCO0FBQzlCLGVBQU9SLE1BQU0sQ0FBQ1MsS0FBUCxDQUFhRCxFQUFFLENBQUNDLEtBQUQsQ0FBZixDQUFQO0FBQ0Q7O0FBVkksS0FBUDtBQVlEOztBQUVELFNBQU9DLE9BQVAsR0FBd0M7QUFDdEMsV0FBTztBQUNMUixNQUFBQSxPQUFPLEVBQUUsS0FESjtBQUVMQyxNQUFBQSxTQUFTLEVBQUUsSUFGTjtBQUdMQyxNQUFBQSxPQUFPLEVBQUUsS0FISjs7QUFJTEMsTUFBQUEsWUFBWSxDQUFDQyxHQUFELEVBQVk7QUFDdEIsZUFBT0EsR0FBUDtBQUNELE9BTkk7O0FBT0xDLE1BQUFBLEdBQUcsQ0FBSUMsRUFBSixFQUE2QjtBQUM5QixlQUFPUixNQUFNLENBQUNVLE9BQVAsRUFBUDtBQUNEOztBQVRJLEtBQVA7QUFXRDs7QUEzQ2lCOzs7O0FBOENiLFNBQVNDLGFBQVQsQ0FDTEMsQ0FESyxFQUVMQyxDQUZLLEVBR0xDLFVBSEssRUFJTEMsVUFKSyxFQUtJO0FBQ1QsTUFBSUgsQ0FBQyxDQUFDUixPQUFGLElBQWFTLENBQUMsQ0FBQ1QsT0FBbkIsRUFBNEI7QUFDMUIsV0FBT1UsVUFBVSxDQUFDRixDQUFDLENBQUNILEtBQUgsRUFBVUksQ0FBQyxDQUFDSixLQUFaLENBQWpCO0FBQ0QsR0FGRCxNQUVPLElBQUlHLENBQUMsQ0FBQ1YsT0FBRixJQUFhVyxDQUFDLENBQUNYLE9BQW5CLEVBQTRCO0FBQ2pDLFdBQU9hLFVBQVUsQ0FBQ0gsQ0FBQyxDQUFDWCxLQUFILEVBQVVZLENBQUMsQ0FBQ1osS0FBWixDQUFqQjtBQUNELEdBRk0sTUFFQSxJQUFJVyxDQUFDLENBQUNULFNBQUYsSUFBZVUsQ0FBQyxDQUFDVixTQUFyQixFQUFnQztBQUNyQyxXQUFPLElBQVA7QUFDRCxHQUZNLE1BRUE7QUFDTCxXQUFPLEtBQVA7QUFDRDtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBUaGlzIGlzIGEgd3JhcHBlciB0eXBlIHVzZWZ1bCBmb3IgT2JzZXJ2YWJsZXMgdG8gcmV0dXJuIGVycm9ycyBkdXJpbmcgaXRzIHN0cmVhbVxyXG4gKiBhbmQgbGF0ZXIgc3dpdGNoIGJhY2sgdG8gcmVndWxhciB2YWx1ZXMgaWYgdGhleSByZWNvdmVyLiBOb3JtYWxseSwgYSBzb3VyY2UgZmluaXNoZXMgYWZ0ZXJcclxuICogcGFzc2luZyBhbiB1bmNhdWdodCBlcnJvci5cclxuICovXHJcbmV4cG9ydCB0eXBlIEV4cGVjdGVkPFQ+ID1cclxuICB8IEV4cGVjdGVkRXJyb3I8VD5cclxuICB8IEV4cGVjdGVkVmFsdWU8VD5cclxuICB8IEV4cGVjdGVkUGVuZGluZzxUPjtcclxuXHJcbnR5cGUgRXhwZWN0ZWRFcnJvcjxUPiA9IHt8XHJcbiAgaXNFcnJvcjogdHJ1ZSxcclxuICBpc1BlbmRpbmc6IGZhbHNlLFxyXG4gIGlzVmFsdWU6IGZhbHNlLFxyXG4gIGVycm9yOiBFcnJvcixcclxuICBnZXRPckRlZmF1bHQ6IChkZWY6IFQpID0+IFQsXHJcbiAgbWFwPFU+KGZuOiAoVCkgPT4gVSk6IEV4cGVjdGVkPFU+LFxyXG58fTtcclxuXHJcbnR5cGUgRXhwZWN0ZWRWYWx1ZTxUPiA9IHt8XHJcbiAgaXNFcnJvcjogZmFsc2UsXHJcbiAgaXNQZW5kaW5nOiBmYWxzZSxcclxuICBpc1ZhbHVlOiB0cnVlLFxyXG4gIHZhbHVlOiBULFxyXG4gIGdldE9yRGVmYXVsdDogKGRlZjogVCkgPT4gVCxcclxuICBtYXA8VT4oZm46IChUKSA9PiBVKTogRXhwZWN0ZWQ8VT4sXHJcbnx9O1xyXG5cclxudHlwZSBFeHBlY3RlZFBlbmRpbmc8VD4gPSB7fFxyXG4gIGlzRXJyb3I6IGZhbHNlLFxyXG4gIGlzUGVuZGluZzogdHJ1ZSxcclxuICBpc1ZhbHVlOiBmYWxzZSxcclxuICBnZXRPckRlZmF1bHQ6IChkZWY6IFQpID0+IFQsXHJcbiAgbWFwPFU+KGZuOiAoVCkgPT4gVSk6IEV4cGVjdGVkPFU+LFxyXG58fTtcclxuXHJcbmV4cG9ydCBjbGFzcyBFeHBlY3Qge1xyXG4gIHN0YXRpYyBlcnJvcjxUPihlcnJvcjogRXJyb3IpOiBFeHBlY3RlZEVycm9yPFQ+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGlzRXJyb3I6IHRydWUsXHJcbiAgICAgIGlzUGVuZGluZzogZmFsc2UsXHJcbiAgICAgIGlzVmFsdWU6IGZhbHNlLFxyXG4gICAgICBlcnJvcixcclxuICAgICAgZ2V0T3JEZWZhdWx0KGRlZjogVCk6IFQge1xyXG4gICAgICAgIHJldHVybiBkZWY7XHJcbiAgICAgIH0sXHJcbiAgICAgIG1hcDxVPihmbjogVCA9PiBVKTogRXhwZWN0ZWQ8VT4ge1xyXG4gICAgICAgIHJldHVybiBFeHBlY3QuZXJyb3IoZXJyb3IpO1xyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB2YWx1ZTxUPih2YWx1ZTogVCk6IEV4cGVjdGVkVmFsdWU8VD4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaXNFcnJvcjogZmFsc2UsXHJcbiAgICAgIGlzUGVuZGluZzogZmFsc2UsXHJcbiAgICAgIGlzVmFsdWU6IHRydWUsXHJcbiAgICAgIHZhbHVlLFxyXG4gICAgICBnZXRPckRlZmF1bHQoZGVmOiBUKTogVCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XHJcbiAgICAgIH0sXHJcbiAgICAgIG1hcDxVPihmbjogVCA9PiBVKTogRXhwZWN0ZWQ8VT4ge1xyXG4gICAgICAgIHJldHVybiBFeHBlY3QudmFsdWUoZm4odmFsdWUpKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcGVuZGluZzxUPigpOiBFeHBlY3RlZFBlbmRpbmc8VD4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaXNFcnJvcjogZmFsc2UsXHJcbiAgICAgIGlzUGVuZGluZzogdHJ1ZSxcclxuICAgICAgaXNWYWx1ZTogZmFsc2UsXHJcbiAgICAgIGdldE9yRGVmYXVsdChkZWY6IFQpOiBUIHtcclxuICAgICAgICByZXR1cm4gZGVmO1xyXG4gICAgICB9LFxyXG4gICAgICBtYXA8VT4oZm46IFQgPT4gVSk6IEV4cGVjdGVkPFU+IHtcclxuICAgICAgICByZXR1cm4gRXhwZWN0LnBlbmRpbmcoKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0ZWRFcXVhbDxUPihcclxuICBhOiBFeHBlY3RlZDxUPixcclxuICBiOiBFeHBlY3RlZDxUPixcclxuICB2YWx1ZUVxdWFsOiAodmFsdWVBOiBULCB2YWx1ZUI6IFQpID0+IGJvb2xlYW4sXHJcbiAgZXJyb3JFcXVhbDogKGVycm9yQTogRXJyb3IsIGVycm9yQjogRXJyb3IpID0+IGJvb2xlYW4sXHJcbik6IGJvb2xlYW4ge1xyXG4gIGlmIChhLmlzVmFsdWUgJiYgYi5pc1ZhbHVlKSB7XHJcbiAgICByZXR1cm4gdmFsdWVFcXVhbChhLnZhbHVlLCBiLnZhbHVlKTtcclxuICB9IGVsc2UgaWYgKGEuaXNFcnJvciAmJiBiLmlzRXJyb3IpIHtcclxuICAgIHJldHVybiBlcnJvckVxdWFsKGEuZXJyb3IsIGIuZXJyb3IpO1xyXG4gIH0gZWxzZSBpZiAoYS5pc1BlbmRpbmcgJiYgYi5pc1BlbmRpbmcpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2V4cGVjdGVkLmpzIl0sIm5hbWVzIjpbIkV4cGVjdCIsImVycm9yIiwiaXNFcnJvciIsImlzUGVuZGluZyIsImlzVmFsdWUiLCJnZXRPckRlZmF1bHQiLCJkZWYiLCJtYXAiLCJmbiIsInZhbHVlIiwicGVuZGluZyIsImV4cGVjdGVkRXF1YWwiLCJhIiwiYiIsInZhbHVlRXF1YWwiLCJlcnJvckVxdWFsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQWdDTyxNQUFNQSxNQUFOLENBQWE7QUFDTixTQUFMQyxLQUFLLENBQUlBLEtBQUosRUFBb0M7QUFDOUMsV0FBTztBQUNMQyxNQUFBQSxPQUFPLEVBQUUsSUFESjtBQUVMQyxNQUFBQSxTQUFTLEVBQUUsS0FGTjtBQUdMQyxNQUFBQSxPQUFPLEVBQUUsS0FISjtBQUlMSCxNQUFBQSxLQUpLOztBQUtMSSxNQUFBQSxZQUFZLENBQUNDLEdBQUQsRUFBWTtBQUN0QixlQUFPQSxHQUFQO0FBQ0QsT0FQSTs7QUFRTEMsTUFBQUEsR0FBRyxDQUFJQyxFQUFKLEVBQTZCO0FBQzlCLGVBQU9SLE1BQU0sQ0FBQ0MsS0FBUCxDQUFhQSxLQUFiLENBQVA7QUFDRDs7QUFWSSxLQUFQO0FBWUQ7O0FBRVcsU0FBTFEsS0FBSyxDQUFJQSxLQUFKLEVBQWdDO0FBQzFDLFdBQU87QUFDTFAsTUFBQUEsT0FBTyxFQUFFLEtBREo7QUFFTEMsTUFBQUEsU0FBUyxFQUFFLEtBRk47QUFHTEMsTUFBQUEsT0FBTyxFQUFFLElBSEo7QUFJTEssTUFBQUEsS0FKSzs7QUFLTEosTUFBQUEsWUFBWSxDQUFDQyxHQUFELEVBQVk7QUFDdEIsZUFBTyxLQUFLRyxLQUFaO0FBQ0QsT0FQSTs7QUFRTEYsTUFBQUEsR0FBRyxDQUFJQyxFQUFKLEVBQTZCO0FBQzlCLGVBQU9SLE1BQU0sQ0FBQ1MsS0FBUCxDQUFhRCxFQUFFLENBQUNDLEtBQUQsQ0FBZixDQUFQO0FBQ0Q7O0FBVkksS0FBUDtBQVlEOztBQUVhLFNBQVBDLE9BQU8sR0FBMEI7QUFDdEMsV0FBTztBQUNMUixNQUFBQSxPQUFPLEVBQUUsS0FESjtBQUVMQyxNQUFBQSxTQUFTLEVBQUUsSUFGTjtBQUdMQyxNQUFBQSxPQUFPLEVBQUUsS0FISjs7QUFJTEMsTUFBQUEsWUFBWSxDQUFDQyxHQUFELEVBQVk7QUFDdEIsZUFBT0EsR0FBUDtBQUNELE9BTkk7O0FBT0xDLE1BQUFBLEdBQUcsQ0FBSUMsRUFBSixFQUE2QjtBQUM5QixlQUFPUixNQUFNLENBQUNVLE9BQVAsRUFBUDtBQUNEOztBQVRJLEtBQVA7QUFXRDs7QUEzQ2lCOzs7O0FBOENiLFNBQVNDLGFBQVQsQ0FDTEMsQ0FESyxFQUVMQyxDQUZLLEVBR0xDLFVBSEssRUFJTEMsVUFKSyxFQUtJO0FBQ1QsTUFBSUgsQ0FBQyxDQUFDUixPQUFGLElBQWFTLENBQUMsQ0FBQ1QsT0FBbkIsRUFBNEI7QUFDMUIsV0FBT1UsVUFBVSxDQUFDRixDQUFDLENBQUNILEtBQUgsRUFBVUksQ0FBQyxDQUFDSixLQUFaLENBQWpCO0FBQ0QsR0FGRCxNQUVPLElBQUlHLENBQUMsQ0FBQ1YsT0FBRixJQUFhVyxDQUFDLENBQUNYLE9BQW5CLEVBQTRCO0FBQ2pDLFdBQU9hLFVBQVUsQ0FBQ0gsQ0FBQyxDQUFDWCxLQUFILEVBQVVZLENBQUMsQ0FBQ1osS0FBWixDQUFqQjtBQUNELEdBRk0sTUFFQSxJQUFJVyxDQUFDLENBQUNULFNBQUYsSUFBZVUsQ0FBQyxDQUFDVixTQUFyQixFQUFnQztBQUNyQyxXQUFPLElBQVA7QUFDRCxHQUZNLE1BRUE7QUFDTCxXQUFPLEtBQVA7QUFDRDtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbi8qKlxyXG4gKiBUaGlzIGlzIGEgd3JhcHBlciB0eXBlIHVzZWZ1bCBmb3IgT2JzZXJ2YWJsZXMgdG8gcmV0dXJuIGVycm9ycyBkdXJpbmcgaXRzIHN0cmVhbVxyXG4gKiBhbmQgbGF0ZXIgc3dpdGNoIGJhY2sgdG8gcmVndWxhciB2YWx1ZXMgaWYgdGhleSByZWNvdmVyLiBOb3JtYWxseSwgYSBzb3VyY2UgZmluaXNoZXMgYWZ0ZXJcclxuICogcGFzc2luZyBhbiB1bmNhdWdodCBlcnJvci5cclxuICovXHJcbmV4cG9ydCB0eXBlIEV4cGVjdGVkPFQ+ID1cclxuICB8IEV4cGVjdGVkRXJyb3I8VD5cclxuICB8IEV4cGVjdGVkVmFsdWU8VD5cclxuICB8IEV4cGVjdGVkUGVuZGluZzxUPjtcclxuXHJcbnR5cGUgRXhwZWN0ZWRFcnJvcjxUPiA9IHt8XHJcbiAgaXNFcnJvcjogdHJ1ZSxcclxuICBpc1BlbmRpbmc6IGZhbHNlLFxyXG4gIGlzVmFsdWU6IGZhbHNlLFxyXG4gIGVycm9yOiBFcnJvcixcclxuICBnZXRPckRlZmF1bHQ6IChkZWY6IFQpID0+IFQsXHJcbiAgbWFwPFU+KGZuOiAoVCkgPT4gVSk6IEV4cGVjdGVkPFU+LFxyXG58fTtcclxuXHJcbnR5cGUgRXhwZWN0ZWRWYWx1ZTxUPiA9IHt8XHJcbiAgaXNFcnJvcjogZmFsc2UsXHJcbiAgaXNQZW5kaW5nOiBmYWxzZSxcclxuICBpc1ZhbHVlOiB0cnVlLFxyXG4gIHZhbHVlOiBULFxyXG4gIGdldE9yRGVmYXVsdDogKGRlZjogVCkgPT4gVCxcclxuICBtYXA8VT4oZm46IChUKSA9PiBVKTogRXhwZWN0ZWQ8VT4sXHJcbnx9O1xyXG5cclxudHlwZSBFeHBlY3RlZFBlbmRpbmc8VD4gPSB7fFxyXG4gIGlzRXJyb3I6IGZhbHNlLFxyXG4gIGlzUGVuZGluZzogdHJ1ZSxcclxuICBpc1ZhbHVlOiBmYWxzZSxcclxuICBnZXRPckRlZmF1bHQ6IChkZWY6IFQpID0+IFQsXHJcbiAgbWFwPFU+KGZuOiAoVCkgPT4gVSk6IEV4cGVjdGVkPFU+LFxyXG58fTtcclxuXHJcbmV4cG9ydCBjbGFzcyBFeHBlY3Qge1xyXG4gIHN0YXRpYyBlcnJvcjxUPihlcnJvcjogRXJyb3IpOiBFeHBlY3RlZEVycm9yPFQ+IHtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIGlzRXJyb3I6IHRydWUsXHJcbiAgICAgIGlzUGVuZGluZzogZmFsc2UsXHJcbiAgICAgIGlzVmFsdWU6IGZhbHNlLFxyXG4gICAgICBlcnJvcixcclxuICAgICAgZ2V0T3JEZWZhdWx0KGRlZjogVCk6IFQge1xyXG4gICAgICAgIHJldHVybiBkZWY7XHJcbiAgICAgIH0sXHJcbiAgICAgIG1hcDxVPihmbjogVCA9PiBVKTogRXhwZWN0ZWQ8VT4ge1xyXG4gICAgICAgIHJldHVybiBFeHBlY3QuZXJyb3IoZXJyb3IpO1xyXG4gICAgICB9LFxyXG4gICAgfTtcclxuICB9XHJcblxyXG4gIHN0YXRpYyB2YWx1ZTxUPih2YWx1ZTogVCk6IEV4cGVjdGVkVmFsdWU8VD4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaXNFcnJvcjogZmFsc2UsXHJcbiAgICAgIGlzUGVuZGluZzogZmFsc2UsXHJcbiAgICAgIGlzVmFsdWU6IHRydWUsXHJcbiAgICAgIHZhbHVlLFxyXG4gICAgICBnZXRPckRlZmF1bHQoZGVmOiBUKTogVCB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMudmFsdWU7XHJcbiAgICAgIH0sXHJcbiAgICAgIG1hcDxVPihmbjogVCA9PiBVKTogRXhwZWN0ZWQ8VT4ge1xyXG4gICAgICAgIHJldHVybiBFeHBlY3QudmFsdWUoZm4odmFsdWUpKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG5cclxuICBzdGF0aWMgcGVuZGluZzxUPigpOiBFeHBlY3RlZFBlbmRpbmc8VD4ge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgaXNFcnJvcjogZmFsc2UsXHJcbiAgICAgIGlzUGVuZGluZzogdHJ1ZSxcclxuICAgICAgaXNWYWx1ZTogZmFsc2UsXHJcbiAgICAgIGdldE9yRGVmYXVsdChkZWY6IFQpOiBUIHtcclxuICAgICAgICByZXR1cm4gZGVmO1xyXG4gICAgICB9LFxyXG4gICAgICBtYXA8VT4oZm46IFQgPT4gVSk6IEV4cGVjdGVkPFU+IHtcclxuICAgICAgICByZXR1cm4gRXhwZWN0LnBlbmRpbmcoKTtcclxuICAgICAgfSxcclxuICAgIH07XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZXhwZWN0ZWRFcXVhbDxUPihcclxuICBhOiBFeHBlY3RlZDxUPixcclxuICBiOiBFeHBlY3RlZDxUPixcclxuICB2YWx1ZUVxdWFsOiAodmFsdWVBOiBULCB2YWx1ZUI6IFQpID0+IGJvb2xlYW4sXHJcbiAgZXJyb3JFcXVhbDogKGVycm9yQTogRXJyb3IsIGVycm9yQjogRXJyb3IpID0+IGJvb2xlYW4sXHJcbik6IGJvb2xlYW4ge1xyXG4gIGlmIChhLmlzVmFsdWUgJiYgYi5pc1ZhbHVlKSB7XHJcbiAgICByZXR1cm4gdmFsdWVFcXVhbChhLnZhbHVlLCBiLnZhbHVlKTtcclxuICB9IGVsc2UgaWYgKGEuaXNFcnJvciAmJiBiLmlzRXJyb3IpIHtcclxuICAgIHJldHVybiBlcnJvckVxdWFsKGEuZXJyb3IsIGIuZXJyb3IpO1xyXG4gIH0gZWxzZSBpZiAoYS5pc1BlbmRpbmcgJiYgYi5pc1BlbmRpbmcpIHtcclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiJdfQ== |
@@ -132,2 +132,2 @@ "use strict"; | ||
exports.FileResults = FileResults; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0ZpbGVSZXN1bHRzLmpzIl0sIm5hbWVzIjpbIkZpbGVSZXN1bHRzIiwiY29uc3RydWN0b3IiLCJwYXRoIiwiZ3JvdXBzIiwicGF0aE1hdGNoIiwiZmlsdGVyR3JvdXBzIiwicmVnZXgiLCJpbnZlcnQiLCJmaWx0ZXJlZCIsImZvckVhY2giLCJncm91cCIsImxpbmVzIiwibWF0Y2hlcyIsInN0YXJ0TGluZSIsImN1ck1hdGNoIiwiaSIsImxlbmd0aCIsImxpbmUiLCJsaW5lTnVtIiwicmVnZXhNYXRjaCIsImV4ZWMiLCJtYXRjaGVkIiwic3RhcnQiLCJyb3ciLCJwdXNoIiwiZmlsdGVyTWF0Y2giLCJSYW5nZSIsImluZGV4IiwiaiIsImNvbXBhcmUiLCJzcGxpY2UiLCJhcHBseUdyZXAiLCJmaWxlTWF0Y2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFaQTs7Ozs7Ozs7Ozs7QUFvQk8sTUFBTUEsV0FBTixDQUFrQjtBQUt2QkMsRUFBQUEsV0FBVyxDQUNUQyxJQURTLEVBRVRDLE1BRlMsRUFHVEMsU0FIUyxFQUlUO0FBQUEsU0FSRkYsSUFRRTtBQUFBLFNBUEZDLE1BT0U7QUFBQSxTQU5GQyxTQU1FO0FBQ0EsU0FBS0YsSUFBTCxHQUFZQSxJQUFaO0FBQ0EsU0FBS0MsTUFBTCxHQUFjQSxNQUFkO0FBQ0EsU0FBS0MsU0FBTCxHQUFpQkEsU0FBakI7QUFDRCxHQWJzQixDQWV2QjtBQUNBO0FBQ0E7OztBQUNBQyxFQUFBQSxZQUFZLENBQUNDLEtBQUQsRUFBZ0JDLE1BQWhCLEVBQW1EO0FBQzdELFVBQU1DLFFBQVEsR0FBRyxFQUFqQjtBQUNBLFNBQUtMLE1BQUwsQ0FBWU0sT0FBWixDQUFvQkMsS0FBSyxJQUFJO0FBQzNCLFVBQUlDLEtBQUssR0FBRyxFQUFaO0FBQ0EsVUFBSUMsT0FBTyxHQUFHLEVBQWQ7QUFDQSxVQUFJQyxTQUFTLEdBQUcsQ0FBQyxDQUFqQjtBQUNBLFVBQUlDLFFBQVEsR0FBRyxDQUFmOztBQUNBLFdBQUssSUFBSUMsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR0wsS0FBSyxDQUFDQyxLQUFOLENBQVlLLE1BQWhDLEVBQXdDRCxDQUFDLEVBQXpDLEVBQTZDO0FBQzNDLGNBQU1FLElBQUksR0FBR1AsS0FBSyxDQUFDQyxLQUFOLENBQVlJLENBQVosQ0FBYjtBQUNBLGNBQU1HLE9BQU8sR0FBR1IsS0FBSyxDQUFDRyxTQUFOLEdBQWtCRSxDQUFsQixHQUFzQixDQUF0QyxDQUYyQyxDQUczQzs7QUFDQSxjQUFNSSxVQUE4QixHQUFHYixLQUFLLENBQUNjLElBQU4sQ0FBV0gsSUFBWCxDQUF2QztBQUNBLGNBQU1JLE9BQU8sR0FBSUYsVUFBVSxJQUFJLElBQWYsS0FBeUJaLE1BQXpDLENBTDJDLENBTTNDOztBQUNBLGVBQ0VPLFFBQVEsR0FBR0osS0FBSyxDQUFDRSxPQUFOLENBQWNJLE1BQXpCLElBQ0FOLEtBQUssQ0FBQ0UsT0FBTixDQUFjRSxRQUFkLEVBQXdCUSxLQUF4QixDQUE4QkMsR0FBOUIsS0FBc0NMLE9BRnhDLEVBR0U7QUFDQSxjQUFJRyxPQUFKLEVBQWE7QUFDWFQsWUFBQUEsT0FBTyxDQUFDWSxJQUFSLENBQWFkLEtBQUssQ0FBQ0UsT0FBTixDQUFjRSxRQUFkLENBQWI7QUFDRDs7QUFDREEsVUFBQUEsUUFBUTtBQUNUOztBQUNELFlBQUksQ0FBQ08sT0FBTCxFQUFjO0FBQ1o7QUFDQSxjQUFJVixLQUFLLENBQUNLLE1BQU4sS0FBaUIsQ0FBckIsRUFBd0I7QUFDdEJSLFlBQUFBLFFBQVEsQ0FBQ2dCLElBQVQsQ0FBYztBQUFDWCxjQUFBQSxTQUFEO0FBQVlGLGNBQUFBLEtBQVo7QUFBbUJDLGNBQUFBO0FBQW5CLGFBQWQ7QUFDQUQsWUFBQUEsS0FBSyxHQUFHLEVBQVI7QUFDQUMsWUFBQUEsT0FBTyxHQUFHLEVBQVY7QUFDRDtBQUNGLFNBUEQsTUFPTztBQUNMLGNBQUlELEtBQUssQ0FBQ0ssTUFBTixLQUFpQixDQUFyQixFQUF3QjtBQUN0QkgsWUFBQUEsU0FBUyxHQUFHSyxPQUFPLEdBQUcsQ0FBdEI7QUFDRDs7QUFDRFAsVUFBQUEsS0FBSyxDQUFDYSxJQUFOLENBQVdQLElBQVgsRUFKSyxDQUtMOztBQUNBLGNBQUksQ0FBQ1YsTUFBTCxFQUFhO0FBQ1gsa0JBQU1rQixXQUFXLEdBQUcsSUFBSUMsV0FBSixDQUNsQixDQUFDUixPQUFELEVBQVVDLFVBQVUsQ0FBQ1EsS0FBckIsQ0FEa0IsRUFFbEIsQ0FBQ1QsT0FBRCxFQUFVQyxVQUFVLENBQUNRLEtBQVgsR0FBbUJSLFVBQVUsQ0FBQyxDQUFELENBQVYsQ0FBY0gsTUFBM0MsQ0FGa0IsQ0FBcEIsQ0FEVyxDQUtYO0FBQ0E7O0FBQ0EsaUJBQUssSUFBSVksQ0FBQyxHQUFHaEIsT0FBTyxDQUFDSSxNQUFyQixFQUE2QlksQ0FBQyxJQUFJLENBQWxDLEVBQXFDQSxDQUFDLEVBQXRDLEVBQTBDO0FBQ3hDLGtCQUFJQSxDQUFDLEtBQUssQ0FBTixJQUFXaEIsT0FBTyxDQUFDZ0IsQ0FBQyxHQUFHLENBQUwsQ0FBUCxDQUFlQyxPQUFmLENBQXVCSixXQUF2QixLQUF1QyxDQUF0RCxFQUF5RDtBQUN2RGIsZ0JBQUFBLE9BQU8sQ0FBQ2tCLE1BQVIsQ0FBZUYsQ0FBZixFQUFrQkEsQ0FBbEIsRUFBcUJILFdBQXJCO0FBQ0E7QUFDRDtBQUNGO0FBQ0Y7QUFDRjtBQUNGLE9BakQwQixDQWtEM0I7OztBQUNBLFVBQUlkLEtBQUssQ0FBQ0ssTUFBTixLQUFpQixDQUFyQixFQUF3QjtBQUN0QlIsUUFBQUEsUUFBUSxDQUFDZ0IsSUFBVCxDQUFjO0FBQUNYLFVBQUFBLFNBQUQ7QUFBWUYsVUFBQUEsS0FBWjtBQUFtQkMsVUFBQUE7QUFBbkIsU0FBZDtBQUNEO0FBQ0YsS0F0REQ7QUF1REEsV0FBT0osUUFBUDtBQUNELEdBNUVzQixDQThFdkI7QUFDQTs7O0FBQ0F1QixFQUFBQSxTQUFTLENBQUN6QixLQUFELEVBQWdCQyxNQUFoQixFQUErQztBQUN0RCxVQUFNO0FBQUNMLE1BQUFBO0FBQUQsUUFBUyxJQUFmOztBQUNBLFFBQUlLLE1BQU0sSUFBSUQsS0FBSyxDQUFDYyxJQUFOLENBQVdsQixJQUFYLEtBQW9CLElBQWxDLEVBQXdDO0FBQ3RDLGFBQU8sSUFBUDtBQUNEOztBQUNELFVBQU1DLE1BQU0sR0FBRyxLQUFLRSxZQUFMLENBQWtCQyxLQUFsQixFQUF5QkMsTUFBekIsQ0FBZjs7QUFDQSxRQUFJSixNQUFNLENBQUNhLE1BQVAsS0FBa0IsQ0FBdEIsRUFBeUI7QUFDdkIsWUFBTWdCLFNBQVMsR0FBRzFCLEtBQUssQ0FBQ2MsSUFBTixDQUFXbEIsSUFBWCxDQUFsQjs7QUFDQSxVQUFLOEIsU0FBUyxJQUFJLElBQWQsS0FBd0J6QixNQUE1QixFQUFvQztBQUNsQyxlQUFPLElBQVA7QUFDRDs7QUFDRCxVQUFJeUIsU0FBUyxJQUFJLElBQWpCLEVBQXVCO0FBQ3JCLGVBQU8sSUFBSWhDLFdBQUosQ0FBZ0JFLElBQWhCLEVBQXNCQyxNQUF0QixFQUE4QixDQUNuQzZCLFNBQVMsQ0FBQ0wsS0FEeUIsRUFFbkNLLFNBQVMsQ0FBQ0wsS0FBVixHQUFrQkssU0FBUyxDQUFDLENBQUQsQ0FBVCxDQUFhaEIsTUFGSSxDQUE5QixDQUFQO0FBSUQ7QUFDRjs7QUFDRCxXQUFPLElBQUloQixXQUFKLENBQWdCRSxJQUFoQixFQUFzQkMsTUFBdEIsQ0FBUDtBQUNEOztBQW5Hc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge1JhbmdlfSBmcm9tICdhdG9tJztcclxuXHJcbmV4cG9ydCB0eXBlIExpbmVHcm91cCA9IHtcclxuICBzdGFydExpbmU6IG51bWJlcixcclxuICBsaW5lczogQXJyYXk8c3RyaW5nPixcclxuICBtYXRjaGVzOiBBcnJheTxhdG9tJFJhbmdlPixcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBGaWxlUmVzdWx0cyB7XHJcbiAgcGF0aDogc3RyaW5nO1xyXG4gIGdyb3VwczogQXJyYXk8TGluZUdyb3VwPjtcclxuICBwYXRoTWF0Y2g6ID9bbnVtYmVyLCBudW1iZXJdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHBhdGg6IHN0cmluZyxcclxuICAgIGdyb3VwczogQXJyYXk8TGluZUdyb3VwPixcclxuICAgIHBhdGhNYXRjaD86IFtudW1iZXIsIG51bWJlcl0sXHJcbiAgKSB7XHJcbiAgICB0aGlzLnBhdGggPSBwYXRoO1xyXG4gICAgdGhpcy5ncm91cHMgPSBncm91cHM7XHJcbiAgICB0aGlzLnBhdGhNYXRjaCA9IHBhdGhNYXRjaDtcclxuICB9XHJcblxyXG4gIC8vIEFwcGx5IGEgZ3JlcCBmaWx0ZXIgdG8gYWxsIGxpbmUgZ3JvdXBzLCBzcGxpdHRpbmcgaW50byBuZXcgZ3JvdXBzIGFzIG5lY2Vzc2FyeS5cclxuICAvLyBQYXNzIGBpbnZlcnQgPSB0cnVlYCB0byBpbnZlcnQgdGhlIGdyZXAgZmlsdGVyLlxyXG4gIC8vIFdoZW4gaW52ZXJ0IGlzIGZhbHNlLCByZWdleCBtYXRjaCByYW5nZXMgd2lsbCBiZSBhZGRlZCB0byBlYWNoIGdyb3VwJ3MgbGlzdCBvZiBtYXRjaGVzLlxyXG4gIGZpbHRlckdyb3VwcyhyZWdleDogUmVnRXhwLCBpbnZlcnQ6IGJvb2xlYW4pOiBBcnJheTxMaW5lR3JvdXA+IHtcclxuICAgIGNvbnN0IGZpbHRlcmVkID0gW107XHJcbiAgICB0aGlzLmdyb3Vwcy5mb3JFYWNoKGdyb3VwID0+IHtcclxuICAgICAgbGV0IGxpbmVzID0gW107XHJcbiAgICAgIGxldCBtYXRjaGVzID0gW107XHJcbiAgICAgIGxldCBzdGFydExpbmUgPSAtMTtcclxuICAgICAgbGV0IGN1ck1hdGNoID0gMDtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBncm91cC5saW5lcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGNvbnN0IGxpbmUgPSBncm91cC5saW5lc1tpXTtcclxuICAgICAgICBjb25zdCBsaW5lTnVtID0gZ3JvdXAuc3RhcnRMaW5lICsgaSAtIDE7XHJcbiAgICAgICAgLy8gJEZsb3dGaXhNZSAoPj0gdjAuNzUuMClcclxuICAgICAgICBjb25zdCByZWdleE1hdGNoOiBSZWdFeHAkbWF0Y2hSZXN1bHQgPSByZWdleC5leGVjKGxpbmUpO1xyXG4gICAgICAgIGNvbnN0IG1hdGNoZWQgPSAocmVnZXhNYXRjaCA9PSBudWxsKSA9PT0gaW52ZXJ0O1xyXG4gICAgICAgIC8vIEtlZXAgYWxsIHRoZSBleGlzdGluZyBtYXRjaCByYW5nZXMgb25seSBpZiB0aGUgcmVnZXggbWF0Y2hlZC5cclxuICAgICAgICB3aGlsZSAoXHJcbiAgICAgICAgICBjdXJNYXRjaCA8IGdyb3VwLm1hdGNoZXMubGVuZ3RoICYmXHJcbiAgICAgICAgICBncm91cC5tYXRjaGVzW2N1ck1hdGNoXS5zdGFydC5yb3cgPT09IGxpbmVOdW1cclxuICAgICAgICApIHtcclxuICAgICAgICAgIGlmIChtYXRjaGVkKSB7XHJcbiAgICAgICAgICAgIG1hdGNoZXMucHVzaChncm91cC5tYXRjaGVzW2N1ck1hdGNoXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBjdXJNYXRjaCsrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIW1hdGNoZWQpIHtcclxuICAgICAgICAgIC8vIEEgbm9uLW1hdGNoIG1lYW5zIHRoYXQgd2Ugc2hvdWxkIHNwbGl0IGludG8gYSBuZXcgZ3JvdXAsIGlmIG5lY2Vzc2FyeS5cclxuICAgICAgICAgIGlmIChsaW5lcy5sZW5ndGggIT09IDApIHtcclxuICAgICAgICAgICAgZmlsdGVyZWQucHVzaCh7c3RhcnRMaW5lLCBsaW5lcywgbWF0Y2hlc30pO1xyXG4gICAgICAgICAgICBsaW5lcyA9IFtdO1xyXG4gICAgICAgICAgICBtYXRjaGVzID0gW107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChsaW5lcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgc3RhcnRMaW5lID0gbGluZU51bSArIDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBsaW5lcy5wdXNoKGxpbmUpO1xyXG4gICAgICAgICAgLy8gRm9yIG5vbi1pbnZlcnQgbWF0Y2hlcywgYWRkaXRpb25hbGx5IGhpZ2hsaWdodCB0aGUgZmlyc3QgcmVnZXggbWF0Y2guXHJcbiAgICAgICAgICBpZiAoIWludmVydCkge1xyXG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJNYXRjaCA9IG5ldyBSYW5nZShcclxuICAgICAgICAgICAgICBbbGluZU51bSwgcmVnZXhNYXRjaC5pbmRleF0sXHJcbiAgICAgICAgICAgICAgW2xpbmVOdW0sIHJlZ2V4TWF0Y2guaW5kZXggKyByZWdleE1hdGNoWzBdLmxlbmd0aF0sXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIC8vIEtlZXAgYG1hdGNoZXNgIHNvcnRlZCB2aWEgaW5zZXJ0aW9uIHNvcnQuXHJcbiAgICAgICAgICAgIC8vIFRoaXMgZG9lcyBub3QgY2F1c2UgcXVhZHJhdGljIHJ1bnRpbWUsIHNpbmNlIHRoaXMgd2lsbCBvbmx5IHNjYW4gdGhlIHByZXZpb3VzIGxpbmUuXHJcbiAgICAgICAgICAgIGZvciAobGV0IGogPSBtYXRjaGVzLmxlbmd0aDsgaiA+PSAwOyBqLS0pIHtcclxuICAgICAgICAgICAgICBpZiAoaiA9PT0gMCB8fCBtYXRjaGVzW2ogLSAxXS5jb21wYXJlKGZpbHRlck1hdGNoKSA8PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBtYXRjaGVzLnNwbGljZShqLCBqLCBmaWx0ZXJNYXRjaCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLy8gRmluaXNoIG9mZiB0aGUgY3VycmVudCBncm91cC5cclxuICAgICAgaWYgKGxpbmVzLmxlbmd0aCAhPT0gMCkge1xyXG4gICAgICAgIGZpbHRlcmVkLnB1c2goe3N0YXJ0TGluZSwgbGluZXMsIG1hdGNoZXN9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZmlsdGVyZWQ7XHJcbiAgfVxyXG5cclxuICAvLyBBcHBsaWVzIHRoZSBncmVwIGZpbHRlciB0byBib3RoIGZpbGVuYW1lIGFuZCBsaW5lIGdyb3Vwcy5cclxuICAvLyBSZXR1cm5zIG51bGwgaWYgbmVpdGhlciBmaWxlbmFtZSBvciBsaW5lIGNvbnRlbnRzIG1hdGNoLlxyXG4gIGFwcGx5R3JlcChyZWdleDogUmVnRXhwLCBpbnZlcnQ6IGJvb2xlYW4pOiA/RmlsZVJlc3VsdHMge1xyXG4gICAgY29uc3Qge3BhdGh9ID0gdGhpcztcclxuICAgIGlmIChpbnZlcnQgJiYgcmVnZXguZXhlYyhwYXRoKSAhPSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZ3JvdXBzID0gdGhpcy5maWx0ZXJHcm91cHMocmVnZXgsIGludmVydCk7XHJcbiAgICBpZiAoZ3JvdXBzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICBjb25zdCBmaWxlTWF0Y2ggPSByZWdleC5leGVjKHBhdGgpO1xyXG4gICAgICBpZiAoKGZpbGVNYXRjaCA9PSBudWxsKSAhPT0gaW52ZXJ0KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGZpbGVNYXRjaCAhPSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBGaWxlUmVzdWx0cyhwYXRoLCBncm91cHMsIFtcclxuICAgICAgICAgIGZpbGVNYXRjaC5pbmRleCxcclxuICAgICAgICAgIGZpbGVNYXRjaC5pbmRleCArIGZpbGVNYXRjaFswXS5sZW5ndGgsXHJcbiAgICAgICAgXSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBuZXcgRmlsZVJlc3VsdHMocGF0aCwgZ3JvdXBzKTtcclxuICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0ZpbGVSZXN1bHRzLmpzIl0sIm5hbWVzIjpbIkZpbGVSZXN1bHRzIiwiY29uc3RydWN0b3IiLCJwYXRoIiwiZ3JvdXBzIiwicGF0aE1hdGNoIiwiZmlsdGVyR3JvdXBzIiwicmVnZXgiLCJpbnZlcnQiLCJmaWx0ZXJlZCIsImZvckVhY2giLCJncm91cCIsImxpbmVzIiwibWF0Y2hlcyIsInN0YXJ0TGluZSIsImN1ck1hdGNoIiwiaSIsImxlbmd0aCIsImxpbmUiLCJsaW5lTnVtIiwicmVnZXhNYXRjaCIsImV4ZWMiLCJtYXRjaGVkIiwic3RhcnQiLCJyb3ciLCJwdXNoIiwiZmlsdGVyTWF0Y2giLCJSYW5nZSIsImluZGV4IiwiaiIsImNvbXBhcmUiLCJzcGxpY2UiLCJhcHBseUdyZXAiLCJmaWxlTWF0Y2giXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFaQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBVU8sTUFBTUEsV0FBTixDQUFrQjtBQUt2QkMsRUFBQUEsV0FBVyxDQUNUQyxJQURTLEVBRVRDLE1BRlMsRUFHVEMsU0FIUyxFQUlUO0FBQUEsU0FSRkYsSUFRRTtBQUFBLFNBUEZDLE1BT0U7QUFBQSxTQU5GQyxTQU1FO0FBQ0EsU0FBS0YsSUFBTCxHQUFZQSxJQUFaO0FBQ0EsU0FBS0MsTUFBTCxHQUFjQSxNQUFkO0FBQ0EsU0FBS0MsU0FBTCxHQUFpQkEsU0FBakI7QUFDRCxHQWJzQixDQWV2QjtBQUNBO0FBQ0E7OztBQUNBQyxFQUFBQSxZQUFZLENBQUNDLEtBQUQsRUFBZ0JDLE1BQWhCLEVBQW1EO0FBQzdELFVBQU1DLFFBQVEsR0FBRyxFQUFqQjtBQUNBLFNBQUtMLE1BQUwsQ0FBWU0sT0FBWixDQUFvQkMsS0FBSyxJQUFJO0FBQzNCLFVBQUlDLEtBQUssR0FBRyxFQUFaO0FBQ0EsVUFBSUMsT0FBTyxHQUFHLEVBQWQ7QUFDQSxVQUFJQyxT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QUN0RCxVQUFNO0FBQUNMLE1BQUFBO0FBQUQsUUFBUyxJQUFmOztBQUNBLFFBQUlLLE1BQU0sSUFBSUQsS0FBSyxDQUFDYyxJQUFOLENBQVdsQixJQUFYLEtBQW9CLElBQWxDLEVBQXdDO0FBQ3RDLGFBQU8sSUFBUDtBQUNEOztBQUNELFVBQU1DLE1BQU0sR0FBRyxLQUFLRSxZQUFMLENBQWtCQyxLQUFsQixFQUF5QkMsTUFBekIsQ0FBZjs7QUFDQSxRQUFJSixNQUFNLENBQUNhLE1BQVAsS0FBa0IsQ0FBdEIsRUFBeUI7QUFDdkIsWUFBTWdCLFNBQVMsR0FBRzFCLEtBQUssQ0FBQ2MsSUFBTixDQUFXbEIsSUFBWCxDQUFsQjs7QUFDQSxVQUFLOEIsU0FBUyxJQUFJLElBQWQsS0FBd0J6QixNQUE1QixFQUFvQztBQUNsQyxlQUFPLElBQVA7QUFDRDs7QUFDRCxVQUFJeUIsU0FBUyxJQUFJLElBQWpCLEVBQXVCO0FBQ3JCLGVBQU8sSUFBSWhDLFdBQUosQ0FBZ0JFLElBQWhCLEVBQXNCQyxNQUF0QixFQUE4QixDQUNuQzZCLFNBQVMsQ0FBQ0wsS0FEeUIsRUFFbkNLLFNBQVMsQ0FBQ0wsS0FBVixHQUFrQkssU0FBUyxDQUFDLENBQUQsQ0FBVCxDQUFhaEIsTUFGSSxDQUE5QixDQUFQO0FBSUQ7QUFDRjs7QUFDRCxXQUFPLElBQUloQixXQUFKLENBQWdCRSxJQUFoQixFQUFzQkMsTUFBdEIsQ0FBUDtBQUNEOztBQW5Hc0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge1JhbmdlfSBmcm9tICdhdG9tJztcclxuXHJcbmV4cG9ydCB0eXBlIExpbmVHcm91cCA9IHtcclxuICBzdGFydExpbmU6IG51bWJlcixcclxuICBsaW5lczogQXJyYXk8c3RyaW5nPixcclxuICBtYXRjaGVzOiBBcnJheTxhdG9tJFJhbmdlPixcclxufTtcclxuXHJcbmV4cG9ydCBjbGFzcyBGaWxlUmVzdWx0cyB7XHJcbiAgcGF0aDogc3RyaW5nO1xyXG4gIGdyb3VwczogQXJyYXk8TGluZUdyb3VwPjtcclxuICBwYXRoTWF0Y2g6ID9bbnVtYmVyLCBudW1iZXJdO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHBhdGg6IHN0cmluZyxcclxuICAgIGdyb3VwczogQXJyYXk8TGluZUdyb3VwPixcclxuICAgIHBhdGhNYXRjaD86IFtudW1iZXIsIG51bWJlcl0sXHJcbiAgKSB7XHJcbiAgICB0aGlzLnBhdGggPSBwYXRoO1xyXG4gICAgdGhpcy5ncm91cHMgPSBncm91cHM7XHJcbiAgICB0aGlzLnBhdGhNYXRjaCA9IHBhdGhNYXRjaDtcclxuICB9XHJcblxyXG4gIC8vIEFwcGx5IGEgZ3JlcCBmaWx0ZXIgdG8gYWxsIGxpbmUgZ3JvdXBzLCBzcGxpdHRpbmcgaW50byBuZXcgZ3JvdXBzIGFzIG5lY2Vzc2FyeS5cclxuICAvLyBQYXNzIGBpbnZlcnQgPSB0cnVlYCB0byBpbnZlcnQgdGhlIGdyZXAgZmlsdGVyLlxyXG4gIC8vIFdoZW4gaW52ZXJ0IGlzIGZhbHNlLCByZWdleCBtYXRjaCByYW5nZXMgd2lsbCBiZSBhZGRlZCB0byBlYWNoIGdyb3VwJ3MgbGlzdCBvZiBtYXRjaGVzLlxyXG4gIGZpbHRlckdyb3VwcyhyZWdleDogUmVnRXhwLCBpbnZlcnQ6IGJvb2xlYW4pOiBBcnJheTxMaW5lR3JvdXA+IHtcclxuICAgIGNvbnN0IGZpbHRlcmVkID0gW107XHJcbiAgICB0aGlzLmdyb3Vwcy5mb3JFYWNoKGdyb3VwID0+IHtcclxuICAgICAgbGV0IGxpbmVzID0gW107XHJcbiAgICAgIGxldCBtYXRjaGVzID0gW107XHJcbiAgICAgIGxldCBzdGFydExpbmUgPSAtMTtcclxuICAgICAgbGV0IGN1ck1hdGNoID0gMDtcclxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBncm91cC5saW5lcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICAgIGNvbnN0IGxpbmUgPSBncm91cC5saW5lc1tpXTtcclxuICAgICAgICBjb25zdCBsaW5lTnVtID0gZ3JvdXAuc3RhcnRMaW5lICsgaSAtIDE7XHJcbiAgICAgICAgLy8gJEZsb3dGaXhNZSAoPj0gdjAuNzUuMClcclxuICAgICAgICBjb25zdCByZWdleE1hdGNoOiBSZWdFeHAkbWF0Y2hSZXN1bHQgPSByZWdleC5leGVjKGxpbmUpO1xyXG4gICAgICAgIGNvbnN0IG1hdGNoZWQgPSAocmVnZXhNYXRjaCA9PSBudWxsKSA9PT0gaW52ZXJ0O1xyXG4gICAgICAgIC8vIEtlZXAgYWxsIHRoZSBleGlzdGluZyBtYXRjaCByYW5nZXMgb25seSBpZiB0aGUgcmVnZXggbWF0Y2hlZC5cclxuICAgICAgICB3aGlsZSAoXHJcbiAgICAgICAgICBjdXJNYXRjaCA8IGdyb3VwLm1hdGNoZXMubGVuZ3RoICYmXHJcbiAgICAgICAgICBncm91cC5tYXRjaGVzW2N1ck1hdGNoXS5zdGFydC5yb3cgPT09IGxpbmVOdW1cclxuICAgICAgICApIHtcclxuICAgICAgICAgIGlmIChtYXRjaGVkKSB7XHJcbiAgICAgICAgICAgIG1hdGNoZXMucHVzaChncm91cC5tYXRjaGVzW2N1ck1hdGNoXSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBjdXJNYXRjaCsrO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoIW1hdGNoZWQpIHtcclxuICAgICAgICAgIC8vIEEgbm9uLW1hdGNoIG1lYW5zIHRoYXQgd2Ugc2hvdWxkIHNwbGl0IGludG8gYSBuZXcgZ3JvdXAsIGlmIG5lY2Vzc2FyeS5cclxuICAgICAgICAgIGlmIChsaW5lcy5sZW5ndGggIT09IDApIHtcclxuICAgICAgICAgICAgZmlsdGVyZWQucHVzaCh7c3RhcnRMaW5lLCBsaW5lcywgbWF0Y2hlc30pO1xyXG4gICAgICAgICAgICBsaW5lcyA9IFtdO1xyXG4gICAgICAgICAgICBtYXRjaGVzID0gW107XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlmIChsaW5lcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgc3RhcnRMaW5lID0gbGluZU51bSArIDE7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBsaW5lcy5wdXNoKGxpbmUpO1xyXG4gICAgICAgICAgLy8gRm9yIG5vbi1pbnZlcnQgbWF0Y2hlcywgYWRkaXRpb25hbGx5IGhpZ2hsaWdodCB0aGUgZmlyc3QgcmVnZXggbWF0Y2guXHJcbiAgICAgICAgICBpZiAoIWludmVydCkge1xyXG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJNYXRjaCA9IG5ldyBSYW5nZShcclxuICAgICAgICAgICAgICBbbGluZU51bSwgcmVnZXhNYXRjaC5pbmRleF0sXHJcbiAgICAgICAgICAgICAgW2xpbmVOdW0sIHJlZ2V4TWF0Y2guaW5kZXggKyByZWdleE1hdGNoWzBdLmxlbmd0aF0sXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIC8vIEtlZXAgYG1hdGNoZXNgIHNvcnRlZCB2aWEgaW5zZXJ0aW9uIHNvcnQuXHJcbiAgICAgICAgICAgIC8vIFRoaXMgZG9lcyBub3QgY2F1c2UgcXVhZHJhdGljIHJ1bnRpbWUsIHNpbmNlIHRoaXMgd2lsbCBvbmx5IHNjYW4gdGhlIHByZXZpb3VzIGxpbmUuXHJcbiAgICAgICAgICAgIGZvciAobGV0IGogPSBtYXRjaGVzLmxlbmd0aDsgaiA+PSAwOyBqLS0pIHtcclxuICAgICAgICAgICAgICBpZiAoaiA9PT0gMCB8fCBtYXRjaGVzW2ogLSAxXS5jb21wYXJlKGZpbHRlck1hdGNoKSA8PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBtYXRjaGVzLnNwbGljZShqLCBqLCBmaWx0ZXJNYXRjaCk7XHJcbiAgICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgLy8gRmluaXNoIG9mZiB0aGUgY3VycmVudCBncm91cC5cclxuICAgICAgaWYgKGxpbmVzLmxlbmd0aCAhPT0gMCkge1xyXG4gICAgICAgIGZpbHRlcmVkLnB1c2goe3N0YXJ0TGluZSwgbGluZXMsIG1hdGNoZXN9KTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gZmlsdGVyZWQ7XHJcbiAgfVxyXG5cclxuICAvLyBBcHBsaWVzIHRoZSBncmVwIGZpbHRlciB0byBib3RoIGZpbGVuYW1lIGFuZCBsaW5lIGdyb3Vwcy5cclxuICAvLyBSZXR1cm5zIG51bGwgaWYgbmVpdGhlciBmaWxlbmFtZSBvciBsaW5lIGNvbnRlbnRzIG1hdGNoLlxyXG4gIGFwcGx5R3JlcChyZWdleDogUmVnRXhwLCBpbnZlcnQ6IGJvb2xlYW4pOiA/RmlsZVJlc3VsdHMge1xyXG4gICAgY29uc3Qge3BhdGh9ID0gdGhpcztcclxuICAgIGlmIChpbnZlcnQgJiYgcmVnZXguZXhlYyhwYXRoKSAhPSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZ3JvdXBzID0gdGhpcy5maWx0ZXJHcm91cHMocmVnZXgsIGludmVydCk7XHJcbiAgICBpZiAoZ3JvdXBzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICBjb25zdCBmaWxlTWF0Y2ggPSByZWdleC5leGVjKHBhdGgpO1xyXG4gICAgICBpZiAoKGZpbGVNYXRjaCA9PSBudWxsKSAhPT0gaW52ZXJ0KSB7XHJcbiAgICAgICAgcmV0dXJuIG51bGw7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGZpbGVNYXRjaCAhPSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBGaWxlUmVzdWx0cyhwYXRoLCBncm91cHMsIFtcclxuICAgICAgICAgIGZpbGVNYXRjaC5pbmRleCxcclxuICAgICAgICAgIGZpbGVNYXRjaC5pbmRleCArIGZpbGVNYXRjaFswXS5sZW5ndGgsXHJcbiAgICAgICAgXSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBuZXcgRmlsZVJlc3VsdHMocGF0aCwgZ3JvdXBzKTtcclxuICB9XHJcbn1cclxuIl19 |
@@ -28,2 +28,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2dldERpc3BsYXlOYW1lLmpzIl0sIm5hbWVzIjpbImdldERpc3BsYXlOYW1lIiwiZnVuY3Rpb25PckNsYXNzIiwiZGlzcGxheU5hbWUiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7O0FBWWUsU0FBU0EsY0FBVCxDQUNiQyxlQURhLEVBRUw7QUFDUixNQUNFLE9BQU9BLGVBQWUsQ0FBQ0MsV0FBdkIsS0FBdUMsUUFBdkMsSUFDQUQsZUFBZSxDQUFDQyxXQUFoQixLQUFnQyxFQUZsQyxFQUdFO0FBQ0EsV0FBT0QsZUFBZSxDQUFDQyxXQUF2QjtBQUNELEdBTEQsTUFLTyxJQUNMLE9BQU9ELGVBQWUsQ0FBQ0UsSUFBdkIsS0FBZ0MsUUFBaEMsSUFDQUYsZUFBZSxDQUFDRSxJQUFoQixLQUF5QixFQUZwQixFQUdMO0FBQ0EsV0FBT0YsZUFBZSxDQUFDRSxJQUF2QjtBQUNEOztBQUVELFNBQU8sU0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZ2V0RGlzcGxheU5hbWUoXHJcbiAgZnVuY3Rpb25PckNsYXNzOiBGdW5jdGlvbiB8IENsYXNzPCo+LFxyXG4pOiBzdHJpbmcge1xyXG4gIGlmIChcclxuICAgIHR5cGVvZiBmdW5jdGlvbk9yQ2xhc3MuZGlzcGxheU5hbWUgPT09ICdzdHJpbmcnICYmXHJcbiAgICBmdW5jdGlvbk9yQ2xhc3MuZGlzcGxheU5hbWUgIT09ICcnXHJcbiAgKSB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb25PckNsYXNzLmRpc3BsYXlOYW1lO1xyXG4gIH0gZWxzZSBpZiAoXHJcbiAgICB0eXBlb2YgZnVuY3Rpb25PckNsYXNzLm5hbWUgPT09ICdzdHJpbmcnICYmXHJcbiAgICBmdW5jdGlvbk9yQ2xhc3MubmFtZSAhPT0gJydcclxuICApIHtcclxuICAgIHJldHVybiBmdW5jdGlvbk9yQ2xhc3MubmFtZTtcclxuICB9XHJcblxyXG4gIHJldHVybiAnVW5rbm93bic7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2dldERpc3BsYXlOYW1lLmpzIl0sIm5hbWVzIjpbImdldERpc3BsYXlOYW1lIiwiZnVuY3Rpb25PckNsYXNzIiwiZGlzcGxheU5hbWUiLCJuYW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVlLFNBQVNBLGNBQVQsQ0FDYkMsZUFEYSxFQUVMO0FBQ1IsTUFDRSxPQUFPQSxlQUFlLENBQUNDLFdBQXZCLEtBQXVDLFFBQXZDLElBQ0FELGVBQWUsQ0FBQ0MsV0FBaEIsS0FBZ0MsRUFGbEMsRUFHRTtBQUNBLFdBQU9ELGVBQWUsQ0FBQ0MsV0FBdkI7QUFDRCxHQUxELE1BS08sSUFDTCxPQUFPRCxlQUFlLENBQUNFLElBQXZCLEtBQWdDLFFBQWhDLElBQ0FGLGVBQWUsQ0FBQ0UsSUFBaEIsS0FBeUIsRUFGcEIsRUFHTDtBQUNBLFdBQU9GLGVBQWUsQ0FBQ0UsSUFBdkI7QUFDRDs7QUFFRCxTQUFPLFNBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGdldERpc3BsYXlOYW1lKFxyXG4gIGZ1bmN0aW9uT3JDbGFzczogRnVuY3Rpb24gfCBDbGFzczwqPixcclxuKTogc3RyaW5nIHtcclxuICBpZiAoXHJcbiAgICB0eXBlb2YgZnVuY3Rpb25PckNsYXNzLmRpc3BsYXlOYW1lID09PSAnc3RyaW5nJyAmJlxyXG4gICAgZnVuY3Rpb25PckNsYXNzLmRpc3BsYXlOYW1lICE9PSAnJ1xyXG4gICkge1xyXG4gICAgcmV0dXJuIGZ1bmN0aW9uT3JDbGFzcy5kaXNwbGF5TmFtZTtcclxuICB9IGVsc2UgaWYgKFxyXG4gICAgdHlwZW9mIGZ1bmN0aW9uT3JDbGFzcy5uYW1lID09PSAnc3RyaW5nJyAmJlxyXG4gICAgZnVuY3Rpb25PckNsYXNzLm5hbWUgIT09ICcnXHJcbiAgKSB7XHJcbiAgICByZXR1cm4gZnVuY3Rpb25PckNsYXNzLm5hbWU7XHJcbiAgfVxyXG5cclxuICByZXR1cm4gJ1Vua25vd24nO1xyXG59XHJcbiJdfQ== |
@@ -99,2 +99,2 @@ "use strict"; | ||
exports.default = Hasher; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0hhc2hlci5qcyJdLCJuYW1lcyI6WyJIYXNoZXIiLCJjb25zdHJ1Y3RvciIsIl9oYXNoZXMiLCJfb2JqZWN0Q291bnQiLCJXZWFrTWFwIiwiZ2V0SGFzaCIsIml0ZW0iLCJ0eXBlIiwiaGFzaCIsImdldCIsInNldCIsIk51bWJlciIsIk1BWF9TQUZFX0lOVEVHRVIiLCJNSU5fU0FGRV9JTlRFR0VSIiwidG9TdHJpbmciLCJFcnJvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7Ozs7Ozs7Ozs7QUFZQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtQkE7Ozs7QUFJZSxNQUFNQSxNQUFOLENBQWdCO0FBSTdCQyxFQUFBQSxXQUFXLEdBQUc7QUFBQSxTQUhkQyxPQUdjO0FBQUEsU0FGZEMsWUFFYzs7QUFDWjs7OztBQUlBLFNBQUtELE9BQUwsR0FBZSxJQUFJRSxPQUFKLEVBQWY7QUFDQSxTQUFLRCxZQUFMLEdBQW9CLENBQXBCO0FBQ0Q7O0FBRURFLEVBQUFBLE9BQU8sQ0FBQ0MsSUFBRCxFQUEyQjtBQUNoQztBQUNBLFFBQUlBLElBQUksS0FBSyxJQUFiLEVBQW1CO0FBQ2pCLGFBQU8sTUFBUDtBQUNEOztBQUNELFVBQU1DLElBQUksR0FBRyxPQUFPRCxJQUFwQjs7QUFDQSxZQUFRLE9BQU9BLElBQWY7QUFDRSxXQUFLLFFBQUw7QUFBZTtBQUNiLGNBQUlFLElBQUksR0FBRyxLQUFLTixPQUFMLENBQWFPLEdBQWIsQ0FBaUJILElBQWpCLENBQVg7O0FBQ0EsY0FBSUUsSUFBSSxJQUFJLElBQVosRUFBa0I7QUFDaEJBLFlBQUFBLElBQUksR0FBSSxHQUFFRCxJQUFLLElBQUcsS0FBS0osWUFBYSxFQUFwQzs7QUFDQSxpQkFBS0QsT0FBTCxDQUFhUSxHQUFiLENBQWlCSixJQUFqQixFQUF1QkUsSUFBdkI7O0FBQ0EsaUJBQUtMLFlBQUwsR0FDRSxLQUFLQSxZQUFMLEdBQW9CLENBQXBCLEtBQTBCUSxNQUFNLENBQUNDLGdCQUFqQyxHQUNJRCxNQUFNLENBQUNFLGdCQURYLEdBRUksS0FBS1YsWUFBTCxHQUFvQixDQUgxQjtBQUlEOztBQUNELGlCQUFPSyxJQUFQO0FBQ0Q7O0FBQ0QsV0FBSyxXQUFMO0FBQ0UsZUFBTyxXQUFQOztBQUNGLFdBQUssUUFBTDtBQUNBLFdBQUssU0FBTDtBQUNFLGVBQVEsR0FBRUQsSUFBSyxJQUFHRCxJQUFJLENBQUNRLFFBQUwsRUFBZ0IsRUFBbEM7O0FBQ0YsV0FBSyxRQUFMO0FBQ0UsZUFBT1IsSUFBUDs7QUFDRjtBQUNFLGNBQU0sSUFBSVMsS0FBSixDQUFVLG1CQUFWLENBQU47QUFyQko7QUF1QkQ7O0FBMUM0QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vKipcclxuICogR2V0IGEgaGFzaCBmb3IgdGhlIHByb3ZpZGVyIG9iamVjdC4gSGFzaGVzIGFyZSB1bmlxdWUgcGVyLWhhc2hlciwgc28gaWYgeW91IGhhdmUgdHdvIGRpZmZlcmVudFxyXG4gKiBoYXNoZXJzLCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGV5IHdpbGwgZ2l2ZSB0aGUgc2FtZSBoYXNoIGZvciB0aGUgc2FtZSBvYmplY3QuXHJcbiAqXHJcbiAqIE9uZSB1c2UgY2FzZSBmb3IgdGhpcyBpcyB3aXRoIGxpc3RzIG9mIFJlYWN0IGVsZW1lbnRzLiBKdXN0IGNyZWF0ZSBhIGhhc2hlciBhbmQgdXNlIHRoZSBoYXNoIGFzXHJcbiAqIGEga2V5OlxyXG4gKlxyXG4gKiAgICBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XHJcbiAqICAgICAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICogICAgICAgIHN1cGVyKHByb3BzKTtcclxuICogICAgICAgIHRoaXMuX2hhc2hlciA9IG5ldyBIYXNoZXIoKTtcclxuICogICAgICB9XHJcbiAqICAgICAgcmVuZGVyKCkge1xyXG4gKiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMuaXRlbXMubWFwKGl0ZW0gPT4gKFxyXG4gKiAgICAgICAgICA8SXRlbVZpZXcga2V5PXt0aGlzLl9oYXNoZXIuZ2V0SGFzaChpdGVtKX0gbW9kZWw9e2l0ZW19IC8+XHJcbiAqICAgICAgICApKTtcclxuICogICAgICB9XHJcbiAqICAgIH1cclxuICovXHJcbi8qICRGbG93Rml4TWUoPj0wLjg2LjApIFRoaXNcclxuICogY29tbWVudCBzdXBwcmVzc2VzIGFuIGVycm9yIGZvdW5kIHdoZW4gRmxvdyB2MC44NiB3YXNcclxuICogZGVwbG95ZWQuIFRvIHNlZSB0aGUgZXJyb3IsIGRlbGV0ZSB0aGlzIGNvbW1lbnQgYW5kXHJcbiAqIHJ1biBGbG93LiAqL1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBIYXNoZXI8Sz4ge1xyXG4gIF9oYXNoZXM6IFdlYWtNYXA8Sywgc3RyaW5nPjtcclxuICBfb2JqZWN0Q291bnQ6IG51bWJlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAvKiAkRmxvd0ZpeE1lKD49MC44Ni4wKSBUaGlzXHJcbiAgICAgKiBjb21tZW50IHN1cHByZXNzZXMgYW4gZXJyb3IgZm91bmQgd2hlbiBGbG93IHYwLjg2IHdhc1xyXG4gICAgICogZGVwbG95ZWQuIFRvIHNlZSB0aGUgZXJyb3IsIGRlbGV0ZSB0aGlzIGNvbW1lbnQgYW5kXHJcbiAgICAgKiBydW4gRmxvdy4gKi9cclxuICAgIHRoaXMuX2hhc2hlcyA9IG5ldyBXZWFrTWFwKCk7XHJcbiAgICB0aGlzLl9vYmplY3RDb3VudCA9IDA7XHJcbiAgfVxyXG5cclxuICBnZXRIYXNoKGl0ZW06IEspOiBzdHJpbmcgfCBudW1iZXIge1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcVxyXG4gICAgaWYgKGl0ZW0gPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuICdudWxsJztcclxuICAgIH1cclxuICAgIGNvbnN0IHR5cGUgPSB0eXBlb2YgaXRlbTtcclxuICAgIHN3aXRjaCAodHlwZW9mIGl0ZW0pIHtcclxuICAgICAgY2FzZSAnb2JqZWN0Jzoge1xyXG4gICAgICAgIGxldCBoYXNoID0gdGhpcy5faGFzaGVzLmdldChpdGVtKTtcclxuICAgICAgICBpZiAoaGFzaCA9PSBudWxsKSB7XHJcbiAgICAgICAgICBoYXNoID0gYCR7dHlwZX06JHt0aGlzLl9vYmplY3RDb3VudH1gO1xyXG4gICAgICAgICAgdGhpcy5faGFzaGVzLnNldChpdGVtLCBoYXNoKTtcclxuICAgICAgICAgIHRoaXMuX29iamVjdENvdW50ID1cclxuICAgICAgICAgICAgdGhpcy5fb2JqZWN0Q291bnQgKyAxID09PSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxyXG4gICAgICAgICAgICAgID8gTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJcclxuICAgICAgICAgICAgICA6IHRoaXMuX29iamVjdENvdW50ICsgMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGhhc2g7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSAndW5kZWZpbmVkJzpcclxuICAgICAgICByZXR1cm4gJ3VuZGVmaW5lZCc7XHJcbiAgICAgIGNhc2UgJ3N0cmluZyc6XHJcbiAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxyXG4gICAgICAgIHJldHVybiBgJHt0eXBlfToke2l0ZW0udG9TdHJpbmcoKX1gO1xyXG4gICAgICBjYXNlICdudW1iZXInOlxyXG4gICAgICAgIHJldHVybiBpdGVtO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5oYXNoYWJsZSBvYmplY3QnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL0hhc2hlci5qcyJdLCJuYW1lcyI6WyJIYXNoZXIiLCJjb25zdHJ1Y3RvciIsIl9oYXNoZXMiLCJfb2JqZWN0Q291bnQiLCJXZWFrTWFwIiwiZ2V0SGFzaCIsIml0ZW0iLCJ0eXBlIiwiaGFzaCIsImdldCIsInNldCIsIk51bWJlciIsIk1BWF9TQUZFX0lOVEVHRVIiLCJNSU5fU0FGRV9JTlRFR0VSIiwidG9TdHJpbmciLCJFcnJvciJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDZSxNQUFNQSxNQUFOLENBQWdCO0FBSTdCQyxFQUFBQSxXQUFXLEdBQUc7QUFBQSxTQUhkQyxPQUdjO0FBQUEsU0FGZEMsWUFFYzs7QUFDWjtBQUNKO0FBQ0E7QUFDQTtBQUNJLFNBQUtELE9BQUwsR0FBZSxJQUFJRSxPQUFKLEVBQWY7QUFDQSxTQUFLRCxZQUFMLEdBQW9CLENBQXBCO0FBQ0Q7O0FBRURFLEVBQUFBLE9BQU8sQ0FBQ0MsSUFBRCxFQUEyQjtBQUNoQztBQUNBLFFBQUlBLElBQUksS0FBSyxJQUFiLEVBQW1CO0FBQ2pCLGFBQU8sTUFBUDtBQUNEOztBQUNELFVBQU1DLElBQUksR0FBRyxPQUFPRCxJQUFwQjs7QUFDQSxZQUFRLE9BQU9BLElBQWY7QUFDRSxXQUFLLFFBQUw7QUFBZTtBQUNiLGNBQUlFLElBQUksR0FBRyxLQUFLTixPQUFMLENBQWFPLEdBQWIsQ0FBaUJILElBQWpCLENBQVg7O0FBQ0EsY0FBSUUsSUFBSSxJQUFJLElBQVosRUFBa0I7QUFDaEJBLFlBQUFBLElBQUksR0FBSSxHQUFFRCxJQUFLLElBQUcsS0FBS0osWUFBYSxFQUFwQzs7QUFDQSxpQkFBS0QsT0FBTCxDQUFhUSxHQUFiLENBQWlCSixJQUFqQixFQUF1QkUsSUFBdkI7O0FBQ0EsaUJBQUtMLFlBQUwsR0FDRSxLQUFLQSxZQUFMLEdBQW9CLENBQXBCLEtBQTBCUSxNQUFNLENBQUNDLGdCQUFqQyxHQUNJRCxNQUFNLENBQUNFLGdCQURYLEdBRUksS0FBS1YsWUFBTCxHQUFvQixDQUgxQjtBQUlEOztBQUNELGlCQUFPSyxJQUFQO0FBQ0Q7O0FBQ0QsV0FBSyxXQUFMO0FBQ0UsZUFBTyxXQUFQOztBQUNGLFdBQUssUUFBTDtBQUNBLFdBQUssU0FBTDtBQUNFLGVBQVEsR0FBRUQsSUFBSyxJQUFHRCxJQUFJLENBQUNRLFFBQUwsRUFBZ0IsRUFBbEM7O0FBQ0YsV0FBSyxRQUFMO0FBQ0UsZUFBT1IsSUFBUDs7QUFDRjtBQUNFLGNBQU0sSUFBSVMsS0FBSixDQUFVLG1CQUFWLENBQU47QUFyQko7QUF1QkQ7O0FBMUM0QiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vKipcclxuICogR2V0IGEgaGFzaCBmb3IgdGhlIHByb3ZpZGVyIG9iamVjdC4gSGFzaGVzIGFyZSB1bmlxdWUgcGVyLWhhc2hlciwgc28gaWYgeW91IGhhdmUgdHdvIGRpZmZlcmVudFxyXG4gKiBoYXNoZXJzLCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCB0aGV5IHdpbGwgZ2l2ZSB0aGUgc2FtZSBoYXNoIGZvciB0aGUgc2FtZSBvYmplY3QuXHJcbiAqXHJcbiAqIE9uZSB1c2UgY2FzZSBmb3IgdGhpcyBpcyB3aXRoIGxpc3RzIG9mIFJlYWN0IGVsZW1lbnRzLiBKdXN0IGNyZWF0ZSBhIGhhc2hlciBhbmQgdXNlIHRoZSBoYXNoIGFzXHJcbiAqIGEga2V5OlxyXG4gKlxyXG4gKiAgICBjbGFzcyBNeUNvbXBvbmVudCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XHJcbiAqICAgICAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICogICAgICAgIHN1cGVyKHByb3BzKTtcclxuICogICAgICAgIHRoaXMuX2hhc2hlciA9IG5ldyBIYXNoZXIoKTtcclxuICogICAgICB9XHJcbiAqICAgICAgcmVuZGVyKCkge1xyXG4gKiAgICAgICAgcmV0dXJuIHRoaXMucHJvcHMuaXRlbXMubWFwKGl0ZW0gPT4gKFxyXG4gKiAgICAgICAgICA8SXRlbVZpZXcga2V5PXt0aGlzLl9oYXNoZXIuZ2V0SGFzaChpdGVtKX0gbW9kZWw9e2l0ZW19IC8+XHJcbiAqICAgICAgICApKTtcclxuICogICAgICB9XHJcbiAqICAgIH1cclxuICovXHJcbi8qICRGbG93Rml4TWUoPj0wLjg2LjApIFRoaXNcclxuICogY29tbWVudCBzdXBwcmVzc2VzIGFuIGVycm9yIGZvdW5kIHdoZW4gRmxvdyB2MC44NiB3YXNcclxuICogZGVwbG95ZWQuIFRvIHNlZSB0aGUgZXJyb3IsIGRlbGV0ZSB0aGlzIGNvbW1lbnQgYW5kXHJcbiAqIHJ1biBGbG93LiAqL1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBIYXNoZXI8Sz4ge1xyXG4gIF9oYXNoZXM6IFdlYWtNYXA8Sywgc3RyaW5nPjtcclxuICBfb2JqZWN0Q291bnQ6IG51bWJlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAvKiAkRmxvd0ZpeE1lKD49MC44Ni4wKSBUaGlzXHJcbiAgICAgKiBjb21tZW50IHN1cHByZXNzZXMgYW4gZXJyb3IgZm91bmQgd2hlbiBGbG93IHYwLjg2IHdhc1xyXG4gICAgICogZGVwbG95ZWQuIFRvIHNlZSB0aGUgZXJyb3IsIGRlbGV0ZSB0aGlzIGNvbW1lbnQgYW5kXHJcbiAgICAgKiBydW4gRmxvdy4gKi9cclxuICAgIHRoaXMuX2hhc2hlcyA9IG5ldyBXZWFrTWFwKCk7XHJcbiAgICB0aGlzLl9vYmplY3RDb3VudCA9IDA7XHJcbiAgfVxyXG5cclxuICBnZXRIYXNoKGl0ZW06IEspOiBzdHJpbmcgfCBudW1iZXIge1xyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGVxZXFlcVxyXG4gICAgaWYgKGl0ZW0gPT09IG51bGwpIHtcclxuICAgICAgcmV0dXJuICdudWxsJztcclxuICAgIH1cclxuICAgIGNvbnN0IHR5cGUgPSB0eXBlb2YgaXRlbTtcclxuICAgIHN3aXRjaCAodHlwZW9mIGl0ZW0pIHtcclxuICAgICAgY2FzZSAnb2JqZWN0Jzoge1xyXG4gICAgICAgIGxldCBoYXNoID0gdGhpcy5faGFzaGVzLmdldChpdGVtKTtcclxuICAgICAgICBpZiAoaGFzaCA9PSBudWxsKSB7XHJcbiAgICAgICAgICBoYXNoID0gYCR7dHlwZX06JHt0aGlzLl9vYmplY3RDb3VudH1gO1xyXG4gICAgICAgICAgdGhpcy5faGFzaGVzLnNldChpdGVtLCBoYXNoKTtcclxuICAgICAgICAgIHRoaXMuX29iamVjdENvdW50ID1cclxuICAgICAgICAgICAgdGhpcy5fb2JqZWN0Q291bnQgKyAxID09PSBOdW1iZXIuTUFYX1NBRkVfSU5URUdFUlxyXG4gICAgICAgICAgICAgID8gTnVtYmVyLk1JTl9TQUZFX0lOVEVHRVJcclxuICAgICAgICAgICAgICA6IHRoaXMuX29iamVjdENvdW50ICsgMTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGhhc2g7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSAndW5kZWZpbmVkJzpcclxuICAgICAgICByZXR1cm4gJ3VuZGVmaW5lZCc7XHJcbiAgICAgIGNhc2UgJ3N0cmluZyc6XHJcbiAgICAgIGNhc2UgJ2Jvb2xlYW4nOlxyXG4gICAgICAgIHJldHVybiBgJHt0eXBlfToke2l0ZW0udG9TdHJpbmcoKX1gO1xyXG4gICAgICBjYXNlICdudW1iZXInOlxyXG4gICAgICAgIHJldHVybiBpdGVtO1xyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcignVW5oYXNoYWJsZSBvYmplY3QnKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19 |
@@ -165,2 +165,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2h1bWFuaXplS2V5c3Ryb2tlLmpzIl0sIm5hbWVzIjpbIk1BQ19NT0RJRklFUl9LRVlNQVAiLCJhbHQiLCJjbWQiLCJjdHJsIiwiZG93biIsImVudGVyIiwibGVmdCIsIm9wdGlvbiIsInJpZ2h0Iiwic2hpZnQiLCJ1cCIsIk5PTl9NQUNfTU9ESUZJRVJfS0VZTUFQIiwiU0hJRlRfS0VZTUFQIiwiXyIsIkZOX0tFWV9SRSIsImZsYXR0ZW4iLCJhcnIiLCJmbGF0dGVuZWQiLCJlbCIsIkFycmF5IiwiaXNBcnJheSIsImNvbmNhdCIsInB1c2giLCJjYXBpdGFsaXplIiwid29yZCIsImZpcnN0IiwicmVzdCIsInNsaWNlIiwidG9VcHBlckNhc2UiLCJodW1hbml6ZUtleSIsImtleSIsInBsYXRmb3JtIiwibW9kaWZpZXJLZXlNYXAiLCJsZW5ndGgiLCJ1cHBlcmNhc2UiLCJ0b0xvd2VyQ2FzZSIsInRlc3QiLCJodW1hbml6ZUtleXN0cm9rZSIsImtleXN0cm9rZSIsInBsYXRmb3JtXyIsInByb2Nlc3MiLCJzZXBhcmF0b3IiLCJrZXlzIiwic3BsaXRLZXlzdHJva2UiLCJrZXlzdHJva2VzIiwic3BsaXQiLCJodW1hbml6ZWRLZXlzdHJva2VzIiwiaSIsImN1cnJlbnRLZXlzdHJva2UiLCJpbmRleCIsImZyb20iLCJTZXQiLCJqb2luIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7Ozs7Ozs7Ozs7OztBQVlBOzs7QUFJQSxNQUFNQSxtQkFBbUIsR0FBRztBQUMxQkMsRUFBQUEsR0FBRyxFQUFFLFFBRHFCO0FBRTFCQyxFQUFBQSxHQUFHLEVBQUUsUUFGcUI7QUFHMUJDLEVBQUFBLElBQUksRUFBRSxRQUhvQjtBQUkxQkMsRUFBQUEsSUFBSSxFQUFFLFFBSm9CO0FBSzFCQyxFQUFBQSxLQUFLLEVBQUUsUUFMbUI7QUFNMUJDLEVBQUFBLElBQUksRUFBRSxRQU5vQjtBQU8xQkMsRUFBQUEsTUFBTSxFQUFFLFFB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QUFELENBQXBCOztBQUNBLFVBQUluQixHQUFHLEtBQUssRUFBUixJQUFjYSxjQUFjLENBQUNNLEtBQUssR0FBRyxDQUFULENBQWQsS0FBOEIsRUFBaEQsRUFBb0Q7QUFDbERuQixRQUFBQSxHQUFHLEdBQUcsR0FBTjtBQUNEOztBQUNELFVBQUlBLEdBQUosRUFBUztBQUNQWSxRQUFBQSxJQUFJLENBQUNwQixJQUFMLENBQVVPLFdBQVcsQ0FBQ0MsR0FBRCxFQUFNQyxRQUFOLENBQXJCO0FBQ0Q7QUFDRjs7QUFDRFcsSUFBQUEsSUFBSSxHQUFHdkIsS0FBSyxDQUFDK0IsSUFBTixDQUFXLElBQUlDLEdBQUosQ0FBUXBDLE9BQU8sQ0FBQzJCLElBQUQsQ0FBZixDQUFYLENBQVA7QUFDQUksSUFBQUEsbUJBQW1CLENBQUN4QixJQUFwQixDQUF5Qm9CLElBQUksQ0FBQ1UsSUFBTCxDQUFVWCxTQUFWLENBQXpCO0FBQ0Q7O0FBQ0QsU0FBT0ssbUJBQW1CLENBQUNNLElBQXBCLENBQXlCLEdBQXpCLENBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vKlxyXG4gKiBhZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2F0b20vdW5kZXJzY29yZS1wbHVzL2Jsb2IvbWFzdGVyL3NyYy91bmRlcnNjb3JlLXBsdXMuY29mZmVlXHJcbiAqL1xyXG5cclxuY29uc3QgTUFDX01PRElGSUVSX0tFWU1BUCA9IHtcclxuICBhbHQ6ICdcXHUyMzI1JyxcclxuICBjbWQ6ICdcXHUyMzE4JyxcclxuICBjdHJsOiAnXFx1MjMwMycsXHJcbiAgZG93bjogJ1xcdTIxOTMnLFxyXG4gIGVudGVyOiAnXFx1MjNjZScsXHJcbiAgbGVmdDogJ1xcdTIxOTAnLFxyXG4gIG9wdGlvbjogJ1xcdTIzMjUnLFxyXG4gIHJpZ2h0OiAnXFx1MjE5MicsXHJcbiAgc2hpZnQ6ICdcXHUyMWU3JyxcclxuICB1cDogJ1xcdTIxOTEnLFxyXG59O1xyXG5cclxuY29uc3QgTk9OX01BQ19NT0RJRklFUl9LRVlNQVAgPSB7XHJcbiAgYWx0OiAnQWx0JyxcclxuICBjbWQ6ICdDbWQnLFxyXG4gIGN0cmw6ICdDdHJsJyxcclxuICBkb3duOiAnRG93bicsXHJcbiAgZW50ZXI6ICdFbnRlcicsXHJcbiAgbGVmdDogJ0xlZnQnLFxyXG4gIG9wdGlvbjogJ0FsdCcsXHJcbiAgcmlnaHQ6ICdSaWdodCcsXHJcbiAgc2hpZnQ6ICdTaGlmdCcsXHJcbiAgdXA6ICdVcCcsXHJcbn07XHJcblxyXG4vLyBIdW1hbiBrZXkgY29tYm9zIHNob3VsZCBhbHdheXMgZXhwbGljaXRseSBzdGF0ZSB0aGUgc2hpZnQga2V5LiBUaGlzIG1hcCBpcyBhIGRpc2FtYmlndWF0b3IuXHJcbi8vICdzaGlmdC12ZXJzaW9uJzogJ25vLXNoaWZ0LXZlcnNpb24nXHJcbmNvbnN0IFNISUZUX0tFWU1BUCA9IHtcclxuICBfOiAnLScsXHJcbiAgJzonOiAnOycsXHJcbiAgJz8nOiAnLycsXHJcbiAgJ1wiJzogXCInXCIsXHJcbiAgJ3snOiAnWycsXHJcbiAgJ30nOiAnXScsXHJcbiAgJysnOiAnPScsXHJcbiAgJzwnOiAnLCcsXHJcbiAgJz4nOiAnLicsXHJcbiAgJ3wnOiAnXFxcXCcsXHJcbiAgJ34nOiAnYCcsXHJcbn07XHJcblxyXG5jb25zdCBGTl9LRVlfUkUgPSAvZlswLTldezEsMn0vO1xyXG5cclxuLy8gJEZsb3dJc3N1ZVxyXG5mdW5jdGlvbiBmbGF0dGVuPFQ+KGFycjogQXJyYXk8VCB8IEFycmF5PFQ+Pik6IEFycmF5PFQ+IHtcclxuICBsZXQgZmxhdHRlbmVkID0gW107XHJcbiAgZm9yIChjb25zdCBlbCBvZiBhcnIpIHtcclxuICAgIGlmIChBcnJheS5pc0FycmF5KGVsKSkge1xyXG4gICAgICBmbGF0dGVuZWQgPSBmbGF0dGVuZWQuY29uY2F0KGZsYXR0ZW4oZWwpKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGZsYXR0ZW5lZC5wdXNoKGVsKTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIGZsYXR0ZW5lZDtcclxufVxyXG5cclxuZnVuY3Rpb24gY2FwaXRhbGl6ZSh3b3JkOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIGNvbnN0IGZpcnN0ID0gd29yZFswXSB8fCAnJztcclxuICBjb25zdCByZXN0ID0gd29yZC5zbGljZSgxKTtcclxuICByZXR1cm4gZmlyc3QudG9VcHBlckNhc2UoKSArIHJlc3Q7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGh1bWFuaXplS2V5KGtleTogc3RyaW5nLCBwbGF0Zm9ybTogP3N0cmluZyk6IHN0cmluZyB8IEFycmF5PHN0cmluZz4ge1xyXG4gIGlmICgha2V5KSB7XHJcbiAgICByZXR1cm4ga2V5O1xyXG4gIH1cclxuICBjb25zdCBtb2RpZmllcktleU1hcCA9XHJcbiAgICBwbGF0Zm9ybSA9PT0gJ2RhcndpbicgPyBNQUNfTU9ESUZJRVJfS0VZTUFQIDogTk9OX01BQ19NT0RJRklFUl9LRVlNQVA7XHJcbiAgaWYgKG1vZGlmaWVyS2V5TWFwW2tleV0pIHtcclxuICAgIHJldHVybiBtb2RpZmllcktleU1hcFtrZXldO1xyXG4gIH1cclxuICBpZiAoa2V5Lmxlbmd0aCA9PT0gMSkge1xyXG4gICAgaWYgKFNISUZUX0tFWU1BUFtrZXldKSB7XHJcbiAgICAgIHJldHVybiBbbW9kaWZpZXJLZXlNYXAuc2hpZnQsIFNISUZUX0tFWU1BUFtrZXldXTtcclxuICAgIH1cclxuICAgIGNvbnN0IHVwcGVyY2FzZSA9IGtleS50b1VwcGVyQ2FzZSgpO1xyXG4gICAgaWYgKGtleSA9PT0gdXBwZXJjYXNlICYmIHVwcGVyY2FzZSAhPT0ga2V5LnRvTG93ZXJDYXNlKCkpIHtcclxuICAgICAgcmV0dXJuIFttb2RpZmllcktleU1hcC5zaGlmdCwgdXBwZXJjYXNlXTtcclxuICAgIH1cclxuICAgIHJldHVybiB1cHBlcmNhc2U7XHJcbiAgfVxyXG4gIGlmIChGTl9LRVlfUkUudGVzdChrZXkpKSB7XHJcbiAgICByZXR1cm4ga2V5LnRvVXBwZXJDYXNlKCk7XHJcbiAgfVxyXG4gIHJldHVybiBwbGF0Zm9ybSA9PT0gJ2RhcndpbicgPyBrZXkgOiBjYXBpdGFsaXplKGtleSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBIdW1hbml6ZSB0aGUga2V5c3Ryb2tlIGFjY29yZGluZyB0byBwbGF0Zm9ybSBjb252ZW50aW9ucy4gVGhpcyBtZXRob2RcclxuICogYXR0ZW1wdHMgdG8gbWlycm9yIHRoZSB0ZXh0IHRoZSBnaXZlbiBrZXlzdHJva2Ugd291bGQgaGF2ZSBpZiBkaXNwbGF5ZWQgaW5cclxuICogYSBzeXN0ZW0gbWVudS5cclxuICpcclxuICogQHBhcmFtIGtleXN0cm9rZSBBIFN0cmluZyBrZXlzdHJva2UgdG8gaHVtYW5pemUgc3VjaCBhcyBgY3RybC1PYC5cclxuICogQHBhcmFtIHBsYXRmb3JtIEFuIG9wdGlvbmFsIFN0cmluZyBwbGF0Zm9ybSB0byBodW1hbml6ZSBmb3IgKGRlZmF1bHQ6IGBwcm9jZXNzLnBsYXRmb3JtYCkuXHJcbiAqIEByZXR1cm4gYSBodW1hbml6ZWQgcmVwcmVzZW50YXRpb24gb2YgdGhlIGtleXN0cm9rZS5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGh1bWFuaXplS2V5c3Ryb2tlKFxyXG4gIGtleXN0cm9rZTogc3RyaW5nLFxyXG4gIHBsYXRmb3JtXzogP3N0cmluZyxcclxuKTogc3RyaW5nIHtcclxuICBsZXQgcGxhdGZvcm0gPSBwbGF0Zm9ybV87XHJcbiAgaWYgKCFrZXlzdHJva2UpIHtcclxuICAgIHJldHVybiBrZXlzdHJva2U7XHJcbiAgfVxyXG4gIC8vIGZsb3dsaW50LW5leHQtbGluZSBza2V0Y2h5LW51bGwtc3RyaW5nOm9mZlxyXG4gIHBsYXRmb3JtID0gcGxhdGZvcm0gfHwgcHJvY2Vzcy5wbGF0Zm9ybTtcclxuICBjb25zdCBzZXBhcmF0b3IgPSBwbGF0Zm9ybSA9PT0gJ2RhcndpbicgPyAnJyA6ICcrJztcclxuICBsZXQga2V5O1xyXG4gIGxldCBrZXlzO1xyXG4gIGxldCBzcGxpdEtleXN0cm9rZTtcclxuICBjb25zdCBrZXlzdHJva2VzID0ga2V5c3Ryb2tlLnNwbGl0KCcgJyk7XHJcbiAgY29uc3QgaHVtYW5pemVkS2V5c3Ryb2tlcyA9IFtdO1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwga2V5c3Ryb2tlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgY29uc3QgY3VycmVudEtleXN0cm9rZSA9IGtleXN0cm9rZXNbaV07XHJcbiAgICBzcGxpdEtleXN0cm9rZSA9IGN1cnJlbnRLZXlzdHJva2Uuc3BsaXQoJy0nKTtcclxuICAgIGtleXMgPSBbXTtcclxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBzcGxpdEtleXN0cm9rZS5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAga2V5ID0gc3BsaXRLZXlzdHJva2VbaW5kZXhdO1xyXG4gICAgICBpZiAoa2V5ID09PSAnJyAmJiBzcGxpdEtleXN0cm9rZVtpbmRleCAtIDFdID09PSAnJykge1xyXG4gICAgICAgIGtleSA9ICctJztcclxuICAgICAgfVxyXG4gICAgICBpZiAoa2V5KSB7XHJcbiAgICAgICAga2V5cy5wdXNoKGh1bWFuaXplS2V5KGtleSwgcGxhdGZvcm0pKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAga2V5cyA9IEFycmF5LmZyb20obmV3IFNldChmbGF0dGVuKGtleXMpKSk7XHJcbiAgICBodW1hbml6ZWRLZXlzdHJva2VzLnB1c2goa2V5cy5qb2luKHNlcGFyYXRvcikpO1xyXG4gIH1cclxuICByZXR1cm4gaHVtYW5pemVkS2V5c3Ryb2tlcy5qb2luKCcgJyk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL2h1bWFuaXplS2V5c3Ryb2tlLmpzIl0sIm5hbWVzIjpbIk1BQ19NT0RJRklFUl9LRVlNQVAiLCJhbHQiLCJjbWQiLCJjdHJsIiwiZG93biIsImVudGVyIiwibGVmdCIsIm9wdGlvbiIsInJpZ2h0Iiwic2hpZnQiLCJ1cCIsIk5PTl9NQUNfTU9ESUZJRVJfS0VZTUFQIiwiU0hJRlRfS0VZTUFQIiwiXyIsIkZOX0tFWV9SRSIsImZsYXR0ZW4iLCJhcnIiLCJmbGF0dGVuZWQiLCJlbCIsIkFycmF5IiwiaXNBcnJheSIsImNvbmNhdCIsInB1c2giLCJjYXBpdGFsaXplIiwid29yZCIsImZpcnN0IiwicmVzdCIsInNsaWNlIiwidG9VcHBlckNhc2UiLCJodW1hbml6ZUtleSIsImtleSIsInBsYXRmb3JtIiwibW9kaWZpZXJLZXlNYXAiLCJsZW5ndGgiLCJ1cHBlcmNhc2UiLCJ0b0xvd2VyQ2FzZSIsInRlc3QiLCJodW1hbml6ZUtleXN0cm9rZSIsImtleXN0cm9rZSIsInBsYXRmb3JtXyIsInByb2Nlc3MiLCJzZXBhcmF0b3IiLCJrZXlzIiwic3BsaXRLZXlzdHJva2UiLCJrZXlzdHJva2VzIiwic3BsaXQiLCJodW1hbml6ZWRLZXlzdHJva2VzIiwiaSIsImN1cnJlbnRLZXlzdHJva2UiLCJpbmRleCIsImZyb20iLCJTZXQiLCJqb2luIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFFQTtBQUNBO0FBQ0E7QUFFQSxNQUFNQSxtQkFBbUIsR0FBRztBQUMxQkMsRUFBQUEsR0FBRyxFQUFFLFFBRHFCO0FBRTFCQyxFQUFBQSxHQUFHLEVBQUUsUUFGcUI7QUFHMUJDLEVBQUFBLElBQUksRUFBRSxRQUhvQjtBQUkxQkMsRUFBQUEsSUFBSSxFQUFFLFFBSm9CO0FBSzFCQyxFQUFBQSxLQUFLLEVBQUUsUUFMbUI7QUFNMUJD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LGNBQWMsQ0FBQ1YsTUFBM0MsRUFBbURnQixLQUFLLEVBQXhELEVBQTREO0FBQzFEbkIsTUFBQUEsR0FBRyxHQUFHYSxjQUFjLENBQUNNLEtBQUQsQ0FBcEI7O0FBQ0EsVUFBSW5CLEdBQUcsS0FBSyxFQUFSLElBQWNhLGNBQWMsQ0FBQ00sS0FBSyxHQUFHLENBQVQsQ0FBZCxLQUE4QixFQUFoRCxFQUFvRDtBQUNsRG5CLFFBQUFBLEdBQUcsR0FBRyxHQUFOO0FBQ0Q7O0FBQ0QsVUFBSUEsR0FBSixFQUFTO0FBQ1BZLFFBQUFBLElBQUksQ0FBQ3BCLElBQUwsQ0FBVU8sV0FBVyxDQUFDQyxHQUFELEVBQU1DLFFBQU4sQ0FBckI7QUFDRDtBQUNGOztBQUNEVyxJQUFBQSxJQUFJLEdBQUd2QixLQUFLLENBQUMrQixJQUFOLENBQVcsSUFBSUMsR0FBSixDQUFRcEMsT0FBTyxDQUFDMkIsSUFBRCxDQUFmLENBQVgsQ0FBUDtBQUNBSSxJQUFBQSxtQkFBbUIsQ0FBQ3hCLElBQXBCLENBQXlCb0IsSUFBSSxDQUFDVSxJQUFMLENBQVVYLFNBQVYsQ0FBekI7QUFDRDs7QUFDRCxTQUFPSyxtQkFBbUIsQ0FBQ00sSUFBcEIsQ0FBeUIsR0FBekIsQ0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbi8qXHJcbiAqIGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vYXRvbS91bmRlcnNjb3JlLXBsdXMvYmxvYi9tYXN0ZXIvc3JjL3VuZGVyc2NvcmUtcGx1cy5jb2ZmZWVcclxuICovXHJcblxyXG5jb25zdCBNQUNfTU9ESUZJRVJfS0VZTUFQID0ge1xyXG4gIGFsdDogJ1xcdTIzMjUnLFxyXG4gIGNtZDogJ1xcdTIzMTgnLFxyXG4gIGN0cmw6ICdcXHUyMzAzJyxcclxuICBkb3duOiAnXFx1MjE5MycsXHJcbiAgZW50ZXI6ICdcXHUyM2NlJyxcclxuICBsZWZ0OiAnXFx1MjE5MCcsXHJcbiAgb3B0aW9uOiAnXFx1MjMyNScsXHJcbiAgcmlnaHQ6ICdcXHUyMTkyJyxcclxuICBzaGlmdDogJ1xcdTIxZTcnLFxyXG4gIHVwOiAnXFx1MjE5MScsXHJcbn07XHJcblxyXG5jb25zdCBOT05fTUFDX01PRElGSUVSX0tFWU1BUCA9IHtcclxuICBhbHQ6ICdBbHQnLFxyXG4gIGNtZDogJ0NtZCcsXHJcbiAgY3RybDogJ0N0cmwnLFxyXG4gIGRvd246ICdEb3duJyxcclxuICBlbnRlcjogJ0VudGVyJyxcclxuICBsZWZ0OiAnTGVmdCcsXHJcbiAgb3B0aW9uOiAnQWx0JyxcclxuICByaWdodDogJ1JpZ2h0JyxcclxuICBzaGlmdDogJ1NoaWZ0JyxcclxuICB1cDogJ1VwJyxcclxufTtcclxuXHJcbi8vIEh1bWFuIGtleSBjb21ib3Mgc2hvdWxkIGFsd2F5cyBleHBsaWNpdGx5IHN0YXRlIHRoZSBzaGlmdCBrZXkuIFRoaXMgbWFwIGlzIGEgZGlzYW1iaWd1YXRvci5cclxuLy8gJ3NoaWZ0LXZlcnNpb24nOiAnbm8tc2hpZnQtdmVyc2lvbidcclxuY29uc3QgU0hJRlRfS0VZTUFQID0ge1xyXG4gIF86ICctJyxcclxuICAnOic6ICc7JyxcclxuICAnPyc6ICcvJyxcclxuICAnXCInOiBcIidcIixcclxuICAneyc6ICdbJyxcclxuICAnfSc6ICddJyxcclxuICAnKyc6ICc9JyxcclxuICAnPCc6ICcsJyxcclxuICAnPic6ICcuJyxcclxuICAnfCc6ICdcXFxcJyxcclxuICAnfic6ICdgJyxcclxufTtcclxuXHJcbmNvbnN0IEZOX0tFWV9SRSA9IC9mWzAtOV17MSwyfS87XHJcblxyXG4vLyAkRmxvd0lzc3VlXHJcbmZ1bmN0aW9uIGZsYXR0ZW48VD4oYXJyOiBBcnJheTxUIHwgQXJyYXk8VD4+KTogQXJyYXk8VD4ge1xyXG4gIGxldCBmbGF0dGVuZWQgPSBbXTtcclxuICBmb3IgKGNvbnN0IGVsIG9mIGFycikge1xyXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoZWwpKSB7XHJcbiAgICAgIGZsYXR0ZW5lZCA9IGZsYXR0ZW5lZC5jb25jYXQoZmxhdHRlbihlbCkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgZmxhdHRlbmVkLnB1c2goZWwpO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gZmxhdHRlbmVkO1xyXG59XHJcblxyXG5mdW5jdGlvbiBjYXBpdGFsaXplKHdvcmQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgY29uc3QgZmlyc3QgPSB3b3JkWzBdIHx8ICcnO1xyXG4gIGNvbnN0IHJlc3QgPSB3b3JkLnNsaWNlKDEpO1xyXG4gIHJldHVybiBmaXJzdC50b1VwcGVyQ2FzZSgpICsgcmVzdDtcclxufVxyXG5cclxuZnVuY3Rpb24gaHVtYW5pemVLZXkoa2V5OiBzdHJpbmcsIHBsYXRmb3JtOiA/c3RyaW5nKTogc3RyaW5nIHwgQXJyYXk8c3RyaW5nPiB7XHJcbiAgaWYgKCFrZXkpIHtcclxuICAgIHJldHVybiBrZXk7XHJcbiAgfVxyXG4gIGNvbnN0IG1vZGlmaWVyS2V5TWFwID1cclxuICAgIHBsYXRmb3JtID09PSAnZGFyd2luJyA/IE1BQ19NT0RJRklFUl9LRVlNQVAgOiBOT05fTUFDX01PRElGSUVSX0tFWU1BUDtcclxuICBpZiAobW9kaWZpZXJLZXlNYXBba2V5XSkge1xyXG4gICAgcmV0dXJuIG1vZGlmaWVyS2V5TWFwW2tleV07XHJcbiAgfVxyXG4gIGlmIChrZXkubGVuZ3RoID09PSAxKSB7XHJcbiAgICBpZiAoU0hJRlRfS0VZTUFQW2tleV0pIHtcclxuICAgICAgcmV0dXJuIFttb2RpZmllcktleU1hcC5zaGlmdCwgU0hJRlRfS0VZTUFQW2tleV1dO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdXBwZXJjYXNlID0ga2V5LnRvVXBwZXJDYXNlKCk7XHJcbiAgICBpZiAoa2V5ID09PSB1cHBlcmNhc2UgJiYgdXBwZXJjYXNlICE9PSBrZXkudG9Mb3dlckNhc2UoKSkge1xyXG4gICAgICByZXR1cm4gW21vZGlmaWVyS2V5TWFwLnNoaWZ0LCB1cHBlcmNhc2VdO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHVwcGVyY2FzZTtcclxuICB9XHJcbiAgaWYgKEZOX0tFWV9SRS50ZXN0KGtleSkpIHtcclxuICAgIHJldHVybiBrZXkudG9VcHBlckNhc2UoKTtcclxuICB9XHJcbiAgcmV0dXJuIHBsYXRmb3JtID09PSAnZGFyd2luJyA/IGtleSA6IGNhcGl0YWxpemUoa2V5KTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEh1bWFuaXplIHRoZSBrZXlzdHJva2UgYWNjb3JkaW5nIHRvIHBsYXRmb3JtIGNvbnZlbnRpb25zLiBUaGlzIG1ldGhvZFxyXG4gKiBhdHRlbXB0cyB0byBtaXJyb3IgdGhlIHRleHQgdGhlIGdpdmVuIGtleXN0cm9rZSB3b3VsZCBoYXZlIGlmIGRpc3BsYXllZCBpblxyXG4gKiBhIHN5c3RlbSBtZW51LlxyXG4gKlxyXG4gKiBAcGFyYW0ga2V5c3Ryb2tlIEEgU3RyaW5nIGtleXN0cm9rZSB0byBodW1hbml6ZSBzdWNoIGFzIGBjdHJsLU9gLlxyXG4gKiBAcGFyYW0gcGxhdGZvcm0gQW4gb3B0aW9uYWwgU3RyaW5nIHBsYXRmb3JtIHRvIGh1bWFuaXplIGZvciAoZGVmYXVsdDogYHByb2Nlc3MucGxhdGZvcm1gKS5cclxuICogQHJldHVybiBhIGh1bWFuaXplZCByZXByZXNlbnRhdGlvbiBvZiB0aGUga2V5c3Ryb2tlLlxyXG4gKi9cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gaHVtYW5pemVLZXlzdHJva2UoXHJcbiAga2V5c3Ryb2tlOiBzdHJpbmcsXHJcbiAgcGxhdGZvcm1fOiA/c3RyaW5nLFxyXG4pOiBzdHJpbmcge1xyXG4gIGxldCBwbGF0Zm9ybSA9IHBsYXRmb3JtXztcclxuICBpZiAoIWtleXN0cm9rZSkge1xyXG4gICAgcmV0dXJuIGtleXN0cm9rZTtcclxuICB9XHJcbiAgLy8gZmxvd2xpbnQtbmV4dC1saW5lIHNrZXRjaHktbnVsbC1zdHJpbmc6b2ZmXHJcbiAgcGxhdGZvcm0gPSBwbGF0Zm9ybSB8fCBwcm9jZXNzLnBsYXRmb3JtO1xyXG4gIGNvbnN0IHNlcGFyYXRvciA9IHBsYXRmb3JtID09PSAnZGFyd2luJyA/ICcnIDogJysnO1xyXG4gIGxldCBrZXk7XHJcbiAgbGV0IGtleXM7XHJcbiAgbGV0IHNwbGl0S2V5c3Ryb2tlO1xyXG4gIGNvbnN0IGtleXN0cm9rZXMgPSBrZXlzdHJva2Uuc3BsaXQoJyAnKTtcclxuICBjb25zdCBodW1hbml6ZWRLZXlzdHJva2VzID0gW107XHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCBrZXlzdHJva2VzLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBjb25zdCBjdXJyZW50S2V5c3Ryb2tlID0ga2V5c3Ryb2tlc1tpXTtcclxuICAgIHNwbGl0S2V5c3Ryb2tlID0gY3VycmVudEtleXN0cm9rZS5zcGxpdCgnLScpO1xyXG4gICAga2V5cyA9IFtdO1xyXG4gICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IHNwbGl0S2V5c3Ryb2tlLmxlbmd0aDsgaW5kZXgrKykge1xyXG4gICAgICBrZXkgPSBzcGxpdEtleXN0cm9rZVtpbmRleF07XHJcbiAgICAgIGlmIChrZXkgPT09ICcnICYmIHNwbGl0S2V5c3Ryb2tlW2luZGV4IC0gMV0gPT09ICcnKSB7XHJcbiAgICAgICAga2V5ID0gJy0nO1xyXG4gICAgICB9XHJcbiAgICAgIGlmIChrZXkpIHtcclxuICAgICAgICBrZXlzLnB1c2goaHVtYW5pemVLZXkoa2V5LCBwbGF0Zm9ybSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBrZXlzID0gQXJyYXkuZnJvbShuZXcgU2V0KGZsYXR0ZW4oa2V5cykpKTtcclxuICAgIGh1bWFuaXplZEtleXN0cm9rZXMucHVzaChrZXlzLmpvaW4oc2VwYXJhdG9yKSk7XHJcbiAgfVxyXG4gIHJldHVybiBodW1hbml6ZWRLZXlzdHJva2VzLmpvaW4oJyAnKTtcclxufVxyXG4iXX0= |
@@ -44,2 +44,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL21hdGNoSW5kZXhlc1RvUmFuZ2VzLmpzIl0sIm5hbWVzIjpbIm1hdGNoSW5kZXhlc1RvUmFuZ2VzIiwibWF0Y2hJbmRleGVzIiwic3RyZWFrT25nb2luZyIsInN0YXJ0IiwicmFuZ2VzIiwiZm9yRWFjaCIsImkiLCJuIiwicHVzaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7Ozs7Ozs7OztBQWNlLFNBQVNBLG9CQUFULENBQ2JDLFlBRGEsRUFFTTtBQUNuQixNQUFJQyxhQUFhLEdBQUcsS0FBcEI7QUFDQSxNQUFJQyxLQUFLLEdBQUcsQ0FBWjtBQUNBLFFBQU1DLE1BQU0sR0FBRyxFQUFmLENBSG1CLENBS25CO0FBQ0E7O0FBQ0FILEVBQUFBLFlBQVksQ0FBQ0ksT0FBYixDQUFxQixDQUFDQyxDQUFELEVBQUlDLENBQUosS0FBVTtBQUM3QixRQUFJTixZQUFZLENBQUNNLENBQUMsR0FBRyxDQUFMLENBQVosS0FBd0JELENBQUMsR0FBRyxDQUFoQyxFQUFtQztBQUNqQyxVQUFJLENBQUNKLGFBQUwsRUFBb0I7QUFDbEJDLFFBQUFBLEtBQUssR0FBR0csQ0FBUjtBQUNBSixRQUFBQSxhQUFhLEdBQUcsSUFBaEI7QUFDRDtBQUNGLEtBTEQsTUFLTztBQUNMLFVBQUlBLGFBQUosRUFBbUI7QUFDakJFLFFBQUFBLE1BQU0sQ0FBQ0ksSUFBUCxDQUFZLENBQUNMLEtBQUQsRUFBUUcsQ0FBQyxHQUFHLENBQVosQ0FBWjtBQUNBSixRQUFBQSxhQUFhLEdBQUcsS0FBaEI7QUFDRCxPQUhELE1BR087QUFDTEUsUUFBQUEsTUFBTSxDQUFDSSxJQUFQLENBQVksQ0FBQ0YsQ0FBRCxFQUFJQSxDQUFDLEdBQUcsQ0FBUixDQUFaO0FBQ0Q7O0FBQ0RILE1BQUFBLEtBQUssR0FBR0csQ0FBQyxHQUFHLENBQVo7QUFDRDtBQUNGLEdBZkQ7QUFnQkEsU0FBT0YsTUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbnR5cGUgTWF0Y2hSYW5nZSA9IFsvKiBzdGFydCAqLyBudW1iZXIsIC8qIGVuZCAqLyBudW1iZXJdO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gbWF0Y2hJbmRleGVzVG9SYW5nZXMoXHJcbiAgbWF0Y2hJbmRleGVzOiBBcnJheTxudW1iZXI+LFxyXG4pOiBBcnJheTxNYXRjaFJhbmdlPiB7XHJcbiAgbGV0IHN0cmVha09uZ29pbmcgPSBmYWxzZTtcclxuICBsZXQgc3RhcnQgPSAwO1xyXG4gIGNvbnN0IHJhbmdlcyA9IFtdO1xyXG5cclxuICAvLyBDb2xsYXBzZSBjb25zZWN1dGl2ZSB2YWx1ZXMgZm9yIGNvbnNlY3V0aXZlIGluZGV4ZXMgaW50byByYW5nZSBwYWlycy5cclxuICAvLyBEbyB0aGlzIGluIE8obikgd2hlcmUgbiBpcyB0aGUgbnVtYmVyIG9mIG1hdGNoSW5kZXhlcyAoaWUuIGxlc3MgdGhhbiB0aGUgbGVuZ3RoIG9mIHRoZSBwYXRoKS5cclxuICBtYXRjaEluZGV4ZXMuZm9yRWFjaCgoaSwgbikgPT4ge1xyXG4gICAgaWYgKG1hdGNoSW5kZXhlc1tuICsgMV0gPT09IGkgKyAxKSB7XHJcbiAgICAgIGlmICghc3RyZWFrT25nb2luZykge1xyXG4gICAgICAgIHN0YXJ0ID0gaTtcclxuICAgICAgICBzdHJlYWtPbmdvaW5nID0gdHJ1ZTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKHN0cmVha09uZ29pbmcpIHtcclxuICAgICAgICByYW5nZXMucHVzaChbc3RhcnQsIGkgKyAxXSk7XHJcbiAgICAgICAgc3RyZWFrT25nb2luZyA9IGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJhbmdlcy5wdXNoKFtpLCBpICsgMV0pO1xyXG4gICAgICB9XHJcbiAgICAgIHN0YXJ0ID0gaSArIDE7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgcmV0dXJuIHJhbmdlcztcclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL21hdGNoSW5kZXhlc1RvUmFuZ2VzLmpzIl0sIm5hbWVzIjpbIm1hdGNoSW5kZXhlc1RvUmFuZ2VzIiwibWF0Y2hJbmRleGVzIiwic3RyZWFrT25nb2luZyIsInN0YXJ0IiwicmFuZ2VzIiwiZm9yRWFjaCIsImkiLCJuIiwicHVzaCJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJZSxTQUFTQSxvQkFBVCxDQUNiQyxZQURhLEVBRU07QUFDbkIsTUFBSUMsYUFBYSxHQUFHLEtBQXBCO0FBQ0EsTUFBSUMsS0FBSyxHQUFHLENBQVo7QUFDQSxRQUFNQyxNQUFNLEdBQUcsRUFBZixDQUhtQixDQUtuQjtBQUNBOztBQUNBSCxFQUFBQSxZQUFZLENBQUNJLE9BQWIsQ0FBcUIsQ0FBQ0MsQ0FBRCxFQUFJQyxDQUFKLEtBQVU7QUFDN0IsUUFBSU4sWUFBWSxDQUFDTSxDQUFDLEdBQUcsQ0FBTCxDQUFaLEtBQXdCRCxDQUFDLEdBQUcsQ0FBaEMsRUFBbUM7QUFDakMsVUFBSSxDQUFDSixhQUFMLEVBQW9CO0FBQ2xCQyxRQUFBQSxLQUFLLEdBQUdHLENBQVI7QUFDQUosUUFBQUEsYUFBYSxHQUFHLElBQWhCO0FBQ0Q7QUFDRixLQUxELE1BS087QUFDTCxVQUFJQSxhQUFKLEVBQW1CO0FBQ2pCRSxRQUFBQSxNQUFNLENBQUNJLElBQVAsQ0FBWSxDQUFDTCxLQUFELEVBQVFHLENBQUMsR0FBRyxDQUFaLENBQVo7QUFDQUosUUFBQUEsYUFBYSxHQUFHLEtBQWhCO0FBQ0QsT0FIRCxNQUdPO0FBQ0xFLFFBQUFBLE1BQU0sQ0FBQ0ksSUFBUCxDQUFZLENBQUNGLENBQUQsRUFBSUEsQ0FBQyxHQUFHLENBQVIsQ0FBWjtBQUNEOztBQUNESCxNQUFBQSxLQUFLLEdBQUdHLENBQUMsR0FBRyxDQUFaO0FBQ0Q7QUFDRixHQWZEO0FBZ0JBLFNBQU9GLE1BQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG50eXBlIE1hdGNoUmFuZ2UgPSBbLyogc3RhcnQgKi8gbnVtYmVyLCAvKiBlbmQgKi8gbnVtYmVyXTtcclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG1hdGNoSW5kZXhlc1RvUmFuZ2VzKFxyXG4gIG1hdGNoSW5kZXhlczogQXJyYXk8bnVtYmVyPixcclxuKTogQXJyYXk8TWF0Y2hSYW5nZT4ge1xyXG4gIGxldCBzdHJlYWtPbmdvaW5nID0gZmFsc2U7XHJcbiAgbGV0IHN0YXJ0ID0gMDtcclxuICBjb25zdCByYW5nZXMgPSBbXTtcclxuXHJcbiAgLy8gQ29sbGFwc2UgY29uc2VjdXRpdmUgdmFsdWVzIGZvciBjb25zZWN1dGl2ZSBpbmRleGVzIGludG8gcmFuZ2UgcGFpcnMuXHJcbiAgLy8gRG8gdGhpcyBpbiBPKG4pIHdoZXJlIG4gaXMgdGhlIG51bWJlciBvZiBtYXRjaEluZGV4ZXMgKGllLiBsZXNzIHRoYW4gdGhlIGxlbmd0aCBvZiB0aGUgcGF0aCkuXHJcbiAgbWF0Y2hJbmRleGVzLmZvckVhY2goKGksIG4pID0+IHtcclxuICAgIGlmIChtYXRjaEluZGV4ZXNbbiArIDFdID09PSBpICsgMSkge1xyXG4gICAgICBpZiAoIXN0cmVha09uZ29pbmcpIHtcclxuICAgICAgICBzdGFydCA9IGk7XHJcbiAgICAgICAgc3RyZWFrT25nb2luZyA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmIChzdHJlYWtPbmdvaW5nKSB7XHJcbiAgICAgICAgcmFuZ2VzLnB1c2goW3N0YXJ0LCBpICsgMV0pO1xyXG4gICAgICAgIHN0cmVha09uZ29pbmcgPSBmYWxzZTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICByYW5nZXMucHVzaChbaSwgaSArIDFdKTtcclxuICAgICAgfVxyXG4gICAgICBzdGFydCA9IGkgKyAxO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIHJldHVybiByYW5nZXM7XHJcbn1cclxuIl19 |
@@ -85,2 +85,2 @@ "use strict"; | ||
const DEFAULT_KEY_SELECTOR = (...args) => args; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL21lbW9pemVVbnRpbENoYW5nZWQuanMiXSwibmFtZXMiOlsiZnVuYyIsImtleVNlbGVjdG9yXyIsImNvbXBhcmVLZXlzXyIsInByZXZLZXkiLCJwcmV2UmVzdWx0Iiwia2V5U2VsZWN0b3IiLCJERUZBVUxUX0tFWV9TRUxFQ1RPUiIsImNvbXBhcmVLZXlzIiwiYXJyYXlFcXVhbCIsImFyZ3MiLCJrZXkiLCJhcHBseSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOztBQUNBOzs7O0FBYkE7Ozs7Ozs7Ozs7OztBQStDQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztlQXFDZ0IsQ0FBQ0EsSUFBRCxFQUFPQyxZQUFQLEVBQXNCQyxZQUF0QixLQUF3QztBQUN0RCx1QkFDRSxFQUFFRCxZQUFZLElBQUksSUFBaEIsSUFBd0JDLFlBQVksSUFBSSxJQUExQyxDQURGLEVBRUUsNkVBRkY7QUFLQSxNQUFJQyxPQUFPLEdBQUcsSUFBZDtBQUNBLE1BQUlDLFVBQUo7QUFDQSxRQUFNQyxXQUFXLEdBQUdKLFlBQVksSUFBSUssb0JBQXBDO0FBQ0EsUUFBTUMsV0FBVyxHQUFHTCxZQUFZLElBQUlNLHNCQUFwQztBQUNBLFNBQU8sVUFBUyxHQUFHQyxJQUFaLEVBQWtCO0FBQ3ZCLFVBQU1DLEdBQUcsR0FBSUwsV0FBRCxDQUF3QixHQUFHSSxJQUEzQixDQUFaO0FBQ0EseUJBQVVDLEdBQUcsSUFBSSxJQUFqQixFQUF1QixvQkFBdkI7O0FBQ0EsUUFBSVAsT0FBTyxJQUFJLElBQVgsSUFBbUIsQ0FBQ0ksV0FBVyxDQUFDRyxHQUFELEVBQU1QLE9BQU4sQ0FBbkMsRUFBbUQ7QUFDakRBLE1BQUFBLE9BQU8sR0FBR08sR0FBVjtBQUNBTixNQUFBQSxVQUFVLEdBQUlKLElBQUQsQ0FBaUJXLEtBQWpCLENBQXVCLElBQXZCLEVBQTZCRixJQUE3QixDQUFiO0FBQ0Q7O0FBQ0QsV0FBT0wsVUFBUDtBQUNELEdBUkQ7QUFTRCxDOzs7O0FBRUQsTUFBTUUsb0JBQW9CLEdBQUcsQ0FBQyxHQUFHRyxJQUFKLEtBQWFBLElBQTFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5pbXBvcnQge2FycmF5RXF1YWx9IGZyb20gJy4vY29sbGVjdGlvbic7XHJcblxyXG50eXBlIG1lbW9pemVVbnRpbENoYW5nZWQgPSAoPEEsIEIsIEMsIEQsIEUsIFIsIFU+KFxyXG4gIGZ1bmM6IChBLCBCLCBDLCBELCBFKSA9PiBSLFxyXG4gIGtleVNlbGVjdG9yXz86IChBLCBCLCBDLCBELCBFKSA9PiBVLFxyXG4gIGNvbXBhcmVLZXlzXz86IChVLCBVKSA9PiBib29sZWFuLFxyXG4pID0+IChBLCBCLCBDLCBELCBFKSA9PiBSKSAmXHJcbiAgKDxBLCBCLCBDLCBELCBSLCBVPihcclxuICAgIGZ1bmM6IChBLCBCLCBDLCBEKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEsIEIsIEMsIEQpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IChBLCBCLCBDLCBEKSA9PiBSKSAmXHJcbiAgKDxBLCBCLCBDLCBSLCBVPihcclxuICAgIGZ1bmM6IChBLCBCLCBDKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEsIEIsIEMpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IChBLCBCLCBDKSA9PiBSKSAmXHJcbiAgKDxBLCBCLCBSLCBVPihcclxuICAgIGZ1bmM6IChBLCBCKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEsIEIpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IChBLCBCKSA9PiBSKSAmXHJcbiAgKDxBLCBSLCBVPihcclxuICAgIGZ1bmM6IChBKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IEEgPT4gUikgJlxyXG4gICg8Uj4oZnVuYzogKCkgPT4gUikgPT4gKCkgPT4gUikgJlxyXG4gICg8VCwgUiwgVT4oXHJcbiAgICBmdW5jOiAoLi4uYW55OiAkUmVhZE9ubHlBcnJheTxUPikgPT4gUixcclxuICAgICguLi5hbnk6ICRSZWFkT25seUFycmF5PFQ+KSA9PiBVLFxyXG4gICAgY29tcGFyZUtleXNfPzogKFUsIFUpID0+IGJvb2xlYW4sXHJcbiAgKSA9PiAoLi4uYW55OiAkUmVhZE9ubHlBcnJheTxUPikgPT4gUik7XHJcblxyXG4vKipcclxuICogQ3JlYXRlIGEgbWVtb2l6ZWQgdmVyc2lvbiBvZiB0aGUgcHJvdmlkZWQgZnVuY3Rpb24gdGhhdCBjYWNoZXMgb25seSB0aGUgbGF0ZXN0IHJlc3VsdC4gVGhpcyBpc1xyXG4gKiBlc3BlY2lhbGx5IHVzZWZ1bCBmb3Igb3B0aW1pemluZyBSZWFjdCBjb21wb25lbnQgbWV0aG9kcyB3aXRob3V0IGhhdmluZyB0byB3b3JyeSBhYm91dFxyXG4gKiBtYWludGFpbmluZyBzdGF0ZSBleHBsaWNpdGx5LiBGb3IgZXhhbXBsZTpcclxuICpcclxuICogICAgIGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcclxuICogICAgICAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICogICAgICAgICBzdXBlcihwcm9wcyk7XHJcbiAqICAgICAgICAgdGhpcy5fY29tcHV0ZVNvbWV0aGluZ0V4cGVuc2l2ZSA9IG1lbW9pemVVbnRpbENoYW5nZWQodGhpcy5fY29tcHV0ZVNvbWV0aGluZ0V4cGVuc2l2ZSk7XHJcbiAqICAgICAgIH1cclxuICogICAgICAgX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUoeCkgeyAuLi4gfVxyXG4gKiAgICAgICByZW5kZXIoKSB7XHJcbiAqICAgICAgICAgY29uc3QgdGhpbmdUb1JlbmRlciA9IHRoaXMuX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUodGhpcy5wcm9wcy52YWx1ZSk7XHJcbiAqICAgICAgICAgcmV0dXJuIDxkaXY+e3RoaW5nVG9SZW5kZXJ9PC9kaXY+O1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9XHJcbiAqXHJcbiAqIFNvbWV0aW1lcywgeW91IG5lZWQgdG8gY3VzdG9taXplIGhvdyB0aGUgYXJndW1lbnRzIGFyZSBjb21wYXJlZC4gSW4gdGhpcyBjYXNlIHlvdSBjYW4gcGFzcyBhXHJcbiAqIGtleSBzZWxlY3RvciBmdW5jdGlvbiAod2hpY2ggZGVyaXZlcyBhIHNpbmdsZSB2YWx1ZSBmcm9tIHRoZSBhcmd1bWVudHMpLCBhbmQgYW4gZXF1YWxpdHkgZnVuY3Rpb25cclxuICogKHdoaWNoIGNvbXBhcmVzIGtleXMpLiBGb3IgZXhhbXBsZTpcclxuICpcclxuICogICAgIGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcclxuICogICAgICAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICogICAgICAgICBzdXBlcihwcm9wcyk7XHJcbiAqICAgICAgICAgdGhpcy5fY29tcHV0ZVNvbWV0aGluZ0V4cGVuc2l2ZSA9IG1lbW9pemVVbnRpbENoYW5nZWQoXHJcbiAqICAgICAgICAgICB0aGlzLl9jb21wdXRlU29tZXRoaW5nRXhwZW5zaXZlLFxyXG4gKiAgICAgICAgICAgKHg6IEFycmF5PE9iamVjdD4sIHk6IEFycmF5PE9iamVjdD4pID0+ICh7eCwgeX0pLFxyXG4gKiAgICAgICAgICAgKGEsIGIpID0+IGFycmF5RXF1YWwoYS54LCBiLngpICYmIGFycmF5RXF1YWwoYS55LCBiLnkpLFxyXG4gKiAgICAgICAgICk7XHJcbiAqICAgICAgIH1cclxuICogICAgICAgX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUoeDogQXJyYXk8T2JqZWN0PiwgeTogQXJyYXk8T2JqZWN0PikgeyAuLi4gfVxyXG4gKiAgICAgICByZW5kZXIoKSB7XHJcbiAqICAgICAgICAgY29uc3QgdGhpbmdUb1JlbmRlciA9IHRoaXMuX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUodGhpcy5wcm9wcy52YWx1ZSk7XHJcbiAqICAgICAgICAgcmV0dXJuIDxkaXY+e3RoaW5nVG9SZW5kZXJ9PC9kaXY+O1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9XHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCAoKGZ1bmMsIGtleVNlbGVjdG9yXz8sIGNvbXBhcmVLZXlzXz8pID0+IHtcclxuICBpbnZhcmlhbnQoXHJcbiAgICAhKGtleVNlbGVjdG9yXyA9PSBudWxsICYmIGNvbXBhcmVLZXlzXyAhPSBudWxsKSxcclxuICAgIFwiWW91IGNhbid0IHByb3ZpZGUgYSBjb21wYXJlIGZ1bmN0aW9uIHdpdGhvdXQgYWxzbyBwcm92aWRpbmcgYSBrZXkgc2VsZWN0b3IuXCIsXHJcbiAgKTtcclxuXHJcbiAgbGV0IHByZXZLZXkgPSBudWxsO1xyXG4gIGxldCBwcmV2UmVzdWx0O1xyXG4gIGNvbnN0IGtleVNlbGVjdG9yID0ga2V5U2VsZWN0b3JfIHx8IERFRkFVTFRfS0VZX1NFTEVDVE9SO1xyXG4gIGNvbnN0IGNvbXBhcmVLZXlzID0gY29tcGFyZUtleXNfIHx8IGFycmF5RXF1YWw7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uKC4uLmFyZ3MpIHtcclxuICAgIGNvbnN0IGtleSA9IChrZXlTZWxlY3RvcjogRnVuY3Rpb24pKC4uLmFyZ3MpO1xyXG4gICAgaW52YXJpYW50KGtleSAhPSBudWxsLCAnS2V5IGNhbm5vdCBiZSBudWxsJyk7XHJcbiAgICBpZiAocHJldktleSA9PSBudWxsIHx8ICFjb21wYXJlS2V5cyhrZXksIHByZXZLZXkpKSB7XHJcbiAgICAgIHByZXZLZXkgPSBrZXk7XHJcbiAgICAgIHByZXZSZXN1bHQgPSAoZnVuYzogRnVuY3Rpb24pLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHByZXZSZXN1bHQ7XHJcbiAgfTtcclxufTogbWVtb2l6ZVVudGlsQ2hhbmdlZCk7XHJcblxyXG5jb25zdCBERUZBVUxUX0tFWV9TRUxFQ1RPUiA9ICguLi5hcmdzKSA9PiBhcmdzO1xyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL21lbW9pemVVbnRpbENoYW5nZWQuanMiXSwibmFtZXMiOlsiZnVuYyIsImtleVNlbGVjdG9yXyIsImNvbXBhcmVLZXlzXyIsInByZXZLZXkiLCJwcmV2UmVzdWx0Iiwia2V5U2VsZWN0b3IiLCJERUZBVUxUX0tFWV9TRUxFQ1RPUiIsImNvbXBhcmVLZXlzIiwiYXJyYXlFcXVhbCIsImFyZ3MiLCJrZXkiLCJhcHBseSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOztBQUNBOzs7O0FBYkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFxQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7ZUFDZ0IsQ0FBQ0EsSUFBRCxFQUFPQyxZQUFQLEVBQXNCQyxZQUF0QixLQUF3QztBQUN0RCx1QkFDRSxFQUFFRCxZQUFZLElBQUksSUFBaEIsSUFBd0JDLFlBQVksSUFBSSxJQUExQyxDQURGLEVBRUUsNkVBRkY7QUFLQSxNQUFJQyxPQUFPLEdBQUcsSUFBZDtBQUNBLE1BQUlDLFVBQUo7QUFDQSxRQUFNQyxXQUFXLEdBQUdKLFlBQVksSUFBSUssb0JBQXBDO0FBQ0EsUUFBTUMsV0FBVyxHQUFHTCxZQUFZLElBQUlNLHNCQUFwQztBQUNBLFNBQU8sVUFBUyxHQUFHQyxJQUFaLEVBQWtCO0FBQ3ZCLFVBQU1DLEdBQUcsR0FBSUwsV0FBRCxDQUF3QixHQUFHSSxJQUEzQixDQUFaO0FBQ0EseUJBQVVDLEdBQUcsSUFBSSxJQUFqQixFQUF1QixvQkFBdkI7O0FBQ0EsUUFBSVAsT0FBTyxJQUFJLElBQVgsSUFBbUIsQ0FBQ0ksV0FBVyxDQUFDRyxHQUFELEVBQU1QLE9BQU4sQ0FBbkMsRUFBbUQ7QUFDakRBLE1BQUFBLE9BQU8sR0FBR08sR0FBVjtBQUNBTixNQUFBQSxVQUFVLEdBQUlKLElBQUQsQ0FBaUJXLEtBQWpCLENBQXVCLElBQXZCLEVBQTZCRixJQUE3QixDQUFiO0FBQ0Q7O0FBQ0QsV0FBT0wsVUFBUDtBQUNELEdBUkQ7QUFTRCxDOzs7O0FBRUQsTUFBTUUsb0JBQW9CLEdBQUcsQ0FBQyxHQUFHRyxJQUFKLEtBQWFBLElBQTFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5pbXBvcnQge2FycmF5RXF1YWx9IGZyb20gJy4vY29sbGVjdGlvbic7XHJcblxyXG50eXBlIG1lbW9pemVVbnRpbENoYW5nZWQgPSAoPEEsIEIsIEMsIEQsIEUsIFIsIFU+KFxyXG4gIGZ1bmM6IChBLCBCLCBDLCBELCBFKSA9PiBSLFxyXG4gIGtleVNlbGVjdG9yXz86IChBLCBCLCBDLCBELCBFKSA9PiBVLFxyXG4gIGNvbXBhcmVLZXlzXz86IChVLCBVKSA9PiBib29sZWFuLFxyXG4pID0+IChBLCBCLCBDLCBELCBFKSA9PiBSKSAmXHJcbiAgKDxBLCBCLCBDLCBELCBSLCBVPihcclxuICAgIGZ1bmM6IChBLCBCLCBDLCBEKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEsIEIsIEMsIEQpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IChBLCBCLCBDLCBEKSA9PiBSKSAmXHJcbiAgKDxBLCBCLCBDLCBSLCBVPihcclxuICAgIGZ1bmM6IChBLCBCLCBDKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEsIEIsIEMpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IChBLCBCLCBDKSA9PiBSKSAmXHJcbiAgKDxBLCBCLCBSLCBVPihcclxuICAgIGZ1bmM6IChBLCBCKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEsIEIpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IChBLCBCKSA9PiBSKSAmXHJcbiAgKDxBLCBSLCBVPihcclxuICAgIGZ1bmM6IChBKSA9PiBSLFxyXG4gICAga2V5U2VsZWN0b3JfPzogKEEpID0+IFUsXHJcbiAgICBjb21wYXJlS2V5c18/OiAoVSwgVSkgPT4gYm9vbGVhbixcclxuICApID0+IEEgPT4gUikgJlxyXG4gICg8Uj4oZnVuYzogKCkgPT4gUikgPT4gKCkgPT4gUikgJlxyXG4gICg8VCwgUiwgVT4oXHJcbiAgICBmdW5jOiAoLi4uYW55OiAkUmVhZE9ubHlBcnJheTxUPikgPT4gUixcclxuICAgICguLi5hbnk6ICRSZWFkT25seUFycmF5PFQ+KSA9PiBVLFxyXG4gICAgY29tcGFyZUtleXNfPzogKFUsIFUpID0+IGJvb2xlYW4sXHJcbiAgKSA9PiAoLi4uYW55OiAkUmVhZE9ubHlBcnJheTxUPikgPT4gUik7XHJcblxyXG4vKipcclxuICogQ3JlYXRlIGEgbWVtb2l6ZWQgdmVyc2lvbiBvZiB0aGUgcHJvdmlkZWQgZnVuY3Rpb24gdGhhdCBjYWNoZXMgb25seSB0aGUgbGF0ZXN0IHJlc3VsdC4gVGhpcyBpc1xyXG4gKiBlc3BlY2lhbGx5IHVzZWZ1bCBmb3Igb3B0aW1pemluZyBSZWFjdCBjb21wb25lbnQgbWV0aG9kcyB3aXRob3V0IGhhdmluZyB0byB3b3JyeSBhYm91dFxyXG4gKiBtYWludGFpbmluZyBzdGF0ZSBleHBsaWNpdGx5LiBGb3IgZXhhbXBsZTpcclxuICpcclxuICogICAgIGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcclxuICogICAgICAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICogICAgICAgICBzdXBlcihwcm9wcyk7XHJcbiAqICAgICAgICAgdGhpcy5fY29tcHV0ZVNvbWV0aGluZ0V4cGVuc2l2ZSA9IG1lbW9pemVVbnRpbENoYW5nZWQodGhpcy5fY29tcHV0ZVNvbWV0aGluZ0V4cGVuc2l2ZSk7XHJcbiAqICAgICAgIH1cclxuICogICAgICAgX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUoeCkgeyAuLi4gfVxyXG4gKiAgICAgICByZW5kZXIoKSB7XHJcbiAqICAgICAgICAgY29uc3QgdGhpbmdUb1JlbmRlciA9IHRoaXMuX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUodGhpcy5wcm9wcy52YWx1ZSk7XHJcbiAqICAgICAgICAgcmV0dXJuIDxkaXY+e3RoaW5nVG9SZW5kZXJ9PC9kaXY+O1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9XHJcbiAqXHJcbiAqIFNvbWV0aW1lcywgeW91IG5lZWQgdG8gY3VzdG9taXplIGhvdyB0aGUgYXJndW1lbnRzIGFyZSBjb21wYXJlZC4gSW4gdGhpcyBjYXNlIHlvdSBjYW4gcGFzcyBhXHJcbiAqIGtleSBzZWxlY3RvciBmdW5jdGlvbiAod2hpY2ggZGVyaXZlcyBhIHNpbmdsZSB2YWx1ZSBmcm9tIHRoZSBhcmd1bWVudHMpLCBhbmQgYW4gZXF1YWxpdHkgZnVuY3Rpb25cclxuICogKHdoaWNoIGNvbXBhcmVzIGtleXMpLiBGb3IgZXhhbXBsZTpcclxuICpcclxuICogICAgIGNsYXNzIE15Q29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcclxuICogICAgICAgY29uc3RydWN0b3IocHJvcHMpIHtcclxuICogICAgICAgICBzdXBlcihwcm9wcyk7XHJcbiAqICAgICAgICAgdGhpcy5fY29tcHV0ZVNvbWV0aGluZ0V4cGVuc2l2ZSA9IG1lbW9pemVVbnRpbENoYW5nZWQoXHJcbiAqICAgICAgICAgICB0aGlzLl9jb21wdXRlU29tZXRoaW5nRXhwZW5zaXZlLFxyXG4gKiAgICAgICAgICAgKHg6IEFycmF5PE9iamVjdD4sIHk6IEFycmF5PE9iamVjdD4pID0+ICh7eCwgeX0pLFxyXG4gKiAgICAgICAgICAgKGEsIGIpID0+IGFycmF5RXF1YWwoYS54LCBiLngpICYmIGFycmF5RXF1YWwoYS55LCBiLnkpLFxyXG4gKiAgICAgICAgICk7XHJcbiAqICAgICAgIH1cclxuICogICAgICAgX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUoeDogQXJyYXk8T2JqZWN0PiwgeTogQXJyYXk8T2JqZWN0PikgeyAuLi4gfVxyXG4gKiAgICAgICByZW5kZXIoKSB7XHJcbiAqICAgICAgICAgY29uc3QgdGhpbmdUb1JlbmRlciA9IHRoaXMuX2NvbXB1dGVTb21ldGhpbmdFeHBlbnNpdmUodGhpcy5wcm9wcy52YWx1ZSk7XHJcbiAqICAgICAgICAgcmV0dXJuIDxkaXY+e3RoaW5nVG9SZW5kZXJ9PC9kaXY+O1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9XHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCAoKGZ1bmMsIGtleVNlbGVjdG9yXz8sIGNvbXBhcmVLZXlzXz8pID0+IHtcclxuICBpbnZhcmlhbnQoXHJcbiAgICAhKGtleVNlbGVjdG9yXyA9PSBudWxsICYmIGNvbXBhcmVLZXlzXyAhPSBudWxsKSxcclxuICAgIFwiWW91IGNhbid0IHByb3ZpZGUgYSBjb21wYXJlIGZ1bmN0aW9uIHdpdGhvdXQgYWxzbyBwcm92aWRpbmcgYSBrZXkgc2VsZWN0b3IuXCIsXHJcbiAgKTtcclxuXHJcbiAgbGV0IHByZXZLZXkgPSBudWxsO1xyXG4gIGxldCBwcmV2UmVzdWx0O1xyXG4gIGNvbnN0IGtleVNlbGVjdG9yID0ga2V5U2VsZWN0b3JfIHx8IERFRkFVTFRfS0VZX1NFTEVDVE9SO1xyXG4gIGNvbnN0IGNvbXBhcmVLZXlzID0gY29tcGFyZUtleXNfIHx8IGFycmF5RXF1YWw7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uKC4uLmFyZ3MpIHtcclxuICAgIGNvbnN0IGtleSA9IChrZXlTZWxlY3RvcjogRnVuY3Rpb24pKC4uLmFyZ3MpO1xyXG4gICAgaW52YXJpYW50KGtleSAhPSBudWxsLCAnS2V5IGNhbm5vdCBiZSBudWxsJyk7XHJcbiAgICBpZiAocHJldktleSA9PSBudWxsIHx8ICFjb21wYXJlS2V5cyhrZXksIHByZXZLZXkpKSB7XHJcbiAgICAgIHByZXZLZXkgPSBrZXk7XHJcbiAgICAgIHByZXZSZXN1bHQgPSAoZnVuYzogRnVuY3Rpb24pLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHByZXZSZXN1bHQ7XHJcbiAgfTtcclxufTogbWVtb2l6ZVVudGlsQ2hhbmdlZCk7XHJcblxyXG5jb25zdCBERUZBVUxUX0tFWV9TRUxFQ1RPUiA9ICguLi5hcmdzKSA9PiBhcmdzO1xyXG4iXX0= |
@@ -72,2 +72,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL21lbnVVdGlscy5qcyJdLCJuYW1lcyI6WyJzb3J0TGFiZWxWYWx1ZSIsImxhYmVsIiwiU3RyaW5nIiwicmVwbGFjZSIsInNvcnRTdWJtZW51R3JvdXAiLCJtZW51SXRlbXMiLCJzdGFydEluZGV4IiwiaXRlbUNvdW50IiwiaXRlbXNUb1NvcnQiLCJzcGxpY2UiLCJzb3J0IiwiYSIsImIiLCJzdGFydHNXaXRoIiwibG9jYWxlQ29tcGFyZSIsInNvcnRNZW51R3JvdXBzIiwibWVudU5hbWVzIiwibWVudU5hbWUiLCJtZW51IiwiYXRvbSIsInRlbXBsYXRlIiwiZmluZCIsIm0iLCJzb3J0U3RhcnQiLCJpIiwic3VibWVudSIsImxlbmd0aCIsInR5cGUiLCJ1cGRhdGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOzs7Ozs7Ozs7OztBQVlPLFNBQVNBLGNBQVQsQ0FBd0JDLEtBQXhCLEVBQXdDO0FBQzdDO0FBQ0E7QUFDQSxTQUFPQyxNQUFNLENBQUNELEtBQUQsQ0FBTixDQUFjRSxPQUFkLENBQXNCLEdBQXRCLEVBQTJCLEVBQTNCLENBQVA7QUFDRDs7QUFFTSxTQUFTQyxnQkFBVCxDQUNMQyxTQURLLEVBSUxDLFVBSkssRUFLTEMsU0FMSyxFQU1MO0FBQ0E7QUFDQTtBQUNBLFFBQU1DLFdBQVcsR0FBR0gsU0FBUyxDQUFDSSxNQUFWLENBQWlCSCxVQUFqQixFQUE2QkMsU0FBN0IsQ0FBcEI7QUFDQUMsRUFBQUEsV0FBVyxDQUFDRSxJQUFaLENBQWlCLENBQUNDLENBQUQsRUFBSUMsQ0FBSixLQUFVO0FBQ3pCO0FBQ0EsUUFBSVosY0FBYyxDQUFDVyxDQUFDLENBQUNWLEtBQUgsQ0FBZCxDQUF3QlksVUFBeEIsQ0FBbUMsU0FBbkMsQ0FBSixFQUFtRDtBQUNqRCxhQUFPLENBQUMsQ0FBUjtBQUNELEtBRkQsTUFFTztBQUNMLGFBQU9iLGNBQWMsQ0FBQ1csQ0FBQyxDQUFDVixLQUFILENBQWQsQ0FBd0JhLGFBQXhCLENBQXNDZCxjQUFjLENBQUNZLENBQUMsQ0FBQ1gsS0FBSCxDQUFwRCxDQUFQO0FBQ0Q7QUFDRixHQVBEO0FBU0FJLEVBQUFBLFNBQVMsQ0FBQ0ksTUFBVixDQUFpQkgsVUFBakIsRUFBNkIsQ0FBN0IsRUFBZ0MsR0FBR0UsV0FBbkM7QUFDRDs7QUFFTSxTQUFTTyxjQUFULENBQXdCQyxTQUF4QixFQUFrRDtBQUN2RCxPQUFLLE1BQU1DLFFBQVgsSUFBdUJELFNBQXZCLEVBQWtDO0FBQ2hDO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBTUUsSUFBSSxHQUFHQyxJQUFJLENBQUNELElBQUwsQ0FBVUUsUUFBVixDQUFtQkMsSUFBbkIsQ0FDWEMsQ0FBQyxJQUFJdEIsY0FBYyxDQUFDc0IsQ0FBQyxDQUFDckIsS0FBSCxDQUFkLEtBQTRCZ0IsUUFEdEIsQ0FBYjs7QUFHQSxRQUFJQyxJQUFJLElBQUksSUFBWixFQUFrQjtBQUNoQjtBQUNELEtBVitCLENBWWhDOzs7QUFDQSxRQUFJSyxTQUFTLEdBQUcsQ0FBaEI7O0FBQ0EsU0FBSyxJQUFJQyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHTixJQUFJLENBQUNPLE9BQUwsQ0FBYUMsTUFBakMsRUFBeUNGLENBQUMsRUFBMUMsRUFBOEM7QUFDNUMsVUFBSU4sSUFBSSxDQUFDTyxPQUFMLENBQWFELENBQWIsRUFBZ0JHLElBQWhCLEtBQXlCLFdBQTdCLEVBQTBDO0FBQ3hDdkIsUUFBQUEsZ0JBQWdCLENBQUNjLElBQUksQ0FBQ08sT0FBTixFQUFlRixTQUFmLEVBQTBCQyxDQUFDLEdBQUdELFNBQTlCLENBQWhCO0FBQ0FBLFFBQUFBLFNBQVMsR0FBR0MsQ0FBQyxHQUFHLENBQWhCO0FBQ0Q7QUFDRixLQW5CK0IsQ0FxQmhDOzs7QUFDQSxRQUFJRCxTQUFTLEdBQUdMLElBQUksQ0FBQ08sT0FBTCxDQUFhQyxNQUE3QixFQUFxQztBQUNuQ3RCLE1BQUFBLGdCQUFnQixDQUNkYyxJQUFJLENBQUNPLE9BRFMsRUFFZEYsU0FGYyxFQUdkTCxJQUFJLENBQUNPLE9BQUwsQ0FBYUMsTUFBYixHQUFzQkgsU0FIUixDQUFoQjtBQUtEO0FBQ0Y7O0FBRURKLEVBQUFBLElBQUksQ0FBQ0QsSUFBTCxDQUFVVSxNQUFWO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNvcnRMYWJlbFZhbHVlKGxhYmVsOiA/c3RyaW5nKSB7XHJcbiAgLy8gSWdub3JlIHRoZSBXaW5kb3dzIGFjY2VsZXJhdG9yIGtleSBoaW50IHdoZW4gc29ydGluZywgdGhlICYgZG9lc24ndFxyXG4gIC8vIGFjdHVhbGx5IGFwcGVhciBpbiB0aGUgVVggc28gaXQgc2hvdWxkbid0IGFmZmVjdCB0aGUgc29ydC5cclxuICByZXR1cm4gU3RyaW5nKGxhYmVsKS5yZXBsYWNlKCcmJywgJycpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc29ydFN1Ym1lbnVHcm91cChcclxuICBtZW51SXRlbXM6IEFycmF5PHtcclxuICAgIGxhYmVsOiBzdHJpbmcsXHJcbiAgfT4sXHJcbiAgc3RhcnRJbmRleDogbnVtYmVyLFxyXG4gIGl0ZW1Db3VudDogbnVtYmVyLFxyXG4pIHtcclxuICAvLyBTb3J0IGEgc3Vic2V0IG9mIHRoZSBpdGVtcyBpbiB0aGUgbWVudSBvZiBsZW5ndGggaXRlbUNvdW50IGJlZ2lubmluZ1xyXG4gIC8vIGF0IHN0YXJ0SW5kZXguXHJcbiAgY29uc3QgaXRlbXNUb1NvcnQgPSBtZW51SXRlbXMuc3BsaWNlKHN0YXJ0SW5kZXgsIGl0ZW1Db3VudCk7XHJcbiAgaXRlbXNUb1NvcnQuc29ydCgoYSwgYikgPT4ge1xyXG4gICAgLy8gQWx3YXlzIHB1dCB0aGUgXCJWZXJzaW9uXCIgbGFiZWwgdXAgdG9wLlxyXG4gICAgaWYgKHNvcnRMYWJlbFZhbHVlKGEubGFiZWwpLnN0YXJ0c1dpdGgoJ1ZlcnNpb24nKSkge1xyXG4gICAgICByZXR1cm4gLTE7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gc29ydExhYmVsVmFsdWUoYS5sYWJlbCkubG9jYWxlQ29tcGFyZShzb3J0TGFiZWxWYWx1ZShiLmxhYmVsKSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIG1lbnVJdGVtcy5zcGxpY2Uoc3RhcnRJbmRleCwgMCwgLi4uaXRlbXNUb1NvcnQpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc29ydE1lbnVHcm91cHMobWVudU5hbWVzOiBBcnJheTxzdHJpbmc+KSB7XHJcbiAgZm9yIChjb25zdCBtZW51TmFtZSBvZiBtZW51TmFtZXMpIHtcclxuICAgIC8vIFNvcnRzIHRoZSBpdGVtcyBpbiBhIG1lbnUgYWxwaGFiZXRpY2FsbHkuIElmIHRoZSBtZW51IGNvbnRhaW5zIG9uZSBvciBtb3JlXHJcbiAgICAvLyBzZXBhcmF0b3JzLCB0aGVuIHRoZSBpdGVtcyB3aXRoaW4gZWFjaCBzZXBhcmF0b3Igc3ViZ3JvdXAgd2lsbCBiZSBzb3J0ZWRcclxuICAgIC8vIHdpdGggcmVzcGVjdCB0byBlYWNoIG90aGVyLCBidXQgaXRlbXMgd2lsbCByZW1haW4gaW4gdGhlIHNhbWUgZ3JvdXBzLCBhbmRcclxuICAgIC8vIHRoZSBzZXBhcmF0b3JzIHdpbGwgbm90IGJlIG1vdmVkLlxyXG4gICAgY29uc3QgbWVudSA9IGF0b20ubWVudS50ZW1wbGF0ZS5maW5kKFxyXG4gICAgICBtID0+IHNvcnRMYWJlbFZhbHVlKG0ubGFiZWwpID09PSBtZW51TmFtZSxcclxuICAgICk7XHJcbiAgICBpZiAobWVudSA9PSBudWxsKSB7XHJcbiAgICAgIGNvbnRpbnVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNvcnQgZWFjaCBncm91cCBvZiBpdGVtcyAoc2VwYXJhdGVkIGJ5IGEgc2VwYXJhdG9yKSBpbmRpdmlkdWFsbHkuXHJcbiAgICBsZXQgc29ydFN0YXJ0ID0gMDtcclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbWVudS5zdWJtZW51Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGlmIChtZW51LnN1Ym1lbnVbaV0udHlwZSA9PT0gJ3NlcGFyYXRvcicpIHtcclxuICAgICAgICBzb3J0U3VibWVudUdyb3VwKG1lbnUuc3VibWVudSwgc29ydFN0YXJ0LCBpIC0gc29ydFN0YXJ0KTtcclxuICAgICAgICBzb3J0U3RhcnQgPSBpICsgMTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFNvcnQgYW55IHJlbWFpbmluZyBpdGVtcyBhZnRlciB0aGUgbGFzdCBzZXBhcmF0b3IuXHJcbiAgICBpZiAoc29ydFN0YXJ0IDwgbWVudS5zdWJtZW51Lmxlbmd0aCkge1xyXG4gICAgICBzb3J0U3VibWVudUdyb3VwKFxyXG4gICAgICAgIG1lbnUuc3VibWVudSxcclxuICAgICAgICBzb3J0U3RhcnQsXHJcbiAgICAgICAgbWVudS5zdWJtZW51Lmxlbmd0aCAtIHNvcnRTdGFydCxcclxuICAgICAgKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGF0b20ubWVudS51cGRhdGUoKTtcclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL21lbnVVdGlscy5qcyJdLCJuYW1lcyI6WyJzb3J0TGFiZWxWYWx1ZSIsImxhYmVsIiwiU3RyaW5nIiwicmVwbGFjZSIsInNvcnRTdWJtZW51R3JvdXAiLCJtZW51SXRlbXMiLCJzdGFydEluZGV4IiwiaXRlbUNvdW50IiwiaXRlbXNUb1NvcnQiLCJzcGxpY2UiLCJzb3J0IiwiYSIsImIiLCJzdGFydHNXaXRoIiwibG9jYWxlQ29tcGFyZSIsInNvcnRNZW51R3JvdXBzIiwibWVudU5hbWVzIiwibWVudU5hbWUiLCJtZW51IiwiYXRvbSIsInRlbXBsYXRlIiwiZmluZCIsIm0iLCJzb3J0U3RhcnQiLCJpIiwic3VibWVudSIsImxlbmd0aCIsInR5cGUiLCJ1cGRhdGUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFTyxTQUFTQSxjQUFULENBQXdCQyxLQUF4QixFQUF3QztBQUM3QztBQUNBO0FBQ0EsU0FBT0MsTUFBTSxDQUFDRCxLQUFELENBQU4sQ0FBY0UsT0FBZCxDQUFzQixHQUF0QixFQUEyQixFQUEzQixDQUFQO0FBQ0Q7O0FBRU0sU0FBU0MsZ0JBQVQsQ0FDTEMsU0FESyxFQUlMQyxVQUpLLEVBS0xDLFNBTEssRUFNTDtBQUNBO0FBQ0E7QUFDQSxRQUFNQyxXQUFXLEdBQUdILFNBQVMsQ0FBQ0ksTUFBVixDQUFpQkgsVUFBakIsRUFBNkJDLFNBQTdCLENBQXBCO0FBQ0FDLEVBQUFBLFdBQVcsQ0FBQ0UsSUFBWixDQUFpQixDQUFDQyxDQUFELEVBQUlDLENBQUosS0FBVTtBQUN6QjtBQUNBLFFBQUlaLGNBQWMsQ0FBQ1csQ0FBQyxDQUFDVixLQUFILENBQWQsQ0FBd0JZLFVBQXhCLENBQW1DLFNBQW5DLENBQUosRUFBbUQ7QUFDakQsYUFBTyxDQUFDLENBQVI7QUFDRCxLQUZELE1BRU87QUFDTCxhQUFPYixjQUFjLENBQUNXLENBQUMsQ0FBQ1YsS0FBSCxDQUFkLENBQXdCYSxhQUF4QixDQUFzQ2QsY0FBYyxDQUFDWSxDQUFDLENBQUNYLEtBQUgsQ0FBcEQsQ0FBUDtBQUNEO0FBQ0YsR0FQRDtBQVNBSSxFQUFBQSxTQUFTLENBQUNJLE1BQVYsQ0FBaUJILFVBQWpCLEVBQTZCLENBQTdCLEVBQWdDLEdBQUdFLFdBQW5DO0FBQ0Q7O0FBRU0sU0FBU08sY0FBVCxDQUF3QkMsU0FBeEIsRUFBa0Q7QUFDdkQsT0FBSyxNQUFNQyxRQUFYLElBQXVCRCxTQUF2QixFQUFrQztBQUNoQztBQUNBO0FBQ0E7QUFDQTtBQUNBLFVBQU1FLElBQUksR0FBR0MsSUFBSSxDQUFDRCxJQUFMLENBQVVFLFFBQVYsQ0FBbUJDLElBQW5CLENBQ1hDLENBQUMsSUFBSXRCLGNBQWMsQ0FBQ3NCLENBQUMsQ0FBQ3JCLEtBQUgsQ0FBZCxLQUE0QmdCLFFBRHRCLENBQWI7O0FBR0EsUUFBSUMsSUFBSSxJQUFJLElBQVosRUFBa0I7QUFDaEI7QUFDRCxLQVYrQixDQVloQzs7O0FBQ0EsUUFBSUssU0FBUyxHQUFHLENBQWhCOztBQUNBLFNBQUssSUFBSUMsQ0FBQyxHQUFHLENBQWIsRUFBZ0JBLENBQUMsR0FBR04sSUFBSSxDQUFDTyxPQUFMLENBQWFDLE1BQWpDLEVBQXlDRixDQUFDLEVBQTFDLEVBQThDO0FBQzVDLFVBQUlOLElBQUksQ0FBQ08sT0FBTCxDQUFhRCxDQUFiLEVBQWdCRyxJQUFoQixLQUF5QixXQUE3QixFQUEwQztBQUN4Q3ZCLFFBQUFBLGdCQUFnQixDQUFDYyxJQUFJLENBQUNPLE9BQU4sRUFBZUYsU0FBZixFQUEwQkMsQ0FBQyxHQUFHRCxTQUE5QixDQUFoQjtBQUNBQSxRQUFBQSxTQUFTLEdBQUdDLENBQUMsR0FBRyxDQUFoQjtBQUNEO0FBQ0YsS0FuQitCLENBcUJoQzs7O0FBQ0EsUUFBSUQsU0FBUyxHQUFHTCxJQUFJLENBQUNPLE9BQUwsQ0FBYUMsTUFBN0IsRUFBcUM7QUFDbkN0QixNQUFBQSxnQkFBZ0IsQ0FDZGMsSUFBSSxDQUFDTyxPQURTLEVBRWRGLFNBRmMsRUFHZEwsSUFBSSxDQUFDTyxPQUFMLENBQWFDLE1BQWIsR0FBc0JILFNBSFIsQ0FBaEI7QUFLRDtBQUNGOztBQUVESixFQUFBQSxJQUFJLENBQUNELElBQUwsQ0FBVVUsTUFBVjtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzb3J0TGFiZWxWYWx1ZShsYWJlbDogP3N0cmluZykge1xyXG4gIC8vIElnbm9yZSB0aGUgV2luZG93cyBhY2NlbGVyYXRvciBrZXkgaGludCB3aGVuIHNvcnRpbmcsIHRoZSAmIGRvZXNuJ3RcclxuICAvLyBhY3R1YWxseSBhcHBlYXIgaW4gdGhlIFVYIHNvIGl0IHNob3VsZG4ndCBhZmZlY3QgdGhlIHNvcnQuXHJcbiAgcmV0dXJuIFN0cmluZyhsYWJlbCkucmVwbGFjZSgnJicsICcnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNvcnRTdWJtZW51R3JvdXAoXHJcbiAgbWVudUl0ZW1zOiBBcnJheTx7XHJcbiAgICBsYWJlbDogc3RyaW5nLFxyXG4gIH0+LFxyXG4gIHN0YXJ0SW5kZXg6IG51bWJlcixcclxuICBpdGVtQ291bnQ6IG51bWJlcixcclxuKSB7XHJcbiAgLy8gU29ydCBhIHN1YnNldCBvZiB0aGUgaXRlbXMgaW4gdGhlIG1lbnUgb2YgbGVuZ3RoIGl0ZW1Db3VudCBiZWdpbm5pbmdcclxuICAvLyBhdCBzdGFydEluZGV4LlxyXG4gIGNvbnN0IGl0ZW1zVG9Tb3J0ID0gbWVudUl0ZW1zLnNwbGljZShzdGFydEluZGV4LCBpdGVtQ291bnQpO1xyXG4gIGl0ZW1zVG9Tb3J0LnNvcnQoKGEsIGIpID0+IHtcclxuICAgIC8vIEFsd2F5cyBwdXQgdGhlIFwiVmVyc2lvblwiIGxhYmVsIHVwIHRvcC5cclxuICAgIGlmIChzb3J0TGFiZWxWYWx1ZShhLmxhYmVsKS5zdGFydHNXaXRoKCdWZXJzaW9uJykpIHtcclxuICAgICAgcmV0dXJuIC0xO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHNvcnRMYWJlbFZhbHVlKGEubGFiZWwpLmxvY2FsZUNvbXBhcmUoc29ydExhYmVsVmFsdWUoYi5sYWJlbCkpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG5cclxuICBtZW51SXRlbXMuc3BsaWNlKHN0YXJ0SW5kZXgsIDAsIC4uLml0ZW1zVG9Tb3J0KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHNvcnRNZW51R3JvdXBzKG1lbnVOYW1lczogQXJyYXk8c3RyaW5nPikge1xyXG4gIGZvciAoY29uc3QgbWVudU5hbWUgb2YgbWVudU5hbWVzKSB7XHJcbiAgICAvLyBTb3J0cyB0aGUgaXRlbXMgaW4gYSBtZW51IGFscGhhYmV0aWNhbGx5LiBJZiB0aGUgbWVudSBjb250YWlucyBvbmUgb3IgbW9yZVxyXG4gICAgLy8gc2VwYXJhdG9ycywgdGhlbiB0aGUgaXRlbXMgd2l0aGluIGVhY2ggc2VwYXJhdG9yIHN1Ymdyb3VwIHdpbGwgYmUgc29ydGVkXHJcbiAgICAvLyB3aXRoIHJlc3BlY3QgdG8gZWFjaCBvdGhlciwgYnV0IGl0ZW1zIHdpbGwgcmVtYWluIGluIHRoZSBzYW1lIGdyb3VwcywgYW5kXHJcbiAgICAvLyB0aGUgc2VwYXJhdG9ycyB3aWxsIG5vdCBiZSBtb3ZlZC5cclxuICAgIGNvbnN0IG1lbnUgPSBhdG9tLm1lbnUudGVtcGxhdGUuZmluZChcclxuICAgICAgbSA9PiBzb3J0TGFiZWxWYWx1ZShtLmxhYmVsKSA9PT0gbWVudU5hbWUsXHJcbiAgICApO1xyXG4gICAgaWYgKG1lbnUgPT0gbnVsbCkge1xyXG4gICAgICBjb250aW51ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBTb3J0IGVhY2ggZ3JvdXAgb2YgaXRlbXMgKHNlcGFyYXRlZCBieSBhIHNlcGFyYXRvcikgaW5kaXZpZHVhbGx5LlxyXG4gICAgbGV0IHNvcnRTdGFydCA9IDA7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG1lbnUuc3VibWVudS5sZW5ndGg7IGkrKykge1xyXG4gICAgICBpZiAobWVudS5zdWJtZW51W2ldLnR5cGUgPT09ICdzZXBhcmF0b3InKSB7XHJcbiAgICAgICAgc29ydFN1Ym1lbnVHcm91cChtZW51LnN1Ym1lbnUsIHNvcnRTdGFydCwgaSAtIHNvcnRTdGFydCk7XHJcbiAgICAgICAgc29ydFN0YXJ0ID0gaSArIDE7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBTb3J0IGFueSByZW1haW5pbmcgaXRlbXMgYWZ0ZXIgdGhlIGxhc3Qgc2VwYXJhdG9yLlxyXG4gICAgaWYgKHNvcnRTdGFydCA8IG1lbnUuc3VibWVudS5sZW5ndGgpIHtcclxuICAgICAgc29ydFN1Ym1lbnVHcm91cChcclxuICAgICAgICBtZW51LnN1Ym1lbnUsXHJcbiAgICAgICAgc29ydFN0YXJ0LFxyXG4gICAgICAgIG1lbnUuc3VibWVudS5sZW5ndGggLSBzb3J0U3RhcnQsXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBhdG9tLm1lbnUudXBkYXRlKCk7XHJcbn1cclxuIl19 |
@@ -94,2 +94,2 @@ "use strict"; | ||
exports.default = Model; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL01vZGVsLmpzIl0sIm5hbWVzIjpbIk1vZGVsIiwiY29uc3RydWN0b3IiLCJpbml0aWFsU3RhdGUiLCJfc3RhdGVzIiwiQmVoYXZpb3JTdWJqZWN0Iiwic2V0U3RhdGUiLCJuZXdTdGF0ZSIsIm5leHRTdGF0ZSIsInN0YXRlIiwibmV4dCIsImdldFZhbHVlIiwic3Vic2NyaWJlIiwiY2IiLCJVbml2ZXJzYWxEaXNwb3NhYmxlIiwidG9PYnNlcnZhYmxlIiwiZGlzdGluY3RVbnRpbENoYW5nZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFjQTs7QUFDQTs7OztBQWZBOzs7Ozs7Ozs7Ozs7QUFpQkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFxQ2UsTUFBTUEsS0FBTixDQUF1QjtBQUdwQ0MsRUFBQUEsV0FBVyxDQUFDQyxZQUFELEVBQXNCO0FBQUEsU0FGakNDLE9BRWlDO0FBQy9CLFNBQUtBLE9BQUwsR0FBZSxJQUFJQyxpQ0FBSixDQUFvQkYsWUFBcEIsQ0FBZjtBQUNEOztBQUVERyxFQUFBQSxRQUFRLENBQUNDLFFBQUQsRUFBZ0M7QUFDdEMsVUFBTUMsU0FBUyxHQUFHLEVBQUMsR0FBRyxLQUFLQyxLQUFUO0FBQWdCLFNBQUdGO0FBQW5CLEtBQWxCOztBQUNBLFNBQUtILE9BQUwsQ0FBYU0sSUFBYixDQUFrQkYsU0FBbEI7QUFDRDs7QUFFRCxNQUFJQyxLQUFKLEdBQW1CO0FBQ2pCLFdBQU8sS0FBS0wsT0FBTCxDQUFhTyxRQUFiLEVBQVA7QUFDRDs7QUFFREMsRUFBQUEsU0FBUyxDQUFDQyxFQUFELEVBQTJDO0FBQ2xELFdBQU8sSUFBSUMsNEJBQUosQ0FBd0IsS0FBS0MsWUFBTCxHQUFvQkgsU0FBcEIsQ0FBOEI7QUFBQ0YsTUFBQUEsSUFBSSxFQUFFRztBQUFQLEtBQTlCLENBQXhCLENBQVA7QUFDRDs7QUFFREUsRUFBQUEsWUFBWSxHQUFzQjtBQUNoQyxXQUFPLEtBQUtYLE9BQUwsQ0FBYVksb0JBQWIsRUFBUDtBQUNEOztBQXRCbUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgdHlwZSB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcy1jb21wYXQvYnVuZGxlcy9yeGpzLWNvbXBhdC51bWQubWluLmpzJztcclxuXHJcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5pbXBvcnQgVW5pdmVyc2FsRGlzcG9zYWJsZSBmcm9tICcuL1VuaXZlcnNhbERpc3Bvc2FibGUnO1xyXG5cclxuLyoqXHJcbiAqIEV4cG9zZXMgYSBzaW1wbGUgQVBJIGZvciBhIHN0YXRlZnVsIG1vZGVsLiBUaGlzIGlzIHNpbWlsYXIgdG8gUmVhY3QncyBgc3RhdGVgL2BzZXRTdGF0ZSgpYCBBUElcclxuICogZXhjZXB0IGFjaGlldmVkIHZpYSBjb21wb3NpdGlvbiBhbmQgZWFzaWx5IGNvbnZlcnRpYmxlIHRvIG9ic2VydmFibGVzIHNvIHlvdSBjYW4gZG8gYXdlc29tZVxyXG4gKiBzdHVmZi4gSXQncyByZWFsbHkgYSBzdXBlci10aGluIHdyYXBwZXIgYXJvdW5kIGBCZWhhdmlvclN1YmplY3RgOyB3cmFwcGluZyBgQmVoYXZpb3JTdWJqZWN0YFxyXG4gKiBpbnN0ZWFkIG9mIGV4dGVuZGluZyBpdCB3YXMgZG9uZSB0byBtaW5pbWl6ZSB0aGUgQVBJIHN1cmZhY2UgYXJlYS4gSWRlYWxseSwgdGhpcyB3b3VsZCBpbXBsZW1lbnRcclxuICogYFN5bWJvbC5vYnNlcnZhYmxlYCBpbnN0ZWFkIG9mIGhhdmluZyBhIGB0b09ic2VydmFibGUoKWAgbWV0aG9kLCBidXQgc2luY2UgRmxvdyBkb2Vzbid0XHJcbiAqIHVuZGVyc3RhbmQgdGhhdCwgaXQgY2F1c2VzIG1vcmUgdHJvdWJsZSB0aGFuIGl0J3Mgd29ydGguXHJcbiAqXHJcbiAqIFdoaWxlIHlvdSBjYW4gZXh0ZW5kIHRoaXMgY2xhc3MsIGNvbXBvc2l0aW9uIGlzIHJlY29tbWVuZGVkLlxyXG4gKlxyXG4gKiBFeGFtcGxlOlxyXG4gKlxyXG4gKiAgICAgY2xhc3MgTXlUaGluZyB7XHJcbiAqICAgICAgIF9tb2RlbCA9IG5ldyBNb2RlbCh7Y291bnQ6IDB9KTtcclxuICogICAgICAgaW5jcmVtZW50KCk6IHZvaWQge1xyXG4gKiAgICAgICAgIGNvbnN0IHtjb3VudH0gPSB0aGlzLl9tb2RlbC5zdGF0ZTtcclxuICogICAgICAgICB0aGlzLl9tb2RlbC5zZXRTdGF0ZSh7Y291bnQ6IGNvdW50ICsgMX0pO1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9XHJcbiAqXHJcbiAqIEJFU1QgUFJBQ1RJQ0VTXHJcbiAqXHJcbiAqIERvbid0IHBhc3MgeW91ciBtb2RlbCBpbnN0YW5jZSBhcm91bmQhIEluc3RlYWQsIGNyZWF0ZSBhIG5ldyBvYmplY3Qgd2l0aCB0aGUgcHJvcGVydGllcyB5b3Ugd2FudFxyXG4gKiBhbmQgZXhwbGljaXQgc2V0dGVyczpcclxuICpcclxuICogICAgIGNvbnN0IHByb3BzID0ge1xyXG4gKiAgICAgICBjb3VudDogbW9kZWwuc3RhdGUuY291bnQsXHJcbiAqICAgICAgIGluY3JlbWVudDogKCkgPT4ge1xyXG4gKiAgICAgICAgIGNvbnN0IHtjb3VudH0gPSBtb2RlbC5zdGF0ZTtcclxuICogICAgICAgICBtb2RlbC5zZXRTdGF0ZSh7Y291bnQ6IGNvdW50ICsgMX0pXHJcbiAqICAgICAgIH0sXHJcbiAqICAgICB9O1xyXG4gKlxyXG4gKiBZb3UnbGwgbm90aWNlIHRoYXQgdGhpcyBpcyB2ZXJ5IHNpbWlsYXIgdG8gRmx1eC9SZWR1eCwgd2l0aCB0aGUgc2V0dGVycyBjb3JyZXNwb25kaW5nIHRvIGJvdW5kXHJcbiAqIGFjdGlvbiBjcmVhdG9ycy4gVGhhdCdzIGF3ZXNvbWUhIEl0IG1lYW5zIHRoYXQsIHNob3VsZCB0aGUgc3RhdGUgZ3JvdyBhbmQgcmVxdWlyZSBuZXdcclxuICogY2FwYWJpbGl0aWVzLCB3ZSBjYW4gYWx3YXlzIHN3aXRjaCB0byBmdWxsLWJsb3duIFJlZHV4IHdpdGhvdXQgaGF2aW5nIHRvIHJlZmFjdG9yIGEgdG9uIG9mIHN0dWZmLlxyXG4gKi9cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTW9kZWw8U3RhdGU6IHt9PiB7XHJcbiAgX3N0YXRlczogQmVoYXZpb3JTdWJqZWN0PFN0YXRlPjtcclxuXHJcbiAgY29uc3RydWN0b3IoaW5pdGlhbFN0YXRlOiBTdGF0ZSkge1xyXG4gICAgdGhpcy5fc3RhdGVzID0gbmV3IEJlaGF2aW9yU3ViamVjdChpbml0aWFsU3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgc2V0U3RhdGUobmV3U3RhdGU6ICRTaGFwZTxTdGF0ZT4pOiB2b2lkIHtcclxuICAgIGNvbnN0IG5leHRTdGF0ZSA9IHsuLi50aGlzLnN0YXRlLCAuLi5uZXdTdGF0ZX07XHJcbiAgICB0aGlzLl9zdGF0ZXMubmV4dChuZXh0U3RhdGUpO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHN0YXRlKCk6IFN0YXRlIHtcclxuICAgIHJldHVybiB0aGlzLl9zdGF0ZXMuZ2V0VmFsdWUoKTtcclxuICB9XHJcblxyXG4gIHN1YnNjcmliZShjYjogKHN0YXRlOiBTdGF0ZSkgPT4gbWl4ZWQpOiBJRGlzcG9zYWJsZSB7XHJcbiAgICByZXR1cm4gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUodGhpcy50b09ic2VydmFibGUoKS5zdWJzY3JpYmUoe25leHQ6IGNifSkpO1xyXG4gIH1cclxuXHJcbiAgdG9PYnNlcnZhYmxlKCk6IE9ic2VydmFibGU8U3RhdGU+IHtcclxuICAgIHJldHVybiB0aGlzLl9zdGF0ZXMuZGlzdGluY3RVbnRpbENoYW5nZWQoKTtcclxuICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL01vZGVsLmpzIl0sIm5hbWVzIjpbIk1vZGVsIiwiY29uc3RydWN0b3IiLCJpbml0aWFsU3RhdGUiLCJfc3RhdGVzIiwiQmVoYXZpb3JTdWJqZWN0Iiwic2V0U3RhdGUiLCJuZXdTdGF0ZSIsIm5leHRTdGF0ZSIsInN0YXRlIiwibmV4dCIsImdldFZhbHVlIiwic3Vic2NyaWJlIiwiY2IiLCJVbml2ZXJzYWxEaXNwb3NhYmxlIiwidG9PYnNlcnZhYmxlIiwiZGlzdGluY3RVbnRpbENoYW5nZWQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFjQTs7QUFDQTs7OztBQWZBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBT0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDZSxNQUFNQSxLQUFOLENBQXVCO0FBR3BDQyxFQUFBQSxXQUFXLENBQUNDLFlBQUQsRUFBc0I7QUFBQSxTQUZqQ0MsT0FFaUM7QUFDL0IsU0FBS0EsT0FBTCxHQUFlLElBQUlDLGlDQUFKLENBQW9CRixZQUFwQixDQUFmO0FBQ0Q7O0FBRURHLEVBQUFBLFFBQVEsQ0FBQ0MsUUFBRCxFQUFnQztBQUN0QyxVQUFNQyxTQUFTLEdBQUcsRUFBQyxHQUFHLEtBQUtDLEtBQVQ7QUFBZ0IsU0FBR0Y7QUFBbkIsS0FBbEI7O0FBQ0EsU0FBS0gsT0FBTCxDQUFhTSxJQUFiLENBQWtCRixTQUFsQjtBQUNEOztBQUVRLE1BQUxDLEtBQUssR0FBVTtBQUNqQixXQUFPLEtBQUtMLE9BQUwsQ0FBYU8sUUFBYixFQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLFNBQVMsQ0FBQ0MsRUFBRCxFQUEyQztBQUNsRCxXQUFPLElBQUlDLDRCQUFKLENBQXdCLEtBQUtDLFlBQUwsR0FBb0JILFNBQXBCLENBQThCO0FBQUNGLE1BQUFBLElBQUksRUFBRUc7QUFBUCxLQUE5QixDQUF4QixDQUFQO0FBQ0Q7O0FBRURFLEVBQUFBLFlBQVksR0FBc0I7QUFDaEMsV0FBTyxLQUFLWCxPQUFMLENBQWFZLG9CQUFiLEVBQVA7QUFDRDs7QUF0Qm1DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHR5cGUge09ic2VydmFibGV9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSAncnhqcy1jb21wYXQvYnVuZGxlcy9yeGpzLWNvbXBhdC51bWQubWluLmpzJztcclxuaW1wb3J0IFVuaXZlcnNhbERpc3Bvc2FibGUgZnJvbSAnLi9Vbml2ZXJzYWxEaXNwb3NhYmxlJztcclxuXHJcbi8qKlxyXG4gKiBFeHBvc2VzIGEgc2ltcGxlIEFQSSBmb3IgYSBzdGF0ZWZ1bCBtb2RlbC4gVGhpcyBpcyBzaW1pbGFyIHRvIFJlYWN0J3MgYHN0YXRlYC9gc2V0U3RhdGUoKWAgQVBJXHJcbiAqIGV4Y2VwdCBhY2hpZXZlZCB2aWEgY29tcG9zaXRpb24gYW5kIGVhc2lseSBjb252ZXJ0aWJsZSB0byBvYnNlcnZhYmxlcyBzbyB5b3UgY2FuIGRvIGF3ZXNvbWVcclxuICogc3R1ZmYuIEl0J3MgcmVhbGx5IGEgc3VwZXItdGhpbiB3cmFwcGVyIGFyb3VuZCBgQmVoYXZpb3JTdWJqZWN0YDsgd3JhcHBpbmcgYEJlaGF2aW9yU3ViamVjdGBcclxuICogaW5zdGVhZCBvZiBleHRlbmRpbmcgaXQgd2FzIGRvbmUgdG8gbWluaW1pemUgdGhlIEFQSSBzdXJmYWNlIGFyZWEuIElkZWFsbHksIHRoaXMgd291bGQgaW1wbGVtZW50XHJcbiAqIGBTeW1ib2wub2JzZXJ2YWJsZWAgaW5zdGVhZCBvZiBoYXZpbmcgYSBgdG9PYnNlcnZhYmxlKClgIG1ldGhvZCwgYnV0IHNpbmNlIEZsb3cgZG9lc24ndFxyXG4gKiB1bmRlcnN0YW5kIHRoYXQsIGl0IGNhdXNlcyBtb3JlIHRyb3VibGUgdGhhbiBpdCdzIHdvcnRoLlxyXG4gKlxyXG4gKiBXaGlsZSB5b3UgY2FuIGV4dGVuZCB0aGlzIGNsYXNzLCBjb21wb3NpdGlvbiBpcyByZWNvbW1lbmRlZC5cclxuICpcclxuICogRXhhbXBsZTpcclxuICpcclxuICogICAgIGNsYXNzIE15VGhpbmcge1xyXG4gKiAgICAgICBfbW9kZWwgPSBuZXcgTW9kZWwoe2NvdW50OiAwfSk7XHJcbiAqICAgICAgIGluY3JlbWVudCgpOiB2b2lkIHtcclxuICogICAgICAgICBjb25zdCB7Y291bnR9ID0gdGhpcy5fbW9kZWwuc3RhdGU7XHJcbiAqICAgICAgICAgdGhpcy5fbW9kZWwuc2V0U3RhdGUoe2NvdW50OiBjb3VudCArIDF9KTtcclxuICogICAgICAgfVxyXG4gKiAgICAgfVxyXG4gKlxyXG4gKiBCRVNUIFBSQUNUSUNFU1xyXG4gKlxyXG4gKiBEb24ndCBwYXNzIHlvdXIgbW9kZWwgaW5zdGFuY2UgYXJvdW5kISBJbnN0ZWFkLCBjcmVhdGUgYSBuZXcgb2JqZWN0IHdpdGggdGhlIHByb3BlcnRpZXMgeW91IHdhbnRcclxuICogYW5kIGV4cGxpY2l0IHNldHRlcnM6XHJcbiAqXHJcbiAqICAgICBjb25zdCBwcm9wcyA9IHtcclxuICogICAgICAgY291bnQ6IG1vZGVsLnN0YXRlLmNvdW50LFxyXG4gKiAgICAgICBpbmNyZW1lbnQ6ICgpID0+IHtcclxuICogICAgICAgICBjb25zdCB7Y291bnR9ID0gbW9kZWwuc3RhdGU7XHJcbiAqICAgICAgICAgbW9kZWwuc2V0U3RhdGUoe2NvdW50OiBjb3VudCArIDF9KVxyXG4gKiAgICAgICB9LFxyXG4gKiAgICAgfTtcclxuICpcclxuICogWW91J2xsIG5vdGljZSB0aGF0IHRoaXMgaXMgdmVyeSBzaW1pbGFyIHRvIEZsdXgvUmVkdXgsIHdpdGggdGhlIHNldHRlcnMgY29ycmVzcG9uZGluZyB0byBib3VuZFxyXG4gKiBhY3Rpb24gY3JlYXRvcnMuIFRoYXQncyBhd2Vzb21lISBJdCBtZWFucyB0aGF0LCBzaG91bGQgdGhlIHN0YXRlIGdyb3cgYW5kIHJlcXVpcmUgbmV3XHJcbiAqIGNhcGFiaWxpdGllcywgd2UgY2FuIGFsd2F5cyBzd2l0Y2ggdG8gZnVsbC1ibG93biBSZWR1eCB3aXRob3V0IGhhdmluZyB0byByZWZhY3RvciBhIHRvbiBvZiBzdHVmZi5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE1vZGVsPFN0YXRlOiB7fT4ge1xyXG4gIF9zdGF0ZXM6IEJlaGF2aW9yU3ViamVjdDxTdGF0ZT47XHJcblxyXG4gIGNvbnN0cnVjdG9yKGluaXRpYWxTdGF0ZTogU3RhdGUpIHtcclxuICAgIHRoaXMuX3N0YXRlcyA9IG5ldyBCZWhhdmlvclN1YmplY3QoaW5pdGlhbFN0YXRlKTtcclxuICB9XHJcblxyXG4gIHNldFN0YXRlKG5ld1N0YXRlOiAkU2hhcGU8U3RhdGU+KTogdm9pZCB7XHJcbiAgICBjb25zdCBuZXh0U3RhdGUgPSB7Li4udGhpcy5zdGF0ZSwgLi4ubmV3U3RhdGV9O1xyXG4gICAgdGhpcy5fc3RhdGVzLm5leHQobmV4dFN0YXRlKTtcclxuICB9XHJcblxyXG4gIGdldCBzdGF0ZSgpOiBTdGF0ZSB7XHJcbiAgICByZXR1cm4gdGhpcy5fc3RhdGVzLmdldFZhbHVlKCk7XHJcbiAgfVxyXG5cclxuICBzdWJzY3JpYmUoY2I6IChzdGF0ZTogU3RhdGUpID0+IG1peGVkKTogSURpc3Bvc2FibGUge1xyXG4gICAgcmV0dXJuIG5ldyBVbml2ZXJzYWxEaXNwb3NhYmxlKHRoaXMudG9PYnNlcnZhYmxlKCkuc3Vic2NyaWJlKHtuZXh0OiBjYn0pKTtcclxuICB9XHJcblxyXG4gIHRvT2JzZXJ2YWJsZSgpOiBPYnNlcnZhYmxlPFN0YXRlPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fc3RhdGVzLmRpc3RpbmN0VW50aWxDaGFuZ2VkKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ== |
@@ -109,2 +109,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL25pY2UuanMiXSwibmFtZXMiOlsiTklDRV9DT01NQU5EIiwiSU9OSUNFX0NPTU1BTkQiLCJuaWNlU2FmZVNwYXduIiwiY29tbWFuZCIsImFyZ3MiLCJleGVjT3B0aW9ucyIsIm5pY2lmaWVkIiwibmljaWZ5Q29tbWFuZCIsInByb2Nlc3NTdHJlYW0iLCJwdWJsaXNoIiwicHJvY2Vzc1Byb21pc2UiLCJ0YWtlIiwidG9Qcm9taXNlIiwiY29ubmVjdCIsIm9wdGlvbnMiLCJmdWxsQXJncyIsImhhc05pY2VDb21tYW5kIiwidW5zaGlmdCIsImhhc0lvbmljZUNvbW1hbmQiLCJzbGljZSIsImNvbW1hbmRBdmFpbGFiaWxpdHlDYWNoZSIsIm1heCIsIm1heEFnZSIsImhhc0NvbW1hbmQiLCJyZXN1bHQiLCJnZXQiLCJ0aGVuIiwieCIsInNldCIsIm5pY2VPYnNlcnZlUHJvY2VzcyIsIk9ic2VydmFibGUiLCJkZWZlciIsInN3aXRjaE1hcCIsInNwYXduQXJncyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFlQTs7QUFDQTs7QUFFQTs7QUFDQTs7OztBQW5CQTs7Ozs7Ozs7Ozs7QUFxQkEsTUFBTUEsWUFBWSxHQUFHLE1BQXJCO0FBQ0EsTUFBTUMsY0FBYyxHQUFHLFFBQXZCOztBQUVPLGVBQWVDLGFBQWYsQ0FDTEMsT0FESyxFQUVMQyxJQUZLLEVBR0xDLFdBSEssRUFJZ0M7QUFDckMsUUFBTUMsUUFBUSxHQUFHLE1BQU1DLGFBQWEsQ0FBQ0osT0FBRCxFQUFVQyxJQUFWLEVBQWdCQyxXQUFoQixDQUFwQztBQUNBLFFBQU1HLGFBQWEsR0FBRyxvQkFBTSxHQUFHRixRQUFULEVBQW1CRyxPQUFuQixFQUF0QjtBQUNBLFFBQU1DLGNBQWMsR0FBR0YsYUFBYSxDQUFDRyxJQUFkLENBQW1CLENBQW5CLEVBQXNCQyxTQUF0QixFQUF2QjtBQUNBSixFQUFBQSxhQUFhLENBQUNLLE9BQWQ7QUFDQSxTQUFPSCxjQUFQO0FBQ0Q7QUFFRDs7Ozs7Ozs7Ozs7Ozs7QUFZQSxlQUFlSCxhQUFmLENBQ0VKLE9BREYsRUFFRUMsSUFGRixFQUdFVSxPQUhGLEVBSXVDO0FBQ3JDLFFBQU1DLFFBQVEsR0FBRyxDQUFDWixPQUFELEVBQVUsSUFBSUMsSUFBSSxJQUFJLEVBQVosQ0FBVixDQUFqQjs7QUFDQSxNQUFJLE1BQU1ZLGNBQWMsRUFBeEIsRUFBNEI7QUFDMUJELElBQUFBLFFBQVEsQ0FBQ0UsT0FBVCxDQUFpQmpCLFlBQWpCO0FBQ0Q7O0FBQ0QsTUFBSSxNQUFNa0IsZ0JBQWdCLEVBQTFCLEVBQThCO0FBQzVCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0FILElBQUFBLFFBQVEsQ0FBQ0UsT0FBVCxDQUFpQmhCLGNBQWpCLEVBQWlDLElBQWpDLEVBQXVDLEdBQXZDO0FBQ0Q7O0FBQ0QsU0FBTyxDQUFDYyxRQUFRLENBQUMsQ0FBRCxDQUFULEVBQWNBLFFBQVEsQ0FBQ0ksS0FBVCxDQUFlLENBQWYsQ0FBZCxFQUFpQ0wsT0FBakMsQ0FBUDtBQUNEOztBQUVELE1BQU1NLHdCQUE0RCxHQUFHLHVCQUFJO0FBQ3ZFQyxFQUFBQSxHQUFHLEVBQUUsRUFEa0U7QUFFdkU7QUFDQTtBQUNBO0FBQ0FDLEVBQUFBLE1BQU0sRUFBRSxPQUFPLEVBQVAsR0FBWSxDQUxtRCxDQUtoRDs7QUFMZ0QsQ0FBSixDQUFyRTs7QUFRQSxTQUFTTixjQUFULEdBQTRDO0FBQzFDLFNBQU9PLFVBQVUsQ0FBQ3ZCLFlBQUQsQ0FBakI7QUFDRDs7QUFFRCxTQUFTa0IsZ0JBQVQsR0FBOEM7QUFDNUMsU0FBT0ssVUFBVSxDQUFDdEIsY0FBRCxDQUFqQjtBQUNEOztBQUVELFNBQVNzQixVQUFULENBQW9CcEIsT0FBcEIsRUFBdUQ7QUFDckQsTUFBSXFCLE1BQXlCLEdBQUdKLHdCQUF3QixDQUFDSyxHQUF6QixDQUE2QnRCLE9BQTdCLENBQWhDOztBQUNBLE1BQUlxQixNQUFNLElBQUksSUFBZCxFQUFvQjtBQUNsQkEsSUFBQUEsTUFBTSxHQUFHLG9CQUFNckIsT0FBTixFQUFldUIsSUFBZixDQUFvQkMsQ0FBQyxJQUFJQSxDQUFDLElBQUksSUFBOUIsQ0FBVDtBQUNBUCxJQUFBQSx3QkFBd0IsQ0FBQ1EsR0FBekIsQ0FBNkJ6QixPQUE3QixFQUFzQ3FCLE1BQXRDO0FBQ0Q7O0FBQ0QsU0FBT0EsTUFBUDtBQUNEOztBQUVNLFNBQVNLLGtCQUFULENBQ0wxQixPQURLLEVBRUxDLElBRkssRUFHTFUsT0FISyxFQUl1QjtBQUM1QixTQUFPZ0IsNkJBQVdDLEtBQVgsQ0FBaUIsTUFDdEJ4QixhQUFhLENBQUNKLE9BQUQsRUFBVUMsSUFBVixFQUFnQlUsT0FBaEIsQ0FEUixFQUVMa0IsU0FGSyxDQUVLQyxTQUFTLElBQUksNkJBQWUsR0FBR0EsU0FBbEIsQ0FGbEIsQ0FBUDtBQUdEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHR5cGUge0xSVUNhY2hlfSBmcm9tICdscnUtY2FjaGUnO1xyXG5pbXBvcnQgdHlwZSB7T2JzZXJ2ZVByb2Nlc3NPcHRpb25zLCBQcm9jZXNzTWVzc2FnZX0gZnJvbSAnLi9wcm9jZXNzJztcclxuXHJcbmltcG9ydCBMUlUgZnJvbSAnbHJ1LWNhY2hlJztcclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuaW1wb3J0IHdoaWNoIGZyb20gJy4vd2hpY2gnO1xyXG5pbXBvcnQge3NwYXduLCBvYnNlcnZlUHJvY2Vzc30gZnJvbSAnLi9wcm9jZXNzJztcclxuXHJcbmNvbnN0IE5JQ0VfQ09NTUFORCA9ICduaWNlJztcclxuY29uc3QgSU9OSUNFX0NPTU1BTkQgPSAnaW9uaWNlJztcclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBuaWNlU2FmZVNwYXduKFxyXG4gIGNvbW1hbmQ6IHN0cmluZyxcclxuICBhcmdzOiBBcnJheTxzdHJpbmc+LFxyXG4gIGV4ZWNPcHRpb25zPzogT2JqZWN0LFxyXG4pOiBQcm9taXNlPGNoaWxkX3Byb2Nlc3MkQ2hpbGRQcm9jZXNzPiB7XHJcbiAgY29uc3QgbmljaWZpZWQgPSBhd2FpdCBuaWNpZnlDb21tYW5kKGNvbW1hbmQsIGFyZ3MsIGV4ZWNPcHRpb25zKTtcclxuICBjb25zdCBwcm9jZXNzU3RyZWFtID0gc3Bhd24oLi4ubmljaWZpZWQpLnB1Ymxpc2goKTtcclxuICBjb25zdCBwcm9jZXNzUHJvbWlzZSA9IHByb2Nlc3NTdHJlYW0udGFrZSgxKS50b1Byb21pc2UoKTtcclxuICBwcm9jZXNzU3RyZWFtLmNvbm5lY3QoKTtcclxuICByZXR1cm4gcHJvY2Vzc1Byb21pc2U7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUYWtlcyB0aGUgYXJndW1lbnRzIHRoYXQgeW91IHdvdWxkIG5vcm1hbGx5IHBhc3MgdG8gYHNwYXduKClgIGFuZCByZXR1cm5zIGFuIGFycmF5IG9mIG5ld1xyXG4gKiBhcmd1bWVudHMgdG8gdXNlIHRvIHJ1biB0aGUgY29tbWFuZCB1bmRlciBgbmljZWAuXHJcbiAqXHJcbiAqIEV4YW1wbGU6XHJcbiAqXHJcbiAqIGBgYGpzXHJcbiAqIG9ic2VydmVQcm9jZXNzKC4uLihhd2FpdCBuaWNpZnlDb21tYW5kKCdoZycsIFsnZGlmZiddKSkpLnN1YnNjcmliZSguLi4pO1xyXG4gKiBgYGBcclxuICpcclxuICogU2VlIGFsc28gYHNjcmlwdGlmeUNvbW1hbmQoKWAgd2hpY2ggZG9lcyBhIHNpbWlsYXIgdGhpbmcgYnV0IGZvciBgc2NyaXB0YC5cclxuICovXHJcbmFzeW5jIGZ1bmN0aW9uIG5pY2lmeUNvbW1hbmQ8VD4oXHJcbiAgY29tbWFuZDogc3RyaW5nLFxyXG4gIGFyZ3M/OiBBcnJheTxzdHJpbmc+LFxyXG4gIG9wdGlvbnM6IFQsXHJcbik6IFByb21pc2U8W3N0cmluZywgQXJyYXk8c3RyaW5nPiwgVF0+IHtcclxuICBjb25zdCBmdWxsQXJncyA9IFtjb21tYW5kLCAuLi4oYXJncyB8fCBbXSldO1xyXG4gIGlmIChhd2FpdCBoYXNOaWNlQ29tbWFuZCgpKSB7XHJcbiAgICBmdWxsQXJncy51bnNoaWZ0KE5JQ0VfQ09NTUFORCk7XHJcbiAgfVxyXG4gIGlmIChhd2FpdCBoYXNJb25pY2VDb21tYW5kKCkpIHtcclxuICAgIC8vIExlYXZlIHRoZSBwcm9jZXNzIGluIHRoZSBCZXN0IEVmZm9ydCBjbGFzcyAoZGVmYXVsdCksIGJ1dCBzZXQgaXQgdG8gdGhlIGxvd2VzdCBwcmlvcml0eSBmb3JcclxuICAgIC8vIHRoYXQgY2xhc3MuIFByaW9yaXRpZXMgcmFuZ2UgZnJvbSAwLTcgd2l0aCA0IGFzIHRoZSBkZWZhdWx0IGFuZCBsb3dlciBudW1iZXJzIHJlcHJlc2VudGluZ1xyXG4gICAgLy8gaGlnaGVyIHByaW9yaXRpZXMuXHJcbiAgICAvL1xyXG4gICAgLy8gU2VlIGBtYW4gaW9uaWNlYCBvciBodHRwOi8vbGludXguZGllLm5ldC9tYW4vMS9pb25pY2VcclxuICAgIC8vXHJcbiAgICAvLyBJdCdzIG5vdCBzcGVjaWZpZWQgYnkgUE9TSVggbGlrZSBgbmljZWAgaXMgYnV0IHNpbmNlIGl0IGlzIGluY2x1ZGVkIGluIHV0aWwtbGludXggd2hpY2ggaXNcclxuICAgIC8vIHJlbGF0aXZlbHkgY29yZVxyXG4gICAgLy8gKGh0dHBzOi8vZ2l0Lmtlcm5lbC5vcmcvY2dpdC91dGlscy91dGlsLWxpbnV4L3V0aWwtbGludXguZ2l0L3RyZWUvc2NoZWR1dGlscy9pb25pY2UuYyksIElcclxuICAgIC8vIHRoaW5rIHdlIGNhbiBhc3N1bWUgdGhhdCBpdCB1c2VzIHRoaXMgaW50ZXJmYWNlIGlmIGl0IGV4aXN0cy5cclxuICAgIGZ1bGxBcmdzLnVuc2hpZnQoSU9OSUNFX0NPTU1BTkQsICctbicsICc3Jyk7XHJcbiAgfVxyXG4gIHJldHVybiBbZnVsbEFyZ3NbMF0sIGZ1bGxBcmdzLnNsaWNlKDEpLCBvcHRpb25zXTtcclxufVxyXG5cclxuY29uc3QgY29tbWFuZEF2YWlsYWJpbGl0eUNhY2hlOiBMUlVDYWNoZTxzdHJpbmcsIFByb21pc2U8Ym9vbGVhbj4+ID0gTFJVKHtcclxuICBtYXg6IDEwLFxyXG4gIC8vIFJlYWxpc3RpY2FsbHkgdGhpcyB3aWxsIG5vdCBjaGFuZ2UgdmVyeSBvZnRlbiBzbyB3ZSBjYW4gY2FjaGUgZm9yIGxvbmcgcGVyaW9kcyBvZiB0aW1lLiBXZVxyXG4gIC8vIHByb2JhYmx5IGNvdWxkIGp1c3QgY2hlY2sgYXQgc3RhcnR1cCBhbmQgZ2V0IGF3YXkgd2l0aCBpdCwgYnV0IG1heWJlIHNvbWVvbmUgd2lsbCBpbnN0YWxsXHJcbiAgLy8gYGlvbmljZWAgYW5kIGl0IHdvdWxkIGJlIG5pY2UgdG8gcGljayB0aGF0IHVwLlxyXG4gIG1heEFnZTogMTAwMCAqIDYwICogNSwgLy8gNSBtaW51dGVzXHJcbn0pO1xyXG5cclxuZnVuY3Rpb24gaGFzTmljZUNvbW1hbmQoKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgcmV0dXJuIGhhc0NvbW1hbmQoTklDRV9DT01NQU5EKTtcclxufVxyXG5cclxuZnVuY3Rpb24gaGFzSW9uaWNlQ29tbWFuZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICByZXR1cm4gaGFzQ29tbWFuZChJT05JQ0VfQ09NTUFORCk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGhhc0NvbW1hbmQoY29tbWFuZDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgbGV0IHJlc3VsdDogP1Byb21pc2U8Ym9vbGVhbj4gPSBjb21tYW5kQXZhaWxhYmlsaXR5Q2FjaGUuZ2V0KGNvbW1hbmQpO1xyXG4gIGlmIChyZXN1bHQgPT0gbnVsbCkge1xyXG4gICAgcmVzdWx0ID0gd2hpY2goY29tbWFuZCkudGhlbih4ID0+IHggIT0gbnVsbCk7XHJcbiAgICBjb21tYW5kQXZhaWxhYmlsaXR5Q2FjaGUuc2V0KGNvbW1hbmQsIHJlc3VsdCk7XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBuaWNlT2JzZXJ2ZVByb2Nlc3MoXHJcbiAgY29tbWFuZDogc3RyaW5nLFxyXG4gIGFyZ3M/OiBBcnJheTxzdHJpbmc+LFxyXG4gIG9wdGlvbnM/OiBPYnNlcnZlUHJvY2Vzc09wdGlvbnMsXHJcbik6IE9ic2VydmFibGU8UHJvY2Vzc01lc3NhZ2U+IHtcclxuICByZXR1cm4gT2JzZXJ2YWJsZS5kZWZlcigoKSA9PlxyXG4gICAgbmljaWZ5Q29tbWFuZChjb21tYW5kLCBhcmdzLCBvcHRpb25zKSxcclxuICApLnN3aXRjaE1hcChzcGF3bkFyZ3MgPT4gb2JzZXJ2ZVByb2Nlc3MoLi4uc3Bhd25BcmdzKSk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL25pY2UuanMiXSwibmFtZXMiOlsiTklDRV9DT01NQU5EIiwiSU9OSUNFX0NPTU1BTkQiLCJuaWNlU2FmZVNwYXduIiwiY29tbWFuZCIsImFyZ3MiLCJleGVjT3B0aW9ucyIsIm5pY2lmaWVkIiwibmljaWZ5Q29tbWFuZCIsInByb2Nlc3NTdHJlYW0iLCJwdWJsaXNoIiwicHJvY2Vzc1Byb21pc2UiLCJ0YWtlIiwidG9Qcm9taXNlIiwiY29ubmVjdCIsIm9wdGlvbnMiLCJmdWxsQXJncyIsImhhc05pY2VDb21tYW5kIiwidW5zaGlmdCIsImhhc0lvbmljZUNvbW1hbmQiLCJzbGljZSIsImNvbW1hbmRBdmFpbGFiaWxpdHlDYWNoZSIsIm1heCIsIm1heEFnZSIsImhhc0NvbW1hbmQiLCJyZXN1bHQiLCJnZXQiLCJ0aGVuIiwieCIsInNldCIsIm5pY2VPYnNlcnZlUHJvY2VzcyIsIk9ic2VydmFibGUiLCJkZWZlciIsInN3aXRjaE1hcCIsInNwYXduQXJncyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFlQTs7QUFDQTs7QUFFQTs7QUFDQTs7OztBQW5CQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBV0EsTUFBTUEsWUFBWSxHQUFHLE1BQXJCO0FBQ0EsTUFBTUMsY0FBYyxHQUFHLFFBQXZCOztBQUVPLGVBQWVDLGFBQWYsQ0FDTEMsT0FESyxFQUVMQyxJQUZLLEVBR0xDLFdBSEssRUFJZ0M7QUFDckMsUUFBTUMsUUFBUSxHQUFHLE1BQU1DLGFBQWEsQ0FBQ0osT0FBRCxFQUFVQyxJQUFWLEVBQWdCQyxXQUFoQixDQUFwQztBQUNBLFFBQU1HLGFBQWEsR0FBRyxvQkFBTSxHQUFHRixRQUFULEVBQW1CRyxPQUFuQixFQUF0QjtBQUNBLFFBQU1DLGNBQWMsR0FBR0YsYUFBYSxDQUFDRyxJQUFkLENBQW1CLENBQW5CLEVBQXNCQyxTQUF0QixFQUF2QjtBQUNBSixFQUFBQSxhQUFhLENBQUNLLE9BQWQ7QUFDQSxTQUFPSCxjQUFQO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNBLGVBQWVILGFBQWYsQ0FDRUosT0FERixFQUVFQyxJQUZGLEVBR0VVLE9BSEYsRUFJdUM7QUFDckMsUUFBTUMsUUFBUSxHQUFHLENBQUNaLE9BQUQsRUFBVSxJQUFJQyxJQUFJLElBQUksRUFBWixDQUFWLENBQWpCOztBQUNBLE1BQUksTUFBTVksY0FBYyxFQUF4QixFQUE0QjtBQUMxQkQsSUFBQUEsUUFBUSxDQUFDRSxPQUFULENBQWlCakIsWUFBakI7QUFDRDs7QUFDRCxNQUFJLE1BQU1rQixnQkFBZ0IsRUFBMUIsRUFBOEI7QUFDNUI7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQUgsSUFBQUEsUUFBUSxDQUFDRSxPQUFULENBQWlCaEIsY0FBakIsRUFBaUMsSUFBakMsRUFBdUMsR0FBdkM7QUFDRDs7QUFDRCxTQUFPLENBQUNjLFFBQVEsQ0FBQyxDQUFELENBQVQsRUFBY0EsUUFBUSxDQUFDSSxLQUFULENBQWUsQ0FBZixDQUFkLEVBQWlDTCxPQUFqQyxDQUFQO0FBQ0Q7O0FBRUQsTUFBTU0sd0JBQTRELEdBQUcsdUJBQUk7QUFDdkVDLEVBQUFBLEdBQUcsRUFBRSxFQURrRTtBQUV2RTtBQUNBO0FBQ0E7QUFDQUMsRUFBQUEsTUFBTSxFQUFFLE9BQU8sRUFBUCxHQUFZLENBTG1ELENBS2hEOztBQUxnRCxDQUFKLENBQXJFOztBQVFBLFNBQVNOLGNBQVQsR0FBNEM7QUFDMUMsU0FBT08sVUFBVSxDQUFDdkIsWUFBRCxDQUFqQjtBQUNEOztBQUVELFNBQVNrQixnQkFBVCxHQUE4QztBQUM1QyxTQUFPSyxVQUFVLENBQUN0QixjQUFELENBQWpCO0FBQ0Q7O0FBRUQsU0FBU3NCLFVBQVQsQ0FBb0JwQixPQUFwQixFQUF1RDtBQUNyRCxNQUFJcUIsTUFBeUIsR0FBR0osd0JBQXdCLENBQUNLLEdBQXpCLENBQTZCdEIsT0FBN0IsQ0FBaEM7O0FBQ0EsTUFBSXFCLE1BQU0sSUFBSSxJQUFkLEVBQW9CO0FBQ2xCQSxJQUFBQSxNQUFNLEdBQUcsb0JBQU1yQixPQUFOLEVBQWV1QixJQUFmLENBQW9CQyxDQUFDLElBQUlBLENBQUMsSUFBSSxJQUE5QixDQUFUO0FBQ0FQLElBQUFBLHdCQUF3QixDQUFDUSxHQUF6QixDQUE2QnpCLE9BQTdCLEVBQXNDcUIsTUFBdEM7QUFDRDs7QUFDRCxTQUFPQSxNQUFQO0FBQ0Q7O0FBRU0sU0FBU0ssa0JBQVQsQ0FDTDFCLE9BREssRUFFTEMsSUFGSyxFQUdMVSxPQUhLLEVBSXVCO0FBQzVCLFNBQU9nQiw2QkFBV0MsS0FBWCxDQUFpQixNQUN0QnhCLGFBQWEsQ0FBQ0osT0FBRCxFQUFVQyxJQUFWLEVBQWdCVSxPQUFoQixDQURSLEVBRUxrQixTQUZLLENBRUtDLFNBQVMsSUFBSSw2QkFBZSxHQUFHQSxTQUFsQixDQUZsQixDQUFQO0FBR0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgdHlwZSB7TFJVQ2FjaGV9IGZyb20gJ2xydS1jYWNoZSc7XHJcbmltcG9ydCB0eXBlIHtPYnNlcnZlUHJvY2Vzc09wdGlvbnMsIFByb2Nlc3NNZXNzYWdlfSBmcm9tICcuL3Byb2Nlc3MnO1xyXG5cclxuaW1wb3J0IExSVSBmcm9tICdscnUtY2FjaGUnO1xyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG5pbXBvcnQgd2hpY2ggZnJvbSAnLi93aGljaCc7XHJcbmltcG9ydCB7c3Bhd24sIG9ic2VydmVQcm9jZXNzfSBmcm9tICcuL3Byb2Nlc3MnO1xyXG5cclxuY29uc3QgTklDRV9DT01NQU5EID0gJ25pY2UnO1xyXG5jb25zdCBJT05JQ0VfQ09NTUFORCA9ICdpb25pY2UnO1xyXG5cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG5pY2VTYWZlU3Bhd24oXHJcbiAgY29tbWFuZDogc3RyaW5nLFxyXG4gIGFyZ3M6IEFycmF5PHN0cmluZz4sXHJcbiAgZXhlY09wdGlvbnM/OiBPYmplY3QsXHJcbik6IFByb21pc2U8Y2hpbGRfcHJvY2VzcyRDaGlsZFByb2Nlc3M+IHtcclxuICBjb25zdCBuaWNpZmllZCA9IGF3YWl0IG5pY2lmeUNvbW1hbmQoY29tbWFuZCwgYXJncywgZXhlY09wdGlvbnMpO1xyXG4gIGNvbnN0IHByb2Nlc3NTdHJlYW0gPSBzcGF3biguLi5uaWNpZmllZCkucHVibGlzaCgpO1xyXG4gIGNvbnN0IHByb2Nlc3NQcm9taXNlID0gcHJvY2Vzc1N0cmVhbS50YWtlKDEpLnRvUHJvbWlzZSgpO1xyXG4gIHByb2Nlc3NTdHJlYW0uY29ubmVjdCgpO1xyXG4gIHJldHVybiBwcm9jZXNzUHJvbWlzZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRha2VzIHRoZSBhcmd1bWVudHMgdGhhdCB5b3Ugd291bGQgbm9ybWFsbHkgcGFzcyB0byBgc3Bhd24oKWAgYW5kIHJldHVybnMgYW4gYXJyYXkgb2YgbmV3XHJcbiAqIGFyZ3VtZW50cyB0byB1c2UgdG8gcnVuIHRoZSBjb21tYW5kIHVuZGVyIGBuaWNlYC5cclxuICpcclxuICogRXhhbXBsZTpcclxuICpcclxuICogYGBganNcclxuICogb2JzZXJ2ZVByb2Nlc3MoLi4uKGF3YWl0IG5pY2lmeUNvbW1hbmQoJ2hnJywgWydkaWZmJ10pKSkuc3Vic2NyaWJlKC4uLik7XHJcbiAqIGBgYFxyXG4gKlxyXG4gKiBTZWUgYWxzbyBgc2NyaXB0aWZ5Q29tbWFuZCgpYCB3aGljaCBkb2VzIGEgc2ltaWxhciB0aGluZyBidXQgZm9yIGBzY3JpcHRgLlxyXG4gKi9cclxuYXN5bmMgZnVuY3Rpb24gbmljaWZ5Q29tbWFuZDxUPihcclxuICBjb21tYW5kOiBzdHJpbmcsXHJcbiAgYXJncz86IEFycmF5PHN0cmluZz4sXHJcbiAgb3B0aW9uczogVCxcclxuKTogUHJvbWlzZTxbc3RyaW5nLCBBcnJheTxzdHJpbmc+LCBUXT4ge1xyXG4gIGNvbnN0IGZ1bGxBcmdzID0gW2NvbW1hbmQsIC4uLihhcmdzIHx8IFtdKV07XHJcbiAgaWYgKGF3YWl0IGhhc05pY2VDb21tYW5kKCkpIHtcclxuICAgIGZ1bGxBcmdzLnVuc2hpZnQoTklDRV9DT01NQU5EKTtcclxuICB9XHJcbiAgaWYgKGF3YWl0IGhhc0lvbmljZUNvbW1hbmQoKSkge1xyXG4gICAgLy8gTGVhdmUgdGhlIHByb2Nlc3MgaW4gdGhlIEJlc3QgRWZmb3J0IGNsYXNzIChkZWZhdWx0KSwgYnV0IHNldCBpdCB0byB0aGUgbG93ZXN0IHByaW9yaXR5IGZvclxyXG4gICAgLy8gdGhhdCBjbGFzcy4gUHJpb3JpdGllcyByYW5nZSBmcm9tIDAtNyB3aXRoIDQgYXMgdGhlIGRlZmF1bHQgYW5kIGxvd2VyIG51bWJlcnMgcmVwcmVzZW50aW5nXHJcbiAgICAvLyBoaWdoZXIgcHJpb3JpdGllcy5cclxuICAgIC8vXHJcbiAgICAvLyBTZWUgYG1hbiBpb25pY2VgIG9yIGh0dHA6Ly9saW51eC5kaWUubmV0L21hbi8xL2lvbmljZVxyXG4gICAgLy9cclxuICAgIC8vIEl0J3Mgbm90IHNwZWNpZmllZCBieSBQT1NJWCBsaWtlIGBuaWNlYCBpcyBidXQgc2luY2UgaXQgaXMgaW5jbHVkZWQgaW4gdXRpbC1saW51eCB3aGljaCBpc1xyXG4gICAgLy8gcmVsYXRpdmVseSBjb3JlXHJcbiAgICAvLyAoaHR0cHM6Ly9naXQua2VybmVsLm9yZy9jZ2l0L3V0aWxzL3V0aWwtbGludXgvdXRpbC1saW51eC5naXQvdHJlZS9zY2hlZHV0aWxzL2lvbmljZS5jKSwgSVxyXG4gICAgLy8gdGhpbmsgd2UgY2FuIGFzc3VtZSB0aGF0IGl0IHVzZXMgdGhpcyBpbnRlcmZhY2UgaWYgaXQgZXhpc3RzLlxyXG4gICAgZnVsbEFyZ3MudW5zaGlmdChJT05JQ0VfQ09NTUFORCwgJy1uJywgJzcnKTtcclxuICB9XHJcbiAgcmV0dXJuIFtmdWxsQXJnc1swXSwgZnVsbEFyZ3Muc2xpY2UoMSksIG9wdGlvbnNdO1xyXG59XHJcblxyXG5jb25zdCBjb21tYW5kQXZhaWxhYmlsaXR5Q2FjaGU6IExSVUNhY2hlPHN0cmluZywgUHJvbWlzZTxib29sZWFuPj4gPSBMUlUoe1xyXG4gIG1heDogMTAsXHJcbiAgLy8gUmVhbGlzdGljYWxseSB0aGlzIHdpbGwgbm90IGNoYW5nZSB2ZXJ5IG9mdGVuIHNvIHdlIGNhbiBjYWNoZSBmb3IgbG9uZyBwZXJpb2RzIG9mIHRpbWUuIFdlXHJcbiAgLy8gcHJvYmFibHkgY291bGQganVzdCBjaGVjayBhdCBzdGFydHVwIGFuZCBnZXQgYXdheSB3aXRoIGl0LCBidXQgbWF5YmUgc29tZW9uZSB3aWxsIGluc3RhbGxcclxuICAvLyBgaW9uaWNlYCBhbmQgaXQgd291bGQgYmUgbmljZSB0byBwaWNrIHRoYXQgdXAuXHJcbiAgbWF4QWdlOiAxMDAwICogNjAgKiA1LCAvLyA1IG1pbnV0ZXNcclxufSk7XHJcblxyXG5mdW5jdGlvbiBoYXNOaWNlQ29tbWFuZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICByZXR1cm4gaGFzQ29tbWFuZChOSUNFX0NPTU1BTkQpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBoYXNJb25pY2VDb21tYW5kKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gIHJldHVybiBoYXNDb21tYW5kKElPTklDRV9DT01NQU5EKTtcclxufVxyXG5cclxuZnVuY3Rpb24gaGFzQ29tbWFuZChjb21tYW5kOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICBsZXQgcmVzdWx0OiA/UHJvbWlzZTxib29sZWFuPiA9IGNvbW1hbmRBdmFpbGFiaWxpdHlDYWNoZS5nZXQoY29tbWFuZCk7XHJcbiAgaWYgKHJlc3VsdCA9PSBudWxsKSB7XHJcbiAgICByZXN1bHQgPSB3aGljaChjb21tYW5kKS50aGVuKHggPT4geCAhPSBudWxsKTtcclxuICAgIGNvbW1hbmRBdmFpbGFiaWxpdHlDYWNoZS5zZXQoY29tbWFuZCwgcmVzdWx0KTtcclxuICB9XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG5pY2VPYnNlcnZlUHJvY2VzcyhcclxuICBjb21tYW5kOiBzdHJpbmcsXHJcbiAgYXJncz86IEFycmF5PHN0cmluZz4sXHJcbiAgb3B0aW9ucz86IE9ic2VydmVQcm9jZXNzT3B0aW9ucyxcclxuKTogT2JzZXJ2YWJsZTxQcm9jZXNzTWVzc2FnZT4ge1xyXG4gIHJldHVybiBPYnNlcnZhYmxlLmRlZmVyKCgpID0+XHJcbiAgICBuaWNpZnlDb21tYW5kKGNvbW1hbmQsIGFyZ3MsIG9wdGlvbnMpLFxyXG4gICkuc3dpdGNoTWFwKHNwYXduQXJncyA9PiBvYnNlcnZlUHJvY2VzcyguLi5zcGF3bkFyZ3MpKTtcclxufVxyXG4iXX0= |
@@ -37,2 +37,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL29ic2VydmFibGVGcm9tUmVkdXhTdG9yZS5qcyJdLCJuYW1lcyI6WyJvYnNlcnZhYmxlRnJvbVJlZHV4U3RvcmUiLCJzdG9yZSIsInN1YnNjcmliZSIsInN0YXJ0V2l0aCIsIm1hcCIsImdldFN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBQ0E7O0FBYkE7Ozs7Ozs7Ozs7OztBQW9CQTs7Ozs7Ozs7O0FBU2UsU0FBU0Esd0JBQVQsQ0FDYkMsS0FEYSxFQUVFO0FBQ2YsU0FBTyw0Q0FBZ0NBLEtBQUssQ0FBQ0MsU0FBdEMsRUFDSkMsU0FESSxDQUNNLElBRE4sRUFDWTtBQURaLEdBRUpDLEdBRkksQ0FFQSxNQUFNSCxLQUFLLENBQUNJLFFBQU4sRUFGTixDQUFQO0FBR0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdC1sb2NhbFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5pbXBvcnQge29ic2VydmFibGVGcm9tU3Vic2NyaWJlRnVuY3Rpb259IGZyb20gJy4vZXZlbnQnO1xyXG5cclxudHlwZSBTdG9yZTxTPiA9IHtcclxuICBnZXRTdGF0ZSgpOiBTLFxyXG4gIHN1YnNjcmliZShsaXN0ZW5lcjogKCkgPT4gdm9pZCk6ICgpID0+IHZvaWQsXHJcbn07XHJcblxyXG4vKlxyXG4gKiBVc2UgdGhpcyByYXRoZXIgdGhhbiBPYnNlcnZhYmxlLmZyb20oc3RvcmUpLiBXaGlsZSBSZWR1eCBwcm9wZXJseSBpbXBsZW1lbnRzXHJcbiAqIGBTeW1ib2wub2JzZXJ2YWJsZWAsIEZsb3cgZG9lc24ndCBrbm93IGFib3V0IGl0LCBhbmQgYFN5bWJvbC5vYnNlcnZhYmxlYCByZXF1aXJlc1xyXG4gKiBhIHBvbHlmaWxsIHRoYXQgUnhKUyBubyBsb25nZXIgcHJvdmlkZXMuXHJcbiAqXHJcbiAqIE1hdGNoZXMgdGhlIGJlaGF2aW9yYWwgZGlmZmVyZW5jZXMgYmV0d2VlbiBSZWR1eCdzIHZhbmlsbGEgYHN1YnNjcmliZWAgYW5kXHJcbiAqIGl0cyBgU3ltYm9sLm9ic2VydmFibGVgIGltcGxlbWVudGF0aW9uOiB5aWVsZCB0aGUgc3RvcmUncyBzdGF0ZSB0byBzdWJzY3JpYmVycyxcclxuICogYW5kIGVtaXQgb24gdGhlIGluaXRpYWwgc3Vic2NyaXB0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gb2JzZXJ2YWJsZUZyb21SZWR1eFN0b3JlPFM+KFxyXG4gIHN0b3JlOiBTdG9yZTxTPixcclxuKTogT2JzZXJ2YWJsZTxTPiB7XHJcbiAgcmV0dXJuIG9ic2VydmFibGVGcm9tU3Vic2NyaWJlRnVuY3Rpb24oc3RvcmUuc3Vic2NyaWJlKVxyXG4gICAgLnN0YXJ0V2l0aChudWxsKSAvLyBlbWl0IHRoZSBjdXJyZW50IHN0YXRlIG9uIHN1YnNjcmliZVxyXG4gICAgLm1hcCgoKSA9PiBzdG9yZS5nZXRTdGF0ZSgpKTtcclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL29ic2VydmFibGVGcm9tUmVkdXhTdG9yZS5qcyJdLCJuYW1lcyI6WyJvYnNlcnZhYmxlRnJvbVJlZHV4U3RvcmUiLCJzdG9yZSIsInN1YnNjcmliZSIsInN0YXJ0V2l0aCIsIm1hcCIsImdldFN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBQ0E7O0FBYkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFVQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDZSxTQUFTQSx3QkFBVCxDQUNiQyxLQURhLEVBRUU7QUFDZixTQUFPLDRDQUFnQ0EsS0FBSyxDQUFDQyxTQUF0QyxFQUNKQyxTQURJLENBQ00sSUFETixFQUNZO0FBRFosR0FFSkMsR0FGSSxDQUVBLE1BQU1ILEtBQUssQ0FBQ0ksUUFBTixFQUZOLENBQVA7QUFHRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcbmltcG9ydCB7b2JzZXJ2YWJsZUZyb21TdWJzY3JpYmVGdW5jdGlvbn0gZnJvbSAnLi9ldmVudCc7XHJcblxyXG50eXBlIFN0b3JlPFM+ID0ge1xyXG4gIGdldFN0YXRlKCk6IFMsXHJcbiAgc3Vic2NyaWJlKGxpc3RlbmVyOiAoKSA9PiB2b2lkKTogKCkgPT4gdm9pZCxcclxufTtcclxuXHJcbi8qXHJcbiAqIFVzZSB0aGlzIHJhdGhlciB0aGFuIE9ic2VydmFibGUuZnJvbShzdG9yZSkuIFdoaWxlIFJlZHV4IHByb3Blcmx5IGltcGxlbWVudHNcclxuICogYFN5bWJvbC5vYnNlcnZhYmxlYCwgRmxvdyBkb2Vzbid0IGtub3cgYWJvdXQgaXQsIGFuZCBgU3ltYm9sLm9ic2VydmFibGVgIHJlcXVpcmVzXHJcbiAqIGEgcG9seWZpbGwgdGhhdCBSeEpTIG5vIGxvbmdlciBwcm92aWRlcy5cclxuICpcclxuICogTWF0Y2hlcyB0aGUgYmVoYXZpb3JhbCBkaWZmZXJlbmNlcyBiZXR3ZWVuIFJlZHV4J3MgdmFuaWxsYSBgc3Vic2NyaWJlYCBhbmRcclxuICogaXRzIGBTeW1ib2wub2JzZXJ2YWJsZWAgaW1wbGVtZW50YXRpb246IHlpZWxkIHRoZSBzdG9yZSdzIHN0YXRlIHRvIHN1YnNjcmliZXJzLFxyXG4gKiBhbmQgZW1pdCBvbiB0aGUgaW5pdGlhbCBzdWJzY3JpcHRpb24uXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBvYnNlcnZhYmxlRnJvbVJlZHV4U3RvcmU8Uz4oXHJcbiAgc3RvcmU6IFN0b3JlPFM+LFxyXG4pOiBPYnNlcnZhYmxlPFM+IHtcclxuICByZXR1cm4gb2JzZXJ2YWJsZUZyb21TdWJzY3JpYmVGdW5jdGlvbihzdG9yZS5zdWJzY3JpYmUpXHJcbiAgICAuc3RhcnRXaXRoKG51bGwpIC8vIGVtaXQgdGhlIGN1cnJlbnQgc3RhdGUgb24gc3Vic2NyaWJlXHJcbiAgICAubWFwKCgpID0+IHN0b3JlLmdldFN0YXRlKCkpO1xyXG59XHJcbiJdfQ== |
@@ -147,2 +147,2 @@ "use strict"; | ||
exports.default = ObservablePool; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL09ic2VydmFibGVQb29sLmpzIl0sIm5hbWVzIjpbIk9ic2VydmFibGVQb29sIiwiY29uc3RydWN0b3IiLCJjb25jdXJyZW5jeSIsIl9yZXF1ZXN0cyIsIl9yZXNwb25zZUxpc3RlbmVycyIsIl9zdWJzY3JpcHRpb24iLCJTdWJqZWN0IiwiTWFwIiwiX2hhbmRsZUV2ZW50cyIsInNjaGVkdWxlIiwiZXhlY3V0b3IiLCJPYnNlcnZhYmxlIiwiY3JlYXRlIiwib2JzZXJ2ZXIiLCJ1bnN1YnNjcmliZWQiLCJ0YWciLCJzZXQiLCJuZXh0IiwiZGVsZXRlIiwiZGlzcG9zZSIsImZvckVhY2giLCJlcnJvciIsIkVycm9yIiwidW5zdWJzY3JpYmUiLCJtZXJnZU1hcCIsImV2ZW50IiwibGlzdGVuZXIiLCJnZXQiLCJlbXB0eSIsInJlc3VsdCIsImVyciIsInRha2VVbnRpbCIsImRvIiwiY2F0Y2giLCJmcm9tIiwic3Vic2NyaWJlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBWkE7Ozs7Ozs7Ozs7OztBQXVCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStCZSxNQUFNQSxjQUFOLENBQXdCO0FBS3JDQyxFQUFBQSxXQUFXLENBQUNDLFdBQUQsRUFBc0I7QUFBQSxTQUpqQ0MsU0FJaUM7QUFBQSxTQUhqQ0Msa0JBR2lDO0FBQUEsU0FGakNDLGFBRWlDO0FBQy9CLFNBQUtGLFNBQUwsR0FBaUIsSUFBSUcseUJBQUosRUFBakI7QUFDQSxTQUFLRixrQkFBTCxHQUEwQixJQUFJRyxHQUFKLEVBQTFCO0FBQ0EsU0FBS0YsYUFBTCxHQUFxQixLQUFLRyxhQUFMLENBQW1CTixXQUFuQixDQUFyQjtBQUNEOztBQUVETyxFQUFBQSxRQUFRLENBQUNDLFFBQUQsRUFBdUM7QUFDN0MsV0FBT0MsNkJBQVdDLE1BQVgsQ0FBa0JDLFFBQVEsSUFBSTtBQUNuQyxZQUFNQyxZQUFZLEdBQUcsSUFBSVIseUJBQUosRUFBckI7QUFDQSxZQUFNUyxHQUFHLEdBQUcsRUFBWixDQUZtQyxDQUVuQjs7QUFDaEIsV0FBS1gsa0JBQUwsQ0FBd0JZLEdBQXhCLENBQTRCRCxHQUE1QixFQUFpQztBQUFDRixRQUFBQSxRQUFEO0FBQVdDLFFBQUFBO0FBQVgsT0FBakM7O0FBQ0EsV0FBS1gsU0FBTCxDQUFlYyxJQUFmLENBQW9CO0FBQUNGLFFBQUFBLEdBQUQ7QUFBTUwsUUFBQUE7QUFBTixPQUFwQjs7QUFDQSxhQUFPLE1BQU07QUFDWCxhQUFLTixrQkFBTCxDQUF3QmMsTUFBeEIsQ0FBK0JILEdBQS9COztBQUNBRCxRQUFBQSxZQUFZLENBQUNHLElBQWI7QUFDRCxPQUhEO0FBSUQsS0FUTSxDQUFQO0FBVUQ7QUFFRDs7Ozs7QUFHQUUsRUFBQUEsT0FBTyxHQUFHO0FBQ1IsU0FBS2Ysa0JBQUwsQ0FBd0JnQixPQUF4QixDQUFnQyxDQUFDO0FBQUNQLE1BQUFBO0FBQUQsS0FBRCxLQUFnQjtBQUM5Q0EsTUFBQUEsUUFBUSxDQUFDUSxLQUFULENBQWVDLEtBQUssQ0FBQyw2QkFBRCxDQUFwQjtBQUNELEtBRkQ7O0FBR0EsU0FBS2pCLGFBQUwsQ0FBbUJrQixXQUFuQjtBQUNEOztBQUVEZixFQUFBQSxhQUFhLENBQUNOLFdBQUQsRUFBMEM7QUFDckQsV0FBTyxLQUFLQyxTQUFMLENBQ0pxQixRQURJLENBQ0tDLEtBQUssSUFBSTtBQUNqQixZQUFNO0FBQUNmLFFBQUFBLFFBQUQ7QUFBV0ssUUFBQUE7QUFBWCxVQUFrQlUsS0FBeEI7O0FBQ0EsWUFBTUMsUUFBUSxHQUFHLEtBQUt0QixrQkFBTCxDQUF3QnVCLEdBQXhCLENBQTRCWixHQUE1QixDQUFqQixDQUZpQixDQUdqQjs7O0FBQ0EsVUFBSVcsUUFBUSxJQUFJLElBQWhCLEVBQXNCO0FBQ3BCLGVBQU9mLDZCQUFXaUIsS0FBWCxFQUFQO0FBQ0Q7O0FBQ0QsWUFBTTtBQUFDZixRQUFBQSxRQUFEO0FBQVdDLFFBQUFBO0FBQVgsVUFBMkJZLFFBQWpDO0FBQ0EsVUFBSUcsTUFBSjs7QUFDQSxVQUFJbkIsUUFBUSxZQUFZQyw0QkFBeEIsRUFBb0M7QUFDbENrQixRQUFBQSxNQUFNLEdBQUduQixRQUFUO0FBQ0QsT0FGRCxNQUVPO0FBQ0wsWUFBSTtBQUNGbUIsVUFBQUEsTUFBTSxHQUFHbkIsUUFBUSxFQUFqQjtBQUNELFNBRkQsQ0FFRSxPQUFPb0IsR0FBUCxFQUFZO0FBQ1o7QUFDQWpCLFVBQUFBLFFBQVEsQ0FBQ1EsS0FBVCxDQUFlUyxHQUFmO0FBQ0EsaUJBQU9uQiw2QkFBV2lCLEtBQVgsRUFBUDtBQUNEO0FBQ0Y7O0FBQ0QsVUFBSUMsTUFBTSxZQUFZbEIsNEJBQXRCLEVBQWtDO0FBQ2hDO0FBQ0EsZUFDRWtCLE1BQU0sQ0FDSEUsU0FESCxDQUNhakIsWUFEYixFQUVFO0FBRkYsU0FHR2tCLEVBSEgsQ0FHTW5CLFFBSE4sRUFJR29CLEtBSkgsQ0FJUyxNQUFNdEIsNkJBQVdpQixLQUFYLEVBSmYsQ0FERjtBQU9ELE9BVEQsTUFTTztBQUNMO0FBQ0EsZUFDRWpCLDZCQUFXdUIsSUFBWCxDQUFnQkwsTUFBaEIsRUFDRTtBQURGLFNBRUdHLEVBRkgsQ0FFTW5CLFFBRk4sRUFHR29CLEtBSEgsQ0FHUyxNQUFNdEIsNkJBQVdpQixLQUFYLEVBSGYsQ0FERjtBQU1EO0FBQ0YsS0F2Q0ksRUF1Q0YxQixXQXZDRSxFQXdDSmlDLFNBeENJLEVBQVA7QUF5Q0Q7O0FBNUVvQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG50eXBlIEV4ZWN1dG9yPFQ+ID0gT2JzZXJ2YWJsZTxUPiB8ICgoKSA9PiByeGpzJE9ic2VydmFibGVJbnB1dDxUPik7XHJcblxyXG50eXBlIFJlcXVlc3Q8VD4gPSB7dGFnOiBtaXhlZCwgZXhlY3V0b3I6IEV4ZWN1dG9yPFQ+fTtcclxuXHJcbnR5cGUgUmVzcG9uc2U8VD4gPSB7XHJcbiAgb2JzZXJ2ZXI6IHJ4anMkT2JzZXJ2ZXI8VD4sXHJcbiAgdW5zdWJzY3JpYmVkOiBTdWJqZWN0PHZvaWQ+LFxyXG59O1xyXG5cclxuLyoqXHJcbiAqIE9ic2VydmFibGVQb29sIGFsbG93cyB5b3UgdG8gZXhlY3V0ZSBPYnNlcnZhYmxlcyBvciBmdW5jdGlvbnMgdGhhdCByZXR1cm5cclxuICogT2JzZXJ2YWJsZSBpbnB1dHMgKGkuZS4gT2JzZXJ2YWJsZXMsIFByb21pc2VzLCBvciBJdGVyYWJsZXMpXHJcbiAqIHdpdGggYSBjb25jdXJyZW5jeSBsaW1pdC5cclxuICpcclxuICogRXhlY3V0aW9uIHJlcXVlc3RzIGFyZSBxdWV1ZWQgYW5kIHVuc3Vic2NyaXB0aW9ucyBhcmUgZm9yd2FyZGVkIHRocm91Z2hcclxuICogKGlmIGEgcmVxdWVzdCBpcyBzdGlsbCBvbiB0aGUgcXVldWUsIGl0cyBleGVjdXRpb24gd2lsbCBiZSBjYW5jZWxsZWQuKVxyXG4gKlxyXG4gKiBGb3IgcmVxdWVzdHMgdGhhdCByZXR1cm4gYSBQcm9taXNlLCB0aGUgT2JzZXJ2YWJsZVBvb2wgaXMgcGVzc2ltaXN0aWNcclxuICogYW5kIGFzc3VtZXMgdGhhdCB0aGUgb3BlcmF0aW9uIGlzIHVuY2FuY2VsbGFibGUgLSBpdCB3aWxsIG5vdCByZW1vdmVcclxuICogdGhlIGV4ZWN1dGlvbiBmcm9tIHRoZSBwb29sIHVudGlsIGl0IHJlc29sdmVzIG9yIHJlamVjdHMuIEhvd2V2ZXJcclxuICogYHNjaGVkdWxlKClgIHdpbGwgc3RpbGwgcmV0dXJuIGFuIE9ic2VydmFibGUgdG8gZW5hYmxlIHRoZSB1c2UgY2FzZVxyXG4gKiBvZiBjYW5jZWxsaW5nIHJlcXVlc3RzIHdoaWxlIHRoZXkncmUgaW4gdGhlIHF1ZXVlLlxyXG4gKlxyXG4gKiBFeGFtcGxlOlxyXG4gKlxyXG4gKiAgIGNvbnN0IHBvb2wgPSBuZXcgT2JzZXJ2YWJsZVBvb2woMik7XHJcbiAqICAgcG9vbFxyXG4gKiAgICAgLnNjaGVkdWxlKE9ic2VydmFibGUudGltZXIoMTAwMCkubWFwVG8oMSkpXHJcbiAqICAgICAuc3Vic2NyaWJlKGNvbnNvbGUubG9nKTtcclxuICogICBPYnNlcnZhYmxlLnRpbWVyKDEwMDApXHJcbiAqICAgICAubWFwVG8oMilcclxuICogICAgIC5sZXQocG9vbC5zY2hlZHVsZS5iaW5kKHBvb2wpKVxyXG4gKiAgICAgLnN1YnNjcmliZShjb25zb2xlLmxvZyk7XHJcbiAqICAgcG9vbFxyXG4gKiAgICAgLnNjaGVkdWxlKE9ic2VydmFibGUudGltZXIoMTAwKS5tYXBUbygzKSlcclxuICogICAgIC5zdWJzY3JpYmUoY29uc29sZS5sb2cpO1xyXG4gKlxyXG4gKiBUaGUgb3V0cHV0IGhlcmUgaXMgMSwgMiwgdGhlbiAzLiBEZXNwaXRlIHRoZSBmYWN0IHRoYXQgdGhlIHRoaXJkIG9ic2VydmFibGVcclxuICogZmluaXNoZXMgbW9yZSBxdWlja2x5LCBpdHMgZXhlY3V0aW9uIGlzIHBvc3Rwb25lZCB1bnRpbCB0aGUgZmlyc3QgdHdvIGZpbmlzaC5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE9ic2VydmFibGVQb29sPFQ+IHtcclxuICBfcmVxdWVzdHM6IFN1YmplY3Q8UmVxdWVzdDxUPj47XHJcbiAgX3Jlc3BvbnNlTGlzdGVuZXJzOiBNYXA8bWl4ZWQsIFJlc3BvbnNlPFQ+PjtcclxuICBfc3Vic2NyaXB0aW9uOiByeGpzJElTdWJzY3JpcHRpb247XHJcblxyXG4gIGNvbnN0cnVjdG9yKGNvbmN1cnJlbmN5OiBudW1iZXIpIHtcclxuICAgIHRoaXMuX3JlcXVlc3RzID0gbmV3IFN1YmplY3QoKTtcclxuICAgIHRoaXMuX3Jlc3BvbnNlTGlzdGVuZXJzID0gbmV3IE1hcCgpO1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gdGhpcy5faGFuZGxlRXZlbnRzKGNvbmN1cnJlbmN5KTtcclxuICB9XHJcblxyXG4gIHNjaGVkdWxlKGV4ZWN1dG9yOiBFeGVjdXRvcjxUPik6IE9ic2VydmFibGU8VD4ge1xyXG4gICAgcmV0dXJuIE9ic2VydmFibGUuY3JlYXRlKG9ic2VydmVyID0+IHtcclxuICAgICAgY29uc3QgdW5zdWJzY3JpYmVkID0gbmV3IFN1YmplY3QoKTtcclxuICAgICAgY29uc3QgdGFnID0ge307IC8vIEp1c3QgYSB1bmlxdWUgb2JqZWN0LlxyXG4gICAgICB0aGlzLl9yZXNwb25zZUxpc3RlbmVycy5zZXQodGFnLCB7b2JzZXJ2ZXIsIHVuc3Vic2NyaWJlZH0pO1xyXG4gICAgICB0aGlzLl9yZXF1ZXN0cy5uZXh0KHt0YWcsIGV4ZWN1dG9yfSk7XHJcbiAgICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fcmVzcG9uc2VMaXN0ZW5lcnMuZGVsZXRlKHRhZyk7XHJcbiAgICAgICAgdW5zdWJzY3JpYmVkLm5leHQoKTtcclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogV2FybmluZzogY2FsbGluZyBkaXNwb3NlKCkgd2lsbCBlcnJvciBhbGwgZXhlY3V0aW5nIHJlcXVlc3RzLlxyXG4gICAqL1xyXG4gIGRpc3Bvc2UoKSB7XHJcbiAgICB0aGlzLl9yZXNwb25zZUxpc3RlbmVycy5mb3JFYWNoKCh7b2JzZXJ2ZXJ9KSA9PiB7XHJcbiAgICAgIG9ic2VydmVyLmVycm9yKEVycm9yKCdPYnNlcnZhYmxlUG9vbCB3YXMgZGlzcG9zZWQnKSk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgX2hhbmRsZUV2ZW50cyhjb25jdXJyZW5jeTogbnVtYmVyKTogcnhqcyRJU3Vic2NyaXB0aW9uIHtcclxuICAgIHJldHVybiB0aGlzLl9yZXF1ZXN0c1xyXG4gICAgICAubWVyZ2VNYXAoZXZlbnQgPT4ge1xyXG4gICAgICAgIGNvbnN0IHtleGVjdXRvciwgdGFnfSA9IGV2ZW50O1xyXG4gICAgICAgIGNvbnN0IGxpc3RlbmVyID0gdGhpcy5fcmVzcG9uc2VMaXN0ZW5lcnMuZ2V0KHRhZyk7XHJcbiAgICAgICAgLy8gdW5zdWJzY3JpYmVkIGJlZm9yZSB3ZSBjb3VsZCBldmVuIGdldCB0byBpdCFcclxuICAgICAgICBpZiAobGlzdGVuZXIgPT0gbnVsbCkge1xyXG4gICAgICAgICAgcmV0dXJuIE9ic2VydmFibGUuZW1wdHkoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3Qge29ic2VydmVyLCB1bnN1YnNjcmliZWR9ID0gbGlzdGVuZXI7XHJcbiAgICAgICAgbGV0IHJlc3VsdDtcclxuICAgICAgICBpZiAoZXhlY3V0b3IgaW5zdGFuY2VvZiBPYnNlcnZhYmxlKSB7XHJcbiAgICAgICAgICByZXN1bHQgPSBleGVjdXRvcjtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmVzdWx0ID0gZXhlY3V0b3IoKTtcclxuICAgICAgICAgIH0gY2F0Y2ggKGVycikge1xyXG4gICAgICAgICAgICAvLyBDYXRjaCBlcnJvcnMgZnJvbSBleGVjdXRvcigpLlxyXG4gICAgICAgICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xyXG4gICAgICAgICAgICByZXR1cm4gT2JzZXJ2YWJsZS5lbXB0eSgpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAocmVzdWx0IGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xyXG4gICAgICAgICAgLy8gV2UgY2FuIHNhZmVseSBmb3J3YXJkIHVuc3Vic2NyaXB0aW9ucyFcclxuICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgIHJlc3VsdFxyXG4gICAgICAgICAgICAgIC50YWtlVW50aWwodW5zdWJzY3JpYmVkKVxyXG4gICAgICAgICAgICAgIC8vICRGbG93Rml4TWU6IEZsb3cgZG9lc24ndCBsaWtlIHRoaXMuXHJcbiAgICAgICAgICAgICAgLmRvKG9ic2VydmVyKVxyXG4gICAgICAgICAgICAgIC5jYXRjaCgoKSA9PiBPYnNlcnZhYmxlLmVtcHR5KCkpXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAvLyBJbiB0aGUgYWJzZW5jZSBvZiBjYW5jZWxsYXRpb24sIGFzc3VtZSB0aGUgd29yc3QuXHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICBPYnNlcnZhYmxlLmZyb20ocmVzdWx0KVxyXG4gICAgICAgICAgICAgIC8vICRGbG93Rml4TWU6IEZsb3cgZG9lc24ndCBsaWtlIHRoaXMuXHJcbiAgICAgICAgICAgICAgLmRvKG9ic2VydmVyKVxyXG4gICAgICAgICAgICAgIC5jYXRjaCgoKSA9PiBPYnNlcnZhYmxlLmVtcHR5KCkpXHJcbiAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgICAgfSwgY29uY3VycmVuY3kpXHJcbiAgICAgIC5zdWJzY3JpYmUoKTtcclxuICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL09ic2VydmFibGVQb29sLmpzIl0sIm5hbWVzIjpbIk9ic2VydmFibGVQb29sIiwiY29uc3RydWN0b3IiLCJjb25jdXJyZW5jeSIsIl9yZXF1ZXN0cyIsIl9yZXNwb25zZUxpc3RlbmVycyIsIl9zdWJzY3JpcHRpb24iLCJTdWJqZWN0IiwiTWFwIiwiX2hhbmRsZUV2ZW50cyIsInNjaGVkdWxlIiwiZXhlY3V0b3IiLCJPYnNlcnZhYmxlIiwiY3JlYXRlIiwib2JzZXJ2ZXIiLCJ1bnN1YnNjcmliZWQiLCJ0YWciLCJzZXQiLCJuZXh0IiwiZGVsZXRlIiwiZGlzcG9zZSIsImZvckVhY2giLCJlcnJvciIsIkVycm9yIiwidW5zdWJzY3JpYmUiLCJtZXJnZU1hcCIsImV2ZW50IiwibGlzdGVuZXIiLCJnZXQiLCJlbXB0eSIsInJlc3VsdCIsImVyciIsInRha2VVbnRpbCIsImRvIiwiY2F0Y2giLCJmcm9tIiwic3Vic2NyaWJlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBWkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFhQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNlLE1BQU1BLGNBQU4sQ0FBd0I7QUFLckNDLEVBQUFBLFdBQVcsQ0FBQ0MsV0FBRCxFQUFzQjtBQUFBLFNBSmpDQyxTQUlpQztBQUFBLFNBSGpDQyxrQkFHaUM7QUFBQSxTQUZqQ0MsYUFFaUM7QUFDL0IsU0FBS0YsU0FBTCxHQUFpQixJQUFJRyx5QkFBSixFQUFqQjtBQUNBLFNBQUtGLGtCQUFMLEdBQTBCLElBQUlHLEdBQUosRUFBMUI7QUFDQSxTQUFLRixhQUFMLEdBQXFCLEtBQUtHLGFBQUwsQ0FBbUJOLFdBQW5CLENBQXJCO0FBQ0Q7O0FBRURPLEVBQUFBLFFBQVEsQ0FBQ0MsUUFBRCxFQUF1QztBQUM3QyxXQUFPQyw2QkFBV0MsTUFBWCxDQUFrQkMsUUFBUSxJQUFJO0FBQ25DLFlBQU1DLFlBQVksR0FBRyxJQUFJUix5QkFBSixFQUFyQjtBQUNBLFlBQU1TLEdBQUcsR0FBRyxFQUFaLENBRm1DLENBRW5COztBQUNoQixXQUFLWCxrQkFBTCxDQUF3QlksR0FBeEIsQ0FBNEJELEdBQTVCLEVBQWlDO0FBQUNGLFFBQUFBLFFBQUQ7QUFBV0MsUUFBQUE7QUFBWCxPQUFqQzs7QUFDQSxXQUFLWCxTQUFMLENBQWVjLElBQWYsQ0FBb0I7QUFBQ0YsUUFBQUEsR0FBRDtBQUFNTCxRQUFBQTtBQUFOLE9BQXBCOztBQUNBLGFBQU8sTUFBTTtBQUNYLGFBQUtOLGtCQUFMLENBQXdCYyxNQUF4QixDQUErQkgsR0FBL0I7O0FBQ0FELFFBQUFBLFlBQVksQ0FBQ0csSUFBYjtBQUNELE9BSEQ7QUFJRCxLQVRNLENBQVA7QUFVRDtBQUVEO0FBQ0Y7QUFDQTs7O0FBQ0VFLEVBQUFBLE9BQU8sR0FBRztBQUNSLFNBQUtmLGtCQUFMLENBQXdCZ0IsT0FBeEIsQ0FBZ0MsQ0FBQztBQUFDUCxNQUFBQTtBQUFELEtBQUQsS0FBZ0I7QUFDOUNBLE1BQUFBLFFBQVEsQ0FBQ1EsS0FBVCxDQUFlQyxLQUFLLENBQUMsNkJBQUQsQ0FBcEI7QUFDRCxLQUZEOztBQUdBLFNBQUtqQixhQUFMLENBQW1Ca0IsV0FBbkI7QUFDRDs7QUFFRGYsRUFBQUEsYUFBYSxDQUFDTixXQUFELEVBQTBDO0FBQ3JELFdBQU8sS0FBS0MsU0FBTCxDQUNKcUIsUUFESSxDQUNLQyxLQUFLLElBQUk7QUFDakIsWUFBTTtBQUFDZixRQUFBQSxRQUFEO0FBQVdLLFFBQUFBO0FBQVgsVUFBa0JVLEtBQXhCOztBQUNBLFlBQU1DLFFBQVEsR0FBRyxLQUFLdEIsa0JBQUwsQ0FBd0J1QixHQUF4QixDQUE0QlosR0FBNUIsQ0FBakIsQ0FGaUIsQ0FHakI7OztBQUNBLFVBQUlXLFFBQVEsSUFBSSxJQUFoQixFQUFzQjtBQUNwQixlQUFPZiw2QkFBV2lCLEtBQVgsRUFBUDtBQUNEOztBQUNELFlBQU07QUFBQ2YsUUFBQUEsUUFBRDtBQUFXQyxRQUFBQTtBQUFYLFVBQTJCWSxRQUFqQztBQUNBLFVBQUlHLE1BQUo7O0FBQ0EsVUFBSW5CLFFBQVEsWUFBWUMsNEJBQXhCLEVBQW9DO0FBQ2xDa0IsUUFBQUEsTUFBTSxHQUFHbkIsUUFBVDtBQUNELE9BRkQsTUFFTztBQUNMLFlBQUk7QUFDRm1CLFVBQUFBLE1BQU0sR0FBR25CLFFBQVEsRUFBakI7QUFDRCxTQUZELENBRUUsT0FBT29CLEdBQVAsRUFBWTtBQUNaO0FBQ0FqQixVQUFBQSxRQUFRLENBQUNRLEtBQVQsQ0FBZVMsR0FBZjtBQUNBLGlCQUFPbkIsNkJBQVdpQixLQUFYLEVBQVA7QUFDRDtBQUNGOztBQUNELFVBQUlDLE1BQU0sWUFBWWxCLDRCQUF0QixFQUFrQztBQUNoQztBQUNBLGVBQ0VrQixNQUFNLENBQ0hFLFNBREgsQ0FDYWpCLFlBRGIsRUFFRTtBQUZGLFNBR0drQixFQUhILENBR01uQixRQUhOLEVBSUdvQixLQUpILENBSVMsTUFBTXRCLDZCQUFXaUIsS0FBWCxFQUpmLENBREY7QUFPRCxPQVRELE1BU087QUFDTDtBQUNBLGVBQ0VqQiw2QkFBV3VCLElBQVgsQ0FBZ0JMLE1BQWhCLEVBQ0U7QUFERixTQUVHRyxFQUZILENBRU1uQixRQUZOLEVBR0dvQixLQUhILENBR1MsTUFBTXRCLDZCQUFXaUIsS0FBWCxFQUhmLENBREY7QUFNRDtBQUNGLEtBdkNJLEVBdUNGMUIsV0F2Q0UsRUF3Q0ppQyxTQXhDSSxFQUFQO0FBeUNEOztBQTVFb0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHtPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxudHlwZSBFeGVjdXRvcjxUPiA9IE9ic2VydmFibGU8VD4gfCAoKCkgPT4gcnhqcyRPYnNlcnZhYmxlSW5wdXQ8VD4pO1xyXG5cclxudHlwZSBSZXF1ZXN0PFQ+ID0ge3RhZzogbWl4ZWQsIGV4ZWN1dG9yOiBFeGVjdXRvcjxUPn07XHJcblxyXG50eXBlIFJlc3BvbnNlPFQ+ID0ge1xyXG4gIG9ic2VydmVyOiByeGpzJE9ic2VydmVyPFQ+LFxyXG4gIHVuc3Vic2NyaWJlZDogU3ViamVjdDx2b2lkPixcclxufTtcclxuXHJcbi8qKlxyXG4gKiBPYnNlcnZhYmxlUG9vbCBhbGxvd3MgeW91IHRvIGV4ZWN1dGUgT2JzZXJ2YWJsZXMgb3IgZnVuY3Rpb25zIHRoYXQgcmV0dXJuXHJcbiAqIE9ic2VydmFibGUgaW5wdXRzIChpLmUuIE9ic2VydmFibGVzLCBQcm9taXNlcywgb3IgSXRlcmFibGVzKVxyXG4gKiB3aXRoIGEgY29uY3VycmVuY3kgbGltaXQuXHJcbiAqXHJcbiAqIEV4ZWN1dGlvbiByZXF1ZXN0cyBhcmUgcXVldWVkIGFuZCB1bnN1YnNjcmlwdGlvbnMgYXJlIGZvcndhcmRlZCB0aHJvdWdoXHJcbiAqIChpZiBhIHJlcXVlc3QgaXMgc3RpbGwgb24gdGhlIHF1ZXVlLCBpdHMgZXhlY3V0aW9uIHdpbGwgYmUgY2FuY2VsbGVkLilcclxuICpcclxuICogRm9yIHJlcXVlc3RzIHRoYXQgcmV0dXJuIGEgUHJvbWlzZSwgdGhlIE9ic2VydmFibGVQb29sIGlzIHBlc3NpbWlzdGljXHJcbiAqIGFuZCBhc3N1bWVzIHRoYXQgdGhlIG9wZXJhdGlvbiBpcyB1bmNhbmNlbGxhYmxlIC0gaXQgd2lsbCBub3QgcmVtb3ZlXHJcbiAqIHRoZSBleGVjdXRpb24gZnJvbSB0aGUgcG9vbCB1bnRpbCBpdCByZXNvbHZlcyBvciByZWplY3RzLiBIb3dldmVyXHJcbiAqIGBzY2hlZHVsZSgpYCB3aWxsIHN0aWxsIHJldHVybiBhbiBPYnNlcnZhYmxlIHRvIGVuYWJsZSB0aGUgdXNlIGNhc2VcclxuICogb2YgY2FuY2VsbGluZyByZXF1ZXN0cyB3aGlsZSB0aGV5J3JlIGluIHRoZSBxdWV1ZS5cclxuICpcclxuICogRXhhbXBsZTpcclxuICpcclxuICogICBjb25zdCBwb29sID0gbmV3IE9ic2VydmFibGVQb29sKDIpO1xyXG4gKiAgIHBvb2xcclxuICogICAgIC5zY2hlZHVsZShPYnNlcnZhYmxlLnRpbWVyKDEwMDApLm1hcFRvKDEpKVxyXG4gKiAgICAgLnN1YnNjcmliZShjb25zb2xlLmxvZyk7XHJcbiAqICAgT2JzZXJ2YWJsZS50aW1lcigxMDAwKVxyXG4gKiAgICAgLm1hcFRvKDIpXHJcbiAqICAgICAubGV0KHBvb2wuc2NoZWR1bGUuYmluZChwb29sKSlcclxuICogICAgIC5zdWJzY3JpYmUoY29uc29sZS5sb2cpO1xyXG4gKiAgIHBvb2xcclxuICogICAgIC5zY2hlZHVsZShPYnNlcnZhYmxlLnRpbWVyKDEwMCkubWFwVG8oMykpXHJcbiAqICAgICAuc3Vic2NyaWJlKGNvbnNvbGUubG9nKTtcclxuICpcclxuICogVGhlIG91dHB1dCBoZXJlIGlzIDEsIDIsIHRoZW4gMy4gRGVzcGl0ZSB0aGUgZmFjdCB0aGF0IHRoZSB0aGlyZCBvYnNlcnZhYmxlXHJcbiAqIGZpbmlzaGVzIG1vcmUgcXVpY2tseSwgaXRzIGV4ZWN1dGlvbiBpcyBwb3N0cG9uZWQgdW50aWwgdGhlIGZpcnN0IHR3byBmaW5pc2guXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBPYnNlcnZhYmxlUG9vbDxUPiB7XHJcbiAgX3JlcXVlc3RzOiBTdWJqZWN0PFJlcXVlc3Q8VD4+O1xyXG4gIF9yZXNwb25zZUxpc3RlbmVyczogTWFwPG1peGVkLCBSZXNwb25zZTxUPj47XHJcbiAgX3N1YnNjcmlwdGlvbjogcnhqcyRJU3Vic2NyaXB0aW9uO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihjb25jdXJyZW5jeTogbnVtYmVyKSB7XHJcbiAgICB0aGlzLl9yZXF1ZXN0cyA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICB0aGlzLl9yZXNwb25zZUxpc3RlbmVycyA9IG5ldyBNYXAoKTtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuX2hhbmRsZUV2ZW50cyhjb25jdXJyZW5jeSk7XHJcbiAgfVxyXG5cclxuICBzY2hlZHVsZShleGVjdXRvcjogRXhlY3V0b3I8VD4pOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgIHJldHVybiBPYnNlcnZhYmxlLmNyZWF0ZShvYnNlcnZlciA9PiB7XHJcbiAgICAgIGNvbnN0IHVuc3Vic2NyaWJlZCA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgICAgIGNvbnN0IHRhZyA9IHt9OyAvLyBKdXN0IGEgdW5pcXVlIG9iamVjdC5cclxuICAgICAgdGhpcy5fcmVzcG9uc2VMaXN0ZW5lcnMuc2V0KHRhZywge29ic2VydmVyLCB1bnN1YnNjcmliZWR9KTtcclxuICAgICAgdGhpcy5fcmVxdWVzdHMubmV4dCh7dGFnLCBleGVjdXRvcn0pO1xyXG4gICAgICByZXR1cm4gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3Jlc3BvbnNlTGlzdGVuZXJzLmRlbGV0ZSh0YWcpO1xyXG4gICAgICAgIHVuc3Vic2NyaWJlZC5uZXh0KCk7XHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdhcm5pbmc6IGNhbGxpbmcgZGlzcG9zZSgpIHdpbGwgZXJyb3IgYWxsIGV4ZWN1dGluZyByZXF1ZXN0cy5cclxuICAgKi9cclxuICBkaXNwb3NlKCkge1xyXG4gICAgdGhpcy5fcmVzcG9uc2VMaXN0ZW5lcnMuZm9yRWFjaCgoe29ic2VydmVyfSkgPT4ge1xyXG4gICAgICBvYnNlcnZlci5lcnJvcihFcnJvcignT2JzZXJ2YWJsZVBvb2wgd2FzIGRpc3Bvc2VkJykpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIF9oYW5kbGVFdmVudHMoY29uY3VycmVuY3k6IG51bWJlcik6IHJ4anMkSVN1YnNjcmlwdGlvbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcmVxdWVzdHNcclxuICAgICAgLm1lcmdlTWFwKGV2ZW50ID0+IHtcclxuICAgICAgICBjb25zdCB7ZXhlY3V0b3IsIHRhZ30gPSBldmVudDtcclxuICAgICAgICBjb25zdCBsaXN0ZW5lciA9IHRoaXMuX3Jlc3BvbnNlTGlzdGVuZXJzLmdldCh0YWcpO1xyXG4gICAgICAgIC8vIHVuc3Vic2NyaWJlZCBiZWZvcmUgd2UgY291bGQgZXZlbiBnZXQgdG8gaXQhXHJcbiAgICAgICAgaWYgKGxpc3RlbmVyID09IG51bGwpIHtcclxuICAgICAgICAgIHJldHVybiBPYnNlcnZhYmxlLmVtcHR5KCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IHtvYnNlcnZlciwgdW5zdWJzY3JpYmVkfSA9IGxpc3RlbmVyO1xyXG4gICAgICAgIGxldCByZXN1bHQ7XHJcbiAgICAgICAgaWYgKGV4ZWN1dG9yIGluc3RhbmNlb2YgT2JzZXJ2YWJsZSkge1xyXG4gICAgICAgICAgcmVzdWx0ID0gZXhlY3V0b3I7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIHJlc3VsdCA9IGV4ZWN1dG9yKCk7XHJcbiAgICAgICAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgICAgICAgLy8gQ2F0Y2ggZXJyb3JzIGZyb20gZXhlY3V0b3IoKS5cclxuICAgICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcclxuICAgICAgICAgICAgcmV0dXJuIE9ic2VydmFibGUuZW1wdHkoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIE9ic2VydmFibGUpIHtcclxuICAgICAgICAgIC8vIFdlIGNhbiBzYWZlbHkgZm9yd2FyZCB1bnN1YnNjcmlwdGlvbnMhXHJcbiAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICByZXN1bHRcclxuICAgICAgICAgICAgICAudGFrZVVudGlsKHVuc3Vic2NyaWJlZClcclxuICAgICAgICAgICAgICAvLyAkRmxvd0ZpeE1lOiBGbG93IGRvZXNuJ3QgbGlrZSB0aGlzLlxyXG4gICAgICAgICAgICAgIC5kbyhvYnNlcnZlcilcclxuICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4gT2JzZXJ2YWJsZS5lbXB0eSgpKVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgLy8gSW4gdGhlIGFic2VuY2Ugb2YgY2FuY2VsbGF0aW9uLCBhc3N1bWUgdGhlIHdvcnN0LlxyXG4gICAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgICAgT2JzZXJ2YWJsZS5mcm9tKHJlc3VsdClcclxuICAgICAgICAgICAgICAvLyAkRmxvd0ZpeE1lOiBGbG93IGRvZXNuJ3QgbGlrZSB0aGlzLlxyXG4gICAgICAgICAgICAgIC5kbyhvYnNlcnZlcilcclxuICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4gT2JzZXJ2YWJsZS5lbXB0eSgpKVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0sIGNvbmN1cnJlbmN5KVxyXG4gICAgICAuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ== |
@@ -34,2 +34,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL29uY2UuanMiXSwibmFtZXMiOlsib25jZSIsImZuIiwiZm5NYXliZSIsInJldCIsImFyZ3MiLCJhcHBseSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7Ozs7Ozs7OztBQVllLFNBQVNBLElBQVQsQ0FLYkMsRUFMYSxFQUtxQjtBQUNsQyxNQUFJQyxPQUFlLEdBQUdELEVBQXRCO0FBQ0EsTUFBSUUsR0FBSjtBQUNBLFNBQU8sVUFBUyxHQUFHQyxJQUFaLEVBQWtDO0FBQ3ZDO0FBQ0E7QUFDQSxRQUFJLENBQUNGLE9BQUwsRUFBYztBQUNaLGFBQVFDLEdBQVI7QUFDRCxLQUZELE1BRU87QUFDTEEsTUFBQUEsR0FBRyxHQUFHRCxPQUFPLENBQUNHLEtBQVIsQ0FBYyxJQUFkLEVBQW9CRCxJQUFwQixDQUFOO0FBQ0FGLE1BQUFBLE9BQU8sR0FBRyxJQUFWO0FBQ0EsYUFBT0MsR0FBUDtBQUNEO0FBQ0YsR0FWRDtBQVdEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gb25jZTxcclxuICBULFxyXG4gIFRBcmdzOiBBcnJheTxUPixcclxuICBUUmV0dXJuLFxyXG4gIFRGdW5jOiAoLi4uVEFyZ3MpID0+IFRSZXR1cm4sIC8vIGVzbGludC1kaXNhYmxlLWxpbmUgc3BhY2UtYmVmb3JlLWZ1bmN0aW9uLXBhcmVuXHJcbj4oZm46IFRGdW5jKTogKC4uLlRBcmdzKSA9PiBUUmV0dXJuIHtcclxuICBsZXQgZm5NYXliZTogP1RGdW5jID0gZm47XHJcbiAgbGV0IHJldDogP1RSZXR1cm47XHJcbiAgcmV0dXJuIGZ1bmN0aW9uKC4uLmFyZ3M6IFRBcmdzKTogVFJldHVybiB7XHJcbiAgICAvLyBUaGUgdHlwZSBneW1uYXN0aWNzIGhlcmUgYXJlIHNvIGBmbmAgY2FuIGJlXHJcbiAgICAvLyBnYXJiYWdlIGNvbGxlY3RlZCBvbmNlIHdlJ3ZlIHVzZWQgaXQuXHJcbiAgICBpZiAoIWZuTWF5YmUpIHtcclxuICAgICAgcmV0dXJuIChyZXQ6IGFueSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXQgPSBmbk1heWJlLmFwcGx5KHRoaXMsIGFyZ3MpO1xyXG4gICAgICBmbk1heWJlID0gbnVsbDtcclxuICAgICAgcmV0dXJuIHJldDtcclxuICAgIH1cclxuICB9O1xyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL29uY2UuanMiXSwibmFtZXMiOlsib25jZSIsImZuIiwiZm5NYXliZSIsInJldCIsImFyZ3MiLCJhcHBseSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFZSxTQUFTQSxJQUFULENBS2JDLEVBTGEsRUFLcUI7QUFDbEMsTUFBSUMsT0FBZSxHQUFHRCxFQUF0QjtBQUNBLE1BQUlFLEdBQUo7QUFDQSxTQUFPLFVBQVMsR0FBR0MsSUFBWixFQUFrQztBQUN2QztBQUNBO0FBQ0EsUUFBSSxDQUFDRixPQUFMLEVBQWM7QUFDWixhQUFRQyxHQUFSO0FBQ0QsS0FGRCxNQUVPO0FBQ0xBLE1BQUFBLEdBQUcsR0FBR0QsT0FBTyxDQUFDRyxLQUFSLENBQWMsSUFBZCxFQUFvQkQsSUFBcEIsQ0FBTjtBQUNBRixNQUFBQSxPQUFPLEdBQUcsSUFBVjtBQUNBLGFBQU9DLEdBQVA7QUFDRDtBQUNGLEdBVkQ7QUFXRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG9uY2U8XHJcbiAgVCxcclxuICBUQXJnczogQXJyYXk8VD4sXHJcbiAgVFJldHVybixcclxuICBURnVuYzogKC4uLlRBcmdzKSA9PiBUUmV0dXJuLCAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHNwYWNlLWJlZm9yZS1mdW5jdGlvbi1wYXJlblxyXG4+KGZuOiBURnVuYyk6ICguLi5UQXJncykgPT4gVFJldHVybiB7XHJcbiAgbGV0IGZuTWF5YmU6ID9URnVuYyA9IGZuO1xyXG4gIGxldCByZXQ6ID9UUmV0dXJuO1xyXG4gIHJldHVybiBmdW5jdGlvbiguLi5hcmdzOiBUQXJncyk6IFRSZXR1cm4ge1xyXG4gICAgLy8gVGhlIHR5cGUgZ3ltbmFzdGljcyBoZXJlIGFyZSBzbyBgZm5gIGNhbiBiZVxyXG4gICAgLy8gZ2FyYmFnZSBjb2xsZWN0ZWQgb25jZSB3ZSd2ZSB1c2VkIGl0LlxyXG4gICAgaWYgKCFmbk1heWJlKSB7XHJcbiAgICAgIHJldHVybiAocmV0OiBhbnkpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0ID0gZm5NYXliZS5hcHBseSh0aGlzLCBhcmdzKTtcclxuICAgICAgZm5NYXliZSA9IG51bGw7XHJcbiAgICAgIHJldHVybiByZXQ7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG4iXX0= |
@@ -39,2 +39,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BhY2thZ2UuanMiXSwibmFtZXMiOlsiU0VNVkVSSVNIX1JFIiwiZ2V0UGFja2FnZU1pbm9yVmVyc2lvbiIsInBhY2thZ2VKc29uUGF0aCIsInBrZ0pzb24iLCJKU09OIiwicGFyc2UiLCJmcyIsInJlYWRGaWxlU3luYyIsIm1hdGNoIiwiZXhlYyIsInZlcnNpb24iLCJtaW5vclZlcnNpb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBOzs7Ozs7Ozs7OztBQWVBO0FBQ0E7QUFDQSxNQUFNQSxZQUFZLEdBQUcsMENBQXJCOztBQUVPLFNBQVNDLHNCQUFULENBQWdDQyxlQUFoQyxFQUFpRTtBQUN0RSxRQUFNQyxPQUFPLEdBQUdDLElBQUksQ0FBQ0MsS0FBTCxDQUFXQyxZQUFHQyxZQUFILENBQWdCTCxlQUFoQixFQUFpQyxNQUFqQyxDQUFYLENBQWhCO0FBQ0EsUUFBTU0sS0FBSyxHQUFHUixZQUFZLENBQUNTLElBQWIsQ0FBa0JOLE9BQU8sQ0FBQ08sT0FBMUIsQ0FBZDtBQUNBLHVCQUFVRixLQUFWLEVBSHNFLENBSXRFOztBQUNBLFFBQU1HLFlBQVksR0FBR0gsS0FBSyxDQUFDLENBQUQsQ0FBMUIsQ0FMc0UsQ0FNdEU7QUFDQTs7QUFDQSxTQUFPRyxZQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IGZzIGZyb20gJ2ZzJztcclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5cclxuLy8gVXNlIGEgcmVnZXggYW5kIG5vdCB0aGUgXCJzZW12ZXJcIiBtb2R1bGUgc28gdGhlIHJlc3VsdCBoZXJlIGlzIHRoZSBzYW1lXHJcbi8vIGFzIGZyb20gcHl0aG9uIGNvZGUuXHJcbmNvbnN0IFNFTVZFUklTSF9SRSA9IC9eKFxcZCspXFwuKFxcZCspXFwuKFxcZCspKD86LShbYS16MC05Li1dKykpPyQvO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFBhY2thZ2VNaW5vclZlcnNpb24ocGFja2FnZUpzb25QYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIGNvbnN0IHBrZ0pzb24gPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhwYWNrYWdlSnNvblBhdGgsICd1dGY4JykpO1xyXG4gIGNvbnN0IG1hdGNoID0gU0VNVkVSSVNIX1JFLmV4ZWMocGtnSnNvbi52ZXJzaW9uKTtcclxuICBpbnZhcmlhbnQobWF0Y2gpO1xyXG4gIC8vIGNvbnN0IG1ham9yVmVyc2lvbiA9IG1hdGNoWzFdO1xyXG4gIGNvbnN0IG1pbm9yVmVyc2lvbiA9IG1hdGNoWzJdO1xyXG4gIC8vIGNvbnN0IHBhdGNoVmVyc2lvbiA9IG1hdGNoWzNdO1xyXG4gIC8vIGNvbnN0IHByZXJlbGVhc2VWZXJzaW9uID0gbWF0Y2hbNF07XHJcbiAgcmV0dXJuIG1pbm9yVmVyc2lvbjtcclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BhY2thZ2UuanMiXSwibmFtZXMiOlsiU0VNVkVSSVNIX1JFIiwiZ2V0UGFja2FnZU1pbm9yVmVyc2lvbiIsInBhY2thZ2VKc29uUGF0aCIsInBrZ0pzb24iLCJKU09OIiwicGFyc2UiLCJmcyIsInJlYWRGaWxlU3luYyIsIm1hdGNoIiwiZXhlYyIsInZlcnNpb24iLCJtaW5vclZlcnNpb24iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFLQTtBQUNBO0FBQ0EsTUFBTUEsWUFBWSxHQUFHLDBDQUFyQjs7QUFFTyxTQUFTQyxzQkFBVCxDQUFnQ0MsZUFBaEMsRUFBaUU7QUFDdEUsUUFBTUMsT0FBTyxHQUFHQyxJQUFJLENBQUNDLEtBQUwsQ0FBV0MsWUFBR0MsWUFBSCxDQUFnQkwsZUFBaEIsRUFBaUMsTUFBakMsQ0FBWCxDQUFoQjtBQUNBLFFBQU1NLEtBQUssR0FBR1IsWUFBWSxDQUFDUyxJQUFiLENBQWtCTixPQUFPLENBQUNPLE9BQTFCLENBQWQ7QUFDQSx1QkFBVUYsS0FBVixFQUhzRSxDQUl0RTs7QUFDQSxRQUFNRyxZQUFZLEdBQUdILEtBQUssQ0FBQyxDQUFELENBQTFCLENBTHNFLENBTXRFO0FBQ0E7O0FBQ0EsU0FBT0csWUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBmcyBmcm9tICdmcyc7XHJcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnYXNzZXJ0JztcclxuXHJcbi8vIFVzZSBhIHJlZ2V4IGFuZCBub3QgdGhlIFwic2VtdmVyXCIgbW9kdWxlIHNvIHRoZSByZXN1bHQgaGVyZSBpcyB0aGUgc2FtZVxyXG4vLyBhcyBmcm9tIHB5dGhvbiBjb2RlLlxyXG5jb25zdCBTRU1WRVJJU0hfUkUgPSAvXihcXGQrKVxcLihcXGQrKVxcLihcXGQrKSg/Oi0oW2EtejAtOS4tXSspKT8kLztcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRQYWNrYWdlTWlub3JWZXJzaW9uKHBhY2thZ2VKc29uUGF0aDogc3RyaW5nKTogc3RyaW5nIHtcclxuICBjb25zdCBwa2dKc29uID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMocGFja2FnZUpzb25QYXRoLCAndXRmOCcpKTtcclxuICBjb25zdCBtYXRjaCA9IFNFTVZFUklTSF9SRS5leGVjKHBrZ0pzb24udmVyc2lvbik7XHJcbiAgaW52YXJpYW50KG1hdGNoKTtcclxuICAvLyBjb25zdCBtYWpvclZlcnNpb24gPSBtYXRjaFsxXTtcclxuICBjb25zdCBtaW5vclZlcnNpb24gPSBtYXRjaFsyXTtcclxuICAvLyBjb25zdCBwYXRjaFZlcnNpb24gPSBtYXRjaFszXTtcclxuICAvLyBjb25zdCBwcmVyZWxlYXNlVmVyc2lvbiA9IG1hdGNoWzRdO1xyXG4gIHJldHVybiBtaW5vclZlcnNpb247XHJcbn1cclxuIl19 |
{ | ||
"name": "@atom-ide-community/nuclide-commons", | ||
"version": "0.8.2", | ||
"version": "0.8.3", | ||
"description": "Common Nuclide node modules.", | ||
@@ -10,10 +10,9 @@ "author": "NEEDS OWNER", | ||
"scripts": { | ||
"pub": "npm version patch && pnpm install", | ||
"test": "true" | ||
}, | ||
"dependencies": { | ||
"@atom-ide-community/nuclide-node-transpiler": "0.8.2", | ||
"@atom-ide-community/nuclide-node-transpiler": "0.8.3", | ||
"cr": "0.1.0", | ||
"domexception": "1.0.1", | ||
"dompurify": "2.1.1", | ||
"dompurify": "2.2.6", | ||
"event-kit": "2.2.0", | ||
@@ -20,0 +19,0 @@ "event-target-shim": "3.0.1", |
@@ -121,2 +121,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Bhc3Nlc0dLLmpzIl0sIm5hbWVzIjpbImdldEdhdGVrZWVwZXIiLCJHYXRla2VlcGVyIiwiaXNHa0VuYWJsZWQiLCJuYW1lIiwiYXN5bmNJc0drRW5hYmxlZCIsInRpbWVvdXQiLCJQcm9taXNlIiwicmVzb2x2ZSIsIm9uY2VHa0luaXRpYWxpemVkIiwiY2FsbGJhY2siLCJjYW5jZWxlZCIsInByb2Nlc3MiLCJuZXh0VGljayIsIlVuaXZlcnNhbERpc3Bvc2FibGUiLCJnZXRDYWNoZUVudHJpZXMiLCJwYXNzZXNHSyIsImdhdGVrZWVwZXIiLCJlIiwib25jZUdrSW5pdGlhbGl6ZWRBc3luYyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBOzs7Ozs7Ozs7Ozs7QUFlQTs7OztBQUlBLE1BQU1BLGFBQWEsR0FBRyxtQkFBSyxNQUFNO0FBQy9CLE1BQUlDLFVBQUosQ0FEK0IsQ0FFL0I7QUFDQTtBQUNBO0FBQ0E7O0FBQ0VBLEVBQUFBLFVBQVUsR0FBRyxNQUFNO0FBQ2pCQyxJQUFBQSxXQUFXLENBQUNDLElBQUQsRUFBeUI7QUFDbEMsYUFBTyxJQUFQO0FBQ0Q7O0FBRURDLElBQUFBLGdCQUFnQixDQUFDRCxJQUFELEVBQWVFLE9BQWYsRUFBb0Q7QUFDbEUsYUFBT0MsT0FBTyxDQUFDQyxPQUFSLEVBQVA7QUFDRDs7QUFFREMsSUFBQUEsaUJBQWlCLENBQUNDLFFBQUQsRUFBcUM7QUFDcEQsVUFBSUMsUUFBUSxHQUFHLEtBQWY7QUFDQUMsTUFBQUEsT0FBTyxDQUFDQyxRQUFSLENBQWlCLE1BQU07QUFDckIsWUFBSSxDQUFDRixRQUFMLEVBQWU7QUFDYkQsVUFBQUEsUUFBUTtBQUNUO0FBQ0YsT0FKRDtBQUtBLGFBQU8sSUFBSUksNEJBQUosQ0FBd0IsTUFBTTtBQUNuQ0gsUUFBQUEsUUFBUSxHQUFHLElBQVg7QUFDRCxPQUZNLENBQVA7QUFHRDs7QUFFREksSUFBQUEsZUFBZSxHQUFnQztBQUM3QyxhQUFPLEVBQVA7QUFDRDs7QUF2QmdCLEdBQW5CLENBTjZCLENBK0IvQjs7QUFDQSxTQUFPLElBQUliLFVBQUosRUFBUDtBQUNELENBakNxQixDQUF0QjtBQW1DQTs7Ozs7Ozs7OztJQVMrQmMsUSxHQUFmLGVBQWVBLFFBQWYsQ0FDZFosSUFEYyxFQUVkO0FBQ0FFLE9BSGMsRUFJSTtBQUNsQixRQUFNVyxVQUFVLEdBQUdoQixhQUFhLEVBQWhDOztBQUNBLE1BQUk7QUFDRixXQUFPLENBQUMsTUFBTWdCLFVBQVUsQ0FBQ1osZ0JBQVgsQ0FBNEJELElBQTVCLEVBQWtDRSxPQUFsQyxDQUFQLE1BQXVELElBQTlEO0FBQ0QsR0FGRCxDQUVFLE9BQU9ZLENBQVAsRUFBVTtBQUNWO0FBQ0EsV0FBT0QsVUFBVSxDQUFDZCxXQUFYLENBQXVCQyxJQUF2QixNQUFpQyxJQUF4QztBQUNEO0FBQ0YsQztBQUVEOzs7Ozs7Ozs7Ozs7OztBQVVPLFNBQVNELFdBQVQsQ0FBcUJDLElBQXJCLEVBQTZDO0FBQ2xELFNBQU9ILGFBQWEsR0FBR0UsV0FBaEIsQ0FBNEJDLElBQTVCLENBQVA7QUFDRDs7QUFFTSxTQUFTSyxpQkFBVCxDQUEyQkMsUUFBM0IsRUFBK0Q7QUFDcEUsU0FBT1QsYUFBYSxHQUFHUSxpQkFBaEIsQ0FBa0NDLFFBQWxDLENBQVA7QUFDRDs7QUFFTSxTQUFTUyxzQkFBVCxHQUFpRDtBQUN0RCxTQUFPLElBQUlaLE9BQUosQ0FBWUMsT0FBTyxJQUFJO0FBQzVCUCxJQUFBQSxhQUFhLEdBQUdRLGlCQUFoQixDQUFrQyxNQUFNRCxPQUFPLEVBQS9DO0FBQ0QsR0FGTSxDQUFQO0FBR0Q7O0FBRU0sU0FBU08sZUFBVCxHQUF3RDtBQUM3RCxTQUFPZCxhQUFhLEdBQUdjLGVBQWhCLEVBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgb25jZSBmcm9tICcuL29uY2UnO1xyXG5pbXBvcnQgVW5pdmVyc2FsRGlzcG9zYWJsZSBmcm9tICcuL1VuaXZlcnNhbERpc3Bvc2FibGUnO1xyXG5cclxuLyoqXHJcbiAqIEdldCB0aGUgYWN0dWFsIEdhdGVrZWVwZXIgY29uc3RydWN0b3Igb3Igc3R1YiB0aGUgcmVsZXZhbnQgbWV0aG9kcyBmb3IgT1NTXHJcbiAqIGZyaWVuZGxpbmVzcy5cclxuICovXHJcbmNvbnN0IGdldEdhdGVrZWVwZXIgPSBvbmNlKCgpID0+IHtcclxuICBsZXQgR2F0ZWtlZXBlcjtcclxuICAvLyB0cnkge1xyXG4gIC8vICAgJEZsb3dGQlxyXG4gIC8vICAgR2F0ZWtlZXBlciA9IHJlcXVpcmUoJy4uL2ZiLWdhdGVrZWVwZXItcmF3JykuR2F0ZWtlZXBlcjsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBudWNsaWRlLWludGVybmFsL21vZHVsZXMtZGVwZW5kZW5jaWVzXHJcbiAgLy8gfSBjYXRjaCAoZSkge1xyXG4gICAgR2F0ZWtlZXBlciA9IGNsYXNzIHtcclxuICAgICAgaXNHa0VuYWJsZWQobmFtZTogc3RyaW5nKTogP2Jvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhc3luY0lzR2tFbmFibGVkKG5hbWU6IHN0cmluZywgdGltZW91dD86IG51bWJlcik6IFByb21pc2U8P2Jvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG9uY2VHa0luaXRpYWxpemVkKGNhbGxiYWNrOiAoKSA9PiBtaXhlZCk6IElEaXNwb3NhYmxlIHtcclxuICAgICAgICBsZXQgY2FuY2VsZWQgPSBmYWxzZTtcclxuICAgICAgICBwcm9jZXNzLm5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgIGlmICghY2FuY2VsZWQpIHtcclxuICAgICAgICAgICAgY2FsbGJhY2soKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUoKCkgPT4ge1xyXG4gICAgICAgICAgY2FuY2VsZWQgPSB0cnVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBnZXRDYWNoZUVudHJpZXMoKTogSXRlcmFibGU8W3N0cmluZywgYm9vbGVhbl0+IHtcclxuICAgICAgICByZXR1cm4gW107XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgLy8gfVxyXG4gIHJldHVybiBuZXcgR2F0ZWtlZXBlcigpO1xyXG59KTtcclxuXHJcbi8qKlxyXG4gKiBDaGVjayBhIEdLLiBTaWxlbnRseSByZXR1cm4gZmFsc2Ugb24gZXJyb3IuXHJcbiAqXHJcbiAqIChOT1RFKSBUaGUgdW5kZXJseWluZyBtb2R1bGUgKGZiLWdhdGVrZWVwZXIpIGNoZWNrcyB0aGUgVW5peCBuYW1lIHRoZSBub2RlXHJcbiAqIHByb2Nlc3MgaXMgcnVubmluZyBvbi4gSWYgeW91IHVzZSB0aGlzIHByZWRpY2F0ZSBpbiBhIHBhY2thZ2UgcnVubmluZyBvbiB0aGVcclxuICogc2VydmVyIChlLmcuLCBhIGxhbmd1YWdlIHNlcnZpY2UgYmFja2VuZCkgdGhlbiBpdCBtaWdodCBub3QgY2hlY2sgdGhlIFVuaXhcclxuICogbmFtZSB5b3UgZXhwZWN0IChlLmcuLCBgc3Ztc2NtYCBvbiBhbiBPbiBEZW1hbmQgaW5zdGVhZCBvZiB0aGUgdXNlcidzIFVuaXhcclxuICogbmFtZSkuXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCAoYXN5bmMgZnVuY3Rpb24gcGFzc2VzR0soXHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIC8vIHRpbWVvdXQgaW4gbXNcclxuICB0aW1lb3V0PzogbnVtYmVyLFxyXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICBjb25zdCBnYXRla2VlcGVyID0gZ2V0R2F0ZWtlZXBlcigpO1xyXG4gIHRyeSB7XHJcbiAgICByZXR1cm4gKGF3YWl0IGdhdGVrZWVwZXIuYXN5bmNJc0drRW5hYmxlZChuYW1lLCB0aW1lb3V0KSkgPT09IHRydWU7XHJcbiAgfSBjYXRjaCAoZSkge1xyXG4gICAgLy8gSWYgdGhlIEdhdGVrZWVwZXIgY2xhc3MgaW1wbGVtZW50cyBjYWNoaW5nLCB0aGlzIG1heSByZXRyaWV2ZSBhIGNhY2hlZCB2YWx1ZS5cclxuICAgIHJldHVybiBnYXRla2VlcGVyLmlzR2tFbmFibGVkKG5hbWUpID09PSB0cnVlO1xyXG4gIH1cclxufSk7XHJcblxyXG4vKipcclxuICogU3luY2hyb25vdXMgR0sgY2hlY2suIFRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IEdLcyBoYXZlIGxvYWRlZC4gVGhpc1xyXG4gKiBzaG91bGQgYmUgdXNlZCBpbnNpZGUgYSBgb25jZUdrSW5pdGlhbGl6ZWRgLlxyXG4gKlxyXG4gKiAoTk9URSkgVGhlIHVuZGVybHlpbmcgbW9kdWxlIChmYi1nYXRla2VlcGVyKSBjaGVja3MgdGhlIFVuaXggbmFtZSB0aGUgbm9kZVxyXG4gKiBwcm9jZXNzIGlzIHJ1bm5pbmcgb24uIElmIHlvdSB1c2UgdGhpcyBwcmVkaWNhdGUgaW4gYSBwYWNrYWdlIHJ1bm5pbmcgb24gdGhlXHJcbiAqIHNlcnZlciAoZS5nLiwgYSBsYW5ndWFnZSBzZXJ2aWNlIGJhY2tlbmQpIHRoZW4gaXQgbWlnaHQgbm90IGNoZWNrIHRoZSBVbml4XHJcbiAqIG5hbWUgeW91IGV4cGVjdCAoZS5nLiwgYHN2Y3NjbWAgb24gYW4gT24gRGVtYW5kIGluc3RlYWQgb2YgdGhlIHVzZXIncyBVbml4XHJcbiAqIG5hbWUpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzR2tFbmFibGVkKG5hbWU6IHN0cmluZyk6ID9ib29sZWFuIHtcclxuICByZXR1cm4gZ2V0R2F0ZWtlZXBlcigpLmlzR2tFbmFibGVkKG5hbWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb25jZUdrSW5pdGlhbGl6ZWQoY2FsbGJhY2s6ICgpID0+IG1peGVkKTogSURpc3Bvc2FibGUge1xyXG4gIHJldHVybiBnZXRHYXRla2VlcGVyKCkub25jZUdrSW5pdGlhbGl6ZWQoY2FsbGJhY2spO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb25jZUdrSW5pdGlhbGl6ZWRBc3luYygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XHJcbiAgICBnZXRHYXRla2VlcGVyKCkub25jZUdrSW5pdGlhbGl6ZWQoKCkgPT4gcmVzb2x2ZSgpKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENhY2hlRW50cmllcygpOiBJdGVyYWJsZTxbc3RyaW5nLCBib29sZWFuXT4ge1xyXG4gIHJldHVybiBnZXRHYXRla2VlcGVyKCkuZ2V0Q2FjaGVFbnRyaWVzKCk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Bhc3Nlc0dLLmpzIl0sIm5hbWVzIjpbImdldEdhdGVrZWVwZXIiLCJHYXRla2VlcGVyIiwiaXNHa0VuYWJsZWQiLCJuYW1lIiwiYXN5bmNJc0drRW5hYmxlZCIsInRpbWVvdXQiLCJQcm9taXNlIiwicmVzb2x2ZSIsIm9uY2VHa0luaXRpYWxpemVkIiwiY2FsbGJhY2siLCJjYW5jZWxlZCIsInByb2Nlc3MiLCJuZXh0VGljayIsIlVuaXZlcnNhbERpc3Bvc2FibGUiLCJnZXRDYWNoZUVudHJpZXMiLCJwYXNzZXNHSyIsImdhdGVrZWVwZXIiLCJlIiwib25jZUdrSW5pdGlhbGl6ZWRBc3luYyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBS0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxNQUFNQSxhQUFhLEdBQUcsbUJBQUssTUFBTTtBQUMvQixNQUFJQyxVQUFKLENBRCtCLENBRS9CO0FBQ0E7QUFDQTtBQUNBOztBQUNFQSxFQUFBQSxVQUFVLEdBQUcsTUFBTTtBQUNqQkMsSUFBQUEsV0FBVyxDQUFDQyxJQUFELEVBQXlCO0FBQ2xDLGFBQU8sSUFBUDtBQUNEOztBQUVEQyxJQUFBQSxnQkFBZ0IsQ0FBQ0QsSUFBRCxFQUFlRSxPQUFmLEVBQW9EO0FBQ2xFLGFBQU9DLE9BQU8sQ0FBQ0MsT0FBUixFQUFQO0FBQ0Q7O0FBRURDLElBQUFBLGlCQUFpQixDQUFDQyxRQUFELEVBQXFDO0FBQ3BELFVBQUlDLFFBQVEsR0FBRyxLQUFmO0FBQ0FDLE1BQUFBLE9BQU8sQ0FBQ0MsUUFBUixDQUFpQixNQUFNO0FBQ3JCLFlBQUksQ0FBQ0YsUUFBTCxFQUFlO0FBQ2JELFVBQUFBLFFBQVE7QUFDVDtBQUNGLE9BSkQ7QUFLQSxhQUFPLElBQUlJLDRCQUFKLENBQXdCLE1BQU07QUFDbkNILFFBQUFBLFFBQVEsR0FBRyxJQUFYO0FBQ0QsT0FGTSxDQUFQO0FBR0Q7O0FBRURJLElBQUFBLGVBQWUsR0FBZ0M7QUFDN0MsYUFBTyxFQUFQO0FBQ0Q7O0FBdkJnQixHQUFuQixDQU42QixDQStCL0I7O0FBQ0EsU0FBTyxJQUFJYixVQUFKLEVBQVA7QUFDRCxDQWpDcUIsQ0FBdEI7QUFtQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztJQUMrQmMsUSxHQUFmLGVBQWVBLFFBQWYsQ0FDZFosSUFEYyxFQUVkO0FBQ0FFLE9BSGMsRUFJSTtBQUNsQixRQUFNVyxVQUFVLEdBQUdoQixhQUFhLEVBQWhDOztBQUNBLE1BQUk7QUFDRixXQUFPLENBQUMsTUFBTWdCLFVBQVUsQ0FBQ1osZ0JBQVgsQ0FBNEJELElBQTVCLEVBQWtDRSxPQUFsQyxDQUFQLE1BQXVELElBQTlEO0FBQ0QsR0FGRCxDQUVFLE9BQU9ZLENBQVAsRUFBVTtBQUNWO0FBQ0EsV0FBT0QsVUFBVSxDQUFDZCxXQUFYLENBQXVCQyxJQUF2QixNQUFpQyxJQUF4QztBQUNEO0FBQ0YsQztBQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7OztBQUNPLFNBQVNELFdBQVQsQ0FBcUJDLElBQXJCLEVBQTZDO0FBQ2xELFNBQU9ILGFBQWEsR0FBR0UsV0FBaEIsQ0FBNEJDLElBQTVCLENBQVA7QUFDRDs7QUFFTSxTQUFTSyxpQkFBVCxDQUEyQkMsUUFBM0IsRUFBK0Q7QUFDcEUsU0FBT1QsYUFBYSxHQUFHUSxpQkFBaEIsQ0FBa0NDLFFBQWxDLENBQVA7QUFDRDs7QUFFTSxTQUFTUyxzQkFBVCxHQUFpRDtBQUN0RCxTQUFPLElBQUlaLE9BQUosQ0FBWUMsT0FBTyxJQUFJO0FBQzVCUCxJQUFBQSxhQUFhLEdBQUdRLGlCQUFoQixDQUFrQyxNQUFNRCxPQUFPLEVBQS9DO0FBQ0QsR0FGTSxDQUFQO0FBR0Q7O0FBRU0sU0FBU08sZUFBVCxHQUF3RDtBQUM3RCxTQUFPZCxhQUFhLEdBQUdjLGVBQWhCLEVBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgb25jZSBmcm9tICcuL29uY2UnO1xyXG5pbXBvcnQgVW5pdmVyc2FsRGlzcG9zYWJsZSBmcm9tICcuL1VuaXZlcnNhbERpc3Bvc2FibGUnO1xyXG5cclxuLyoqXHJcbiAqIEdldCB0aGUgYWN0dWFsIEdhdGVrZWVwZXIgY29uc3RydWN0b3Igb3Igc3R1YiB0aGUgcmVsZXZhbnQgbWV0aG9kcyBmb3IgT1NTXHJcbiAqIGZyaWVuZGxpbmVzcy5cclxuICovXHJcbmNvbnN0IGdldEdhdGVrZWVwZXIgPSBvbmNlKCgpID0+IHtcclxuICBsZXQgR2F0ZWtlZXBlcjtcclxuICAvLyB0cnkge1xyXG4gIC8vICAgJEZsb3dGQlxyXG4gIC8vICAgR2F0ZWtlZXBlciA9IHJlcXVpcmUoJy4uL2ZiLWdhdGVrZWVwZXItcmF3JykuR2F0ZWtlZXBlcjsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBudWNsaWRlLWludGVybmFsL21vZHVsZXMtZGVwZW5kZW5jaWVzXHJcbiAgLy8gfSBjYXRjaCAoZSkge1xyXG4gICAgR2F0ZWtlZXBlciA9IGNsYXNzIHtcclxuICAgICAgaXNHa0VuYWJsZWQobmFtZTogc3RyaW5nKTogP2Jvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBhc3luY0lzR2tFbmFibGVkKG5hbWU6IHN0cmluZywgdGltZW91dD86IG51bWJlcik6IFByb21pc2U8P2Jvb2xlYW4+IHtcclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIG9uY2VHa0luaXRpYWxpemVkKGNhbGxiYWNrOiAoKSA9PiBtaXhlZCk6IElEaXNwb3NhYmxlIHtcclxuICAgICAgICBsZXQgY2FuY2VsZWQgPSBmYWxzZTtcclxuICAgICAgICBwcm9jZXNzLm5leHRUaWNrKCgpID0+IHtcclxuICAgICAgICAgIGlmICghY2FuY2VsZWQpIHtcclxuICAgICAgICAgICAgY2FsbGJhY2soKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUoKCkgPT4ge1xyXG4gICAgICAgICAgY2FuY2VsZWQgPSB0cnVlO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBnZXRDYWNoZUVudHJpZXMoKTogSXRlcmFibGU8W3N0cmluZywgYm9vbGVhbl0+IHtcclxuICAgICAgICByZXR1cm4gW107XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgLy8gfVxyXG4gIHJldHVybiBuZXcgR2F0ZWtlZXBlcigpO1xyXG59KTtcclxuXHJcbi8qKlxyXG4gKiBDaGVjayBhIEdLLiBTaWxlbnRseSByZXR1cm4gZmFsc2Ugb24gZXJyb3IuXHJcbiAqXHJcbiAqIChOT1RFKSBUaGUgdW5kZXJseWluZyBtb2R1bGUgKGZiLWdhdGVrZWVwZXIpIGNoZWNrcyB0aGUgVW5peCBuYW1lIHRoZSBub2RlXHJcbiAqIHByb2Nlc3MgaXMgcnVubmluZyBvbi4gSWYgeW91IHVzZSB0aGlzIHByZWRpY2F0ZSBpbiBhIHBhY2thZ2UgcnVubmluZyBvbiB0aGVcclxuICogc2VydmVyIChlLmcuLCBhIGxhbmd1YWdlIHNlcnZpY2UgYmFja2VuZCkgdGhlbiBpdCBtaWdodCBub3QgY2hlY2sgdGhlIFVuaXhcclxuICogbmFtZSB5b3UgZXhwZWN0IChlLmcuLCBgc3Ztc2NtYCBvbiBhbiBPbiBEZW1hbmQgaW5zdGVhZCBvZiB0aGUgdXNlcidzIFVuaXhcclxuICogbmFtZSkuXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCAoYXN5bmMgZnVuY3Rpb24gcGFzc2VzR0soXHJcbiAgbmFtZTogc3RyaW5nLFxyXG4gIC8vIHRpbWVvdXQgaW4gbXNcclxuICB0aW1lb3V0PzogbnVtYmVyLFxyXG4pOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICBjb25zdCBnYXRla2VlcGVyID0gZ2V0R2F0ZWtlZXBlcigpO1xyXG4gIHRyeSB7XHJcbiAgICByZXR1cm4gKGF3YWl0IGdhdGVrZWVwZXIuYXN5bmNJc0drRW5hYmxlZChuYW1lLCB0aW1lb3V0KSkgPT09IHRydWU7XHJcbiAgfSBjYXRjaCAoZSkge1xyXG4gICAgLy8gSWYgdGhlIEdhdGVrZWVwZXIgY2xhc3MgaW1wbGVtZW50cyBjYWNoaW5nLCB0aGlzIG1heSByZXRyaWV2ZSBhIGNhY2hlZCB2YWx1ZS5cclxuICAgIHJldHVybiBnYXRla2VlcGVyLmlzR2tFbmFibGVkKG5hbWUpID09PSB0cnVlO1xyXG4gIH1cclxufSk7XHJcblxyXG4vKipcclxuICogU3luY2hyb25vdXMgR0sgY2hlY2suIFRoZXJlIGlzIG5vIGd1YXJhbnRlZSB0aGF0IEdLcyBoYXZlIGxvYWRlZC4gVGhpc1xyXG4gKiBzaG91bGQgYmUgdXNlZCBpbnNpZGUgYSBgb25jZUdrSW5pdGlhbGl6ZWRgLlxyXG4gKlxyXG4gKiAoTk9URSkgVGhlIHVuZGVybHlpbmcgbW9kdWxlIChmYi1nYXRla2VlcGVyKSBjaGVja3MgdGhlIFVuaXggbmFtZSB0aGUgbm9kZVxyXG4gKiBwcm9jZXNzIGlzIHJ1bm5pbmcgb24uIElmIHlvdSB1c2UgdGhpcyBwcmVkaWNhdGUgaW4gYSBwYWNrYWdlIHJ1bm5pbmcgb24gdGhlXHJcbiAqIHNlcnZlciAoZS5nLiwgYSBsYW5ndWFnZSBzZXJ2aWNlIGJhY2tlbmQpIHRoZW4gaXQgbWlnaHQgbm90IGNoZWNrIHRoZSBVbml4XHJcbiAqIG5hbWUgeW91IGV4cGVjdCAoZS5nLiwgYHN2Y3NjbWAgb24gYW4gT24gRGVtYW5kIGluc3RlYWQgb2YgdGhlIHVzZXIncyBVbml4XHJcbiAqIG5hbWUpLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGlzR2tFbmFibGVkKG5hbWU6IHN0cmluZyk6ID9ib29sZWFuIHtcclxuICByZXR1cm4gZ2V0R2F0ZWtlZXBlcigpLmlzR2tFbmFibGVkKG5hbWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb25jZUdrSW5pdGlhbGl6ZWQoY2FsbGJhY2s6ICgpID0+IG1peGVkKTogSURpc3Bvc2FibGUge1xyXG4gIHJldHVybiBnZXRHYXRla2VlcGVyKCkub25jZUdrSW5pdGlhbGl6ZWQoY2FsbGJhY2spO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb25jZUdrSW5pdGlhbGl6ZWRBc3luYygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XHJcbiAgICBnZXRHYXRla2VlcGVyKCkub25jZUdrSW5pdGlhbGl6ZWQoKCkgPT4gcmVzb2x2ZSgpKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldENhY2hlRW50cmllcygpOiBJdGVyYWJsZTxbc3RyaW5nLCBib29sZWFuXT4ge1xyXG4gIHJldHVybiBnZXRHYXRla2VlcGVyKCkuZ2V0Q2FjaGVFbnRyaWVzKCk7XHJcbn1cclxuIl19 |
@@ -39,2 +39,2 @@ /** | ||
}; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BhdGNoLWF0b20tY29uc29sZS5qcyJdLCJuYW1lcyI6WyJDb25zb2xlIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJwYXRjaEF0b21Db25zb2xlIiwibWFpbkNvbnNvbGUiLCJwcm9jZXNzIiwic3Rkb3V0Iiwic3RkZXJyIiwicmVuZGVyZXJDb25zb2xlIiwiZ2xvYmFsIiwiY29uc29sZSIsIm1lcmdlZENvbnNvbGUiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwiZmlsdGVyIiwicHJvcCIsImZvckVhY2giLCJhcmdzIl0sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7QUFXQTtBQUVBOztBQUVBLE1BQU07QUFBQ0EsRUFBQUE7QUFBRCxJQUFZQyxPQUFPLENBQUMsU0FBRCxDQUF6QjtBQUVBOzs7Ozs7Ozs7QUFPQUMsTUFBTSxDQUFDQyxPQUFQLEdBQWlCLFNBQVNDLGdCQUFULEdBQTRCO0FBQzNDLFFBQU1DLFdBQVcsR0FBRyxJQUFJTCxPQUFKLENBQVlNLE9BQU8sQ0FBQ0MsTUFBcEIsRUFBNEJELE9BQU8sQ0FBQ0UsTUFBcEMsQ0FBcEI7QUFDQSxRQUFNQyxlQUFlLEdBQUdDLE1BQU0sQ0FBQ0MsT0FBL0I7QUFDQSxRQUFNQyxhQUFhLEdBQUcsRUFBdEI7QUFDQUMsRUFBQUEsTUFBTSxDQUFDQyxtQkFBUCxDQUEyQkwsZUFBM0IsRUFDR00sTUFESCxDQUNVQyxJQUFJLElBQUksT0FBT1AsZUFBZSxDQUFDTyxJQUFELENBQXRCLEtBQWlDLFVBRG5ELEVBRUdDLE9BRkgsQ0FFV0QsSUFBSSxJQUFJO0FBQ2ZKLElBQUFBLGFBQWEsQ0FBQ0ksSUFBRCxDQUFiLEdBQ0UsT0FBT1gsV0FBVyxDQUFDVyxJQUFELENBQWxCLEtBQTZCLFVBQTdCLEdBQ0ksQ0FBQyxHQUFHRSxJQUFKLEtBQWE7QUFDWGIsTUFBQUEsV0FBVyxDQUFDVyxJQUFELENBQVgsQ0FBa0IsR0FBR0UsSUFBckI7QUFDQSxhQUFPVCxlQUFlLENBQUNPLElBQUQsQ0FBZixDQUFzQixHQUFHRSxJQUF6QixDQUFQO0FBQ0QsS0FKTCxHQUtJLENBQUMsR0FBR0EsSUFBSixLQUFhVCxlQUFlLENBQUNPLElBQUQsQ0FBZixDQUFzQixHQUFHRSxJQUF6QixDQU5uQjtBQU9ELEdBVkg7QUFXQVIsRUFBQUEsTUFBTSxDQUFDQyxPQUFQLEdBQWlCQyxhQUFqQjtBQUNELENBaEJEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAbm9mbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcbid1c2Ugc3RyaWN0JztcclxuXHJcbi8qIGVzbGludCBudWNsaWRlLWludGVybmFsL25vLWNvbW1vbmpzOiAwICovXHJcblxyXG5jb25zdCB7Q29uc29sZX0gPSByZXF1aXJlKCdjb25zb2xlJyk7XHJcblxyXG4vKipcclxuICogVGhpcyBzaG91bGQgb25seSBiZSB1c2VkIGluIEF0b20gdGVzdCBjb250ZXh0cyFcclxuICogQXRvbSB0ZXN0cyBub3JtYWxseSBvbmx5IGRpc3BsYXkgY29uc29sZSBvdXRwdXQgaW4gdGhlIHJlbmRlcmVyIGRldnRvb2xzLFxyXG4gKiB3aGljaCBtYWtlcyBkZWJ1Z2dpbmcgZGlmZmljdWx0IGluIGhlYWRsZXNzIG1vZGUuXHJcbiAqIFRoaXMgb3ZlcndyaXRlcyBnbG9iYWwuY29uc29sZSB3aXRoIGEgcGF0Y2hlZCBjb25zb2xlIHRoYXQgd3JpdGVzIHRvIGJvdGhcclxuICogdGhlIGRldnRvb2xzIGFuZCByZWd1bGFyIHN0ZGlvLlxyXG4gKi9cclxubW9kdWxlLmV4cG9ydHMgPSBmdW5jdGlvbiBwYXRjaEF0b21Db25zb2xlKCkge1xyXG4gIGNvbnN0IG1haW5Db25zb2xlID0gbmV3IENvbnNvbGUocHJvY2Vzcy5zdGRvdXQsIHByb2Nlc3Muc3RkZXJyKTtcclxuICBjb25zdCByZW5kZXJlckNvbnNvbGUgPSBnbG9iYWwuY29uc29sZTtcclxuICBjb25zdCBtZXJnZWRDb25zb2xlID0ge307XHJcbiAgT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMocmVuZGVyZXJDb25zb2xlKVxyXG4gICAgLmZpbHRlcihwcm9wID0+IHR5cGVvZiByZW5kZXJlckNvbnNvbGVbcHJvcF0gPT09ICdmdW5jdGlvbicpXHJcbiAgICAuZm9yRWFjaChwcm9wID0+IHtcclxuICAgICAgbWVyZ2VkQ29uc29sZVtwcm9wXSA9XHJcbiAgICAgICAgdHlwZW9mIG1haW5Db25zb2xlW3Byb3BdID09PSAnZnVuY3Rpb24nXHJcbiAgICAgICAgICA/ICguLi5hcmdzKSA9PiB7XHJcbiAgICAgICAgICAgICAgbWFpbkNvbnNvbGVbcHJvcF0oLi4uYXJncyk7XHJcbiAgICAgICAgICAgICAgcmV0dXJuIHJlbmRlcmVyQ29uc29sZVtwcm9wXSguLi5hcmdzKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgOiAoLi4uYXJncykgPT4gcmVuZGVyZXJDb25zb2xlW3Byb3BdKC4uLmFyZ3MpO1xyXG4gICAgfSk7XHJcbiAgZ2xvYmFsLmNvbnNvbGUgPSBtZXJnZWRDb25zb2xlO1xyXG59O1xyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BhdGNoLWF0b20tY29uc29sZS5qcyJdLCJuYW1lcyI6WyJDb25zb2xlIiwicmVxdWlyZSIsIm1vZHVsZSIsImV4cG9ydHMiLCJwYXRjaEF0b21Db25zb2xlIiwibWFpbkNvbnNvbGUiLCJwcm9jZXNzIiwic3Rkb3V0Iiwic3RkZXJyIiwicmVuZGVyZXJDb25zb2xlIiwiZ2xvYmFsIiwiY29uc29sZSIsIm1lcmdlZENvbnNvbGUiLCJPYmplY3QiLCJnZXRPd25Qcm9wZXJ0eU5hbWVzIiwiZmlsdGVyIiwicHJvcCIsImZvckVhY2giLCJhcmdzIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTs7QUFFQSxNQUFNO0FBQUNBLEVBQUFBO0FBQUQsSUFBWUMsT0FBTyxDQUFDLFNBQUQsQ0FBekI7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBQ0FDLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQixTQUFTQyxnQkFBVCxHQUE0QjtBQUMzQyxRQUFNQyxXQUFXLEdBQUcsSUFBSUwsT0FBSixDQUFZTSxPQUFPLENBQUNDLE1BQXBCLEVBQTRCRCxPQUFPLENBQUNFLE1BQXBDLENBQXBCO0FBQ0EsUUFBTUMsZUFBZSxHQUFHQyxNQUFNLENBQUNDLE9BQS9CO0FBQ0EsUUFBTUMsYUFBYSxHQUFHLEVBQXRCO0FBQ0FDLEVBQUFBLE1BQU0sQ0FBQ0MsbUJBQVAsQ0FBMkJMLGVBQTNCLEVBQ0dNLE1BREgsQ0FDVUMsSUFBSSxJQUFJLE9BQU9QLGVBQWUsQ0FBQ08sSUFBRCxDQUF0QixLQUFpQyxVQURuRCxFQUVHQyxPQUZILENBRVdELElBQUksSUFBSTtBQUNmSixJQUFBQSxhQUFhLENBQUNJLElBQUQsQ0FBYixHQUNFLE9BQU9YLFdBQVcsQ0FBQ1csSUFBRCxDQUFsQixLQUE2QixVQUE3QixHQUNJLENBQUMsR0FBR0UsSUFBSixLQUFhO0FBQ1hiLE1BQUFBLFdBQVcsQ0FBQ1csSUFBRCxDQUFYLENBQWtCLEdBQUdFLElBQXJCO0FBQ0EsYUFBT1QsZUFBZSxDQUFDTyxJQUFELENBQWYsQ0FBc0IsR0FBR0UsSUFBekIsQ0FBUDtBQUNELEtBSkwsR0FLSSxDQUFDLEdBQUdBLElBQUosS0FBYVQsZUFBZSxDQUFDTyxJQUFELENBQWYsQ0FBc0IsR0FBR0UsSUFBekIsQ0FObkI7QUFPRCxHQVZIO0FBV0FSLEVBQUFBLE1BQU0sQ0FBQ0MsT0FBUCxHQUFpQkMsYUFBakI7QUFDRCxDQWhCRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQG5vZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG4ndXNlIHN0cmljdCc7XHJcblxyXG4vKiBlc2xpbnQgbnVjbGlkZS1pbnRlcm5hbC9uby1jb21tb25qczogMCAqL1xyXG5cclxuY29uc3Qge0NvbnNvbGV9ID0gcmVxdWlyZSgnY29uc29sZScpO1xyXG5cclxuLyoqXHJcbiAqIFRoaXMgc2hvdWxkIG9ubHkgYmUgdXNlZCBpbiBBdG9tIHRlc3QgY29udGV4dHMhXHJcbiAqIEF0b20gdGVzdHMgbm9ybWFsbHkgb25seSBkaXNwbGF5IGNvbnNvbGUgb3V0cHV0IGluIHRoZSByZW5kZXJlciBkZXZ0b29scyxcclxuICogd2hpY2ggbWFrZXMgZGVidWdnaW5nIGRpZmZpY3VsdCBpbiBoZWFkbGVzcyBtb2RlLlxyXG4gKiBUaGlzIG92ZXJ3cml0ZXMgZ2xvYmFsLmNvbnNvbGUgd2l0aCBhIHBhdGNoZWQgY29uc29sZSB0aGF0IHdyaXRlcyB0byBib3RoXHJcbiAqIHRoZSBkZXZ0b29scyBhbmQgcmVndWxhciBzdGRpby5cclxuICovXHJcbm1vZHVsZS5leHBvcnRzID0gZnVuY3Rpb24gcGF0Y2hBdG9tQ29uc29sZSgpIHtcclxuICBjb25zdCBtYWluQ29uc29sZSA9IG5ldyBDb25zb2xlKHByb2Nlc3Muc3Rkb3V0LCBwcm9jZXNzLnN0ZGVycik7XHJcbiAgY29uc3QgcmVuZGVyZXJDb25zb2xlID0gZ2xvYmFsLmNvbnNvbGU7XHJcbiAgY29uc3QgbWVyZ2VkQ29uc29sZSA9IHt9O1xyXG4gIE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKHJlbmRlcmVyQ29uc29sZSlcclxuICAgIC5maWx0ZXIocHJvcCA9PiB0eXBlb2YgcmVuZGVyZXJDb25zb2xlW3Byb3BdID09PSAnZnVuY3Rpb24nKVxyXG4gICAgLmZvckVhY2gocHJvcCA9PiB7XHJcbiAgICAgIG1lcmdlZENvbnNvbGVbcHJvcF0gPVxyXG4gICAgICAgIHR5cGVvZiBtYWluQ29uc29sZVtwcm9wXSA9PT0gJ2Z1bmN0aW9uJ1xyXG4gICAgICAgICAgPyAoLi4uYXJncykgPT4ge1xyXG4gICAgICAgICAgICAgIG1haW5Db25zb2xlW3Byb3BdKC4uLmFyZ3MpO1xyXG4gICAgICAgICAgICAgIHJldHVybiByZW5kZXJlckNvbnNvbGVbcHJvcF0oLi4uYXJncyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIDogKC4uLmFyZ3MpID0+IHJlbmRlcmVyQ29uc29sZVtwcm9wXSguLi5hcmdzKTtcclxuICAgIH0pO1xyXG4gIGdsb2JhbC5jb25zb2xlID0gbWVyZ2VkQ29uc29sZTtcclxufTtcclxuIl19 |
@@ -31,2 +31,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BhdGgtdXJpLmpzIl0sIm5hbWVzIjpbInBhdGhUb1VyaSIsInBhdGgiLCJVcmkiLCJmaWxlIiwidG9TdHJpbmciLCJ1cmlUb1BhdGgiLCJ1cmkiLCJwYXJzZSIsImZzUGF0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFZQTs7OztBQVpBOzs7Ozs7Ozs7OztBQWNPLFNBQVNBLFNBQVQsQ0FBbUJDLElBQW5CLEVBQXlDO0FBQzlDLFNBQU9DLG1CQUFJQyxJQUFKLENBQVNGLElBQVQsRUFBZUcsUUFBZixFQUFQO0FBQ0Q7O0FBRU0sU0FBU0MsU0FBVCxDQUFtQkMsR0FBbkIsRUFBd0M7QUFDN0MsU0FBT0osbUJBQUlLLEtBQUosQ0FBVUQsR0FBVixFQUFlRSxNQUF0QjtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBVcmkgZnJvbSAndnNjb2RlLXVyaSc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcGF0aFRvVXJpKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIFVyaS5maWxlKHBhdGgpLnRvU3RyaW5nKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB1cmlUb1BhdGgodXJpOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHJldHVybiBVcmkucGFyc2UodXJpKS5mc1BhdGg7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BhdGgtdXJpLmpzIl0sIm5hbWVzIjpbInBhdGhUb1VyaSIsInBhdGgiLCJVcmkiLCJmaWxlIiwidG9TdHJpbmciLCJ1cmlUb1BhdGgiLCJ1cmkiLCJwYXJzZSIsImZzUGF0aCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFZQTs7OztBQVpBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJTyxTQUFTQSxTQUFULENBQW1CQyxJQUFuQixFQUF5QztBQUM5QyxTQUFPQyxtQkFBSUMsSUFBSixDQUFTRixJQUFULEVBQWVHLFFBQWYsRUFBUDtBQUNEOztBQUVNLFNBQVNDLFNBQVQsQ0FBbUJDLEdBQW5CLEVBQXdDO0FBQzdDLFNBQU9KLG1CQUFJSyxLQUFKLENBQVVELEdBQVYsRUFBZUUsTUFBdEI7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgVXJpIGZyb20gJ3ZzY29kZS11cmknO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHBhdGhUb1VyaShwYXRoOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHJldHVybiBVcmkuZmlsZShwYXRoKS50b1N0cmluZygpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdXJpVG9QYXRoKHVyaTogc3RyaW5nKTogc3RyaW5nIHtcclxuICByZXR1cm4gVXJpLnBhcnNlKHVyaSkuZnNQYXRoO1xyXG59XHJcbiJdfQ== |
@@ -37,2 +37,2 @@ "use strict"; | ||
exports.default = _default; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BlcmZvcm1hbmNlTm93LmpzIl0sIm5hbWVzIjpbInBlcmZvcm1hbmNlIiwibm93Iiwic2Vjb25kcyIsIm5hbm9zZWNvbmRzIiwicHJvY2VzcyIsImhydGltZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7Ozs7Ozs7Ozs7QUFZQTs7QUFFQTs7Ozs7Ozs7O2VBVWdCLE9BQU9BLFdBQVAsS0FBdUIsV0FBdkIsR0FDWixNQUFjQSxXQUFXLENBQUNDLEdBQVosRUFERixHQUVaLE1BQWM7QUFDWixRQUFNLENBQUNDLE9BQUQsRUFBVUMsV0FBVixJQUF5QkMsT0FBTyxDQUFDQyxNQUFSLEVBQS9CO0FBQ0EsU0FBT0gsT0FBTyxHQUFHLElBQVYsR0FBaUJDLFdBQVcsR0FBRyxPQUF0QztBQUNELEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuLyogZ2xvYmFsIHBlcmZvcm1hbmNlICovXHJcblxyXG4vKipcclxuICogUG9seWZpbGwgZm9yIHBlcmZvcm1hbmNlLm5vdyB0aGF0IHdvcmtzIGJvdGggb24gQXRvbSAoY2hyb21lKSBhbmQgbm9kZS5cclxuICogSXQgcmV0dXJucyBhIG1vbm90b25pY2FsbHkgaW5jcmVhc2luZyB0aW1lciBpbiBtaWxsaXNlY29uZHMuXHJcbiAqXHJcbiAqIFVzYWdlOlxyXG4gKiAgIGNvbnN0IG5vdyA9IHBlcmZvcm1hbmNlTm93KCk7XHJcbiAqICAgLy8gLi4uIGNvZGUgeW91IHdhbnQgdG8gYmVuY2htYXJrIC4uLlxyXG4gKiAgIGNvbnN0IHRpbWVJdFRvb2tJbk1pbGxpc2Vjb25kcyA9IHBlcmZvcm1hbmNlTm93KCkgLSBub3c7XHJcbiAqL1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgKHR5cGVvZiBwZXJmb3JtYW5jZSAhPT0gJ3VuZGVmaW5lZCdcclxuICA/ICgpOiBudW1iZXIgPT4gcGVyZm9ybWFuY2Uubm93KClcclxuICA6ICgpOiBudW1iZXIgPT4ge1xyXG4gICAgICBjb25zdCBbc2Vjb25kcywgbmFub3NlY29uZHNdID0gcHJvY2Vzcy5ocnRpbWUoKTtcclxuICAgICAgcmV0dXJuIHNlY29uZHMgKiAxMDAwICsgbmFub3NlY29uZHMgLyAxMDAwMDAwO1xyXG4gICAgfSk7XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3BlcmZvcm1hbmNlTm93LmpzIl0sIm5hbWVzIjpbInBlcmZvcm1hbmNlIiwibm93Iiwic2Vjb25kcyIsIm5hbm9zZWNvbmRzIiwicHJvY2VzcyIsImhydGltZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO2VBRWdCLE9BQU9BLFdBQVAsS0FBdUIsV0FBdkIsR0FDWixNQUFjQSxXQUFXLENBQUNDLEdBQVosRUFERixHQUVaLE1BQWM7QUFDWixRQUFNLENBQUNDLE9BQUQsRUFBVUMsV0FBVixJQUF5QkMsT0FBTyxDQUFDQyxNQUFSLEVBQS9CO0FBQ0EsU0FBT0gsT0FBTyxHQUFHLElBQVYsR0FBaUJDLFdBQVcsR0FBRyxPQUF0QztBQUNELEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuLyogZ2xvYmFsIHBlcmZvcm1hbmNlICovXHJcblxyXG4vKipcclxuICogUG9seWZpbGwgZm9yIHBlcmZvcm1hbmNlLm5vdyB0aGF0IHdvcmtzIGJvdGggb24gQXRvbSAoY2hyb21lKSBhbmQgbm9kZS5cclxuICogSXQgcmV0dXJucyBhIG1vbm90b25pY2FsbHkgaW5jcmVhc2luZyB0aW1lciBpbiBtaWxsaXNlY29uZHMuXHJcbiAqXHJcbiAqIFVzYWdlOlxyXG4gKiAgIGNvbnN0IG5vdyA9IHBlcmZvcm1hbmNlTm93KCk7XHJcbiAqICAgLy8gLi4uIGNvZGUgeW91IHdhbnQgdG8gYmVuY2htYXJrIC4uLlxyXG4gKiAgIGNvbnN0IHRpbWVJdFRvb2tJbk1pbGxpc2Vjb25kcyA9IHBlcmZvcm1hbmNlTm93KCkgLSBub3c7XHJcbiAqL1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgKHR5cGVvZiBwZXJmb3JtYW5jZSAhPT0gJ3VuZGVmaW5lZCdcclxuICA/ICgpOiBudW1iZXIgPT4gcGVyZm9ybWFuY2Uubm93KClcclxuICA6ICgpOiBudW1iZXIgPT4ge1xyXG4gICAgICBjb25zdCBbc2Vjb25kcywgbmFub3NlY29uZHNdID0gcHJvY2Vzcy5ocnRpbWUoKTtcclxuICAgICAgcmV0dXJuIHNlY29uZHMgKiAxMDAwICsgbmFub3NlY29uZHMgLyAxMDAwMDAwO1xyXG4gICAgfSk7XHJcbiJdfQ== |
@@ -54,3 +54,3 @@ "use strict"; | ||
}) { | ||
if (signal === null || signal === void 0 ? void 0 : signal.aborted) { | ||
if (signal !== null && signal !== void 0 && signal.aborted) { | ||
return; | ||
@@ -79,2 +79,2 @@ } | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Byb2Nlc3NUaW1lZC5qcyJdLCJuYW1lcyI6WyJwcm9jZXNzVGltZWQiLCJwcm9jZXNzIiwib3B0aW9ucyIsInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJwcm9jZXNzVGltZWRJdGVyYXRvciIsInByb2Nlc3NJdGVyYXRvciIsImxpbWl0IiwiZGVsYXkiLCJzaWduYWwiLCJhYm9ydGVkIiwiZG9uZSIsImJlZm9yZSIsIm5leHQiLCJzZXRUaW1lb3V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBZ0JBOzs7O0FBaEJBOzs7Ozs7Ozs7Ozs7QUFZQTs7QUFZQTs7Ozs7Ozs7Ozs7O0FBWWUsU0FBU0EsWUFBVCxDQUNiQyxPQURhLEVBRWJDLE9BRmEsRUFHUDtBQUNOO0FBQ0E7QUFDQTtBQUNBQyxFQUFBQSxtQkFBbUIsQ0FBQyxNQUFNO0FBQ3hCO0FBQ0E7QUFDQUMsSUFBQUEsb0JBQW9CLENBQUNILE9BQU8sRUFBUixFQUFZQyxPQUFaLENBQXBCO0FBQ0QsR0FKa0IsQ0FBbkI7QUFLRDs7QUFFRCxTQUFTRSxvQkFBVCxDQUNFQyxlQURGLEVBRUU7QUFBQ0MsRUFBQUEsS0FBRDtBQUFRQyxFQUFBQSxLQUFSO0FBQWVDLEVBQUFBO0FBQWYsQ0FGRixFQUdRO0FBQ04sTUFBSUEsTUFBSixhQUFJQSxNQUFKLHVCQUFJQSxNQUFNLENBQUVDLE9BQVosRUFBcUI7QUFDbkI7QUFDRDs7QUFFRCxNQUFJQyxJQUFKO0FBQ0EsUUFBTUMsTUFBTSxHQUFHLDhCQUFmOztBQUNBLEtBQUc7QUFDRCxLQUFDO0FBQUNELE1BQUFBO0FBQUQsUUFBU0wsZUFBZSxDQUFDTyxJQUFoQixFQUFWO0FBQ0QsR0FGRCxRQUVTLENBQUNGLElBQUQsSUFBUyxpQ0FBbUJDLE1BQW5CLEdBQTRCTCxLQUY5QyxFQVBNLENBV047OztBQUNBLE1BQUksQ0FBQ0ksSUFBTCxFQUFXO0FBQ1RHLElBQUFBLFVBQVUsQ0FBQyxNQUFNO0FBQ2ZULE1BQUFBLG9CQUFvQixDQUFDQyxlQUFELEVBQWtCO0FBQUNDLFFBQUFBLEtBQUQ7QUFBUUMsUUFBQUEsS0FBUjtBQUFlQyxRQUFBQTtBQUFmLE9BQWxCLENBQXBCO0FBQ0QsS0FGUyxFQUVQRCxLQUZPLENBQVY7QUFHRDtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbi8qIGVzbGludC1lbnYgYnJvd3NlciAqL1xyXG5cclxuaW1wb3J0IHR5cGUge0Fib3J0U2lnbmFsfSBmcm9tICcuL0Fib3J0Q29udHJvbGxlcic7XHJcblxyXG5pbXBvcnQgcGVyZm9ybWFuY2VOb3cgZnJvbSAnLi9wZXJmb3JtYW5jZU5vdyc7XHJcblxyXG50eXBlIE9wdGlvbnMgPSB7fFxyXG4gIGxpbWl0OiBudW1iZXIsXHJcbiAgZGVsYXk6IG51bWJlcixcclxuICBzaWduYWw/OiBBYm9ydFNpZ25hbCxcclxufH07XHJcblxyXG4vKipcclxuICogU3BsaXRzIHRhc2tzIHRoYXQgd291bGQgbm9ybWFsbHkgYmxvY2sgZm9yIGEgbG9uZyB0aW1lIGFjcm9zcyBzZXZlcmFsIHRhc2tzXHJcbiAqIHVzaW5nIGBzZXRUaW1lb3V0YC5cclxuICogQHBhcmFtIHByb2Nlc3MgICAgICAgIC0gQSBnZW5lcmF0b3IgZnVuY3Rpb24gdGhhdCBkb2VzIHdvcmsgaW4gY2h1bmtzLCBhZnRlciBlYWNoXHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgIHlpZWxkIGlzIGNhbGxlZC5cclxuICogQHBhcmFtIG9wdGlvbnMubGltaXQgIC0gQSBidWRnZXQgbGltaXRpbmcgdGhlIHRpbWUgKGluIG1zKSB0aGF0IGNhbiBiZSBzcGVudFxyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICBzeW5jaHJvbm91c2x5IHByb2Nlc3NpbmcgY2h1bmtzLiBDaHVua3MgYXJlIHByb2Nlc3NlZFxyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICB1bnRpbCB0aGlzIGxpbWl0IGlzIHJlYWNoZWQsIGFmdGVyIHdoaWNoIGEgbmV3IHRhc2tcclxuICogICAgICAgICAgICAgICAgICAgICAgICAgd2lsbCBiZSBzY2hlZHVsZWQgYXN5bmNocm9ub3VzbHkuXHJcbiAqIEBwYXJhbSBvcHRpb25zLmRlbGF5ICAtIFRoZSB0aW1lIChpbiBtcykgYmV0d2VlbiBwcm9jZXNzaW5nIHRhc2tzLlxyXG4gKiBAcGFyYW0gb3B0aW9ucy5zaWduYWwgLSBBbiBgQWJvcnRTaWduYWxgIHRoYXQgY2FuIGJlIHVzZWQgdG8gY2FuY2VsIHByb2Nlc3NpbmcuXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBwcm9jZXNzVGltZWQoXHJcbiAgcHJvY2VzczogKCkgPT4gSXRlcmF0b3I8dm9pZD4sXHJcbiAgb3B0aW9uczogT3B0aW9ucyxcclxuKTogdm9pZCB7XHJcbiAgLy8gQmVnaW4gd29yayBpbiB0aGUgbmV4dCBmcmVlIHRpY2suIFdlIGNvdWxkIGRvIHRoaXMgcmlnaHQgYXdheSwgYnV0IHdlIGRvbid0XHJcbiAgLy8ga25vdyBob3cgbXVjaCB3b3JrIGhhcyBwcmVjZWVkZWQgdGhpcyBpbiB0aGlzIHRhc2ssIGFuZCB3ZSB3YW50IHRvIGtlZXAgZXZlcnlcclxuICAvLyBpdGVyYXRpb24sIGluY2x1ZGluZyB0aGUgZmlyc3Qgb25lLCB0byBgbGltaXRgIG1zLlxyXG4gIHJlcXVlc3RJZGxlQ2FsbGJhY2soKCkgPT4ge1xyXG4gICAgLy8gS2ljayBvZmYgdGhlIGdlbmVyYXRvciBvbmNlIGFuZCBoYW5kIGEgc3RhdGVmdWwgaXRlcmF0b3IgdG9cclxuICAgIC8vIGBwcm9jZXNzVGltZWRJdGVyYXRvcmAuXHJcbiAgICBwcm9jZXNzVGltZWRJdGVyYXRvcihwcm9jZXNzKCksIG9wdGlvbnMpO1xyXG4gIH0pO1xyXG59XHJcblxyXG5mdW5jdGlvbiBwcm9jZXNzVGltZWRJdGVyYXRvcihcclxuICBwcm9jZXNzSXRlcmF0b3I6IEl0ZXJhdG9yPHZvaWQ+LFxyXG4gIHtsaW1pdCwgZGVsYXksIHNpZ25hbH06IE9wdGlvbnMsXHJcbik6IHZvaWQge1xyXG4gIGlmIChzaWduYWw/LmFib3J0ZWQpIHtcclxuICAgIHJldHVybjtcclxuICB9XHJcblxyXG4gIGxldCBkb25lO1xyXG4gIGNvbnN0IGJlZm9yZSA9IHBlcmZvcm1hbmNlTm93KCk7XHJcbiAgZG8ge1xyXG4gICAgKHtkb25lfSA9IHByb2Nlc3NJdGVyYXRvci5uZXh0KCkpO1xyXG4gIH0gd2hpbGUgKCFkb25lICYmIHBlcmZvcm1hbmNlTm93KCkgLSBiZWZvcmUgPCBsaW1pdCk7XHJcblxyXG4gIC8vIFNjaGVkdWxlIGFub3RoZXIgYmF0Y2ggYWZ0ZXIgYGRlbGF5YCBpZiB3ZSdyZSBub3QgZG9uZSB5ZXQuXHJcbiAgaWYgKCFkb25lKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgcHJvY2Vzc1RpbWVkSXRlcmF0b3IocHJvY2Vzc0l0ZXJhdG9yLCB7bGltaXQsIGRlbGF5LCBzaWduYWx9KTtcclxuICAgIH0sIGRlbGF5KTtcclxuICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Byb2Nlc3NUaW1lZC5qcyJdLCJuYW1lcyI6WyJwcm9jZXNzVGltZWQiLCJwcm9jZXNzIiwib3B0aW9ucyIsInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJwcm9jZXNzVGltZWRJdGVyYXRvciIsInByb2Nlc3NJdGVyYXRvciIsImxpbWl0IiwiZGVsYXkiLCJzaWduYWwiLCJhYm9ydGVkIiwiZG9uZSIsImJlZm9yZSIsIm5leHQiLCJzZXRUaW1lb3V0Il0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBZ0JBOzs7O0FBaEJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBRUE7O0FBWUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ2UsU0FBU0EsWUFBVCxDQUNiQyxPQURhLEVBRWJDLE9BRmEsRUFHUDtBQUNOO0FBQ0E7QUFDQTtBQUNBQyxFQUFBQSxtQkFBbUIsQ0FBQyxNQUFNO0FBQ3hCO0FBQ0E7QUFDQUMsSUFBQUEsb0JBQW9CLENBQUNILE9BQU8sRUFBUixFQUFZQyxPQUFaLENBQXBCO0FBQ0QsR0FKa0IsQ0FBbkI7QUFLRDs7QUFFRCxTQUFTRSxvQkFBVCxDQUNFQyxlQURGLEVBRUU7QUFBQ0MsRUFBQUEsS0FBRDtBQUFRQyxFQUFBQSxLQUFSO0FBQWVDLEVBQUFBO0FBQWYsQ0FGRixFQUdRO0FBQ04sTUFBSUEsTUFBSixhQUFJQSxNQUFKLGVBQUlBLE1BQU0sQ0FBRUMsT0FBWixFQUFxQjtBQUNuQjtBQUNEOztBQUVELE1BQUlDLElBQUo7QUFDQSxRQUFNQyxNQUFNLEdBQUcsOEJBQWY7O0FBQ0EsS0FBRztBQUNELEtBQUM7QUFBQ0QsTUFBQUE7QUFBRCxRQUFTTCxlQUFlLENBQUNPLElBQWhCLEVBQVY7QUFDRCxHQUZELFFBRVMsQ0FBQ0YsSUFBRCxJQUFTLGlDQUFtQkMsTUFBbkIsR0FBNEJMLEtBRjlDLEVBUE0sQ0FXTjs7O0FBQ0EsTUFBSSxDQUFDSSxJQUFMLEVBQVc7QUFDVEcsSUFBQUEsVUFBVSxDQUFDLE1BQU07QUFDZlQsTUFBQUEsb0JBQW9CLENBQUNDLGVBQUQsRUFBa0I7QUFBQ0MsUUFBQUEsS0FBRDtBQUFRQyxRQUFBQSxLQUFSO0FBQWVDLFFBQUFBO0FBQWYsT0FBbEIsQ0FBcEI7QUFDRCxLQUZTLEVBRVBELEtBRk8sQ0FBVjtBQUdEO0FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdC1sb2NhbFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuLyogZXNsaW50LWVudiBicm93c2VyICovXHJcblxyXG5pbXBvcnQgdHlwZSB7QWJvcnRTaWduYWx9IGZyb20gJy4vQWJvcnRDb250cm9sbGVyJztcclxuXHJcbmltcG9ydCBwZXJmb3JtYW5jZU5vdyBmcm9tICcuL3BlcmZvcm1hbmNlTm93JztcclxuXHJcbnR5cGUgT3B0aW9ucyA9IHt8XHJcbiAgbGltaXQ6IG51bWJlcixcclxuICBkZWxheTogbnVtYmVyLFxyXG4gIHNpZ25hbD86IEFib3J0U2lnbmFsLFxyXG58fTtcclxuXHJcbi8qKlxyXG4gKiBTcGxpdHMgdGFza3MgdGhhdCB3b3VsZCBub3JtYWxseSBibG9jayBmb3IgYSBsb25nIHRpbWUgYWNyb3NzIHNldmVyYWwgdGFza3NcclxuICogdXNpbmcgYHNldFRpbWVvdXRgLlxyXG4gKiBAcGFyYW0gcHJvY2VzcyAgICAgICAgLSBBIGdlbmVyYXRvciBmdW5jdGlvbiB0aGF0IGRvZXMgd29yayBpbiBjaHVua3MsIGFmdGVyIGVhY2hcclxuICogICAgICAgICAgICAgICAgICAgICAgICAgeWllbGQgaXMgY2FsbGVkLlxyXG4gKiBAcGFyYW0gb3B0aW9ucy5saW1pdCAgLSBBIGJ1ZGdldCBsaW1pdGluZyB0aGUgdGltZSAoaW4gbXMpIHRoYXQgY2FuIGJlIHNwZW50XHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgIHN5bmNocm9ub3VzbHkgcHJvY2Vzc2luZyBjaHVua3MuIENodW5rcyBhcmUgcHJvY2Vzc2VkXHJcbiAqICAgICAgICAgICAgICAgICAgICAgICAgIHVudGlsIHRoaXMgbGltaXQgaXMgcmVhY2hlZCwgYWZ0ZXIgd2hpY2ggYSBuZXcgdGFza1xyXG4gKiAgICAgICAgICAgICAgICAgICAgICAgICB3aWxsIGJlIHNjaGVkdWxlZCBhc3luY2hyb25vdXNseS5cclxuICogQHBhcmFtIG9wdGlvbnMuZGVsYXkgIC0gVGhlIHRpbWUgKGluIG1zKSBiZXR3ZWVuIHByb2Nlc3NpbmcgdGFza3MuXHJcbiAqIEBwYXJhbSBvcHRpb25zLnNpZ25hbCAtIEFuIGBBYm9ydFNpZ25hbGAgdGhhdCBjYW4gYmUgdXNlZCB0byBjYW5jZWwgcHJvY2Vzc2luZy5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHByb2Nlc3NUaW1lZChcclxuICBwcm9jZXNzOiAoKSA9PiBJdGVyYXRvcjx2b2lkPixcclxuICBvcHRpb25zOiBPcHRpb25zLFxyXG4pOiB2b2lkIHtcclxuICAvLyBCZWdpbiB3b3JrIGluIHRoZSBuZXh0IGZyZWUgdGljay4gV2UgY291bGQgZG8gdGhpcyByaWdodCBhd2F5LCBidXQgd2UgZG9uJ3RcclxuICAvLyBrbm93IGhvdyBtdWNoIHdvcmsgaGFzIHByZWNlZWRlZCB0aGlzIGluIHRoaXMgdGFzaywgYW5kIHdlIHdhbnQgdG8ga2VlcCBldmVyeVxyXG4gIC8vIGl0ZXJhdGlvbiwgaW5jbHVkaW5nIHRoZSBmaXJzdCBvbmUsIHRvIGBsaW1pdGAgbXMuXHJcbiAgcmVxdWVzdElkbGVDYWxsYmFjaygoKSA9PiB7XHJcbiAgICAvLyBLaWNrIG9mZiB0aGUgZ2VuZXJhdG9yIG9uY2UgYW5kIGhhbmQgYSBzdGF0ZWZ1bCBpdGVyYXRvciB0b1xyXG4gICAgLy8gYHByb2Nlc3NUaW1lZEl0ZXJhdG9yYC5cclxuICAgIHByb2Nlc3NUaW1lZEl0ZXJhdG9yKHByb2Nlc3MoKSwgb3B0aW9ucyk7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHByb2Nlc3NUaW1lZEl0ZXJhdG9yKFxyXG4gIHByb2Nlc3NJdGVyYXRvcjogSXRlcmF0b3I8dm9pZD4sXHJcbiAge2xpbWl0LCBkZWxheSwgc2lnbmFsfTogT3B0aW9ucyxcclxuKTogdm9pZCB7XHJcbiAgaWYgKHNpZ25hbD8uYWJvcnRlZCkge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuXHJcbiAgbGV0IGRvbmU7XHJcbiAgY29uc3QgYmVmb3JlID0gcGVyZm9ybWFuY2VOb3coKTtcclxuICBkbyB7XHJcbiAgICAoe2RvbmV9ID0gcHJvY2Vzc0l0ZXJhdG9yLm5leHQoKSk7XHJcbiAgfSB3aGlsZSAoIWRvbmUgJiYgcGVyZm9ybWFuY2VOb3coKSAtIGJlZm9yZSA8IGxpbWl0KTtcclxuXHJcbiAgLy8gU2NoZWR1bGUgYW5vdGhlciBiYXRjaCBhZnRlciBgZGVsYXlgIGlmIHdlJ3JlIG5vdCBkb25lIHlldC5cclxuICBpZiAoIWRvbmUpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBwcm9jZXNzVGltZWRJdGVyYXRvcihwcm9jZXNzSXRlcmF0b3IsIHtsaW1pdCwgZGVsYXksIHNpZ25hbH0pO1xyXG4gICAgfSwgZGVsYXkpO1xyXG4gIH1cclxufVxyXG4iXX0= |
@@ -636,2 +636,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Byb21pc2UuanMiXSwibmFtZXMiOlsiUmVxdWVzdFNlcmlhbGl6ZXIiLCJjb25zdHJ1Y3RvciIsIl9sYXN0RGlzcGF0Y2hlZE9wIiwiX2xhc3RGaW5pc2hlZE9wIiwiX2xhdGVzdFByb21pc2UiLCJfd2FpdFJlc29sdmUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInJ1biIsInByb21pc2UiLCJ0aGlzT3AiLCJyZXN1bHQiLCJzdGF0dXMiLCJ3YWl0Rm9yTGF0ZXN0UmVzdWx0IiwibGFzdFByb21pc2UiLCJ0aGVuIiwiaXNSdW5JblByb2dyZXNzIiwic2xlZXAiLCJtaWxsaVNlY29uZHMiLCJzZXRUaW1lb3V0IiwibmV4dFRpY2siLCJwcm9jZXNzIiwidHJpZ2dlckFmdGVyV2FpdCIsInRpbWVvdXRGbiIsImNsZWFudXBGbiIsInRpbWVvdXQiLCJjbGVhclRpbWVvdXQiLCJUaW1lZE91dEVycm9yIiwiRXJyb3IiLCJtaWxsaXNlY29uZHMiLCJTdHJpbmciLCJ0aW1lb3V0UHJvbWlzZSIsInZhbHVlIiwiY2F0Y2giLCJjcmVhdGVEZWFkbGluZSIsImRlbGF5IiwiRGF0ZSIsIm5vdyIsInRpbWVvdXRBZnRlckRlYWRsaW5lIiwiZGVhZGxpbmUiLCJyZXRyeUxpbWl0IiwicmV0cnlGdW5jdGlvbiIsInZhbGlkYXRpb25GdW5jdGlvbiIsIm1heGltdW1UcmllcyIsInJldHJ5SW50ZXJ2YWxNcyIsInRyaWVzIiwibGFzdEVycm9yIiwiZXJyb3IiLCJzZXJpYWxpemVBc3luY0NhbGwiLCJhc3luY0Z1biIsInNjaGVkdWxlZENhbGwiLCJwZW5kaW5nQ2FsbCIsInN0YXJ0QXN5bmNDYWxsIiwicmVzdWx0UHJvbWlzZSIsImNhbGxOZXh0Iiwic2NoZWR1bGVOZXh0Q2FsbCIsIkRlZmVycmVkIiwiYXN5bmNGaW5kIiwiaXRlbXNfIiwidGVzdCIsInRoaXNBcmciLCJpdGVtcyIsInNsaWNlIiwibnVtSXRlbXMiLCJsZW5ndGgiLCJuZXh0IiwiaW5kZXgiLCJpdGVtIiwiY2FsbCIsImRlbm9kZWlmeSIsImYiLCJhcmdzIiwiY2FsbGJhY2siLCJhcHBseSIsImNvbmNhdCIsImFzeW5jTGltaXQiLCJhcnJheSIsImxpbWl0IiwibWFwcGluZ0Z1bmN0aW9uIiwiQXJyYXkiLCJwYXJhbGxlbFByb21pc2VzIiwicGFyYWxsZWxMaW1pdCIsIk1hdGgiLCJtaW4iLCJydW5Qcm9taXNlIiwiaSIsImUiLCJhc3luY0ZpbHRlciIsImZpbHRlckZ1bmN0aW9uIiwiZmlsdGVyZWRMaXN0IiwicHVzaCIsImFzeW5jT2JqRmlsdGVyIiwib2JqIiwia2V5cyIsIk9iamVjdCIsImZpbHRlcmVkT2JqIiwia2V5IiwiYXN5bmNTb21lIiwic29tZUZ1bmN0aW9uIiwicmVzb2x2ZWQiLCJpc1Byb21pc2UiLCJvYmplY3QiLCJCb29sZWFuIiwibGFzdGx5IiwiZm4iLCJyZXQiLCJlcnIiLCJQcm9taXNlV2l0aFN0YXRlIiwiX3Byb21pc2UiLCJfc3RhdGUiLCJraW5kIiwiZ2V0UHJvbWlzZSIsImdldFN0YXRlIiwiZGVsYXlUaW1lIiwibXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBOzs7O0FBWkE7Ozs7Ozs7Ozs7OztBQXVCQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXlCTyxNQUFNQSxpQkFBTixDQUEyQjtBQU1oQ0MsRUFBQUEsV0FBVyxHQUFHO0FBQUEsU0FMZEMsaUJBS2M7QUFBQSxTQUpkQyxlQUljO0FBQUEsU0FIZEMsY0FHYztBQUFBLFNBRmRDLFlBRWM7QUFDWixTQUFLSCxpQkFBTCxHQUF5QixDQUF6QjtBQUNBLFNBQUtDLGVBQUwsR0FBdUIsQ0FBdkI7QUFDQSxTQUFLQyxjQUFMLEdBQXNCLElBQUlFLE9BQUosQ0FBWSxDQUFDQyxPQUFELEVBQVVDLE1BQVYsS0FBcUI7QUFDckQsV0FBS0gsWUFBTCxHQUFvQkUsT0FBcEI7QUFDRCxLQUZxQixDQUF0QjtBQUdEOztBQUVELFFBQU1F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SSxFQUFFLFdBQVA7QUFBb0I5RSxRQUFBQTtBQUFwQixPQUFkO0FBQ0EsYUFBT0EsS0FBUDtBQUNELEtBSmEsRUFLZGUsS0FBSyxJQUFJO0FBQ1AsV0FBSzhELE1BQUwsR0FBYztBQUFDQyxRQUFBQSxJQUFJLEVBQUUsVUFBUDtBQUFtQi9ELFFBQUFBO0FBQW5CLE9BQWQ7QUFDQSxZQUFNQSxLQUFOO0FBQ0QsS0FSYSxDQUFoQjtBQVVEOztBQUVEZ0UsRUFBQUEsVUFBVSxHQUFlO0FBQ3ZCLFdBQU8sS0FBS0gsUUFBWjtBQUNEOztBQUVESSxFQUFBQSxRQUFRLEdBQW9CO0FBQzFCLFdBQU8sS0FBS0gsTUFBWjtBQUNEOztBQXhCOEI7Ozs7QUEyQjFCLFNBQVNJLFNBQVQsQ0FBbUJDLEVBQW5CLEVBQThDO0FBQ25ELFNBQU8sSUFBSTdHLE9BQUosQ0FBWSxDQUFDQyxPQUFELEVBQVVDLE1BQVYsS0FBcUI7QUFDdENZLElBQUFBLFVBQVUsQ0FBQ2IsT0FBRCxFQUFVNEcsRUFBVixDQUFWO0FBQ0QsR0FGTSxDQUFQO0FBR0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgaW52YXJpYW50IGZyb20gJ2Fzc2VydCc7XHJcblxyXG50eXBlIFJ1blJldHVybjxUPiA9XHJcbiAgfCB7XHJcbiAgICAgIHN0YXR1czogJ3N1Y2Nlc3MnLFxyXG4gICAgICByZXN1bHQ6IFQsXHJcbiAgICB9XHJcbiAgfCB7XHJcbiAgICAgIHN0YXR1czogJ291dGRhdGVkJyxcclxuICAgIH07XHJcblxyXG4vKipcclxuICogQWxsb3dzIGEgY2FsbGVyIHRvIGVuc3VyZSB0aGF0IHRoZSByZXN1bHRzIGl0IHJlY2VpdmVzIGZyb20gY29uc2VjdXRpdmVcclxuICogcHJvbWlzZSByZXNvbHV0aW9ucyBhcmUgbmV2ZXIgb3V0ZGF0ZWQuIFVzYWdlOlxyXG4gKlxyXG4gKiB2YXIgcmVxdWVzdFNlcmlhbGl6ZXIgPSBuZXcgUmVxdWVzdFNlcmlhbGl6ZXIoKTtcclxuICpcclxuICogLy8gaW4gc29tZSBsYXRlciBsb29wOlxyXG4gKlxyXG4gKiAvLyBub3RlIHRoYXQgeW91IGRvIG5vdCBhd2FpdCB0aGUgYXN5bmMgZnVuY3Rpb24gaGVyZSAtLSB5b3UgbXVzdCBwYXNzIHRoZVxyXG4gKiAvLyBwcm9taXNlIGl0IHJldHVybnMgdG8gYHJ1bmBcclxuICogdmFyIHJlc3VsdCA9IGF3YWl0IHJlcXVlc3RTZXJpYWxpemVyLnJ1bihzb21lQXN5bmNGdW5jdGlvbigpKVxyXG4gKlxyXG4gKiBpZiAocmVzdWx0LnN0YXR1cyA9PT0gJ3N1Y2Nlc3MnKSB7XHJcbiAqICAgLi4uLlxyXG4gKiAgIHJlc3VsdC5yZXN1bHRcclxuICogfSBlbHNlIGlmIChyZXN1bHQuc3RhdHVzID09PSAnb3V0ZGF0ZWQnKSB7XHJcbiAqICAgLi4uLlxyXG4gKiB9XHJcbiAqXHJcbiAqIFRoZSBjb250cmFjdCBpcyB0aGF0IHRoZSBzdGF0dXMgaXMgJ3N1Y2Nlc3MnIGlmIGFuZCBvbmx5IGlmIHRoaXMgd2FzIHRoZSBtb3N0XHJcbiAqIHJlY2VudGx5IGRpc3BhdGNoZWQgY2FsbCBvZiAncnVuJy4gRm9yIGV4YW1wbGUsIGlmIHlvdSBjYWxsIHJ1bihwcm9taXNlMSkgYW5kXHJcbiAqIHRoZW4gcnVuKHByb21pc2UyKSwgYW5kIHByb21pc2UyIHJlc29sdmVzIGZpcnN0LCB0aGUgc2Vjb25kIGNhbGxzaXRlIHdvdWxkXHJcbiAqIHJlY2VpdmUgYSAnc3VjY2Vzcycgc3RhdHVzLiBJZiBwcm9taXNlMSBsYXRlciByZXNvbHZlZCwgdGhlIGZpcnN0IGNhbGxzaXRlXHJcbiAqIHdvdWxkIHJlY2VpdmUgYW4gJ291dGRhdGVkJyBzdGF0dXMuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgUmVxdWVzdFNlcmlhbGl6ZXI8VD4ge1xyXG4gIF9sYXN0RGlzcGF0Y2hlZE9wOiBudW1iZXI7XHJcbiAgX2xhc3RGaW5pc2hlZE9wOiBudW1iZXI7XHJcbiAgX2xhdGVzdFByb21pc2U6IFByb21pc2U8VD47XHJcbiAgX3dhaXRSZXNvbHZlOiBGdW5jdGlvbjtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLl9sYXN0RGlzcGF0Y2hlZE9wID0gMDtcclxuICAgIHRoaXMuX2xhc3RGaW5pc2hlZE9wID0gMDtcclxuICAgIHRoaXMuX2xhdGVzdFByb21pc2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRoaXMuX3dhaXRSZXNvbHZlID0gcmVzb2x2ZTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgcnVuKHByb21pc2U6IFByb21pc2U8VD4pOiBQcm9taXNlPFJ1blJldHVybjxUPj4ge1xyXG4gICAgY29uc3QgdGhpc09wID0gdGhpcy5fbGFzdERpc3BhdGNoZWRPcCArIDE7XHJcbiAgICB0aGlzLl9sYXN0RGlzcGF0Y2hlZE9wID0gdGhpc09wO1xyXG4gICAgdGhpcy5fbGF0ZXN0UHJvbWlzZSA9IHByb21pc2U7XHJcbiAgICB0aGlzLl93YWl0UmVzb2x2ZSgpO1xyXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcHJvbWlzZTtcclxuICAgIGlmICh0aGlzLl9sYXN0RmluaXNoZWRPcCA8IHRoaXNPcCkge1xyXG4gICAgICB0aGlzLl9sYXN0RmluaXNoZWRPcCA9IHRoaXNPcDtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBzdGF0dXM6ICdzdWNjZXNzJyxcclxuICAgICAgICByZXN1bHQsXHJcbiAgICAgIH07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHN0YXR1czogJ291dGRhdGVkJyxcclxuICAgICAgfTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIGxhc3QgcmVzdWx0IG9mIGBydW5gLFxyXG4gICAqIGFzIHNvb24gYXMgdGhlcmUgYXJlIG5vIG1vcmUgb3V0c3RhbmRpbmcgYHJ1bmAgY2FsbHMuXHJcbiAgICovXHJcbiAgYXN5bmMgd2FpdEZvckxhdGVzdFJlc3VsdCgpOiBQcm9taXNlPFQ+IHtcclxuICAgIGxldCBsYXN0UHJvbWlzZSA9IG51bGw7XHJcbiAgICBsZXQgcmVzdWx0OiBhbnkgPSBudWxsO1xyXG4gICAgd2hpbGUgKGxhc3RQcm9taXNlICE9PSB0aGlzLl9sYXRlc3RQcm9taXNlKSB7XHJcbiAgICAgIGxhc3RQcm9taXNlID0gdGhpcy5fbGF0ZXN0UHJvbWlzZTtcclxuICAgICAgLy8gV2FpdCBmb3IgdGhlIGN1cnJlbnQgbGFzdCBrbm93IHByb21pc2UgdG8gcmVzb2x2ZSwgb3IgYSBuZXh0IHJ1biBoYXZlIHN0YXJ0ZWQuXHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1hd2FpdC1pbi1sb29wXHJcbiAgICAgIHJlc3VsdCA9IGF3YWl0IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgICB0aGlzLl93YWl0UmVzb2x2ZSA9IHJlc29sdmU7XHJcbiAgICAgICAgdGhpcy5fbGF0ZXN0UHJvbWlzZS50aGVuKHJlc29sdmUpO1xyXG4gICAgICB9KTtcclxuICAgIH1cclxuICAgIHJldHVybiAocmVzdWx0OiBUKTtcclxuICB9XHJcblxyXG4gIGlzUnVuSW5Qcm9ncmVzcygpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9sYXN0RGlzcGF0Y2hlZE9wID4gdGhpcy5fbGFzdEZpbmlzaGVkT3A7XHJcbiAgfVxyXG59XHJcblxyXG4vKlxyXG4gKiBSZXR1cm5zIGEgcHJvbWlzZSB0aGF0IHdpbGwgcmVzb2x2ZSBhZnRlciBgbWlsbGlTZWNvbmRzYCBtaWxsaSBzZWNvbmRzLlxyXG4gKiB0aGlzIGNhbiBiZSB1c2VkIHRvIHBhdXNlIGV4ZWN1dGlvbiBhc3luY2hyb25vdXNseS5cclxuICogZS5nLiBhd2FpdCBzbGVlcCgxMDAwKSwgcGF1c2VzIHRoZSBhc3luYyBmbG93IGV4ZWN1dGlvbiBmb3IgMSBzZWNvbmQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2xlZXAobWlsbGlTZWNvbmRzOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XHJcbiAgICBzZXRUaW1lb3V0KHJlc29sdmUsIG1pbGxpU2Vjb25kcyk7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBuZXh0VGljaygpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XHJcbiAgICBwcm9jZXNzLm5leHRUaWNrKHJlc29sdmUpO1xyXG4gIH0pO1xyXG59XHJcblxyXG4vKipcclxuICogRXhlY3V0ZXMgYSBwcm92aWRlZCBjYWxsYmFjayBvbmx5IGlmIGEgcHJvbWlzZSB0YWtlcyBsb25nZXIgdGhhblxyXG4gKiBgbWlsbGlTZWNvbmRzYCBtaWxsaXNlY29uZHMgdG8gcmVzb2x2ZS5cclxuICpcclxuICogQHBhcmFtIGBwcm9taXNlYCB0aGUgcHJvbWlzZSB0byB3YWl0IG9uLlxyXG4gKiBAcGFyYW0gYG1pbGxpU2Vjb25kc2AgbWF4IGFtb3VudCBvZiB0aW1lIHRoYXQgYHByb21pc2VgIGNhbiB0YWtlIHRvIHJlc29sdmVcclxuICogYmVmb3JlIHRpbWVvdXRGbiBpcyBmaXJlZC5cclxuICogQHBhcmFtIGB0aW1lb3V0Rm5gIHRoZSBmdW5jdGlvbiB0byBleGVjdXRlIHdoZW4gYSBwcm9taXNlIHRha2VzIGxvbmdlciB0aGFuXHJcbiAqIGBtaWxsaVNlY29uZHNgIG1zIHRvIHJlc29sdmUuXHJcbiAqIEBwYXJhbSBgY2xlYW51cEZuYCB0aGUgY2xlYW51cCBmdW5jdGlvbiB0byBleGVjdXRlIGFmdGVyIHRoZSBwcm9taXNlIHJlc29sdmVzLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRyaWdnZXJBZnRlcldhaXQ8VD4oXHJcbiAgcHJvbWlzZTogUHJvbWlzZTxUPixcclxuICBtaWxsaVNlY29uZHM6IG51bWJlcixcclxuICB0aW1lb3V0Rm46ICgpID0+IHZvaWQsXHJcbiAgY2xlYW51cEZuPzogKCkgPT4gdm9pZCxcclxuKTogUHJvbWlzZTxUPiB7XHJcbiAgY29uc3QgdGltZW91dCA9IHNldFRpbWVvdXQodGltZW91dEZuLCBtaWxsaVNlY29uZHMpO1xyXG4gIHRyeSB7XHJcbiAgICByZXR1cm4gYXdhaXQgcHJvbWlzZTtcclxuICB9IGZpbmFsbHkge1xyXG4gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xyXG4gICAgaWYgKGNsZWFudXBGbikge1xyXG4gICAgICBjbGVhbnVwRm4oKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUaHJvd24gYnkgYHRpbWVvdXRQcm9taXNlYCBpZiB0aGUgdGltZXIgZmlyZXMgYmVmb3JlIHRoZSBwcm9taXNlIHJlc29sdmVzL3JlamVjdHMuXHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgVGltZWRPdXRFcnJvciBleHRlbmRzIEVycm9yIHtcclxuICB0aW1lb3V0OiBudW1iZXI7XHJcbiAgY29uc3RydWN0b3IobWlsbGlzZWNvbmRzOiBudW1iZXIpIHtcclxuICAgIHN1cGVyKGBUaW1lZCBvdXQgYWZ0ZXIgJHtTdHJpbmcobWlsbGlzZWNvbmRzKX0gbXNgKTtcclxuICAgIHRoaXMudGltZW91dCA9IG1pbGxpc2Vjb25kcztcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBSZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIHRoZSBzYW1lIHZhbHVlIGFzIHRoZSBnaXZlbiBwcm9taXNlLCBvciByZWplY3RzIHdpdGhcclxuICogYFRpbWVkT3V0RXJyb3JgIGlmIGl0IHRha2VzIGxvbmdlciB0aGFuIGBtaWxsaXNlY29uZHNgIG1pbGxpc2Vjb25kcy5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB0aW1lb3V0UHJvbWlzZTxUPihcclxuICBwcm9taXNlOiBQcm9taXNlPFQ+LFxyXG4gIG1pbGxpc2Vjb25kczogbnVtYmVyLFxyXG4pOiBQcm9taXNlPFQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgbGV0IHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgdGltZW91dCA9IG51bGw7XHJcbiAgICAgIHJlamVjdChuZXcgVGltZWRPdXRFcnJvcihtaWxsaXNlY29uZHMpKTtcclxuICAgICAgLy8gVGhpcyBnaXZlcyB1c2VsZXNzIGVycm9yLnN0YWNrIHJlc3VsdHMuXHJcbiAgICAgIC8vIFdlIGNvdWxkIGNhcHR1cmUgdGhlIHN0YWNrIHByZS1lbXB0aXZlbHkgYXQgdGhlIHN0YXJ0XHJcbiAgICAgIC8vIG9mIHRoaXMgbWV0aG9kIGlmIHdlIHdhbnRlZCB1c2VmdWwgb25lcy5cclxuICAgIH0sIG1pbGxpc2Vjb25kcyk7XHJcbiAgICBwcm9taXNlXHJcbiAgICAgIC50aGVuKHZhbHVlID0+IHtcclxuICAgICAgICBpZiAodGltZW91dCAhPSBudWxsKSB7XHJcbiAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJlc29sdmUodmFsdWUpO1xyXG4gICAgICB9KVxyXG4gICAgICAuY2F0Y2godmFsdWUgPT4ge1xyXG4gICAgICAgIGlmICh0aW1lb3V0ICE9IG51bGwpIHtcclxuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVqZWN0KHZhbHVlKTtcclxuICAgICAgfSk7XHJcbiAgfSk7XHJcbn1cclxuXHJcbi8vIEFuIERlYWRsaW5lUmVxdWVzdCBwYXJhbWV0ZXIgdG8gYW4gYXN5bmMgbWV0aG9kIGlzIGEgd2F5IG9mICpyZXF1ZXN0aW5nKiB0aGF0XHJcbi8vIG1ldGhvZCB0byB0aHJvdyBhIFRpbWVkT3V0RXJyb3IgaWYgaXQgZG9lc24ndCBjb21wbGV0ZSBpbiBhIGNlcnRhaW4gdGltZS5cclxuLy8gSXQncyBqdXN0IGEgcmVxdWVzdCAtLSB0aGUgYXN5bmMgbWV0aG9kIHdpbGwgdHlwaWNhbGx5IGhvbm9yIHRoZSByZXF1ZXN0XHJcbi8vIGJ5IHBhc3NpbmcgdGhlIHBhcmFtZXRlciBvbiB0byBBTEwgc3Vic2lkaWFyeSBhc3luYyBtZXRob2RzIHRoYXQgaXQgYXdhaXRzLFxyXG4vLyBvciBieSBjYWxsaW5nIGV4cGlyZVByb21pc2UgdG8gZW5mb3JjZSBhIHRpbWVvdXQsIG9yIHNpbWlsYXIuXHJcbi8vXHJcbi8vIEluIGNhc2VzIHdoZXJlIGEgbWV0aG9kIHN1cHBvcnRzIERlYWRsaW5lUmVxdWVzdCBidXQgeW91IGRvbid0IHRydXN0IGl0LCBkb1xyXG4vLyBgYXdhaXQgdGltZW91dEFmdGVyRGVhZGxpbmUoZGVhZGxpbmUsIHVudHJ1c3RlZC5mb28oZGVhZGxpbmUtMTAwMCkpYCBzbyB5b3VcclxuLy8gYXNrIGl0IG5pY2VseSBidXQgaWYgaXQgZG9lc24ndCBnaXZlIGl0cyBvd24gbW9yZS1zcGVjaWZpYyBkZWFkbGluZSBtZXNzYWdlXHJcbi8vIHdpdGhpbiBhIDEwMDBtcyBncmFjZSBwZXJpb2QgdGhlbiB5b3UgZm9yY2UgbWF0dGVycy5cclxuLy9cclxuLy8gVW5kZXIgdGhlIGhvb2QgYW4gRGVhZGxpbmVSZXF1ZXN0IGlzIGp1c3QgYSB0aW1lc3RhbXAgb2YgdGhlIHRpbWUgYnkgd2hpY2hcclxuLy8gdGhlIG9wZXJhdGlvbiBzaG91bGQgY29tcGxldGUuIFRoaXMgbWFrZXMgaXQgY29tcG9zaXRpb25hbCAoYmV0dGVyIHRoYW5cclxuLy8gXCJkZWxheVwiIHBhcmFtZXRlcnMpIGFuZCBzYWZlbHkgcmVtb3RhYmxlIChiZXR0ZXIgdGhhbiBcIkNhbmNlbGxhdGlvblRva2VuXCJcclxuLy8gcGFyYW1ldGVycykgc28gbG9uZyBhcyBjbG9ja3MgYXJlIGluIHN5bmMuIEluIGFsbCBvdGhlciByZXNwZWN0cyBpdCdzIGxlc3NcclxuLy8gdmVyc2F0aWxlIHRoYW4gQ2FuY2VsbGF0aW9uVG9rZW5zLlxyXG5leHBvcnQgdHlwZSBEZWFkbGluZVJlcXVlc3QgPSBudW1iZXI7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRGVhZGxpbmUoZGVsYXk6IG51bWJlcik6IERlYWRsaW5lUmVxdWVzdCB7XHJcbiAgcmV0dXJuIERhdGUubm93KCkgKyBkZWxheTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHRpbWVvdXRBZnRlckRlYWRsaW5lPFQ+KFxyXG4gIGRlYWRsaW5lOiBEZWFkbGluZVJlcXVlc3QsXHJcbiAgcHJvbWlzZTogUHJvbWlzZTxUPixcclxuKTogUHJvbWlzZTxUPiB7XHJcbiAgY29uc3QgZGVsYXkgPSBkZWFkbGluZSAtIERhdGUubm93KCk7XHJcbiAgcmV0dXJuIHRpbWVvdXRQcm9taXNlKHByb21pc2UsIGRlbGF5IDwgMCA/IDAgOiBkZWxheSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDYWxsIGFuIGFzeW5jIGZ1bmN0aW9uIHJlcGVhdGVkbHkgd2l0aCBhIG1heGltdW0gbnVtYmVyIG9mIHRyaWFscyBsaW1pdCxcclxuICogdW50aWwgYSB2YWxpZCByZXN1bHQgdGhhdCdzIGRlZmluZWQgYnkgYSB2YWxpZGF0aW9uIGZ1bmN0aW9uLlxyXG4gKiBBIGZhaWxlZCBjYWxsIGNhbiByZXN1bHQgZnJvbSBhbiBhc3luYyB0aHJvd24gZXhjZXB0aW9uLCBvciBpbnZhbGlkIHJlc3VsdC5cclxuICpcclxuICogQHBhcmFtIGByZXRyeUZ1bmN0aW9uYCB0aGUgYXN5bmMgbG9naWMgdGhhdCdzIHdhbnRlZCB0byBiZSByZXRyaWVkLlxyXG4gKiBAcGFyYW0gYHZhbGlkYXRpb25GdW5jdGlvbmAgdGhlIHZhbGlkYXRpb24gZnVuY3Rpb24gdGhhdCBkZWNpZGVzIHdoZXRoZXIgYSByZXNwb25zZSBpcyB2YWxpZC5cclxuICogQHBhcmFtIGBtYXhpbXVtVHJpZXNgIHRoZSBudW1iZXIgb2YgdGltZXMgdGhlIGByZXRyeUZ1bmN0aW9uYCBjYW4gZmFpbCB0byBnZXQgYSB2YWxpZFxyXG4gKiByZXNwb25zZSBiZWZvcmUgdGhlIGByZXRyeUxpbWl0YCBpcyB0ZXJtaW5hdGVkIHJlcG9ydGluZyBhbiBlcnJvci5cclxuICogQHBhcmFtIGByZXRyeUludGVydmFsTXNgIG9wdGlvbmFsLCB0aGUgbnVtYmVyIG9mIG1pbGxpc2Vjb25kcyB0byB3YWl0IGJldHdlZW4gdHJpYWxzLCBpZiB3YW50ZWQuXHJcbiAqXHJcbiAqIElmIGFuIGV4Y2VwdGlvbiBpcyBlbmNvdW50ZXJlZCBvbiB0aGUgbGFzdCB0cmlhbCwgdGhlIGV4Y2VwdGlvbiBpcyB0aHJvd24uXHJcbiAqIElmIG5vIHZhbGlkIHJlc3BvbnNlIGlzIGZvdW5kLCBhbiBleGNlcHRpb24gaXMgdGhyb3duLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHJldHJ5TGltaXQ8VD4oXHJcbiAgcmV0cnlGdW5jdGlvbjogKCkgPT4gUHJvbWlzZTxUPixcclxuICB2YWxpZGF0aW9uRnVuY3Rpb246IChyZXN1bHQ6IFQpID0+IGJvb2xlYW4sXHJcbiAgbWF4aW11bVRyaWVzOiBudW1iZXIsXHJcbiAgcmV0cnlJbnRlcnZhbE1zPzogbnVtYmVyID0gMCxcclxuKTogUHJvbWlzZTxUPiB7XHJcbiAgbGV0IHJlc3VsdCA9IG51bGw7XHJcbiAgbGV0IHRyaWVzID0gMDtcclxuICBsZXQgbGFzdEVycm9yID0gbnVsbDtcclxuICB3aGlsZSAodHJpZXMgPT09IDAgfHwgdHJpZXMgPCBtYXhpbXVtVHJpZXMpIHtcclxuICAgIHRyeSB7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1hd2FpdC1pbi1sb29wXHJcbiAgICAgIHJlc3VsdCA9IGF3YWl0IHJldHJ5RnVuY3Rpb24oKTtcclxuICAgICAgbGFzdEVycm9yID0gbnVsbDtcclxuICAgICAgaWYgKHZhbGlkYXRpb25GdW5jdGlvbihyZXN1bHQpKSB7XHJcbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgICAgfVxyXG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgbGFzdEVycm9yID0gZXJyb3I7XHJcbiAgICAgIHJlc3VsdCA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCsrdHJpZXMgPCBtYXhpbXVtVHJpZXMgJiYgcmV0cnlJbnRlcnZhbE1zICE9PSAwKSB7XHJcbiAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1hd2FpdC1pbi1sb29wXHJcbiAgICAgIGF3YWl0IHNsZWVwKHJldHJ5SW50ZXJ2YWxNcyk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGlmIChsYXN0RXJyb3IgIT0gbnVsbCkge1xyXG4gICAgdGhyb3cgbGFzdEVycm9yO1xyXG4gIH0gZWxzZSBpZiAodHJpZXMgPT09IG1heGltdW1Ucmllcykge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdObyB2YWxpZCByZXNwb25zZSBmb3VuZCEnKTtcclxuICB9IGVsc2Uge1xyXG4gICAgcmV0dXJuICgocmVzdWx0OiBhbnkpOiBUKTtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBMaW1pdHMgYXN5bmMgZnVuY3Rpb24gZXhlY3V0aW9uIHBhcmFsbGVsaXNtIHRvIG9ubHkgb25lIGF0IGEgdGltZS5cclxuICogSGVuY2UsIGlmIGEgY2FsbCBpcyBhbHJlYWR5IHJ1bm5pbmcsIGl0IHdpbGwgd2FpdCBmb3IgaXQgdG8gZmluaXNoLFxyXG4gKiB0aGVuIHN0YXJ0IHRoZSBuZXh0IGFzeW5jIGV4ZWN1dGlvbiwgYnV0IGlmIGNhbGxlZCBhZ2FpbiB3aGlsZSBub3QgZmluaXNoZWQsXHJcbiAqIGl0IHdpbGwgcmV0dXJuIHRoZSBzY2hlZHVsZWQgZXhlY3V0aW9uIHByb21pc2UuXHJcbiAqXHJcbiAqIFNhbXBsZSBVc2FnZTpcclxuICogYGBgXHJcbiAqIGxldCBpID0gMTtcclxuICogY29uc3Qgb25lRXhlY0F0QVRpbWUgPSBvbmVQYXJhbGxlbEFzeW5jQ2FsbCgoKSA9PiB7XHJcbiAqICAgcmV0dXJuIG5leHQgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAqICAgICBzZXRUaW1lb3V0KDIwMCwgKCkgPT4gcmVzb2x2ZShpKyspKTtcclxuICogICB9KTtcclxuICogfSk7XHJcbiAqXHJcbiAqIGNvbnN0IHJlc3VsdDFQcm9taXNlID0gb25lRXhlY0F0QVRpbWUoKTsgLy8gU3RhcnQgYW4gYXN5bmMsIGFuZCByZXNvbHZlIHRvIDEgaW4gMjAwIG1zLlxyXG4gKiBjb25zdCByZXN1bHQyUHJvbWlzZSA9IG9uZUV4ZWNBdEFUaW1lKCk7IC8vIFNjaGVkdWxlIHRoZSBuZXh0IGFzeW5jLCBhbmQgcmVzb2x2ZSB0byAyIGluIDQwMCBtcy5cclxuICogY29uc3QgcmVzdWx0M1Byb21pc2UgPSBvbmVFeGVjQXRBVGltZSgpOyAvLyBSZXVzZSBzY2hlZHVsZWQgcHJvbWlzZSBhbmQgcmVzb2x2ZSB0byAyIGluIDQwMCBtcy5cclxuICogYGBgXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2VyaWFsaXplQXN5bmNDYWxsPFQ+KFxyXG4gIGFzeW5jRnVuOiAoKSA9PiBQcm9taXNlPFQ+LFxyXG4pOiAoKSA9PiBQcm9taXNlPFQ+IHtcclxuICBsZXQgc2NoZWR1bGVkQ2FsbCA9IG51bGw7XHJcbiAgbGV0IHBlbmRpbmdDYWxsID0gbnVsbDtcclxuICBjb25zdCBzdGFydEFzeW5jQ2FsbCA9ICgpID0+IHtcclxuICAgIGNvbnN0IHJlc3VsdFByb21pc2UgPSBhc3luY0Z1bigpO1xyXG4gICAgcGVuZGluZ0NhbGwgPSByZXN1bHRQcm9taXNlLnRoZW4oXHJcbiAgICAgICgpID0+IChwZW5kaW5nQ2FsbCA9IG51bGwpLFxyXG4gICAgICAoKSA9PiAocGVuZGluZ0NhbGwgPSBudWxsKSxcclxuICAgICk7XHJcbiAgICByZXR1cm4gcmVzdWx0UHJvbWlzZTtcclxuICB9O1xyXG4gIGNvbnN0IGNhbGxOZXh0ID0gKCkgPT4ge1xyXG4gICAgc2NoZWR1bGVkQ2FsbCA9IG51bGw7XHJcbiAgICByZXR1cm4gc3RhcnRBc3luY0NhbGwoKTtcclxuICB9O1xyXG4gIGNvbnN0IHNjaGVkdWxlTmV4dENhbGwgPSAoKSA9PiB7XHJcbiAgICBpZiAoc2NoZWR1bGVkQ2FsbCA9PSBudWxsKSB7XHJcbiAgICAgIGludmFyaWFudChwZW5kaW5nQ2FsbCwgJ3BlbmRpbmdDYWxsIG11c3Qgbm90IGJlIG51bGwhJyk7XHJcbiAgICAgIHNjaGVkdWxlZENhbGwgPSBwZW5kaW5nQ2FsbC50aGVuKGNhbGxOZXh0LCBjYWxsTmV4dCk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gc2NoZWR1bGVkQ2FsbDtcclxuICB9O1xyXG4gIHJldHVybiAoKSA9PiB7XHJcbiAgICBpZiAocGVuZGluZ0NhbGwgPT0gbnVsbCkge1xyXG4gICAgICByZXR1cm4gc3RhcnRBc3luY0NhbGwoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiBzY2hlZHVsZU5leHRDYWxsKCk7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFByb3ZpZGVzIGEgcHJvbWlzZSBhbG9uZyB3aXRoIG1ldGhvZHMgdG8gY2hhbmdlIGl0cyBzdGF0ZS4gT3VyIHZlcnNpb24gb2YgdGhlIG5vbi1zdGFuZGFyZFxyXG4gKiBgUHJvbWlzZS5kZWZlcigpYC5cclxuICpcclxuICogSU1QT1JUQU5UOiBUaGlzIHNob3VsZCBhbG1vc3QgbmV2ZXIgYmUgdXNlZCEhIEluc3RlYWQsIHVzZSB0aGUgUHJvbWlzZSBjb25zdHJ1Y3Rvci4gU2VlXHJcbiAqICA8aHR0cHM6Ly9naXRodWIuY29tL3BldGthYW50b25vdi9ibHVlYmlyZC93aWtpL1Byb21pc2UtYW50aS1wYXR0ZXJucyN0aGUtZGVmZXJyZWQtYW50aS1wYXR0ZXJuPlxyXG4gKi9cclxuZXhwb3J0IGNsYXNzIERlZmVycmVkPFQ+IHtcclxuICBwcm9taXNlOiBQcm9taXNlPFQ+O1xyXG4gIHJlc29sdmU6ICh2YWx1ZTogVCkgPT4gdm9pZDtcclxuICByZWplY3Q6IChlcnJvcjogRXJyb3IpID0+IHZvaWQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5wcm9taXNlID0gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICB0aGlzLnJlc29sdmUgPSByZXNvbHZlO1xyXG4gICAgICB0aGlzLnJlamVjdCA9IHJlamVjdDtcclxuICAgIH0pO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybnMgYSB2YWx1ZSBkZXJpdmVkIGFzeW5jaHJvbm91c2x5IGZyb20gYW4gZWxlbWVudCBpbiB0aGUgaXRlbXMgYXJyYXkuXHJcbiAqIFRoZSB0ZXN0IGZ1bmN0aW9uIGlzIGFwcGxpZWQgc2VxdWVudGlhbGx5IHRvIGVhY2ggZWxlbWVudCBpbiBpdGVtcyB1bnRpbFxyXG4gKiBvbmUgcmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhIG5vbi1udWxsIHZhbHVlLiBXaGVuIHRoaXMgaGFwcGVucyxcclxuICogdGhlIFByb21pc2UgcmV0dXJuZWQgYnkgdGhpcyBtZXRob2Qgd2lsbCByZXNvbHZlIHRvIHRoYXQgbm9uLW51bGwgdmFsdWUuIElmXHJcbiAqIG5vIHN1Y2ggUHJvbWlzZSBpcyBwcm9kdWNlZCwgdGhlbiB0aGUgUHJvbWlzZSByZXR1cm5lZCBieSB0aGlzIGZ1bmN0aW9uXHJcbiAqIHdpbGwgcmVzb2x2ZSB0byBudWxsLlxyXG4gKlxyXG4gKiBAcGFyYW0gaXRlbXMgQXJyYXkgb2YgZWxlbWVudHMgdGhhdCB3aWxsIGJlIHBhc3NlZCB0byB0ZXN0LCBvbmUgYXQgYSB0aW1lLlxyXG4gKiBAcGFyYW0gdGVzdCBXaWxsIGJlIGNhbGxlZCB3aXRoIGVhY2ggaXRlbSBhbmQgbXVzdCByZXR1cm4gZWl0aGVyOlxyXG4gKiAgICAgKDEpIEEgXCJ0aGVuYWJsZVwiIChpLmUsIGEgUHJvbWlzZSBvciBwcm9taXNlLWxpa2Ugb2JqZWN0KSB0aGF0IHJlc29sdmVzXHJcbiAqICAgICAgICAgdG8gYSBkZXJpdmVkIHZhbHVlICh0aGF0IHdpbGwgYmUgcmV0dXJuZWQpIG9yIG51bGwuXHJcbiAqICAgICAoMikgbnVsbC5cclxuICogICAgIEluIGJvdGggY2FzZXMgd2hlcmUgbnVsbCBpcyByZXR1cm5lZCwgdGVzdCB3aWxsIGJlIGFwcGxpZWQgdG8gdGhlIG5leHRcclxuICogICAgIGl0ZW0gaW4gdGhlIGFycmF5LlxyXG4gKiBAcGFyYW0gdGhpc0FyZyBSZWNlaXZlciB0aGF0IHdpbGwgYmUgdXNlZCB3aGVuIHRlc3QgaXMgY2FsbGVkLlxyXG4gKiBAcmV0dXJuIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byBhbiBhc3luY2hyb25vdXNseSBkZXJpdmVkIHZhbHVlIG9yIG51bGwuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXN5bmNGaW5kPFQsIFU+KFxyXG4gIGl0ZW1zXzogQXJyYXk8VD4sXHJcbiAgdGVzdDogKHQ6IFQpID0+ID9Qcm9taXNlPD9VPixcclxuICB0aGlzQXJnPzogbWl4ZWQsXHJcbik6IFByb21pc2U8P1U+IHtcclxuICBsZXQgaXRlbXMgPSBpdGVtc187XHJcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgIC8vIENyZWF0ZSBhIGxvY2FsIGNvcHkgb2YgaXRlbXMgdG8gZGVmZW5kIGFnYWluc3QgdGhlIGNhbGxlciBtb2RpZnlpbmcgdGhlXHJcbiAgICAvLyBhcnJheSBiZWZvcmUgdGhpcyBQcm9taXNlIGlzIHJlc29sdmVkLlxyXG4gICAgaXRlbXMgPSBpdGVtcy5zbGljZSgpO1xyXG4gICAgY29uc3QgbnVtSXRlbXMgPSBpdGVtcy5sZW5ndGg7XHJcblxyXG4gICAgY29uc3QgbmV4dCA9IGFzeW5jIGZ1bmN0aW9uKGluZGV4KSB7XHJcbiAgICAgIGlmIChpbmRleCA9PT0gbnVtSXRlbXMpIHtcclxuICAgICAgICByZXNvbHZlKG51bGwpO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgaXRlbSA9IGl0ZW1zW2luZGV4XTtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgdGVzdC5jYWxsKHRoaXNBcmcsIGl0ZW0pO1xyXG4gICAgICBpZiAocmVzdWx0ICE9IG51bGwpIHtcclxuICAgICAgICByZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgbmV4dChpbmRleCArIDEpO1xyXG4gICAgICB9XHJcbiAgICB9O1xyXG5cclxuICAgIG5leHQoMCk7XHJcbiAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZW5vZGVpZnkoXHJcbiAgZjogKC4uLmFyZ3M6IEFycmF5PGFueT4pID0+IGFueSxcclxuKTogKC4uLmFyZ3M6IEFycmF5PGFueT4pID0+IFByb21pc2U8YW55PiB7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uKC4uLmFyZ3M6IEFycmF5PGFueT4pIHtcclxuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIGZ1bmN0aW9uIGNhbGxiYWNrKGVycm9yLCByZXN1bHQpIHtcclxuICAgICAgICBpZiAoZXJyb3IpIHtcclxuICAgICAgICAgIHJlamVjdChlcnJvcik7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHJlc29sdmUocmVzdWx0KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgZi5hcHBseSh0aGlzLCBhcmdzLmNvbmNhdChbY2FsbGJhY2tdKSk7XHJcbiAgICB9KTtcclxuICB9O1xyXG59XHJcblxyXG4vKipcclxuICogQSBQcm9taXNlIHV0aWxpdHkgdGhhdCBydW5zIGEgbWF4aW11bSBvZiBsaW1pdCBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZVxyXG4gKiBpdGVyYXRpbmcgb3ZlciBhbiBhcnJheSBhbmQgcmV0dXJuaW5nIHRoZSByZXN1bHQgb2YgZXhlY3V0aW9ucy5cclxuICogZS5nLiB0byBsaW1pdCB0aGUgbnVtYmVyIG9mIGZpbGUgcmVhZHMgdG8gNSxcclxuICogcmVwbGFjZSB0aGUgY29kZTpcclxuICogICAgdmFyIGZpbGVDb250ZW50cyA9IGF3YWl0IFByb21pc2UuYWxsKGZpbGVQYXRocy5tYXAoZnNQcm9taXNlLnJlYWRGaWxlKSlcclxuICogd2l0aDpcclxuICogICAgdmFyIGZpbGVDb250ZW50cyA9IGF3YWl0IGFzeW5jTGltaXQoZmlsZVBhdGhzLCA1LCBmc1Byb21pc2UucmVhZEZpbGUpXHJcbiAqXHJcbiAqIFRoaXMgaXMgcGFydGljdWxyaWx5IHVzZWZ1bCB0byBsaW1pdCBJTyBvcGVyYXRpb25zIHRvIGEgY29uZmlndXJhYmxlIG1heGltdW0gKHRvIGF2b2lkXHJcbiAqIGJsb2NraW5nKSwgd2hpbGUgZW5qb3lpbmcgdGhlIGNvbmZpZ3VyZWQgbGV2ZWwgb2YgcGFyYWxsZWxpc20uXHJcbiAqXHJcbiAqIEBwYXJhbSBhcnJheSB0aGUgYXJyYXkgb2YgaXRlbXMgZm9yIGl0ZXJhdGlvbi5cclxuICogQHBhcmFtIGxpbWl0IHRoZSBjb25maWd1cmFibGUgbnVtYmVyIG9mIHBhcmFsbGVsIGFzeW5jIG9wZXJhdGlvbnMuXHJcbiAqIEBwYXJhbSBtYXBwaW5nRnVuY3Rpb24gdGhlIGFzeW5jIFByb21pc2UgZnVuY3Rpb24gdGhhdCBjb3VsZCByZXR1cm4gYSB1c2VmdWwgcmVzdWx0LlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGFzeW5jTGltaXQ8VCwgVj4oXHJcbiAgYXJyYXk6IEFycmF5PFQ+LFxyXG4gIGxpbWl0OiBudW1iZXIsXHJcbiAgbWFwcGluZ0Z1bmN0aW9uOiAoaXRlbTogVCkgPT4gUHJvbWlzZTxWPixcclxuKTogUHJvbWlzZTxBcnJheTxWPj4ge1xyXG4gIGNvbnN0IHJlc3VsdDogQXJyYXk8Vj4gPSBuZXcgQXJyYXkoYXJyYXkubGVuZ3RoKTtcclxuICBsZXQgcGFyYWxsZWxQcm9taXNlcyA9IDA7XHJcbiAgbGV0IGluZGV4ID0gMDtcclxuXHJcbiAgbGV0IHBhcmFsbGVsTGltaXQgPSBNYXRoLm1pbihsaW1pdCwgYXJyYXkubGVuZ3RoKSB8fCAxO1xyXG5cclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgY29uc3QgcnVuUHJvbWlzZSA9IGFzeW5jICgpID0+IHtcclxuICAgICAgaWYgKGluZGV4ID09PSBhcnJheS5sZW5ndGgpIHtcclxuICAgICAgICBpZiAocGFyYWxsZWxQcm9taXNlcyA9PT0gMCkge1xyXG4gICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgKytwYXJhbGxlbFByb21pc2VzO1xyXG4gICAgICBjb25zdCBpID0gaW5kZXgrKztcclxuICAgICAgdHJ5IHtcclxuICAgICAgICByZXN1bHRbaV0gPSBhd2FpdCBtYXBwaW5nRnVuY3Rpb24oYXJyYXlbaV0pO1xyXG4gICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgcmVqZWN0KGUpO1xyXG4gICAgICB9XHJcbiAgICAgIC0tcGFyYWxsZWxQcm9taXNlcztcclxuICAgICAgcnVuUHJvbWlzZSgpO1xyXG4gICAgfTtcclxuXHJcbiAgICB3aGlsZSAocGFyYWxsZWxMaW1pdC0tKSB7XHJcbiAgICAgIHJ1blByb21pc2UoKTtcclxuICAgIH1cclxuICB9KTtcclxufVxyXG5cclxuLyoqXHJcbiAqIGBmaWx0ZXJgIFByb21pc2UgdXRpbGl0eSB0aGF0IGFsbG93cyBmaWx0ZXJpbmcgYW4gYXJyYXkgd2l0aCBhbiBhc3luYyBQcm9taXNlIGZ1bmN0aW9uLlxyXG4gKiBJdCdzIGFuIGFsdGVybmF0aXZlIHRvIGBBcnJheS5wcm90b3R5cGUuZmlsdGVyYCB0aGF0IGFjY2VwdHMgYW4gYXN5bmMgZnVuY3Rpb24uXHJcbiAqIFlvdSBjYW4gb3B0aW9uYWxseSBjb25maWd1cmUgYSBsaW1pdCB0byBzZXQgdGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxyXG4gKlxyXG4gKiBQcmV2aW91c2x5LCB3aXRoIHRoZSBgUHJvbWlzZS5hbGxgIHByaW1pdGl2ZSwgd2UgY2FuJ3Qgc2V0IHRoZSBwYXJhbGxlbGlzbSBsaW1pdCBhbmQgd2UgaGF2ZSB0b1xyXG4gKiBgZmlsdGVyYCwgc28sIHdlIHJlcGxhY2UgdGhlIG9sZCBgZmlsdGVyYCBjb2RlOlxyXG4gKiAgICAgdmFyIGV4aXN0aW5nRmlsZVBhdGhzID0gW107XHJcbiAqICAgICBhd2FpdCBQcm9taXNlLmFsbChmaWxlUGF0aHMubWFwKGFzeW5jIChmaWxlUGF0aCkgPT4ge1xyXG4gKiAgICAgICBpZiAoYXdhaXQgZnNQcm9taXNlLmV4aXN0cyhmaWxlUGF0aCkpIHtcclxuICogICAgICAgICBleGlzdGluZ0ZpbGVQYXRocy5wdXNoKGZpbGVQYXRoKTtcclxuICogICAgICAgfVxyXG4gKiAgICAgfSkpO1xyXG4gKiB3aXRoIGxpbWl0IDUgcGFyYWxsZWwgZmlsZXN5c3RlbSBvcGVyYXRpb25zIGF0IGEgdGltZTpcclxuICogICAgdmFyIGV4aXN0aW5nRmlsZVBhdGhzID0gYXdhaXQgYXN5bmNGaWx0ZXIoZmlsZVBhdGhzLCBmc1Byb21pc2UuZXhpc3RzLCA1KTtcclxuICpcclxuICogQHBhcmFtIGFycmF5IHRoZSBhcnJheSBvZiBpdGVtcyBmb3IgYGZpbHRlcmBpbmcuXHJcbiAqIEBwYXJhbSBmaWx0ZXJGdW5jdGlvbiB0aGUgYXN5bmMgYGZpbHRlcmAgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGFcclxuICogICBib29sZWFuLlxyXG4gKiBAcGFyYW0gbGltaXQgdGhlIGNvbmZpZ3VyYWJsZSBudW1iZXIgb2YgcGFyYWxsZWwgYXN5bmMgb3BlcmF0aW9ucy5cclxuICovXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY0ZpbHRlcjxUPihcclxuICBhcnJheTogQXJyYXk8VD4sXHJcbiAgZmlsdGVyRnVuY3Rpb246IChpdGVtOiBUKSA9PiBQcm9taXNlPGJvb2xlYW4+LFxyXG4gIGxpbWl0PzogbnVtYmVyLFxyXG4pOiBQcm9taXNlPEFycmF5PFQ+PiB7XHJcbiAgY29uc3QgZmlsdGVyZWRMaXN0ID0gW107XHJcbiAgLy8gZmxvd2xpbnQtbmV4dC1saW5lIHNrZXRjaHktbnVsbC1udW1iZXI6b2ZmXHJcbiAgYXdhaXQgYXN5bmNMaW1pdChhcnJheSwgbGltaXQgfHwgYXJyYXkubGVuZ3RoLCBhc3luYyAoaXRlbTogVCkgPT4ge1xyXG4gICAgaWYgKGF3YWl0IGZpbHRlckZ1bmN0aW9uKGl0ZW0pKSB7XHJcbiAgICAgIGZpbHRlcmVkTGlzdC5wdXNoKGl0ZW0pO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIHJldHVybiBmaWx0ZXJlZExpc3Q7XHJcbn1cclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY09iakZpbHRlcjxUPihcclxuICBvYmo6IHtba2V5OiBzdHJpbmddOiBUfSxcclxuICBmaWx0ZXJGdW5jdGlvbjogKGl0ZW06IFQsIGtleTogc3RyaW5nKSA9PiBQcm9taXNlPGJvb2xlYW4+LFxyXG4gIGxpbWl0PzogbnVtYmVyLFxyXG4pOiBQcm9taXNlPHtba2V5OiBzdHJpbmddOiBUfT4ge1xyXG4gIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhvYmopO1xyXG4gIGNvbnN0IGZpbHRlcmVkT2JqID0ge307XHJcbiAgLy8gZmxvd2xpbnQtbmV4dC1saW5lIHNrZXRjaHktbnVsbC1udW1iZXI6b2ZmXHJcbiAgYXdhaXQgYXN5bmNMaW1pdChrZXlzLCBsaW1pdCB8fCBrZXlzLmxlbmd0aCwgYXN5bmMgKGtleTogc3RyaW5nKSA9PiB7XHJcbiAgICBjb25zdCBpdGVtID0gb2JqW2tleV07XHJcbiAgICBpZiAoYXdhaXQgZmlsdGVyRnVuY3Rpb24oaXRlbSwga2V5KSkge1xyXG4gICAgICBmaWx0ZXJlZE9ialtrZXldID0gaXRlbTtcclxuICAgIH1cclxuICB9KTtcclxuICByZXR1cm4gZmlsdGVyZWRPYmo7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBgc29tZWAgUHJvbWlzZSB1dGlsaXR5IHRoYXQgYWxsb3dzIGBzb21lYCBhbiBhcnJheSB3aXRoIGFuIGFzeW5jIFByb21pc2Ugc29tZSBmdW5jdGlvbi5cclxuICogSXQncyBhbiBhbHRlcm5hdGl2ZSB0byBgQXJyYXkucHJvdG90eXBlLnNvbWVgIHRoYXQgYWNjZXB0cyBhbiBhc3luYyBzb21lIGZ1bmN0aW9uLlxyXG4gKiBZb3UgY2FuIG9wdGlvbmFsbHkgY29uZmlndXJlIGEgbGltaXQgdG8gc2V0IHRoZSBtYXhpbXVtIG51bWJlciBvZiBhc3luYyBvcGVyYXRpb25zIGF0IGEgdGltZS5cclxuICpcclxuICogUHJldmlvdXNseSwgd2l0aCB0aGUgUHJvbWlzZS5hbGwgcHJpbWl0aXZlLCB3ZSBjYW4ndCBzZXQgdGhlIHBhcmFsbGVsaXNtIGxpbWl0IGFuZCB3ZSBoYXZlIHRvXHJcbiAqIGBzb21lYCwgc28sIHdlIHJlcGxhY2UgdGhlIG9sZCBgc29tZWAgY29kZTpcclxuICogICAgIHZhciBzb21lRmlsZUV4aXN0ID0gZmFsc2U7XHJcbiAqICAgICBhd2FpdCBQcm9taXNlLmFsbChmaWxlUGF0aHMubWFwKGFzeW5jIChmaWxlUGF0aCkgPT4ge1xyXG4gKiAgICAgICBpZiAoYXdhaXQgZnNQcm9taXNlLmV4aXN0cyhmaWxlUGF0aCkpIHtcclxuICogICAgICAgICBzb21lRmlsZUV4aXN0ID0gdHJ1ZTtcclxuICogICAgICAgfVxyXG4gKiAgICAgfSkpO1xyXG4gKiB3aXRoIGxpbWl0IDUgcGFyYWxsZWwgZmlsZXN5c3RlbSBvcGVyYXRpb25zIGF0IGEgdGltZTpcclxuICogICAgdmFyIHNvbWVGaWxlRXhpc3QgPSBhd2FpdCBhc3luY1NvbWUoZmlsZVBhdGhzLCBmc1Byb21pc2UuZXhpc3RzLCA1KTtcclxuICpcclxuICogQHBhcmFtIGFycmF5IHRoZSBhcnJheSBvZiBpdGVtcyBmb3IgYHNvbWVgaW5nLlxyXG4gKiBAcGFyYW0gc29tZUZ1bmN0aW9uIHRoZSBhc3luYyBgc29tZWAgZnVuY3Rpb24gdGhhdCByZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGFcclxuICogICBib29sZWFuLlxyXG4gKiBAcGFyYW0gbGltaXQgdGhlIGNvbmZpZ3VyYWJsZSBudW1iZXIgb2YgcGFyYWxsZWwgYXN5bmMgb3BlcmF0aW9ucy5cclxuICovXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhc3luY1NvbWU8VD4oXHJcbiAgYXJyYXk6IEFycmF5PFQ+LFxyXG4gIHNvbWVGdW5jdGlvbjogKGl0ZW06IFQpID0+IFByb21pc2U8Ym9vbGVhbj4sXHJcbiAgbGltaXQ/OiBudW1iZXIsXHJcbik6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gIGxldCByZXNvbHZlZCA9IGZhbHNlO1xyXG4gIC8vIGZsb3dsaW50LW5leHQtbGluZSBza2V0Y2h5LW51bGwtbnVtYmVyOm9mZlxyXG4gIGF3YWl0IGFzeW5jTGltaXQoYXJyYXksIGxpbWl0IHx8IGFycmF5Lmxlbmd0aCwgYXN5bmMgKGl0ZW06IFQpID0+IHtcclxuICAgIGlmIChyZXNvbHZlZCkge1xyXG4gICAgICAvLyBXZSBkb24ndCBuZWVkIHRvIGNhbGwgdGhlIHNvbWVGdW5jdGlvbiBhbnltb3JlIG9yIHdhaXQgYW55IGxvbmdlci5cclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKGF3YWl0IHNvbWVGdW5jdGlvbihpdGVtKSkge1xyXG4gICAgICByZXNvbHZlZCA9IHRydWU7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgcmV0dXJuIHJlc29sdmVkO1xyXG59XHJcblxyXG4vKipcclxuICogQ2hlY2sgaWYgYW4gb2JqZWN0IGlzIFByb21pc2UgYnkgdGVzdGluZyBpZiBpdCBoYXMgYSBgdGhlbmAgZnVuY3Rpb24gcHJvcGVydHkuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gaXNQcm9taXNlKG9iamVjdDogYW55KTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIChcclxuICAgIEJvb2xlYW4ob2JqZWN0KSAmJlxyXG4gICAgdHlwZW9mIG9iamVjdCA9PT0gJ29iamVjdCcgJiZcclxuICAgIHR5cGVvZiBvYmplY3QudGhlbiA9PT0gJ2Z1bmN0aW9uJ1xyXG4gICk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBXZSBjYW4ndCBuYW1lIGEgZnVuY3Rpb24gJ2ZpbmFsbHknLCBzbyB1c2UgbGFzdGx5IGluc3RlYWQuXHJcbiAqIGZuKCkgd2lsbCBiZSBleGVjdXRlZCAoYW5kIGNvbXBsZXRlZCkgYWZ0ZXIgdGhlIHByb3ZpZGVkIHByb21pc2UgcmVzb2x2ZXMvcmVqZWN0cy5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBsYXN0bHk8VD4oXHJcbiAgcHJvbWlzZTogUHJvbWlzZTxUPixcclxuICBmbjogKCkgPT4gUHJvbWlzZTxtaXhlZD4gfCBtaXhlZCxcclxuKTogUHJvbWlzZTxUPiB7XHJcbiAgcmV0dXJuIHByb21pc2UudGhlbihcclxuICAgIHJldCA9PiB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoZm4oKSkudGhlbigoKSA9PiByZXQpO1xyXG4gICAgfSxcclxuICAgIGVyciA9PiB7XHJcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoZm4oKSkudGhlbigoKSA9PiBQcm9taXNlLnJlamVjdChlcnIpKTtcclxuICAgIH0sXHJcbiAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFdpdGggYSBwdXJlIHByb21pc2Ugb2JqZWN0LCB0aGVyZSdzIG5vIHdheSB0byB0ZWxsIHN5bmNocm9ub3VzbHlcclxuICogd2hldGhlciBvciBub3QgaXQgaGFzICdzZXR0bGVkJyAoaS5lLiBiZWVuIGZ1bGZpbGxlZCBvciByZWplY3RlZCkuXHJcbiAqIEhlcmUgd2UgcHJvdmlkZSBhIHdyYXBwZXIgdGhhdCBwcm92aWRlcyB0aGF0IGluZm9ybWF0aW9uLlxyXG4gKi9cclxuZXhwb3J0IHR5cGUgUHJvbWlzZVN0YXRlPFQ+ID1cclxuICB8IHtraW5kOiAncGVuZGluZyd9XHJcbiAgfCB7a2luZDogJ2Z1bGZpbGxlZCcsIHZhbHVlOiBUfVxyXG4gIHwge2tpbmQ6ICdyZWplY3RlZCcsIGVycm9yOiBhbnl9O1xyXG5cclxuZXhwb3J0IGNsYXNzIFByb21pc2VXaXRoU3RhdGU8VD4ge1xyXG4gIF9wcm9taXNlOiBQcm9taXNlPFQ+O1xyXG4gIF9zdGF0ZTogUHJvbWlzZVN0YXRlPFQ+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcm9taXNlOiBQcm9taXNlPFQ+KSB7XHJcbiAgICB0aGlzLl9zdGF0ZSA9IHtraW5kOiAncGVuZGluZyd9O1xyXG4gICAgdGhpcy5fcHJvbWlzZSA9IHByb21pc2UudGhlbihcclxuICAgICAgdmFsdWUgPT4ge1xyXG4gICAgICAgIHRoaXMuX3N0YXRlID0ge2tpbmQ6ICdmdWxmaWxsZWQnLCB2YWx1ZX07XHJcbiAgICAgICAgcmV0dXJuIHZhbHVlO1xyXG4gICAgICB9LFxyXG4gICAgICBlcnJvciA9PiB7XHJcbiAgICAgICAgdGhpcy5fc3RhdGUgPSB7a2luZDogJ3JlamVjdGVkJywgZXJyb3J9O1xyXG4gICAgICAgIHRocm93IGVycm9yO1xyXG4gICAgICB9LFxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIGdldFByb21pc2UoKTogUHJvbWlzZTxUPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fcHJvbWlzZTtcclxuICB9XHJcblxyXG4gIGdldFN0YXRlKCk6IFByb21pc2VTdGF0ZTxUPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fc3RhdGU7XHJcbiAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZGVsYXlUaW1lKG1zOiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgc2V0VGltZW91dChyZXNvbHZlLCBtcyk7XHJcbiAgfSk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Byb21pc2UuanMiXSwibmFtZXMiOlsiUmVxdWVzdFNlcmlhbGl6ZXIiLCJjb25zdHJ1Y3RvciIsIl9sYXN0RGlzcGF0Y2hlZE9wIiwiX2xhc3RGaW5pc2hlZE9wIiwiX2xhdGVzdFByb21pc2UiLCJfd2FpdFJlc29sdmUiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsInJ1biIsInByb21pc2UiLCJ0aGlzT3AiLCJyZXN1bHQiLCJzdGF0dXMiLCJ3YWl0Rm9yTGF0ZXN0UmVzdWx0IiwibGFzdFByb21pc2UiLCJ0aGVuIiwiaXNSdW5JblByb2dyZXNzIiwic2xlZXAiLCJtaWxsaVNlY29uZHMiLCJzZXRUaW1lb3V0IiwibmV4dFRpY2siLCJwcm9jZXNzIiwidHJpZ2dlckFmdGVyV2FpdCIsInRpbWVvdXRGbiIsImNsZWFudXBGbiIsInRpbWVvdXQiLCJjbGVhclRpbWVvdXQiLCJUaW1lZE91dEVycm9yIiwiRXJyb3IiLCJtaWxsaXNlY29uZHMiLCJTdHJpbmciLCJ0aW1lb3V0UHJvbWlzZSIsInZhbHVlIiwiY2F0Y2giLCJjcmVhdGVEZWFkbGluZSIsImRlbGF5IiwiRGF0ZSIsIm5vdyIsInRpbWVvdXRBZnRlckRlYWRsaW5lIiwiZGVhZGxpbmUiLCJyZXRyeUxpbWl0IiwicmV0cnlGdW5jdGlvbiIsInZhbGlkYXRpb25GdW5jdGlvbiIsIm1heGltdW1UcmllcyIsInJldHJ5SW50ZXJ2YWxNcyIsInRyaWVzIiwibGFzdEVycm9yIiwiZXJyb3IiLCJzZXJpYWxpemVBc3luY0NhbGwiLCJhc3luY0Z1biIsInNjaGVkdWxlZENhbGwiLCJwZW5kaW5nQ2FsbCIsInN0YXJ0QXN5bmNDYWxsIiwicmVzdWx0UHJvbWlzZSIsImNhbGxOZXh0Iiwic2NoZWR1bGVOZXh0Q2FsbCIsIkRlZmVycmVkIiwiYXN5bmNGaW5kIiwiaXRlbXNfIiwidGVzdCIsInRoaXNBcmciLCJpdGVtcyIsInNsaWNlIiwibnVtSXRlbXMiLCJsZW5ndGgiLCJuZXh0IiwiaW5kZXgiLCJpdGVtIiwiY2FsbCIsImRlbm9kZWlmeSIsImYiLCJhcmdzIiwiY2FsbGJhY2siLCJhcHBseSIsImNvbmNhdCIsImFzeW5jTGltaXQiLCJhcnJheSIsImxpbWl0IiwibWFwcGluZ0Z1bmN0aW9uIiwiQXJyYXkiLCJwYXJhbGxlbFByb21pc2VzIiwicGFyYWxsZWxMaW1pdCIsIk1hdGgiLCJtaW4iLCJydW5Qcm9taXNlIiwiaSIsImUiLCJhc3luY0ZpbHRlciIsImZpbHRlckZ1bmN0aW9uIiwiZmlsdGVyZWRMaXN0IiwicHVzaCIsImFzeW5jT2JqRmlsdGVyIiwib2JqIiwia2V5cyIsIk9iamVjdCIsImZpbHRlcmVkT2JqIiwia2V5IiwiYXN5bmNTb21lIiwic29tZUZ1bmN0aW9uIiwicmVzb2x2ZWQiLCJpc1Byb21pc2UiLCJvYmplY3QiLCJCb29sZWFuIiwibGFzdGx5IiwiZm4iLCJyZXQiLCJlcnIiLCJQcm9taXNlV2l0aFN0YXRlIiwiX3Byb21pc2UiLCJfc3RhdGUiLCJraW5kIiwiZ2V0UHJvbWlzZSIsImdldFN0YXRlIiwiZGVsYXlUaW1lIiwibXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBOzs7O0FBWkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFhQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1BLGlCQUFOLENBQTJCO0FBTWhDQyxFQUFBQSxXQUFXLEdBQUc7QUFBQSxTQUxkQyxpQkFLYztBQUFBLFNBSmRDLGVBSWM7QUFBQSxTQUhkQyxjQUdjO0FBQUEsU0FGZEMsWUFFYztBQUNaLFNBQUtILGlCQUFMLEdBQXlCLENBQXpCO0FBQ0EsU0FBS0MsZUFBTCxHQUF1QixD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QUFVLEdBQWU7QUFDdkIsV0FBTyxLQUFLSCxRQUFaO0FBQ0Q7O0FBRURJLEVBQUFBLFFBQVEsR0FBb0I7QUFDMUIsV0FBTyxLQUFLSCxNQUFaO0FBQ0Q7O0FBeEI4Qjs7OztBQTJCMUIsU0FBU0ksU0FBVCxDQUFtQkMsRUFBbkIsRUFBOEM7QUFDbkQsU0FBTyxJQUFJN0csT0FBSixDQUFZLENBQUNDLE9BQUQsRUFBVUMsTUFBVixLQUFxQjtBQUN0Q1ksSUFBQUEsVUFBVSxDQUFDYixPQUFELEVBQVU0RyxFQUFWLENBQVY7QUFDRCxHQUZNLENBQVA7QUFHRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnYXNzZXJ0JztcclxuXHJcbnR5cGUgUnVuUmV0dXJuPFQ+ID1cclxuICB8IHtcclxuICAgICAgc3RhdHVzOiAnc3VjY2VzcycsXHJcbiAgICAgIHJlc3VsdDogVCxcclxuICAgIH1cclxuICB8IHtcclxuICAgICAgc3RhdHVzOiAnb3V0ZGF0ZWQnLFxyXG4gICAgfTtcclxuXHJcbi8qKlxyXG4gKiBBbGxvd3MgYSBjYWxsZXIgdG8gZW5zdXJlIHRoYXQgdGhlIHJlc3VsdHMgaXQgcmVjZWl2ZXMgZnJvbSBjb25zZWN1dGl2ZVxyXG4gKiBwcm9taXNlIHJlc29sdXRpb25zIGFyZSBuZXZlciBvdXRkYXRlZC4gVXNhZ2U6XHJcbiAqXHJcbiAqIHZhciByZXF1ZXN0U2VyaWFsaXplciA9IG5ldyBSZXF1ZXN0U2VyaWFsaXplcigpO1xyXG4gKlxyXG4gKiAvLyBpbiBzb21lIGxhdGVyIGxvb3A6XHJcbiAqXHJcbiAqIC8vIG5vdGUgdGhhdCB5b3UgZG8gbm90IGF3YWl0IHRoZSBhc3luYyBmdW5jdGlvbiBoZXJlIC0tIHlvdSBtdXN0IHBhc3MgdGhlXHJcbiAqIC8vIHByb21pc2UgaXQgcmV0dXJucyB0byBgcnVuYFxyXG4gKiB2YXIgcmVzdWx0ID0gYXdhaXQgcmVxdWVzdFNlcmlhbGl6ZXIucnVuKHNvbWVBc3luY0Z1bmN0aW9uKCkpXHJcbiAqXHJcbiAqIGlmIChyZXN1bHQuc3RhdHVzID09PSAnc3VjY2VzcycpIHtcclxuICogICAuLi4uXHJcbiAqICAgcmVzdWx0LnJlc3VsdFxyXG4gKiB9IGVsc2UgaWYgKHJlc3VsdC5zdGF0dXMgPT09ICdvdXRkYXRlZCcpIHtcclxuICogICAuLi4uXHJcbiAqIH1cclxuICpcclxuICogVGhlIGNvbnRyYWN0IGlzIHRoYXQgdGhlIHN0YXR1cyBpcyAnc3VjY2VzcycgaWYgYW5kIG9ubHkgaWYgdGhpcyB3YXMgdGhlIG1vc3RcclxuICogcmVjZW50bHkgZGlzcGF0Y2hlZCBjYWxsIG9mICdydW4nLiBGb3IgZXhhbXBsZSwgaWYgeW91IGNhbGwgcnVuKHByb21pc2UxKSBhbmRcclxuICogdGhlbiBydW4ocHJvbWlzZTIpLCBhbmQgcHJvbWlzZTIgcmVzb2x2ZXMgZmlyc3QsIHRoZSBzZWNvbmQgY2FsbHNpdGUgd291bGRcclxuICogcmVjZWl2ZSBhICdzdWNjZXNzJyBzdGF0dXMuIElmIHByb21pc2UxIGxhdGVyIHJlc29sdmVkLCB0aGUgZmlyc3QgY2FsbHNpdGVcclxuICogd291bGQgcmVjZWl2ZSBhbiAnb3V0ZGF0ZWQnIHN0YXR1cy5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBSZXF1ZXN0U2VyaWFsaXplcjxUPiB7XHJcbiAgX2xhc3REaXNwYXRjaGVkT3A6IG51bWJlcjtcclxuICBfbGFzdEZpbmlzaGVkT3A6IG51bWJlcjtcclxuICBfbGF0ZXN0UHJvbWlzZTogUHJvbWlzZTxUPjtcclxuICBfd2FpdFJlc29sdmU6IEZ1bmN0aW9uO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMuX2xhc3REaXNwYXRjaGVkT3AgPSAwO1xyXG4gICAgdGhpcy5fbGFzdEZpbmlzaGVkT3AgPSAwO1xyXG4gICAgdGhpcy5fbGF0ZXN0UHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgdGhpcy5fd2FpdFJlc29sdmUgPSByZXNvbHZlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBydW4ocHJvbWlzZTogUHJvbWlzZTxUPik6IFByb21pc2U8UnVuUmV0dXJuPFQ+PiB7XHJcbiAgICBjb25zdCB0aGlzT3AgPSB0aGlzLl9sYXN0RGlzcGF0Y2hlZE9wICsgMTtcclxuICAgIHRoaXMuX2xhc3REaXNwYXRjaGVkT3AgPSB0aGlzT3A7XHJcbiAgICB0aGlzLl9sYXRlc3RQcm9taXNlID0gcHJvbWlzZTtcclxuICAgIHRoaXMuX3dhaXRSZXNvbHZlKCk7XHJcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBwcm9taXNlO1xyXG4gICAgaWYgKHRoaXMuX2xhc3RGaW5pc2hlZE9wIDwgdGhpc09wKSB7XHJcbiAgICAgIHRoaXMuX2xhc3RGaW5pc2hlZE9wID0gdGhpc09wO1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIHN0YXR1czogJ3N1Y2Nlc3MnLFxyXG4gICAgICAgIHJlc3VsdCxcclxuICAgICAgfTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgc3RhdHVzOiAnb3V0ZGF0ZWQnLFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBhIFByb21pc2UgdGhhdCByZXNvbHZlcyB0byB0aGUgbGFzdCByZXN1bHQgb2YgYHJ1bmAsXHJcbiAgICogYXMgc29vbiBhcyB0aGVyZSBhcmUgbm8gbW9yZSBvdXRzdGFuZGluZyBgcnVuYCBjYWxscy5cclxuICAgKi9cclxuICBhc3luYyB3YWl0Rm9yTGF0ZXN0UmVzdWx0KCk6IFByb21pc2U8VD4ge1xyXG4gICAgbGV0IGxhc3RQcm9taXNlID0gbnVsbDtcclxuICAgIGxldCByZXN1bHQ6IGFueSA9IG51bGw7XHJcbiAgICB3aGlsZSAobGFzdFByb21pc2UgIT09IHRoaXMuX2xhdGVzdFByb21pc2UpIHtcclxuICAgICAgbGFzdFByb21pc2UgPSB0aGlzLl9sYXRlc3RQcm9taXNlO1xyXG4gICAgICAvLyBXYWl0IGZvciB0aGUgY3VycmVudCBsYXN0IGtub3cgcHJvbWlzZSB0byByZXNvbHZlLCBvciBhIG5leHQgcnVuIGhhdmUgc3RhcnRlZC5cclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF3YWl0LWluLWxvb3BcclxuICAgICAgcmVzdWx0ID0gYXdhaXQgbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX3dhaXRSZXNvbHZlID0gcmVzb2x2ZTtcclxuICAgICAgICB0aGlzLl9sYXRlc3RQcm9taXNlLnRoZW4ocmVzb2x2ZSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChyZXN1bHQ6IFQpO1xyXG4gIH1cclxuXHJcbiAgaXNSdW5JblByb2dyZXNzKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2xhc3REaXNwYXRjaGVkT3AgPiB0aGlzLl9sYXN0RmluaXNoZWRPcDtcclxuICB9XHJcbn1cclxuXHJcbi8qXHJcbiAqIFJldHVybnMgYSBwcm9taXNlIHRoYXQgd2lsbCByZXNvbHZlIGFmdGVyIGBtaWxsaVNlY29uZHNgIG1pbGxpIHNlY29uZHMuXHJcbiAqIHRoaXMgY2FuIGJlIHVzZWQgdG8gcGF1c2UgZXhlY3V0aW9uIGFzeW5jaHJvbm91c2x5LlxyXG4gKiBlLmcuIGF3YWl0IHNsZWVwKDEwMDApLCBwYXVzZXMgdGhlIGFzeW5jIGZsb3cgZXhlY3V0aW9uIGZvciAxIHNlY29uZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzbGVlcChtaWxsaVNlY29uZHM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcclxuICAgIHNldFRpbWVvdXQocmVzb2x2ZSwgbWlsbGlTZWNvbmRzKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG5leHRUaWNrKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcclxuICAgIHByb2Nlc3MubmV4dFRpY2socmVzb2x2ZSk7XHJcbiAgfSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBFeGVjdXRlcyBhIHByb3ZpZGVkIGNhbGxiYWNrIG9ubHkgaWYgYSBwcm9taXNlIHRha2VzIGxvbmdlciB0aGFuXHJcbiAqIGBtaWxsaVNlY29uZHNgIG1pbGxpc2Vjb25kcyB0byByZXNvbHZlLlxyXG4gKlxyXG4gKiBAcGFyYW0gYHByb21pc2VgIHRoZSBwcm9taXNlIHRvIHdhaXQgb24uXHJcbiAqIEBwYXJhbSBgbWlsbGlTZWNvbmRzYCBtYXggYW1vdW50IG9mIHRpbWUgdGhhdCBgcHJvbWlzZWAgY2FuIHRha2UgdG8gcmVzb2x2ZVxyXG4gKiBiZWZvcmUgdGltZW91dEZuIGlzIGZpcmVkLlxyXG4gKiBAcGFyYW0gYHRpbWVvdXRGbmAgdGhlIGZ1bmN0aW9uIHRvIGV4ZWN1dGUgd2hlbiBhIHByb21pc2UgdGFrZXMgbG9uZ2VyIHRoYW5cclxuICogYG1pbGxpU2Vjb25kc2AgbXMgdG8gcmVzb2x2ZS5cclxuICogQHBhcmFtIGBjbGVhbnVwRm5gIHRoZSBjbGVhbnVwIGZ1bmN0aW9uIHRvIGV4ZWN1dGUgYWZ0ZXIgdGhlIHByb21pc2UgcmVzb2x2ZXMuXHJcbiAqL1xyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdHJpZ2dlckFmdGVyV2FpdDxUPihcclxuICBwcm9taXNlOiBQcm9taXNlPFQ+LFxyXG4gIG1pbGxpU2Vjb25kczogbnVtYmVyLFxyXG4gIHRpbWVvdXRGbjogKCkgPT4gdm9pZCxcclxuICBjbGVhbnVwRm4/OiAoKSA9PiB2b2lkLFxyXG4pOiBQcm9taXNlPFQ+IHtcclxuICBjb25zdCB0aW1lb3V0ID0gc2V0VGltZW91dCh0aW1lb3V0Rm4sIG1pbGxpU2Vjb25kcyk7XHJcbiAgdHJ5IHtcclxuICAgIHJldHVybiBhd2FpdCBwcm9taXNlO1xyXG4gIH0gZmluYWxseSB7XHJcbiAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XHJcbiAgICBpZiAoY2xlYW51cEZuKSB7XHJcbiAgICAgIGNsZWFudXBGbigpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFRocm93biBieSBgdGltZW91dFByb21pc2VgIGlmIHRoZSB0aW1lciBmaXJlcyBiZWZvcmUgdGhlIHByb21pc2UgcmVzb2x2ZXMvcmVqZWN0cy5cclxuICovXHJcbmV4cG9ydCBjbGFzcyBUaW1lZE91dEVycm9yIGV4dGVuZHMgRXJyb3Ige1xyXG4gIHRpbWVvdXQ6IG51bWJlcjtcclxuICBjb25zdHJ1Y3RvcihtaWxsaXNlY29uZHM6IG51bWJlcikge1xyXG4gICAgc3VwZXIoYFRpbWVkIG91dCBhZnRlciAke1N0cmluZyhtaWxsaXNlY29uZHMpfSBtc2ApO1xyXG4gICAgdGhpcy50aW1lb3V0ID0gbWlsbGlzZWNvbmRzO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gdGhlIHNhbWUgdmFsdWUgYXMgdGhlIGdpdmVuIHByb21pc2UsIG9yIHJlamVjdHMgd2l0aFxyXG4gKiBgVGltZWRPdXRFcnJvcmAgaWYgaXQgdGFrZXMgbG9uZ2VyIHRoYW4gYG1pbGxpc2Vjb25kc2AgbWlsbGlzZWNvbmRzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHRpbWVvdXRQcm9taXNlPFQ+KFxyXG4gIHByb21pc2U6IFByb21pc2U8VD4sXHJcbiAgbWlsbGlzZWNvbmRzOiBudW1iZXIsXHJcbik6IFByb21pc2U8VD4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICBsZXQgdGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICB0aW1lb3V0ID0gbnVsbDtcclxuICAgICAgcmVqZWN0KG5ldyBUaW1lZE91dEVycm9yKG1pbGxpc2Vjb25kcykpO1xyXG4gICAgICAvLyBUaGlzIGdpdmVzIHVzZWxlc3MgZXJyb3Iuc3RhY2sgcmVzdWx0cy5cclxuICAgICAgLy8gV2UgY291bGQgY2FwdHVyZSB0aGUgc3RhY2sgcHJlLWVtcHRpdmVseSBhdCB0aGUgc3RhcnRcclxuICAgICAgLy8gb2YgdGhpcyBtZXRob2QgaWYgd2Ugd2FudGVkIHVzZWZ1bCBvbmVzLlxyXG4gICAgfSwgbWlsbGlzZWNvbmRzKTtcclxuICAgIHByb21pc2VcclxuICAgICAgLnRoZW4odmFsdWUgPT4ge1xyXG4gICAgICAgIGlmICh0aW1lb3V0ICE9IG51bGwpIHtcclxuICAgICAgICAgIGNsZWFyVGltZW91dCh0aW1lb3V0KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmVzb2x2ZSh2YWx1ZSk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCh2YWx1ZSA9PiB7XHJcbiAgICAgICAgaWYgKHRpbWVvdXQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZWplY3QodmFsdWUpO1xyXG4gICAgICB9KTtcclxuICB9KTtcclxufVxyXG5cclxuLy8gQW4gRGVhZGxpbmVSZXF1ZXN0IHBhcmFtZXRlciB0byBhbiBhc3luYyBtZXRob2QgaXMgYSB3YXkgb2YgKnJlcXVlc3RpbmcqIHRoYXRcclxuLy8gbWV0aG9kIHRvIHRocm93IGEgVGltZWRPdXRFcnJvciBpZiBpdCBkb2Vzbid0IGNvbXBsZXRlIGluIGEgY2VydGFpbiB0aW1lLlxyXG4vLyBJdCdzIGp1c3QgYSByZXF1ZXN0IC0tIHRoZSBhc3luYyBtZXRob2Qgd2lsbCB0eXBpY2FsbHkgaG9ub3IgdGhlIHJlcXVlc3RcclxuLy8gYnkgcGFzc2luZyB0aGUgcGFyYW1ldGVyIG9uIHRvIEFMTCBzdWJzaWRpYXJ5IGFzeW5jIG1ldGhvZHMgdGhhdCBpdCBhd2FpdHMsXHJcbi8vIG9yIGJ5IGNhbGxpbmcgZXhwaXJlUHJvbWlzZSB0byBlbmZvcmNlIGEgdGltZW91dCwgb3Igc2ltaWxhci5cclxuLy9cclxuLy8gSW4gY2FzZXMgd2hlcmUgYSBtZXRob2Qgc3VwcG9ydHMgRGVhZGxpbmVSZXF1ZXN0IGJ1dCB5b3UgZG9uJ3QgdHJ1c3QgaXQsIGRvXHJcbi8vIGBhd2FpdCB0aW1lb3V0QWZ0ZXJEZWFkbGluZShkZWFkbGluZSwgdW50cnVzdGVkLmZvbyhkZWFkbGluZS0xMDAwKSlgIHNvIHlvdVxyXG4vLyBhc2sgaXQgbmljZWx5IGJ1dCBpZiBpdCBkb2Vzbid0IGdpdmUgaXRzIG93biBtb3JlLXNwZWNpZmljIGRlYWRsaW5lIG1lc3NhZ2VcclxuLy8gd2l0aGluIGEgMTAwMG1zIGdyYWNlIHBlcmlvZCB0aGVuIHlvdSBmb3JjZSBtYXR0ZXJzLlxyXG4vL1xyXG4vLyBVbmRlciB0aGUgaG9vZCBhbiBEZWFkbGluZVJlcXVlc3QgaXMganVzdCBhIHRpbWVzdGFtcCBvZiB0aGUgdGltZSBieSB3aGljaFxyXG4vLyB0aGUgb3BlcmF0aW9uIHNob3VsZCBjb21wbGV0ZS4gVGhpcyBtYWtlcyBpdCBjb21wb3NpdGlvbmFsIChiZXR0ZXIgdGhhblxyXG4vLyBcImRlbGF5XCIgcGFyYW1ldGVycykgYW5kIHNhZmVseSByZW1vdGFibGUgKGJldHRlciB0aGFuIFwiQ2FuY2VsbGF0aW9uVG9rZW5cIlxyXG4vLyBwYXJhbWV0ZXJzKSBzbyBsb25nIGFzIGNsb2NrcyBhcmUgaW4gc3luYy4gSW4gYWxsIG90aGVyIHJlc3BlY3RzIGl0J3MgbGVzc1xyXG4vLyB2ZXJzYXRpbGUgdGhhbiBDYW5jZWxsYXRpb25Ub2tlbnMuXHJcbmV4cG9ydCB0eXBlIERlYWRsaW5lUmVxdWVzdCA9IG51bWJlcjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVEZWFkbGluZShkZWxheTogbnVtYmVyKTogRGVhZGxpbmVSZXF1ZXN0IHtcclxuICByZXR1cm4gRGF0ZS5ub3coKSArIGRlbGF5O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdGltZW91dEFmdGVyRGVhZGxpbmU8VD4oXHJcbiAgZGVhZGxpbmU6IERlYWRsaW5lUmVxdWVzdCxcclxuICBwcm9taXNlOiBQcm9taXNlPFQ+LFxyXG4pOiBQcm9taXNlPFQ+IHtcclxuICBjb25zdCBkZWxheSA9IGRlYWRsaW5lIC0gRGF0ZS5ub3coKTtcclxuICByZXR1cm4gdGltZW91dFByb21pc2UocHJvbWlzZSwgZGVsYXkgPCAwID8gMCA6IGRlbGF5KTtcclxufVxyXG5cclxuLyoqXHJcbiAqIENhbGwgYW4gYXN5bmMgZnVuY3Rpb24gcmVwZWF0ZWRseSB3aXRoIGEgbWF4aW11bSBudW1iZXIgb2YgdHJpYWxzIGxpbWl0LFxyXG4gKiB1bnRpbCBhIHZhbGlkIHJlc3VsdCB0aGF0J3MgZGVmaW5lZCBieSBhIHZhbGlkYXRpb24gZnVuY3Rpb24uXHJcbiAqIEEgZmFpbGVkIGNhbGwgY2FuIHJlc3VsdCBmcm9tIGFuIGFzeW5jIHRocm93biBleGNlcHRpb24sIG9yIGludmFsaWQgcmVzdWx0LlxyXG4gKlxyXG4gKiBAcGFyYW0gYHJldHJ5RnVuY3Rpb25gIHRoZSBhc3luYyBsb2dpYyB0aGF0J3Mgd2FudGVkIHRvIGJlIHJldHJpZWQuXHJcbiAqIEBwYXJhbSBgdmFsaWRhdGlvbkZ1bmN0aW9uYCB0aGUgdmFsaWRhdGlvbiBmdW5jdGlvbiB0aGF0IGRlY2lkZXMgd2hldGhlciBhIHJlc3BvbnNlIGlzIHZhbGlkLlxyXG4gKiBAcGFyYW0gYG1heGltdW1Ucmllc2AgdGhlIG51bWJlciBvZiB0aW1lcyB0aGUgYHJldHJ5RnVuY3Rpb25gIGNhbiBmYWlsIHRvIGdldCBhIHZhbGlkXHJcbiAqIHJlc3BvbnNlIGJlZm9yZSB0aGUgYHJldHJ5TGltaXRgIGlzIHRlcm1pbmF0ZWQgcmVwb3J0aW5nIGFuIGVycm9yLlxyXG4gKiBAcGFyYW0gYHJldHJ5SW50ZXJ2YWxNc2Agb3B0aW9uYWwsIHRoZSBudW1iZXIgb2YgbWlsbGlzZWNvbmRzIHRvIHdhaXQgYmV0d2VlbiB0cmlhbHMsIGlmIHdhbnRlZC5cclxuICpcclxuICogSWYgYW4gZXhjZXB0aW9uIGlzIGVuY291bnRlcmVkIG9uIHRoZSBsYXN0IHRyaWFsLCB0aGUgZXhjZXB0aW9uIGlzIHRocm93bi5cclxuICogSWYgbm8gdmFsaWQgcmVzcG9uc2UgaXMgZm91bmQsIGFuIGV4Y2VwdGlvbiBpcyB0aHJvd24uXHJcbiAqL1xyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmV0cnlMaW1pdDxUPihcclxuICByZXRyeUZ1bmN0aW9uOiAoKSA9PiBQcm9taXNlPFQ+LFxyXG4gIHZhbGlkYXRpb25GdW5jdGlvbjogKHJlc3VsdDogVCkgPT4gYm9vbGVhbixcclxuICBtYXhpbXVtVHJpZXM6IG51bWJlcixcclxuICByZXRyeUludGVydmFsTXM/OiBudW1iZXIgPSAwLFxyXG4pOiBQcm9taXNlPFQ+IHtcclxuICBsZXQgcmVzdWx0ID0gbnVsbDtcclxuICBsZXQgdHJpZXMgPSAwO1xyXG4gIGxldCBsYXN0RXJyb3IgPSBudWxsO1xyXG4gIHdoaWxlICh0cmllcyA9PT0gMCB8fCB0cmllcyA8IG1heGltdW1Ucmllcykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF3YWl0LWluLWxvb3BcclxuICAgICAgcmVzdWx0ID0gYXdhaXQgcmV0cnlGdW5jdGlvbigpO1xyXG4gICAgICBsYXN0RXJyb3IgPSBudWxsO1xyXG4gICAgICBpZiAodmFsaWRhdGlvbkZ1bmN0aW9uKHJlc3VsdCkpIHtcclxuICAgICAgICByZXR1cm4gcmVzdWx0O1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlcnJvcikge1xyXG4gICAgICBsYXN0RXJyb3IgPSBlcnJvcjtcclxuICAgICAgcmVzdWx0ID0gbnVsbDtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoKyt0cmllcyA8IG1heGltdW1UcmllcyAmJiByZXRyeUludGVydmFsTXMgIT09IDApIHtcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWF3YWl0LWluLWxvb3BcclxuICAgICAgYXdhaXQgc2xlZXAocmV0cnlJbnRlcnZhbE1zKTtcclxuICAgIH1cclxuICB9XHJcbiAgaWYgKGxhc3RFcnJvciAhPSBudWxsKSB7XHJcbiAgICB0aHJvdyBsYXN0RXJyb3I7XHJcbiAgfSBlbHNlIGlmICh0cmllcyA9PT0gbWF4aW11bVRyaWVzKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHZhbGlkIHJlc3BvbnNlIGZvdW5kIScpO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gKChyZXN1bHQ6IGFueSk6IFQpO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIExpbWl0cyBhc3luYyBmdW5jdGlvbiBleGVjdXRpb24gcGFyYWxsZWxpc20gdG8gb25seSBvbmUgYXQgYSB0aW1lLlxyXG4gKiBIZW5jZSwgaWYgYSBjYWxsIGlzIGFscmVhZHkgcnVubmluZywgaXQgd2lsbCB3YWl0IGZvciBpdCB0byBmaW5pc2gsXHJcbiAqIHRoZW4gc3RhcnQgdGhlIG5leHQgYXN5bmMgZXhlY3V0aW9uLCBidXQgaWYgY2FsbGVkIGFnYWluIHdoaWxlIG5vdCBmaW5pc2hlZCxcclxuICogaXQgd2lsbCByZXR1cm4gdGhlIHNjaGVkdWxlZCBleGVjdXRpb24gcHJvbWlzZS5cclxuICpcclxuICogU2FtcGxlIFVzYWdlOlxyXG4gKiBgYGBcclxuICogbGV0IGkgPSAxO1xyXG4gKiBjb25zdCBvbmVFeGVjQXRBVGltZSA9IG9uZVBhcmFsbGVsQXN5bmNDYWxsKCgpID0+IHtcclxuICogICByZXR1cm4gbmV4dCBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICogICAgIHNldFRpbWVvdXQoMjAwLCAoKSA9PiByZXNvbHZlKGkrKykpO1xyXG4gKiAgIH0pO1xyXG4gKiB9KTtcclxuICpcclxuICogY29uc3QgcmVzdWx0MVByb21pc2UgPSBvbmVFeGVjQXRBVGltZSgpOyAvLyBTdGFydCBhbiBhc3luYywgYW5kIHJlc29sdmUgdG8gMSBpbiAyMDAgbXMuXHJcbiAqIGNvbnN0IHJlc3VsdDJQcm9taXNlID0gb25lRXhlY0F0QVRpbWUoKTsgLy8gU2NoZWR1bGUgdGhlIG5leHQgYXN5bmMsIGFuZCByZXNvbHZlIHRvIDIgaW4gNDAwIG1zLlxyXG4gKiBjb25zdCByZXN1bHQzUHJvbWlzZSA9IG9uZUV4ZWNBdEFUaW1lKCk7IC8vIFJldXNlIHNjaGVkdWxlZCBwcm9taXNlIGFuZCByZXNvbHZlIHRvIDIgaW4gNDAwIG1zLlxyXG4gKiBgYGBcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzZXJpYWxpemVBc3luY0NhbGw8VD4oXHJcbiAgYXN5bmNGdW46ICgpID0+IFByb21pc2U8VD4sXHJcbik6ICgpID0+IFByb21pc2U8VD4ge1xyXG4gIGxldCBzY2hlZHVsZWRDYWxsID0gbnVsbDtcclxuICBsZXQgcGVuZGluZ0NhbGwgPSBudWxsO1xyXG4gIGNvbnN0IHN0YXJ0QXN5bmNDYWxsID0gKCkgPT4ge1xyXG4gICAgY29uc3QgcmVzdWx0UHJvbWlzZSA9IGFzeW5jRnVuKCk7XHJcbiAgICBwZW5kaW5nQ2FsbCA9IHJlc3VsdFByb21pc2UudGhlbihcclxuICAgICAgKCkgPT4gKHBlbmRpbmdDYWxsID0gbnVsbCksXHJcbiAgICAgICgpID0+IChwZW5kaW5nQ2FsbCA9IG51bGwpLFxyXG4gICAgKTtcclxuICAgIHJldHVybiByZXN1bHRQcm9taXNlO1xyXG4gIH07XHJcbiAgY29uc3QgY2FsbE5leHQgPSAoKSA9PiB7XHJcbiAgICBzY2hlZHVsZWRDYWxsID0gbnVsbDtcclxuICAgIHJldHVybiBzdGFydEFzeW5jQ2FsbCgpO1xyXG4gIH07XHJcbiAgY29uc3Qgc2NoZWR1bGVOZXh0Q2FsbCA9ICgpID0+IHtcclxuICAgIGlmIChzY2hlZHVsZWRDYWxsID09IG51bGwpIHtcclxuICAgICAgaW52YXJpYW50KHBlbmRpbmdDYWxsLCAncGVuZGluZ0NhbGwgbXVzdCBub3QgYmUgbnVsbCEnKTtcclxuICAgICAgc2NoZWR1bGVkQ2FsbCA9IHBlbmRpbmdDYWxsLnRoZW4oY2FsbE5leHQsIGNhbGxOZXh0KTtcclxuICAgIH1cclxuICAgIHJldHVybiBzY2hlZHVsZWRDYWxsO1xyXG4gIH07XHJcbiAgcmV0dXJuICgpID0+IHtcclxuICAgIGlmIChwZW5kaW5nQ2FsbCA9PSBudWxsKSB7XHJcbiAgICAgIHJldHVybiBzdGFydEFzeW5jQ2FsbCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIHNjaGVkdWxlTmV4dENhbGwoKTtcclxuICAgIH1cclxuICB9O1xyXG59XHJcblxyXG4vKipcclxuICogUHJvdmlkZXMgYSBwcm9taXNlIGFsb25nIHdpdGggbWV0aG9kcyB0byBjaGFuZ2UgaXRzIHN0YXRlLiBPdXIgdmVyc2lvbiBvZiB0aGUgbm9uLXN0YW5kYXJkXHJcbiAqIGBQcm9taXNlLmRlZmVyKClgLlxyXG4gKlxyXG4gKiBJTVBPUlRBTlQ6IFRoaXMgc2hvdWxkIGFsbW9zdCBuZXZlciBiZSB1c2VkISEgSW5zdGVhZCwgdXNlIHRoZSBQcm9taXNlIGNvbnN0cnVjdG9yLiBTZWVcclxuICogIDxodHRwczovL2dpdGh1Yi5jb20vcGV0a2FhbnRvbm92L2JsdWViaXJkL3dpa2kvUHJvbWlzZS1hbnRpLXBhdHRlcm5zI3RoZS1kZWZlcnJlZC1hbnRpLXBhdHRlcm4+XHJcbiAqL1xyXG5leHBvcnQgY2xhc3MgRGVmZXJyZWQ8VD4ge1xyXG4gIHByb21pc2U6IFByb21pc2U8VD47XHJcbiAgcmVzb2x2ZTogKHZhbHVlOiBUKSA9PiB2b2lkO1xyXG4gIHJlamVjdDogKGVycm9yOiBFcnJvcikgPT4gdm9pZDtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB0aGlzLnByb21pc2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgIHRoaXMucmVzb2x2ZSA9IHJlc29sdmU7XHJcbiAgICAgIHRoaXMucmVqZWN0ID0gcmVqZWN0O1xyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogUmV0dXJucyBhIHZhbHVlIGRlcml2ZWQgYXN5bmNocm9ub3VzbHkgZnJvbSBhbiBlbGVtZW50IGluIHRoZSBpdGVtcyBhcnJheS5cclxuICogVGhlIHRlc3QgZnVuY3Rpb24gaXMgYXBwbGllZCBzZXF1ZW50aWFsbHkgdG8gZWFjaCBlbGVtZW50IGluIGl0ZW1zIHVudGlsXHJcbiAqIG9uZSByZXR1cm5zIGEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgbm9uLW51bGwgdmFsdWUuIFdoZW4gdGhpcyBoYXBwZW5zLFxyXG4gKiB0aGUgUHJvbWlzZSByZXR1cm5lZCBieSB0aGlzIG1ldGhvZCB3aWxsIHJlc29sdmUgdG8gdGhhdCBub24tbnVsbCB2YWx1ZS4gSWZcclxuICogbm8gc3VjaCBQcm9taXNlIGlzIHByb2R1Y2VkLCB0aGVuIHRoZSBQcm9taXNlIHJldHVybmVkIGJ5IHRoaXMgZnVuY3Rpb25cclxuICogd2lsbCByZXNvbHZlIHRvIG51bGwuXHJcbiAqXHJcbiAqIEBwYXJhbSBpdGVtcyBBcnJheSBvZiBlbGVtZW50cyB0aGF0IHdpbGwgYmUgcGFzc2VkIHRvIHRlc3QsIG9uZSBhdCBhIHRpbWUuXHJcbiAqIEBwYXJhbSB0ZXN0IFdpbGwgYmUgY2FsbGVkIHdpdGggZWFjaCBpdGVtIGFuZCBtdXN0IHJldHVybiBlaXRoZXI6XHJcbiAqICAgICAoMSkgQSBcInRoZW5hYmxlXCIgKGkuZSwgYSBQcm9taXNlIG9yIHByb21pc2UtbGlrZSBvYmplY3QpIHRoYXQgcmVzb2x2ZXNcclxuICogICAgICAgICB0byBhIGRlcml2ZWQgdmFsdWUgKHRoYXQgd2lsbCBiZSByZXR1cm5lZCkgb3IgbnVsbC5cclxuICogICAgICgyKSBudWxsLlxyXG4gKiAgICAgSW4gYm90aCBjYXNlcyB3aGVyZSBudWxsIGlzIHJldHVybmVkLCB0ZXN0IHdpbGwgYmUgYXBwbGllZCB0byB0aGUgbmV4dFxyXG4gKiAgICAgaXRlbSBpbiB0aGUgYXJyYXkuXHJcbiAqIEBwYXJhbSB0aGlzQXJnIFJlY2VpdmVyIHRoYXQgd2lsbCBiZSB1c2VkIHdoZW4gdGVzdCBpcyBjYWxsZWQuXHJcbiAqIEByZXR1cm4gUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGFuIGFzeW5jaHJvbm91c2x5IGRlcml2ZWQgdmFsdWUgb3IgbnVsbC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhc3luY0ZpbmQ8VCwgVT4oXHJcbiAgaXRlbXNfOiBBcnJheTxUPixcclxuICB0ZXN0OiAodDogVCkgPT4gP1Byb21pc2U8P1U+LFxyXG4gIHRoaXNBcmc/OiBtaXhlZCxcclxuKTogUHJvbWlzZTw/VT4ge1xyXG4gIGxldCBpdGVtcyA9IGl0ZW1zXztcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgLy8gQ3JlYXRlIGEgbG9jYWwgY29weSBvZiBpdGVtcyB0byBkZWZlbmQgYWdhaW5zdCB0aGUgY2FsbGVyIG1vZGlmeWluZyB0aGVcclxuICAgIC8vIGFycmF5IGJlZm9yZSB0aGlzIFByb21pc2UgaXMgcmVzb2x2ZWQuXHJcbiAgICBpdGVtcyA9IGl0ZW1zLnNsaWNlKCk7XHJcbiAgICBjb25zdCBudW1JdGVtcyA9IGl0ZW1zLmxlbmd0aDtcclxuXHJcbiAgICBjb25zdCBuZXh0ID0gYXN5bmMgZnVuY3Rpb24oaW5kZXgpIHtcclxuICAgICAgaWYgKGluZGV4ID09PSBudW1JdGVtcykge1xyXG4gICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBjb25zdCBpdGVtID0gaXRlbXNbaW5kZXhdO1xyXG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCB0ZXN0LmNhbGwodGhpc0FyZywgaXRlbSk7XHJcbiAgICAgIGlmIChyZXN1bHQgIT0gbnVsbCkge1xyXG4gICAgICAgIHJlc29sdmUocmVzdWx0KTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBuZXh0KGluZGV4ICsgMSk7XHJcbiAgICAgIH1cclxuICAgIH07XHJcblxyXG4gICAgbmV4dCgwKTtcclxuICB9KTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGRlbm9kZWlmeShcclxuICBmOiAoLi4uYXJnczogQXJyYXk8YW55PikgPT4gYW55LFxyXG4pOiAoLi4uYXJnczogQXJyYXk8YW55PikgPT4gUHJvbWlzZTxhbnk+IHtcclxuICByZXR1cm4gZnVuY3Rpb24oLi4uYXJnczogQXJyYXk8YW55Pikge1xyXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgZnVuY3Rpb24gY2FsbGJhY2soZXJyb3IsIHJlc3VsdCkge1xyXG4gICAgICAgIGlmIChlcnJvcikge1xyXG4gICAgICAgICAgcmVqZWN0KGVycm9yKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgcmVzb2x2ZShyZXN1bHQpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBmLmFwcGx5KHRoaXMsIGFyZ3MuY29uY2F0KFtjYWxsYmFja10pKTtcclxuICAgIH0pO1xyXG4gIH07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBBIFByb21pc2UgdXRpbGl0eSB0aGF0IHJ1bnMgYSBtYXhpbXVtIG9mIGxpbWl0IGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lXHJcbiAqIGl0ZXJhdGluZyBvdmVyIGFuIGFycmF5IGFuZCByZXR1cm5pbmcgdGhlIHJlc3VsdCBvZiBleGVjdXRpb25zLlxyXG4gKiBlLmcuIHRvIGxpbWl0IHRoZSBudW1iZXIgb2YgZmlsZSByZWFkcyB0byA1LFxyXG4gKiByZXBsYWNlIHRoZSBjb2RlOlxyXG4gKiAgICB2YXIgZmlsZUNvbnRlbnRzID0gYXdhaXQgUHJvbWlzZS5hbGwoZmlsZVBhdGhzLm1hcChmc1Byb21pc2UucmVhZEZpbGUpKVxyXG4gKiB3aXRoOlxyXG4gKiAgICB2YXIgZmlsZUNvbnRlbnRzID0gYXdhaXQgYXN5bmNMaW1pdChmaWxlUGF0aHMsIDUsIGZzUHJvbWlzZS5yZWFkRmlsZSlcclxuICpcclxuICogVGhpcyBpcyBwYXJ0aWN1bHJpbHkgdXNlZnVsIHRvIGxpbWl0IElPIG9wZXJhdGlvbnMgdG8gYSBjb25maWd1cmFibGUgbWF4aW11bSAodG8gYXZvaWRcclxuICogYmxvY2tpbmcpLCB3aGlsZSBlbmpveWluZyB0aGUgY29uZmlndXJlZCBsZXZlbCBvZiBwYXJhbGxlbGlzbS5cclxuICpcclxuICogQHBhcmFtIGFycmF5IHRoZSBhcnJheSBvZiBpdGVtcyBmb3IgaXRlcmF0aW9uLlxyXG4gKiBAcGFyYW0gbGltaXQgdGhlIGNvbmZpZ3VyYWJsZSBudW1iZXIgb2YgcGFyYWxsZWwgYXN5bmMgb3BlcmF0aW9ucy5cclxuICogQHBhcmFtIG1hcHBpbmdGdW5jdGlvbiB0aGUgYXN5bmMgUHJvbWlzZSBmdW5jdGlvbiB0aGF0IGNvdWxkIHJldHVybiBhIHVzZWZ1bCByZXN1bHQuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXN5bmNMaW1pdDxULCBWPihcclxuICBhcnJheTogQXJyYXk8VD4sXHJcbiAgbGltaXQ6IG51bWJlcixcclxuICBtYXBwaW5nRnVuY3Rpb246IChpdGVtOiBUKSA9PiBQcm9taXNlPFY+LFxyXG4pOiBQcm9taXNlPEFycmF5PFY+PiB7XHJcbiAgY29uc3QgcmVzdWx0OiBBcnJheTxWPiA9IG5ldyBBcnJheShhcnJheS5sZW5ndGgpO1xyXG4gIGxldCBwYXJhbGxlbFByb21pc2VzID0gMDtcclxuICBsZXQgaW5kZXggPSAwO1xyXG5cclxuICBsZXQgcGFyYWxsZWxMaW1pdCA9IE1hdGgubWluKGxpbWl0LCBhcnJheS5sZW5ndGgpIHx8IDE7XHJcblxyXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICBjb25zdCBydW5Qcm9taXNlID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgICBpZiAoaW5kZXggPT09IGFycmF5Lmxlbmd0aCkge1xyXG4gICAgICAgIGlmIChwYXJhbGxlbFByb21pc2VzID09PSAwKSB7XHJcbiAgICAgICAgICByZXNvbHZlKHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICArK3BhcmFsbGVsUHJvbWlzZXM7XHJcbiAgICAgIGNvbnN0IGkgPSBpbmRleCsrO1xyXG4gICAgICB0cnkge1xyXG4gICAgICAgIHJlc3VsdFtpXSA9IGF3YWl0IG1hcHBpbmdGdW5jdGlvbihhcnJheVtpXSk7XHJcbiAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICByZWplY3QoZSk7XHJcbiAgICAgIH1cclxuICAgICAgLS1wYXJhbGxlbFByb21pc2VzO1xyXG4gICAgICBydW5Qcm9taXNlKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIHdoaWxlIChwYXJhbGxlbExpbWl0LS0pIHtcclxuICAgICAgcnVuUHJvbWlzZSgpO1xyXG4gICAgfVxyXG4gIH0pO1xyXG59XHJcblxyXG4vKipcclxuICogYGZpbHRlcmAgUHJvbWlzZSB1dGlsaXR5IHRoYXQgYWxsb3dzIGZpbHRlcmluZyBhbiBhcnJheSB3aXRoIGFuIGFzeW5jIFByb21pc2UgZnVuY3Rpb24uXHJcbiAqIEl0J3MgYW4gYWx0ZXJuYXRpdmUgdG8gYEFycmF5LnByb3RvdHlwZS5maWx0ZXJgIHRoYXQgYWNjZXB0cyBhbiBhc3luYyBmdW5jdGlvbi5cclxuICogWW91IGNhbiBvcHRpb25hbGx5IGNvbmZpZ3VyZSBhIGxpbWl0IHRvIHNldCB0aGUgbWF4aW11bSBudW1iZXIgb2YgYXN5bmMgb3BlcmF0aW9ucyBhdCBhIHRpbWUuXHJcbiAqXHJcbiAqIFByZXZpb3VzbHksIHdpdGggdGhlIGBQcm9taXNlLmFsbGAgcHJpbWl0aXZlLCB3ZSBjYW4ndCBzZXQgdGhlIHBhcmFsbGVsaXNtIGxpbWl0IGFuZCB3ZSBoYXZlIHRvXHJcbiAqIGBmaWx0ZXJgLCBzbywgd2UgcmVwbGFjZSB0aGUgb2xkIGBmaWx0ZXJgIGNvZGU6XHJcbiAqICAgICB2YXIgZXhpc3RpbmdGaWxlUGF0aHMgPSBbXTtcclxuICogICAgIGF3YWl0IFByb21pc2UuYWxsKGZpbGVQYXRocy5tYXAoYXN5bmMgKGZpbGVQYXRoKSA9PiB7XHJcbiAqICAgICAgIGlmIChhd2FpdCBmc1Byb21pc2UuZXhpc3RzKGZpbGVQYXRoKSkge1xyXG4gKiAgICAgICAgIGV4aXN0aW5nRmlsZVBhdGhzLnB1c2goZmlsZVBhdGgpO1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9KSk7XHJcbiAqIHdpdGggbGltaXQgNSBwYXJhbGxlbCBmaWxlc3lzdGVtIG9wZXJhdGlvbnMgYXQgYSB0aW1lOlxyXG4gKiAgICB2YXIgZXhpc3RpbmdGaWxlUGF0aHMgPSBhd2FpdCBhc3luY0ZpbHRlcihmaWxlUGF0aHMsIGZzUHJvbWlzZS5leGlzdHMsIDUpO1xyXG4gKlxyXG4gKiBAcGFyYW0gYXJyYXkgdGhlIGFycmF5IG9mIGl0ZW1zIGZvciBgZmlsdGVyYGluZy5cclxuICogQHBhcmFtIGZpbHRlckZ1bmN0aW9uIHRoZSBhc3luYyBgZmlsdGVyYCBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYVxyXG4gKiAgIGJvb2xlYW4uXHJcbiAqIEBwYXJhbSBsaW1pdCB0aGUgY29uZmlndXJhYmxlIG51bWJlciBvZiBwYXJhbGxlbCBhc3luYyBvcGVyYXRpb25zLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFzeW5jRmlsdGVyPFQ+KFxyXG4gIGFycmF5OiBBcnJheTxUPixcclxuICBmaWx0ZXJGdW5jdGlvbjogKGl0ZW06IFQpID0+IFByb21pc2U8Ym9vbGVhbj4sXHJcbiAgbGltaXQ/OiBudW1iZXIsXHJcbik6IFByb21pc2U8QXJyYXk8VD4+IHtcclxuICBjb25zdCBmaWx0ZXJlZExpc3QgPSBbXTtcclxuICAvLyBmbG93bGludC1uZXh0LWxpbmUgc2tldGNoeS1udWxsLW51bWJlcjpvZmZcclxuICBhd2FpdCBhc3luY0xpbWl0KGFycmF5LCBsaW1pdCB8fCBhcnJheS5sZW5ndGgsIGFzeW5jIChpdGVtOiBUKSA9PiB7XHJcbiAgICBpZiAoYXdhaXQgZmlsdGVyRnVuY3Rpb24oaXRlbSkpIHtcclxuICAgICAgZmlsdGVyZWRMaXN0LnB1c2goaXRlbSk7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgcmV0dXJuIGZpbHRlcmVkTGlzdDtcclxufVxyXG5cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFzeW5jT2JqRmlsdGVyPFQ+KFxyXG4gIG9iajoge1trZXk6IHN0cmluZ106IFR9LFxyXG4gIGZpbHRlckZ1bmN0aW9uOiAoaXRlbTogVCwga2V5OiBzdHJpbmcpID0+IFByb21pc2U8Ym9vbGVhbj4sXHJcbiAgbGltaXQ/OiBudW1iZXIsXHJcbik6IFByb21pc2U8e1trZXk6IHN0cmluZ106IFR9PiB7XHJcbiAgY29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKG9iaik7XHJcbiAgY29uc3QgZmlsdGVyZWRPYmogPSB7fTtcclxuICAvLyBmbG93bGludC1uZXh0LWxpbmUgc2tldGNoeS1udWxsLW51bWJlcjpvZmZcclxuICBhd2FpdCBhc3luY0xpbWl0KGtleXMsIGxpbWl0IHx8IGtleXMubGVuZ3RoLCBhc3luYyAoa2V5OiBzdHJpbmcpID0+IHtcclxuICAgIGNvbnN0IGl0ZW0gPSBvYmpba2V5XTtcclxuICAgIGlmIChhd2FpdCBmaWx0ZXJGdW5jdGlvbihpdGVtLCBrZXkpKSB7XHJcbiAgICAgIGZpbHRlcmVkT2JqW2tleV0gPSBpdGVtO1xyXG4gICAgfVxyXG4gIH0pO1xyXG4gIHJldHVybiBmaWx0ZXJlZE9iajtcclxufVxyXG5cclxuLyoqXHJcbiAqIGBzb21lYCBQcm9taXNlIHV0aWxpdHkgdGhhdCBhbGxvd3MgYHNvbWVgIGFuIGFycmF5IHdpdGggYW4gYXN5bmMgUHJvbWlzZSBzb21lIGZ1bmN0aW9uLlxyXG4gKiBJdCdzIGFuIGFsdGVybmF0aXZlIHRvIGBBcnJheS5wcm90b3R5cGUuc29tZWAgdGhhdCBhY2NlcHRzIGFuIGFzeW5jIHNvbWUgZnVuY3Rpb24uXHJcbiAqIFlvdSBjYW4gb3B0aW9uYWxseSBjb25maWd1cmUgYSBsaW1pdCB0byBzZXQgdGhlIG1heGltdW0gbnVtYmVyIG9mIGFzeW5jIG9wZXJhdGlvbnMgYXQgYSB0aW1lLlxyXG4gKlxyXG4gKiBQcmV2aW91c2x5LCB3aXRoIHRoZSBQcm9taXNlLmFsbCBwcmltaXRpdmUsIHdlIGNhbid0IHNldCB0aGUgcGFyYWxsZWxpc20gbGltaXQgYW5kIHdlIGhhdmUgdG9cclxuICogYHNvbWVgLCBzbywgd2UgcmVwbGFjZSB0aGUgb2xkIGBzb21lYCBjb2RlOlxyXG4gKiAgICAgdmFyIHNvbWVGaWxlRXhpc3QgPSBmYWxzZTtcclxuICogICAgIGF3YWl0IFByb21pc2UuYWxsKGZpbGVQYXRocy5tYXAoYXN5bmMgKGZpbGVQYXRoKSA9PiB7XHJcbiAqICAgICAgIGlmIChhd2FpdCBmc1Byb21pc2UuZXhpc3RzKGZpbGVQYXRoKSkge1xyXG4gKiAgICAgICAgIHNvbWVGaWxlRXhpc3QgPSB0cnVlO1xyXG4gKiAgICAgICB9XHJcbiAqICAgICB9KSk7XHJcbiAqIHdpdGggbGltaXQgNSBwYXJhbGxlbCBmaWxlc3lzdGVtIG9wZXJhdGlvbnMgYXQgYSB0aW1lOlxyXG4gKiAgICB2YXIgc29tZUZpbGVFeGlzdCA9IGF3YWl0IGFzeW5jU29tZShmaWxlUGF0aHMsIGZzUHJvbWlzZS5leGlzdHMsIDUpO1xyXG4gKlxyXG4gKiBAcGFyYW0gYXJyYXkgdGhlIGFycmF5IG9mIGl0ZW1zIGZvciBgc29tZWBpbmcuXHJcbiAqIEBwYXJhbSBzb21lRnVuY3Rpb24gdGhlIGFzeW5jIGBzb21lYCBmdW5jdGlvbiB0aGF0IHJldHVybnMgYSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYVxyXG4gKiAgIGJvb2xlYW4uXHJcbiAqIEBwYXJhbSBsaW1pdCB0aGUgY29uZmlndXJhYmxlIG51bWJlciBvZiBwYXJhbGxlbCBhc3luYyBvcGVyYXRpb25zLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGFzeW5jU29tZTxUPihcclxuICBhcnJheTogQXJyYXk8VD4sXHJcbiAgc29tZUZ1bmN0aW9uOiAoaXRlbTogVCkgPT4gUHJvbWlzZTxib29sZWFuPixcclxuICBsaW1pdD86IG51bWJlcixcclxuKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgbGV0IHJlc29sdmVkID0gZmFsc2U7XHJcbiAgLy8gZmxvd2xpbnQtbmV4dC1saW5lIHNrZXRjaHktbnVsbC1udW1iZXI6b2ZmXHJcbiAgYXdhaXQgYXN5bmNMaW1pdChhcnJheSwgbGltaXQgfHwgYXJyYXkubGVuZ3RoLCBhc3luYyAoaXRlbTogVCkgPT4ge1xyXG4gICAgaWYgKHJlc29sdmVkKSB7XHJcbiAgICAgIC8vIFdlIGRvbid0IG5lZWQgdG8gY2FsbCB0aGUgc29tZUZ1bmN0aW9uIGFueW1vcmUgb3Igd2FpdCBhbnkgbG9uZ2VyLlxyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAoYXdhaXQgc29tZUZ1bmN0aW9uKGl0ZW0pKSB7XHJcbiAgICAgIHJlc29sdmVkID0gdHJ1ZTtcclxuICAgIH1cclxuICB9KTtcclxuICByZXR1cm4gcmVzb2x2ZWQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDaGVjayBpZiBhbiBvYmplY3QgaXMgUHJvbWlzZSBieSB0ZXN0aW5nIGlmIGl0IGhhcyBhIGB0aGVuYCBmdW5jdGlvbiBwcm9wZXJ0eS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1Byb21pc2Uob2JqZWN0OiBhbnkpOiBib29sZWFuIHtcclxuICByZXR1cm4gKFxyXG4gICAgQm9vbGVhbihvYmplY3QpICYmXHJcbiAgICB0eXBlb2Ygb2JqZWN0ID09PSAnb2JqZWN0JyAmJlxyXG4gICAgdHlwZW9mIG9iamVjdC50aGVuID09PSAnZnVuY3Rpb24nXHJcbiAgKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFdlIGNhbid0IG5hbWUgYSBmdW5jdGlvbiAnZmluYWxseScsIHNvIHVzZSBsYXN0bHkgaW5zdGVhZC5cclxuICogZm4oKSB3aWxsIGJlIGV4ZWN1dGVkIChhbmQgY29tcGxldGVkKSBhZnRlciB0aGUgcHJvdmlkZWQgcHJvbWlzZSByZXNvbHZlcy9yZWplY3RzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGxhc3RseTxUPihcclxuICBwcm9taXNlOiBQcm9taXNlPFQ+LFxyXG4gIGZuOiAoKSA9PiBQcm9taXNlPG1peGVkPiB8IG1peGVkLFxyXG4pOiBQcm9taXNlPFQ+IHtcclxuICByZXR1cm4gcHJvbWlzZS50aGVuKFxyXG4gICAgcmV0ID0+IHtcclxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShmbigpKS50aGVuKCgpID0+IHJldCk7XHJcbiAgICB9LFxyXG4gICAgZXJyID0+IHtcclxuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShmbigpKS50aGVuKCgpID0+IFByb21pc2UucmVqZWN0KGVycikpO1xyXG4gICAgfSxcclxuICApO1xyXG59XHJcblxyXG4vKipcclxuICogV2l0aCBhIHB1cmUgcHJvbWlzZSBvYmplY3QsIHRoZXJlJ3Mgbm8gd2F5IHRvIHRlbGwgc3luY2hyb25vdXNseVxyXG4gKiB3aGV0aGVyIG9yIG5vdCBpdCBoYXMgJ3NldHRsZWQnIChpLmUuIGJlZW4gZnVsZmlsbGVkIG9yIHJlamVjdGVkKS5cclxuICogSGVyZSB3ZSBwcm92aWRlIGEgd3JhcHBlciB0aGF0IHByb3ZpZGVzIHRoYXQgaW5mb3JtYXRpb24uXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBQcm9taXNlU3RhdGU8VD4gPVxyXG4gIHwge2tpbmQ6ICdwZW5kaW5nJ31cclxuICB8IHtraW5kOiAnZnVsZmlsbGVkJywgdmFsdWU6IFR9XHJcbiAgfCB7a2luZDogJ3JlamVjdGVkJywgZXJyb3I6IGFueX07XHJcblxyXG5leHBvcnQgY2xhc3MgUHJvbWlzZVdpdGhTdGF0ZTxUPiB7XHJcbiAgX3Byb21pc2U6IFByb21pc2U8VD47XHJcbiAgX3N0YXRlOiBQcm9taXNlU3RhdGU8VD47XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByb21pc2U6IFByb21pc2U8VD4pIHtcclxuICAgIHRoaXMuX3N0YXRlID0ge2tpbmQ6ICdwZW5kaW5nJ307XHJcbiAgICB0aGlzLl9wcm9taXNlID0gcHJvbWlzZS50aGVuKFxyXG4gICAgICB2YWx1ZSA9PiB7XHJcbiAgICAgICAgdGhpcy5fc3RhdGUgPSB7a2luZDogJ2Z1bGZpbGxlZCcsIHZhbHVlfTtcclxuICAgICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICAgIH0sXHJcbiAgICAgIGVycm9yID0+IHtcclxuICAgICAgICB0aGlzLl9zdGF0ZSA9IHtraW5kOiAncmVqZWN0ZWQnLCBlcnJvcn07XHJcbiAgICAgICAgdGhyb3cgZXJyb3I7XHJcbiAgICAgIH0sXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgZ2V0UHJvbWlzZSgpOiBQcm9taXNlPFQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9wcm9taXNlO1xyXG4gIH1cclxuXHJcbiAgZ2V0U3RhdGUoKTogUHJvbWlzZVN0YXRlPFQ+IHtcclxuICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBkZWxheVRpbWUobXM6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICBzZXRUaW1lb3V0KHJlc29sdmUsIG1zKTtcclxuICB9KTtcclxufVxyXG4iXX0= |
@@ -66,2 +66,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3JhbmdlLmpzIl0sIm5hbWVzIjpbIndvcmRBdFBvc2l0aW9uRnJvbUJ1ZmZlciIsImJ1ZmZlciIsInBvc2l0aW9uIiwid29yZFJlZ2V4Iiwicm93IiwiY29sdW1uIiwicm93UmFuZ2UiLCJyYW5nZUZvclJvdyIsIm1hdGNoRGF0YSIsInNjYW5JblJhbmdlIiwiZGF0YSIsInJhbmdlIiwic3RhcnQiLCJpc0xlc3NUaGFuT3JFcXVhbCIsImVuZCIsImlzR3JlYXRlclRoYW4iLCJzdG9wIiwid29yZE1hdGNoIiwibWF0Y2giLCJtYXRjaFJlZ2V4RW5kaW5nQXQiLCJlbmRQb3NpdGlvbiIsInJlZ2V4IiwibGluZSIsImdldFRleHRJblJhbmdlIiwiZXhlYyIsImlzUG9zaXRpb25JblJhbmdlIiwiQXJyYXkiLCJpc0FycmF5Iiwic29tZSIsInIiLCJjb250YWluc1BvaW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7QUFZTyxTQUFTQSx3QkFBVCxDQUNMQyxNQURLLEVBRUxDLFFBRkssRUFHTEMsU0FISyxFQUkyQztBQUNoRCxRQUFNO0FBQUNDLElBQUFBLEdBQUQ7QUFBTUMsSUFBQUE7QUFBTixNQUFnQkgsUUFBdEI7QUFDQSxRQUFNSSxRQUFRLEdBQUdMLE1BQU0sQ0FBQ00sV0FBUCxDQUFtQkgsR0FBbkIsQ0FBakI7QUFDQSxNQUFJSSxTQUFKLENBSGdELENBSWhEOztBQUNBUCxFQUFBQSxNQUFNLENBQUNRLFdBQVAsQ0FBbUJOLFNBQW5CLEVBQThCRyxRQUE5QixFQUF3Q0ksSUFBSSxJQUFJO0FBQzlDLFVBQU07QUFBQ0MsTUFBQUE7QUFBRCxRQUFVRCxJQUFoQjs7QUFDQSxRQUNFQyxLQUFLLENBQUNDLEtBQU4sQ0FBWUMsaUJBQVosQ0FBOEJYLFFBQTlCLEtBQ0FTLEtBQUssQ0FBQ0csR0FBTixDQUFVQyxhQUFWLENBQXdCYixRQUF4QixDQUZGLEVBR0U7QUFDQU0sTUFBQUEsU0FBUyxHQUFHRSxJQUFaO0FBQ0QsS0FQNkMsQ0FROUM7OztBQUNBLFFBQUlDLEtBQUssQ0FBQ0csR0FBTixDQUFVVCxNQUFWLEdBQW1CQSxNQUF2QixFQUErQjtBQUM3QkssTUFBQUEsSUFBSSxDQUFDTSxJQUFMO0FBQ0Q7QUFDRixHQVpEOztBQWFBLE1BQUlSLFNBQUosRUFBZTtBQUNiLFdBQU87QUFDTFMsTUFBQUEsU0FBUyxFQUFFVCxTQUFTLENBQUNVLEtBRGhCO0FBRUxQLE1BQUFBLEtBQUssRUFBRUgsU0FBUyxDQUFDRztBQUZaLEtBQVA7QUFJRCxHQUxELE1BS087QUFDTCxXQUFPLElBQVA7QUFDRDtBQUNGLEMsQ0FFRDtBQUNBO0FBQ0E7OztBQUNPLFNBQVNRLGtCQUFULENBQ0xsQixNQURLLEVBRUxtQixXQUZLLEVBR0xDLEtBSEssRUFJSTtBQUNULFFBQU1DLElBQUksR0FBR3JCLE1BQU0sQ0FBQ3NCLGNBQVAsQ0FBc0IsQ0FBQyxDQUFDSCxXQUFXLENBQUNoQixHQUFiLEVBQWtCLENBQWxCLENBQUQsRUFBdUJnQixXQUF2QixDQUF0QixDQUFiO0FBQ0EsUUFBTUYsS0FBSyxHQUFHRyxLQUFLLENBQUNHLElBQU4sQ0FBV0YsSUFBWCxDQUFkO0FBQ0EsU0FBT0osS0FBSyxJQUFJLElBQVQsR0FBZ0IsSUFBaEIsR0FBdUJBLEtBQUssQ0FBQyxDQUFELENBQW5DO0FBQ0Q7O0FBRU0sU0FBU08saUJBQVQsQ0FDTHZCLFFBREssRUFFTFMsS0FGSyxFQUdJO0FBQ1QsU0FBT2UsS0FBSyxDQUFDQyxPQUFOLENBQWNoQixLQUFkLElBQ0hBLEtBQUssQ0FBQ2lCLElBQU4sQ0FBV0MsQ0FBQyxJQUFJQSxDQUFDLENBQUNDLGFBQUYsQ0FBZ0I1QixRQUFoQixDQUFoQixDQURHLEdBRUhTLEtBQUssQ0FBQ21CLGFBQU4sQ0FBb0I1QixRQUFwQixDQUZKO0FBR0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHdvcmRBdFBvc2l0aW9uRnJvbUJ1ZmZlcihcclxuICBidWZmZXI6IGF0b20kVGV4dEJ1ZmZlciB8IHNpbXBsZVRleHRCdWZmZXIkVGV4dEJ1ZmZlcixcclxuICBwb3NpdGlvbjogYXRvbSRQb2ludE9iamVjdCxcclxuICB3b3JkUmVnZXg6IFJlZ0V4cCxcclxuKTogP3t3b3JkTWF0Y2g6IEFycmF5PHN0cmluZz4sIHJhbmdlOiBhdG9tJFJhbmdlfSB7XHJcbiAgY29uc3Qge3JvdywgY29sdW1ufSA9IHBvc2l0aW9uO1xyXG4gIGNvbnN0IHJvd1JhbmdlID0gYnVmZmVyLnJhbmdlRm9yUm93KHJvdyk7XHJcbiAgbGV0IG1hdGNoRGF0YTtcclxuICAvLyBFeHRyYWN0IHRoZSBleHByZXNzaW9uIGZyb20gdGhlIHJvdyB0ZXh0LlxyXG4gIGJ1ZmZlci5zY2FuSW5SYW5nZSh3b3JkUmVnZXgsIHJvd1JhbmdlLCBkYXRhID0+IHtcclxuICAgIGNvbnN0IHtyYW5nZX0gPSBkYXRhO1xyXG4gICAgaWYgKFxyXG4gICAgICByYW5nZS5zdGFydC5pc0xlc3NUaGFuT3JFcXVhbChwb3NpdGlvbikgJiZcclxuICAgICAgcmFuZ2UuZW5kLmlzR3JlYXRlclRoYW4ocG9zaXRpb24pXHJcbiAgICApIHtcclxuICAgICAgbWF0Y2hEYXRhID0gZGF0YTtcclxuICAgIH1cclxuICAgIC8vIFN0b3AgdGhlIHNjYW4gaWYgdGhlIHNjYW5uZXIgaGFzIHBhc3NlZCBvdXIgcG9zaXRpb24uXHJcbiAgICBpZiAocmFuZ2UuZW5kLmNvbHVtbiA+IGNvbHVtbikge1xyXG4gICAgICBkYXRhLnN0b3AoKTtcclxuICAgIH1cclxuICB9KTtcclxuICBpZiAobWF0Y2hEYXRhKSB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICB3b3JkTWF0Y2g6IG1hdGNoRGF0YS5tYXRjaCxcclxuICAgICAgcmFuZ2U6IG1hdGNoRGF0YS5yYW5nZSxcclxuICAgIH07XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufVxyXG5cclxuLy8gTWF0Y2hlcyBhIHJlZ2V4IG9uIHRoZSB0ZXh0IG9mIHRoZSBsaW5lIGVuZGluZyBhdCBlbmRQb3NpdGlvbi5cclxuLy8gcmVnZXggc2hvdWxkIGVuZCB3aXRoIGEgJyQnLlxyXG4vLyBVc2VmdWwgZm9yIGF1dG9jb21wbGV0ZS5cclxuZXhwb3J0IGZ1bmN0aW9uIG1hdGNoUmVnZXhFbmRpbmdBdChcclxuICBidWZmZXI6IGF0b20kVGV4dEJ1ZmZlciB8IHNpbXBsZVRleHRCdWZmZXIkVGV4dEJ1ZmZlcixcclxuICBlbmRQb3NpdGlvbjogYXRvbSRQb2ludE9iamVjdCxcclxuICByZWdleDogUmVnRXhwLFxyXG4pOiA/c3RyaW5nIHtcclxuICBjb25zdCBsaW5lID0gYnVmZmVyLmdldFRleHRJblJhbmdlKFtbZW5kUG9zaXRpb24ucm93LCAwXSwgZW5kUG9zaXRpb25dKTtcclxuICBjb25zdCBtYXRjaCA9IHJlZ2V4LmV4ZWMobGluZSk7XHJcbiAgcmV0dXJuIG1hdGNoID09IG51bGwgPyBudWxsIDogbWF0Y2hbMF07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1Bvc2l0aW9uSW5SYW5nZShcclxuICBwb3NpdGlvbjogYXRvbSRQb2ludCxcclxuICByYW5nZTogYXRvbSRSYW5nZSB8IEFycmF5PGF0b20kUmFuZ2U+LFxyXG4pOiBib29sZWFuIHtcclxuICByZXR1cm4gQXJyYXkuaXNBcnJheShyYW5nZSlcclxuICAgID8gcmFuZ2Uuc29tZShyID0+IHIuY29udGFpbnNQb2ludChwb3NpdGlvbikpXHJcbiAgICA6IHJhbmdlLmNvbnRhaW5zUG9pbnQocG9zaXRpb24pO1xyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3JhbmdlLmpzIl0sIm5hbWVzIjpbIndvcmRBdFBvc2l0aW9uRnJvbUJ1ZmZlciIsImJ1ZmZlciIsInBvc2l0aW9uIiwid29yZFJlZ2V4Iiwicm93IiwiY29sdW1uIiwicm93UmFuZ2UiLCJyYW5nZUZvclJvdyIsIm1hdGNoRGF0YSIsInNjYW5JblJhbmdlIiwiZGF0YSIsInJhbmdlIiwic3RhcnQiLCJpc0xlc3NUaGFuT3JFcXVhbCIsImVuZCIsImlzR3JlYXRlclRoYW4iLCJzdG9wIiwid29yZE1hdGNoIiwibWF0Y2giLCJtYXRjaFJlZ2V4RW5kaW5nQXQiLCJlbmRQb3NpdGlvbiIsInJlZ2V4IiwibGluZSIsImdldFRleHRJblJhbmdlIiwiZXhlYyIsImlzUG9zaXRpb25JblJhbmdlIiwiQXJyYXkiLCJpc0FycmF5Iiwic29tZSIsInIiLCJjb250YWluc1BvaW50Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRU8sU0FBU0Esd0JBQVQsQ0FDTEMsTUFESyxFQUVMQyxRQUZLLEVBR0xDLFNBSEssRUFJMkM7QUFDaEQsUUFBTTtBQUFDQyxJQUFBQSxHQUFEO0FBQU1DLElBQUFBO0FBQU4sTUFBZ0JILFFBQXRCO0FBQ0EsUUFBTUksUUFBUSxHQUFHTCxNQUFNLENBQUNNLFdBQVAsQ0FBbUJILEdBQW5CLENBQWpCO0FBQ0EsTUFBSUksU0FBSixDQUhnRCxDQUloRDs7QUFDQVAsRUFBQUEsTUFBTSxDQUFDUSxXQUFQLENBQW1CTixTQUFuQixFQUE4QkcsUUFBOUIsRUFBd0NJLElBQUksSUFBSTtBQUM5QyxVQUFNO0FBQUNDLE1BQUFBO0FBQUQsUUFBVUQsSUFBaEI7O0FBQ0EsUUFDRUMsS0FBSyxDQUFDQyxLQUFOLENBQVlDLGlCQUFaLENBQThCWCxRQUE5QixLQUNBUyxLQUFLLENBQUNHLEdBQU4sQ0FBVUMsYUFBVixDQUF3QmIsUUFBeEIsQ0FGRixFQUdFO0FBQ0FNLE1BQUFBLFNBQVMsR0FBR0UsSUFBWjtBQUNELEtBUDZDLENBUTlDOzs7QUFDQSxRQUFJQyxLQUFLLENBQUNHLEdBQU4sQ0FBVVQsTUFBVixHQUFtQkEsTUFBdkIsRUFBK0I7QUFDN0JLLE1BQUFBLElBQUksQ0FBQ00sSUFBTDtBQUNEO0FBQ0YsR0FaRDs7QUFhQSxNQUFJUixTQUFKLEVBQWU7QUFDYixXQUFPO0FBQ0xTLE1BQUFBLFNBQVMsRUFBRVQsU0FBUyxDQUFDVSxLQURoQjtBQUVMUCxNQUFBQSxLQUFLLEVBQUVILFNBQVMsQ0FBQ0c7QUFGWixLQUFQO0FBSUQsR0FMRCxNQUtPO0FBQ0wsV0FBTyxJQUFQO0FBQ0Q7QUFDRixDLENBRUQ7QUFDQTtBQUNBOzs7QUFDTyxTQUFTUSxrQkFBVCxDQUNMbEIsTUFESyxFQUVMbUIsV0FGSyxFQUdMQyxLQUhLLEVBSUk7QUFDVCxRQUFNQyxJQUFJLEdBQUdyQixNQUFNLENBQUNzQixjQUFQLENBQXNCLENBQUMsQ0FBQ0gsV0FBVyxDQUFDaEIsR0FBYixFQUFrQixDQUFsQixDQUFELEVBQXVCZ0IsV0FBdkIsQ0FBdEIsQ0FBYjtBQUNBLFFBQU1GLEtBQUssR0FBR0csS0FBSyxDQUFDRyxJQUFOLENBQVdGLElBQVgsQ0FBZDtBQUNBLFNBQU9KLEtBQUssSUFBSSxJQUFULEdBQWdCLElBQWhCLEdBQXVCQSxLQUFLLENBQUMsQ0FBRCxDQUFuQztBQUNEOztBQUVNLFNBQVNPLGlCQUFULENBQ0x2QixRQURLLEVBRUxTLEtBRkssRUFHSTtBQUNULFNBQU9lLEtBQUssQ0FBQ0MsT0FBTixDQUFjaEIsS0FBZCxJQUNIQSxLQUFLLENBQUNpQixJQUFOLENBQVdDLENBQUMsSUFBSUEsQ0FBQyxDQUFDQyxhQUFGLENBQWdCNUIsUUFBaEIsQ0FBaEIsQ0FERyxHQUVIUyxLQUFLLENBQUNtQixhQUFOLENBQW9CNUIsUUFBcEIsQ0FGSjtBQUdEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB3b3JkQXRQb3NpdGlvbkZyb21CdWZmZXIoXHJcbiAgYnVmZmVyOiBhdG9tJFRleHRCdWZmZXIgfCBzaW1wbGVUZXh0QnVmZmVyJFRleHRCdWZmZXIsXHJcbiAgcG9zaXRpb246IGF0b20kUG9pbnRPYmplY3QsXHJcbiAgd29yZFJlZ2V4OiBSZWdFeHAsXHJcbik6ID97d29yZE1hdGNoOiBBcnJheTxzdHJpbmc+LCByYW5nZTogYXRvbSRSYW5nZX0ge1xyXG4gIGNvbnN0IHtyb3csIGNvbHVtbn0gPSBwb3NpdGlvbjtcclxuICBjb25zdCByb3dSYW5nZSA9IGJ1ZmZlci5yYW5nZUZvclJvdyhyb3cpO1xyXG4gIGxldCBtYXRjaERhdGE7XHJcbiAgLy8gRXh0cmFjdCB0aGUgZXhwcmVzc2lvbiBmcm9tIHRoZSByb3cgdGV4dC5cclxuICBidWZmZXIuc2NhbkluUmFuZ2Uod29yZFJlZ2V4LCByb3dSYW5nZSwgZGF0YSA9PiB7XHJcbiAgICBjb25zdCB7cmFuZ2V9ID0gZGF0YTtcclxuICAgIGlmIChcclxuICAgICAgcmFuZ2Uuc3RhcnQuaXNMZXNzVGhhbk9yRXF1YWwocG9zaXRpb24pICYmXHJcbiAgICAgIHJhbmdlLmVuZC5pc0dyZWF0ZXJUaGFuKHBvc2l0aW9uKVxyXG4gICAgKSB7XHJcbiAgICAgIG1hdGNoRGF0YSA9IGRhdGE7XHJcbiAgICB9XHJcbiAgICAvLyBTdG9wIHRoZSBzY2FuIGlmIHRoZSBzY2FubmVyIGhhcyBwYXNzZWQgb3VyIHBvc2l0aW9uLlxyXG4gICAgaWYgKHJhbmdlLmVuZC5jb2x1bW4gPiBjb2x1bW4pIHtcclxuICAgICAgZGF0YS5zdG9wKCk7XHJcbiAgICB9XHJcbiAgfSk7XHJcbiAgaWYgKG1hdGNoRGF0YSkge1xyXG4gICAgcmV0dXJuIHtcclxuICAgICAgd29yZE1hdGNoOiBtYXRjaERhdGEubWF0Y2gsXHJcbiAgICAgIHJhbmdlOiBtYXRjaERhdGEucmFuZ2UsXHJcbiAgICB9O1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcbn1cclxuXHJcbi8vIE1hdGNoZXMgYSByZWdleCBvbiB0aGUgdGV4dCBvZiB0aGUgbGluZSBlbmRpbmcgYXQgZW5kUG9zaXRpb24uXHJcbi8vIHJlZ2V4IHNob3VsZCBlbmQgd2l0aCBhICckJy5cclxuLy8gVXNlZnVsIGZvciBhdXRvY29tcGxldGUuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXRjaFJlZ2V4RW5kaW5nQXQoXHJcbiAgYnVmZmVyOiBhdG9tJFRleHRCdWZmZXIgfCBzaW1wbGVUZXh0QnVmZmVyJFRleHRCdWZmZXIsXHJcbiAgZW5kUG9zaXRpb246IGF0b20kUG9pbnRPYmplY3QsXHJcbiAgcmVnZXg6IFJlZ0V4cCxcclxuKTogP3N0cmluZyB7XHJcbiAgY29uc3QgbGluZSA9IGJ1ZmZlci5nZXRUZXh0SW5SYW5nZShbW2VuZFBvc2l0aW9uLnJvdywgMF0sIGVuZFBvc2l0aW9uXSk7XHJcbiAgY29uc3QgbWF0Y2ggPSByZWdleC5leGVjKGxpbmUpO1xyXG4gIHJldHVybiBtYXRjaCA9PSBudWxsID8gbnVsbCA6IG1hdGNoWzBdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaXNQb3NpdGlvbkluUmFuZ2UoXHJcbiAgcG9zaXRpb246IGF0b20kUG9pbnQsXHJcbiAgcmFuZ2U6IGF0b20kUmFuZ2UgfCBBcnJheTxhdG9tJFJhbmdlPixcclxuKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIEFycmF5LmlzQXJyYXkocmFuZ2UpXHJcbiAgICA/IHJhbmdlLnNvbWUociA9PiByLmNvbnRhaW5zUG9pbnQocG9zaXRpb24pKVxyXG4gICAgOiByYW5nZS5jb250YWluc1BvaW50KHBvc2l0aW9uKTtcclxufVxyXG4iXX0= |
@@ -108,2 +108,2 @@ "use strict"; | ||
exports.ActionsObservable = ActionsObservable; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3JlZHV4LW9ic2VydmFibGUuanMiXSwibmFtZXMiOlsiY29tYmluZUVwaWNzIiwiZXBpY3MiLCJhY3Rpb25zIiwic3RvcmUiLCJleHRyYSIsInN0cmVhbXMiLCJtYXAiLCJlcGljIiwiT2JzZXJ2YWJsZSIsIm1lcmdlIiwiY3JlYXRlRXBpY01pZGRsZXdhcmUiLCJyb290RXBpYyIsIlN1YmplY3QiLCJhY3Rpb25zT2JzIiwiQWN0aW9uc09ic2VydmFibGUiLCJuZXh0Iiwic3Vic2NyaWJlIiwiZGlzcGF0Y2giLCJhY3Rpb24iLCJyZXN1bHQiLCJjb25zdHJ1Y3RvciIsImFjdGlvbnNTdWJqZWN0Iiwib3BlcmF0b3IiLCJzb3VyY2UiLCJsaWZ0Iiwib2JzZXJ2YWJsZSIsIm9mVHlwZSIsImtleXMiLCJmaWx0ZXIiLCJ0eXBlIiwibGVuIiwibGVuZ3RoIiwiaSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBcUNBOztBQXJDQTs7Ozs7Ozs7Ozs7QUFZQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFzQk8sU0FBU0EsWUFBVCxDQUNMLEdBQUdDLEtBREUsRUFFVTtBQUNmLFNBQU8sQ0FBQ0MsT0FBRCxFQUFnQ0MsS0FBaEMsRUFBb0RDLEtBQXBELEtBQWlFO0FBQ3RFLFVBQU1DLE9BQTZCLEdBQUdKLEtBQUssQ0FBQ0ssR0FBTixDQUFVQyxJQUFJLElBQ2xEQSxJQUFJLENBQUNMLE9BQUQsRUFBVUMsS0FBVixFQUFpQkMsS0FBakIsQ0FEZ0MsQ0FBdEM7QUFHQSxXQUFPSSw2QkFBV0MsS0FBWCxDQUFpQixHQUFHSixPQUFwQixDQUFQO0FBQ0QsR0FMRDtBQU1EOztBQUVNLFNBQVNLLG9CQUFULENBQ0xDLFFBREssRUFFTDtBQUNBLFFBQU1ULE9BQU8sR0FBRyxJQUFJVSx5QkFBSixFQUFoQjtBQUNBLFFBQU1DLFVBQVUsR0FBRyxJQUFJQyxpQkFBSixDQUFzQlosT0FBdEIsQ0FBbkI7QUFFQSxTQUFRQyxLQUFELElBQXlCWSxJQUFELElBQW1CO0FBQ2hELFFBQUlKLFFBQVEsSUFBSSxJQUFoQixFQUFzQjtBQUNwQjtBQUNBQSxNQUFBQSxRQUFRLENBQUNFLFVBQUQsRUFBYVYsS0FBYixDQUFSLENBQTRCYSxTQUE1QixDQUFzQ2IsS0FBSyxDQUFDYyxRQUE1QztBQUNEOztBQUNELFdBQVFDLE1BQUQsSUFBZTtBQUNwQixZQUFNQyxNQUFNLEdBQUdKLElBQUksQ0FBQ0csTUFBRCxDQUFuQjtBQUNBaEIsTUFBQUEsT0FBTyxDQUFDYSxJQUFSLENBQWFHLE1BQWI7QUFDQSxhQUFPQyxNQUFQO0FBQ0QsS0FKRDtBQUtELEdBVkQ7QUFXRDs7QUFFTSxNQUFNTCxpQkFBTixTQUEyQ04sNEJBQTNDLENBQXlEO0FBRzlEWSxFQUFBQSxXQUFXLENBQUNDLGNBQUQsRUFBa0M7QUFDM0M7QUFEMkMsU0FGN0NDLFFBRTZDO0FBRTNDLFNBQUtDLE1BQUwsR0FBY0YsY0FBZDtBQUNEOztBQUVERyxFQUFBQSxJQUFJLENBQUNGLFFBQUQsRUFBK0I7QUFDakMsVUFBTUcsVUFBVSxHQUFHLElBQUlYLGlCQUFKLENBQXNCLElBQXRCLENBQW5CO0FBQ0FXLElBQUFBLFVBQVUsQ0FBQ0gsUUFBWCxHQUFzQkEsUUFBdEI7QUFDQSxXQUFPRyxVQUFQO0FBQ0Q7O0FBRURDLEVBQUFBLE1BQU0sQ0FBQyxHQUFHQyxJQUFKLEVBQTRDO0FBQ2hELFVBQU1SLE1BQU0sR0FBRyxLQUFLUyxNQUFMLENBQVksQ0FBQztBQUFDQyxNQUFBQTtBQUFELEtBQUQsS0FBWTtBQUNyQyxZQUFNQyxHQUFHLEdBQUdILElBQUksQ0FBQ0ksTUFBakI7O0FBQ0EsVUFBSUQsR0FBRyxLQUFLLENBQVosRUFBZTtBQUNiLGVBQU9ELElBQUksS0FBS0YsSUFBSSxDQUFDLENBQUQsQ0FBcEI7QUFDRCxPQUZELE1BRU87QUFDTCxhQUFLLElBQUlLLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdGLEdBQXBCLEVBQXlCRSxDQUFDLEVBQTFCLEVBQThCO0FBQzVCLGNBQUlMLElBQUksQ0FBQ0ssQ0FBRCxDQUFKLEtBQVlILElBQWhCLEVBQXNCO0FBQ3BCLG1CQUFPLElBQVA7QUFDRDtBQUNGO0FBQ0Y7O0FBQ0QsYUFBTyxLQUFQO0FBQ0QsS0FaYyxDQUFmO0FBYUEsV0FBU1YsTUFBVDtBQUNEOztBQTdCNkQiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vLyBEZXJpdmVkIGZyb20gPGh0dHBzOi8vZ2l0aHViLmNvbS9yZWR1eC1vYnNlcnZhYmxlL3JlZHV4LW9ic2VydmFibGUvPiBiZWNhdXNlIHRoZWlyIHZlcnNpb25cclxuLy8gaW1wb3J0cyBhbiBSeCBvcGVyYXRvciBtb2R1bGUgYW5kIHdlIHVzZSBhIGJ1bmRsZS4gT3JpZ2luYWwgbGljZW5zZSBmb2xsb3dzOlxyXG4vL1xyXG4vLyBUaGUgTUlUIExpY2Vuc2UgKE1JVClcclxuLy9cclxuLy8gQ29weXJpZ2h0IChjKSAyMDE2IEJlbiBMZXNoXHJcbi8vXHJcbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcclxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxyXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXHJcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcclxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXHJcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XHJcbi8vXHJcbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluIGFsbFxyXG4vLyBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxyXG4vL1xyXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXHJcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxyXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcclxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxyXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxyXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOIFRIRVxyXG4vLyBTT0ZUV0FSRS5cclxuXHJcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcy1jb21wYXQvYnVuZGxlcy9yeGpzLWNvbXBhdC51bWQubWluLmpzJztcclxuXHJcbi8vIFRoaXMgc2hvdWxkIGJlIHsgdHlwZTogcmVhZG9ubHkgc3RyaW5nIH0gd2hlbiB3ZSBnZXQgcmVhZG9ubHkgcHJvcHMuIEJlY2F1c2UgdGhpcyBpcyB1c2VkIHdpdGhcclxuLy8gZGlzam9pbnQgdW5pb25zIHdlIGNhbid0IHVzZSBgc3RyaW5nYCBoZXJlIGR1ZSB0byBtdXRhdGlvbiBjb25jZXJucy4gRmxvdyBkb2Vzbid0IGtub3cgdGhhdCB3ZVxyXG4vLyBhcmVuJ3QgZ29pbmcgdG8gbXV0YXRlIHRoZSBvYmplY3RzIHdpdGggYSByYW5kb20gc3RyaW5nIHZhbHVlIHNvIGl0IGNhbid0IGFsbG93IHVzIHRvIHBhc3MgYVxyXG4vLyBzcGVjaWZpYyBhY3Rpb24gdHlwZSBpbnRvIHNvbWV0aGluZyBvZiB0eXBlIHsgdHlwZTogc3RyaW5nIH1cclxudHlwZSBBY3Rpb24gPSB7dHlwZTogYW55fTtcclxudHlwZSBTdG9yZTxUOiBBY3Rpb24sIFU+ID0ge1xyXG4gIGRpc3BhdGNoKGFjdGlvbjogVCk6IHZvaWQsXHJcbiAgZ2V0U3RhdGUoKTogVSxcclxuICBzdWJzY3JpYmUobGlzdGVuZXI6ICgpID0+IHZvaWQpOiAoKSA9PiB2b2lkLFxyXG4gIHJlcGxhY2VSZWR1Y2VyKHJlZHVjZXI6ICgpID0+IG1peGVkKTogdm9pZCxcclxufTtcclxudHlwZSBOZXh0PFQ6IEFjdGlvbj4gPSAoYWN0aW9uOiBUKSA9PiBUO1xyXG5leHBvcnQgdHlwZSBFcGljPFQ6IEFjdGlvbiwgVSwgRT4gPSAoXHJcbiAgYWN0aW9uczogQWN0aW9uc09ic2VydmFibGU8VD4sXHJcbiAgc3RvcmU6IFN0b3JlPFQsIFU+LFxyXG4gIGV4dHJhOiBFLFxyXG4pID0+IE9ic2VydmFibGU8VD47XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY29tYmluZUVwaWNzPFQ6IEFjdGlvbiwgVSwgRT4oXHJcbiAgLi4uZXBpY3M6IEFycmF5PEVwaWM8VCwgVSwgRT4+XHJcbik6IEVwaWM8VCwgVSwgRT4ge1xyXG4gIHJldHVybiAoYWN0aW9uczogQWN0aW9uc09ic2VydmFibGU8VD4sIHN0b3JlOiBTdG9yZTxULCBVPiwgZXh0cmE6IEUpID0+IHtcclxuICAgIGNvbnN0IHN0cmVhbXM6IEFycmF5PE9ic2VydmFibGU8VD4+ID0gZXBpY3MubWFwKGVwaWMgPT5cclxuICAgICAgZXBpYyhhY3Rpb25zLCBzdG9yZSwgZXh0cmEpLFxyXG4gICAgKTtcclxuICAgIHJldHVybiBPYnNlcnZhYmxlLm1lcmdlKC4uLnN0cmVhbXMpO1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFcGljTWlkZGxld2FyZTxUOiBBY3Rpb24sIFU+KFxyXG4gIHJvb3RFcGljPzogRXBpYzxULCBVLCB2b2lkPixcclxuKSB7XHJcbiAgY29uc3QgYWN0aW9ucyA9IG5ldyBTdWJqZWN0KCk7XHJcbiAgY29uc3QgYWN0aW9uc09icyA9IG5ldyBBY3Rpb25zT2JzZXJ2YWJsZShhY3Rpb25zKTtcclxuXHJcbiAgcmV0dXJuIChzdG9yZTogU3RvcmU8VCwgVT4pID0+IChuZXh0OiBOZXh0PFQ+KSA9PiB7XHJcbiAgICBpZiAocm9vdEVwaWMgIT0gbnVsbCkge1xyXG4gICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbnVjbGlkZS1pbnRlcm5hbC91bnVzZWQtc3Vic2NyaXB0aW9uXHJcbiAgICAgIHJvb3RFcGljKGFjdGlvbnNPYnMsIHN0b3JlKS5zdWJzY3JpYmUoc3RvcmUuZGlzcGF0Y2gpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIChhY3Rpb246IFQpID0+IHtcclxuICAgICAgY29uc3QgcmVzdWx0ID0gbmV4dChhY3Rpb24pO1xyXG4gICAgICBhY3Rpb25zLm5leHQoYWN0aW9uKTtcclxuICAgICAgcmV0dXJuIHJlc3VsdDtcclxuICAgIH07XHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIEFjdGlvbnNPYnNlcnZhYmxlPFQ6IEFjdGlvbj4gZXh0ZW5kcyBPYnNlcnZhYmxlPFQ+IHtcclxuICBvcGVyYXRvcjogYW55O1xyXG5cclxuICBjb25zdHJ1Y3RvcihhY3Rpb25zU3ViamVjdDogT2JzZXJ2YWJsZTxhbnk+KSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5zb3VyY2UgPSBhY3Rpb25zU3ViamVjdDtcclxuICB9XHJcblxyXG4gIGxpZnQob3BlcmF0b3I6IGFueSk6IE9ic2VydmFibGU8VD4ge1xyXG4gICAgY29uc3Qgb2JzZXJ2YWJsZSA9IG5ldyBBY3Rpb25zT2JzZXJ2YWJsZSh0aGlzKTtcclxuICAgIG9ic2VydmFibGUub3BlcmF0b3IgPSBvcGVyYXRvcjtcclxuICAgIHJldHVybiBvYnNlcnZhYmxlO1xyXG4gIH1cclxuXHJcbiAgb2ZUeXBlKC4uLmtleXM6IEFycmF5PGFueT4pOiBBY3Rpb25zT2JzZXJ2YWJsZTxUPiB7XHJcbiAgICBjb25zdCByZXN1bHQgPSB0aGlzLmZpbHRlcigoe3R5cGV9KSA9PiB7XHJcbiAgICAgIGNvbnN0IGxlbiA9IGtleXMubGVuZ3RoO1xyXG4gICAgICBpZiAobGVuID09PSAxKSB7XHJcbiAgICAgICAgcmV0dXJuIHR5cGUgPT09IGtleXNbMF07XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgaWYgKGtleXNbaV0gPT09IHR5cGUpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuICgocmVzdWx0OiBhbnkpOiBBY3Rpb25zT2JzZXJ2YWJsZTxUPik7XHJcbiAgfVxyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3JlZHV4LW9ic2VydmFibGUuanMiXSwibmFtZXMiOlsiY29tYmluZUVwaWNzIiwiZXBpY3MiLCJhY3Rpb25zIiwic3RvcmUiLCJleHRyYSIsInN0cmVhbXMiLCJtYXAiLCJlcGljIiwiT2JzZXJ2YWJsZSIsIm1lcmdlIiwiY3JlYXRlRXBpY01pZGRsZXdhcmUiLCJyb290RXBpYyIsIlN1YmplY3QiLCJhY3Rpb25zT2JzIiwiQWN0aW9uc09ic2VydmFibGUiLCJuZXh0Iiwic3Vic2NyaWJlIiwiZGlzcGF0Y2giLCJhY3Rpb24iLCJyZXN1bHQiLCJjb25zdHJ1Y3RvciIsImFjdGlvbnNTdWJqZWN0Iiwib3BlcmF0b3IiLCJzb3VyY2UiLCJsaWZ0Iiwib2JzZXJ2YWJsZSIsIm9mVHlwZSIsImtleXMiLCJmaWx0ZXIiLCJ0eXBlIiwibGVuIiwibGVuZ3RoIiwiaSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBcUNBOztBQXJDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBc0JPLFNBQVNBLFlBQVQsQ0FDTCxHQUFHQyxLQURFLEVBRVU7QUFDZixTQUFPLENBQUNDLE9BQUQsRUFBZ0NDLEtBQWhDLEVBQW9EQyxLQUFwRCxLQUFpRTtBQUN0RSxVQUFNQyxPQUE2QixHQUFHSixLQUFLLENBQUNLLEdBQU4sQ0FBVUMsSUFBSSxJQUNsREEsSUFBSSxDQUFDTCxPQUFELEVBQVVDLEtBQVYsRUFBaUJDLEtBQWpCLENBRGdDLENBQXRDO0FBR0EsV0FBT0ksNkJBQVdDLEtBQVgsQ0FBaUIsR0FBR0osT0FBcEIsQ0FBUDtBQUNELEdBTEQ7QUFNRDs7QUFFTSxTQUFTSyxvQkFBVCxDQUNMQyxRQURLLEVBRUw7QUFDQSxRQUFNVCxPQUFPLEdBQUcsSUFBSVUseUJBQUosRUFBaEI7QUFDQSxRQUFNQyxVQUFVLEdBQUcsSUFBSUMsaUJBQUosQ0FBc0JaLE9BQXRCLENBQW5CO0FBRUEsU0FBUUMsS0FBRCxJQUF5QlksSUFBRCxJQUFtQjtBQUNoRCxRQUFJSixRQUFRLElBQUksSUFBaEIsRUFBc0I7QUFDcEI7QUFDQUEsTUFBQUEsUUFBUSxDQUFDRSxVQUFELEVBQWFWLEtBQWIsQ0FBUixDQUE0QmEsU0FBNUIsQ0FBc0NiLEtBQUssQ0FBQ2MsUUFBNUM7QUFDRDs7QUFDRCxXQUFRQyxNQUFELElBQWU7QUFDcEIsWUFBTUMsTUFBTSxHQUFHSixJQUFJLENBQUNHLE1BQUQsQ0FBbkI7QUFDQWhCLE1BQUFBLE9BQU8sQ0FBQ2EsSUFBUixDQUFhRyxNQUFiO0FBQ0EsYUFBT0MsTUFBUDtBQUNELEtBSkQ7QUFLRCxHQVZEO0FBV0Q7O0FBRU0sTUFBTUwsaUJBQU4sU0FBMkNOLDRCQUEzQyxDQUF5RDtBQUc5RFksRUFBQUEsV0FBVyxDQUFDQyxjQUFELEVBQWtDO0FBQzNDO0FBRDJDLFNBRjdDQyxRQUU2QztBQUUzQyxTQUFLQyxNQUFMLEdBQWNGLGNBQWQ7QUFDRDs7QUFFREcsRUFBQUEsSUFBSSxDQUFDRixRQUFELEVBQStCO0FBQ2pDLFVBQU1HLFVBQVUsR0FBRyxJQUFJWCxpQkFBSixDQUFzQixJQUF0QixDQUFuQjtBQUNBVyxJQUFBQSxVQUFVLENBQUNILFFBQVgsR0FBc0JBLFFBQXRCO0FBQ0EsV0FBT0csVUFBUDtBQUNEOztBQUVEQyxFQUFBQSxNQUFNLENBQUMsR0FBR0MsSUFBSixFQUE0QztBQUNoRCxVQUFNUixNQUFNLEdBQUcsS0FBS1MsTUFBTCxDQUFZLENBQUM7QUFBQ0MsTUFBQUE7QUFBRCxLQUFELEtBQVk7QUFDckMsWUFBTUMsR0FBRyxHQUFHSCxJQUFJLENBQUNJLE1BQWpCOztBQUNBLFVBQUlELEdBQUcsS0FBSyxDQUFaLEVBQWU7QUFDYixlQUFPRCxJQUFJLEtBQUtGLElBQUksQ0FBQyxDQUFELENBQXBCO0FBQ0QsT0FGRCxNQUVPO0FBQ0wsYUFBSyxJQUFJSyxDQUFDLEdBQUcsQ0FBYixFQUFnQkEsQ0FBQyxHQUFHRixHQUFwQixFQUF5QkUsQ0FBQyxFQUExQixFQUE4QjtBQUM1QixjQUFJTCxJQUFJLENBQUNLLENBQUQsQ0FBSixLQUFZSCxJQUFoQixFQUFzQjtBQUNwQixtQkFBTyxJQUFQO0FBQ0Q7QUFDRjtBQUNGOztBQUNELGFBQU8sS0FBUDtBQUNELEtBWmMsQ0FBZjtBQWFBLFdBQVNWLE1BQVQ7QUFDRDs7QUE3QjZEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuLy8gRGVyaXZlZCBmcm9tIDxodHRwczovL2dpdGh1Yi5jb20vcmVkdXgtb2JzZXJ2YWJsZS9yZWR1eC1vYnNlcnZhYmxlLz4gYmVjYXVzZSB0aGVpciB2ZXJzaW9uXHJcbi8vIGltcG9ydHMgYW4gUnggb3BlcmF0b3IgbW9kdWxlIGFuZCB3ZSB1c2UgYSBidW5kbGUuIE9yaWdpbmFsIGxpY2Vuc2UgZm9sbG93czpcclxuLy9cclxuLy8gVGhlIE1JVCBMaWNlbnNlIChNSVQpXHJcbi8vXHJcbi8vIENvcHlyaWdodCAoYykgMjAxNiBCZW4gTGVzaFxyXG4vL1xyXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XHJcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcclxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xyXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXHJcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xyXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxyXG4vL1xyXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpbiBhbGxcclxuLy8gY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cclxuLy9cclxuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxyXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcclxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXHJcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcclxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcclxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTiBUSEVcclxuLy8gU09GVFdBUkUuXHJcblxyXG5pbXBvcnQge09ic2VydmFibGUsIFN1YmplY3R9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG4vLyBUaGlzIHNob3VsZCBiZSB7IHR5cGU6IHJlYWRvbmx5IHN0cmluZyB9IHdoZW4gd2UgZ2V0IHJlYWRvbmx5IHByb3BzLiBCZWNhdXNlIHRoaXMgaXMgdXNlZCB3aXRoXHJcbi8vIGRpc2pvaW50IHVuaW9ucyB3ZSBjYW4ndCB1c2UgYHN0cmluZ2AgaGVyZSBkdWUgdG8gbXV0YXRpb24gY29uY2VybnMuIEZsb3cgZG9lc24ndCBrbm93IHRoYXQgd2VcclxuLy8gYXJlbid0IGdvaW5nIHRvIG11dGF0ZSB0aGUgb2JqZWN0cyB3aXRoIGEgcmFuZG9tIHN0cmluZyB2YWx1ZSBzbyBpdCBjYW4ndCBhbGxvdyB1cyB0byBwYXNzIGFcclxuLy8gc3BlY2lmaWMgYWN0aW9uIHR5cGUgaW50byBzb21ldGhpbmcgb2YgdHlwZSB7IHR5cGU6IHN0cmluZyB9XHJcbnR5cGUgQWN0aW9uID0ge3R5cGU6IGFueX07XHJcbnR5cGUgU3RvcmU8VDogQWN0aW9uLCBVPiA9IHtcclxuICBkaXNwYXRjaChhY3Rpb246IFQpOiB2b2lkLFxyXG4gIGdldFN0YXRlKCk6IFUsXHJcbiAgc3Vic2NyaWJlKGxpc3RlbmVyOiAoKSA9PiB2b2lkKTogKCkgPT4gdm9pZCxcclxuICByZXBsYWNlUmVkdWNlcihyZWR1Y2VyOiAoKSA9PiBtaXhlZCk6IHZvaWQsXHJcbn07XHJcbnR5cGUgTmV4dDxUOiBBY3Rpb24+ID0gKGFjdGlvbjogVCkgPT4gVDtcclxuZXhwb3J0IHR5cGUgRXBpYzxUOiBBY3Rpb24sIFUsIEU+ID0gKFxyXG4gIGFjdGlvbnM6IEFjdGlvbnNPYnNlcnZhYmxlPFQ+LFxyXG4gIHN0b3JlOiBTdG9yZTxULCBVPixcclxuICBleHRyYTogRSxcclxuKSA9PiBPYnNlcnZhYmxlPFQ+O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbWJpbmVFcGljczxUOiBBY3Rpb24sIFUsIEU+KFxyXG4gIC4uLmVwaWNzOiBBcnJheTxFcGljPFQsIFUsIEU+PlxyXG4pOiBFcGljPFQsIFUsIEU+IHtcclxuICByZXR1cm4gKGFjdGlvbnM6IEFjdGlvbnNPYnNlcnZhYmxlPFQ+LCBzdG9yZTogU3RvcmU8VCwgVT4sIGV4dHJhOiBFKSA9PiB7XHJcbiAgICBjb25zdCBzdHJlYW1zOiBBcnJheTxPYnNlcnZhYmxlPFQ+PiA9IGVwaWNzLm1hcChlcGljID0+XHJcbiAgICAgIGVwaWMoYWN0aW9ucywgc3RvcmUsIGV4dHJhKSxcclxuICAgICk7XHJcbiAgICByZXR1cm4gT2JzZXJ2YWJsZS5tZXJnZSguLi5zdHJlYW1zKTtcclxuICB9O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlRXBpY01pZGRsZXdhcmU8VDogQWN0aW9uLCBVPihcclxuICByb290RXBpYz86IEVwaWM8VCwgVSwgdm9pZD4sXHJcbikge1xyXG4gIGNvbnN0IGFjdGlvbnMgPSBuZXcgU3ViamVjdCgpO1xyXG4gIGNvbnN0IGFjdGlvbnNPYnMgPSBuZXcgQWN0aW9uc09ic2VydmFibGUoYWN0aW9ucyk7XHJcblxyXG4gIHJldHVybiAoc3RvcmU6IFN0b3JlPFQsIFU+KSA9PiAobmV4dDogTmV4dDxUPikgPT4ge1xyXG4gICAgaWYgKHJvb3RFcGljICE9IG51bGwpIHtcclxuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG51Y2xpZGUtaW50ZXJuYWwvdW51c2VkLXN1YnNjcmlwdGlvblxyXG4gICAgICByb290RXBpYyhhY3Rpb25zT2JzLCBzdG9yZSkuc3Vic2NyaWJlKHN0b3JlLmRpc3BhdGNoKTtcclxuICAgIH1cclxuICAgIHJldHVybiAoYWN0aW9uOiBUKSA9PiB7XHJcbiAgICAgIGNvbnN0IHJlc3VsdCA9IG5leHQoYWN0aW9uKTtcclxuICAgICAgYWN0aW9ucy5uZXh0KGFjdGlvbik7XHJcbiAgICAgIHJldHVybiByZXN1bHQ7XHJcbiAgICB9O1xyXG4gIH07XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25zT2JzZXJ2YWJsZTxUOiBBY3Rpb24+IGV4dGVuZHMgT2JzZXJ2YWJsZTxUPiB7XHJcbiAgb3BlcmF0b3I6IGFueTtcclxuXHJcbiAgY29uc3RydWN0b3IoYWN0aW9uc1N1YmplY3Q6IE9ic2VydmFibGU8YW55Pikge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMuc291cmNlID0gYWN0aW9uc1N1YmplY3Q7XHJcbiAgfVxyXG5cclxuICBsaWZ0KG9wZXJhdG9yOiBhbnkpOiBPYnNlcnZhYmxlPFQ+IHtcclxuICAgIGNvbnN0IG9ic2VydmFibGUgPSBuZXcgQWN0aW9uc09ic2VydmFibGUodGhpcyk7XHJcbiAgICBvYnNlcnZhYmxlLm9wZXJhdG9yID0gb3BlcmF0b3I7XHJcbiAgICByZXR1cm4gb2JzZXJ2YWJsZTtcclxuICB9XHJcblxyXG4gIG9mVHlwZSguLi5rZXlzOiBBcnJheTxhbnk+KTogQWN0aW9uc09ic2VydmFibGU8VD4ge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy5maWx0ZXIoKHt0eXBlfSkgPT4ge1xyXG4gICAgICBjb25zdCBsZW4gPSBrZXlzLmxlbmd0aDtcclxuICAgICAgaWYgKGxlbiA9PT0gMSkge1xyXG4gICAgICAgIHJldHVybiB0eXBlID09PSBrZXlzWzBdO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgIGlmIChrZXlzW2ldID09PSB0eXBlKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9KTtcclxuICAgIHJldHVybiAoKHJlc3VsdDogYW55KTogQWN0aW9uc09ic2VydmFibGU8VD4pO1xyXG4gIH1cclxufVxyXG4iXX0= |
@@ -67,2 +67,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3J1bnRpbWUtaW5mby5qcyJdLCJuYW1lcyI6WyJjYWNoZWRJbmZvcm1hdGlvbiIsImdldENhY2hlYWJsZVJ1bnRpbWVJbmZvcm1hdGlvbiIsInNlc3Npb25JZCIsInV1aWQiLCJ2NCIsInVzZXIiLCJvcyIsInVzZXJJbmZvIiwidXNlcm5hbWUiLCJvc1R5cGUiLCJ0aW1lc3RhbXAiLCJpc0NsaWVudCIsImlzRGV2ZWxvcG1lbnQiLCJfX0RFVl9fIiwiYXRvbVZlcnNpb24iLCJhdG9tIiwibnVjbGlkZVZlcnNpb24iLCJpbnN0YWxsZXJQYWNrYWdlVmVyc2lvbiIsInVwdGltZSIsInNlcnZlclZlcnNpb24iLCJnZXRSdW50aW1lSW5mb3JtYXRpb24iLCJydW50aW1lSW5mb3JtYXRpb24iLCJEYXRlIiwibm93IiwiTWF0aCIsImZsb29yIiwicHJvY2VzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQVlBOztBQU1BOztBQUNBOztBQUNBOzs7O0FBcEJBOzs7Ozs7Ozs7OztBQW9DQSxJQUFJQSxpQkFBaUIsR0FBRyxJQUF4Qjs7QUFFQSxTQUFTQyw4QkFBVCxHQUE4RDtBQUM1RDtBQUNBLE1BQUlELGlCQUFpQixLQUFLLElBQTFCLEVBQWdDO0FBQzlCLFdBQU9BLGlCQUFQO0FBQ0Q7O0FBRURBLEVBQUFBLGlCQUFpQixHQUFHO0FBQ2xCRSxJQUFBQSxTQUFTLEVBQUVDLGNBQUtDLEVBQUwsRUFETztBQUVsQkMsSUFBQUEsSUFBSSxFQUFFQyxZQUFHQyxRQUFILEdBQWNDLFFBRkY7QUFHbEJDLElBQUFBLE1BQU0sRUFBRSw0QkFIVTtBQUlsQkMsSUFBQUEsU0FBUyxFQUFFLENBSk87QUFLbEJDLElBQUFBLFFBQVEsRUFBRSxDQUFDLG9DQUxPO0FBTWxCQyxJQUFBQSxhQUFhLEVBQUVDLFlBTkc7QUFPbEJDLElBQUFBLFdBQVcsRUFBRSxPQUFPQyxJQUFQLEtBQWdCLFFBQWhCLEdBQTJCLGlDQUEzQixHQUE4QyxFQVB6QztBQVFsQkMsSUFBQUEsY0FBYyxFQUFFLG9DQVJFO0FBU2xCQyxJQUFBQSx1QkFBdUIsRUFBRSxDQVRQO0FBVWxCQyxJQUFBQSxNQUFNLEVBQUUsQ0FWVTtBQVdsQjtBQUNBQyxJQUFBQSxhQUFhLEVBQUU7QUFaRyxHQUFwQjtBQWVBLFNBQU9uQixpQkFBUDtBQUNEOztBQUVNLFNBQVNvQixxQkFBVCxHQUFxRDtBQUMxRCxRQUFNQyxrQkFBa0IsR0FBRyxFQUN6QixHQUFHcEIsOEJBQThCLEVBRFI7QUFFekJTLElBQUFBLFNBQVMsRUFBRVksSUFBSSxDQUFDQyxHQUFMLEVBRmM7QUFHekJMLElBQUFBLE1BQU0sRUFBRU0sSUFBSSxDQUFDQyxLQUFMLENBQVdDLE9BQU8sQ0FBQ1IsTUFBUixLQUFtQixJQUE5QjtBQUhpQixHQUEzQjtBQUtBLFNBQU9HLGtCQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdC1sb2NhbFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHtcclxuICBnZXRPc1R5cGUsXHJcbiAgZ2V0QXRvbVZlcnNpb24sXHJcbiAgZ2V0TnVjbGlkZVZlcnNpb24sXHJcbiAgaXNSdW5uaW5nSW5TZXJ2ZXIsXHJcbn0gZnJvbSAnLi9zeXN0ZW0taW5mbyc7XHJcbmltcG9ydCBvcyBmcm9tICdvcyc7XHJcbmltcG9ydCB1dWlkIGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQge19fREVWX199IGZyb20gJ0BhdG9tLWlkZS1jb21tdW5pdHkvbnVjbGlkZS1ub2RlLXRyYW5zcGlsZXIvbGliL2Vudic7XHJcblxyXG5leHBvcnQgdHlwZSBSdW50aW1lSW5mb3JtYXRpb24gPSB7XHJcbiAgc2Vzc2lvbklkOiBzdHJpbmcsXHJcbiAgdXNlcjogc3RyaW5nLFxyXG4gIG9zVHlwZTogc3RyaW5nLFxyXG4gIHRpbWVzdGFtcDogbnVtYmVyLFxyXG4gIGlzQ2xpZW50OiBib29sZWFuLFxyXG4gIGlzRGV2ZWxvcG1lbnQ6IGJvb2xlYW4sXHJcbiAgYXRvbVZlcnNpb246IHN0cmluZyxcclxuICBudWNsaWRlVmVyc2lvbjogc3RyaW5nLFxyXG4gIGluc3RhbGxlclBhY2thZ2VWZXJzaW9uOiBudW1iZXIsXHJcbiAgc2VydmVyVmVyc2lvbjogbnVtYmVyLFxyXG4gIHVwdGltZTogbnVtYmVyLFxyXG59O1xyXG5cclxubGV0IGNhY2hlZEluZm9ybWF0aW9uID0gbnVsbDtcclxuXHJcbmZ1bmN0aW9uIGdldENhY2hlYWJsZVJ1bnRpbWVJbmZvcm1hdGlvbigpOiBSdW50aW1lSW5mb3JtYXRpb24ge1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBlcWVxZXFcclxuICBpZiAoY2FjaGVkSW5mb3JtYXRpb24gIT09IG51bGwpIHtcclxuICAgIHJldHVybiBjYWNoZWRJbmZvcm1hdGlvbjtcclxuICB9XHJcblxyXG4gIGNhY2hlZEluZm9ybWF0aW9uID0ge1xyXG4gICAgc2Vzc2lvbklkOiB1dWlkLnY0KCksXHJcbiAgICB1c2VyOiBvcy51c2VySW5mbygpLnVzZXJuYW1lLFxyXG4gICAgb3NUeXBlOiBnZXRPc1R5cGUoKSxcclxuICAgIHRpbWVzdGFtcDogMCxcclxuICAgIGlzQ2xpZW50OiAhaXNSdW5uaW5nSW5TZXJ2ZXIoKSxcclxuICAgIGlzRGV2ZWxvcG1lbnQ6IF9fREVWX18sXHJcbiAgICBhdG9tVmVyc2lvbjogdHlwZW9mIGF0b20gPT09ICdvYmplY3QnID8gZ2V0QXRvbVZlcnNpb24oKSA6ICcnLFxyXG4gICAgbnVjbGlkZVZlcnNpb246IGdldE51Y2xpZGVWZXJzaW9uKCksXHJcbiAgICBpbnN0YWxsZXJQYWNrYWdlVmVyc2lvbjogMCxcclxuICAgIHVwdGltZTogMCxcclxuICAgIC8vIFRPRE8gKGNoZW5zaGVuKSBmaWxsIGZvbGxvd2luZyBpbmZvcm1hdGlvbi5cclxuICAgIHNlcnZlclZlcnNpb246IDAsXHJcbiAgfTtcclxuXHJcbiAgcmV0dXJuIGNhY2hlZEluZm9ybWF0aW9uO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0UnVudGltZUluZm9ybWF0aW9uKCk6IFJ1bnRpbWVJbmZvcm1hdGlvbiB7XHJcbiAgY29uc3QgcnVudGltZUluZm9ybWF0aW9uID0ge1xyXG4gICAgLi4uZ2V0Q2FjaGVhYmxlUnVudGltZUluZm9ybWF0aW9uKCksXHJcbiAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXHJcbiAgICB1cHRpbWU6IE1hdGguZmxvb3IocHJvY2Vzcy51cHRpbWUoKSAqIDEwMDApLFxyXG4gIH07XHJcbiAgcmV0dXJuIHJ1bnRpbWVJbmZvcm1hdGlvbjtcclxufVxyXG5cclxuZXhwb3J0IHtfX0RFVl9ffTtcclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3J1bnRpbWUtaW5mby5qcyJdLCJuYW1lcyI6WyJjYWNoZWRJbmZvcm1hdGlvbiIsImdldENhY2hlYWJsZVJ1bnRpbWVJbmZvcm1hdGlvbiIsInNlc3Npb25JZCIsInV1aWQiLCJ2NCIsInVzZXIiLCJvcyIsInVzZXJJbmZvIiwidXNlcm5hbWUiLCJvc1R5cGUiLCJ0aW1lc3RhbXAiLCJpc0NsaWVudCIsImlzRGV2ZWxvcG1lbnQiLCJfX0RFVl9fIiwiYXRvbVZlcnNpb24iLCJhdG9tIiwibnVjbGlkZVZlcnNpb24iLCJpbnN0YWxsZXJQYWNrYWdlVmVyc2lvbiIsInVwdGltZSIsInNlcnZlclZlcnNpb24iLCJnZXRSdW50aW1lSW5mb3JtYXRpb24iLCJydW50aW1lSW5mb3JtYXRpb24iLCJEYXRlIiwibm93IiwiTWF0aCIsImZsb29yIiwicHJvY2VzcyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQVlBOztBQU1BOztBQUNBOztBQUNBOzs7O0FBcEJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUEwQkEsSUFBSUEsaUJBQWlCLEdBQUcsSUFBeEI7O0FBRUEsU0FBU0MsOEJBQVQsR0FBOEQ7QUFDNUQ7QUFDQSxNQUFJRCxpQkFBaUIsS0FBSyxJQUExQixFQUFnQztBQUM5QixXQUFPQSxpQkFBUDtBQUNEOztBQUVEQSxFQUFBQSxpQkFBaUIsR0FBRztBQUNsQkUsSUFBQUEsU0FBUyxFQUFFQyxjQUFLQyxFQUFMLEVBRE87QUFFbEJDLElBQUFBLElBQUksRUFBRUMsWUFBR0MsUUFBSCxHQUFjQyxRQUZGO0FBR2xCQyxJQUFBQSxNQUFNLEVBQUUsNEJBSFU7QUFJbEJDLElBQUFBLFNBQVMsRUFBRSxDQUpPO0FBS2xCQyxJQUFBQSxRQUFRLEVBQUUsQ0FBQyxvQ0FMTztBQU1sQkMsSUFBQUEsYUFBYSxFQUFFQyxZQU5HO0FBT2xCQyxJQUFBQSxXQUFXLEVBQUUsT0FBT0MsSUFBUCxLQUFnQixRQUFoQixHQUEyQixpQ0FBM0IsR0FBOEMsRUFQekM7QUFRbEJDLElBQUFBLGNBQWMsRUFBRSxvQ0FSRTtBQVNsQkMsSUFBQUEsdUJBQXVCLEVBQUUsQ0FUUDtBQVVsQkMsSUFBQUEsTUFBTSxFQUFFLENBVlU7QUFXbEI7QUFDQUMsSUFBQUEsYUFBYSxFQUFFO0FBWkcsR0FBcEI7QUFlQSxTQUFPbkIsaUJBQVA7QUFDRDs7QUFFTSxTQUFTb0IscUJBQVQsR0FBcUQ7QUFDMUQsUUFBTUMsa0JBQWtCLEdBQUcsRUFDekIsR0FBR3BCLDhCQUE4QixFQURSO0FBRXpCUyxJQUFBQSxTQUFTLEVBQUVZLElBQUksQ0FBQ0MsR0FBTCxFQUZjO0FBR3pCTCxJQUFBQSxNQUFNLEVBQUVNLElBQUksQ0FBQ0MsS0FBTCxDQUFXQyxPQUFPLENBQUNSLE1BQVIsS0FBbUIsSUFBOUI7QUFIaUIsR0FBM0I7QUFLQSxTQUFPRyxrQkFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB7XHJcbiAgZ2V0T3NUeXBlLFxyXG4gIGdldEF0b21WZXJzaW9uLFxyXG4gIGdldE51Y2xpZGVWZXJzaW9uLFxyXG4gIGlzUnVubmluZ0luU2VydmVyLFxyXG59IGZyb20gJy4vc3lzdGVtLWluZm8nO1xyXG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xyXG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkJztcclxuaW1wb3J0IHtfX0RFVl9ffSBmcm9tICdAYXRvbS1pZGUtY29tbXVuaXR5L251Y2xpZGUtbm9kZS10cmFuc3BpbGVyL2xpYi9lbnYnO1xyXG5cclxuZXhwb3J0IHR5cGUgUnVudGltZUluZm9ybWF0aW9uID0ge1xyXG4gIHNlc3Npb25JZDogc3RyaW5nLFxyXG4gIHVzZXI6IHN0cmluZyxcclxuICBvc1R5cGU6IHN0cmluZyxcclxuICB0aW1lc3RhbXA6IG51bWJlcixcclxuICBpc0NsaWVudDogYm9vbGVhbixcclxuICBpc0RldmVsb3BtZW50OiBib29sZWFuLFxyXG4gIGF0b21WZXJzaW9uOiBzdHJpbmcsXHJcbiAgbnVjbGlkZVZlcnNpb246IHN0cmluZyxcclxuICBpbnN0YWxsZXJQYWNrYWdlVmVyc2lvbjogbnVtYmVyLFxyXG4gIHNlcnZlclZlcnNpb246IG51bWJlcixcclxuICB1cHRpbWU6IG51bWJlcixcclxufTtcclxuXHJcbmxldCBjYWNoZWRJbmZvcm1hdGlvbiA9IG51bGw7XHJcblxyXG5mdW5jdGlvbiBnZXRDYWNoZWFibGVSdW50aW1lSW5mb3JtYXRpb24oKTogUnVudGltZUluZm9ybWF0aW9uIHtcclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZXFlcWVxXHJcbiAgaWYgKGNhY2hlZEluZm9ybWF0aW9uICE9PSBudWxsKSB7XHJcbiAgICByZXR1cm4gY2FjaGVkSW5mb3JtYXRpb247XHJcbiAgfVxyXG5cclxuICBjYWNoZWRJbmZvcm1hdGlvbiA9IHtcclxuICAgIHNlc3Npb25JZDogdXVpZC52NCgpLFxyXG4gICAgdXNlcjogb3MudXNlckluZm8oKS51c2VybmFtZSxcclxuICAgIG9zVHlwZTogZ2V0T3NUeXBlKCksXHJcbiAgICB0aW1lc3RhbXA6IDAsXHJcbiAgICBpc0NsaWVudDogIWlzUnVubmluZ0luU2VydmVyKCksXHJcbiAgICBpc0RldmVsb3BtZW50OiBfX0RFVl9fLFxyXG4gICAgYXRvbVZlcnNpb246IHR5cGVvZiBhdG9tID09PSAnb2JqZWN0JyA/IGdldEF0b21WZXJzaW9uKCkgOiAnJyxcclxuICAgIG51Y2xpZGVWZXJzaW9uOiBnZXROdWNsaWRlVmVyc2lvbigpLFxyXG4gICAgaW5zdGFsbGVyUGFja2FnZVZlcnNpb246IDAsXHJcbiAgICB1cHRpbWU6IDAsXHJcbiAgICAvLyBUT0RPIChjaGVuc2hlbikgZmlsbCBmb2xsb3dpbmcgaW5mb3JtYXRpb24uXHJcbiAgICBzZXJ2ZXJWZXJzaW9uOiAwLFxyXG4gIH07XHJcblxyXG4gIHJldHVybiBjYWNoZWRJbmZvcm1hdGlvbjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFJ1bnRpbWVJbmZvcm1hdGlvbigpOiBSdW50aW1lSW5mb3JtYXRpb24ge1xyXG4gIGNvbnN0IHJ1bnRpbWVJbmZvcm1hdGlvbiA9IHtcclxuICAgIC4uLmdldENhY2hlYWJsZVJ1bnRpbWVJbmZvcm1hdGlvbigpLFxyXG4gICAgdGltZXN0YW1wOiBEYXRlLm5vdygpLFxyXG4gICAgdXB0aW1lOiBNYXRoLmZsb29yKHByb2Nlc3MudXB0aW1lKCkgKiAxMDAwKSxcclxuICB9O1xyXG4gIHJldHVybiBydW50aW1lSW5mb3JtYXRpb247XHJcbn1cclxuXHJcbmV4cG9ydCB7X19ERVZfX307XHJcbiJdfQ== |
@@ -45,2 +45,2 @@ "use strict"; | ||
exports.default = SafeStreamMessageReader; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1NhZmVTdHJlYW1NZXNzYWdlUmVhZGVyLmpzIl0sIm5hbWVzIjpbIlNhZmVTdHJlYW1NZXNzYWdlUmVhZGVyIiwiU3RyZWFtTWVzc2FnZVJlYWRlciIsIm9uRGF0YSIsImRhdGEiLCJlcnIiLCJmaXJlRXJyb3IiLCJkaXNwb3NlIiwicmVhZGFibGUiLCJyZW1vdmVBbGxMaXN0ZW5lcnMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFaQTs7Ozs7Ozs7Ozs7O0FBY0E7Ozs7Ozs7QUFPZSxNQUFNQSx1QkFBTixTQUFzQ0Msa0NBQXRDLENBQTBEO0FBQ3ZFQyxFQUFBQSxNQUFNLENBQUNDLElBQUQsRUFBd0I7QUFDNUIsUUFBSTtBQUNGLFlBQU1ELE1BQU4sQ0FBYUMsSUFBYjtBQUNELEtBRkQsQ0FFRSxPQUFPQyxHQUFQLEVBQVk7QUFDWixXQUFLQyxTQUFMLENBQWVELEdBQWYsRUFEWSxDQUVaO0FBQ0E7O0FBQ0EsV0FBS0UsT0FBTDtBQUNBLFdBQUtDLFFBQUwsQ0FBY0Msa0JBQWQ7QUFDRDtBQUNGOztBQVhzRSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge1N0cmVhbU1lc3NhZ2VSZWFkZXJ9IGZyb20gJ3ZzY29kZS1qc29ucnBjJztcclxuXHJcbi8qKlxyXG4gKiB2c2NvZGUtanNvbnJwYydzIFN0cmVhbU1lc3NhZ2VSZWFkZXIgaGFzIGEgZmF0YWwgZmxhdyBvZiB0aHJvd2luZyBleGNlcHRpb25zIVxyXG4gKiBJdCdzIGhhcmQgdG8gY2F0Y2ggYXN5bmNocm9ub3VzIGV4Y2VwdGlvbnMsIGFuZCBpdCBjcmFzaGVzIHRoZSBOdWNsaWRlIHNlcnZlci5cclxuICogVW50aWwgdGhpcyBpcyBhZGRyZXNzZWQsIHRoaXMgY2FwdHVyZXMgZXhjZXB0aW9ucyBhbmQgZW1pdHMgZXJyb3JzIGluc3RlYWQuXHJcbiAqXHJcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9NaWNyb3NvZnQvdnNjb2RlLWxhbmd1YWdlc2VydmVyLW5vZGUvaXNzdWVzLzI3MFxyXG4gKi9cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2FmZVN0cmVhbU1lc3NhZ2VSZWFkZXIgZXh0ZW5kcyBTdHJlYW1NZXNzYWdlUmVhZGVyIHtcclxuICBvbkRhdGEoZGF0YTogQnVmZmVyIHwgc3RyaW5nKSB7XHJcbiAgICB0cnkge1xyXG4gICAgICBzdXBlci5vbkRhdGEoZGF0YSk7XHJcbiAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgdGhpcy5maXJlRXJyb3IoZXJyKTtcclxuICAgICAgLy8gU3RvcCBoYW5kbGluZyBldmVudHMsIGFzIHN0cmVhbSBlcnJvcnMgYXJlIHVucmVjb3ZlcmFibGUuXHJcbiAgICAgIC8vIFRoZSBvd25lciBvZiB0aGUgcmVhZGVyIHNob3VsZCB0ZWFyIGl0c2VsZiBkb3duIGFzIHdlbGwuXHJcbiAgICAgIHRoaXMuZGlzcG9zZSgpO1xyXG4gICAgICB0aGlzLnJlYWRhYmxlLnJlbW92ZUFsbExpc3RlbmVycygpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1NhZmVTdHJlYW1NZXNzYWdlUmVhZGVyLmpzIl0sIm5hbWVzIjpbIlNhZmVTdHJlYW1NZXNzYWdlUmVhZGVyIiwiU3RyZWFtTWVzc2FnZVJlYWRlciIsIm9uRGF0YSIsImRhdGEiLCJlcnIiLCJmaXJlRXJyb3IiLCJkaXNwb3NlIiwicmVhZGFibGUiLCJyZW1vdmVBbGxMaXN0ZW5lcnMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7QUFaQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ2UsTUFBTUEsdUJBQU4sU0FBc0NDLGtDQUF0QyxDQUEwRDtBQUN2RUMsRUFBQUEsTUFBTSxDQUFDQyxJQUFELEVBQXdCO0FBQzVCLFFBQUk7QUFDRixZQUFNRCxNQUFOLENBQWFDLElBQWI7QUFDRCxLQUZELENBRUUsT0FBT0MsR0FBUCxFQUFZO0FBQ1osV0FBS0MsU0FBTCxDQUFlRCxHQUFmLEVBRFksQ0FFWjtBQUNBOztBQUNBLFdBQUtFLE9BQUw7QUFDQSxXQUFLQyxRQUFMLENBQWNDLGtCQUFkO0FBQ0Q7QUFDRjs7QUFYc0UiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHtTdHJlYW1NZXNzYWdlUmVhZGVyfSBmcm9tICd2c2NvZGUtanNvbnJwYyc7XHJcblxyXG4vKipcclxuICogdnNjb2RlLWpzb25ycGMncyBTdHJlYW1NZXNzYWdlUmVhZGVyIGhhcyBhIGZhdGFsIGZsYXcgb2YgdGhyb3dpbmcgZXhjZXB0aW9ucyFcclxuICogSXQncyBoYXJkIHRvIGNhdGNoIGFzeW5jaHJvbm91cyBleGNlcHRpb25zLCBhbmQgaXQgY3Jhc2hlcyB0aGUgTnVjbGlkZSBzZXJ2ZXIuXHJcbiAqIFVudGlsIHRoaXMgaXMgYWRkcmVzc2VkLCB0aGlzIGNhcHR1cmVzIGV4Y2VwdGlvbnMgYW5kIGVtaXRzIGVycm9ycyBpbnN0ZWFkLlxyXG4gKlxyXG4gKiBodHRwczovL2dpdGh1Yi5jb20vTWljcm9zb2Z0L3ZzY29kZS1sYW5ndWFnZXNlcnZlci1ub2RlL2lzc3Vlcy8yNzBcclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNhZmVTdHJlYW1NZXNzYWdlUmVhZGVyIGV4dGVuZHMgU3RyZWFtTWVzc2FnZVJlYWRlciB7XHJcbiAgb25EYXRhKGRhdGE6IEJ1ZmZlciB8IHN0cmluZykge1xyXG4gICAgdHJ5IHtcclxuICAgICAgc3VwZXIub25EYXRhKGRhdGEpO1xyXG4gICAgfSBjYXRjaCAoZXJyKSB7XHJcbiAgICAgIHRoaXMuZmlyZUVycm9yKGVycik7XHJcbiAgICAgIC8vIFN0b3AgaGFuZGxpbmcgZXZlbnRzLCBhcyBzdHJlYW0gZXJyb3JzIGFyZSB1bnJlY292ZXJhYmxlLlxyXG4gICAgICAvLyBUaGUgb3duZXIgb2YgdGhlIHJlYWRlciBzaG91bGQgdGVhciBpdHNlbGYgZG93biBhcyB3ZWxsLlxyXG4gICAgICB0aGlzLmRpc3Bvc2UoKTtcclxuICAgICAgdGhpcy5yZWFkYWJsZS5yZW1vdmVBbGxMaXN0ZW5lcnMoKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19 |
@@ -53,3 +53,3 @@ "use strict"; | ||
if (options === null || options === void 0 ? void 0 : options.condenseWhitespaces) { | ||
if (options !== null && options !== void 0 && options.condenseWhitespaces) { | ||
withoutTags = withoutTags.replace(/(?:\s*\n\s*)+/g, '\n').replace(/[ \t]+/g, ' '); | ||
@@ -60,2 +60,2 @@ } | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Nhbml0aXplSHRtbC5qcyJdLCJuYW1lcyI6WyJkb21QdXJpZnkiLCJhZGRIb29rIiwibm9kZSIsIm5vZGVOYW1lIiwicGFyZW50IiwicGFyZW50Tm9kZSIsImluc2VydEJlZm9yZSIsImRvY3VtZW50IiwiY3JlYXRlVGV4dE5vZGUiLCJ0ZXh0Q29udGVudCIsInNhbml0aXplSHRtbCIsIm1lc3NhZ2UiLCJvcHRpb25zIiwid2l0aG91dFRhZ3MiLCJzYW5pdGl6ZSIsIkFMTE9XRURfVEFHUyIsImNvbmRlbnNlV2hpdGVzcGFjZXMiLCJyZXBsYWNlIiwidHJpbSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOzs7O0FBWkE7Ozs7Ozs7Ozs7O0FBWW1DO0FBRW5DQSxtQkFBVUMsT0FBVixDQUFrQix3QkFBbEIsRUFBNkNDLElBQUQsSUFBaUI7QUFDM0Q7QUFDQSxNQUFJQSxJQUFJLElBQUlBLElBQUksQ0FBQ0MsUUFBTCxLQUFrQixJQUE5QixFQUFvQztBQUNsQyxVQUFNQyxNQUFNLEdBQUdGLElBQUksQ0FBQ0csVUFBcEI7O0FBQ0EsUUFBSUQsTUFBTSxJQUFJLElBQWQsRUFBb0I7QUFDbEJBLE1BQUFBLE1BQU0sQ0FBQ0UsWUFBUCxDQUFvQkMsUUFBUSxDQUFDQyxjQUFULENBQXdCLElBQXhCLENBQXBCLEVBQW1ETixJQUFuRDtBQUNEO0FBQ0Y7O0FBQ0QsTUFBSUEsSUFBSSxJQUFJQSxJQUFJLENBQUNDLFFBQUwsS0FBa0IsR0FBOUIsRUFBbUM7QUFDakNELElBQUFBLElBQUksQ0FBQ08sV0FBTCxHQUFtQixPQUFPUCxJQUFJLENBQUNPLFdBQS9CO0FBQ0Q7O0FBQ0QsU0FBT1AsSUFBUDtBQUNELENBWkQ7QUFjQTs7Ozs7O0FBSWUsU0FBU1EsWUFBVCxDQUNiQyxPQURhLEVBRWJDLE9BRmEsRUFLTDtBQUNSO0FBQ0EsTUFBSUMsV0FBbUIsR0FBR2IsbUJBQVVjLFFBQVYsQ0FBbUJILE9BQW5CLEVBQTRCO0FBQUNJLElBQUFBLFlBQVksRUFBRTtBQUFmLEdBQTVCLENBQTFCLENBRlEsQ0FJUjs7O0FBQ0EsTUFBSUgsT0FBSixhQUFJQSxPQUFKLHVCQUFJQSxPQUFPLENBQUVJLG1CQUFiLEVBQWtDO0FBQ2hDSCxJQUFBQSxXQUFXLEdBQUdBLFdBQVcsQ0FDdEJJLE9BRFcsQ0FDSCxnQkFERyxFQUNlLElBRGYsRUFFWEEsT0FGVyxDQUVILFNBRkcsRUFFUSxHQUZSLENBQWQ7QUFHRDs7QUFFRCxTQUFPSixXQUFXLENBQUNLLElBQVosRUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBkb21QdXJpZnkgZnJvbSAnZG9tcHVyaWZ5JzsgLy8gZmxvd2xpbnQtbGluZSB1bnR5cGVkLWltcG9ydDpvZmZcclxuXHJcbmRvbVB1cmlmeS5hZGRIb29rKCdiZWZvcmVTYW5pdGl6ZUVsZW1lbnRzJywgKG5vZGU6ID9Ob2RlKSA9PiB7XHJcbiAgLy8gQWRkIG5ld2xpbmVzIHdoZXJlIHdlIHNlZSBgPHA+YCBhbmQgYDxiciAvPmAgdGFncy5cclxuICBpZiAobm9kZSAmJiBub2RlLm5vZGVOYW1lID09PSAnQlInKSB7XHJcbiAgICBjb25zdCBwYXJlbnQgPSBub2RlLnBhcmVudE5vZGU7XHJcbiAgICBpZiAocGFyZW50ICE9IG51bGwpIHtcclxuICAgICAgcGFyZW50Lmluc2VydEJlZm9yZShkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnXFxuJyksIG5vZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBpZiAobm9kZSAmJiBub2RlLm5vZGVOYW1lID09PSAnUCcpIHtcclxuICAgIG5vZGUudGV4dENvbnRlbnQgPSAnXFxuJyArIG5vZGUudGV4dENvbnRlbnQ7XHJcbiAgfVxyXG4gIHJldHVybiBub2RlO1xyXG59KTtcclxuXHJcbi8qKlxyXG4gKiBTYW5pdGl6ZSBhIG1lc3NhZ2UgZm9yIGRpc3BsYXkgaW4gYSBub3RpZmljYXRpb24uIFRoaXMgcmVtb3ZlcyBIVE1MIGJ1dCBhbHNvIHRyaWVzIHRvIGJlIHNtYXJ0XHJcbiAqIGFib3V0IHdoaXRlc3BhY2UuXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBzYW5pdGl6ZUh0bWwoXHJcbiAgbWVzc2FnZTogc3RyaW5nLFxyXG4gIG9wdGlvbnM/OiB7XHJcbiAgICBjb25kZW5zZVdoaXRlc3BhY2VzPzogYm9vbGVhbixcclxuICB9LFxyXG4pOiBzdHJpbmcge1xyXG4gIC8vIFJlbW92ZSB0aGUgSFRNTC5cclxuICBsZXQgd2l0aG91dFRhZ3M6IHN0cmluZyA9IGRvbVB1cmlmeS5zYW5pdGl6ZShtZXNzYWdlLCB7QUxMT1dFRF9UQUdTOiBbXX0pO1xyXG5cclxuICAvLyBDb21wcmVzcyB0aGUgd2hpdGVzcGFjZS5cclxuICBpZiAob3B0aW9ucz8uY29uZGVuc2VXaGl0ZXNwYWNlcykge1xyXG4gICAgd2l0aG91dFRhZ3MgPSB3aXRob3V0VGFnc1xyXG4gICAgICAucmVwbGFjZSgvKD86XFxzKlxcblxccyopKy9nLCAnXFxuJylcclxuICAgICAgLnJlcGxhY2UoL1sgXFx0XSsvZywgJyAnKTtcclxuICB9XHJcblxyXG4gIHJldHVybiB3aXRob3V0VGFncy50cmltKCk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Nhbml0aXplSHRtbC5qcyJdLCJuYW1lcyI6WyJkb21QdXJpZnkiLCJhZGRIb29rIiwibm9kZSIsIm5vZGVOYW1lIiwicGFyZW50IiwicGFyZW50Tm9kZSIsImluc2VydEJlZm9yZSIsImRvY3VtZW50IiwiY3JlYXRlVGV4dE5vZGUiLCJ0ZXh0Q29udGVudCIsInNhbml0aXplSHRtbCIsIm1lc3NhZ2UiLCJvcHRpb25zIiwid2l0aG91dFRhZ3MiLCJzYW5pdGl6ZSIsIkFMTE9XRURfVEFHUyIsImNvbmRlbnNlV2hpdGVzcGFjZXMiLCJyZXBsYWNlIiwidHJpbSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVlBOzs7O0FBWkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUVtQztBQUVuQ0EsbUJBQVVDLE9BQVYsQ0FBa0Isd0JBQWxCLEVBQTZDQyxJQUFELElBQWlCO0FBQzNEO0FBQ0EsTUFBSUEsSUFBSSxJQUFJQSxJQUFJLENBQUNDLFFBQUwsS0FBa0IsSUFBOUIsRUFBb0M7QUFDbEMsVUFBTUMsTUFBTSxHQUFHRixJQUFJLENBQUNHLFVBQXBCOztBQUNBLFFBQUlELE1BQU0sSUFBSSxJQUFkLEVBQW9CO0FBQ2xCQSxNQUFBQSxNQUFNLENBQUNFLFlBQVAsQ0FBb0JDLFFBQVEsQ0FBQ0MsY0FBVCxDQUF3QixJQUF4QixDQUFwQixFQUFtRE4sSUFBbkQ7QUFDRDtBQUNGOztBQUNELE1BQUlBLElBQUksSUFBSUEsSUFBSSxDQUFDQyxRQUFMLEtBQWtCLEdBQTlCLEVBQW1DO0FBQ2pDRCxJQUFBQSxJQUFJLENBQUNPLFdBQUwsR0FBbUIsT0FBT1AsSUFBSSxDQUFDTyxXQUEvQjtBQUNEOztBQUNELFNBQU9QLElBQVA7QUFDRCxDQVpEO0FBY0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNlLFNBQVNRLFlBQVQsQ0FDYkMsT0FEYSxFQUViQyxPQUZhLEVBS0w7QUFDUjtBQUNBLE1BQUlDLFdBQW1CLEdBQUdiLG1CQUFVYyxRQUFWLENBQW1CSCxPQUFuQixFQUE0QjtBQUFDSSxJQUFBQSxZQUFZLEVBQUU7QUFBZixHQUE1QixDQUExQixDQUZRLENBSVI7OztBQUNBLE1BQUlILE9BQUosYUFBSUEsT0FBSixlQUFJQSxPQUFPLENBQUVJLG1CQUFiLEVBQWtDO0FBQ2hDSCxJQUFBQSxXQUFXLEdBQUdBLFdBQVcsQ0FDdEJJLE9BRFcsQ0FDSCxnQkFERyxFQUNlLElBRGYsRUFFWEEsT0FGVyxDQUVILFNBRkcsRUFFUSxHQUZSLENBQWQ7QUFHRDs7QUFFRCxTQUFPSixXQUFXLENBQUNLLElBQVosRUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBkb21QdXJpZnkgZnJvbSAnZG9tcHVyaWZ5JzsgLy8gZmxvd2xpbnQtbGluZSB1bnR5cGVkLWltcG9ydDpvZmZcclxuXHJcbmRvbVB1cmlmeS5hZGRIb29rKCdiZWZvcmVTYW5pdGl6ZUVsZW1lbnRzJywgKG5vZGU6ID9Ob2RlKSA9PiB7XHJcbiAgLy8gQWRkIG5ld2xpbmVzIHdoZXJlIHdlIHNlZSBgPHA+YCBhbmQgYDxiciAvPmAgdGFncy5cclxuICBpZiAobm9kZSAmJiBub2RlLm5vZGVOYW1lID09PSAnQlInKSB7XHJcbiAgICBjb25zdCBwYXJlbnQgPSBub2RlLnBhcmVudE5vZGU7XHJcbiAgICBpZiAocGFyZW50ICE9IG51bGwpIHtcclxuICAgICAgcGFyZW50Lmluc2VydEJlZm9yZShkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZSgnXFxuJyksIG5vZGUpO1xyXG4gICAgfVxyXG4gIH1cclxuICBpZiAobm9kZSAmJiBub2RlLm5vZGVOYW1lID09PSAnUCcpIHtcclxuICAgIG5vZGUudGV4dENvbnRlbnQgPSAnXFxuJyArIG5vZGUudGV4dENvbnRlbnQ7XHJcbiAgfVxyXG4gIHJldHVybiBub2RlO1xyXG59KTtcclxuXHJcbi8qKlxyXG4gKiBTYW5pdGl6ZSBhIG1lc3NhZ2UgZm9yIGRpc3BsYXkgaW4gYSBub3RpZmljYXRpb24uIFRoaXMgcmVtb3ZlcyBIVE1MIGJ1dCBhbHNvIHRyaWVzIHRvIGJlIHNtYXJ0XHJcbiAqIGFib3V0IHdoaXRlc3BhY2UuXHJcbiAqL1xyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBzYW5pdGl6ZUh0bWwoXHJcbiAgbWVzc2FnZTogc3RyaW5nLFxyXG4gIG9wdGlvbnM/OiB7XHJcbiAgICBjb25kZW5zZVdoaXRlc3BhY2VzPzogYm9vbGVhbixcclxuICB9LFxyXG4pOiBzdHJpbmcge1xyXG4gIC8vIFJlbW92ZSB0aGUgSFRNTC5cclxuICBsZXQgd2l0aG91dFRhZ3M6IHN0cmluZyA9IGRvbVB1cmlmeS5zYW5pdGl6ZShtZXNzYWdlLCB7QUxMT1dFRF9UQUdTOiBbXX0pO1xyXG5cclxuICAvLyBDb21wcmVzcyB0aGUgd2hpdGVzcGFjZS5cclxuICBpZiAob3B0aW9ucz8uY29uZGVuc2VXaGl0ZXNwYWNlcykge1xyXG4gICAgd2l0aG91dFRhZ3MgPSB3aXRob3V0VGFnc1xyXG4gICAgICAucmVwbGFjZSgvKD86XFxzKlxcblxccyopKy9nLCAnXFxuJylcclxuICAgICAgLnJlcGxhY2UoL1sgXFx0XSsvZywgJyAnKTtcclxuICB9XHJcblxyXG4gIHJldHVybiB3aXRob3V0VGFncy50cmltKCk7XHJcbn1cclxuIl19 |
@@ -83,2 +83,2 @@ "use strict"; | ||
exports.default = _default; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3NjaGVkdWxlSWRsZUNhbGxiYWNrLmpzIl0sIm5hbWVzIjpbInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJzY2hlZHVsZUlkbGVDYWxsYmFjayIsImNhbGxiYWNrXyIsIm9wdGlvbnMiLCJhZnRlclJlbWFpbmluZ1RpbWUiLCJ0aW1lb3V0IiwiY2FsbGJhY2siLCJpZCIsInN0YXJ0VGltZSIsIkRhdGUiLCJub3ciLCJmbiIsImRlYWRsaW5lIiwidGltZVJlbWFpbmluZyIsImRpc3Bvc2UiLCJjYW5jZWxJZGxlQ2FsbGJhY2siLCJzZXRJbW1lZGlhdGUiLCJjbGVhckltbWVkaWF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQTBCQTs7OztBQTFCQTs7Ozs7Ozs7Ozs7O0FBWUE7O0FBRUE7Ozs7Ozs7Ozs7O2VBb0JnQixPQUFPQSxtQkFBUCxLQUErQixXQUEvQixHQUNaO0FBQ0E7QUFDQSxTQUFTQyxvQkFBVCxDQUNFQyxTQURGLEVBRUVDLE9BQWtCLEdBQUcsRUFGdkIsRUFHZTtBQUNiLFFBQU1DLGtCQUFrQixHQUFHRCxPQUFPLENBQUNDLGtCQUFSLElBQThCLEVBQXpELENBRGEsQ0FFYjs7QUFDQSxRQUFNQyxPQUFPLEdBQUdGLE9BQU8sQ0FBQ0UsT0FBUixJQUFtQixHQUFuQztBQUNBLE1BQUlDLFFBQVEsR0FBR0osU0FBZjtBQUNBLE1BQUlLLEVBQUo7QUFDQSxRQUFNQyxTQUFTLEdBQUdDLElBQUksQ0FBQ0MsR0FBTCxFQUFsQjs7QUFDQSxXQUFTQyxFQUFULENBQVlDLFFBQVosRUFBc0I7QUFDcEIsUUFDRUEsUUFBUSxDQUFDQyxhQUFULE1BQTRCVCxrQkFBNUIsSUFDQUssSUFBSSxDQUFDQyxHQUFMLEtBQWFGLFNBQWIsSUFBMEJILE9BRjVCLEVBR0U7QUFDQSwyQkFBVUMsUUFBUSxJQUFJLElBQXRCO0FBQ0FBLE1BQUFBLFFBQVE7QUFDUkMsTUFBQUEsRUFBRSxHQUFHRCxRQUFRLEdBQUcsSUFBaEI7QUFDRCxLQVBELE1BT087QUFDTEMsTUFBQUEsRUFBRSxHQUFHUCxtQkFBbUIsQ0FBQ1csRUFBRCxFQUFLO0FBQzNCTixRQUFBQSxPQUFPLEVBQUVBLE9BQU8sSUFBSUksSUFBSSxDQUFDQyxHQUFMLEtBQWFGLFNBQWpCO0FBRFcsT0FBTCxDQUF4QjtBQUdEO0FBQ0Y7O0FBQ0RELEVBQUFBLEVBQUUsR0FBR1AsbUJBQW1CLENBQUNXLEVBQUQsRUFBSztBQUFDTixJQUFBQTtBQUFELEdBQUwsQ0FBeEI7QUFDQSxTQUFPO0FBQ0xTLElBQUFBLE9BQU8sR0FBRztBQUNSLFVBQUlQLEVBQUUsSUFBSSxJQUFWLEVBQWdCO0FBQ2RRLFFBQUFBLGtCQUFrQixDQUFDUixFQUFELENBQWxCO0FBQ0FBLFFBQUFBLEVBQUUsR0FBR0QsUUFBUSxHQUFHLElBQWhCO0FBQ0Q7QUFDRjs7QUFOSSxHQUFQO0FBUUQsQ0FwQ1csR0FxQ1o7QUFDQSxTQUFTTCxvQkFBVCxDQUNFSyxRQURGLEVBRUVILE9BRkYsRUFHZTtBQUNiLFFBQU1JLEVBQUUsR0FBR1MsWUFBWSxDQUFDVixRQUFELENBQXZCO0FBQ0EsU0FBTztBQUNMUSxJQUFBQSxPQUFPLEdBQUc7QUFDUkcsTUFBQUEsY0FBYyxDQUFDVixFQUFELENBQWQ7QUFDRDs7QUFISSxHQUFQO0FBS0QsQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vKiBnbG9iYWwgcmVxdWVzdElkbGVDYWxsYmFjaywgY2FuY2VsSWRsZUNhbGxiYWNrICovXHJcblxyXG4vKipcclxuICogYHNjaGVkdWxlSWRsZUNhbGxiYWNrYCBpcyBhIHdyYXBwZXIgYXJvdW5kIGByZXF1ZXN0SWRsZUNhbGxiYWNrYCB0aGF0OlxyXG4gKiAgIC0gUmV0dXJucyBhIGRpc3Bvc2FibGUuXHJcbiAqICAgLSBNYW5hZ2VzIGNoZWNraW5nIGB0aW1lUmVtYWluaW5nYC5cclxuICpcclxuICogYHRpbWVSZW1haW5pbmdgIGlzIGhvdyBtdWNoIHRpbWUgdGhlIHN5c3RlbSB0aGlua3MgaXMgYXZhaWxhYmxlIGZvciB5b3VyXHJcbiAqIHdvcmsuIGA1MGAgaXMgdGhlIG1heGltdW0gYWxsb3dlZCB2YWx1ZS4gQnkgY2hvb3NpbmcgYDQ5YCBmb3JcclxuICogYGFmdGVyUmVtYWluaW5nVGltZWAsIHlvdSdyZSBzYXlpbmc6IFwib25seSBpbnZva2UgdGhlIGNhbGxiYWNrIHdoZW4gdGhlcmVcclxuICogYXJlIDQ5bXMgYXZhaWxhYmxlIGZvciBtZSB0byBkbyB3b3JrXCIuIEl0IHdhcyBjYW4gdGFrZSBtdWx0aXBsZSBsb29wcyBhcm91bmRcclxuICogYHJlcXVlc3RJZGxlQ2FsbGJhY2tgIGZvciBzbyBtdWNoIHRpbWUgdG8gYmVjb21lIGF2YWlsYWJsZS5cclxuICovXHJcblxyXG5pbXBvcnQgaW52YXJpYW50IGZyb20gJ2Fzc2VydCc7XHJcblxyXG50eXBlIENhbGxiYWNrVCA9ICgpID0+IHZvaWQ7XHJcbnR5cGUgT3B0aW9uc1QgPSB7XHJcbiAgYWZ0ZXJSZW1haW5pbmdUaW1lPzogMzAgfCA0MCB8IDQ5LFxyXG4gIHRpbWVvdXQ/OiBudW1iZXIsXHJcbn07XHJcblxyXG5leHBvcnQgZGVmYXVsdCAodHlwZW9mIHJlcXVlc3RJZGxlQ2FsbGJhY2sgIT09ICd1bmRlZmluZWQnXHJcbiAgPyAvLyBVc2luZyBCcm93c2VyIEFQSVxyXG4gICAgLy8gSXMgZ3VhcmFudGVlZCB0byByZXNvbHZlIGFmdGVyIGB0aW1lb3V0YCBtaWxsaXNlY29uZHMuXHJcbiAgICBmdW5jdGlvbiBzY2hlZHVsZUlkbGVDYWxsYmFjayhcclxuICAgICAgY2FsbGJhY2tfOiBDYWxsYmFja1QsXHJcbiAgICAgIG9wdGlvbnM/OiBPcHRpb25zVCA9IHt9LFxyXG4gICAgKTogSURpc3Bvc2FibGUge1xyXG4gICAgICBjb25zdCBhZnRlclJlbWFpbmluZ1RpbWUgPSBvcHRpb25zLmFmdGVyUmVtYWluaW5nVGltZSB8fCA0OTtcclxuICAgICAgLy8gZmxvd2xpbnQtbmV4dC1saW5lIHNrZXRjaHktbnVsbC1udW1iZXI6b2ZmXHJcbiAgICAgIGNvbnN0IHRpbWVvdXQgPSBvcHRpb25zLnRpbWVvdXQgfHwgNTAwO1xyXG4gICAgICBsZXQgY2FsbGJhY2sgPSBjYWxsYmFja187XHJcbiAgICAgIGxldCBpZDtcclxuICAgICAgY29uc3Qgc3RhcnRUaW1lID0gRGF0ZS5ub3coKTtcclxuICAgICAgZnVuY3Rpb24gZm4oZGVhZGxpbmUpIHtcclxuICAgICAgICBpZiAoXHJcbiAgICAgICAgICBkZWFkbGluZS50aW1lUmVtYWluaW5nKCkgPj0gYWZ0ZXJSZW1haW5pbmdUaW1lIHx8XHJcbiAgICAgICAgICBEYXRlLm5vdygpIC0gc3RhcnRUaW1lID49IHRpbWVvdXRcclxuICAgICAgICApIHtcclxuICAgICAgICAgIGludmFyaWFudChjYWxsYmFjayAhPSBudWxsKTtcclxuICAgICAgICAgIGNhbGxiYWNrKCk7XHJcbiAgICAgICAgICBpZCA9IGNhbGxiYWNrID0gbnVsbDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgaWQgPSByZXF1ZXN0SWRsZUNhbGxiYWNrKGZuLCB7XHJcbiAgICAgICAgICAgIHRpbWVvdXQ6IHRpbWVvdXQgLSAoRGF0ZS5ub3coKSAtIHN0YXJ0VGltZSksXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWQgPSByZXF1ZXN0SWRsZUNhbGxiYWNrKGZuLCB7dGltZW91dH0pO1xyXG4gICAgICByZXR1cm4ge1xyXG4gICAgICAgIGRpc3Bvc2UoKSB7XHJcbiAgICAgICAgICBpZiAoaWQgIT0gbnVsbCkge1xyXG4gICAgICAgICAgICBjYW5jZWxJZGxlQ2FsbGJhY2soaWQpO1xyXG4gICAgICAgICAgICBpZCA9IGNhbGxiYWNrID0gbnVsbDtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gIDogLy8gVXNpbmcgTm9kZSBBUElcclxuICAgIGZ1bmN0aW9uIHNjaGVkdWxlSWRsZUNhbGxiYWNrKFxyXG4gICAgICBjYWxsYmFjazogQ2FsbGJhY2tULFxyXG4gICAgICBvcHRpb25zPzogT3B0aW9uc1QsXHJcbiAgICApOiBJRGlzcG9zYWJsZSB7XHJcbiAgICAgIGNvbnN0IGlkID0gc2V0SW1tZWRpYXRlKGNhbGxiYWNrKTtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBkaXNwb3NlKCkge1xyXG4gICAgICAgICAgY2xlYXJJbW1lZGlhdGUoaWQpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgIH07XHJcbiAgICB9KTtcclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3NjaGVkdWxlSWRsZUNhbGxiYWNrLmpzIl0sIm5hbWVzIjpbInJlcXVlc3RJZGxlQ2FsbGJhY2siLCJzY2hlZHVsZUlkbGVDYWxsYmFjayIsImNhbGxiYWNrXyIsIm9wdGlvbnMiLCJhZnRlclJlbWFpbmluZ1RpbWUiLCJ0aW1lb3V0IiwiY2FsbGJhY2siLCJpZCIsInN0YXJ0VGltZSIsIkRhdGUiLCJub3ciLCJmbiIsImRlYWRsaW5lIiwidGltZVJlbWFpbmluZyIsImRpc3Bvc2UiLCJjYW5jZWxJZGxlQ2FsbGJhY2siLCJzZXRJbW1lZGlhdGUiLCJjbGVhckltbWVkaWF0ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQTBCQTs7OztBQTFCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7ZUFVZ0IsT0FBT0EsbUJBQVAsS0FBK0IsV0FBL0IsR0FDWjtBQUNBO0FBQ0EsU0FBU0Msb0JBQVQsQ0FDRUMsU0FERixFQUVFQyxPQUFrQixHQUFHLEVBRnZCLEVBR2U7QUFDYixRQUFNQyxrQkFBa0IsR0FBR0QsT0FBTyxDQUFDQyxrQkFBUixJQUE4QixFQUF6RCxDQURhLENBRWI7O0FBQ0EsUUFBTUMsT0FBTyxHQUFHRixPQUFPLENBQUNFLE9BQVIsSUFBbUIsR0FBbkM7QUFDQSxNQUFJQyxRQUFRLEdBQUdKLFNBQWY7QUFDQSxNQUFJSyxFQUFKO0FBQ0EsUUFBTUMsU0FBUyxHQUFHQyxJQUFJLENBQUNDLEdBQUwsRUFBbEI7O0FBQ0EsV0FBU0MsRUFBVCxDQUFZQyxRQUFaLEVBQXNCO0FBQ3BCLFFBQ0VBLFFBQVEsQ0FBQ0MsYUFBVCxNQUE0QlQsa0JBQTVCLElBQ0FLLElBQUksQ0FBQ0MsR0FBTCxLQUFhRixTQUFiLElBQTBCSCxPQUY1QixFQUdFO0FBQ0EsMkJBQVVDLFFBQVEsSUFBSSxJQUF0QjtBQUNBQSxNQUFBQSxRQUFRO0FBQ1JDLE1BQUFBLEVBQUUsR0FBR0QsUUFBUSxHQUFHLElBQWhCO0FBQ0QsS0FQRCxNQU9PO0FBQ0xDLE1BQUFBLEVBQUUsR0FBR1AsbUJBQW1CLENBQUNXLEVBQUQsRUFBSztBQUMzQk4sUUFBQUEsT0FBTyxFQUFFQSxPQUFPLElBQUlJLElBQUksQ0FBQ0MsR0FBTCxLQUFhRixTQUFqQjtBQURXLE9BQUwsQ0FBeEI7QUFHRDtBQUNGOztBQUNERCxFQUFBQSxFQUFFLEdBQUdQLG1CQUFtQixDQUFDVyxFQUFELEVBQUs7QUFBQ04sSUFBQUE7QUFBRCxHQUFMLENBQXhCO0FBQ0EsU0FBTztBQUNMUyxJQUFBQSxPQUFPLEdBQUc7QUFDUixVQUFJUCxFQUFFLElBQUksSUFBVixFQUFnQjtBQUNkUSxRQUFBQSxrQkFBa0IsQ0FBQ1IsRUFBRCxDQUFsQjtBQUNBQSxRQUFBQSxFQUFFLEdBQUdELFFBQVEsR0FBRyxJQUFoQjtBQUNEO0FBQ0Y7O0FBTkksR0FBUDtBQVFELENBcENXLEdBcUNaO0FBQ0EsU0FBU0wsb0JBQVQsQ0FDRUssUUFERixFQUVFSCxPQUZGLEVBR2U7QUFDYixRQUFNSSxFQUFFLEdBQUdTLFlBQVksQ0FBQ1YsUUFBRCxDQUF2QjtBQUNBLFNBQU87QUFDTFEsSUFBQUEsT0FBTyxHQUFHO0FBQ1JHLE1BQUFBLGNBQWMsQ0FBQ1YsRUFBRCxDQUFkO0FBQ0Q7O0FBSEksR0FBUDtBQUtELEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuLyogZ2xvYmFsIHJlcXVlc3RJZGxlQ2FsbGJhY2ssIGNhbmNlbElkbGVDYWxsYmFjayAqL1xyXG5cclxuLyoqXHJcbiAqIGBzY2hlZHVsZUlkbGVDYWxsYmFja2AgaXMgYSB3cmFwcGVyIGFyb3VuZCBgcmVxdWVzdElkbGVDYWxsYmFja2AgdGhhdDpcclxuICogICAtIFJldHVybnMgYSBkaXNwb3NhYmxlLlxyXG4gKiAgIC0gTWFuYWdlcyBjaGVja2luZyBgdGltZVJlbWFpbmluZ2AuXHJcbiAqXHJcbiAqIGB0aW1lUmVtYWluaW5nYCBpcyBob3cgbXVjaCB0aW1lIHRoZSBzeXN0ZW0gdGhpbmtzIGlzIGF2YWlsYWJsZSBmb3IgeW91clxyXG4gKiB3b3JrLiBgNTBgIGlzIHRoZSBtYXhpbXVtIGFsbG93ZWQgdmFsdWUuIEJ5IGNob29zaW5nIGA0OWAgZm9yXHJcbiAqIGBhZnRlclJlbWFpbmluZ1RpbWVgLCB5b3UncmUgc2F5aW5nOiBcIm9ubHkgaW52b2tlIHRoZSBjYWxsYmFjayB3aGVuIHRoZXJlXHJcbiAqIGFyZSA0OW1zIGF2YWlsYWJsZSBmb3IgbWUgdG8gZG8gd29ya1wiLiBJdCB3YXMgY2FuIHRha2UgbXVsdGlwbGUgbG9vcHMgYXJvdW5kXHJcbiAqIGByZXF1ZXN0SWRsZUNhbGxiYWNrYCBmb3Igc28gbXVjaCB0aW1lIHRvIGJlY29tZSBhdmFpbGFibGUuXHJcbiAqL1xyXG5cclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5cclxudHlwZSBDYWxsYmFja1QgPSAoKSA9PiB2b2lkO1xyXG50eXBlIE9wdGlvbnNUID0ge1xyXG4gIGFmdGVyUmVtYWluaW5nVGltZT86IDMwIHwgNDAgfCA0OSxcclxuICB0aW1lb3V0PzogbnVtYmVyLFxyXG59O1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgKHR5cGVvZiByZXF1ZXN0SWRsZUNhbGxiYWNrICE9PSAndW5kZWZpbmVkJ1xyXG4gID8gLy8gVXNpbmcgQnJvd3NlciBBUElcclxuICAgIC8vIElzIGd1YXJhbnRlZWQgdG8gcmVzb2x2ZSBhZnRlciBgdGltZW91dGAgbWlsbGlzZWNvbmRzLlxyXG4gICAgZnVuY3Rpb24gc2NoZWR1bGVJZGxlQ2FsbGJhY2soXHJcbiAgICAgIGNhbGxiYWNrXzogQ2FsbGJhY2tULFxyXG4gICAgICBvcHRpb25zPzogT3B0aW9uc1QgPSB7fSxcclxuICAgICk6IElEaXNwb3NhYmxlIHtcclxuICAgICAgY29uc3QgYWZ0ZXJSZW1haW5pbmdUaW1lID0gb3B0aW9ucy5hZnRlclJlbWFpbmluZ1RpbWUgfHwgNDk7XHJcbiAgICAgIC8vIGZsb3dsaW50LW5leHQtbGluZSBza2V0Y2h5LW51bGwtbnVtYmVyOm9mZlxyXG4gICAgICBjb25zdCB0aW1lb3V0ID0gb3B0aW9ucy50aW1lb3V0IHx8IDUwMDtcclxuICAgICAgbGV0IGNhbGxiYWNrID0gY2FsbGJhY2tfO1xyXG4gICAgICBsZXQgaWQ7XHJcbiAgICAgIGNvbnN0IHN0YXJ0VGltZSA9IERhdGUubm93KCk7XHJcbiAgICAgIGZ1bmN0aW9uIGZuKGRlYWRsaW5lKSB7XHJcbiAgICAgICAgaWYgKFxyXG4gICAgICAgICAgZGVhZGxpbmUudGltZVJlbWFpbmluZygpID49IGFmdGVyUmVtYWluaW5nVGltZSB8fFxyXG4gICAgICAgICAgRGF0ZS5ub3coKSAtIHN0YXJ0VGltZSA+PSB0aW1lb3V0XHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICBpbnZhcmlhbnQoY2FsbGJhY2sgIT0gbnVsbCk7XHJcbiAgICAgICAgICBjYWxsYmFjaygpO1xyXG4gICAgICAgICAgaWQgPSBjYWxsYmFjayA9IG51bGw7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGlkID0gcmVxdWVzdElkbGVDYWxsYmFjayhmbiwge1xyXG4gICAgICAgICAgICB0aW1lb3V0OiB0aW1lb3V0IC0gKERhdGUubm93KCkgLSBzdGFydFRpbWUpLFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlkID0gcmVxdWVzdElkbGVDYWxsYmFjayhmbiwge3RpbWVvdXR9KTtcclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBkaXNwb3NlKCkge1xyXG4gICAgICAgICAgaWYgKGlkICE9IG51bGwpIHtcclxuICAgICAgICAgICAgY2FuY2VsSWRsZUNhbGxiYWNrKGlkKTtcclxuICAgICAgICAgICAgaWQgPSBjYWxsYmFjayA9IG51bGw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSxcclxuICAgICAgfTtcclxuICAgIH1cclxuICA6IC8vIFVzaW5nIE5vZGUgQVBJXHJcbiAgICBmdW5jdGlvbiBzY2hlZHVsZUlkbGVDYWxsYmFjayhcclxuICAgICAgY2FsbGJhY2s6IENhbGxiYWNrVCxcclxuICAgICAgb3B0aW9ucz86IE9wdGlvbnNULFxyXG4gICAgKTogSURpc3Bvc2FibGUge1xyXG4gICAgICBjb25zdCBpZCA9IHNldEltbWVkaWF0ZShjYWxsYmFjayk7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgZGlzcG9zZSgpIHtcclxuICAgICAgICAgIGNsZWFySW1tZWRpYXRlKGlkKTtcclxuICAgICAgICB9LFxyXG4gICAgICB9O1xyXG4gICAgfSk7XHJcbiJdfQ== |
@@ -238,2 +238,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1NjcmliZVByb2Nlc3MuanMiXSwibmFtZXMiOlsiREVGQVVMVF9KT0lOX1RJTUVPVVQiLCJTQ1JJQkVfQ0FUX0NPTU1BTkQiLCJERUZBVUxUX0pPSU5fSU5URVJWQUwiLCJwcm9jZXNzIiwicGxhdGZvcm0iLCJTUEFXTl9UT09fTE9OR19NUyIsIlNjcmliZVByb2Nlc3MiLCJjb25zdHJ1Y3RvciIsInNjcmliZUNhdGVnb3J5Iiwiam9pbkludGVydmFsIiwiX3NjcmliZUNhdGVnb3J5IiwiX2NoaWxkUHJvbWlzZSIsIl9zdWJzY3JpcHRpb24iLCJfam9pblRpbWVyIiwiX2pvaW5JbnRlcnZhbCIsIl9nZXRDaGlsZFByb2Nlc3MiLCJpc0VuYWJsZWQiLCJfZW5hYmxlZCIsIndyaXRlIiwibWVzc2FnZSIsImNoaWxkIiwid3JpdGVUb1N0cmVhbSIsInN0ZGluIiwib3MiLCJFT0wiLCJlcnIiLCJlcnJvciIsImpvaW4iLCJ0aW1lb3V0IiwiX2NsZWFyIiwid2FpdEZvckV4aXQiLCJQcm9taXNlIiwicmVzb2x2ZSIsIm9uIiwic2V0VGltZW91dCIsInVuc3Vic2NyaWJlIiwib25jZSIsImVuZCIsInN0YXJ0VGltZSIsInByb2Nlc3NTdHJlYW0iLCJkb250TG9nSW5OdWNsaWRlIiwiZG8iLCJkdXJhdGlvbiIsInNldERlZmF1bHRFbmNvZGluZyIsImZpbmFsbHkiLCJjaGlsZFByb21pc2UiLCJwdWJsaXNoIiwiZmlyc3QiLCJ0b1Byb21pc2UiLCJjb25uZWN0IiwiY2xlYXJUaW1lb3V0IiwiaXNTY3JpYmVDYXRPblBhdGgiLCJ3aGljaENtZCIsImdrRW5hYmxlZCIsImFsbCIsIl9fdGVzdF9fIiwic2V0U2NyaWJlQ2F0Q29tbWFuZCIsIm5ld0NvbW1hbmQiLCJvcmlnaW5hbENvbW1hbmQiLCJzdHJlYW0iLCJyZWplY3QiLCJoYW5kbGVFcnJvciIsInJlbW92ZUxpc3RlbmVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7QUFsQkE7Ozs7Ozs7Ozs7O0FBb0JBLE1BQU1BLG9CQUFvQixHQUFHLElBQTdCO0FBQ0EsSUFBSUMsa0JBQWtCLEdBQUcsWUFBekIsQyxDQUVBO0FBQ0E7QUFDQTs7QUFDQSxNQUFNQyxxQkFBcUIsR0FBR0MsT0FBTyxDQUFDQyxRQUFSLEtBQXFCLFFBQXJCLEdBQWdDLEtBQWhDLEdBQXdDLElBQXRFLEMsQ0FFQTtBQUNBO0FBQ0E7O0FBQ0EsTUFBTUMsaUJBQWlCLEdBQUcsSUFBMUI7QUFFQTs7Ozs7OztBQU1lLE1BQU1DLGFBQU4sQ0FBb0I7QUFTakNDLEVBQUFBLFdBQVcsQ0FDVEMsY0FEUyxFQUVUQyxZQUFxQixHQUFHUCxxQkFGZixFQUdUO0FBQUEsU0FURlEsZUFTRTtBQUFBLFNBUkZDLGFBUUU7QUFBQSxTQVBGQyxhQU9FO0FBQUEsU0FORkMsVUFNRTtBQUFBLFNBTEZDLGFBS0U7QUFDQSxTQUFLSixlQUFMLEdBQXVCRixjQUF2QjtBQUNBLFNBQUtNLGFBQUwsR0FBcUJMLFlBQXJCOztBQUNBLFNBQUtNLGdCQUFMO0FBQ0Q7QUFFRDs7Ozs7QUFhQSxTQUFPQyxTQUFQLEdBQTRCO0FBQzFCLFdBQU9WLGFBQWEsQ0FBQ1csUUFBckI7QUFDRDtBQUVEOzs7Ozs7O0FBS0EsUUFBTUMsS0FBTixDQUFZQyxPQUFaLEVBQStDO0FBQzdDLFFBQUksQ0FBQ2IsYUFBYSxDQUFDVyxRQUFuQixFQUE2QjtBQUMzQixhQUFPLEtBQVA7QUFDRDs7QUFDRCxRQUFJRyxLQUFKOztBQUNBLFFBQUk7QUFDRkEsTUFBQUEsS0FBSyxHQUFHLE1BQU0sS0FBS0wsZ0JBQUwsRUFBZDtBQUNBLFlBQU1NLGFBQWEsQ0FBQ0QsS0FBSyxDQUFDRSxLQUFQLEVBQWUsR0FBRUgsT0FBUSxHQUFFSSxZQUFHQyxHQUFJLEVBQWxDLENBQW5CO0FBQ0QsS0FIRCxDQUdFLE9BQU9DLEdBQVAsRUFBWTtBQUNabkIsTUFBQUEsYUFBYSxDQUFDVyxRQUFkLEdBQXlCLEtBQXpCLENBRFksQ0FFWjtBQUNBOztBQUNBLDZCQUFVLGVBQVYsRUFBMkJTLEtBQTNCLENBQ0UsdUNBREYsRUFFRUQsR0FGRjtBQUlBLGFBQU8sS0FBUDtBQUNEOztBQUVELFdBQU8sSUFBUDtBQUNEO0FBRUQ7Ozs7Ozs7QUFLQSxRQUFNRSxJQUFOLENBQVdDLE9BQWUsR0FBRzVCLG9CQUE3QixFQUFrRTtBQUNoRSxVQUFNO0FBQUNXLE1BQUFBLGFBQUQ7QUFBZ0JDLE1BQUFBO0FBQWhCLFFBQWlDLElBQXZDOztBQUNBLFFBQUlELGFBQWEsSUFBSSxJQUFqQixJQUF5QkMsYUFBYSxJQUFJLElBQTlDLEVBQW9EO0FBQ2xEO0FBQ0QsS0FKK0QsQ0FNaEU7QUFDQTtBQUNBOzs7QUFDQSxTQUFLaUIsTUFBTDs7QUFFQSxVQUFNVCxLQUFLLEdBQUcsTUFBTVQsYUFBcEI7QUFDQSxVQUFNO0FBQUNXLE1BQUFBO0FBQUQsUUFBVUYsS0FBaEI7QUFDQSxVQUFNVSxXQUFXLEdBQUcsSUFBSUMsT0FBSixDQUFZQyxPQUFPLElBQUk7QUFDekNaLE1BQUFBLEtBQUssQ0FBQ2EsRUFBTixDQUFTLE1BQVQsRUFBaUIsTUFBTTtBQUNyQkQsUUFBQUEsT0FBTztBQUNSLE9BRkQ7QUFHQUUsTUFBQUEsVUFBVSxDQUFDLE1BQU07QUFDZnRCLFFBQUFBLGFBQWEsQ0FBQ3VCLFdBQWQ7O0FBQ0FILFFBQUFBLE9BQU87QUFDUixPQUhTLEVBR1BKLE9BSE8sQ0FBVjtBQUlELEtBUm1CLENBQXBCLENBYmdFLENBc0JoRTs7QUFDQSxRQUFJLENBQUNOLEtBQUssQ0FBQ0osS0FBTixDQUFZSyxZQUFHQyxHQUFmLENBQUwsRUFBMEI7QUFDeEJGLE1BQUFBLEtBQUssQ0FBQ2MsSUFBTixDQUFXLE9BQVgsRUFBb0IsTUFBTWQsS0FBSyxDQUFDZSxHQUFOLEVBQTFCO0FBQ0QsS0FGRCxNQUVPO0FBQ0xmLE1BQUFBLEtBQUssQ0FBQ2UsR0FBTjtBQUNEOztBQUNELFdBQU9QLFdBQVA7QUFDRDs7QUFFRGYsRUFBQUEsZ0JBQWdCLEdBQXdDO0FBQ3RELFFBQUksS0FBS0osYUFBVCxFQUF3QjtBQUN0QixhQUFPLEtBQUtBLGFBQVo7QUFDRCxLQUhxRCxDQUt0RDtBQUNBOzs7QUFDQSxVQUFNMkIsU0FBUyxHQUFHLDhCQUFsQjtBQUNBLFVBQU1DLGFBQWEsR0FBRyxvQkFBTXRDLGtCQUFOLEVBQTBCLENBQUMsS0FBS1MsZUFBTixDQUExQixFQUFrRDtBQUN0RThCLE1BQUFBLGdCQUFnQixFQUFFO0FBRG9ELEtBQWxELEVBR25CQyxFQUhtQixDQUdoQnJCLEtBQUssSUFBSTtBQUNYLFlBQU1zQixRQUFRLEdBQUcsaUNBQW1CSixTQUFwQzs7QUFDQSxVQUFJSSxRQUFRLEdBQUdyQyxpQkFBZixFQUFrQztBQUNoQ0MsUUFBQUEsYUFBYSxDQUFDVyxRQUFkLEdBQXlCLEtBQXpCO0FBQ0EsK0JBQVUsZUFBVixFQUEyQlMsS0FBM0IsQ0FDRyx3REFBdURnQixRQUFTLEtBRG5FLEVBRmdDLENBS2hDO0FBQ0E7O0FBQ0EsYUFBS2YsSUFBTDtBQUNEOztBQUNEUCxNQUFBQSxLQUFLLENBQUNFLEtBQU4sQ0FBWXFCLGtCQUFaLENBQStCLE1BQS9CO0FBQ0QsS0FmbUIsRUFnQm5CQyxPQWhCbUIsQ0FnQlgsTUFBTTtBQUNiO0FBQ0EsVUFBSSxLQUFLakMsYUFBTCxLQUF1QmtDLFlBQTNCLEVBQXlDO0FBQ3ZDLGFBQUtoQixNQUFMO0FBQ0Q7QUFDRixLQXJCbUIsRUFzQm5CaUIsT0F0Qm1CLEVBQXRCO0FBd0JBLFVBQU1ELFlBQVksR0FBSSxLQUFLbEMsYUFBTCxHQUFxQjRCLGFBQWEsQ0FDckRRLEtBRHdDLEdBRXhDQyxTQUZ3QyxFQUEzQztBQUdBLFNBQUtwQyxhQUFMLEdBQXFCMkIsYUFBYSxDQUFDVSxPQUFkLEVBQXJCOztBQUVBLFFBQUksS0FBS25DLGFBQUwsSUFBc0IsSUFBMUIsRUFBZ0M7QUFDOUIsV0FBS0QsVUFBTCxHQUFrQnFCLFVBQVUsQ0FBQyxNQUFNO0FBQ2pDLGFBQUtyQixVQUFMLEdBQWtCLElBQWxCO0FBQ0EsYUFBS2MsSUFBTDtBQUNELE9BSDJCLEVBR3pCLEtBQUtiLGFBSG9CLENBQTVCO0FBSUQ7O0FBRUQsV0FBTytCLFlBQVA7QUFDRDs7QUFFRGhCLEVBQUFBLE1BQU0sR0FBRztBQUNQLFNBQUtsQixhQUFMLEdBQXFCLElBQXJCO0FBQ0EsU0FBS0MsYUFBTCxHQUFxQixJQUFyQjs7QUFDQSxRQUFJLEtBQUtDLFVBQUwsSUFBbUIsSUFBdkIsRUFBNkI7QUFDM0JxQyxNQUFBQSxZQUFZLENBQUMsS0FBS3JDLFVBQU4sQ0FBWjtBQUNBLFdBQUtBLFVBQUwsR0FBa0IsSUFBbEI7QUFDRDtBQUNGOztBQXhKZ0M7OztBQUFkUCxhLENBQ1pXLFEsR0FBb0IsSTtBQURSWCxhLENBcUJaNkMsaUIsR0FBNEMsbUJBQUssWUFBWTtBQUNsRSxRQUFNLENBQUNDLFFBQUQsRUFBV0MsU0FBWCxJQUF3QixNQUFNdEIsT0FBTyxDQUFDdUIsR0FBUixDQUFZLENBQzlDLG9CQUFNckQsa0JBQU4sQ0FEOEMsRUFFOUNFLE9BQU8sQ0FBQ0MsUUFBUixLQUFxQixRQUFyQixHQUNJLHVCQUFTLHNCQUFULENBREosR0FFSTJCLE9BQU8sQ0FBQ0MsT0FBUixDQUFnQixJQUFoQixDQUowQyxDQUFaLENBQXBDO0FBTUEsU0FBT29CLFFBQVEsSUFBSSxJQUFaLElBQW9CQyxTQUEzQjtBQUNELENBUmtELEM7QUFzSTlDLE1BQU1FLFFBQVEsR0FBRztBQUN0QkMsRUFBQUEsbUJBQW1CLENBQUNDLFVBQUQsRUFBNkI7QUFDOUMsVUFBTUMsZUFBZSxHQUFHekQsa0JBQXhCO0FBQ0FBLElBQUFBLGtCQUFrQixHQUFHd0QsVUFBckI7QUFDQSxXQUFPQyxlQUFQO0FBQ0Q7O0FBTHFCLENBQWpCOzs7QUFRUCxTQUFTckMsYUFBVCxDQUF1QnNDLE1BQXZCLEVBQStCeEMsT0FBL0IsRUFBdUQ7QUFDckQsU0FBTyxJQUFJWSxPQUFKLENBQVksQ0FBQ0MsT0FBRCxFQUFVNEIsTUFBVixLQUFxQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBTUMsV0FBVyxHQUFHcEMsR0FBRyxJQUFJO0FBQ3pCbUMsTUFBQUEsTUFBTSxDQUFDbkMsR0FBRCxDQUFOO0FBQ0FrQyxNQUFBQSxNQUFNLENBQUNHLGNBQVAsQ0FBc0IsT0FBdEIsRUFBK0JELFdBQS9CO0FBQ0QsS0FIRDs7QUFJQUYsSUFBQUEsTUFBTSxDQUFDdkIsSUFBUCxDQUFZLE9BQVosRUFBcUJ5QixXQUFyQjtBQUNBRixJQUFBQSxNQUFNLENBQUN6QyxLQUFQLENBQWFDLE9BQWIsRUFBc0JNLEdBQUcsSUFBSTtBQUMzQixVQUFJQSxHQUFHLElBQUksSUFBWCxFQUFpQjtBQUNmb0MsUUFBQUEsV0FBVyxDQUFDcEMsR0FBRCxDQUFYO0FBQ0E7QUFDRDs7QUFDRGtDLE1BQUFBLE1BQU0sQ0FBQ0csY0FBUCxDQUFzQixPQUF0QixFQUErQkQsV0FBL0I7QUFDQTdCLE1BQUFBLE9BQU87QUFDUixLQVBEO0FBUUQsR0FuQk0sQ0FBUDtBQW9CRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge2dldExvZ2dlcn0gZnJvbSAnbG9nNGpzJztcclxuaW1wb3J0IHBlcmZvcm1hbmNlTm93IGZyb20gJy4vcGVyZm9ybWFuY2VOb3cnO1xyXG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xyXG5pbXBvcnQge3NwYXdufSBmcm9tICcuL3Byb2Nlc3MnO1xyXG5pbXBvcnQgd2hpY2ggZnJvbSAnLi93aGljaCc7XHJcbmltcG9ydCBvbmNlIGZyb20gJy4vb25jZSc7XHJcbmltcG9ydCBwYXNzZXNHSyBmcm9tICcuL3Bhc3Nlc0dLJztcclxuXHJcbmNvbnN0IERFRkFVTFRfSk9JTl9USU1FT1VUID0gNTAwMDtcclxubGV0IFNDUklCRV9DQVRfQ09NTUFORCA9ICdzY3JpYmVfY2F0JztcclxuXHJcbi8vIE9uIE1hYyBPUywgYHNjcmliZV9jYXRgIGlzbid0IHF1aXRlIHRoZSBzYW1lIGFzIHRoZSBzZXJ2ZXItc2lkZSBvbmU6XHJcbi8vIGl0IG9ubHkgZHVtcHMgaXRzIGxvZ3Mgb24gZXhpdC4gVG8gbWFrZSBzdXJlIHRoYXQgbG9ncyBhcmUgZGVsaXZlcmVkXHJcbi8vIGluIGEgdGltZWx5IG1hbm5lciwgd2UnbGwgcGVyaW9kaWNhbGx5IGZvcmNlLWtpbGwgdGhlIHByb2Nlc3MuXHJcbmNvbnN0IERFRkFVTFRfSk9JTl9JTlRFUlZBTCA9IHByb2Nlc3MucGxhdGZvcm0gPT09ICdkYXJ3aW4nID8gNjAwMDAgOiBudWxsO1xyXG5cclxuLy8gSWYgc3Bhd25pbmcgdGhlIFNjcmliZSBwcm9jZXNzIHRha2VzIHRoaXMgbG9uZywgZGlzYWJsZSBpdC5cclxuLy8gTm9kZSBzb21ldGltZXMgcnVucyBpbnRvIHN0cmFuZ2UgaXNzdWVzIHdoZXJlIHNwYXduaW5nKCkgc3RhcnRzIHRvIGJsb2NrLlxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvaXNzdWVzLzE0OTE3XHJcbmNvbnN0IFNQQVdOX1RPT19MT05HX01TID0gMjAwMDtcclxuXHJcbi8qKlxyXG4gKiBBIHdyYXBwZXIgb2YgYHNjcmliZV9jYXRgIChodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2thcmNoaXZlL3NjcmliZS9ibG9iL21hc3Rlci9leGFtcGxlcy9zY3JpYmVfY2F0KVxyXG4gKiBjb21tYW5kLiBVc2VyIGNvdWxkIGNhbGwgYG5ldyBTY3JpYmVQcm9jZXNzKCRzY3JpYmVDYXRlZ29yeU5hbWUpYCB0byBjcmVhdGUgYSBwcm9jZXNzIGFuZCB0aGVuXHJcbiAqIGNhbGwgYHNjcmliZVByb2Nlc3Mud3JpdGUoJG9iamVjdClgIHRvIHNhdmUgYW4gSlNPTiBzY2hlbWFlZCBPYmplY3QgaW50byBzY3JpYmUgY2F0ZWdvcnkuXHJcbiAqIEl0IHdpbGwgYWxzbyByZWNvdmVyIGZyb20gYHNjcmliZV9jYXRgIGZhaWx1cmUgYXV0b21hdGljYWxseS5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNjcmliZVByb2Nlc3Mge1xyXG4gIHN0YXRpYyBfZW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIF9zY3JpYmVDYXRlZ29yeTogc3RyaW5nO1xyXG4gIF9jaGlsZFByb21pc2U6ID9Qcm9taXNlPGNoaWxkX3Byb2Nlc3MkQ2hpbGRQcm9jZXNzPjtcclxuICBfc3Vic2NyaXB0aW9uOiA/cnhqcyRJU3Vic2NyaXB0aW9uO1xyXG4gIF9qb2luVGltZXI6ID9UaW1lb3V0SUQ7XHJcbiAgX2pvaW5JbnRlcnZhbDogP251bWJlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBzY3JpYmVDYXRlZ29yeTogc3RyaW5nLFxyXG4gICAgam9pbkludGVydmFsOiA/bnVtYmVyID0gREVGQVVMVF9KT0lOX0lOVEVSVkFMLFxyXG4gICkge1xyXG4gICAgdGhpcy5fc2NyaWJlQ2F0ZWdvcnkgPSBzY3JpYmVDYXRlZ29yeTtcclxuICAgIHRoaXMuX2pvaW5JbnRlcnZhbCA9IGpvaW5JbnRlcnZhbDtcclxuICAgIHRoaXMuX2dldENoaWxkUHJvY2VzcygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgYHNjcmliZV9jYXRgIGV4aXN0cyBpbiBQQVRILlxyXG4gICAqL1xyXG4gIHN0YXRpYyBpc1NjcmliZUNhdE9uUGF0aDogKCkgPT4gUHJvbWlzZTxib29sZWFuPiA9IG9uY2UoYXN5bmMgKCkgPT4ge1xyXG4gICAgY29uc3QgW3doaWNoQ21kLCBna0VuYWJsZWRdID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xyXG4gICAgICB3aGljaChTQ1JJQkVfQ0FUX0NPTU1BTkQpLFxyXG4gICAgICBwcm9jZXNzLnBsYXRmb3JtID09PSAnZGFyd2luJ1xyXG4gICAgICAgID8gcGFzc2VzR0soJ251Y2xpZGVfc2NyaWJlX21hY29zJylcclxuICAgICAgICA6IFByb21pc2UucmVzb2x2ZSh0cnVlKSxcclxuICAgIF0pO1xyXG4gICAgcmV0dXJuIHdoaWNoQ21kICE9IG51bGwgJiYgZ2tFbmFibGVkO1xyXG4gIH0pO1xyXG5cclxuICBzdGF0aWMgaXNFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFNjcmliZVByb2Nlc3MuX2VuYWJsZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXcml0ZSBhIHN0cmluZyB0byBhIFNjcmliZSBjYXRlZ29yeS5cclxuICAgKiBFbnN1cmUgbmV3bGluZXMgYXJlIHByb3Blcmx5IGVzY2FwZWQuXHJcbiAgICogUmV0dXJucyBmYWxzZSBpZiBzb21ldGhpbmcgaXMgd3Jvbmcgd2l0aCB0aGUgU2NyaWJlIHByb2Nlc3MgKHVzZSBhIGZhbGxiYWNrIGluc3RlYWQuKVxyXG4gICAqL1xyXG4gIGFzeW5jIHdyaXRlKG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgaWYgKCFTY3JpYmVQcm9jZXNzLl9lbmFibGVkKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGxldCBjaGlsZDtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNoaWxkID0gYXdhaXQgdGhpcy5fZ2V0Q2hpbGRQcm9jZXNzKCk7XHJcbiAgICAgIGF3YWl0IHdyaXRlVG9TdHJlYW0oY2hpbGQuc3RkaW4sIGAke21lc3NhZ2V9JHtvcy5FT0x9YCk7XHJcbiAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgU2NyaWJlUHJvY2Vzcy5fZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICAvLyBOb3RlOiBMb2dnaW5nIGVycm9ycyBpcyBwb3RlbnRpYWxseSByZWN1cnNpdmUsIHNpbmNlIHRoZXkgZ28gdGhyb3VnaCBTY3JpYmUhXHJcbiAgICAgIC8vIEl0J3MgaW1wb3J0YW50IHRoYXQgd2Ugc2V0IF9lbmFibGVkIGJlZm9yZSBsb2dnaW5nIGVycm9ycyBpbiB0aGlzIGZpbGUuXHJcbiAgICAgIGdldExvZ2dlcignU2NyaWJlUHJvY2VzcycpLmVycm9yKFxyXG4gICAgICAgICdEaXNhYmxpbmcgU2NyaWJlUHJvY2VzcyBkdWUgdG8gZXJyb3I6JyxcclxuICAgICAgICBlcnIsXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdhaXRzIGZvciB0aGUgcmVtYWluaW5nIG1lc3NhZ2VzIHRvIGJlIHdyaXR0ZW4sIHRoZW4gY2xvc2VzIHRoZSB3cml0ZSBzdHJlYW0uIFJlc29sdmVzIG9uY2UgdGhlXHJcbiAgICogcHJvY2VzcyBoYXMgZXhpdGVkLiBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgd2hlbiB0aGUgc2VydmVyIHNodXRzIGRvd24gaW4gb3JkZXIgdG8gZ3VhcmFudGVlIHdlXHJcbiAgICogY2FwdHVyZSBsb2dnaW5nIGR1cmluZyBzaHV0ZG93bi5cclxuICAgKi9cclxuICBhc3luYyBqb2luKHRpbWVvdXQ6IG51bWJlciA9IERFRkFVTFRfSk9JTl9USU1FT1VUKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCB7X2NoaWxkUHJvbWlzZSwgX3N1YnNjcmlwdGlvbn0gPSB0aGlzO1xyXG4gICAgaWYgKF9jaGlsZFByb21pc2UgPT0gbnVsbCB8fCBfc3Vic2NyaXB0aW9uID09IG51bGwpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGpvaW4oKSByZW5kZXJzIHRoZSBleGlzdGluZyBwcm9jZXNzIHVudXNhYmxlLlxyXG4gICAgLy8gVGhlIG5leHQgY2FsbCB0byB3cml0ZSgpIHNob3VsZCBjcmVhdGUgYSBuZXcgcHJvY2Vzcywgc28gY2xlYXIgb3V0IHRoZSByZWZlcmVuY2VzLlxyXG4gICAgLy8gTm90ZSB0aGF0IHdlIHN0b3JlZCB0aGVtIGluIGxvY2FsIHZhcmlhYmxlcyBhbHJlYWR5IGFib3ZlLlxyXG4gICAgdGhpcy5fY2xlYXIoKTtcclxuXHJcbiAgICBjb25zdCBjaGlsZCA9IGF3YWl0IF9jaGlsZFByb21pc2U7XHJcbiAgICBjb25zdCB7c3RkaW59ID0gY2hpbGQ7XHJcbiAgICBjb25zdCB3YWl0Rm9yRXhpdCA9IG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xyXG4gICAgICBjaGlsZC5vbignZXhpdCcsICgpID0+IHtcclxuICAgICAgICByZXNvbHZlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBfc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICB9LCB0aW1lb3V0KTtcclxuICAgIH0pO1xyXG4gICAgLy8gTWFrZSBzdXJlIHN0ZGluIGhhcyBkcmFpbmVkIGJlZm9yZSBlbmRpbmcgaXQuXHJcbiAgICBpZiAoIXN0ZGluLndyaXRlKG9zLkVPTCkpIHtcclxuICAgICAgc3RkaW4ub25jZSgnZHJhaW4nLCAoKSA9PiBzdGRpbi5lbmQoKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzdGRpbi5lbmQoKTtcclxuICAgIH1cclxuICAgIHJldHVybiB3YWl0Rm9yRXhpdDtcclxuICB9XHJcblxyXG4gIF9nZXRDaGlsZFByb2Nlc3MoKTogUHJvbWlzZTxjaGlsZF9wcm9jZXNzJENoaWxkUHJvY2Vzcz4ge1xyXG4gICAgaWYgKHRoaXMuX2NoaWxkUHJvbWlzZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fY2hpbGRQcm9taXNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE9idGFpbiBhIHByb21pc2UgdG8gZ2V0IHRoZSBjaGlsZCBwcm9jZXNzLCBidXQgZG9uJ3Qgc3RhcnQgaXQgeWV0LlxyXG4gICAgLy8gdGhpcy5fc3Vic2NyaXB0aW9uIHdpbGwgaGF2ZSBjb250cm9sIG92ZXIgc3RhcnRpbmcgLyBzdG9wcGluZyB0aGUgcHJvY2Vzcy5cclxuICAgIGNvbnN0IHN0YXJ0VGltZSA9IHBlcmZvcm1hbmNlTm93KCk7XHJcbiAgICBjb25zdCBwcm9jZXNzU3RyZWFtID0gc3Bhd24oU0NSSUJFX0NBVF9DT01NQU5ELCBbdGhpcy5fc2NyaWJlQ2F0ZWdvcnldLCB7XHJcbiAgICAgIGRvbnRMb2dJbk51Y2xpZGU6IHRydWUsXHJcbiAgICB9KVxyXG4gICAgICAuZG8oY2hpbGQgPT4ge1xyXG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gcGVyZm9ybWFuY2VOb3coKSAtIHN0YXJ0VGltZTtcclxuICAgICAgICBpZiAoZHVyYXRpb24gPiBTUEFXTl9UT09fTE9OR19NUykge1xyXG4gICAgICAgICAgU2NyaWJlUHJvY2Vzcy5fZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgZ2V0TG9nZ2VyKCdTY3JpYmVQcm9jZXNzJykuZXJyb3IoXHJcbiAgICAgICAgICAgIGBEaXNhYmxpbmcgU2NyaWJlUHJvY2VzcyBiZWNhdXNlIHNwYXduIHRvb2sgdG9vIGxvbmcgKCR7ZHVyYXRpb259bXMpYCxcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICAvLyBEb24ndCByYWlzZSBhbnkgZXJyb3JzIGFuZCBhbGxvdyB0aGUgY3VycmVudCB3cml0ZSB0byBjb21wbGV0ZS5cclxuICAgICAgICAgIC8vIEhvd2V2ZXIsIHRoZSBuZXh0IHdyaXRlIHdpbGwgZmFpbCBkdWUgdG8gdGhlIF9lbmFibGVkIGNoZWNrLlxyXG4gICAgICAgICAgdGhpcy5qb2luKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNoaWxkLnN0ZGluLnNldERlZmF1bHRFbmNvZGluZygndXRmOCcpO1xyXG4gICAgICB9KVxyXG4gICAgICAuZmluYWxseSgoKSA9PiB7XHJcbiAgICAgICAgLy8gV2UgbWF5IGhhdmUgYWxyZWFkeSBzdGFydGVkIGEgbmV3IHByb2Nlc3MgaW4gdGhlIG1lYW50aW1lLlxyXG4gICAgICAgIGlmICh0aGlzLl9jaGlsZFByb21pc2UgPT09IGNoaWxkUHJvbWlzZSkge1xyXG4gICAgICAgICAgdGhpcy5fY2xlYXIoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICAgIC5wdWJsaXNoKCk7XHJcblxyXG4gICAgY29uc3QgY2hpbGRQcm9taXNlID0gKHRoaXMuX2NoaWxkUHJvbWlzZSA9IHByb2Nlc3NTdHJlYW1cclxuICAgICAgLmZpcnN0KClcclxuICAgICAgLnRvUHJvbWlzZSgpKTtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHByb2Nlc3NTdHJlYW0uY29ubmVjdCgpO1xyXG5cclxuICAgIGlmICh0aGlzLl9qb2luSW50ZXJ2YWwgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl9qb2luVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLl9qb2luVGltZXIgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuam9pbigpO1xyXG4gICAgICB9LCB0aGlzLl9qb2luSW50ZXJ2YWwpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjaGlsZFByb21pc2U7XHJcbiAgfVxyXG5cclxuICBfY2xlYXIoKSB7XHJcbiAgICB0aGlzLl9jaGlsZFByb21pc2UgPSBudWxsO1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgIGlmICh0aGlzLl9qb2luVGltZXIgIT0gbnVsbCkge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fam9pblRpbWVyKTtcclxuICAgICAgdGhpcy5fam9pblRpbWVyID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBfX3Rlc3RfXyA9IHtcclxuICBzZXRTY3JpYmVDYXRDb21tYW5kKG5ld0NvbW1hbmQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBvcmlnaW5hbENvbW1hbmQgPSBTQ1JJQkVfQ0FUX0NPTU1BTkQ7XHJcbiAgICBTQ1JJQkVfQ0FUX0NPTU1BTkQgPSBuZXdDb21tYW5kO1xyXG4gICAgcmV0dXJuIG9yaWdpbmFsQ29tbWFuZDtcclxuICB9LFxyXG59O1xyXG5cclxuZnVuY3Rpb24gd3JpdGVUb1N0cmVhbShzdHJlYW0sIG1lc3NhZ2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgLy8gQWNjb3JkaW5nIHRvIGBzdHJlYW0ud3JpdGUoKWAgW2RvY3NdWzFdLCBcIklmIGFuIGVycm9yIG9jY3VycywgdGhlXHJcbiAgICAvLyBjYWxsYmFjayBtYXkgb3IgbWF5IG5vdCBiZSBjYWxsZWQgd2l0aCB0aGUgZXJyb3IgYXMgaXRzIGZpcnN0IGFyZ3VtZW50LlxyXG4gICAgLy8gVG8gcmVsaWFibHkgZGV0ZWN0IHdyaXRlIGVycm9ycywgYWRkIGEgbGlzdGVuZXIgZm9yIHRoZSAnZXJyb3InIGV2ZW50LlwiXHJcbiAgICAvL1xyXG4gICAgLy8gWzFdOiBodHRwczovL25vZGVqcy5vcmcvYXBpL3N0cmVhbS5odG1sI3N0cmVhbV93cml0YWJsZV93cml0ZV9jaHVua19lbmNvZGluZ19jYWxsYmFja1xyXG4gICAgY29uc3QgaGFuZGxlRXJyb3IgPSBlcnIgPT4ge1xyXG4gICAgICByZWplY3QoZXJyKTtcclxuICAgICAgc3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIGhhbmRsZUVycm9yKTtcclxuICAgIH07XHJcbiAgICBzdHJlYW0ub25jZSgnZXJyb3InLCBoYW5kbGVFcnJvcik7XHJcbiAgICBzdHJlYW0ud3JpdGUobWVzc2FnZSwgZXJyID0+IHtcclxuICAgICAgaWYgKGVyciAhPSBudWxsKSB7XHJcbiAgICAgICAgaGFuZGxlRXJyb3IoZXJyKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgc3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIGhhbmRsZUVycm9yKTtcclxuICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgfSk7XHJcbiAgfSk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1NjcmliZVByb2Nlc3MuanMiXSwibmFtZXMiOlsiREVGQVVMVF9KT0lOX1RJTUVPVVQiLCJTQ1JJQkVfQ0FUX0NPTU1BTkQiLCJERUZBVUxUX0pPSU5fSU5URVJWQUwiLCJwcm9jZXNzIiwicGxhdGZvcm0iLCJTUEFXTl9UT09fTE9OR19NUyIsIlNjcmliZVByb2Nlc3MiLCJjb25zdHJ1Y3RvciIsInNjcmliZUNhdGVnb3J5Iiwiam9pbkludGVydmFsIiwiX3NjcmliZUNhdGVnb3J5IiwiX2NoaWxkUHJvbWlzZSIsIl9zdWJzY3JpcHRpb24iLCJfam9pblRpbWVyIiwiX2pvaW5JbnRlcnZhbCIsIl9nZXRDaGlsZFByb2Nlc3MiLCJpc0VuYWJsZWQiLCJfZW5hYmxlZCIsIndyaXRlIiwibWVzc2FnZSIsImNoaWxkIiwid3JpdGVUb1N0cmVhbSIsInN0ZGluIiwib3MiLCJFT0wiLCJlcnIiLCJlcnJvciIsImpvaW4iLCJ0aW1lb3V0IiwiX2NsZWFyIiwid2FpdEZvckV4aXQiLCJQcm9taXNlIiwicmVzb2x2ZSIsIm9uIiwic2V0VGltZW91dCIsInVuc3Vic2NyaWJlIiwib25jZSIsImVuZCIsInN0YXJ0VGltZSIsInByb2Nlc3NTdHJlYW0iLCJkb250TG9nSW5OdWNsaWRlIiwiZG8iLCJkdXJhdGlvbiIsInNldERlZmF1bHRFbmNvZGluZyIsImZpbmFsbHkiLCJjaGlsZFByb21pc2UiLCJwdWJsaXNoIiwiZmlyc3QiLCJ0b1Byb21pc2UiLCJjb25uZWN0IiwiY2xlYXJUaW1lb3V0IiwiaXNTY3JpYmVDYXRPblBhdGgiLCJ3aGljaENtZCIsImdrRW5hYmxlZCIsImFsbCIsIl9fdGVzdF9fIiwic2V0U2NyaWJlQ2F0Q29tbWFuZCIsIm5ld0NvbW1hbmQiLCJvcmlnaW5hbENvbW1hbmQiLCJzdHJlYW0iLCJyZWplY3QiLCJoYW5kbGVFcnJvciIsInJlbW92ZUxpc3RlbmVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7QUFsQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQVVBLE1BQU1BLG9CQUFvQixHQUFHLElBQTdCO0FBQ0EsSUFBSUMsa0JBQWtCLEdBQUcsWUFBekIsQyxDQUVBO0FBQ0E7QUFDQTs7QUFDQSxNQUFNQyxxQkFBcUIsR0FBR0MsT0FBTyxDQUFDQyxRQUFSLEtBQXFCLFFBQXJCLEdBQWdDLEtBQWhDLEdBQXdDLElBQXRFLEMsQ0FFQTtBQUNBO0FBQ0E7O0FBQ0EsTUFBTUMsaUJBQWlCLEdBQUcsSUFBMUI7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBQ2UsTUFBTUMsYUFBTixDQUFvQjtBQVNqQ0MsRUFBQUEsV0FBVyxDQUNUQyxjQURTLEVBRVRDLFlBQXFCLEdBQUdQLHFCQUZmLEVBR1Q7QUFBQSxTQVRGUSxlQVNFO0FBQUEsU0FSRkMsYUFRRTtBQUFBLFNBUEZDLGFBT0U7QUFBQSxTQU5GQyxVQU1FO0FBQUEsU0FMRkMsYUFLRTtBQUNBLFNBQUtKLGVBQUwsR0FBdUJGLGNBQXZCO0FBQ0EsU0FBS00sYUFBTCxHQUFxQkwsWUFBckI7O0FBQ0EsU0FBS00sZ0JBQUw7QUFDRDtBQUVEO0FBQ0Y7QUFDQTs7O0FBV2tCLFNBQVRDLFNBQVMsR0FBWTtBQUMxQixXQUFPVixhQUFhLENBQUNXLFFBQXJCO0FBQ0Q7QUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBOzs7QUFDYSxRQUFMQyxLQUFLLENBQUNDLE9BQUQsRUFBb0M7QUFDN0MsUUFBSSxDQUFDYixhQUFhLENBQUNXLFFBQW5CLEVBQTZCO0FBQzNCLGFBQU8sS0FBUDtBQUNEOztBQUNELFFBQUlHLEtBQUo7O0FBQ0EsUUFBSTtBQUNGQSxNQUFBQSxLQUFLLEdBQUcsTUFBTSxLQUFLTCxnQkFBTCxFQUFkO0FBQ0EsWUFBTU0sYUFBYSxDQUFDRCxLQUFLLENBQUNFLEtBQVAsRUFBZSxHQUFFSCxPQUFRLEdBQUVJLFlBQUdDLEdBQUksRUFBbEMsQ0FBbkI7QUFDRCxLQUhELENBR0UsT0FBT0MsR0FBUCxFQUFZO0FBQ1puQixNQUFBQSxhQUFhLENBQUNXLFFBQWQsR0FBeUIsS0FBekIsQ0FEWSxDQUVaO0FBQ0E7O0FBQ0EsNkJBQVUsZUFBVixFQUEyQlMsS0FBM0IsQ0FDRSx1Q0FERixFQUVFRCxHQUZGO0FBSUEsYUFBTyxLQUFQO0FBQ0Q7O0FBRUQsV0FBTyxJQUFQO0FBQ0Q7QUFFRDtBQUNGO0FBQ0E7QUFDQTtBQUNBOzs7QUFDWSxRQUFKRSxJQUFJLENBQUNDLE9BQWUsR0FBRzVCLG9CQUFuQixFQUF3RDtBQUNoRSxVQUFNO0FBQUNXLE1BQUFBLGFBQUQ7QUFBZ0JDLE1BQUFBO0FBQWhCLFFBQWlDLElBQXZDOztBQUNBLFFBQUlELGFBQWEsSUFBSSxJQUFqQixJQUF5QkMsYUFBYSxJQUFJLElBQTlDLEVBQW9EO0FBQ2xEO0FBQ0QsS0FKK0QsQ0FNaEU7QUFDQTtBQUNBOzs7QUFDQSxTQUFLaUIsTUFBTDs7QUFFQSxVQUFNVCxLQUFLLEdBQUcsTUFBTVQsYUFBcEI7QUFDQSxVQUFNO0FBQUNXLE1BQUFBO0FBQUQsUUFBVUYsS0FBaEI7QUFDQSxVQUFNVSxXQUFXLEdBQUcsSUFBSUMsT0FBSixDQUFZQyxPQUFPLElBQUk7QUFDekNaLE1BQUFBLEtBQUssQ0FBQ2EsRUFBTixDQUFTLE1BQVQsRUFBaUIsTUFBTTtBQUNyQkQsUUFBQUEsT0FBTztBQUNSLE9BRkQ7QUFHQUUsTUFBQUEsVUFBVSxDQUFDLE1BQU07QUFDZnRCLFFBQUFBLGFBQWEsQ0FBQ3VCLFdBQWQ7O0FBQ0FILFFBQUFBLE9BQU87QUFDUixPQUhTLEVBR1BKLE9BSE8sQ0FBVjtBQUlELEtBUm1CLENBQXBCLENBYmdFLENBc0JoRTs7QUFDQSxRQUFJLENBQUNOLEtBQUssQ0FBQ0osS0FBTixDQUFZSyxZQUFHQyxHQUFmLENBQUwsRUFBMEI7QUFDeEJGLE1BQUFBLEtBQUssQ0FBQ2MsSUFBTixDQUFXLE9BQVgsRUFBb0IsTUFBTWQsS0FBSyxDQUFDZSxHQUFOLEVBQTFCO0FBQ0QsS0FGRCxNQUVPO0FBQ0xmLE1BQUFBLEtBQUssQ0FBQ2UsR0FBTjtBQUNEOztBQUNELFdBQU9QLFdBQVA7QUFDRDs7QUFFRGYsRUFBQUEsZ0JBQWdCLEdBQXdDO0FBQ3RELFFBQUksS0FBS0osYUFBVCxFQUF3QjtBQUN0QixhQUFPLEtBQUtBLGFBQVo7QUFDRCxLQUhxRCxDQUt0RDtBQUNBOzs7QUFDQSxVQUFNMkIsU0FBUyxHQUFHLDhCQUFsQjtBQUNBLFVBQU1DLGFBQWEsR0FBRyxvQkFBTXRDLGtCQUFOLEVBQTBCLENBQUMsS0FBS1MsZUFBTixDQUExQixFQUFrRDtBQUN0RThCLE1BQUFBLGdCQUFnQixFQUFFO0FBRG9ELEtBQWxELEVBR25CQyxFQUhtQixDQUdoQnJCLEtBQUssSUFBSTtBQUNYLFlBQU1zQixRQUFRLEdBQUcsaUNBQW1CSixTQUFwQzs7QUFDQSxVQUFJSSxRQUFRLEdBQUdyQyxpQkFBZixFQUFrQztBQUNoQ0MsUUFBQUEsYUFBYSxDQUFDVyxRQUFkLEdBQXlCLEtBQXpCO0FBQ0EsK0JBQVUsZUFBVixFQUEyQlMsS0FBM0IsQ0FDRyx3REFBdURnQixRQUFTLEtBRG5FLEVBRmdDLENBS2hDO0FBQ0E7O0FBQ0EsYUFBS2YsSUFBTDtBQUNEOztBQUNEUCxNQUFBQSxLQUFLLENBQUNFLEtBQU4sQ0FBWXFCLGtCQUFaLENBQStCLE1BQS9CO0FBQ0QsS0FmbUIsRUFnQm5CQyxPQWhCbUIsQ0FnQlgsTUFBTTtBQUNiO0FBQ0EsVUFBSSxLQUFLakMsYUFBTCxLQUF1QmtDLFlBQTNCLEVBQXlDO0FBQ3ZDLGFBQUtoQixNQUFMO0FBQ0Q7QUFDRixLQXJCbUIsRUFzQm5CaUIsT0F0Qm1CLEVBQXRCO0FBd0JBLFVBQU1ELFlBQVksR0FBSSxLQUFLbEMsYUFBTCxHQUFxQjRCLGFBQWEsQ0FDckRRLEtBRHdDLEdBRXhDQyxTQUZ3QyxFQUEzQztBQUdBLFNBQUtwQyxhQUFMLEdBQXFCMkIsYUFBYSxDQUFDVSxPQUFkLEVBQXJCOztBQUVBLFFBQUksS0FBS25DLGFBQUwsSUFBc0IsSUFBMUIsRUFBZ0M7QUFDOUIsV0FBS0QsVUFBTCxHQUFrQnFCLFVBQVUsQ0FBQyxNQUFNO0FBQ2pDLGFBQUtyQixVQUFMLEdBQWtCLElBQWxCO0FBQ0EsYUFBS2MsSUFBTDtBQUNELE9BSDJCLEVBR3pCLEtBQUtiLGFBSG9CLENBQTVCO0FBSUQ7O0FBRUQsV0FBTytCLFlBQVA7QUFDRDs7QUFFRGhCLEVBQUFBLE1BQU0sR0FBRztBQUNQLFNBQUtsQixhQUFMLEdBQXFCLElBQXJCO0FBQ0EsU0FBS0MsYUFBTCxHQUFxQixJQUFyQjs7QUFDQSxRQUFJLEtBQUtDLFVBQUwsSUFBbUIsSUFBdkIsRUFBNkI7QUFDM0JxQyxNQUFBQSxZQUFZLENBQUMsS0FBS3JDLFVBQU4sQ0FBWjtBQUNBLFdBQUtBLFVBQUwsR0FBa0IsSUFBbEI7QUFDRDtBQUNGOztBQXhKZ0M7OztBQUFkUCxhLENBQ1pXLFEsR0FBb0IsSTtBQURSWCxhLENBcUJaNkMsaUIsR0FBNEMsbUJBQUssWUFBWTtBQUNsRSxRQUFNLENBQUNDLFFBQUQsRUFBV0MsU0FBWCxJQUF3QixNQUFNdEIsT0FBTyxDQUFDdUIsR0FBUixDQUFZLENBQzlDLG9CQUFNckQsa0JBQU4sQ0FEOEMsRUFFOUNFLE9BQU8sQ0FBQ0MsUUFBUixLQUFxQixRQUFyQixHQUNJLHVCQUFTLHNCQUFULENBREosR0FFSTJCLE9BQU8sQ0FBQ0MsT0FBUixDQUFnQixJQUFoQixDQUowQyxDQUFaLENBQXBDO0FBTUEsU0FBT29CLFFBQVEsSUFBSSxJQUFaLElBQW9CQyxTQUEzQjtBQUNELENBUmtELEM7QUFzSTlDLE1BQU1FLFFBQVEsR0FBRztBQUN0QkMsRUFBQUEsbUJBQW1CLENBQUNDLFVBQUQsRUFBNkI7QUFDOUMsVUFBTUMsZUFBZSxHQUFHekQsa0JBQXhCO0FBQ0FBLElBQUFBLGtCQUFrQixHQUFHd0QsVUFBckI7QUFDQSxXQUFPQyxlQUFQO0FBQ0Q7O0FBTHFCLENBQWpCOzs7QUFRUCxTQUFTckMsYUFBVCxDQUF1QnNDLE1BQXZCLEVBQStCeEMsT0FBL0IsRUFBdUQ7QUFDckQsU0FBTyxJQUFJWSxPQUFKLENBQVksQ0FBQ0MsT0FBRCxFQUFVNEIsTUFBVixLQUFxQjtBQUN0QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsVUFBTUMsV0FBVyxHQUFHcEMsR0FBRyxJQUFJO0FBQ3pCbUMsTUFBQUEsTUFBTSxDQUFDbkMsR0FBRCxDQUFOO0FBQ0FrQyxNQUFBQSxNQUFNLENBQUNHLGNBQVAsQ0FBc0IsT0FBdEIsRUFBK0JELFdBQS9CO0FBQ0QsS0FIRDs7QUFJQUYsSUFBQUEsTUFBTSxDQUFDdkIsSUFBUCxDQUFZLE9BQVosRUFBcUJ5QixXQUFyQjtBQUNBRixJQUFBQSxNQUFNLENBQUN6QyxLQUFQLENBQWFDLE9BQWIsRUFBc0JNLEdBQUcsSUFBSTtBQUMzQixVQUFJQSxHQUFHLElBQUksSUFBWCxFQUFpQjtBQUNmb0MsUUFBQUEsV0FBVyxDQUFDcEMsR0FBRCxDQUFYO0FBQ0E7QUFDRDs7QUFDRGtDLE1BQUFBLE1BQU0sQ0FBQ0csY0FBUCxDQUFzQixPQUF0QixFQUErQkQsV0FBL0I7QUFDQTdCLE1BQUFBLE9BQU87QUFDUixLQVBEO0FBUUQsR0FuQk0sQ0FBUDtBQW9CRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge2dldExvZ2dlcn0gZnJvbSAnbG9nNGpzJztcclxuaW1wb3J0IHBlcmZvcm1hbmNlTm93IGZyb20gJy4vcGVyZm9ybWFuY2VOb3cnO1xyXG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xyXG5pbXBvcnQge3NwYXdufSBmcm9tICcuL3Byb2Nlc3MnO1xyXG5pbXBvcnQgd2hpY2ggZnJvbSAnLi93aGljaCc7XHJcbmltcG9ydCBvbmNlIGZyb20gJy4vb25jZSc7XHJcbmltcG9ydCBwYXNzZXNHSyBmcm9tICcuL3Bhc3Nlc0dLJztcclxuXHJcbmNvbnN0IERFRkFVTFRfSk9JTl9USU1FT1VUID0gNTAwMDtcclxubGV0IFNDUklCRV9DQVRfQ09NTUFORCA9ICdzY3JpYmVfY2F0JztcclxuXHJcbi8vIE9uIE1hYyBPUywgYHNjcmliZV9jYXRgIGlzbid0IHF1aXRlIHRoZSBzYW1lIGFzIHRoZSBzZXJ2ZXItc2lkZSBvbmU6XHJcbi8vIGl0IG9ubHkgZHVtcHMgaXRzIGxvZ3Mgb24gZXhpdC4gVG8gbWFrZSBzdXJlIHRoYXQgbG9ncyBhcmUgZGVsaXZlcmVkXHJcbi8vIGluIGEgdGltZWx5IG1hbm5lciwgd2UnbGwgcGVyaW9kaWNhbGx5IGZvcmNlLWtpbGwgdGhlIHByb2Nlc3MuXHJcbmNvbnN0IERFRkFVTFRfSk9JTl9JTlRFUlZBTCA9IHByb2Nlc3MucGxhdGZvcm0gPT09ICdkYXJ3aW4nID8gNjAwMDAgOiBudWxsO1xyXG5cclxuLy8gSWYgc3Bhd25pbmcgdGhlIFNjcmliZSBwcm9jZXNzIHRha2VzIHRoaXMgbG9uZywgZGlzYWJsZSBpdC5cclxuLy8gTm9kZSBzb21ldGltZXMgcnVucyBpbnRvIHN0cmFuZ2UgaXNzdWVzIHdoZXJlIHNwYXduaW5nKCkgc3RhcnRzIHRvIGJsb2NrLlxyXG4vLyBodHRwczovL2dpdGh1Yi5jb20vbm9kZWpzL25vZGUvaXNzdWVzLzE0OTE3XHJcbmNvbnN0IFNQQVdOX1RPT19MT05HX01TID0gMjAwMDtcclxuXHJcbi8qKlxyXG4gKiBBIHdyYXBwZXIgb2YgYHNjcmliZV9jYXRgIChodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2thcmNoaXZlL3NjcmliZS9ibG9iL21hc3Rlci9leGFtcGxlcy9zY3JpYmVfY2F0KVxyXG4gKiBjb21tYW5kLiBVc2VyIGNvdWxkIGNhbGwgYG5ldyBTY3JpYmVQcm9jZXNzKCRzY3JpYmVDYXRlZ29yeU5hbWUpYCB0byBjcmVhdGUgYSBwcm9jZXNzIGFuZCB0aGVuXHJcbiAqIGNhbGwgYHNjcmliZVByb2Nlc3Mud3JpdGUoJG9iamVjdClgIHRvIHNhdmUgYW4gSlNPTiBzY2hlbWFlZCBPYmplY3QgaW50byBzY3JpYmUgY2F0ZWdvcnkuXHJcbiAqIEl0IHdpbGwgYWxzbyByZWNvdmVyIGZyb20gYHNjcmliZV9jYXRgIGZhaWx1cmUgYXV0b21hdGljYWxseS5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNjcmliZVByb2Nlc3Mge1xyXG4gIHN0YXRpYyBfZW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gIF9zY3JpYmVDYXRlZ29yeTogc3RyaW5nO1xyXG4gIF9jaGlsZFByb21pc2U6ID9Qcm9taXNlPGNoaWxkX3Byb2Nlc3MkQ2hpbGRQcm9jZXNzPjtcclxuICBfc3Vic2NyaXB0aW9uOiA/cnhqcyRJU3Vic2NyaXB0aW9uO1xyXG4gIF9qb2luVGltZXI6ID9UaW1lb3V0SUQ7XHJcbiAgX2pvaW5JbnRlcnZhbDogP251bWJlcjtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBzY3JpYmVDYXRlZ29yeTogc3RyaW5nLFxyXG4gICAgam9pbkludGVydmFsOiA/bnVtYmVyID0gREVGQVVMVF9KT0lOX0lOVEVSVkFMLFxyXG4gICkge1xyXG4gICAgdGhpcy5fc2NyaWJlQ2F0ZWdvcnkgPSBzY3JpYmVDYXRlZ29yeTtcclxuICAgIHRoaXMuX2pvaW5JbnRlcnZhbCA9IGpvaW5JbnRlcnZhbDtcclxuICAgIHRoaXMuX2dldENoaWxkUHJvY2VzcygpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2hlY2sgaWYgYHNjcmliZV9jYXRgIGV4aXN0cyBpbiBQQVRILlxyXG4gICAqL1xyXG4gIHN0YXRpYyBpc1NjcmliZUNhdE9uUGF0aDogKCkgPT4gUHJvbWlzZTxib29sZWFuPiA9IG9uY2UoYXN5bmMgKCkgPT4ge1xyXG4gICAgY29uc3QgW3doaWNoQ21kLCBna0VuYWJsZWRdID0gYXdhaXQgUHJvbWlzZS5hbGwoW1xyXG4gICAgICB3aGljaChTQ1JJQkVfQ0FUX0NPTU1BTkQpLFxyXG4gICAgICBwcm9jZXNzLnBsYXRmb3JtID09PSAnZGFyd2luJ1xyXG4gICAgICAgID8gcGFzc2VzR0soJ251Y2xpZGVfc2NyaWJlX21hY29zJylcclxuICAgICAgICA6IFByb21pc2UucmVzb2x2ZSh0cnVlKSxcclxuICAgIF0pO1xyXG4gICAgcmV0dXJuIHdoaWNoQ21kICE9IG51bGwgJiYgZ2tFbmFibGVkO1xyXG4gIH0pO1xyXG5cclxuICBzdGF0aWMgaXNFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIFNjcmliZVByb2Nlc3MuX2VuYWJsZWQ7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXcml0ZSBhIHN0cmluZyB0byBhIFNjcmliZSBjYXRlZ29yeS5cclxuICAgKiBFbnN1cmUgbmV3bGluZXMgYXJlIHByb3Blcmx5IGVzY2FwZWQuXHJcbiAgICogUmV0dXJucyBmYWxzZSBpZiBzb21ldGhpbmcgaXMgd3Jvbmcgd2l0aCB0aGUgU2NyaWJlIHByb2Nlc3MgKHVzZSBhIGZhbGxiYWNrIGluc3RlYWQuKVxyXG4gICAqL1xyXG4gIGFzeW5jIHdyaXRlKG1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xyXG4gICAgaWYgKCFTY3JpYmVQcm9jZXNzLl9lbmFibGVkKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIGxldCBjaGlsZDtcclxuICAgIHRyeSB7XHJcbiAgICAgIGNoaWxkID0gYXdhaXQgdGhpcy5fZ2V0Q2hpbGRQcm9jZXNzKCk7XHJcbiAgICAgIGF3YWl0IHdyaXRlVG9TdHJlYW0oY2hpbGQuc3RkaW4sIGAke21lc3NhZ2V9JHtvcy5FT0x9YCk7XHJcbiAgICB9IGNhdGNoIChlcnIpIHtcclxuICAgICAgU2NyaWJlUHJvY2Vzcy5fZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICAvLyBOb3RlOiBMb2dnaW5nIGVycm9ycyBpcyBwb3RlbnRpYWxseSByZWN1cnNpdmUsIHNpbmNlIHRoZXkgZ28gdGhyb3VnaCBTY3JpYmUhXHJcbiAgICAgIC8vIEl0J3MgaW1wb3J0YW50IHRoYXQgd2Ugc2V0IF9lbmFibGVkIGJlZm9yZSBsb2dnaW5nIGVycm9ycyBpbiB0aGlzIGZpbGUuXHJcbiAgICAgIGdldExvZ2dlcignU2NyaWJlUHJvY2VzcycpLmVycm9yKFxyXG4gICAgICAgICdEaXNhYmxpbmcgU2NyaWJlUHJvY2VzcyBkdWUgdG8gZXJyb3I6JyxcclxuICAgICAgICBlcnIsXHJcbiAgICAgICk7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gdHJ1ZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdhaXRzIGZvciB0aGUgcmVtYWluaW5nIG1lc3NhZ2VzIHRvIGJlIHdyaXR0ZW4sIHRoZW4gY2xvc2VzIHRoZSB3cml0ZSBzdHJlYW0uIFJlc29sdmVzIG9uY2UgdGhlXHJcbiAgICogcHJvY2VzcyBoYXMgZXhpdGVkLiBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgd2hlbiB0aGUgc2VydmVyIHNodXRzIGRvd24gaW4gb3JkZXIgdG8gZ3VhcmFudGVlIHdlXHJcbiAgICogY2FwdHVyZSBsb2dnaW5nIGR1cmluZyBzaHV0ZG93bi5cclxuICAgKi9cclxuICBhc3luYyBqb2luKHRpbWVvdXQ6IG51bWJlciA9IERFRkFVTFRfSk9JTl9USU1FT1VUKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBjb25zdCB7X2NoaWxkUHJvbWlzZSwgX3N1YnNjcmlwdGlvbn0gPSB0aGlzO1xyXG4gICAgaWYgKF9jaGlsZFByb21pc2UgPT0gbnVsbCB8fCBfc3Vic2NyaXB0aW9uID09IG51bGwpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIGpvaW4oKSByZW5kZXJzIHRoZSBleGlzdGluZyBwcm9jZXNzIHVudXNhYmxlLlxyXG4gICAgLy8gVGhlIG5leHQgY2FsbCB0byB3cml0ZSgpIHNob3VsZCBjcmVhdGUgYSBuZXcgcHJvY2Vzcywgc28gY2xlYXIgb3V0IHRoZSByZWZlcmVuY2VzLlxyXG4gICAgLy8gTm90ZSB0aGF0IHdlIHN0b3JlZCB0aGVtIGluIGxvY2FsIHZhcmlhYmxlcyBhbHJlYWR5IGFib3ZlLlxyXG4gICAgdGhpcy5fY2xlYXIoKTtcclxuXHJcbiAgICBjb25zdCBjaGlsZCA9IGF3YWl0IF9jaGlsZFByb21pc2U7XHJcbiAgICBjb25zdCB7c3RkaW59ID0gY2hpbGQ7XHJcbiAgICBjb25zdCB3YWl0Rm9yRXhpdCA9IG5ldyBQcm9taXNlKHJlc29sdmUgPT4ge1xyXG4gICAgICBjaGlsZC5vbignZXhpdCcsICgpID0+IHtcclxuICAgICAgICByZXNvbHZlKCk7XHJcbiAgICAgIH0pO1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBfc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgICB9LCB0aW1lb3V0KTtcclxuICAgIH0pO1xyXG4gICAgLy8gTWFrZSBzdXJlIHN0ZGluIGhhcyBkcmFpbmVkIGJlZm9yZSBlbmRpbmcgaXQuXHJcbiAgICBpZiAoIXN0ZGluLndyaXRlKG9zLkVPTCkpIHtcclxuICAgICAgc3RkaW4ub25jZSgnZHJhaW4nLCAoKSA9PiBzdGRpbi5lbmQoKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBzdGRpbi5lbmQoKTtcclxuICAgIH1cclxuICAgIHJldHVybiB3YWl0Rm9yRXhpdDtcclxuICB9XHJcblxyXG4gIF9nZXRDaGlsZFByb2Nlc3MoKTogUHJvbWlzZTxjaGlsZF9wcm9jZXNzJENoaWxkUHJvY2Vzcz4ge1xyXG4gICAgaWYgKHRoaXMuX2NoaWxkUHJvbWlzZSkge1xyXG4gICAgICByZXR1cm4gdGhpcy5fY2hpbGRQcm9taXNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE9idGFpbiBhIHByb21pc2UgdG8gZ2V0IHRoZSBjaGlsZCBwcm9jZXNzLCBidXQgZG9uJ3Qgc3RhcnQgaXQgeWV0LlxyXG4gICAgLy8gdGhpcy5fc3Vic2NyaXB0aW9uIHdpbGwgaGF2ZSBjb250cm9sIG92ZXIgc3RhcnRpbmcgLyBzdG9wcGluZyB0aGUgcHJvY2Vzcy5cclxuICAgIGNvbnN0IHN0YXJ0VGltZSA9IHBlcmZvcm1hbmNlTm93KCk7XHJcbiAgICBjb25zdCBwcm9jZXNzU3RyZWFtID0gc3Bhd24oU0NSSUJFX0NBVF9DT01NQU5ELCBbdGhpcy5fc2NyaWJlQ2F0ZWdvcnldLCB7XHJcbiAgICAgIGRvbnRMb2dJbk51Y2xpZGU6IHRydWUsXHJcbiAgICB9KVxyXG4gICAgICAuZG8oY2hpbGQgPT4ge1xyXG4gICAgICAgIGNvbnN0IGR1cmF0aW9uID0gcGVyZm9ybWFuY2VOb3coKSAtIHN0YXJ0VGltZTtcclxuICAgICAgICBpZiAoZHVyYXRpb24gPiBTUEFXTl9UT09fTE9OR19NUykge1xyXG4gICAgICAgICAgU2NyaWJlUHJvY2Vzcy5fZW5hYmxlZCA9IGZhbHNlO1xyXG4gICAgICAgICAgZ2V0TG9nZ2VyKCdTY3JpYmVQcm9jZXNzJykuZXJyb3IoXHJcbiAgICAgICAgICAgIGBEaXNhYmxpbmcgU2NyaWJlUHJvY2VzcyBiZWNhdXNlIHNwYXduIHRvb2sgdG9vIGxvbmcgKCR7ZHVyYXRpb259bXMpYCxcclxuICAgICAgICAgICk7XHJcbiAgICAgICAgICAvLyBEb24ndCByYWlzZSBhbnkgZXJyb3JzIGFuZCBhbGxvdyB0aGUgY3VycmVudCB3cml0ZSB0byBjb21wbGV0ZS5cclxuICAgICAgICAgIC8vIEhvd2V2ZXIsIHRoZSBuZXh0IHdyaXRlIHdpbGwgZmFpbCBkdWUgdG8gdGhlIF9lbmFibGVkIGNoZWNrLlxyXG4gICAgICAgICAgdGhpcy5qb2luKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNoaWxkLnN0ZGluLnNldERlZmF1bHRFbmNvZGluZygndXRmOCcpO1xyXG4gICAgICB9KVxyXG4gICAgICAuZmluYWxseSgoKSA9PiB7XHJcbiAgICAgICAgLy8gV2UgbWF5IGhhdmUgYWxyZWFkeSBzdGFydGVkIGEgbmV3IHByb2Nlc3MgaW4gdGhlIG1lYW50aW1lLlxyXG4gICAgICAgIGlmICh0aGlzLl9jaGlsZFByb21pc2UgPT09IGNoaWxkUHJvbWlzZSkge1xyXG4gICAgICAgICAgdGhpcy5fY2xlYXIoKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICAgIC5wdWJsaXNoKCk7XHJcblxyXG4gICAgY29uc3QgY2hpbGRQcm9taXNlID0gKHRoaXMuX2NoaWxkUHJvbWlzZSA9IHByb2Nlc3NTdHJlYW1cclxuICAgICAgLmZpcnN0KClcclxuICAgICAgLnRvUHJvbWlzZSgpKTtcclxuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHByb2Nlc3NTdHJlYW0uY29ubmVjdCgpO1xyXG5cclxuICAgIGlmICh0aGlzLl9qb2luSW50ZXJ2YWwgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl9qb2luVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLl9qb2luVGltZXIgPSBudWxsO1xyXG4gICAgICAgIHRoaXMuam9pbigpO1xyXG4gICAgICB9LCB0aGlzLl9qb2luSW50ZXJ2YWwpO1xyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBjaGlsZFByb21pc2U7XHJcbiAgfVxyXG5cclxuICBfY2xlYXIoKSB7XHJcbiAgICB0aGlzLl9jaGlsZFByb21pc2UgPSBudWxsO1xyXG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gbnVsbDtcclxuICAgIGlmICh0aGlzLl9qb2luVGltZXIgIT0gbnVsbCkge1xyXG4gICAgICBjbGVhclRpbWVvdXQodGhpcy5fam9pblRpbWVyKTtcclxuICAgICAgdGhpcy5fam9pblRpbWVyID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBjb25zdCBfX3Rlc3RfXyA9IHtcclxuICBzZXRTY3JpYmVDYXRDb21tYW5kKG5ld0NvbW1hbmQ6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBvcmlnaW5hbENvbW1hbmQgPSBTQ1JJQkVfQ0FUX0NPTU1BTkQ7XHJcbiAgICBTQ1JJQkVfQ0FUX0NPTU1BTkQgPSBuZXdDb21tYW5kO1xyXG4gICAgcmV0dXJuIG9yaWdpbmFsQ29tbWFuZDtcclxuICB9LFxyXG59O1xyXG5cclxuZnVuY3Rpb24gd3JpdGVUb1N0cmVhbShzdHJlYW0sIG1lc3NhZ2UpOiBQcm9taXNlPHZvaWQ+IHtcclxuICByZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgLy8gQWNjb3JkaW5nIHRvIGBzdHJlYW0ud3JpdGUoKWAgW2RvY3NdWzFdLCBcIklmIGFuIGVycm9yIG9jY3VycywgdGhlXHJcbiAgICAvLyBjYWxsYmFjayBtYXkgb3IgbWF5IG5vdCBiZSBjYWxsZWQgd2l0aCB0aGUgZXJyb3IgYXMgaXRzIGZpcnN0IGFyZ3VtZW50LlxyXG4gICAgLy8gVG8gcmVsaWFibHkgZGV0ZWN0IHdyaXRlIGVycm9ycywgYWRkIGEgbGlzdGVuZXIgZm9yIHRoZSAnZXJyb3InIGV2ZW50LlwiXHJcbiAgICAvL1xyXG4gICAgLy8gWzFdOiBodHRwczovL25vZGVqcy5vcmcvYXBpL3N0cmVhbS5odG1sI3N0cmVhbV93cml0YWJsZV93cml0ZV9jaHVua19lbmNvZGluZ19jYWxsYmFja1xyXG4gICAgY29uc3QgaGFuZGxlRXJyb3IgPSBlcnIgPT4ge1xyXG4gICAgICByZWplY3QoZXJyKTtcclxuICAgICAgc3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIGhhbmRsZUVycm9yKTtcclxuICAgIH07XHJcbiAgICBzdHJlYW0ub25jZSgnZXJyb3InLCBoYW5kbGVFcnJvcik7XHJcbiAgICBzdHJlYW0ud3JpdGUobWVzc2FnZSwgZXJyID0+IHtcclxuICAgICAgaWYgKGVyciAhPSBudWxsKSB7XHJcbiAgICAgICAgaGFuZGxlRXJyb3IoZXJyKTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgc3RyZWFtLnJlbW92ZUxpc3RlbmVyKCdlcnJvcicsIGhhbmRsZUVycm9yKTtcclxuICAgICAgcmVzb2x2ZSgpO1xyXG4gICAgfSk7XHJcbiAgfSk7XHJcbn1cclxuIl19 |
@@ -39,2 +39,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3NlcnZlclBvcnQuanMiXSwibmFtZXMiOlsiZ2V0QXZhaWxhYmxlU2VydmVyUG9ydCIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0Iiwic2VydmVyIiwibmV0IiwiY3JlYXRlU2VydmVyIiwidW5yZWYiLCJvbiIsImxpc3RlbiIsInBvcnQiLCJhZGRyZXNzIiwiY2xvc2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7OztBQVpBOzs7Ozs7Ozs7OztBQWNPLGVBQWVBLHNCQUFmLEdBQXlEO0FBQzlELFNBQU8sSUFBSUMsT0FBSixDQUFZLENBQUNDLE9BQUQsRUFBVUMsTUFBVixLQUFxQjtBQUN0QyxVQUFNQyxNQUFNLEdBQUdDLGFBQUlDLFlBQUosRUFBZjs7QUFDQUYsSUFBQUEsTUFBTSxDQUFDRyxLQUFQO0FBQ0FILElBQUFBLE1BQU0sQ0FBQ0ksRUFBUCxDQUFVLE9BQVYsRUFBbUJMLE1BQW5CO0FBQ0FDLElBQUFBLE1BQU0sQ0FBQ0ssTUFBUCxDQUFjO0FBQUNDLE1BQUFBLElBQUksRUFBRTtBQUFQLEtBQWQsRUFBeUIsTUFBTTtBQUM3QixZQUFNQSxJQUFJLEdBQUdOLE1BQU0sQ0FBQ08sT0FBUCxHQUFpQkQsSUFBOUI7QUFDQU4sTUFBQUEsTUFBTSxDQUFDUSxLQUFQLENBQWEsTUFBTTtBQUNqQlYsUUFBQUEsT0FBTyxDQUFDUSxJQUFELENBQVA7QUFDRCxPQUZEO0FBR0QsS0FMRDtBQU1ELEdBVk0sQ0FBUDtBQVdEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBuZXQgZnJvbSAnbmV0JztcclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRBdmFpbGFibGVTZXJ2ZXJQb3J0KCk6IFByb21pc2U8bnVtYmVyPiB7XHJcbiAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgIGNvbnN0IHNlcnZlciA9IG5ldC5jcmVhdGVTZXJ2ZXIoKTtcclxuICAgIHNlcnZlci51bnJlZigpO1xyXG4gICAgc2VydmVyLm9uKCdlcnJvcicsIHJlamVjdCk7XHJcbiAgICBzZXJ2ZXIubGlzdGVuKHtwb3J0OiAwfSwgKCkgPT4ge1xyXG4gICAgICBjb25zdCBwb3J0ID0gc2VydmVyLmFkZHJlc3MoKS5wb3J0O1xyXG4gICAgICBzZXJ2ZXIuY2xvc2UoKCkgPT4ge1xyXG4gICAgICAgIHJlc29sdmUocG9ydCk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSk7XHJcbiAgfSk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3NlcnZlclBvcnQuanMiXSwibmFtZXMiOlsiZ2V0QXZhaWxhYmxlU2VydmVyUG9ydCIsIlByb21pc2UiLCJyZXNvbHZlIiwicmVqZWN0Iiwic2VydmVyIiwibmV0IiwiY3JlYXRlU2VydmVyIiwidW5yZWYiLCJvbiIsImxpc3RlbiIsInBvcnQiLCJhZGRyZXNzIiwiY2xvc2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFZQTs7OztBQVpBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFJTyxlQUFlQSxzQkFBZixHQUF5RDtBQUM5RCxTQUFPLElBQUlDLE9BQUosQ0FBWSxDQUFDQyxPQUFELEVBQVVDLE1BQVYsS0FBcUI7QUFDdEMsVUFBTUMsTUFBTSxHQUFHQyxhQUFJQyxZQUFKLEVBQWY7O0FBQ0FGLElBQUFBLE1BQU0sQ0FBQ0csS0FBUDtBQUNBSCxJQUFBQSxNQUFNLENBQUNJLEVBQVAsQ0FBVSxPQUFWLEVBQW1CTCxNQUFuQjtBQUNBQyxJQUFBQSxNQUFNLENBQUNLLE1BQVAsQ0FBYztBQUFDQyxNQUFBQSxJQUFJLEVBQUU7QUFBUCxLQUFkLEVBQXlCLE1BQU07QUFDN0IsWUFBTUEsSUFBSSxHQUFHTixNQUFNLENBQUNPLE9BQVAsR0FBaUJELElBQTlCO0FBQ0FOLE1BQUFBLE1BQU0sQ0FBQ1EsS0FBUCxDQUFhLE1BQU07QUFDakJWLFFBQUFBLE9BQU8sQ0FBQ1EsSUFBRCxDQUFQO0FBQ0QsT0FGRDtBQUdELEtBTEQ7QUFNRCxHQVZNLENBQVA7QUFXRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgbmV0IGZyb20gJ25ldCc7XHJcblxyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZ2V0QXZhaWxhYmxlU2VydmVyUG9ydCgpOiBQcm9taXNlPG51bWJlcj4ge1xyXG4gIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICBjb25zdCBzZXJ2ZXIgPSBuZXQuY3JlYXRlU2VydmVyKCk7XHJcbiAgICBzZXJ2ZXIudW5yZWYoKTtcclxuICAgIHNlcnZlci5vbignZXJyb3InLCByZWplY3QpO1xyXG4gICAgc2VydmVyLmxpc3Rlbih7cG9ydDogMH0sICgpID0+IHtcclxuICAgICAgY29uc3QgcG9ydCA9IHNlcnZlci5hZGRyZXNzKCkucG9ydDtcclxuICAgICAgc2VydmVyLmNsb3NlKCgpID0+IHtcclxuICAgICAgICByZXNvbHZlKHBvcnQpO1xyXG4gICAgICB9KTtcclxuICAgIH0pO1xyXG4gIH0pO1xyXG59XHJcbiJdfQ== |
@@ -98,2 +98,2 @@ "use strict"; | ||
exports.SimpleCache = SimpleCache; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1NpbXBsZUNhY2hlLmpzIl0sIm5hbWVzIjpbIlNpbXBsZUNhY2hlIiwiY29uc3RydWN0b3IiLCJjb25maWciLCJzdG9yZSIsIk1hcCIsIl9kaXNwb3NlIiwiX2tleUZhY3RvcnkiLCJkaXNwb3NlIiwia2V5RmFjdG9yeSIsImtleUFyZ3MiLCJfZ2V0VW5zYWZlIiwia2V5IiwiZ2V0IiwiZ2V0T3JDcmVhdGUiLCJmYWN0b3J5IiwiaGFzIiwidmFsdWUiLCJzZXQiLCJkZWxldGUiLCJfaWZIYXMiLCJjbGVhciIsImZvckVhY2giLCJpZkhhcyIsImNhbGxiYWNrIiwia2V5Rm9yQXJncyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBOzs7Ozs7Ozs7OztBQVlBO0FBQ0E7O0FBRUE7Ozs7QUFhTyxNQUFNQSxXQUFOLENBQThCO0FBS25DQyxFQUFBQSxXQUFXLENBQUNDLE1BQStCLEdBQUcsRUFBbkMsRUFBdUM7QUFBQSxTQUpsREMsS0FJa0QsR0FKM0IsSUFBSUMsR0FBSixFQUkyQjtBQUFBLFNBSGxEQyxRQUdrRDtBQUFBLFNBRmxEQyxXQUVrRDs7QUFDaEQsUUFBSUosTUFBTSxDQUFDSyxPQUFQLElBQWtCLElBQXRCLEVBQTRCO0FBQzFCLFdBQUtGLFFBQUwsR0FBZ0JILE1BQU0sQ0FBQ0ssT0FBdkI7QUFDRDs7QUFDRCxTQUFLRCxXQUFMLEdBQ0VKLE1BQU0sQ0FBQ00sVUFBUCxJQUFxQixJQUFyQixHQUNJTixNQUFNLENBQUNNLFVBRFgsR0FFS0MsT0FBRCxJQUFzQkEsT0FINUI7QUFJRDs7QUFFREMsRUFBQUEsVUFBVSxDQUFDQyxHQUFELEVBQWdCO0FBQ3hCLFdBQVMsS0FBS1IsS0FBTCxDQUFXUyxHQUFYLENBQWVELEdBQWYsQ0FBVDtBQUNEOztBQUVERSxFQUFBQSxXQUFXLENBQUNKLE9BQUQsRUFBbUJLLE9BQW5CLEVBQXNEO0FBQy9ELFVBQU1ILEdBQUcsR0FBRyxLQUFLTCxXQUFMLENBQWlCRyxPQUFqQixDQUFaOztBQUNBLFFBQUksS0FBS04sS0FBTCxDQUFXWSxHQUFYLENBQWVKLEdBQWYsQ0FBSixFQUF5QjtBQUN2QixhQUFPLEtBQUtELFVBQUwsQ0FBZ0JDLEdBQWhCLENBQVA7QUFDRDs7QUFDRCxVQUFNSyxLQUFLLEdBQUdGLE9BQU8sQ0FBQ0wsT0FBRCxFQUFVRSxHQUFWLENBQXJCO0FBQ0EsU0FBS1IsS0FBTCxDQUFXYyxHQUFYLENBQWVOLEdBQWYsRUFBb0JLLEtBQXBCO0FBQ0EsV0FBT0EsS0FBUDtBQUNEOztBQUVERSxFQUFBQSxNQUFNLENBQUNULE9BQUQsRUFBeUI7QUFDN0IsVUFBTUUsR0FBRyxHQUFHLEtBQUtMLFdBQUwsQ0FBaUJHLE9BQWpCLENBQVo7O0FBQ0EsUUFBSSxLQUFLSixRQUFMLElBQWlCLElBQXJCLEVBQTJCO0FBQ3pCLFdBQUtjLE1BQUwsQ0FBWVIsR0FBWixFQUFpQixLQUFLTixRQUF0QjtBQUNEOztBQUNELFNBQUtGLEtBQUwsQ0FBV2UsTUFBWCxDQUFrQlAsR0FBbEI7QUFDRDs7QUFFRFMsRUFBQUEsS0FBSyxHQUFTO0FBQ1osUUFBSSxLQUFLZixRQUFMLElBQWlCLElBQXJCLEVBQTJCO0FBQ3pCLFdBQUtGLEtBQUwsQ0FBV2tCLE9BQVgsQ0FBbUIsS0FBS2hCLFFBQXhCO0FBQ0Q7O0FBQ0QsU0FBS0YsS0FBTCxDQUFXaUIsS0FBWDtBQUNEOztBQUVEUixFQUFBQSxHQUFHLENBQUNILE9BQUQsRUFBdUI7QUFDeEIsV0FBTyxLQUFLTixLQUFMLENBQVdTLEdBQVgsQ0FBZSxLQUFLTixXQUFMLENBQWlCRyxPQUFqQixDQUFmLENBQVA7QUFDRDs7QUFFRFEsRUFBQUEsR0FBRyxDQUFDUixPQUFELEVBQW1CTyxLQUFuQixFQUFtQztBQUNwQyxTQUFLYixLQUFMLENBQVdjLEdBQVgsQ0FBZSxLQUFLWCxXQUFMLENBQWlCRyxPQUFqQixDQUFmLEVBQTBDTyxLQUExQztBQUNEOztBQUVETSxFQUFBQSxLQUFLLENBQUNiLE9BQUQsRUFBbUJjLFFBQW5CLEVBQWlEO0FBQ3BELFNBQUtKLE1BQUwsQ0FBWSxLQUFLYixXQUFMLENBQWlCRyxPQUFqQixDQUFaLEVBQXVDYyxRQUF2QztBQUNEOztBQUVESixFQUFBQSxNQUFNLENBQUNSLEdBQUQsRUFBYVksUUFBYixFQUEyQztBQUMvQyxRQUFJLEtBQUtwQixLQUFMLENBQVdZLEdBQVgsQ0FBZUosR0FBZixDQUFKLEVBQXlCO0FBQ3ZCWSxNQUFBQSxRQUFRLENBQUMsS0FBS2IsVUFBTCxDQUFnQkMsR0FBaEIsQ0FBRCxDQUFSO0FBQ0Q7QUFDRjs7QUFFRGEsRUFBQUEsVUFBVSxDQUFDZixPQUFELEVBQTBCO0FBQ2xDLFdBQU8sS0FBS0gsV0FBTCxDQUFpQkcsT0FBakIsQ0FBUDtBQUNEOztBQWhFa0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG4vLyBUT0RPOiBNZXJnZSB0aGlzIGNsYXNzIHdpdGggQGF0b20taWRlLWNvbW11bml0eS9udWNsaWRlLWNvbW1vbnMvY2FjaGUuanMgYmVjYXVzZSB0aGV5IHByb2JhYmx5IGRvXHJcbi8vICAgdmVyeSBzaW1pbGFyIHRoaW5nc1xyXG5cclxuLyoqXHJcbiAqIFRpbnkgY2xhc3MgdGhhdCBpcyB1c2VmdWwgdG8gY2FjaGUgc2ltcGxlIHZhbHVlcy5cclxuICogSXQncyBxdWl0ZSB1c2VmdWwgZm9yIHByb21pc2VzIHdpdGggYSBTaW1wbGVDYWNoZTxQcm9taXNlPFQ+PiB3aGljaCBhbGxvd3MgcmV1c2luZyB0aGUgc2FtZSBwcm9taXNlLlxyXG4gKi9cclxuXHJcbnR5cGUgRGlzcG9zZUNhbGxiYWNrPFQ+ID0gKHZhbHVlOiBUKSA9PiB2b2lkO1xyXG50eXBlIEtleUZhY3Rvcnk8S2V5QXJncz4gPSAoYXJnczogS2V5QXJncykgPT4gbWl4ZWQ7XHJcblxyXG50eXBlIENhY2hlQ29uZmlnPEtleUFyZ3MsIFQ+ID0ge1xyXG4gIGtleUZhY3Rvcnk/OiBLZXlGYWN0b3J5PEtleUFyZ3M+LFxyXG4gIGRpc3Bvc2U/OiBEaXNwb3NlQ2FsbGJhY2s8VD4sXHJcbn07XHJcblxyXG5leHBvcnQgY2xhc3MgU2ltcGxlQ2FjaGU8S2V5QXJncywgVD4ge1xyXG4gIHN0b3JlOiBNYXA8bWl4ZWQsIFQ+ID0gbmV3IE1hcCgpO1xyXG4gIF9kaXNwb3NlOiA/RGlzcG9zZUNhbGxiYWNrPFQ+O1xyXG4gIF9rZXlGYWN0b3J5OiBLZXlGYWN0b3J5PEtleUFyZ3M+O1xyXG5cclxuICBjb25zdHJ1Y3Rvcihjb25maWc6IENhY2hlQ29uZmlnPEtleUFyZ3MsIFQ+ID0ge30pIHtcclxuICAgIGlmIChjb25maWcuZGlzcG9zZSAhPSBudWxsKSB7XHJcbiAgICAgIHRoaXMuX2Rpc3Bvc2UgPSBjb25maWcuZGlzcG9zZTtcclxuICAgIH1cclxuICAgIHRoaXMuX2tleUZhY3RvcnkgPVxyXG4gICAgICBjb25maWcua2V5RmFjdG9yeSAhPSBudWxsXHJcbiAgICAgICAgPyBjb25maWcua2V5RmFjdG9yeVxyXG4gICAgICAgIDogKGtleUFyZ3M6IEtleUFyZ3MpID0+IGtleUFyZ3M7XHJcbiAgfVxyXG5cclxuICBfZ2V0VW5zYWZlKGtleTogbWl4ZWQpOiBUIHtcclxuICAgIHJldHVybiAoKHRoaXMuc3RvcmUuZ2V0KGtleSk6IGFueSk6IFQpO1xyXG4gIH1cclxuXHJcbiAgZ2V0T3JDcmVhdGUoa2V5QXJnczogS2V5QXJncywgZmFjdG9yeTogKEtleUFyZ3MsIG1peGVkKSA9PiBUKTogVCB7XHJcbiAgICBjb25zdCBrZXkgPSB0aGlzLl9rZXlGYWN0b3J5KGtleUFyZ3MpO1xyXG4gICAgaWYgKHRoaXMuc3RvcmUuaGFzKGtleSkpIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX2dldFVuc2FmZShrZXkpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgdmFsdWUgPSBmYWN0b3J5KGtleUFyZ3MsIGtleSk7XHJcbiAgICB0aGlzLnN0b3JlLnNldChrZXksIHZhbHVlKTtcclxuICAgIHJldHVybiB2YWx1ZTtcclxuICB9XHJcblxyXG4gIGRlbGV0ZShrZXlBcmdzOiBLZXlBcmdzKTogdm9pZCB7XHJcbiAgICBjb25zdCBrZXkgPSB0aGlzLl9rZXlGYWN0b3J5KGtleUFyZ3MpO1xyXG4gICAgaWYgKHRoaXMuX2Rpc3Bvc2UgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl9pZkhhcyhrZXksIHRoaXMuX2Rpc3Bvc2UpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zdG9yZS5kZWxldGUoa2V5KTtcclxuICB9XHJcblxyXG4gIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuX2Rpc3Bvc2UgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLnN0b3JlLmZvckVhY2godGhpcy5fZGlzcG9zZSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnN0b3JlLmNsZWFyKCk7XHJcbiAgfVxyXG5cclxuICBnZXQoa2V5QXJnczogS2V5QXJncyk6ID9UIHtcclxuICAgIHJldHVybiB0aGlzLnN0b3JlLmdldCh0aGlzLl9rZXlGYWN0b3J5KGtleUFyZ3MpKTtcclxuICB9XHJcblxyXG4gIHNldChrZXlBcmdzOiBLZXlBcmdzLCB2YWx1ZTogVCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdG9yZS5zZXQodGhpcy5fa2V5RmFjdG9yeShrZXlBcmdzKSwgdmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgaWZIYXMoa2V5QXJnczogS2V5QXJncywgY2FsbGJhY2s6ICh2YWx1ZTogVCkgPT4gdm9pZCkge1xyXG4gICAgdGhpcy5faWZIYXModGhpcy5fa2V5RmFjdG9yeShrZXlBcmdzKSwgY2FsbGJhY2spO1xyXG4gIH1cclxuXHJcbiAgX2lmSGFzKGtleTogbWl4ZWQsIGNhbGxiYWNrOiAodmFsdWU6IFQpID0+IHZvaWQpIHtcclxuICAgIGlmICh0aGlzLnN0b3JlLmhhcyhrZXkpKSB7XHJcbiAgICAgIGNhbGxiYWNrKHRoaXMuX2dldFVuc2FmZShrZXkpKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGtleUZvckFyZ3Moa2V5QXJnczogS2V5QXJncyk6IG1peGVkIHtcclxuICAgIHJldHVybiB0aGlzLl9rZXlGYWN0b3J5KGtleUFyZ3MpO1xyXG4gIH1cclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1NpbXBsZUNhY2hlLmpzIl0sIm5hbWVzIjpbIlNpbXBsZUNhY2hlIiwiY29uc3RydWN0b3IiLCJjb25maWciLCJzdG9yZSIsIk1hcCIsIl9kaXNwb3NlIiwiX2tleUZhY3RvcnkiLCJkaXNwb3NlIiwia2V5RmFjdG9yeSIsImtleUFyZ3MiLCJfZ2V0VW5zYWZlIiwia2V5IiwiZ2V0IiwiZ2V0T3JDcmVhdGUiLCJmYWN0b3J5IiwiaGFzIiwidmFsdWUiLCJzZXQiLCJkZWxldGUiLCJfaWZIYXMiLCJjbGVhciIsImZvckVhY2giLCJpZkhhcyIsImNhbGxiYWNrIiwia2V5Rm9yQXJncyJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFFQTtBQUNBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBVU8sTUFBTUEsV0FBTixDQUE4QjtBQUtuQ0MsRUFBQUEsV0FBVyxDQUFDQyxNQUErQixHQUFHLEVBQW5DLEVBQXVDO0FBQUEsU0FKbERDLEtBSWtELEdBSjNCLElBQUlDLEdBQUosRUFJMkI7QUFBQSxTQUhsREMsUUFHa0Q7QUFBQSxTQUZsREMsV0FFa0Q7O0FBQ2hELFFBQUlKLE1BQU0sQ0FBQ0ssT0FBUCxJQUFrQixJQUF0QixFQUE0QjtBQUMxQixXQUFLRixRQUFMLEdBQWdCSCxNQUFNLENBQUNLLE9BQXZCO0FBQ0Q7O0FBQ0QsU0FBS0QsV0FBTCxHQUNFSixNQUFNLENBQUNNLFVBQVAsSUFBcUIsSUFBckIsR0FDSU4sTUFBTSxDQUFDTSxVQURYLEdBRUtDLE9BQUQsSUFBc0JBLE9BSDVCO0FBSUQ7O0FBRURDLEVBQUFBLFVBQVUsQ0FBQ0MsR0FBRCxFQUFnQjtBQUN4QixXQUFTLEtBQUtSLEtBQUwsQ0FBV1MsR0FBWCxDQUFlRCxHQUFmLENBQVQ7QUFDRDs7QUFFREUsRUFBQUEsV0FBVyxDQUFDSixPQUFELEVBQW1CSyxPQUFuQixFQUFzRDtBQUMvRCxVQUFNSCxHQUFHLEdBQUcsS0FBS0wsV0FBTCxDQUFpQkcsT0FBakIsQ0FBWjs7QUFDQSxRQUFJLEtBQUtOLEtBQUwsQ0FBV1ksR0FBWCxDQUFlSixHQUFmLENBQUosRUFBeUI7QUFDdkIsYUFBTyxLQUFLRCxVQUFMLENBQWdCQyxHQUFoQixDQUFQO0FBQ0Q7O0FBQ0QsVUFBTUssS0FBSyxHQUFHRixPQUFPLENBQUNMLE9BQUQsRUFBVUUsR0FBVixDQUFyQjtBQUNBLFNBQUtSLEtBQUwsQ0FBV2MsR0FBWCxDQUFlTixHQUFmLEVBQW9CSyxLQUFwQjtBQUNBLFdBQU9BLEtBQVA7QUFDRDs7QUFFREUsRUFBQUEsTUFBTSxDQUFDVCxPQUFELEVBQXlCO0FBQzdCLFVBQU1FLEdBQUcsR0FBRyxLQUFLTCxXQUFMLENBQWlCRyxPQUFqQixDQUFaOztBQUNBLFFBQUksS0FBS0osUUFBTCxJQUFpQixJQUFyQixFQUEyQjtBQUN6QixXQUFLYyxNQUFMLENBQVlSLEdBQVosRUFBaUIsS0FBS04sUUFBdEI7QUFDRDs7QUFDRCxTQUFLRixLQUFMLENBQVdlLE1BQVgsQ0FBa0JQLEdBQWxCO0FBQ0Q7O0FBRURTLEVBQUFBLEtBQUssR0FBUztBQUNaLFFBQUksS0FBS2YsUUFBTCxJQUFpQixJQUFyQixFQUEyQjtBQUN6QixXQUFLRixLQUFMLENBQVdrQixPQUFYLENBQW1CLEtBQUtoQixRQUF4QjtBQUNEOztBQUNELFNBQUtGLEtBQUwsQ0FBV2lCLEtBQVg7QUFDRDs7QUFFRFIsRUFBQUEsR0FBRyxDQUFDSCxPQUFELEVBQXVCO0FBQ3hCLFdBQU8sS0FBS04sS0FBTCxDQUFXUyxHQUFYLENBQWUsS0FBS04sV0FBTCxDQUFpQkcsT0FBakIsQ0FBZixDQUFQO0FBQ0Q7O0FBRURRLEVBQUFBLEdBQUcsQ0FBQ1IsT0FBRCxFQUFtQk8sS0FBbkIsRUFBbUM7QUFDcEMsU0FBS2IsS0FBTCxDQUFXYyxHQUFYLENBQWUsS0FBS1gsV0FBTCxDQUFpQkcsT0FBakIsQ0FBZixFQUEwQ08sS0FBMUM7QUFDRDs7QUFFRE0sRUFBQUEsS0FBSyxDQUFDYixPQUFELEVBQW1CYyxRQUFuQixFQUFpRDtBQUNwRCxTQUFLSixNQUFMLENBQVksS0FBS2IsV0FBTCxDQUFpQkcsT0FBakIsQ0FBWixFQUF1Q2MsUUFBdkM7QUFDRDs7QUFFREosRUFBQUEsTUFBTSxDQUFDUixHQUFELEVBQWFZLFFBQWIsRUFBMkM7QUFDL0MsUUFBSSxLQUFLcEIsS0FBTCxDQUFXWSxHQUFYLENBQWVKLEdBQWYsQ0FBSixFQUF5QjtBQUN2QlksTUFBQUEsUUFBUSxDQUFDLEtBQUtiLFVBQUwsQ0FBZ0JDLEdBQWhCLENBQUQsQ0FBUjtBQUNEO0FBQ0Y7O0FBRURhLEVBQUFBLFVBQVUsQ0FBQ2YsT0FBRCxFQUEwQjtBQUNsQyxXQUFPLEtBQUtILFdBQUwsQ0FBaUJHLE9BQWpCLENBQVA7QUFDRDs7QUFoRWtDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuLy8gVE9ETzogTWVyZ2UgdGhpcyBjbGFzcyB3aXRoIEBhdG9tLWlkZS1jb21tdW5pdHkvbnVjbGlkZS1jb21tb25zL2NhY2hlLmpzIGJlY2F1c2UgdGhleSBwcm9iYWJseSBkb1xyXG4vLyAgIHZlcnkgc2ltaWxhciB0aGluZ3NcclxuXHJcbi8qKlxyXG4gKiBUaW55IGNsYXNzIHRoYXQgaXMgdXNlZnVsIHRvIGNhY2hlIHNpbXBsZSB2YWx1ZXMuXHJcbiAqIEl0J3MgcXVpdGUgdXNlZnVsIGZvciBwcm9taXNlcyB3aXRoIGEgU2ltcGxlQ2FjaGU8UHJvbWlzZTxUPj4gd2hpY2ggYWxsb3dzIHJldXNpbmcgdGhlIHNhbWUgcHJvbWlzZS5cclxuICovXHJcblxyXG50eXBlIERpc3Bvc2VDYWxsYmFjazxUPiA9ICh2YWx1ZTogVCkgPT4gdm9pZDtcclxudHlwZSBLZXlGYWN0b3J5PEtleUFyZ3M+ID0gKGFyZ3M6IEtleUFyZ3MpID0+IG1peGVkO1xyXG5cclxudHlwZSBDYWNoZUNvbmZpZzxLZXlBcmdzLCBUPiA9IHtcclxuICBrZXlGYWN0b3J5PzogS2V5RmFjdG9yeTxLZXlBcmdzPixcclxuICBkaXNwb3NlPzogRGlzcG9zZUNhbGxiYWNrPFQ+LFxyXG59O1xyXG5cclxuZXhwb3J0IGNsYXNzIFNpbXBsZUNhY2hlPEtleUFyZ3MsIFQ+IHtcclxuICBzdG9yZTogTWFwPG1peGVkLCBUPiA9IG5ldyBNYXAoKTtcclxuICBfZGlzcG9zZTogP0Rpc3Bvc2VDYWxsYmFjazxUPjtcclxuICBfa2V5RmFjdG9yeTogS2V5RmFjdG9yeTxLZXlBcmdzPjtcclxuXHJcbiAgY29uc3RydWN0b3IoY29uZmlnOiBDYWNoZUNvbmZpZzxLZXlBcmdzLCBUPiA9IHt9KSB7XHJcbiAgICBpZiAoY29uZmlnLmRpc3Bvc2UgIT0gbnVsbCkge1xyXG4gICAgICB0aGlzLl9kaXNwb3NlID0gY29uZmlnLmRpc3Bvc2U7XHJcbiAgICB9XHJcbiAgICB0aGlzLl9rZXlGYWN0b3J5ID1cclxuICAgICAgY29uZmlnLmtleUZhY3RvcnkgIT0gbnVsbFxyXG4gICAgICAgID8gY29uZmlnLmtleUZhY3RvcnlcclxuICAgICAgICA6IChrZXlBcmdzOiBLZXlBcmdzKSA9PiBrZXlBcmdzO1xyXG4gIH1cclxuXHJcbiAgX2dldFVuc2FmZShrZXk6IG1peGVkKTogVCB7XHJcbiAgICByZXR1cm4gKCh0aGlzLnN0b3JlLmdldChrZXkpOiBhbnkpOiBUKTtcclxuICB9XHJcblxyXG4gIGdldE9yQ3JlYXRlKGtleUFyZ3M6IEtleUFyZ3MsIGZhY3Rvcnk6IChLZXlBcmdzLCBtaXhlZCkgPT4gVCk6IFQge1xyXG4gICAgY29uc3Qga2V5ID0gdGhpcy5fa2V5RmFjdG9yeShrZXlBcmdzKTtcclxuICAgIGlmICh0aGlzLnN0b3JlLmhhcyhrZXkpKSB7XHJcbiAgICAgIHJldHVybiB0aGlzLl9nZXRVbnNhZmUoa2V5KTtcclxuICAgIH1cclxuICAgIGNvbnN0IHZhbHVlID0gZmFjdG9yeShrZXlBcmdzLCBrZXkpO1xyXG4gICAgdGhpcy5zdG9yZS5zZXQoa2V5LCB2YWx1ZSk7XHJcbiAgICByZXR1cm4gdmFsdWU7XHJcbiAgfVxyXG5cclxuICBkZWxldGUoa2V5QXJnczogS2V5QXJncyk6IHZvaWQge1xyXG4gICAgY29uc3Qga2V5ID0gdGhpcy5fa2V5RmFjdG9yeShrZXlBcmdzKTtcclxuICAgIGlmICh0aGlzLl9kaXNwb3NlICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5faWZIYXMoa2V5LCB0aGlzLl9kaXNwb3NlKTtcclxuICAgIH1cclxuICAgIHRoaXMuc3RvcmUuZGVsZXRlKGtleSk7XHJcbiAgfVxyXG5cclxuICBjbGVhcigpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9kaXNwb3NlICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5zdG9yZS5mb3JFYWNoKHRoaXMuX2Rpc3Bvc2UpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5zdG9yZS5jbGVhcigpO1xyXG4gIH1cclxuXHJcbiAgZ2V0KGtleUFyZ3M6IEtleUFyZ3MpOiA/VCB7XHJcbiAgICByZXR1cm4gdGhpcy5zdG9yZS5nZXQodGhpcy5fa2V5RmFjdG9yeShrZXlBcmdzKSk7XHJcbiAgfVxyXG5cclxuICBzZXQoa2V5QXJnczogS2V5QXJncywgdmFsdWU6IFQpOiB2b2lkIHtcclxuICAgIHRoaXMuc3RvcmUuc2V0KHRoaXMuX2tleUZhY3Rvcnkoa2V5QXJncyksIHZhbHVlKTtcclxuICB9XHJcblxyXG4gIGlmSGFzKGtleUFyZ3M6IEtleUFyZ3MsIGNhbGxiYWNrOiAodmFsdWU6IFQpID0+IHZvaWQpIHtcclxuICAgIHRoaXMuX2lmSGFzKHRoaXMuX2tleUZhY3Rvcnkoa2V5QXJncyksIGNhbGxiYWNrKTtcclxuICB9XHJcblxyXG4gIF9pZkhhcyhrZXk6IG1peGVkLCBjYWxsYmFjazogKHZhbHVlOiBUKSA9PiB2b2lkKSB7XHJcbiAgICBpZiAodGhpcy5zdG9yZS5oYXMoa2V5KSkge1xyXG4gICAgICBjYWxsYmFjayh0aGlzLl9nZXRVbnNhZmUoa2V5KSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBrZXlGb3JBcmdzKGtleUFyZ3M6IEtleUFyZ3MpOiBtaXhlZCB7XHJcbiAgICByZXR1cm4gdGhpcy5fa2V5RmFjdG9yeShrZXlBcmdzKTtcclxuICB9XHJcbn1cclxuIl19 |
@@ -75,2 +75,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N0cmVhbS5qcyJdLCJuYW1lcyI6WyJvYnNlcnZlU3RyZWFtIiwic3RyZWFtIiwib2JzZXJ2ZVJhd1N0cmVhbSIsIm1hcCIsImRhdGEiLCJ0b1N0cmluZyIsImVycm9yIiwiT2JzZXJ2YWJsZSIsImZyb21FdmVudCIsImZsYXRNYXAiLCJ0aHJvdyIsIm1lcmdlIiwidGFrZVVudGlsIiwid3JpdGVUb1N0cmVhbSIsInNvdXJjZSIsImRlc3RTdHJlYW0iLCJjcmVhdGUiLCJvYnNlcnZlciIsImJ5dGVDb3VudCIsImJ5dGVDb3VudGVyU3RyZWFtIiwiU3RyZWFtIiwiVHJhbnNmb3JtIiwidHJhbnNmb3JtIiwiY2h1bmsiLCJlbmNvZGluZyIsImNiIiwiYnl0ZUxlbmd0aCIsIm5leHQiLCJwaXBlIiwiVW5pdmVyc2FsRGlzcG9zYWJsZSIsImVyciIsImNvbXBsZXRlIiwic3Vic2NyaWJlIiwiYnVmZmVyIiwid3JpdGUiLCJlbmQiLCJzaGFyZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBWUE7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7QUFoQkE7Ozs7Ozs7Ozs7OztBQWtCQTs7O0FBR08sU0FBU0EsYUFBVCxDQUF1QkMsTUFBdkIsRUFBb0U7QUFDekUsU0FBT0MsZ0JBQWdCLENBQUNELE1BQUQsQ0FBaEIsQ0FBeUJFLEdBQXpCLENBQTZCQyxJQUFJLElBQUlBLElBQUksQ0FBQ0MsUUFBTCxFQUFyQyxDQUFQO0FBQ0Q7O0FBRU0sU0FBU0gsZ0JBQVQsQ0FBMEJELE1BQTFCLEVBQXVFO0FBQzVFLFFBQU1LLEtBQUssR0FBR0MsNkJBQVdDLFNBQVgsQ0FBcUJQLE1BQXJCLEVBQTZCLE9BQTdCLEVBQXNDUSxPQUF0QyxDQUE4Q0YsNkJBQVdHLEtBQXpELENBQWQ7O0FBQ0EsU0FBT0gsNkJBQVdDLFNBQVgsQ0FBcUJQLE1BQXJCLEVBQTZCLE1BQTdCLEVBQ0pVLEtBREksQ0FDRUwsS0FERixFQUVKTSxTQUZJLENBRU1MLDZCQUFXQyxTQUFYLENBQXFCUCxNQUFyQixFQUE2QixLQUE3QixDQUZOLENBQVA7QUFHRDtBQUVEOzs7Ozs7QUFJTyxTQUFTWSxhQUFULENBQ0xDLE1BREssRUFFTEMsVUFGSyxFQUdlO0FBQ3BCLFNBQU9SLDZCQUFXUyxNQUFYLENBQWtCQyxRQUFRLElBQUk7QUFDbkMsUUFBSUMsU0FBUyxHQUFHLENBQWhCO0FBRUEsVUFBTUMsaUJBQWlCLEdBQUcsSUFBSUMsZ0JBQU9DLFNBQVgsQ0FBcUI7QUFDN0NDLE1BQUFBLFNBQVMsQ0FBQ0MsS0FBRCxFQUFRQyxRQUFSLEVBQWtCQyxFQUFsQixFQUFzQjtBQUM3QlAsUUFBQUEsU0FBUyxJQUFJSyxLQUFLLENBQUNHLFVBQW5CO0FBQ0FULFFBQUFBLFFBQVEsQ0FBQ1UsSUFBVCxDQUFjVCxTQUFkO0FBQ0FPLFFBQUFBLEVBQUUsQ0FBQyxJQUFELEVBQU9GLEtBQVAsQ0FBRjtBQUNEOztBQUw0QyxLQUFyQixDQUExQjtBQVFBSixJQUFBQSxpQkFBaUIsQ0FBQ1MsSUFBbEIsQ0FBdUJiLFVBQXZCO0FBRUEsV0FBTyxJQUFJYyw0QkFBSixDQUNMLHdCQUFZZCxVQUFaLEVBQXdCLE9BQXhCLEVBQWlDZSxHQUFHLElBQUk7QUFDdENiLE1BQUFBLFFBQVEsQ0FBQ1gsS0FBVCxDQUFld0IsR0FBZjtBQUNELEtBRkQsQ0FESyxFQUlMLHdCQUFZZixVQUFaLEVBQXdCLE9BQXhCLEVBQWlDLE1BQU07QUFDckNFLE1BQUFBLFFBQVEsQ0FBQ2MsUUFBVDtBQUNELEtBRkQsQ0FKSyxFQU9MakIsTUFBTSxDQUFDa0IsU0FBUCxDQUNFQyxNQUFNLElBQUk7QUFDUmQsTUFBQUEsaUJBQWlCLENBQUNlLEtBQWxCLENBQXdCRCxNQUF4QjtBQUNELEtBSEgsRUFJRUgsR0FBRyxJQUFJO0FBQ0xiLE1BQUFBLFFBQVEsQ0FBQ1gsS0FBVCxDQUFld0IsR0FBZjtBQUNELEtBTkgsRUFPRSxNQUFNO0FBQ0pYLE1BQUFBLGlCQUFpQixDQUFDZ0IsR0FBbEI7QUFDRCxLQVRILENBUEssQ0FBUDtBQW1CRCxHQWhDTSxFQWdDSkMsS0FoQ0ksRUFBUDtBQWlDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgU3RyZWFtIGZyb20gJ3N0cmVhbSc7XHJcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcy1jb21wYXQvYnVuZGxlcy9yeGpzLWNvbXBhdC51bWQubWluLmpzJztcclxuXHJcbmltcG9ydCBVbml2ZXJzYWxEaXNwb3NhYmxlIGZyb20gJy4vVW5pdmVyc2FsRGlzcG9zYWJsZSc7XHJcbmltcG9ydCB7YXR0YWNoRXZlbnR9IGZyb20gJy4vZXZlbnQnO1xyXG5cclxuLyoqXHJcbiAqIE9ic2VydmUgYSBzdHJlYW0gbGlrZSBzdGRvdXQgb3Igc3RkZXJyLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmVTdHJlYW0oc3RyZWFtOiBzdHJlYW0kUmVhZGFibGUpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xyXG4gIHJldHVybiBvYnNlcnZlUmF3U3RyZWFtKHN0cmVhbSkubWFwKGRhdGEgPT4gZGF0YS50b1N0cmluZygpKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9ic2VydmVSYXdTdHJlYW0oc3RyZWFtOiBzdHJlYW0kUmVhZGFibGUpOiBPYnNlcnZhYmxlPEJ1ZmZlcj4ge1xyXG4gIGNvbnN0IGVycm9yID0gT2JzZXJ2YWJsZS5mcm9tRXZlbnQoc3RyZWFtLCAnZXJyb3InKS5mbGF0TWFwKE9ic2VydmFibGUudGhyb3cpO1xyXG4gIHJldHVybiBPYnNlcnZhYmxlLmZyb21FdmVudChzdHJlYW0sICdkYXRhJylcclxuICAgIC5tZXJnZShlcnJvcilcclxuICAgIC50YWtlVW50aWwoT2JzZXJ2YWJsZS5mcm9tRXZlbnQoc3RyZWFtLCAnZW5kJykpO1xyXG59XHJcblxyXG4vKipcclxuICogV3JpdGUgYW4gb2JzZXJ2ZWQgcmVhZGFibGUgc3RyZWFtIGludG8gYSB3cml0YWJsZSBzdHJlYW0uIEVmZmVjdGl2ZWx5IGEgcGlwZSgpIGZvciBvYnNlcnZhYmxlcy5cclxuICogUmV0dXJucyBhbiBvYnNlcnZhYmxlIGFjY3VtdWxhdGluZyB0aGUgbnVtYmVyIG9mIGJ5dGVzIHByb2Nlc3NlZC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiB3cml0ZVRvU3RyZWFtKFxyXG4gIHNvdXJjZTogT2JzZXJ2YWJsZTxCdWZmZXI+LFxyXG4gIGRlc3RTdHJlYW06IHN0cmVhbSRXcml0YWJsZSxcclxuKTogT2JzZXJ2YWJsZTxudW1iZXI+IHtcclxuICByZXR1cm4gT2JzZXJ2YWJsZS5jcmVhdGUob2JzZXJ2ZXIgPT4ge1xyXG4gICAgbGV0IGJ5dGVDb3VudCA9IDA7XHJcblxyXG4gICAgY29uc3QgYnl0ZUNvdW50ZXJTdHJlYW0gPSBuZXcgU3RyZWFtLlRyYW5zZm9ybSh7XHJcbiAgICAgIHRyYW5zZm9ybShjaHVuaywgZW5jb2RpbmcsIGNiKSB7XHJcbiAgICAgICAgYnl0ZUNvdW50ICs9IGNodW5rLmJ5dGVMZW5ndGg7XHJcbiAgICAgICAgb2JzZXJ2ZXIubmV4dChieXRlQ291bnQpO1xyXG4gICAgICAgIGNiKG51bGwsIGNodW5rKTtcclxuICAgICAgfSxcclxuICAgIH0pO1xyXG5cclxuICAgIGJ5dGVDb3VudGVyU3RyZWFtLnBpcGUoZGVzdFN0cmVhbSk7XHJcblxyXG4gICAgcmV0dXJuIG5ldyBVbml2ZXJzYWxEaXNwb3NhYmxlKFxyXG4gICAgICBhdHRhY2hFdmVudChkZXN0U3RyZWFtLCAnZXJyb3InLCBlcnIgPT4ge1xyXG4gICAgICAgIG9ic2VydmVyLmVycm9yKGVycik7XHJcbiAgICAgIH0pLFxyXG4gICAgICBhdHRhY2hFdmVudChkZXN0U3RyZWFtLCAnY2xvc2UnLCAoKSA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZXIuY29tcGxldGUoKTtcclxuICAgICAgfSksXHJcbiAgICAgIHNvdXJjZS5zdWJzY3JpYmUoXHJcbiAgICAgICAgYnVmZmVyID0+IHtcclxuICAgICAgICAgIGJ5dGVDb3VudGVyU3RyZWFtLndyaXRlKGJ1ZmZlcik7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBlcnIgPT4ge1xyXG4gICAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgICgpID0+IHtcclxuICAgICAgICAgIGJ5dGVDb3VudGVyU3RyZWFtLmVuZCgpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICksXHJcbiAgICApO1xyXG4gIH0pLnNoYXJlKCk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N0cmVhbS5qcyJdLCJuYW1lcyI6WyJvYnNlcnZlU3RyZWFtIiwic3RyZWFtIiwib2JzZXJ2ZVJhd1N0cmVhbSIsIm1hcCIsImRhdGEiLCJ0b1N0cmluZyIsImVycm9yIiwiT2JzZXJ2YWJsZSIsImZyb21FdmVudCIsImZsYXRNYXAiLCJ0aHJvdyIsIm1lcmdlIiwidGFrZVVudGlsIiwid3JpdGVUb1N0cmVhbSIsInNvdXJjZSIsImRlc3RTdHJlYW0iLCJjcmVhdGUiLCJvYnNlcnZlciIsImJ5dGVDb3VudCIsImJ5dGVDb3VudGVyU3RyZWFtIiwiU3RyZWFtIiwiVHJhbnNmb3JtIiwidHJhbnNmb3JtIiwiY2h1bmsiLCJlbmNvZGluZyIsImNiIiwiYnl0ZUxlbmd0aCIsIm5leHQiLCJwaXBlIiwiVW5pdmVyc2FsRGlzcG9zYWJsZSIsImVyciIsImNvbXBsZXRlIiwic3Vic2NyaWJlIiwiYnVmZmVyIiwid3JpdGUiLCJlbmQiLCJzaGFyZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBWUE7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7QUFoQkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFRQTtBQUNBO0FBQ0E7QUFDTyxTQUFTQSxhQUFULENBQXVCQyxNQUF2QixFQUFvRTtBQUN6RSxTQUFPQyxnQkFBZ0IsQ0FBQ0QsTUFBRCxDQUFoQixDQUF5QkUsR0FBekIsQ0FBNkJDLElBQUksSUFBSUEsSUFBSSxDQUFDQyxRQUFMLEVBQXJDLENBQVA7QUFDRDs7QUFFTSxTQUFTSCxnQkFBVCxDQUEwQkQsTUFBMUIsRUFBdUU7QUFDNUUsUUFBTUssS0FBSyxHQUFHQyw2QkFBV0MsU0FBWCxDQUFxQlAsTUFBckIsRUFBNkIsT0FBN0IsRUFBc0NRLE9BQXRDLENBQThDRiw2QkFBV0csS0FBekQsQ0FBZDs7QUFDQSxTQUFPSCw2QkFBV0MsU0FBWCxDQUFxQlAsTUFBckIsRUFBNkIsTUFBN0IsRUFDSlUsS0FESSxDQUNFTCxLQURGLEVBRUpNLFNBRkksQ0FFTUwsNkJBQVdDLFNBQVgsQ0FBcUJQLE1BQXJCLEVBQTZCLEtBQTdCLENBRk4sQ0FBUDtBQUdEO0FBRUQ7QUFDQTtBQUNBO0FBQ0E7OztBQUNPLFNBQVNZLGFBQVQsQ0FDTEMsTUFESyxFQUVMQyxVQUZLLEVBR2U7QUFDcEIsU0FBT1IsNkJBQVdTLE1BQVgsQ0FBa0JDLFFBQVEsSUFBSTtBQUNuQyxRQUFJQyxTQUFTLEdBQUcsQ0FBaEI7QUFFQSxVQUFNQyxpQkFBaUIsR0FBRyxJQUFJQyxnQkFBT0MsU0FBWCxDQUFxQjtBQUM3Q0MsTUFBQUEsU0FBUyxDQUFDQyxLQUFELEVBQVFDLFFBQVIsRUFBa0JDLEVBQWxCLEVBQXNCO0FBQzdCUCxRQUFBQSxTQUFTLElBQUlLLEtBQUssQ0FBQ0csVUFBbkI7QUFDQVQsUUFBQUEsUUFBUSxDQUFDVSxJQUFULENBQWNULFNBQWQ7QUFDQU8sUUFBQUEsRUFBRSxDQUFDLElBQUQsRUFBT0YsS0FBUCxDQUFGO0FBQ0Q7O0FBTDRDLEtBQXJCLENBQTFCO0FBUUFKLElBQUFBLGlCQUFpQixDQUFDUyxJQUFsQixDQUF1QmIsVUFBdkI7QUFFQSxXQUFPLElBQUljLDRCQUFKLENBQ0wsd0JBQVlkLFVBQVosRUFBd0IsT0FBeEIsRUFBaUNlLEdBQUcsSUFBSTtBQUN0Q2IsTUFBQUEsUUFBUSxDQUFDWCxLQUFULENBQWV3QixHQUFmO0FBQ0QsS0FGRCxDQURLLEVBSUwsd0JBQVlmLFVBQVosRUFBd0IsT0FBeEIsRUFBaUMsTUFBTTtBQUNyQ0UsTUFBQUEsUUFBUSxDQUFDYyxRQUFUO0FBQ0QsS0FGRCxDQUpLLEVBT0xqQixNQUFNLENBQUNrQixTQUFQLENBQ0VDLE1BQU0sSUFBSTtBQUNSZCxNQUFBQSxpQkFBaUIsQ0FBQ2UsS0FBbEIsQ0FBd0JELE1BQXhCO0FBQ0QsS0FISCxFQUlFSCxHQUFHLElBQUk7QUFDTGIsTUFBQUEsUUFBUSxDQUFDWCxLQUFULENBQWV3QixHQUFmO0FBQ0QsS0FOSCxFQU9FLE1BQU07QUFDSlgsTUFBQUEsaUJBQWlCLENBQUNnQixHQUFsQjtBQUNELEtBVEgsQ0FQSyxDQUFQO0FBbUJELEdBaENNLEVBZ0NKQyxLQWhDSSxFQUFQO0FBaUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBTdHJlYW0gZnJvbSAnc3RyZWFtJztcclxuaW1wb3J0IHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuaW1wb3J0IFVuaXZlcnNhbERpc3Bvc2FibGUgZnJvbSAnLi9Vbml2ZXJzYWxEaXNwb3NhYmxlJztcclxuaW1wb3J0IHthdHRhY2hFdmVudH0gZnJvbSAnLi9ldmVudCc7XHJcblxyXG4vKipcclxuICogT2JzZXJ2ZSBhIHN0cmVhbSBsaWtlIHN0ZG91dCBvciBzdGRlcnIuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gb2JzZXJ2ZVN0cmVhbShzdHJlYW06IHN0cmVhbSRSZWFkYWJsZSk6IE9ic2VydmFibGU8c3RyaW5nPiB7XHJcbiAgcmV0dXJuIG9ic2VydmVSYXdTdHJlYW0oc3RyZWFtKS5tYXAoZGF0YSA9PiBkYXRhLnRvU3RyaW5nKCkpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gb2JzZXJ2ZVJhd1N0cmVhbShzdHJlYW06IHN0cmVhbSRSZWFkYWJsZSk6IE9ic2VydmFibGU8QnVmZmVyPiB7XHJcbiAgY29uc3QgZXJyb3IgPSBPYnNlcnZhYmxlLmZyb21FdmVudChzdHJlYW0sICdlcnJvcicpLmZsYXRNYXAoT2JzZXJ2YWJsZS50aHJvdyk7XHJcbiAgcmV0dXJuIE9ic2VydmFibGUuZnJvbUV2ZW50KHN0cmVhbSwgJ2RhdGEnKVxyXG4gICAgLm1lcmdlKGVycm9yKVxyXG4gICAgLnRha2VVbnRpbChPYnNlcnZhYmxlLmZyb21FdmVudChzdHJlYW0sICdlbmQnKSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBXcml0ZSBhbiBvYnNlcnZlZCByZWFkYWJsZSBzdHJlYW0gaW50byBhIHdyaXRhYmxlIHN0cmVhbS4gRWZmZWN0aXZlbHkgYSBwaXBlKCkgZm9yIG9ic2VydmFibGVzLlxyXG4gKiBSZXR1cm5zIGFuIG9ic2VydmFibGUgYWNjdW11bGF0aW5nIHRoZSBudW1iZXIgb2YgYnl0ZXMgcHJvY2Vzc2VkLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlVG9TdHJlYW0oXHJcbiAgc291cmNlOiBPYnNlcnZhYmxlPEJ1ZmZlcj4sXHJcbiAgZGVzdFN0cmVhbTogc3RyZWFtJFdyaXRhYmxlLFxyXG4pOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xyXG4gIHJldHVybiBPYnNlcnZhYmxlLmNyZWF0ZShvYnNlcnZlciA9PiB7XHJcbiAgICBsZXQgYnl0ZUNvdW50ID0gMDtcclxuXHJcbiAgICBjb25zdCBieXRlQ291bnRlclN0cmVhbSA9IG5ldyBTdHJlYW0uVHJhbnNmb3JtKHtcclxuICAgICAgdHJhbnNmb3JtKGNodW5rLCBlbmNvZGluZywgY2IpIHtcclxuICAgICAgICBieXRlQ291bnQgKz0gY2h1bmsuYnl0ZUxlbmd0aDtcclxuICAgICAgICBvYnNlcnZlci5uZXh0KGJ5dGVDb3VudCk7XHJcbiAgICAgICAgY2IobnVsbCwgY2h1bmspO1xyXG4gICAgICB9LFxyXG4gICAgfSk7XHJcblxyXG4gICAgYnl0ZUNvdW50ZXJTdHJlYW0ucGlwZShkZXN0U3RyZWFtKTtcclxuXHJcbiAgICByZXR1cm4gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUoXHJcbiAgICAgIGF0dGFjaEV2ZW50KGRlc3RTdHJlYW0sICdlcnJvcicsIGVyciA9PiB7XHJcbiAgICAgICAgb2JzZXJ2ZXIuZXJyb3IoZXJyKTtcclxuICAgICAgfSksXHJcbiAgICAgIGF0dGFjaEV2ZW50KGRlc3RTdHJlYW0sICdjbG9zZScsICgpID0+IHtcclxuICAgICAgICBvYnNlcnZlci5jb21wbGV0ZSgpO1xyXG4gICAgICB9KSxcclxuICAgICAgc291cmNlLnN1YnNjcmliZShcclxuICAgICAgICBidWZmZXIgPT4ge1xyXG4gICAgICAgICAgYnl0ZUNvdW50ZXJTdHJlYW0ud3JpdGUoYnVmZmVyKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVyciA9PiB7XHJcbiAgICAgICAgICBvYnNlcnZlci5lcnJvcihlcnIpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgKCkgPT4ge1xyXG4gICAgICAgICAgYnl0ZUNvdW50ZXJTdHJlYW0uZW5kKCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgKSxcclxuICAgICk7XHJcbiAgfSkuc2hhcmUoKTtcclxufVxyXG4iXX0= |
@@ -108,7 +108,8 @@ "use strict"; | ||
function countOccurrences(haystack, char) { | ||
(0, _assert.default)(char.length === 1, 'char must be a string of length 1'); | ||
function countOccurrences(haystack, _char) { | ||
(0, _assert.default)(_char.length === 1, 'char must be a string of length 1'); | ||
let count = 0; | ||
const code = char.charCodeAt(0); | ||
const code = _char.charCodeAt(0); | ||
for (let i = 0; i < haystack.length; i++) { | ||
@@ -213,4 +214,4 @@ if (haystack.charCodeAt(i) === code) { | ||
function indent(str, level = 2, char = ' ') { | ||
return str.replace(/^([^\n])/gm, char.repeat(level) + '$1'); | ||
function indent(str, level = 2, _char2 = ' ') { | ||
return str.replace(/^([^\n])/gm, _char2.repeat(level) + '$1'); | ||
} | ||
@@ -278,2 +279,2 @@ | ||
exports.ZERO_WIDTH_SPACE = ZERO_WIDTH_SPACE; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N0cmluZy5qcyJdLCJuYW1lcyI6WyJzdHJpbmdpZnlFcnJvciIsImVycm9yIiwibmFtZSIsIm1lc3NhZ2UiLCJzdGFjayIsIm1heWJlVG9TdHJpbmciLCJzdHIiLCJTdHJpbmciLCJTRUNPTkQiLCJNSU5VVEUiLCJIT1VSIiwiREFZIiwiV0VFSyIsIllFQVIiLCJNT05USCIsInNob3J0Rm9ybWF0cyIsIk51bWJlciIsIk1BWF9WQUxVRSIsImxvbmdGb3JtYXRzIiwibG9uZ0Zvcm1hdHNOdW1iZXJzIiwicmVsYXRpdmVEYXRlIiwiaW5wdXRfIiwicmVmZXJlbmNlXyIsInVzZVNob3J0VmFyaWFudCIsInVzZU51bWJlcnNPbmx5IiwiaW5wdXQiLCJyZWZlcmVuY2UiLCJEYXRlIiwiZ2V0VGltZSIsImRlbHRhIiwiZm9ybWF0cyIsImxpbWl0IiwicmVsYXRpdmVGb3JtYXQiLCJyZW1haW5kZXIiLCJNYXRoIiwicm91bmQiLCJFcnJvciIsImNvdW50T2NjdXJyZW5jZXMiLCJoYXlzdGFjayIsImNoYXIiLCJsZW5ndGgiLCJjb3VudCIsImNvZGUiLCJjaGFyQ29kZUF0IiwiaSIsInNoZWxsUGFyc2UiLCJlbnYiLCJyZXN1bHQiLCJvcCIsImNvbW1lbnQiLCJzaGVsbFBhcnNlV2l0aEdsb2JzIiwicGF0dGVybiIsInNoZWxsUXVvdGUiLCJhcmdzIiwicmVtb3ZlQ29tbW9uUHJlZml4IiwiYSIsImIiLCJzdWJzdHJpbmciLCJyZW1vdmVDb21tb25TdWZmaXgiLCJzaG9ydGVuIiwibWF4TGVuZ3RoIiwic3VmZml4Iiwic2xpY2UiLCJzcGxpdE9uY2UiLCJzZXBhcmF0b3IiLCJpbmRleCIsImluZGV4T2YiLCJpbmRlbnQiLCJsZXZlbCIsInJlcGxhY2UiLCJyZXBlYXQiLCJwbHVyYWxpemUiLCJub3VuIiwiY2FwaXRhbGl6ZSIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwiY29uY2F0IiwiZ2V0TWF0Y2hSYW5nZXMiLCJuZWVkbGUiLCJyYW5nZXMiLCJtYXRjaEluZGV4IiwicHJldlJhbmdlIiwicHVzaCIsImVzY2FwZU1hcmtkb3duIiwibWFya2Rvd24iLCJzbGFzaEVzY2FwZWQiLCJVUkxfUkVHRVgiLCJFTExJUFNJU19DSEFSIiwiWkVST19XSURUSF9TUEFDRSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBOzs7Ozs7Ozs7OztBQWVPLFNBQVNBLGNBQVQsQ0FBd0JDLEtBQXhCLEVBQThDO0FBQ25ELFNBQVEsU0FBUUEsS0FBSyxDQUFDQyxJQUFLLGNBQWFELEtBQUssQ0FBQ0UsT0FBUSxZQUNwREYsS0FBSyxDQUFDRyxLQUNQLEdBRkQ7QUFHRCxDLENBRUQ7QUFDQTs7O0FBQ08sU0FBU0MsYUFBVCxDQUF1QkMsR0FBdkIsRUFBNkM7QUFDbEQ7QUFDQTtBQUNBO0FBQ0EsU0FBT0MsTUFBTSxDQUFDRCxHQUFELENBQWI7QUFDRDtBQUVEOzs7Ozs7QUFJQSxNQUFNRSxNQUFNLEdBQUcsSUFBZjtBQUNBLE1BQU1DLE1BQU0sR0FBRyxLQUFLRCxNQUFwQjtBQUNBLE1BQU1FLElBQUksR0FBRyxLQUFLRCxNQUFsQjtBQUNBLE1BQU1FLEdBQUcsR0FBRyxLQUFLRCxJQUFqQjtBQUNBLE1BQU1FLElBQUksR0FBRyxJQUFJRCxHQUFqQjtBQUNBLE1BQU1FLElBQUksR0FBR0YsR0FBRyxHQUFHLEdBQW5CO0FBQ0EsTUFBTUcsS0FBSyxHQUFHRCxJQUFJLEdBQUcsRUFBckI7QUFFQSxNQUFNRSxZQUFZLEdBQUcsQ0FDbkIsQ0FBQyxNQUFNTixNQUFQLEVBQWUsS0FBZixDQURtQixFQUVuQixDQUFDLE1BQU1BLE1BQVAsRUFBZSxJQUFmLENBRm1CLEVBR25CLENBQUMsS0FBS0EsTUFBTixFQUFjLEdBQWQsRUFBbUJBLE1BQW5CLENBSG1CLEVBSW5CLENBQUMsTUFBTUMsSUFBUCxFQUFhLElBQWIsQ0FKbUIsRUFLbkIsQ0FBQ0MsR0FBRCxFQUFNLEdBQU4sRUFBV0QsSUFBWCxD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LENBQUMsQ0FBRCxDQUFULElBQWdCSCxNQUFNLENBQUN0QyxNQUF2QjtBQUNELEtBRkQsTUFFTztBQUNMdUMsTUFBQUEsTUFBTSxDQUFDRyxJQUFQLENBQVksQ0FBQ0YsVUFBRCxFQUFhQSxVQUFVLEdBQUdGLE1BQU0sQ0FBQ3RDLE1BQWpDLENBQVo7QUFDRDs7QUFDRHdDLElBQUFBLFVBQVUsSUFBSUYsTUFBTSxDQUFDdEMsTUFBckI7QUFDRDs7QUFDRCxTQUFPdUMsTUFBUDtBQUNEOztBQUVNLFNBQVNJLGNBQVQsQ0FBd0JDLFFBQXhCLEVBQWtEO0FBQ3ZEO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsUUFBTUMsWUFBWSxHQUFHRCxRQUFRLENBQUNmLE9BQVQsQ0FBaUIsdUJBQWpCLEVBQTBDLE1BQTFDLENBQXJCLENBTHVELENBTXZEOztBQUNBLFNBQU9nQixZQUFZLENBQUNoQixPQUFiLENBQXFCLElBQXJCLEVBQTJCLE1BQTNCLEVBQW1DQSxPQUFuQyxDQUEyQyxJQUEzQyxFQUFpRCxNQUFqRCxDQUFQO0FBQ0QsQyxDQUVEO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOzs7QUFDTyxNQUFNaUIsU0FBUyxHQUFHLHVJQUFsQjs7QUFFQSxNQUFNQyxhQUFhLEdBQUcsUUFBdEI7O0FBQ0EsTUFBTUMsZ0JBQWdCLEdBQUcsUUFBekIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQgaW52YXJpYW50IGZyb20gJ2Fzc2VydCc7XHJcbmltcG9ydCB7cGFyc2UsIHF1b3RlfSBmcm9tICcuL19zaGVsbC1xdW90ZSc7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5naWZ5RXJyb3IoZXJyb3I6IEVycm9yKTogc3RyaW5nIHtcclxuICByZXR1cm4gYG5hbWU6ICR7ZXJyb3IubmFtZX0sIG1lc3NhZ2U6ICR7ZXJyb3IubWVzc2FnZX0sIHN0YWNrOiAke1xyXG4gICAgZXJyb3Iuc3RhY2tcclxuICB9LmA7XHJcbn1cclxuXHJcbi8vIEFzIG9mIEZsb3cgdjAuMjgsIEZsb3cgZG9lcyBub3QgYWxsbG93IGltcGxpY2l0IHN0cmluZyBjb2VyY2lvbiBvZiBudWxsIG9yIHVuZGVmaW5lZC4gVXNlIHRoaXMgdG9cclxuLy8gbWFrZSBpdCBleHBsaWNpdC5cclxuZXhwb3J0IGZ1bmN0aW9uIG1heWJlVG9TdHJpbmcoc3RyOiA/c3RyaW5nKTogc3RyaW5nIHtcclxuICAvLyBXZSBkb24ndCB3YW50IHRvIGVuY291cmFnZSB0aGUgdXNlIG9mIHRoaXMgZnVuY3Rpb24gZGlyZWN0bHkgYmVjYXVzZSBpdCBjb2VyY2VzIGFueXRoaW5nIHRvIGFcclxuICAvLyBzdHJpbmcuIFdlIGdldCBzdHJpY3RlciB0eXBlY2hlY2tpbmcgYnkgdXNpbmcgbWF5YmVUb1N0cmluZywgc28gaXQgc2hvdWxkIGdlbmVyYWxseSBiZVxyXG4gIC8vIHByZWZlcnJlZC5cclxuICByZXR1cm4gU3RyaW5nKHN0cik7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBPcmlnaW5hbGx5IGFkYXB0ZWQgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vYXplci9yZWxhdGl2ZS1kYXRlLlxyXG4gKiBXZSdyZSBpbmNsdWRpbmcgaXQgYmVjYXVzZSBvZiBodHRwczovL2dpdGh1Yi5jb20vbnBtL25wbS9pc3N1ZXMvMTIwMTJcclxuICovXHJcbmNvbnN0IFNFQ09ORCA9IDEwMDA7XHJcbmNvbnN0IE1JTlVURSA9IDYwICogU0VDT05EO1xyXG5jb25zdCBIT1VSID0gNjAgKiBNSU5VVEU7XHJcbmNvbnN0IERBWSA9IDI0ICogSE9VUjtcclxuY29uc3QgV0VFSyA9IDcgKiBEQVk7XHJcbmNvbnN0IFlFQVIgPSBEQVkgKiAzNjU7XHJcbmNvbnN0IE1PTlRIID0gWUVBUiAvIDEyO1xyXG5cclxuY29uc3Qgc2hvcnRGb3JtYXRzID0gW1xyXG4gIFswLjcgKiBNSU5VVEUsICdub3cnXSxcclxuICBbMS41ICogTUlOVVRFLCAnMW0nXSxcclxuICBbNjAgKiBNSU5VVEUsICdtJywgTUlOVVRFXSxcclxuICBbMS41ICogSE9VUiwgJzFoJ10sXHJcbiAgW0RBWSwgJ2gnLCBIT1VSXSxcclxuICBbMiAqIERBWSwgJzFkJ10sXHJcbiAgWzcgKiBEQVksICdkJywgREFZXSxcclxuICBbMS41ICogV0VFSywgJzF3J10sXHJcbiAgW01PTlRILCAndycsIFdFRUtdLFxyXG4gIFsxLjUgKiBNT05USCwgJzFtbyddLFxyXG4gIFtZRUFSLCAnbW8nLCBNT05USF0sXHJcbiAgWzEuNSAqIFlFQVIsICcxeSddLFxyXG4gIFtOdW1iZXIuTUFYX1ZBTFVFLCAneScsIFlFQVJdLFxyXG5dO1xyXG5cclxuY29uc3QgbG9uZ0Zvcm1hdHMgPSBbXHJcbiAgWzAuNyAqIE1JTlVURSwgJ2p1c3Qgbm93J10sXHJcbiAgWzEuNSAqIE1JTlVURSwgJ2EgbWludXRlIGFnbyddLFxyXG4gIFs2MCAqIE1JTlVURSwgJ21pbnV0ZXMgYWdvJywgTUlOVVRFXSxcclxuICBbMS41ICogSE9VUiwgJ2FuIGhvdXIgYWdvJ10sXHJcbiAgW0RBWSwgJ2hvdXJzIGFnbycsIEhPVVJdLFxyXG4gIFsyICogREFZLCAneWVzdGVyZGF5J10sXHJcbiAgWzcgKiBEQVksICdkYXlzIGFnbycsIERBWV0sXHJcbiAgWzEuNSAqIFdFRUssICdhIHdlZWsgYWdvJ10sXHJcbiAgW01PTlRILCAnd2Vla3MgYWdvJywgV0VFS10sXHJcbiAgWzEuNSAqIE1PTlRILCAnYSBtb250aCBhZ28nXSxcclxuICBbWUVBUiwgJ21vbnRocyBhZ28nLCBNT05USF0sXHJcbiAgWzEuNSAqIFlFQVIsICdhIHllYXIgYWdvJ10sXHJcbiAgW051bWJlci5NQVhfVkFMVUUsICd5ZWFycyBhZ28nLCBZRUFSXSxcclxuXTtcclxuXHJcbmNvbnN0IGxvbmdGb3JtYXRzTnVtYmVycyA9IFtcclxuICBbMC43ICogTUlOVVRFLCAnanVzdCBub3cnXSxcclxuICBbMS41ICogTUlOVVRFLCAnMSBtaW51dGUgYWdvJ10sXHJcbiAgWzYwICogTUlOVVRFLCAnbWludXRlcyBhZ28nLCBNSU5VVEVdLFxyXG4gIFsxLjUgKiBIT1VSLCAnMSBob3VyIGFnbyddLFxyXG4gIFtEQVksICdob3VycyBhZ28nLCBIT1VSXSxcclxuICBbMiAqIERBWSwgJ3llc3RlcmRheSddLFxyXG4gIFs3ICogREFZLCAnZGF5cyBhZ28nLCBEQVldLFxyXG4gIFsxLjUgKiBXRUVLLCAnMSB3ZWVrIGFnbyddLFxyXG4gIFtNT05USCwgJ3dlZWtzIGFnbycsIFdFRUtdLFxyXG4gIFsxLjUgKiBNT05USCwgJzEgbW9udGggYWdvJ10sXHJcbiAgW1lFQVIsICdtb250aHMgYWdvJywgTU9OVEhdLFxyXG4gIFsxLjUgKiBZRUFSLCAnMSB5ZWFyIGFnbyddLFxyXG4gIFtOdW1iZXIuTUFYX1ZBTFVFLCAneWVhcnMgYWdvJywgWUVBUl0sXHJcbl07XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVsYXRpdmVEYXRlKFxyXG4gIGlucHV0XzogbnVtYmVyIHwgRGF0ZSxcclxuICByZWZlcmVuY2VfPzogbnVtYmVyIHwgRGF0ZSxcclxuICB1c2VTaG9ydFZhcmlhbnQ/OiBib29sZWFuID0gZmFsc2UsXHJcbiAgdXNlTnVtYmVyc09ubHk/OiBib29sZWFuID0gZmFsc2UsXHJcbik6IHN0cmluZyB7XHJcbiAgbGV0IGlucHV0ID0gaW5wdXRfO1xyXG4gIGxldCByZWZlcmVuY2UgPSByZWZlcmVuY2VfO1xyXG4gIGlmIChpbnB1dCBpbnN0YW5jZW9mIERhdGUpIHtcclxuICAgIGlucHV0ID0gaW5wdXQuZ2V0VGltZSgpO1xyXG4gIH1cclxuICAvLyBmbG93bGludC1uZXh0LWxpbmUgc2tldGNoeS1udWxsLW51bWJlcjpvZmZcclxuICBpZiAoIXJlZmVyZW5jZSkge1xyXG4gICAgcmVmZXJlbmNlID0gbmV3IERhdGUoKS5nZXRUaW1lKCk7XHJcbiAgfVxyXG4gIGlmIChyZWZlcmVuY2UgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICByZWZlcmVuY2UgPSByZWZlcmVuY2UuZ2V0VGltZSgpO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgZGVsdGEgPSByZWZlcmVuY2UgLSBpbnB1dDtcclxuICBjb25zdCBmb3JtYXRzID0gdXNlU2hvcnRWYXJpYW50XHJcbiAgICA/IHNob3J0Rm9ybWF0c1xyXG4gICAgOiB1c2VOdW1iZXJzT25seVxyXG4gICAgICA/IGxvbmdGb3JtYXRzTnVtYmVyc1xyXG4gICAgICA6IGxvbmdGb3JtYXRzO1xyXG4gIGZvciAoY29uc3QgW2xpbWl0LCByZWxhdGl2ZUZvcm1hdCwgcmVtYWluZGVyXSBvZiBmb3JtYXRzKSB7XHJcbiAgICBpZiAoZGVsdGEgPCBsaW1pdCkge1xyXG4gICAgICBpZiAodHlwZW9mIHJlbWFpbmRlciA9PT0gJ251bWJlcicpIHtcclxuICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgTWF0aC5yb3VuZChkZWx0YSAvIHJlbWFpbmRlcikgK1xyXG4gICAgICAgICAgKHVzZVNob3J0VmFyaWFudCA/ICcnIDogJyAnKSArXHJcbiAgICAgICAgICByZWxhdGl2ZUZvcm1hdFxyXG4gICAgICAgICk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgcmV0dXJuIHJlbGF0aXZlRm9ybWF0O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICB0aHJvdyBuZXcgRXJyb3IoJ1RoaXMgc2hvdWxkIG5ldmVyIGJlIHJlYWNoZWQuJyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDb3VudCB0aGUgbnVtYmVyIG9mIG9jY3VycmVuY2VzIG9mIGBjaGFyYCBpbiBgc3RyYC5cclxuICogYGNoYXJgIG11c3QgYmUgYSBzdHJpbmcgb2YgbGVuZ3RoIDEuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gY291bnRPY2N1cnJlbmNlcyhoYXlzdGFjazogc3RyaW5nLCBjaGFyOiBzdHJpbmcpIHtcclxuICBpbnZhcmlhbnQoY2hhci5sZW5ndGggPT09IDEsICdjaGFyIG11c3QgYmUgYSBzdHJpbmcgb2YgbGVuZ3RoIDEnKTtcclxuXHJcbiAgbGV0IGNvdW50ID0gMDtcclxuICBjb25zdCBjb2RlID0gY2hhci5jaGFyQ29kZUF0KDApO1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgaGF5c3RhY2subGVuZ3RoOyBpKyspIHtcclxuICAgIGlmIChoYXlzdGFjay5jaGFyQ29kZUF0KGkpID09PSBjb2RlKSB7XHJcbiAgICAgIGNvdW50Kys7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiBjb3VudDtcclxufVxyXG5cclxuLyoqXHJcbiAqIHNoZWxsLXF1b3RlJ3MgcGFyc2UgYWxsb3dzIHBpcGUgb3BlcmF0b3JzIGFuZCBjb21tZW50cy5cclxuICogR2VuZXJhbGx5IHVzZXJzIGRvbid0IGNhcmUgYWJvdXQgdGhpcywgc28gdGhyb3cgaWYgd2UgZW5jb3VudGVyIGFueSBvcGVyYXRvcnMuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc2hlbGxQYXJzZShzdHI6IHN0cmluZywgZW52PzogT2JqZWN0KTogQXJyYXk8c3RyaW5nPiB7XHJcbiAgY29uc3QgcmVzdWx0ID0gcGFyc2Uoc3RyLCBlbnYpO1xyXG4gIGZvciAobGV0IGkgPSAwOyBpIDwgcmVzdWx0Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICBpZiAodHlwZW9mIHJlc3VsdFtpXSAhPT0gJ3N0cmluZycpIHtcclxuICAgICAgaWYgKHJlc3VsdFtpXS5vcCAhPSBudWxsKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICAgYFVuZXhwZWN0ZWQgb3BlcmF0b3IgXCIke3Jlc3VsdFtpXS5vcH1cIiBwcm92aWRlZCB0byBzaGVsbFBhcnNlYCxcclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAgIGBVbmV4cGVjdGVkIGNvbW1lbnQgXCIke3Jlc3VsdFtpXS5jb21tZW50fVwiIHByb3ZpZGVkIHRvIHNoZWxsUGFyc2VgLFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuLyoqXHJcbiAqIHNoZWxsLXF1b3RlJ3MgcGFyc2UgYWxsb3dzIHBpcGUgb3BlcmF0b3JzIGFuZCBjb21tZW50cyBhbmQgZ2xvYnNcclxuICogV2UgdHJlYXQgZ2xvYiBwYXR0ZXJucyBhcyBub3JtYWwgc3RyaW5ncy4gRm9yIHRoZSBvdGhlciBvcGVyYXRvcnMsIHdlIHRocm93LlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNoZWxsUGFyc2VXaXRoR2xvYnMoc3RyOiBzdHJpbmcsIGVudj86IE9iamVjdCk6IEFycmF5PHN0cmluZz4ge1xyXG4gIGNvbnN0IHJlc3VsdCA9IHBhcnNlKHN0ciwgZW52KTtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdC5sZW5ndGg7IGkrKykge1xyXG4gICAgaWYgKHR5cGVvZiByZXN1bHRbaV0gIT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIGlmIChyZXN1bHRbaV0ub3AgPT09ICdnbG9iJykge1xyXG4gICAgICAgIHJlc3VsdFtpXSA9IHJlc3VsdFtpXS5wYXR0ZXJuO1xyXG4gICAgICB9IGVsc2UgaWYgKHJlc3VsdFtpXS5vcCAhPSBudWxsKSB7XHJcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxyXG4gICAgICAgICAgYFVuZXhwZWN0ZWQgb3BlcmF0b3IgXCIke3Jlc3VsdFtpXS5vcH1cIiBwcm92aWRlZCB0byBzaGVsbFBhcnNlYCxcclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAgIGBVbmV4cGVjdGVkIGNvbW1lbnQgXCIke3Jlc3VsdFtpXS5jb21tZW50fVwiIHByb3ZpZGVkIHRvIHNoZWxsUGFyc2VgLFxyXG4gICAgICAgICk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHJlc3VsdDtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRlY2huaWNhbGx5IHlvdSBjYW4gcGFzcyBpbiB7IG9wZXJhdG9yOiBzdHJpbmcgfSBoZXJlLFxyXG4gKiBidXQgd2UgZG9uJ3QgdXNlIHRoYXQgaW4gbW9zdCBBUElzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNoZWxsUXVvdGUoYXJnczogQXJyYXk8c3RyaW5nPik6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHF1b3RlKGFyZ3MpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ29tbW9uUHJlZml4KGE6IHN0cmluZywgYjogc3RyaW5nKTogW3N0cmluZywgc3RyaW5nXSB7XHJcbiAgbGV0IGkgPSAwO1xyXG4gIHdoaWxlIChhW2ldID09PSBiW2ldICYmIGkgPCBhLmxlbmd0aCAmJiBpIDwgYi5sZW5ndGgpIHtcclxuICAgIGkrKztcclxuICB9XHJcbiAgcmV0dXJuIFthLnN1YnN0cmluZyhpKSwgYi5zdWJzdHJpbmcoaSldO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVtb3ZlQ29tbW9uU3VmZml4KGE6IHN0cmluZywgYjogc3RyaW5nKTogW3N0cmluZywgc3RyaW5nXSB7XHJcbiAgbGV0IGkgPSAwO1xyXG4gIHdoaWxlIChcclxuICAgIGFbYS5sZW5ndGggLSAxIC0gaV0gPT09IGJbYi5sZW5ndGggLSAxIC0gaV0gJiZcclxuICAgIGkgPCBhLmxlbmd0aCAmJlxyXG4gICAgaSA8IGIubGVuZ3RoXHJcbiAgKSB7XHJcbiAgICBpKys7XHJcbiAgfVxyXG4gIHJldHVybiBbYS5zdWJzdHJpbmcoMCwgYS5sZW5ndGggLSBpKSwgYi5zdWJzdHJpbmcoMCwgYi5sZW5ndGggLSBpKV07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBzaG9ydGVuKFxyXG4gIHN0cjogc3RyaW5nLFxyXG4gIG1heExlbmd0aDogbnVtYmVyLFxyXG4gIHN1ZmZpeD86IHN0cmluZyxcclxuKTogc3RyaW5nIHtcclxuICByZXR1cm4gc3RyLmxlbmd0aCA8IG1heExlbmd0aFxyXG4gICAgPyBzdHJcclxuICAgIDogc3RyLnNsaWNlKDAsIG1heExlbmd0aCkgKyAoc3VmZml4IHx8ICcnKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIExpa2UgU3RyaW5nLnNwbGl0LCBidXQgb25seSBzcGxpdHMgb25jZS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcGxpdE9uY2Uoc3RyOiBzdHJpbmcsIHNlcGFyYXRvcjogc3RyaW5nKTogW3N0cmluZywgP3N0cmluZ10ge1xyXG4gIGNvbnN0IGluZGV4ID0gc3RyLmluZGV4T2Yoc2VwYXJhdG9yKTtcclxuICByZXR1cm4gaW5kZXggPT09IC0xXHJcbiAgICA/IFtzdHIsIG51bGxdXHJcbiAgICA6IFtzdHIuc2xpY2UoMCwgaW5kZXgpLCBzdHIuc2xpY2UoaW5kZXggKyBzZXBhcmF0b3IubGVuZ3RoKV07XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBJbmRlbnRzIGVhY2ggbGluZSBieSB0aGUgc3BlY2lmaWVkIG51bWJlciBvZiBjaGFyYWN0ZXJzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGluZGVudChcclxuICBzdHI6IHN0cmluZyxcclxuICBsZXZlbDogbnVtYmVyID0gMixcclxuICBjaGFyOiBzdHJpbmcgPSAnICcsXHJcbik6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHN0ci5yZXBsYWNlKC9eKFteXFxuXSkvZ20sIGNoYXIucmVwZWF0KGxldmVsKSArICckMScpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcGx1cmFsaXplKG5vdW46IHN0cmluZywgY291bnQ6IG51bWJlcikge1xyXG4gIHJldHVybiBjb3VudCA9PT0gMSA/IG5vdW4gOiBub3VuICsgJ3MnO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2FwaXRhbGl6ZShzdHI6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHN0ci5sZW5ndGggPT09IDBcclxuICAgID8gc3RyXHJcbiAgICA6IHN0clxyXG4gICAgICAgIC5jaGFyQXQoMClcclxuICAgICAgICAudG9VcHBlckNhc2UoKVxyXG4gICAgICAgIC5jb25jYXQoc3RyLnNsaWNlKDEpKTtcclxufVxyXG5cclxudHlwZSBNYXRjaFJhbmdlID0gWy8qIHN0YXJ0ICovIG51bWJlciwgLyogZW5kICovIG51bWJlcl07XHJcblxyXG4vKipcclxuICogUmV0dXJucyBhIGxpc3Qgb2YgcmFuZ2VzIHdoZXJlIG5lZWRsZSBvY2N1cnMgaW4gaGF5c3RhY2suXHJcbiAqIFRoaXMgd2lsbCAqbm90KiByZXR1cm4gb3ZlcmxhcHBpbmcgbWF0Y2hlczsgaS5lLiB0aGUgcmV0dXJuZWQgbGlzdCB3aWxsIGJlIGRpc2pvaW50LlxyXG4gKiBUaGlzIG1ha2VzIGl0IGVhc2llciB0byB1c2UgZm9yIGUuZy4gaGlnaGxpZ2h0aW5nIG1hdGNoZXMgaW4gYSBVSS5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRNYXRjaFJhbmdlcyhcclxuICBoYXlzdGFjazogc3RyaW5nLFxyXG4gIG5lZWRsZTogc3RyaW5nLFxyXG4pOiBBcnJheTxNYXRjaFJhbmdlPiB7XHJcbiAgaWYgKG5lZWRsZSA9PT0gJycpIHtcclxuICAgIC8vIE5vdCByZWFsbHkgYSB2YWxpZCB1c2UuXHJcbiAgICByZXR1cm4gW107XHJcbiAgfVxyXG5cclxuICBjb25zdCByYW5nZXMgPSBbXTtcclxuICBsZXQgbWF0Y2hJbmRleCA9IDA7XHJcbiAgd2hpbGUgKChtYXRjaEluZGV4ID0gaGF5c3RhY2suaW5kZXhPZihuZWVkbGUsIG1hdGNoSW5kZXgpKSAhPT0gLTEpIHtcclxuICAgIGNvbnN0IHByZXZSYW5nZSA9IHJhbmdlc1tyYW5nZXMubGVuZ3RoIC0gMV07XHJcbiAgICBpZiAocHJldlJhbmdlICE9IG51bGwgJiYgcHJldlJhbmdlWzFdID09PSBtYXRjaEluZGV4KSB7XHJcbiAgICAgIHByZXZSYW5nZVsxXSArPSBuZWVkbGUubGVuZ3RoO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmFuZ2VzLnB1c2goW21hdGNoSW5kZXgsIG1hdGNoSW5kZXggKyBuZWVkbGUubGVuZ3RoXSk7XHJcbiAgICB9XHJcbiAgICBtYXRjaEluZGV4ICs9IG5lZWRsZS5sZW5ndGg7XHJcbiAgfVxyXG4gIHJldHVybiByYW5nZXM7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBlc2NhcGVNYXJrZG93bihtYXJrZG93bjogc3RyaW5nKTogc3RyaW5nIHtcclxuICAvLyBXaGljaCBjaGFyYWN0ZXJzIGNhbiBiZSBiYWNrc2xhc2gtZXNjYXBlZD9cclxuICAvLyBtYXJrZG93bjogICAhICMgICAgKCkqKyAtLiAgICAgICAgW1xcXSBfYHsgfSAgIGh0dHBzOi8vZGFyaW5nZmlyZWJhbGwubmV0L3Byb2plY3RzL21hcmtkb3duL3N5bnRheCNiYWNrc2xhc2hcclxuICAvLyBjb21tb25NYXJrOiAhXCIjJCUmJygpKissLS4vOjs8PT4/QFtcXF1eX2B7fH1+ICBodHRwczovL3NwZWMuY29tbW9ubWFyay5vcmcvMC4yOC8jYmFja3NsYXNoLWVzY2FwZXNcclxuICAvLyBXZSdsbCBvbmx5IGJhY2tzbGFzaC1lc2NhcGUgdGhlIGxvd2VzdCBjb21tb24gZGVub21pbmF0b3IuXHJcbiAgY29uc3Qgc2xhc2hFc2NhcGVkID0gbWFya2Rvd24ucmVwbGFjZSgvWyMhKCkqK1xcLS5bXFxcXFxcXV9ge31dL2csICdcXFxcJCYnKTtcclxuICAvLyBBbmQgSFRNTCB0YWdzIG5lZWQgdG8gYmUgJmx0OyAmZ3Q7IGVzY2FwZWQuXHJcbiAgcmV0dXJuIHNsYXNoRXNjYXBlZC5yZXBsYWNlKC88L2csICcmbHQ7JykucmVwbGFjZSgvPi9nLCAnJmd0OycpO1xyXG59XHJcblxyXG4vLyBPcmlnaW5hbGx5IGNvcGllZCBmcm9tOlxyXG4vLyBodHRwOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM4MDk0MDEvd2hhdC1pcy1hLWdvb2QtcmVndWxhci1leHByZXNzaW9uLXRvLW1hdGNoLWEtdXJsXHJcbi8vIEJ1dCBhZG9wdGVkIHRvIG1hdGNoIGB3d3cuYCB1cmxzIGFzIHdlbGwgYXMgYGh0dHBzP2AgdXJsc1xyXG4vLyBhbmQgYCFgIGFzIGFjY2VwdGFibGUgdXJsIHBpZWNlLlxyXG4vLyBUaGVuIG9wdGltaXplZCB3aXRoIGh0dHBzOi8vd3d3Lm5wbWpzLmNvbS9wYWNrYWdlL3JlZ2V4cC10cmVlLlxyXG4vLyBBZGRlZCBhIHNpbmdsZSBtYXRjaGluZyBncm91cCBmb3IgdXNlIHdpdGggU3RyaW5nLnNwbGl0LlxyXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LWxlblxyXG5leHBvcnQgY29uc3QgVVJMX1JFR0VYID0gLyhodHRwcz86XFwvXFwvKD86d3d3XFwuKT9bLVxcd0A6JS4rfiM9XXsyLDI1Nn1cXC5bYS16XXsyLDZ9XFxiWy1cXHdAOiUrLn4jPyYvPSFdKnx3d3dcXC5bLVxcd0A6JS4rfiM9XXsyLDI1Nn1cXC5bYS16XXsyLDZ9XFxiWy1cXHdAOiUrLn4jPyYvPSFdKikvO1xyXG5cclxuZXhwb3J0IGNvbnN0IEVMTElQU0lTX0NIQVIgPSAnXFx1MjAyNic7XHJcbmV4cG9ydCBjb25zdCBaRVJPX1dJRFRIX1NQQUNFID0gJ1xcdTIwMEInO1xyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N0cmluZy5qcyJdLCJuYW1lcyI6WyJzdHJpbmdpZnlFcnJvciIsImVycm9yIiwibmFtZSIsIm1lc3NhZ2UiLCJzdGFjayIsIm1heWJlVG9TdHJpbmciLCJzdHIiLCJTdHJpbmciLCJTRUNPTkQiLCJNSU5VVEUiLCJIT1VSIiwiREFZIiwiV0VFSyIsIllFQVIiLCJNT05USCIsInNob3J0Rm9ybWF0cyIsIk51bWJlciIsIk1BWF9WQUxVRSIsImxvbmdGb3JtYXRzIiwibG9uZ0Zvcm1hdHNOdW1iZXJzIiwicmVsYXRpdmVEYXRlIiwiaW5wdXRfIiwicmVmZXJlbmNlXyIsInVzZVNob3J0VmFyaWFudCIsInVzZU51bWJlcnNPbmx5IiwiaW5wdXQiLCJyZWZlcmVuY2UiLCJEYXRlIiwiZ2V0VGltZSIsImRlbHRhIiwiZm9ybWF0cyIsImxpbWl0IiwicmVsYXRpdmVGb3JtYXQiLCJyZW1haW5kZXIiLCJNYXRoIiwicm91bmQiLCJFcnJvciIsImNvdW50T2NjdXJyZW5jZXMiLCJoYXlzdGFjayIsImNoYXIiLCJsZW5ndGgiLCJjb3VudCIsImNvZGUiLCJjaGFyQ29kZUF0IiwiaSIsInNoZWxsUGFyc2UiLCJlbnYiLCJyZXN1bHQiLCJvcCIsImNvbW1lbnQiLCJzaGVsbFBhcnNlV2l0aEdsb2JzIiwicGF0dGVybiIsInNoZWxsUXVvdGUiLCJhcmdzIiwicmVtb3ZlQ29tbW9uUHJlZml4IiwiYSIsImIiLCJzdWJzdHJpbmciLCJyZW1vdmVDb21tb25TdWZmaXgiLCJzaG9ydGVuIiwibWF4TGVuZ3RoIiwic3VmZml4Iiwic2xpY2UiLCJzcGxpdE9uY2UiLCJzZXBhcmF0b3IiLCJpbmRleCIsImluZGV4T2YiLCJpbmRlbnQiLCJsZXZlbCIsInJlcGxhY2UiLCJyZXBlYXQiLCJwbHVyYWxpemUiLCJub3VuIiwiY2FwaXRhbGl6ZSIsImNoYXJBdCIsInRvVXBwZXJDYXNlIiwiY29uY2F0IiwiZ2V0TWF0Y2hSYW5nZXMiLCJuZWVkbGUiLCJyYW5nZXMiLCJtYXRjaEluZGV4IiwicHJldlJhbmdlIiwicHVzaCIsImVzY2FwZU1hcmtkb3duIiwibWFya2Rvd24iLCJzbGFzaEVzY2FwZWQiLCJVUkxfUkVHRVgiLCJFTExJUFNJU19DSEFSIiwiWkVST19XSURUSF9TUEFDRSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQTs7QUFDQTs7OztBQWJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFLTyxTQUFTQSxjQUFULENBQXdCQyxLQUF4QixFQUE4QztBQUNuRCxTQUFRLFNBQVFBLEtBQUssQ0FBQ0MsSUFBSyxjQUFhRCxLQUFLLENBQUNFLE9BQVEsWUFDcERGLEtBQUssQ0FBQ0csS0FDUCxHQUZEO0FBR0QsQyxDQUVEO0FBQ0E7OztBQUNPLFNBQVNDLGFBQVQsQ0FBdUJDLEdBQXZCLEVBQTZDO0FBQ2xEO0FBQ0E7QUFDQTtBQUNBLFNBQU9DLE1BQU0sQ0FBQ0QsR0FBRCxDQUFiO0FBQ0Q7QUFFRDtBQUNBO0FBQ0E7QUFDQTs7O0FBQ0EsTUFBTUUsTUFBTSxHQUFHLElBQWY7QUFDQSxNQUFNQyxNQUFNLEdBQUcsS0FBS0QsTUFBcEI7QUFDQSxNQUFNRSxJQUFJLEdBQUcsS0FBS0QsTUFBbEI7QUFDQSxNQUFNRSxHQUFHLEdBQUcsS0FBS0QsSUFBakI7QUFDQSxNQUFNRSxJQUFJLEdBQUcsSUFBSUQsR0FBakI7QUFDQSxNQUFNRSxJQUFJLEdBQUdGLEdBQUcsR0FBRyxHQUFuQjtBQUNBLE1BQU1HLEtBQUssR0FBR0QsSUFBSSxHQUFHLEVBQXJCO0FBRUEsTUFBTUUsWUFBWSxHQUFHLENBQ25CLENBQUMsTUFBTU4sTUFBUCxFQUFlLEtBQWYsQ0FEbUIsRUFFbkIsQ0FBQyxNQUFNQSxNQUFQLEVBQWUsSUFBZixDQUZtQixFQUduQixDQUFDLEtBQUtBLE1BQU4sRUFBYyxHQUFkLEVBQW1CQSxNQUFuQixDQUhtQixFQUluQixDQUFDLE1BQU1DLElBQVAsRUFB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LENBQUNBLE1BQU0sQ0FBQ3ZDLE1BQVAsR0FBZ0IsQ0FBakIsQ0FBeEI7O0FBQ0EsUUFBSXlDLFNBQVMsSUFBSSxJQUFiLElBQXFCQSxTQUFTLENBQUMsQ0FBRCxDQUFULEtBQWlCRCxVQUExQyxFQUFzRDtBQUNwREMsTUFBQUEsU0FBUyxDQUFDLENBQUQsQ0FBVCxJQUFnQkgsTUFBTSxDQUFDdEMsTUFBdkI7QUFDRCxLQUZELE1BRU87QUFDTHVDLE1BQUFBLE1BQU0sQ0FBQ0csSUFBUCxDQUFZLENBQUNGLFVBQUQsRUFBYUEsVUFBVSxHQUFHRixNQUFNLENBQUN0QyxNQUFqQyxDQUFaO0FBQ0Q7O0FBQ0R3QyxJQUFBQSxVQUFVLElBQUlGLE1BQU0sQ0FBQ3RDLE1BQXJCO0FBQ0Q7O0FBQ0QsU0FBT3VDLE1BQVA7QUFDRDs7QUFFTSxTQUFTSSxjQUFULENBQXdCQyxRQUF4QixFQUFrRDtBQUN2RDtBQUNBO0FBQ0E7QUFDQTtBQUNBLFFBQU1DLFlBQVksR0FBR0QsUUFBUSxDQUFDZixPQUFULENBQWlCLHVCQUFqQixFQUEwQyxNQUExQyxDQUFyQixDQUx1RCxDQU12RDs7QUFDQSxTQUFPZ0IsWUFBWSxDQUFDaEIsT0FBYixDQUFxQixJQUFyQixFQUEyQixNQUEzQixFQUFtQ0EsT0FBbkMsQ0FBMkMsSUFBM0MsRUFBaUQsTUFBakQsQ0FBUDtBQUNELEMsQ0FFRDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBQ08sTUFBTWlCLFNBQVMsR0FBRyx1SUFBbEI7O0FBRUEsTUFBTUMsYUFBYSxHQUFHLFFBQXRCOztBQUNBLE1BQU1DLGdCQUFnQixHQUFHLFFBQXpCIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5pbXBvcnQge3BhcnNlLCBxdW90ZX0gZnJvbSAnLi9fc2hlbGwtcXVvdGUnO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZ2lmeUVycm9yKGVycm9yOiBFcnJvcik6IHN0cmluZyB7XHJcbiAgcmV0dXJuIGBuYW1lOiAke2Vycm9yLm5hbWV9LCBtZXNzYWdlOiAke2Vycm9yLm1lc3NhZ2V9LCBzdGFjazogJHtcclxuICAgIGVycm9yLnN0YWNrXHJcbiAgfS5gO1xyXG59XHJcblxyXG4vLyBBcyBvZiBGbG93IHYwLjI4LCBGbG93IGRvZXMgbm90IGFsbGxvdyBpbXBsaWNpdCBzdHJpbmcgY29lcmNpb24gb2YgbnVsbCBvciB1bmRlZmluZWQuIFVzZSB0aGlzIHRvXHJcbi8vIG1ha2UgaXQgZXhwbGljaXQuXHJcbmV4cG9ydCBmdW5jdGlvbiBtYXliZVRvU3RyaW5nKHN0cjogP3N0cmluZyk6IHN0cmluZyB7XHJcbiAgLy8gV2UgZG9uJ3Qgd2FudCB0byBlbmNvdXJhZ2UgdGhlIHVzZSBvZiB0aGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGJlY2F1c2UgaXQgY29lcmNlcyBhbnl0aGluZyB0byBhXHJcbiAgLy8gc3RyaW5nLiBXZSBnZXQgc3RyaWN0ZXIgdHlwZWNoZWNraW5nIGJ5IHVzaW5nIG1heWJlVG9TdHJpbmcsIHNvIGl0IHNob3VsZCBnZW5lcmFsbHkgYmVcclxuICAvLyBwcmVmZXJyZWQuXHJcbiAgcmV0dXJuIFN0cmluZyhzdHIpO1xyXG59XHJcblxyXG4vKipcclxuICogT3JpZ2luYWxseSBhZGFwdGVkIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL2F6ZXIvcmVsYXRpdmUtZGF0ZS5cclxuICogV2UncmUgaW5jbHVkaW5nIGl0IGJlY2F1c2Ugb2YgaHR0cHM6Ly9naXRodWIuY29tL25wbS9ucG0vaXNzdWVzLzEyMDEyXHJcbiAqL1xyXG5jb25zdCBTRUNPTkQgPSAxMDAwO1xyXG5jb25zdCBNSU5VVEUgPSA2MCAqIFNFQ09ORDtcclxuY29uc3QgSE9VUiA9IDYwICogTUlOVVRFO1xyXG5jb25zdCBEQVkgPSAyNCAqIEhPVVI7XHJcbmNvbnN0IFdFRUsgPSA3ICogREFZO1xyXG5jb25zdCBZRUFSID0gREFZICogMzY1O1xyXG5jb25zdCBNT05USCA9IFlFQVIgLyAxMjtcclxuXHJcbmNvbnN0IHNob3J0Rm9ybWF0cyA9IFtcclxuICBbMC43ICogTUlOVVRFLCAnbm93J10sXHJcbiAgWzEuNSAqIE1JTlVURSwgJzFtJ10sXHJcbiAgWzYwICogTUlOVVRFLCAnbScsIE1JTlVURV0sXHJcbiAgWzEuNSAqIEhPVVIsICcxaCddLFxyXG4gIFtEQVksICdoJywgSE9VUl0sXHJcbiAgWzIgKiBEQVksICcxZCddLFxyXG4gIFs3ICogREFZLCAnZCcsIERBWV0sXHJcbiAgWzEuNSAqIFdFRUssICcxdyddLFxyXG4gIFtNT05USCwgJ3cnLCBXRUVLXSxcclxuICBbMS41ICogTU9OVEgsICcxbW8nXSxcclxuICBbWUVBUiwgJ21vJywgTU9OVEhdLFxyXG4gIFsxLjUgKiBZRUFSLCAnMXknXSxcclxuICBbTnVtYmVyLk1BWF9WQUxVRSwgJ3knLCBZRUFSXSxcclxuXTtcclxuXHJcbmNvbnN0IGxvbmdGb3JtYXRzID0gW1xyXG4gIFswLjcgKiBNSU5VVEUsICdqdXN0IG5vdyddLFxyXG4gIFsxLjUgKiBNSU5VVEUsICdhIG1pbnV0ZSBhZ28nXSxcclxuICBbNjAgKiBNSU5VVEUsICdtaW51dGVzIGFnbycsIE1JTlVURV0sXHJcbiAgWzEuNSAqIEhPVVIsICdhbiBob3VyIGFnbyddLFxyXG4gIFtEQVksICdob3VycyBhZ28nLCBIT1VSXSxcclxuICBbMiAqIERBWSwgJ3llc3RlcmRheSddLFxyXG4gIFs3ICogREFZLCAnZGF5cyBhZ28nLCBEQVldLFxyXG4gIFsxLjUgKiBXRUVLLCAnYSB3ZWVrIGFnbyddLFxyXG4gIFtNT05USCwgJ3dlZWtzIGFnbycsIFdFRUtdLFxyXG4gIFsxLjUgKiBNT05USCwgJ2EgbW9udGggYWdvJ10sXHJcbiAgW1lFQVIsICdtb250aHMgYWdvJywgTU9OVEhdLFxyXG4gIFsxLjUgKiBZRUFSLCAnYSB5ZWFyIGFnbyddLFxyXG4gIFtOdW1iZXIuTUFYX1ZBTFVFLCAneWVhcnMgYWdvJywgWUVBUl0sXHJcbl07XHJcblxyXG5jb25zdCBsb25nRm9ybWF0c051bWJlcnMgPSBbXHJcbiAgWzAuNyAqIE1JTlVURSwgJ2p1c3Qgbm93J10sXHJcbiAgWzEuNSAqIE1JTlVURSwgJzEgbWludXRlIGFnbyddLFxyXG4gIFs2MCAqIE1JTlVURSwgJ21pbnV0ZXMgYWdvJywgTUlOVVRFXSxcclxuICBbMS41ICogSE9VUiwgJzEgaG91ciBhZ28nXSxcclxuICBbREFZLCAnaG91cnMgYWdvJywgSE9VUl0sXHJcbiAgWzIgKiBEQVksICd5ZXN0ZXJkYXknXSxcclxuICBbNyAqIERBWSwgJ2RheXMgYWdvJywgREFZXSxcclxuICBbMS41ICogV0VFSywgJzEgd2VlayBhZ28nXSxcclxuICBbTU9OVEgsICd3ZWVrcyBhZ28nLCBXRUVLXSxcclxuICBbMS41ICogTU9OVEgsICcxIG1vbnRoIGFnbyddLFxyXG4gIFtZRUFSLCAnbW9udGhzIGFnbycsIE1PTlRIXSxcclxuICBbMS41ICogWUVBUiwgJzEgeWVhciBhZ28nXSxcclxuICBbTnVtYmVyLk1BWF9WQUxVRSwgJ3llYXJzIGFnbycsIFlFQVJdLFxyXG5dO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlbGF0aXZlRGF0ZShcclxuICBpbnB1dF86IG51bWJlciB8IERhdGUsXHJcbiAgcmVmZXJlbmNlXz86IG51bWJlciB8IERhdGUsXHJcbiAgdXNlU2hvcnRWYXJpYW50PzogYm9vbGVhbiA9IGZhbHNlLFxyXG4gIHVzZU51bWJlcnNPbmx5PzogYm9vbGVhbiA9IGZhbHNlLFxyXG4pOiBzdHJpbmcge1xyXG4gIGxldCBpbnB1dCA9IGlucHV0XztcclxuICBsZXQgcmVmZXJlbmNlID0gcmVmZXJlbmNlXztcclxuICBpZiAoaW5wdXQgaW5zdGFuY2VvZiBEYXRlKSB7XHJcbiAgICBpbnB1dCA9IGlucHV0LmdldFRpbWUoKTtcclxuICB9XHJcbiAgLy8gZmxvd2xpbnQtbmV4dC1saW5lIHNrZXRjaHktbnVsbC1udW1iZXI6b2ZmXHJcbiAgaWYgKCFyZWZlcmVuY2UpIHtcclxuICAgIHJlZmVyZW5jZSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xyXG4gIH1cclxuICBpZiAocmVmZXJlbmNlIGluc3RhbmNlb2YgRGF0ZSkge1xyXG4gICAgcmVmZXJlbmNlID0gcmVmZXJlbmNlLmdldFRpbWUoKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IGRlbHRhID0gcmVmZXJlbmNlIC0gaW5wdXQ7XHJcbiAgY29uc3QgZm9ybWF0cyA9IHVzZVNob3J0VmFyaWFudFxyXG4gICAgPyBzaG9ydEZvcm1hdHNcclxuICAgIDogdXNlTnVtYmVyc09ubHlcclxuICAgICAgPyBsb25nRm9ybWF0c051bWJlcnNcclxuICAgICAgOiBsb25nRm9ybWF0cztcclxuICBmb3IgKGNvbnN0IFtsaW1pdCwgcmVsYXRpdmVGb3JtYXQsIHJlbWFpbmRlcl0gb2YgZm9ybWF0cykge1xyXG4gICAgaWYgKGRlbHRhIDwgbGltaXQpIHtcclxuICAgICAgaWYgKHR5cGVvZiByZW1haW5kZXIgPT09ICdudW1iZXInKSB7XHJcbiAgICAgICAgcmV0dXJuIChcclxuICAgICAgICAgIE1hdGgucm91bmQoZGVsdGEgLyByZW1haW5kZXIpICtcclxuICAgICAgICAgICh1c2VTaG9ydFZhcmlhbnQgPyAnJyA6ICcgJykgK1xyXG4gICAgICAgICAgcmVsYXRpdmVGb3JtYXRcclxuICAgICAgICApO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiByZWxhdGl2ZUZvcm1hdDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdGhyb3cgbmV3IEVycm9yKCdUaGlzIHNob3VsZCBuZXZlciBiZSByZWFjaGVkLicpO1xyXG59XHJcblxyXG4vKipcclxuICogQ291bnQgdGhlIG51bWJlciBvZiBvY2N1cnJlbmNlcyBvZiBgY2hhcmAgaW4gYHN0cmAuXHJcbiAqIGBjaGFyYCBtdXN0IGJlIGEgc3RyaW5nIG9mIGxlbmd0aCAxLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGNvdW50T2NjdXJyZW5jZXMoaGF5c3RhY2s6IHN0cmluZywgY2hhcjogc3RyaW5nKSB7XHJcbiAgaW52YXJpYW50KGNoYXIubGVuZ3RoID09PSAxLCAnY2hhciBtdXN0IGJlIGEgc3RyaW5nIG9mIGxlbmd0aCAxJyk7XHJcblxyXG4gIGxldCBjb3VudCA9IDA7XHJcbiAgY29uc3QgY29kZSA9IGNoYXIuY2hhckNvZGVBdCgwKTtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IGhheXN0YWNrLmxlbmd0aDsgaSsrKSB7XHJcbiAgICBpZiAoaGF5c3RhY2suY2hhckNvZGVBdChpKSA9PT0gY29kZSkge1xyXG4gICAgICBjb3VudCsrO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gY291bnQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBzaGVsbC1xdW90ZSdzIHBhcnNlIGFsbG93cyBwaXBlIG9wZXJhdG9ycyBhbmQgY29tbWVudHMuXHJcbiAqIEdlbmVyYWxseSB1c2VycyBkb24ndCBjYXJlIGFib3V0IHRoaXMsIHNvIHRocm93IGlmIHdlIGVuY291bnRlciBhbnkgb3BlcmF0b3JzLlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNoZWxsUGFyc2Uoc3RyOiBzdHJpbmcsIGVudj86IE9iamVjdCk6IEFycmF5PHN0cmluZz4ge1xyXG4gIGNvbnN0IHJlc3VsdCA9IHBhcnNlKHN0ciwgZW52KTtcclxuICBmb3IgKGxldCBpID0gMDsgaSA8IHJlc3VsdC5sZW5ndGg7IGkrKykge1xyXG4gICAgaWYgKHR5cGVvZiByZXN1bHRbaV0gIT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIGlmIChyZXN1bHRbaV0ub3AgIT0gbnVsbCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAgIGBVbmV4cGVjdGVkIG9wZXJhdG9yIFwiJHtyZXN1bHRbaV0ub3B9XCIgcHJvdmlkZWQgdG8gc2hlbGxQYXJzZWAsXHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgICBgVW5leHBlY3RlZCBjb21tZW50IFwiJHtyZXN1bHRbaV0uY29tbWVudH1cIiBwcm92aWRlZCB0byBzaGVsbFBhcnNlYCxcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBzaGVsbC1xdW90ZSdzIHBhcnNlIGFsbG93cyBwaXBlIG9wZXJhdG9ycyBhbmQgY29tbWVudHMgYW5kIGdsb2JzXHJcbiAqIFdlIHRyZWF0IGdsb2IgcGF0dGVybnMgYXMgbm9ybWFsIHN0cmluZ3MuIEZvciB0aGUgb3RoZXIgb3BlcmF0b3JzLCB3ZSB0aHJvdy5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzaGVsbFBhcnNlV2l0aEdsb2JzKHN0cjogc3RyaW5nLCBlbnY/OiBPYmplY3QpOiBBcnJheTxzdHJpbmc+IHtcclxuICBjb25zdCByZXN1bHQgPSBwYXJzZShzdHIsIGVudik7XHJcbiAgZm9yIChsZXQgaSA9IDA7IGkgPCByZXN1bHQubGVuZ3RoOyBpKyspIHtcclxuICAgIGlmICh0eXBlb2YgcmVzdWx0W2ldICE9PSAnc3RyaW5nJykge1xyXG4gICAgICBpZiAocmVzdWx0W2ldLm9wID09PSAnZ2xvYicpIHtcclxuICAgICAgICByZXN1bHRbaV0gPSByZXN1bHRbaV0ucGF0dGVybjtcclxuICAgICAgfSBlbHNlIGlmIChyZXN1bHRbaV0ub3AgIT0gbnVsbCkge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgICAgIGBVbmV4cGVjdGVkIG9wZXJhdG9yIFwiJHtyZXN1bHRbaV0ub3B9XCIgcHJvdmlkZWQgdG8gc2hlbGxQYXJzZWAsXHJcbiAgICAgICAgKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXHJcbiAgICAgICAgICBgVW5leHBlY3RlZCBjb21tZW50IFwiJHtyZXN1bHRbaV0uY29tbWVudH1cIiBwcm92aWRlZCB0byBzaGVsbFBhcnNlYCxcclxuICAgICAgICApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIHJldHVybiByZXN1bHQ7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUZWNobmljYWxseSB5b3UgY2FuIHBhc3MgaW4geyBvcGVyYXRvcjogc3RyaW5nIH0gaGVyZSxcclxuICogYnV0IHdlIGRvbid0IHVzZSB0aGF0IGluIG1vc3QgQVBJcy5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzaGVsbFF1b3RlKGFyZ3M6IEFycmF5PHN0cmluZz4pOiBzdHJpbmcge1xyXG4gIHJldHVybiBxdW90ZShhcmdzKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUNvbW1vblByZWZpeChhOiBzdHJpbmcsIGI6IHN0cmluZyk6IFtzdHJpbmcsIHN0cmluZ10ge1xyXG4gIGxldCBpID0gMDtcclxuICB3aGlsZSAoYVtpXSA9PT0gYltpXSAmJiBpIDwgYS5sZW5ndGggJiYgaSA8IGIubGVuZ3RoKSB7XHJcbiAgICBpKys7XHJcbiAgfVxyXG4gIHJldHVybiBbYS5zdWJzdHJpbmcoaSksIGIuc3Vic3RyaW5nKGkpXTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHJlbW92ZUNvbW1vblN1ZmZpeChhOiBzdHJpbmcsIGI6IHN0cmluZyk6IFtzdHJpbmcsIHN0cmluZ10ge1xyXG4gIGxldCBpID0gMDtcclxuICB3aGlsZSAoXHJcbiAgICBhW2EubGVuZ3RoIC0gMSAtIGldID09PSBiW2IubGVuZ3RoIC0gMSAtIGldICYmXHJcbiAgICBpIDwgYS5sZW5ndGggJiZcclxuICAgIGkgPCBiLmxlbmd0aFxyXG4gICkge1xyXG4gICAgaSsrO1xyXG4gIH1cclxuICByZXR1cm4gW2Euc3Vic3RyaW5nKDAsIGEubGVuZ3RoIC0gaSksIGIuc3Vic3RyaW5nKDAsIGIubGVuZ3RoIC0gaSldO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc2hvcnRlbihcclxuICBzdHI6IHN0cmluZyxcclxuICBtYXhMZW5ndGg6IG51bWJlcixcclxuICBzdWZmaXg/OiBzdHJpbmcsXHJcbik6IHN0cmluZyB7XHJcbiAgcmV0dXJuIHN0ci5sZW5ndGggPCBtYXhMZW5ndGhcclxuICAgID8gc3RyXHJcbiAgICA6IHN0ci5zbGljZSgwLCBtYXhMZW5ndGgpICsgKHN1ZmZpeCB8fCAnJyk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBMaWtlIFN0cmluZy5zcGxpdCwgYnV0IG9ubHkgc3BsaXRzIG9uY2UuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gc3BsaXRPbmNlKHN0cjogc3RyaW5nLCBzZXBhcmF0b3I6IHN0cmluZyk6IFtzdHJpbmcsID9zdHJpbmddIHtcclxuICBjb25zdCBpbmRleCA9IHN0ci5pbmRleE9mKHNlcGFyYXRvcik7XHJcbiAgcmV0dXJuIGluZGV4ID09PSAtMVxyXG4gICAgPyBbc3RyLCBudWxsXVxyXG4gICAgOiBbc3RyLnNsaWNlKDAsIGluZGV4KSwgc3RyLnNsaWNlKGluZGV4ICsgc2VwYXJhdG9yLmxlbmd0aCldO1xyXG59XHJcblxyXG4vKipcclxuICogSW5kZW50cyBlYWNoIGxpbmUgYnkgdGhlIHNwZWNpZmllZCBudW1iZXIgb2YgY2hhcmFjdGVycy5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBpbmRlbnQoXHJcbiAgc3RyOiBzdHJpbmcsXHJcbiAgbGV2ZWw6IG51bWJlciA9IDIsXHJcbiAgY2hhcjogc3RyaW5nID0gJyAnLFxyXG4pOiBzdHJpbmcge1xyXG4gIHJldHVybiBzdHIucmVwbGFjZSgvXihbXlxcbl0pL2dtLCBjaGFyLnJlcGVhdChsZXZlbCkgKyAnJDEnKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHBsdXJhbGl6ZShub3VuOiBzdHJpbmcsIGNvdW50OiBudW1iZXIpIHtcclxuICByZXR1cm4gY291bnQgPT09IDEgPyBub3VuIDogbm91biArICdzJztcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNhcGl0YWxpemUoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gIHJldHVybiBzdHIubGVuZ3RoID09PSAwXHJcbiAgICA/IHN0clxyXG4gICAgOiBzdHJcclxuICAgICAgICAuY2hhckF0KDApXHJcbiAgICAgICAgLnRvVXBwZXJDYXNlKClcclxuICAgICAgICAuY29uY2F0KHN0ci5zbGljZSgxKSk7XHJcbn1cclxuXHJcbnR5cGUgTWF0Y2hSYW5nZSA9IFsvKiBzdGFydCAqLyBudW1iZXIsIC8qIGVuZCAqLyBudW1iZXJdO1xyXG5cclxuLyoqXHJcbiAqIFJldHVybnMgYSBsaXN0IG9mIHJhbmdlcyB3aGVyZSBuZWVkbGUgb2NjdXJzIGluIGhheXN0YWNrLlxyXG4gKiBUaGlzIHdpbGwgKm5vdCogcmV0dXJuIG92ZXJsYXBwaW5nIG1hdGNoZXM7IGkuZS4gdGhlIHJldHVybmVkIGxpc3Qgd2lsbCBiZSBkaXNqb2ludC5cclxuICogVGhpcyBtYWtlcyBpdCBlYXNpZXIgdG8gdXNlIGZvciBlLmcuIGhpZ2hsaWdodGluZyBtYXRjaGVzIGluIGEgVUkuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TWF0Y2hSYW5nZXMoXHJcbiAgaGF5c3RhY2s6IHN0cmluZyxcclxuICBuZWVkbGU6IHN0cmluZyxcclxuKTogQXJyYXk8TWF0Y2hSYW5nZT4ge1xyXG4gIGlmIChuZWVkbGUgPT09ICcnKSB7XHJcbiAgICAvLyBOb3QgcmVhbGx5IGEgdmFsaWQgdXNlLlxyXG4gICAgcmV0dXJuIFtdO1xyXG4gIH1cclxuXHJcbiAgY29uc3QgcmFuZ2VzID0gW107XHJcbiAgbGV0IG1hdGNoSW5kZXggPSAwO1xyXG4gIHdoaWxlICgobWF0Y2hJbmRleCA9IGhheXN0YWNrLmluZGV4T2YobmVlZGxlLCBtYXRjaEluZGV4KSkgIT09IC0xKSB7XHJcbiAgICBjb25zdCBwcmV2UmFuZ2UgPSByYW5nZXNbcmFuZ2VzLmxlbmd0aCAtIDFdO1xyXG4gICAgaWYgKHByZXZSYW5nZSAhPSBudWxsICYmIHByZXZSYW5nZVsxXSA9PT0gbWF0Y2hJbmRleCkge1xyXG4gICAgICBwcmV2UmFuZ2VbMV0gKz0gbmVlZGxlLmxlbmd0aDtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJhbmdlcy5wdXNoKFttYXRjaEluZGV4LCBtYXRjaEluZGV4ICsgbmVlZGxlLmxlbmd0aF0pO1xyXG4gICAgfVxyXG4gICAgbWF0Y2hJbmRleCArPSBuZWVkbGUubGVuZ3RoO1xyXG4gIH1cclxuICByZXR1cm4gcmFuZ2VzO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlTWFya2Rvd24obWFya2Rvd246IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgLy8gV2hpY2ggY2hhcmFjdGVycyBjYW4gYmUgYmFja3NsYXNoLWVzY2FwZWQ/XHJcbiAgLy8gbWFya2Rvd246ICAgISAjICAgICgpKisgLS4gICAgICAgIFtcXF0gX2B7IH0gICBodHRwczovL2RhcmluZ2ZpcmViYWxsLm5ldC9wcm9qZWN0cy9tYXJrZG93bi9zeW50YXgjYmFja3NsYXNoXHJcbiAgLy8gY29tbW9uTWFyazogIVwiIyQlJicoKSorLC0uLzo7PD0+P0BbXFxdXl9ge3x9fiAgaHR0cHM6Ly9zcGVjLmNvbW1vbm1hcmsub3JnLzAuMjgvI2JhY2tzbGFzaC1lc2NhcGVzXHJcbiAgLy8gV2UnbGwgb25seSBiYWNrc2xhc2gtZXNjYXBlIHRoZSBsb3dlc3QgY29tbW9uIGRlbm9taW5hdG9yLlxyXG4gIGNvbnN0IHNsYXNoRXNjYXBlZCA9IG1hcmtkb3duLnJlcGxhY2UoL1sjISgpKitcXC0uW1xcXFxcXF1fYHt9XS9nLCAnXFxcXCQmJyk7XHJcbiAgLy8gQW5kIEhUTUwgdGFncyBuZWVkIHRvIGJlICZsdDsgJmd0OyBlc2NhcGVkLlxyXG4gIHJldHVybiBzbGFzaEVzY2FwZWQucmVwbGFjZSgvPC9nLCAnJmx0OycpLnJlcGxhY2UoLz4vZywgJyZndDsnKTtcclxufVxyXG5cclxuLy8gT3JpZ2luYWxseSBjb3BpZWQgZnJvbTpcclxuLy8gaHR0cDovL3N0YWNrb3ZlcmZsb3cuY29tL3F1ZXN0aW9ucy8zODA5NDAxL3doYXQtaXMtYS1nb29kLXJlZ3VsYXItZXhwcmVzc2lvbi10by1tYXRjaC1hLXVybFxyXG4vLyBCdXQgYWRvcHRlZCB0byBtYXRjaCBgd3d3LmAgdXJscyBhcyB3ZWxsIGFzIGBodHRwcz9gIHVybHNcclxuLy8gYW5kIGAhYCBhcyBhY2NlcHRhYmxlIHVybCBwaWVjZS5cclxuLy8gVGhlbiBvcHRpbWl6ZWQgd2l0aCBodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9yZWdleHAtdHJlZS5cclxuLy8gQWRkZWQgYSBzaW5nbGUgbWF0Y2hpbmcgZ3JvdXAgZm9yIHVzZSB3aXRoIFN0cmluZy5zcGxpdC5cclxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1sZW5cclxuZXhwb3J0IGNvbnN0IFVSTF9SRUdFWCA9IC8oaHR0cHM/OlxcL1xcLyg/Ond3d1xcLik/Wy1cXHdAOiUuK34jPV17MiwyNTZ9XFwuW2Etel17Miw2fVxcYlstXFx3QDolKy5+Iz8mLz0hXSp8d3d3XFwuWy1cXHdAOiUuK34jPV17MiwyNTZ9XFwuW2Etel17Miw2fVxcYlstXFx3QDolKy5+Iz8mLz0hXSopLztcclxuXHJcbmV4cG9ydCBjb25zdCBFTExJUFNJU19DSEFSID0gJ1xcdTIwMjYnO1xyXG5leHBvcnQgY29uc3QgWkVST19XSURUSF9TUEFDRSA9ICdcXHUyMDBCJztcclxuIl19 |
@@ -101,2 +101,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N5bWJvbC1kZWZpbml0aW9uLXByZXZpZXcuanMiXSwibmFtZXMiOlsiTUFYX1BSRVZJRVdfTElORVMiLCJNQVhfRklMRVNJWkUiLCJXSElURVNQQUNFX1JFR0VYIiwiZ2V0SW5kZW50TGV2ZWwiLCJsaW5lIiwibWF0Y2giLCJleGVjIiwibGVuZ3RoIiwiZ2V0RGVmaW5pdGlvblByZXZpZXciLCJkZWZpbml0aW9uIiwic3RhdHMiLCJmc1Byb21pc2UiLCJzdGF0IiwicGF0aCIsInNpemUiLCJmaWxlQnVmZmVyIiwicmVhZEZpbGUiLCJtaW1lIiwibWltZVR5cGVzIiwiY29udGVudFR5cGUiLCJudWNsaWRlVXJpIiwiZXh0bmFtZSIsInN0YXJ0c1dpdGgiLCJjb250ZW50cyIsInRvU3RyaW5nIiwiZW5jb2RpbmciLCJsaW5lcyIsInNwbGl0Iiwic3RhcnQiLCJwb3NpdGlvbiIsInJvdyIsImluaXRpYWxJbmRlbnRMZXZlbCIsImJ1ZmZlciIsImkiLCJvcGVuUGFyZW5Db3VudCIsImNsb3NlZFBhcmVuQ291bnQiLCJvcGVuQ3VybHlDb3VudCIsImNsb3NlZEN1cmx5Q291bnQiLCJpbmRlbnRMZXZlbCIsInB1c2giLCJzdWJzdHIiLCJNYXRoIiwibWluIiwidHJpbSIsImVuZHNXaXRoIiwiam9pbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQWFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBakJBOzs7Ozs7Ozs7OztBQXdCQSxNQUFNQSxpQkFBaUIsR0FBRyxFQUExQjtBQUNBLE1BQU1DLFlBQVksR0FBRyxNQUFyQjtBQUNBLE1BQU1DLGdCQUFnQixHQUFHLE1BQXpCOztBQUNBLFNBQVNDLGNBQVQsQ0FBd0JDLElBQXhCLEVBQXNDO0FBQ3BDO0FBQ0EsUUFBTUMsS0FBeUIsR0FBR0gsZ0JBQWdCLENBQUNJLElBQWpCLENBQXNCRixJQUF0QixDQUFsQztBQUNBLFNBQU9DLEtBQUssQ0FBQyxDQUFELENB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Rm5CLElBR0E7QUFDQUgsTUFBQUEsY0FBYyxLQUFLQyxnQkFOZCxFQU9MO0FBQ0E7QUFDRDtBQUNGO0FBQ0Y7O0FBRUQsU0FBTztBQUFDbEIsSUFBQUEsSUFBRDtBQUFPTSxJQUFBQSxRQUFRLEVBQUVTLE1BQU0sQ0FBQ2EsSUFBUCxDQUFZLElBQVosQ0FBakI7QUFBb0NwQixJQUFBQSxRQUFRLEVBQUU7QUFBOUMsR0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHR5cGUge051Y2xpZGVVcml9IGZyb20gJy4vbnVjbGlkZVVyaSc7XHJcbmltcG9ydCBtaW1lVHlwZXMgZnJvbSAnbWltZS10eXBlcyc7XHJcbmltcG9ydCBjciBmcm9tICdjcic7XHJcbmltcG9ydCBmc1Byb21pc2UgZnJvbSAnLi9mc1Byb21pc2UnO1xyXG5pbXBvcnQge2NvdW50T2NjdXJyZW5jZXN9IGZyb20gJy4vc3RyaW5nJztcclxuaW1wb3J0IG51Y2xpZGVVcmkgZnJvbSAnLi9udWNsaWRlVXJpJztcclxuXHJcbnR5cGUgRGVmaW5pdGlvbiA9IHtcclxuICBwYXRoOiBOdWNsaWRlVXJpLFxyXG4gIHBvc2l0aW9uOiBhdG9tJFBvaW50LFxyXG59O1xyXG5cclxuY29uc3QgTUFYX1BSRVZJRVdfTElORVMgPSAxMDtcclxuY29uc3QgTUFYX0ZJTEVTSVpFID0gMTAwMDAwO1xyXG5jb25zdCBXSElURVNQQUNFX1JFR0VYID0gL15cXHMqLztcclxuZnVuY3Rpb24gZ2V0SW5kZW50TGV2ZWwobGluZTogc3RyaW5nKSB7XHJcbiAgLy8gJEZsb3dGaXhNZSAoPj0gdjAuNzUuMClcclxuICBjb25zdCBtYXRjaDogUmVnRXhwJG1hdGNoUmVzdWx0ID0gV0hJVEVTUEFDRV9SRUdFWC5leGVjKGxpbmUpO1xyXG4gIHJldHVybiBtYXRjaFswXS5sZW5ndGg7XHJcbn1cclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXREZWZpbml0aW9uUHJldmlldyhcclxuICBkZWZpbml0aW9uOiBEZWZpbml0aW9uLFxyXG4pOiBQcm9taXNlPD97XHJcbiAgbWltZTogc3RyaW5nLFxyXG4gIGNvbnRlbnRzOiBzdHJpbmcsXHJcbiAgZW5jb2Rpbmc6IHN0cmluZyxcclxufT4ge1xyXG4gIC8vIGVuc3VyZSBmaWxlc2l6ZSBub3QgdG9vIGJpZyBiZWZvcmUgcmVhZGluZyBpbiB3aG9sZSBmaWxlXHJcbiAgY29uc3Qgc3RhdHMgPSBhd2FpdCBmc1Byb21pc2Uuc3RhdChkZWZpbml0aW9uLnBhdGgpO1xyXG4gIGlmIChzdGF0cy5zaXplID4gTUFYX0ZJTEVTSVpFKSB7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIGlmIGZpbGUgaXMgaW1hZ2UsIHJldHVybiBiYXNlLTY0IGVuY29kZWQgY29udGVudHNcclxuICBjb25zdCBmaWxlQnVmZmVyID0gYXdhaXQgZnNQcm9taXNlLnJlYWRGaWxlKGRlZmluaXRpb24ucGF0aCk7XHJcblxyXG4gIGNvbnN0IG1pbWUgPVxyXG4gICAgbWltZVR5cGVzLmNvbnRlbnRUeXBlKG51Y2xpZGVVcmkuZXh0bmFtZShkZWZpbml0aW9uLnBhdGgpKSB8fCAndGV4dC9wbGFpbic7XHJcbiAgaWYgKG1pbWUuc3RhcnRzV2l0aCgnaW1hZ2UvJykpIHtcclxuICAgIHJldHVybiB7bWltZSwgY29udGVudHM6IGZpbGVCdWZmZXIudG9TdHJpbmcoJ2Jhc2U2NCcpLCBlbmNvZGluZzogJ2Jhc2U2NCd9O1xyXG4gIH1cclxuXHJcbiAgbGV0IGNvbnRlbnRzID0gZmlsZUJ1ZmZlci50b1N0cmluZygndXRmOCcpO1xyXG4gIGNvbnRlbnRzID0gY3IoY29udGVudHMpO1xyXG4gIGNvbnN0IGxpbmVzID0gY29udGVudHMuc3BsaXQoJ1xcbicpO1xyXG5cclxuICBjb25zdCBzdGFydCA9IGRlZmluaXRpb24ucG9zaXRpb24ucm93O1xyXG4gIGNvbnN0IGluaXRpYWxJbmRlbnRMZXZlbCA9IGdldEluZGVudExldmVsKGxpbmVzW3N0YXJ0XSk7XHJcblxyXG4gIGNvbnN0IGJ1ZmZlciA9IFtdO1xyXG4gIGZvciAoXHJcbiAgICBsZXQgaSA9IHN0YXJ0LFxyXG4gICAgICBvcGVuUGFyZW5Db3VudCA9IDAsXHJcbiAgICAgIGNsb3NlZFBhcmVuQ291bnQgPSAwLFxyXG4gICAgICBvcGVuQ3VybHlDb3VudCA9IDAsXHJcbiAgICAgIGNsb3NlZEN1cmx5Q291bnQgPSAwO1xyXG4gICAgaSA8IHN0YXJ0ICsgTUFYX1BSRVZJRVdfTElORVMgJiYgaSA8IGxpbmVzLmxlbmd0aDtcclxuICAgIGkrK1xyXG4gICkge1xyXG4gICAgY29uc3QgbGluZSA9IGxpbmVzW2ldO1xyXG4gICAgY29uc3QgaW5kZW50TGV2ZWwgPSBnZXRJbmRlbnRMZXZlbChsaW5lKTtcclxuICAgIG9wZW5QYXJlbkNvdW50ICs9IGNvdW50T2NjdXJyZW5jZXMobGluZSwgJygnKTtcclxuICAgIGNsb3NlZFBhcmVuQ291bnQgKz0gY291bnRPY2N1cnJlbmNlcyhsaW5lLCAnKScpO1xyXG4gICAgb3BlbkN1cmx5Q291bnQgKz0gY291bnRPY2N1cnJlbmNlcyhsaW5lLCAneycpO1xyXG4gICAgY2xvc2VkQ3VybHlDb3VudCArPSBjb3VudE9jY3VycmVuY2VzKGxpbmUsICd9Jyk7XHJcblxyXG4gICAgYnVmZmVyLnB1c2gobGluZS5zdWJzdHIoTWF0aC5taW4oaW5kZW50TGV2ZWwsIGluaXRpYWxJbmRlbnRMZXZlbCkpKTsgLy8gZGVkZW50XHJcblxyXG4gICAgLy8gaGV1cmlzdGljIGZvciB0aGUgZW5kIG9mIGEgZnVuY3Rpb24gc2lnbmF0dXJlOlxyXG4gICAgaWYgKGluZGVudExldmVsIDw9IGluaXRpYWxJbmRlbnRMZXZlbCkge1xyXG4gICAgICAvLyB3ZSd2ZSByZXR1cm5lZCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBpbmRlbnRhdGlvbiBsZXZlbFxyXG4gICAgICBpZiAob3BlblBhcmVuQ291bnQgPiAwICYmIG9wZW5QYXJlbkNvdW50ID09PSBjbG9zZWRQYXJlbkNvdW50KSB7XHJcbiAgICAgICAgLy8gaWYgd2UncmUgaW4gYSBmbiBkZWZpbml0aW9uLCBtYWtlIHN1cmUgd2UgaGF2ZSBiYWxhbmNlZCBwYWlycyBvZiBwYXJlbnNcclxuICAgICAgICBicmVhaztcclxuICAgICAgfSBlbHNlIGlmIChsaW5lLnRyaW0oKS5lbmRzV2l0aCgnOycpKSB7XHJcbiAgICAgICAgLy8gYy1zdHlsZSBzdGF0ZW1lbnQgZW5kaW5nXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgLy8gZW5kIG9mIGEgcHJvcGVydHkgZGVmaW5pdGlvblxyXG4gICAgICAgIGxpbmUudHJpbSgpLmVuZHNXaXRoKCcsJykgJiZcclxuICAgICAgICAvLyBpbmNsdWRpbmcgY29tcGxleCB0eXBlcyBhcyB2YWx1ZXNcclxuICAgICAgICBvcGVuQ3VybHlDb3VudCA9PT0gY2xvc2VkQ3VybHlDb3VudCAmJlxyXG4gICAgICAgIC8vIGJ1dCBzdGlsbCBub3QgYmVmb3JlIGZ1bmN0aW9uIHNpZ25hdHVyZXMgYXJlIGNsb3NlZFxyXG4gICAgICAgIG9wZW5QYXJlbkNvdW50ID09PSBjbG9zZWRQYXJlbkNvdW50XHJcbiAgICAgICkge1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4ge21pbWUsIGNvbnRlbnRzOiBidWZmZXIuam9pbignXFxuJyksIGVuY29kaW5nOiAndXRmOCd9O1xyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N5bWJvbC1kZWZpbml0aW9uLXByZXZpZXcuanMiXSwibmFtZXMiOlsiTUFYX1BSRVZJRVdfTElORVMiLCJNQVhfRklMRVNJWkUiLCJXSElURVNQQUNFX1JFR0VYIiwiZ2V0SW5kZW50TGV2ZWwiLCJsaW5lIiwibWF0Y2giLCJleGVjIiwibGVuZ3RoIiwiZ2V0RGVmaW5pdGlvblByZXZpZXciLCJkZWZpbml0aW9uIiwic3RhdHMiLCJmc1Byb21pc2UiLCJzdGF0IiwicGF0aCIsInNpemUiLCJmaWxlQnVmZmVyIiwicmVhZEZpbGUiLCJtaW1lIiwibWltZVR5cGVzIiwiY29udGVudFR5cGUiLCJudWNsaWRlVXJpIiwiZXh0bmFtZSIsInN0YXJ0c1dpdGgiLCJjb250ZW50cyIsInRvU3RyaW5nIiwiZW5jb2RpbmciLCJsaW5lcyIsInNwbGl0Iiwic3RhcnQiLCJwb3NpdGlvbiIsInJvdyIsImluaXRpYWxJbmRlbnRMZXZlbCIsImJ1ZmZlciIsImkiLCJvcGVuUGFyZW5Db3VudCIsImNsb3NlZFBhcmVuQ291bnQiLCJvcGVuQ3VybHlDb3VudCIsImNsb3NlZEN1cmx5Q291bnQiLCJpbmRlbnRMZXZlbCIsInB1c2giLCJzdWJzdHIiLCJNYXRoIiwibWluIiwidHJpbSIsImVuZHNXaXRoIiwiam9pbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQWFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBakJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFjQSxNQUFNQSxpQkFBaUIsR0FBRyxFQUExQjtBQUNBLE1BQU1DLFlBQVksR0FBRyxNQUFyQjtBQUNBLE1BQU1DLGdCQUFnQixHQUFHLE1BQXpCOztBQUNBLFNBQVNDLGNBQVQsQ0FBd0JDLElBQXhCLEVBQXNDO0FBQ3BDO0FBQ0EsUUFBTUMsS0FBeUIsR0FBR0gsZ0JBQWdCLENBQUNJLElBQWpCLENBQXNCRixJ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QixHQUFyQixLQUNBO0FBQ0FSLE1BQUFBLGNBQWMsS0FBS0MsZ0JBRm5CLElBR0E7QUFDQUgsTUFBQUEsY0FBYyxLQUFLQyxnQkFOZCxFQU9MO0FBQ0E7QUFDRDtBQUNGO0FBQ0Y7O0FBRUQsU0FBTztBQUFDbEIsSUFBQUEsSUFBRDtBQUFPTSxJQUFBQSxRQUFRLEVBQUVTLE1BQU0sQ0FBQ2EsSUFBUCxDQUFZLElBQVosQ0FBakI7QUFBb0NwQixJQUFBQSxRQUFRLEVBQUU7QUFBOUMsR0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHR5cGUge051Y2xpZGVVcml9IGZyb20gJy4vbnVjbGlkZVVyaSc7XHJcbmltcG9ydCBtaW1lVHlwZXMgZnJvbSAnbWltZS10eXBlcyc7XHJcbmltcG9ydCBjciBmcm9tICdjcic7XHJcbmltcG9ydCBmc1Byb21pc2UgZnJvbSAnLi9mc1Byb21pc2UnO1xyXG5pbXBvcnQge2NvdW50T2NjdXJyZW5jZXN9IGZyb20gJy4vc3RyaW5nJztcclxuaW1wb3J0IG51Y2xpZGVVcmkgZnJvbSAnLi9udWNsaWRlVXJpJztcclxuXHJcbnR5cGUgRGVmaW5pdGlvbiA9IHtcclxuICBwYXRoOiBOdWNsaWRlVXJpLFxyXG4gIHBvc2l0aW9uOiBhdG9tJFBvaW50LFxyXG59O1xyXG5cclxuY29uc3QgTUFYX1BSRVZJRVdfTElORVMgPSAxMDtcclxuY29uc3QgTUFYX0ZJTEVTSVpFID0gMTAwMDAwO1xyXG5jb25zdCBXSElURVNQQUNFX1JFR0VYID0gL15cXHMqLztcclxuZnVuY3Rpb24gZ2V0SW5kZW50TGV2ZWwobGluZTogc3RyaW5nKSB7XHJcbiAgLy8gJEZsb3dGaXhNZSAoPj0gdjAuNzUuMClcclxuICBjb25zdCBtYXRjaDogUmVnRXhwJG1hdGNoUmVzdWx0ID0gV0hJVEVTUEFDRV9SRUdFWC5leGVjKGxpbmUpO1xyXG4gIHJldHVybiBtYXRjaFswXS5sZW5ndGg7XHJcbn1cclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXREZWZpbml0aW9uUHJldmlldyhcclxuICBkZWZpbml0aW9uOiBEZWZpbml0aW9uLFxyXG4pOiBQcm9taXNlPD97XHJcbiAgbWltZTogc3RyaW5nLFxyXG4gIGNvbnRlbnRzOiBzdHJpbmcsXHJcbiAgZW5jb2Rpbmc6IHN0cmluZyxcclxufT4ge1xyXG4gIC8vIGVuc3VyZSBmaWxlc2l6ZSBub3QgdG9vIGJpZyBiZWZvcmUgcmVhZGluZyBpbiB3aG9sZSBmaWxlXHJcbiAgY29uc3Qgc3RhdHMgPSBhd2FpdCBmc1Byb21pc2Uuc3RhdChkZWZpbml0aW9uLnBhdGgpO1xyXG4gIGlmIChzdGF0cy5zaXplID4gTUFYX0ZJTEVTSVpFKSB7XHJcbiAgICByZXR1cm4gbnVsbDtcclxuICB9XHJcblxyXG4gIC8vIGlmIGZpbGUgaXMgaW1hZ2UsIHJldHVybiBiYXNlLTY0IGVuY29kZWQgY29udGVudHNcclxuICBjb25zdCBmaWxlQnVmZmVyID0gYXdhaXQgZnNQcm9taXNlLnJlYWRGaWxlKGRlZmluaXRpb24ucGF0aCk7XHJcblxyXG4gIGNvbnN0IG1pbWUgPVxyXG4gICAgbWltZVR5cGVzLmNvbnRlbnRUeXBlKG51Y2xpZGVVcmkuZXh0bmFtZShkZWZpbml0aW9uLnBhdGgpKSB8fCAndGV4dC9wbGFpbic7XHJcbiAgaWYgKG1pbWUuc3RhcnRzV2l0aCgnaW1hZ2UvJykpIHtcclxuICAgIHJldHVybiB7bWltZSwgY29udGVudHM6IGZpbGVCdWZmZXIudG9TdHJpbmcoJ2Jhc2U2NCcpLCBlbmNvZGluZzogJ2Jhc2U2NCd9O1xyXG4gIH1cclxuXHJcbiAgbGV0IGNvbnRlbnRzID0gZmlsZUJ1ZmZlci50b1N0cmluZygndXRmOCcpO1xyXG4gIGNvbnRlbnRzID0gY3IoY29udGVudHMpO1xyXG4gIGNvbnN0IGxpbmVzID0gY29udGVudHMuc3BsaXQoJ1xcbicpO1xyXG5cclxuICBjb25zdCBzdGFydCA9IGRlZmluaXRpb24ucG9zaXRpb24ucm93O1xyXG4gIGNvbnN0IGluaXRpYWxJbmRlbnRMZXZlbCA9IGdldEluZGVudExldmVsKGxpbmVzW3N0YXJ0XSk7XHJcblxyXG4gIGNvbnN0IGJ1ZmZlciA9IFtdO1xyXG4gIGZvciAoXHJcbiAgICBsZXQgaSA9IHN0YXJ0LFxyXG4gICAgICBvcGVuUGFyZW5Db3VudCA9IDAsXHJcbiAgICAgIGNsb3NlZFBhcmVuQ291bnQgPSAwLFxyXG4gICAgICBvcGVuQ3VybHlDb3VudCA9IDAsXHJcbiAgICAgIGNsb3NlZEN1cmx5Q291bnQgPSAwO1xyXG4gICAgaSA8IHN0YXJ0ICsgTUFYX1BSRVZJRVdfTElORVMgJiYgaSA8IGxpbmVzLmxlbmd0aDtcclxuICAgIGkrK1xyXG4gICkge1xyXG4gICAgY29uc3QgbGluZSA9IGxpbmVzW2ldO1xyXG4gICAgY29uc3QgaW5kZW50TGV2ZWwgPSBnZXRJbmRlbnRMZXZlbChsaW5lKTtcclxuICAgIG9wZW5QYXJlbkNvdW50ICs9IGNvdW50T2NjdXJyZW5jZXMobGluZSwgJygnKTtcclxuICAgIGNsb3NlZFBhcmVuQ291bnQgKz0gY291bnRPY2N1cnJlbmNlcyhsaW5lLCAnKScpO1xyXG4gICAgb3BlbkN1cmx5Q291bnQgKz0gY291bnRPY2N1cnJlbmNlcyhsaW5lLCAneycpO1xyXG4gICAgY2xvc2VkQ3VybHlDb3VudCArPSBjb3VudE9jY3VycmVuY2VzKGxpbmUsICd9Jyk7XHJcblxyXG4gICAgYnVmZmVyLnB1c2gobGluZS5zdWJzdHIoTWF0aC5taW4oaW5kZW50TGV2ZWwsIGluaXRpYWxJbmRlbnRMZXZlbCkpKTsgLy8gZGVkZW50XHJcblxyXG4gICAgLy8gaGV1cmlzdGljIGZvciB0aGUgZW5kIG9mIGEgZnVuY3Rpb24gc2lnbmF0dXJlOlxyXG4gICAgaWYgKGluZGVudExldmVsIDw9IGluaXRpYWxJbmRlbnRMZXZlbCkge1xyXG4gICAgICAvLyB3ZSd2ZSByZXR1cm5lZCBiYWNrIHRvIHRoZSBvcmlnaW5hbCBpbmRlbnRhdGlvbiBsZXZlbFxyXG4gICAgICBpZiAob3BlblBhcmVuQ291bnQgPiAwICYmIG9wZW5QYXJlbkNvdW50ID09PSBjbG9zZWRQYXJlbkNvdW50KSB7XHJcbiAgICAgICAgLy8gaWYgd2UncmUgaW4gYSBmbiBkZWZpbml0aW9uLCBtYWtlIHN1cmUgd2UgaGF2ZSBiYWxhbmNlZCBwYWlycyBvZiBwYXJlbnNcclxuICAgICAgICBicmVhaztcclxuICAgICAgfSBlbHNlIGlmIChsaW5lLnRyaW0oKS5lbmRzV2l0aCgnOycpKSB7XHJcbiAgICAgICAgLy8gYy1zdHlsZSBzdGF0ZW1lbnQgZW5kaW5nXHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIH0gZWxzZSBpZiAoXHJcbiAgICAgICAgLy8gZW5kIG9mIGEgcHJvcGVydHkgZGVmaW5pdGlvblxyXG4gICAgICAgIGxpbmUudHJpbSgpLmVuZHNXaXRoKCcsJykgJiZcclxuICAgICAgICAvLyBpbmNsdWRpbmcgY29tcGxleCB0eXBlcyBhcyB2YWx1ZXNcclxuICAgICAgICBvcGVuQ3VybHlDb3VudCA9PT0gY2xvc2VkQ3VybHlDb3VudCAmJlxyXG4gICAgICAgIC8vIGJ1dCBzdGlsbCBub3QgYmVmb3JlIGZ1bmN0aW9uIHNpZ25hdHVyZXMgYXJlIGNsb3NlZFxyXG4gICAgICAgIG9wZW5QYXJlbkNvdW50ID09PSBjbG9zZWRQYXJlbkNvdW50XHJcbiAgICAgICkge1xyXG4gICAgICAgIGJyZWFrO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZXR1cm4ge21pbWUsIGNvbnRlbnRzOiBidWZmZXIuam9pbignXFxuJyksIGVuY29kaW5nOiAndXRmOCd9O1xyXG59XHJcbiJdfQ== |
@@ -163,2 +163,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N5c3RlbS1pbmZvLmpzIl0sIm5hbWVzIjpbIk5VQ0xJREVfUEFDS0FHRV9KU09OX1BBVEgiLCJyZXF1aXJlIiwicmVzb2x2ZSIsIk5VQ0xJREVfQkFTRURJUiIsIm51Y2xpZGVVcmkiLCJkaXJuYW1lIiwicGtnSnNvbiIsIkpTT04iLCJwYXJzZSIsImZzIiwicmVhZEZpbGVTeW5jIiwiT1NfVFlQRSIsIldJTjMyIiwiV0lONjQiLCJMSU5VWCIsIk9TWCIsImdldE1pbm9yTnVjbGlkZVZlcnNpb24iLCJudWNsaWRlVmVyc2lvbiIsImdldE51Y2xpZGVWZXJzaW9uIiwic2VtVmVyc2lvbiIsInNlbXZlciIsIm1ham9yIiwibWlub3IiLCJOVUNMSURFX1ZFUlNJT05fSEVBREVSIiwiaXNSdW5uaW5nSW5UZXN0IiwiamVzdCIsImUiLCJhdG9tIiwiaW5TcGVjTW9kZSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImlzUnVubmluZ0luU2VydmVyIiwiRUxFQ1RST05fUlVOX0FTX05PREUiLCJnZXRBdG9tTnVjbGlkZURpciIsIkVycm9yIiwibnVjbGlkZVBhY2thZ2VNb2R1bGUiLCJwYWNrYWdlcyIsImdldExvYWRlZFBhY2thZ2UiLCJwYXRoIiwiZ2V0QXRvbVZlcnNpb24iLCJnZXRWZXJzaW9uIiwidmVyc2lvbiIsImdldE51Y2xpZGVSZWFsRGlyIiwiZ2V0T3NUeXBlIiwib3MiLCJwbGF0Zm9ybSIsImlzUnVubmluZ0luV2luZG93cyIsImdldE9zVmVyc2lvbiIsInJlbGVhc2UiLCJnZXRSdW50aW1lUGF0aCIsImdsb2JhbCIsInJlc291cmNlc1BhdGgiLCJyZXBsYWNlIiwiZXhlY1BhdGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQWpCQTs7Ozs7Ozs7Ozs7QUFtQkE7QUFDQSxNQUFNQSx5QkFBeUIsR0FBR0MsT0FBTyxDQUFDQyxPQUFSLENBQWdCLG9CQUFoQixDQUFsQzs7QUFDQSxNQUFNQyxlQUFlLEdBQUdDLG9CQUFXQyxPQUFYLENBQW1CTCx5QkFBbkIsQ0FBeEI7O0FBRUEsTUFBTU0sT0FBTyxHQUFHQyxJQUFJLENBQUNDLEtBQUwsQ0FBV0MsWUFBR0MsWUFBSCxDQUFnQlYseUJBQWhCLEVBQTJDLE1BQTNDLENBQVgsQ0FBaEI7QUFFTyxNQUFNVyxPQUFPLEdBQUc7QUFDckJDLEVBQUFBLEtBQUssRUFBRSxPQURjO0FBRXJCQyxFQUFBQSxLQUFLLEVBQUUsT0FGYztBQUdyQkMsRUFBQUEsS0FBSyxFQUFFLE9BSGM7QUFJckJDLEVBQUFBLEdBQUcsRUFBRTtBQUpnQixDQUFoQjs7QUFPUCxNQUFNQyxzQkFBc0IsR0FBRyxtQkFBSyxNQUFNO0FBQ3hDLFFBQU1DLGNBQWMsR0FBR0MsaUJBQWlCLEVBQXhDOztBQUNBLFFBQU1DLFVBQVUsR0FBR0MsZ0JBQU9aLEtBQVAsQ0FBYVMsY0FBYixDQUFuQjs7QUFDQSx1QkFBVUUsVUFBVSxJQUFJLElBQXhCO0FBQ0EsU0FBUSxHQUFFQSxVQUFVLENBQUNFLEtBQU0sSUFBR0YsVUFBVSxDQUFDRyxLQUFNLEVBQS9DO0FBQ0QsQ0FMOEIsQ0FBL0I7QUFPTyxNQUFNQyxzQkFBc0IsR0FBRztBQUNwQyxxQkFBbUJQLHNCQUFzQjtBQURMLENBQS9CLEMsQ0FJUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNPLE1BQU1RLGVBQWUsR0FBRyxtQkFDN0IsTUFBZTtBQUNiLE1BQUk7QUFDRixRQUFJLE9BQU9DLElBQVAsS0FBZ0IsUUFBcEIsRUFBOEI7QUFDNUIsYUFBTyxJQUFQO0FBQ0Q7QUFDRixHQUpELENBSUUsT0FBT0MsQ0FBUCxFQUFVLENBQUU7O0FBQ2QsTUFBSSxPQUFPQyxJQUFQLEtBQWdCLFFBQXBCLEVBQThCO0FBQzVCLFdBQU9BLElBQUksQ0FBQ0MsVUFBTCxFQUFQO0FBQ0QsR0FGRCxNQUVPO0FBQ0wsV0FBT0MsT0FBTyxDQUFDQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsTUFBaEM7QUFDRDtBQUNGLENBWjRCLENBQXhCLEMsQ0FlUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7OztBQUNPLFNBQVNDLGlCQUFULEdBQXNDO0FBQzNDLFNBQ0UsT0FBT0wsSUFBUCxLQUFnQixXQUFoQixJQUErQkUsT0FBTyxDQUFDQyxHQUFSLENBQVlHLG9CQUFaLEtBQXFDLEdBRHRFO0FBR0QsQyxDQUVEOzs7QUFDTyxTQUFTQyxpQkFBVCxHQUFxQztBQUMxQyxNQUFJLE9BQU9QLElBQVAsS0FBZ0IsUUFBcEIsRUFBOEI7QUFDNUIsVUFBTSxJQUFJUSxLQUFKLENBQVUsc0JBQVYsQ0FBTjtBQUNEOztBQUNELFFBQU1DLG9CQUFvQixHQUFHVCxJQUFJLENBQUNVLFFBQUwsQ0FBY0MsZ0JBQWQsQ0FBK0IsU0FBL0IsQ0FBN0I7QUFDQSx1QkFBVUYsb0JBQVY7QUFDQSxTQUFPQSxvQkFBb0IsQ0FBQ0csSUFBNUI7QUFDRDs7QUFFTSxTQUFTQyxjQUFULEdBQWtDO0FBQ3ZDLE1BQUksT0FBT2IsSUFBUCxLQUFnQixRQUFwQixFQUE4QjtBQUM1QixVQUFNLElBQUlRLEtBQUosQ0FBVSxzQkFBVixDQUFOO0FBQ0Q7O0FBQ0QsU0FBT1IsSUFBSSxDQUFDYyxVQUFMLEVBQVA7QUFDRDs7QUFFTSxTQUFTdkIsaUJBQVQsR0FBcUM7QUFDMUMsU0FBT1osT0FBTyxDQUFDb0MsT0FBZjtBQUNEOztBQUVNLFNBQVNDLGlCQUFULEdBQXFDO0FBQzFDLFNBQU94QyxlQUFQO0FBQ0Q7O0FBRU0sU0FBU3lDLFNBQVQsR0FBNkI7QUFDbEMsU0FBT0MsWUFBR0MsUUFBSCxFQUFQO0FBQ0Q7O0FBRU0sU0FBU0Msa0JBQVQsR0FBdUM7QUFDNUMsU0FBT0gsU0FBUyxPQUFPakMsT0FBTyxDQUFDQyxLQUF4QixJQUFpQ2dDLFNBQVMsT0FBT2pDLE9BQU8sQ0FBQ0UsS0FBaEU7QUFDRDs7QUFFTSxTQUFTbUMsWUFBVCxHQUFnQztBQUNyQyxTQUFPSCxZQUFHSSxPQUFILEVBQVA7QUFDRDs7QUFFTSxTQUFTQyxjQUFULEdBQWtDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBSUMsTUFBTSxDQUFDeEIsSUFBUCxJQUFlLE9BQU9FLE9BQU8sQ0FBQ3VCLGFBQWYsS0FBaUMsUUFBcEQsRUFBOEQ7QUFDNUQsVUFBTUEsYUFBYSxHQUFHdkIsT0FBTyxDQUFDdUIsYUFBOUI7O0FBQ0EsUUFBSVAsWUFBR0MsUUFBSCxPQUFrQixRQUF0QixFQUFnQztBQUM5QixhQUFPTSxhQUFhLENBQUNDLE9BQWQsQ0FBc0Isd0JBQXRCLEVBQWdELEVBQWhELENBQVA7QUFDRCxLQUZELE1BRU8sSUFBSVIsWUFBR0MsUUFBSCxPQUFrQixPQUF0QixFQUErQjtBQUNwQyxhQUFPTSxhQUFhLENBQUNDLE9BQWQsQ0FBc0IsY0FBdEIsRUFBc0MsRUFBdEMsQ0FBUDtBQUNELEtBRk0sTUFFQTtBQUNMLGFBQU9ELGFBQWEsQ0FBQ0MsT0FBZCxDQUFzQixpQkFBdEIsRUFBeUMsRUFBekMsQ0FBUDtBQUNEO0FBQ0YsR0FURCxNQVNPO0FBQ0wsV0FBT3hCLE9BQU8sQ0FBQ3lCLFFBQWY7QUFDRDtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBmcyBmcm9tICdmcyc7XHJcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnYXNzZXJ0JztcclxuaW1wb3J0IG9uY2UgZnJvbSAnLi9vbmNlJztcclxuaW1wb3J0IHNlbXZlciBmcm9tICdzZW12ZXInO1xyXG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xyXG5pbXBvcnQgbnVjbGlkZVVyaSBmcm9tICcuL251Y2xpZGVVcmknO1xyXG5cclxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXHJcbmNvbnN0IE5VQ0xJREVfUEFDS0FHRV9KU09OX1BBVEggPSByZXF1aXJlLnJlc29sdmUoJy4uLy4uL3BhY2thZ2UuanNvbicpO1xyXG5jb25zdCBOVUNMSURFX0JBU0VESVIgPSBudWNsaWRlVXJpLmRpcm5hbWUoTlVDTElERV9QQUNLQUdFX0pTT05fUEFUSCk7XHJcblxyXG5jb25zdCBwa2dKc29uID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoTlVDTElERV9QQUNLQUdFX0pTT05fUEFUSCwgJ3V0ZjgnKSk7XHJcblxyXG5leHBvcnQgY29uc3QgT1NfVFlQRSA9IHtcclxuICBXSU4zMjogJ3dpbjMyJyxcclxuICBXSU42NDogJ3dpbjY0JyxcclxuICBMSU5VWDogJ2xpbnV4JyxcclxuICBPU1g6ICdkYXJ3aW4nLFxyXG59O1xyXG5cclxuY29uc3QgZ2V0TWlub3JOdWNsaWRlVmVyc2lvbiA9IG9uY2UoKCkgPT4ge1xyXG4gIGNvbnN0IG51Y2xpZGVWZXJzaW9uID0gZ2V0TnVjbGlkZVZlcnNpb24oKTtcclxuICBjb25zdCBzZW1WZXJzaW9uID0gc2VtdmVyLnBhcnNlKG51Y2xpZGVWZXJzaW9uKTtcclxuICBpbnZhcmlhbnQoc2VtVmVyc2lvbiAhPSBudWxsKTtcclxuICByZXR1cm4gYCR7c2VtVmVyc2lvbi5tYWpvcn0uJHtzZW1WZXJzaW9uLm1pbm9yfWA7XHJcbn0pO1xyXG5cclxuZXhwb3J0IGNvbnN0IE5VQ0xJREVfVkVSU0lPTl9IRUFERVIgPSB7XHJcbiAgJ051Y2xpZGUtVmVyc2lvbic6IGdldE1pbm9yTnVjbGlkZVZlcnNpb24oKSxcclxufTtcclxuXHJcbi8vIFByaW9yIHRvIEF0b20gdjEuNy4wLCBgYXRvbS5pblNwZWNNb2RlYCBoYWQgYSBjaGFuY2Ugb2YgcGVyZm9ybWluZyBhbiBJUEMgY2FsbCB0aGF0IGNvdWxkIGJlXHJcbi8vIGV4cGVuc2l2ZSBkZXBlbmRpbmcgb24gaG93IG11Y2ggd29yayB0aGUgb3RoZXIgcHJvY2VzcyB3YXMgZG9pbmcuIEJlY2F1c2UgdGhpcyB2YWx1ZSB3aWxsIG5vdFxyXG4vLyBjaGFuZ2UgZHVyaW5nIHJ1biB0aW1lLCBtZW1vaXplIHRoZSB2YWx1ZSB0byBlbnN1cmUgdGhlIElQQyBjYWxsIGlzIHBlcmZvcm1lZCBvbmx5IG9uY2UuXHJcbi8vXHJcbi8vIFNlZSBbYGdldFdpbmRvd0xvYWRTZXR0aW5nc2BdWzFdIGZvciB0aGUgc25lYWt5IGdldHRlciBhbmQgYHJlbW90ZWAgY2FsbCB0aGF0IHRoaXMgbWVtb2l6YXRpb25cclxuLy8gZW5zdXJlcyBoYXBwZW5zIG9ubHkgb25jZS5cclxuLy9cclxuLy8gWzFdOiBodHRwczovL2dpdGh1Yi5jb20vYXRvbS9hdG9tL2Jsb2IvdjEuNi4yL3NyYy93aW5kb3ctbG9hZC1zZXR0aW5ncy1oZWxwZXJzLmNvZmZlZSNMMTAtTDE0XHJcbi8vICRGbG93Rml4TWUgKD49MC44NS4wKSAoVDM1OTg2ODk2KSBGbG93IHVwZ3JhZGUgc3VwcHJlc3NcclxuZXhwb3J0IGNvbnN0IGlzUnVubmluZ0luVGVzdCA9IG9uY2UoXHJcbiAgKCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKHR5cGVvZiBqZXN0ID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7fVxyXG4gICAgaWYgKHR5cGVvZiBhdG9tID09PSAnb2JqZWN0Jykge1xyXG4gICAgICByZXR1cm4gYXRvbS5pblNwZWNNb2RlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICd0ZXN0JztcclxuICAgIH1cclxuICB9LFxyXG4pO1xyXG5cclxuLy8gTnVjbGlkZSBjb2RlIGNhbiBydW4gaW4gb25lIG9mIHRocmVlIHNpdHVhdGlvbnM6XHJcbi8vXHJcbi8vIDEpIEluc2lkZSBvZiBBdG9tIChqdXN0IGNoZWNraW5nIHRoZSBBdG9tIGdsb2JhbCBpcyBlbm91Z2gpXHJcbi8vIDIpIEluc2lkZSBvZiBhIGZvcmtlZCBBdG9tIEhlbHBlciAod2hpY2ggaGFzIEVMRUNUUk9OX1JVTl9BU19OT0RFKVxyXG4vLyAzKSBJbnNpZGUgb2YgdGhlIE51Y2xpZGUgc2VydmVyLCBvciBhbm90aGVyIHBsYWluIE5vZGUgc2NyaXB0XHJcbi8vXHJcbi8vIEl0J3MgaGFyZCB0byBleHBsaWNpdGx5IGNoZWNrIDMpIHNvIHRoaXMgY2hlY2tzIGZvciB0aGUgYWJzZW5jZSBvZiAxLzIuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1J1bm5pbmdJblNlcnZlcigpOiBib29sZWFuIHtcclxuICByZXR1cm4gKFxyXG4gICAgdHlwZW9mIGF0b20gPT09ICd1bmRlZmluZWQnICYmIHByb2Nlc3MuZW52LkVMRUNUUk9OX1JVTl9BU19OT0RFICE9PSAnMSdcclxuICApO1xyXG59XHJcblxyXG4vLyBUaGlzIHBhdGggbWF5IGJlIGEgc3ltbGluay5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEF0b21OdWNsaWRlRGlyKCk6IHN0cmluZyB7XHJcbiAgaWYgKHR5cGVvZiBhdG9tICE9PSAnb2JqZWN0Jykge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgcnVubmluZyBpbiBBdG9tLicpO1xyXG4gIH1cclxuICBjb25zdCBudWNsaWRlUGFja2FnZU1vZHVsZSA9IGF0b20ucGFja2FnZXMuZ2V0TG9hZGVkUGFja2FnZSgnbnVjbGlkZScpO1xyXG4gIGludmFyaWFudChudWNsaWRlUGFja2FnZU1vZHVsZSk7XHJcbiAgcmV0dXJuIG51Y2xpZGVQYWNrYWdlTW9kdWxlLnBhdGg7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRBdG9tVmVyc2lvbigpOiBzdHJpbmcge1xyXG4gIGlmICh0eXBlb2YgYXRvbSAhPT0gJ29iamVjdCcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcignTm90IHJ1bm5pbmcgaW4gQXRvbS4nKTtcclxuICB9XHJcbiAgcmV0dXJuIGF0b20uZ2V0VmVyc2lvbigpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TnVjbGlkZVZlcnNpb24oKTogc3RyaW5nIHtcclxuICByZXR1cm4gcGtnSnNvbi52ZXJzaW9uO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TnVjbGlkZVJlYWxEaXIoKTogc3RyaW5nIHtcclxuICByZXR1cm4gTlVDTElERV9CQVNFRElSO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3NUeXBlKCk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIG9zLnBsYXRmb3JtKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1J1bm5pbmdJbldpbmRvd3MoKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIGdldE9zVHlwZSgpID09PSBPU19UWVBFLldJTjMyIHx8IGdldE9zVHlwZSgpID09PSBPU19UWVBFLldJTjY0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3NWZXJzaW9uKCk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIG9zLnJlbGVhc2UoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFJ1bnRpbWVQYXRoKCk6IHN0cmluZyB7XHJcbiAgLy8gXCJyZXNvdXJjZXNQYXRoXCIgb25seSBleGlzdHMgaW4gQXRvbS4gSXQncyBhcyBjbG9zZSBhcyB5b3UgY2FuIGdldCB0b1xyXG4gIC8vIEF0b20ncyBwYXRoLiBJbiB0aGUgZ2VuZXJhbCBjYXNlLCBpdCBsb29rcyBsaWtlIHRoaXM6XHJcbiAgLy8gTWFjOiBcIi9BcHBsaWNhdGlvbnMvQXRvbS5hcHAvQ29udGVudHMvUmVzb3VyY2VzXCJcclxuICAvLyBMaW51eDogXCIvdXNyL3NoYXJlL2F0b20vcmVzb3VyY2VzXCJcclxuICAvLyBXaW5kb3dzOiBcIkM6XFxcXFVzZXJzXFxcXGFzdWFyZXpcXFxcQXBwRGF0YVxcXFxMb2NhbFxcXFxhdG9tXFxcXGFwcC0xLjYuMlxcXFxyZXNvdXJjZXNcIlxyXG4gIC8vICAgICAgICAgIFwiQzpcXEF0b21cXHJlc291cmNlc1wiXHJcbiAgLy8gJEZsb3dGaXhNZSg+PTAuNjguMCkgRmxvdyBzdXBwcmVzcyAoVDI3MTg3ODU3KVxyXG4gIGlmIChnbG9iYWwuYXRvbSAmJiB0eXBlb2YgcHJvY2Vzcy5yZXNvdXJjZXNQYXRoID09PSAnc3RyaW5nJykge1xyXG4gICAgY29uc3QgcmVzb3VyY2VzUGF0aCA9IHByb2Nlc3MucmVzb3VyY2VzUGF0aDtcclxuICAgIGlmIChvcy5wbGF0Zm9ybSgpID09PSAnZGFyd2luJykge1xyXG4gICAgICByZXR1cm4gcmVzb3VyY2VzUGF0aC5yZXBsYWNlKC9cXC9Db250ZW50c1xcL1Jlc291cmNlcyQvLCAnJyk7XHJcbiAgICB9IGVsc2UgaWYgKG9zLnBsYXRmb3JtKCkgPT09ICdsaW51eCcpIHtcclxuICAgICAgcmV0dXJuIHJlc291cmNlc1BhdGgucmVwbGFjZSgvXFwvcmVzb3VyY2VzJC8sICcnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiByZXNvdXJjZXNQYXRoLnJlcGxhY2UoL1tcXFxcXStyZXNvdXJjZXMkLywgJycpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gcHJvY2Vzcy5leGVjUGF0aDtcclxuICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3N5c3RlbS1pbmZvLmpzIl0sIm5hbWVzIjpbIk5VQ0xJREVfUEFDS0FHRV9KU09OX1BBVEgiLCJyZXF1aXJlIiwicmVzb2x2ZSIsIk5VQ0xJREVfQkFTRURJUiIsIm51Y2xpZGVVcmkiLCJkaXJuYW1lIiwicGtnSnNvbiIsIkpTT04iLCJwYXJzZSIsImZzIiwicmVhZEZpbGVTeW5jIiwiT1NfVFlQRSIsIldJTjMyIiwiV0lONjQiLCJMSU5VWCIsIk9TWCIsImdldE1pbm9yTnVjbGlkZVZlcnNpb24iLCJudWNsaWRlVmVyc2lvbiIsImdldE51Y2xpZGVWZXJzaW9uIiwic2VtVmVyc2lvbiIsInNlbXZlciIsIm1ham9yIiwibWlub3IiLCJOVUNMSURFX1ZFUlNJT05fSEVBREVSIiwiaXNSdW5uaW5nSW5UZXN0IiwiamVzdCIsImUiLCJhdG9tIiwiaW5TcGVjTW9kZSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImlzUnVubmluZ0luU2VydmVyIiwiRUxFQ1RST05fUlVOX0FTX05PREUiLCJnZXRBdG9tTnVjbGlkZURpciIsIkVycm9yIiwibnVjbGlkZVBhY2thZ2VNb2R1bGUiLCJwYWNrYWdlcyIsImdldExvYWRlZFBhY2thZ2UiLCJwYXRoIiwiZ2V0QXRvbVZlcnNpb24iLCJnZXRWZXJzaW9uIiwidmVyc2lvbiIsImdldE51Y2xpZGVSZWFsRGlyIiwiZ2V0T3NUeXBlIiwib3MiLCJwbGF0Zm9ybSIsImlzUnVubmluZ0luV2luZG93cyIsImdldE9zVmVyc2lvbiIsInJlbGVhc2UiLCJnZXRSdW50aW1lUGF0aCIsImdsb2JhbCIsInJlc291cmNlc1BhdGgiLCJyZXBsYWNlIiwiZXhlY1BhdGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFZQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7OztBQWpCQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBU0E7QUFDQSxNQUFNQSx5QkFBeUIsR0FBR0MsT0FBTyxDQUFDQyxPQUFSLENBQWdCLG9CQUFoQixDQUFsQzs7QUFDQSxNQUFNQyxlQUFlLEdBQUdDLG9CQUFXQyxPQUFYLENBQW1CTCx5QkFBbkIsQ0FBeEI7O0FBRUEsTUFBTU0sT0FBTyxHQUFHQyxJQUFJLENBQUNDLEtBQUwsQ0FBV0MsWUFBR0MsWUFBSCxDQUFnQlYseUJBQWhCLEVBQTJDLE1BQTNDLENBQVgsQ0FBaEI7QUFFTyxNQUFNVyxPQUFPLEdBQUc7QUFDckJDLEVBQUFBLEtBQUssRUFBRSxPQURjO0FBRXJCQyxFQUFBQSxLQUFLLEVBQUUsT0FGYztBQUdyQkMsRUFBQUEsS0FBSyxFQUFFLE9BSGM7QUFJckJDLEVBQUFBLEdBQUcsRUFBRTtBQUpnQixDQUFoQjs7QUFPUCxNQUFNQyxzQkFBc0IsR0FBRyxtQkFBSyxNQUFNO0FBQ3hDLFFBQU1DLGNBQWMsR0FBR0MsaUJBQWlCLEVBQXhDOztBQUNBLFFBQU1DLFVBQVUsR0FBR0MsZ0JBQU9aLEtBQVAsQ0FBYVMsY0FBYixDQUFuQjs7QUFDQSx1QkFBVUUsVUFBVSxJQUFJLElBQXhCO0FBQ0EsU0FBUSxHQUFFQSxVQUFVLENBQUNFLEtBQU0sSUFBR0YsVUFBVSxDQUFDRyxLQUFNLEVBQS9DO0FBQ0QsQ0FMOEIsQ0FBL0I7QUFPTyxNQUFNQyxzQkFBc0IsR0FBRztBQUNwQyxxQkFBbUJQLHNCQUFzQjtBQURMLENBQS9CLEMsQ0FJUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7OztBQUNPLE1BQU1RLGVBQWUsR0FBRyxtQkFDN0IsTUFBZTtBQUNiLE1BQUk7QUFDRixRQUFJLE9BQU9DLElBQVAsS0FBZ0IsUUFBcEIsRUFBOEI7QUFDNUIsYUFBTyxJQUFQO0FBQ0Q7QUFDRixHQUpELENBSUUsT0FBT0MsQ0FBUCxFQUFVLENBQUU7O0FBQ2QsTUFBSSxPQUFPQyxJQUFQLEtBQWdCLFFBQXBCLEVBQThCO0FBQzVCLFdBQU9BLElBQUksQ0FBQ0MsVUFBTCxFQUFQO0FBQ0QsR0FGRCxNQUVPO0FBQ0wsV0FBT0MsT0FBTyxDQUFDQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsTUFBaEM7QUFDRDtBQUNGLENBWjRCLENBQXhCLEMsQ0FlUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7OztBQUNPLFNBQVNDLGlCQUFULEdBQXNDO0FBQzNDLFNBQ0UsT0FBT0wsSUFBUCxLQUFnQixXQUFoQixJQUErQkUsT0FBTyxDQUFDQyxHQUFSLENBQVlHLG9CQUFaLEtBQXFDLEdBRHRFO0FBR0QsQyxDQUVEOzs7QUFDTyxTQUFTQyxpQkFBVCxHQUFxQztBQUMxQyxNQUFJLE9BQU9QLElBQVAsS0FBZ0IsUUFBcEIsRUFBOEI7QUFDNUIsVUFBTSxJQUFJUSxLQUFKLENBQVUsc0JBQVYsQ0FBTjtBQUNEOztBQUNELFFBQU1DLG9CQUFvQixHQUFHVCxJQUFJLENBQUNVLFFBQUwsQ0FBY0MsZ0JBQWQsQ0FBK0IsU0FBL0IsQ0FBN0I7QUFDQSx1QkFBVUYsb0JBQVY7QUFDQSxTQUFPQSxvQkFBb0IsQ0FBQ0csSUFBNUI7QUFDRDs7QUFFTSxTQUFTQyxjQUFULEdBQWtDO0FBQ3ZDLE1BQUksT0FBT2IsSUFBUCxLQUFnQixRQUFwQixFQUE4QjtBQUM1QixVQUFNLElBQUlRLEtBQUosQ0FBVSxzQkFBVixDQUFOO0FBQ0Q7O0FBQ0QsU0FBT1IsSUFBSSxDQUFDYyxVQUFMLEVBQVA7QUFDRDs7QUFFTSxTQUFTdkIsaUJBQVQsR0FBcUM7QUFDMUMsU0FBT1osT0FBTyxDQUFDb0MsT0FBZjtBQUNEOztBQUVNLFNBQVNDLGlCQUFULEdBQXFDO0FBQzFDLFNBQU94QyxlQUFQO0FBQ0Q7O0FBRU0sU0FBU3lDLFNBQVQsR0FBNkI7QUFDbEMsU0FBT0MsWUFBR0MsUUFBSCxFQUFQO0FBQ0Q7O0FBRU0sU0FBU0Msa0JBQVQsR0FBdUM7QUFDNUMsU0FBT0gsU0FBUyxPQUFPakMsT0FBTyxDQUFDQyxLQUF4QixJQUFpQ2dDLFNBQVMsT0FBT2pDLE9BQU8sQ0FBQ0UsS0FBaEU7QUFDRDs7QUFFTSxTQUFTbUMsWUFBVCxHQUFnQztBQUNyQyxTQUFPSCxZQUFHSSxPQUFILEVBQVA7QUFDRDs7QUFFTSxTQUFTQyxjQUFULEdBQWtDO0FBQ3ZDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsTUFBSUMsTUFBTSxDQUFDeEIsSUFBUCxJQUFlLE9BQU9FLE9BQU8sQ0FBQ3VCLGFBQWYsS0FBaUMsUUFBcEQsRUFBOEQ7QUFDNUQsVUFBTUEsYUFBYSxHQUFHdkIsT0FBTyxDQUFDdUIsYUFBOUI7O0FBQ0EsUUFBSVAsWUFBR0MsUUFBSCxPQUFrQixRQUF0QixFQUFnQztBQUM5QixhQUFPTSxhQUFhLENBQUNDLE9BQWQsQ0FBc0Isd0JBQXRCLEVBQWdELEVBQWhELENBQVA7QUFDRCxLQUZELE1BRU8sSUFBSVIsWUFBR0MsUUFBSCxPQUFrQixPQUF0QixFQUErQjtBQUNwQyxhQUFPTSxhQUFhLENBQUNDLE9BQWQsQ0FBc0IsY0FBdEIsRUFBc0MsRUFBdEMsQ0FBUDtBQUNELEtBRk0sTUFFQTtBQUNMLGFBQU9ELGFBQWEsQ0FBQ0MsT0FBZCxDQUFzQixpQkFBdEIsRUFBeUMsRUFBekMsQ0FBUDtBQUNEO0FBQ0YsR0FURCxNQVNPO0FBQ0wsV0FBT3hCLE9BQU8sQ0FBQ3lCLFFBQWY7QUFDRDtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCBmcyBmcm9tICdmcyc7XHJcbmltcG9ydCBpbnZhcmlhbnQgZnJvbSAnYXNzZXJ0JztcclxuaW1wb3J0IG9uY2UgZnJvbSAnLi9vbmNlJztcclxuaW1wb3J0IHNlbXZlciBmcm9tICdzZW12ZXInO1xyXG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xyXG5pbXBvcnQgbnVjbGlkZVVyaSBmcm9tICcuL251Y2xpZGVVcmknO1xyXG5cclxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXHJcbmNvbnN0IE5VQ0xJREVfUEFDS0FHRV9KU09OX1BBVEggPSByZXF1aXJlLnJlc29sdmUoJy4uLy4uL3BhY2thZ2UuanNvbicpO1xyXG5jb25zdCBOVUNMSURFX0JBU0VESVIgPSBudWNsaWRlVXJpLmRpcm5hbWUoTlVDTElERV9QQUNLQUdFX0pTT05fUEFUSCk7XHJcblxyXG5jb25zdCBwa2dKc29uID0gSlNPTi5wYXJzZShmcy5yZWFkRmlsZVN5bmMoTlVDTElERV9QQUNLQUdFX0pTT05fUEFUSCwgJ3V0ZjgnKSk7XHJcblxyXG5leHBvcnQgY29uc3QgT1NfVFlQRSA9IHtcclxuICBXSU4zMjogJ3dpbjMyJyxcclxuICBXSU42NDogJ3dpbjY0JyxcclxuICBMSU5VWDogJ2xpbnV4JyxcclxuICBPU1g6ICdkYXJ3aW4nLFxyXG59O1xyXG5cclxuY29uc3QgZ2V0TWlub3JOdWNsaWRlVmVyc2lvbiA9IG9uY2UoKCkgPT4ge1xyXG4gIGNvbnN0IG51Y2xpZGVWZXJzaW9uID0gZ2V0TnVjbGlkZVZlcnNpb24oKTtcclxuICBjb25zdCBzZW1WZXJzaW9uID0gc2VtdmVyLnBhcnNlKG51Y2xpZGVWZXJzaW9uKTtcclxuICBpbnZhcmlhbnQoc2VtVmVyc2lvbiAhPSBudWxsKTtcclxuICByZXR1cm4gYCR7c2VtVmVyc2lvbi5tYWpvcn0uJHtzZW1WZXJzaW9uLm1pbm9yfWA7XHJcbn0pO1xyXG5cclxuZXhwb3J0IGNvbnN0IE5VQ0xJREVfVkVSU0lPTl9IRUFERVIgPSB7XHJcbiAgJ051Y2xpZGUtVmVyc2lvbic6IGdldE1pbm9yTnVjbGlkZVZlcnNpb24oKSxcclxufTtcclxuXHJcbi8vIFByaW9yIHRvIEF0b20gdjEuNy4wLCBgYXRvbS5pblNwZWNNb2RlYCBoYWQgYSBjaGFuY2Ugb2YgcGVyZm9ybWluZyBhbiBJUEMgY2FsbCB0aGF0IGNvdWxkIGJlXHJcbi8vIGV4cGVuc2l2ZSBkZXBlbmRpbmcgb24gaG93IG11Y2ggd29yayB0aGUgb3RoZXIgcHJvY2VzcyB3YXMgZG9pbmcuIEJlY2F1c2UgdGhpcyB2YWx1ZSB3aWxsIG5vdFxyXG4vLyBjaGFuZ2UgZHVyaW5nIHJ1biB0aW1lLCBtZW1vaXplIHRoZSB2YWx1ZSB0byBlbnN1cmUgdGhlIElQQyBjYWxsIGlzIHBlcmZvcm1lZCBvbmx5IG9uY2UuXHJcbi8vXHJcbi8vIFNlZSBbYGdldFdpbmRvd0xvYWRTZXR0aW5nc2BdWzFdIGZvciB0aGUgc25lYWt5IGdldHRlciBhbmQgYHJlbW90ZWAgY2FsbCB0aGF0IHRoaXMgbWVtb2l6YXRpb25cclxuLy8gZW5zdXJlcyBoYXBwZW5zIG9ubHkgb25jZS5cclxuLy9cclxuLy8gWzFdOiBodHRwczovL2dpdGh1Yi5jb20vYXRvbS9hdG9tL2Jsb2IvdjEuNi4yL3NyYy93aW5kb3ctbG9hZC1zZXR0aW5ncy1oZWxwZXJzLmNvZmZlZSNMMTAtTDE0XHJcbi8vICRGbG93Rml4TWUgKD49MC44NS4wKSAoVDM1OTg2ODk2KSBGbG93IHVwZ3JhZGUgc3VwcHJlc3NcclxuZXhwb3J0IGNvbnN0IGlzUnVubmluZ0luVGVzdCA9IG9uY2UoXHJcbiAgKCk6IGJvb2xlYW4gPT4ge1xyXG4gICAgdHJ5IHtcclxuICAgICAgaWYgKHR5cGVvZiBqZXN0ID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9XHJcbiAgICB9IGNhdGNoIChlKSB7fVxyXG4gICAgaWYgKHR5cGVvZiBhdG9tID09PSAnb2JqZWN0Jykge1xyXG4gICAgICByZXR1cm4gYXRvbS5pblNwZWNNb2RlKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICd0ZXN0JztcclxuICAgIH1cclxuICB9LFxyXG4pO1xyXG5cclxuLy8gTnVjbGlkZSBjb2RlIGNhbiBydW4gaW4gb25lIG9mIHRocmVlIHNpdHVhdGlvbnM6XHJcbi8vXHJcbi8vIDEpIEluc2lkZSBvZiBBdG9tIChqdXN0IGNoZWNraW5nIHRoZSBBdG9tIGdsb2JhbCBpcyBlbm91Z2gpXHJcbi8vIDIpIEluc2lkZSBvZiBhIGZvcmtlZCBBdG9tIEhlbHBlciAod2hpY2ggaGFzIEVMRUNUUk9OX1JVTl9BU19OT0RFKVxyXG4vLyAzKSBJbnNpZGUgb2YgdGhlIE51Y2xpZGUgc2VydmVyLCBvciBhbm90aGVyIHBsYWluIE5vZGUgc2NyaXB0XHJcbi8vXHJcbi8vIEl0J3MgaGFyZCB0byBleHBsaWNpdGx5IGNoZWNrIDMpIHNvIHRoaXMgY2hlY2tzIGZvciB0aGUgYWJzZW5jZSBvZiAxLzIuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1J1bm5pbmdJblNlcnZlcigpOiBib29sZWFuIHtcclxuICByZXR1cm4gKFxyXG4gICAgdHlwZW9mIGF0b20gPT09ICd1bmRlZmluZWQnICYmIHByb2Nlc3MuZW52LkVMRUNUUk9OX1JVTl9BU19OT0RFICE9PSAnMSdcclxuICApO1xyXG59XHJcblxyXG4vLyBUaGlzIHBhdGggbWF5IGJlIGEgc3ltbGluay5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldEF0b21OdWNsaWRlRGlyKCk6IHN0cmluZyB7XHJcbiAgaWYgKHR5cGVvZiBhdG9tICE9PSAnb2JqZWN0Jykge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKCdOb3QgcnVubmluZyBpbiBBdG9tLicpO1xyXG4gIH1cclxuICBjb25zdCBudWNsaWRlUGFja2FnZU1vZHVsZSA9IGF0b20ucGFja2FnZXMuZ2V0TG9hZGVkUGFja2FnZSgnbnVjbGlkZScpO1xyXG4gIGludmFyaWFudChudWNsaWRlUGFja2FnZU1vZHVsZSk7XHJcbiAgcmV0dXJuIG51Y2xpZGVQYWNrYWdlTW9kdWxlLnBhdGg7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRBdG9tVmVyc2lvbigpOiBzdHJpbmcge1xyXG4gIGlmICh0eXBlb2YgYXRvbSAhPT0gJ29iamVjdCcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcignTm90IHJ1bm5pbmcgaW4gQXRvbS4nKTtcclxuICB9XHJcbiAgcmV0dXJuIGF0b20uZ2V0VmVyc2lvbigpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TnVjbGlkZVZlcnNpb24oKTogc3RyaW5nIHtcclxuICByZXR1cm4gcGtnSnNvbi52ZXJzaW9uO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0TnVjbGlkZVJlYWxEaXIoKTogc3RyaW5nIHtcclxuICByZXR1cm4gTlVDTElERV9CQVNFRElSO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3NUeXBlKCk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIG9zLnBsYXRmb3JtKCk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpc1J1bm5pbmdJbldpbmRvd3MoKTogYm9vbGVhbiB7XHJcbiAgcmV0dXJuIGdldE9zVHlwZSgpID09PSBPU19UWVBFLldJTjMyIHx8IGdldE9zVHlwZSgpID09PSBPU19UWVBFLldJTjY0O1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gZ2V0T3NWZXJzaW9uKCk6IHN0cmluZyB7XHJcbiAgcmV0dXJuIG9zLnJlbGVhc2UoKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFJ1bnRpbWVQYXRoKCk6IHN0cmluZyB7XHJcbiAgLy8gXCJyZXNvdXJjZXNQYXRoXCIgb25seSBleGlzdHMgaW4gQXRvbS4gSXQncyBhcyBjbG9zZSBhcyB5b3UgY2FuIGdldCB0b1xyXG4gIC8vIEF0b20ncyBwYXRoLiBJbiB0aGUgZ2VuZXJhbCBjYXNlLCBpdCBsb29rcyBsaWtlIHRoaXM6XHJcbiAgLy8gTWFjOiBcIi9BcHBsaWNhdGlvbnMvQXRvbS5hcHAvQ29udGVudHMvUmVzb3VyY2VzXCJcclxuICAvLyBMaW51eDogXCIvdXNyL3NoYXJlL2F0b20vcmVzb3VyY2VzXCJcclxuICAvLyBXaW5kb3dzOiBcIkM6XFxcXFVzZXJzXFxcXGFzdWFyZXpcXFxcQXBwRGF0YVxcXFxMb2NhbFxcXFxhdG9tXFxcXGFwcC0xLjYuMlxcXFxyZXNvdXJjZXNcIlxyXG4gIC8vICAgICAgICAgIFwiQzpcXEF0b21cXHJlc291cmNlc1wiXHJcbiAgLy8gJEZsb3dGaXhNZSg+PTAuNjguMCkgRmxvdyBzdXBwcmVzcyAoVDI3MTg3ODU3KVxyXG4gIGlmIChnbG9iYWwuYXRvbSAmJiB0eXBlb2YgcHJvY2Vzcy5yZXNvdXJjZXNQYXRoID09PSAnc3RyaW5nJykge1xyXG4gICAgY29uc3QgcmVzb3VyY2VzUGF0aCA9IHByb2Nlc3MucmVzb3VyY2VzUGF0aDtcclxuICAgIGlmIChvcy5wbGF0Zm9ybSgpID09PSAnZGFyd2luJykge1xyXG4gICAgICByZXR1cm4gcmVzb3VyY2VzUGF0aC5yZXBsYWNlKC9cXC9Db250ZW50c1xcL1Jlc291cmNlcyQvLCAnJyk7XHJcbiAgICB9IGVsc2UgaWYgKG9zLnBsYXRmb3JtKCkgPT09ICdsaW51eCcpIHtcclxuICAgICAgcmV0dXJuIHJlc291cmNlc1BhdGgucmVwbGFjZSgvXFwvcmVzb3VyY2VzJC8sICcnKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHJldHVybiByZXNvdXJjZXNQYXRoLnJlcGxhY2UoL1tcXFxcXStyZXNvdXJjZXMkLywgJycpO1xyXG4gICAgfVxyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gcHJvY2Vzcy5leGVjUGF0aDtcclxuICB9XHJcbn1cclxuIl19 |
@@ -205,2 +205,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Rlc3QtaGVscGVycy5qcyJdLCJuYW1lcyI6WyJhdG9tIiwiaW5TcGVjTW9kZSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImV4cGVjdEFzeW5jRmFpbHVyZSIsInByb21pc2UiLCJ2ZXJpZnkiLCJQcm9taXNlIiwicmVqZWN0IiwiRXJyb3IiLCJlIiwiY2xlYXJSZXF1aXJlQ2FjaGUiLCJyZXF1aXJlIiwibW9kdWxlIiwiY2FjaGUiLCJyZXNvbHZlIiwidW5jYWNoZWRSZXF1aXJlIiwic3B5T25HZXR0ZXJWYWx1ZSIsIm9iamVjdCIsImYiLCJ2YWx1ZSIsInNweU9uIiwiYXJlUHJvcGVydGllc0VxdWFsIiwib2JqMSIsIm9iajIiLCJhbGxQcm9wcyIsIlNldCIsImFkZEFsbFByb3BzIiwib2JqIiwicHJvcCIsIk9iamVjdCIsImtleXMiLCJhZGQiLCJmb3JFYWNoIiwiZXhwZWN0T2JzZXJ2YWJsZVRvU3RhcnRXaXRoIiwic291cmNlIiwiZXhwZWN0ZWQiLCJhY3R1YWwiLCJ0YWtlIiwibGVuZ3RoIiwidG9BcnJheSIsInRvUHJvbWlzZSIsImV4cGVjdCIsInRvRXF1YWwiLCJnZW5lcmF0ZUZpeHR1cmUiLCJmaXh0dXJlTmFtZSIsImZpbGVzIiwidGVtcCIsInRyYWNrIiwiTUFYX0NPTkNVUlJFTlRfRklMRV9PUFMiLCJ0ZW1wRGlyIiwiZnNQcm9taXNlIiwidGVtcGRpciIsImZpbGVUdXBsZXMiLCJBcnJheSIsImZyb20iLCJ0dXBsZSIsIm51Y2xpZGVVcmkiLCJqb2luIiwiZGlyc1RvTWFrZSIsIm1hcCIsImZpbGVuYW1lIiwiZGlybmFtZSIsImZpbHRlciIsImkiLCJhcnIiLCJpbmRleE9mIiwibWtkaXJwIiwiY29udGVudHMiLCJmcyIsIndyaXRlRmlsZSIsImVyciIsIndyaXRlQ292ZXJhZ2UiLCJDT1ZFUkFHRV9ESVIiLCJjb3ZlcmFnZSIsImdsb2JhbCIsIl9fY292ZXJhZ2VfXyIsIndyaXRlRmlsZVN5bmMiLCJ1dWlkIiwidjQiLCJKU09OIiwic3RyaW5naWZ5Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQWNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7O0FBcEJBOzs7Ozs7Ozs7OztBQXNCQSxxQkFDRyxPQUFPQSxJQUFQLEtBQWdCLFdBQWhCLElBQStCQSxJQUFJLENBQUNDLFVBQUwsRUFBaEMsSUFDRUMsT0FBTyxDQUFDQyxHQUFSLENBQVlDLFFBQVosS0FBeUIsTUFGN0IsRUFHRSwrQ0FIRjtBQU1BOzs7Ozs7Ozs7Ozs7OztBQWFPLGVBQWVDLGtCQUFmLENBQ0xDLE9BREssRUFFTEMsTUFGSyxFQUdTO0FBQ2QsTUFBSTtBQUNGLFVBQU1ELE9BQU47QUFDQSxXQUFPRSxPQUFPLENBQUNDLE1BQVIsQ0FDTCxJQUFJQyxLQUFKLENBQVUsMENBQVYsQ0FESyxDQUFQO0FBR0QsR0FMRCxDQUtFLE9BQU9DLENBQVAsRUFBVTtBQUNWSixJQUFBQSxNQUFNLENBQUNJLENBQUQsQ0FBTjtBQUNEO0FBQ0Y7QUFFRDs7Ozs7Ozs7Ozs7QUFTTyxTQUFTQyxpQkFBVCxDQUEyQkMsT0FBM0IsRUFBNENDLE1BQTVDLEVBQWtFO0FBQ3ZFLFNBQU9ELE9BQU8sQ0FBQ0UsS0FBUixDQUFjRixPQUFPLENBQUNHLE9BQVIsQ0FBZ0JGLE1BQWhCLENBQWQsQ0FBUDtBQUNEOztBQUVNLFNBQVNHLGVBQVQsQ0FBeUJKLE9BQXpCLEVBQTBDQyxNQUExQyxFQUFpRTtBQUN0RUYsRUFBQUEsaUJBQWlCLENBQUNDLE9BQUQsRUFBVUMsTUFBVixDQUFqQixDQURzRSxDQUV0RTs7QUFDQSxTQUFPRCxPQUFPLENBQUNDLE1BQUQsQ0FBZDtBQUNEO0FBRUQ7Ozs7Ozs7Ozs7Ozs7QUFXTyxTQUFTSSxnQkFBVCxDQUEwQkMsTUFBMUIsRUFBMENDLENBQTFDLEVBQWlFO0FBQ3RFLFFBQU1DLEtBQUssR0FBR0YsTUFBTSxDQUFDQyxDQUFELENBQXBCO0FBQ0EsU0FBT0QsTUFBTSxDQUFDQyxDQUFELENBQWI7QUFDQUQsRUFBQUEsTUFBTSxDQUFDQyxDQUFELENBQU4sR0FBWUMsS0FBWjtBQUNBLFNBQU9DLEtBQUssQ0FBQ0gsTUFBRCxFQUFTQyxDQUFULENBQVo7QUFDRDtBQUVEOzs7Ozs7QUFJTyxTQUFTRyxrQkFBVCxDQUE0QkMsSUFBNUIsRUFBMENDLElBQTFDLEVBQWlFO0FBQ3RFLFFBQU1DLFFBQVEsR0FBRyxJQUFJQyxHQUFKLEVBQWpCOztBQUNBLFdBQVNDLFdBQVQsQ0FBcUJDLEdBQXJCLEVBQTBCO0FBQ3hCLFNBQUssTUFBTUMsSUFBWCxJQUFtQkMsTUFBTSxDQUFDQyxJQUFQLENBQVlILEdBQVosQ0FBbkIsRUFBcUM7QUFDbkNILE1BQUFBLFFBQVEsQ0FBQ08sR0FBVCxDQUFhSCxJQUFiO0FBQ0Q7QUFDRjs7QUFDRCxHQUFDTixJQUFELEVBQU9DLElBQVAsRUFBYVMsT0FBYixDQUFxQk4sV0FBckI7O0FBQ0EsT0FBSyxNQUFNRSxJQUFYLElBQW1CSixRQUFuQixFQUE2QjtBQUMzQixRQUFJRixJQUFJLENBQUNNLElBQUQsQ0FBSixLQUFlTCxJQUFJLENBQUNLLElBQUQsQ0FBdkIsRUFBK0I7QUFDN0IsYUFBTyxLQUFQO0FBQ0Q7QUFDRjs7QUFDRCxTQUFPLElBQVA7QUFDRDtBQUVEOzs7Ozs7QUFJTyxlQUFlSywyQkFBZixDQUNMQyxNQURLLEVBRUxDLFFBRkssRUFHVTtBQUNmLFFBQU1DLE1BQWdCLEdBQUcsTUFBTUYsTUFBTSxDQUNsQ0csSUFENEIsQ0FDdkJGLFFBQVEsQ0FBQ0csTUFEYyxFQUU1QkMsT0FGNEIsR0FHNUJDLFNBSDRCLEVBQS9CO0FBSUFDLEVBQUFBLE1BQU0sQ0FBQ0wsTUFBRCxDQUFOLENBQWVNLE9BQWYsQ0FBdUJQLFFBQXZCO0FBQ0Q7QUFFRDs7Ozs7Ozs7Ozs7Ozs7OztBQWNPLGVBQWVRLGVBQWYsQ0FDTEMsV0FESyxFQUVMQyxLQUZLLEVBR1k7QUFDakJDLGdCQUFLQyxLQUFMOztBQUVBLFFBQU1DLHVCQUF1QixHQUFHLEdBQWhDO0FBQ0EsUUFBTUMsT0FBTyxHQUFHLE1BQU1DLG1CQUFVQyxPQUFWLENBQWtCUCxXQUFsQixDQUF0Qjs7QUFFQSxNQUFJQyxLQUFLLElBQUksSUFBYixFQUFtQjtBQUNqQixXQUFPSSxPQUFQO0FBQ0QsR0FSZ0IsQ0FVakI7OztBQUNBLFFBQU1HLFVBQVUsR0FBR0MsS0FBSyxDQUFDQyxJQUFOLENBQVdULEtBQVgsRUFBa0JVLEtBQUssSUFBSTtBQUM1QztBQUNBQSxJQUFBQSxLQUFLLENBQUMsQ0FBRCxDQUFMLEdBQVdDLG9CQUFXQyxJQUFYLENBQWdCUixPQUFoQixFQUF5Qk0sS0FBSyxDQUFDLENBQUQsQ0FBOUIsQ0FBWDtBQUNBLFdBQU9BLEtBQVA7QUFDRCxHQUprQixDQUFuQixDQVhpQixDQWlCakI7O0FBQ0EsUUFBTUcsVUFBVSxHQUFHTixVQUFVLENBQzFCTyxHQURnQixDQUNaLENBQUMsQ0FBQ0MsUUFBRCxDQUFELEtBQWdCSixvQkFBV0ssT0FBWCxDQUFtQkQsUUFBbkIsQ0FESixFQUVoQkUsTUFGZ0IsQ0FFVCxDQUFDRCxPQUFELEVBQVVFLENBQVYsRUFBYUMsR0FBYixLQUFxQkEsR0FBRyxDQUFDQyxPQUFKLENBQVlKLE9BQVosTUFBeUJFLENBRnJDLENBQW5CO0FBSUEsUUFBTSx5QkFBV0wsVUFBWCxFQUF1QlYsdUJBQXZCLEVBQWdEYSxPQUFPLElBQzNEWCxtQkFBVWdCLE1BQVYsQ0FBaUJMLE9BQWpCLENBREksQ0FBTjtBQUlBLFFBQU0seUJBQ0pULFVBREksRUFFSkosdUJBRkksRUFHSixDQUFDLENBQUNZLFFBQUQsRUFBV08sUUFBWCxDQUFELEtBQTBCO0FBQ3hCO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsV0FBTyxJQUFJN0QsT0FBSixDQUFZLENBQUNRLE9BQUQsRUFBVVAsTUFBVixLQUFxQjtBQUN0QzZELGtCQUFHQyxTQUFILENBQWFULFFBQWIsRUFBdUJPLFFBQVEsSUFBSSxFQUFuQyxFQUF1Q0csR0FBRyxJQUFJO0FBQzVDLFlBQUlBLEdBQUosRUFBUztBQUNQL0QsVUFBQUEsTUFBTSxDQUFDK0QsR0FBRCxDQUFOO0FBQ0QsU0FGRCxNQUVPO0FBQ0x4RCxVQUFBQSxPQUFPO0FBQ1I7QUFDRixPQU5EO0FBT0QsS0FSTSxDQUFQO0FBU0QsR0FqQkcsQ0FBTjtBQW9CQSxTQUFPbUMsT0FBUDtBQUNEOztBQUVNLFNBQVNzQixhQUFULEdBQStCO0FBQ3BDLFFBQU07QUFBQ0MsSUFBQUE7QUFBRCxNQUFpQnhFLE9BQU8sQ0FBQ0MsR0FBL0I7O0FBQ0EsTUFBSXVFLFlBQVksSUFBSSxJQUFwQixFQUEwQjtBQUN4QixVQUFNQyxRQUFRLEdBQUdDLE1BQU0sQ0FBQ0MsWUFBeEI7O0FBQ0EsUUFBSUYsUUFBUSxJQUFJLElBQWhCLEVBQXNCO0FBQ3BCTCxrQkFBR1EsYUFBSCxDQUNFcEIsb0JBQVdDLElBQVgsQ0FBZ0JlLFlBQWhCLEVBQThCSyxjQUFLQyxFQUFMLEtBQVksT0FBMUMsQ0FERixFQUVFQyxJQUFJLENBQUNDLFNBQUwsQ0FBZVAsUUFBZixDQUZGO0FBSUQ7QUFDRjtBQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvd1xyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHR5cGUge09ic2VydmFibGV9IGZyb20gJ3J4anMtY29tcGF0L2J1bmRsZXMvcnhqcy1jb21wYXQudW1kLm1pbi5qcyc7XHJcblxyXG5pbXBvcnQgaW52YXJpYW50IGZyb20gJ2Fzc2VydCc7XHJcbmltcG9ydCBmcyBmcm9tICdmcyc7XHJcbmltcG9ydCB0ZW1wIGZyb20gJ3RlbXAnO1xyXG5pbXBvcnQgdXVpZCBmcm9tICd1dWlkJztcclxuaW1wb3J0IGZzUHJvbWlzZSBmcm9tICcuL2ZzUHJvbWlzZSc7XHJcbmltcG9ydCBudWNsaWRlVXJpIGZyb20gJy4vbnVjbGlkZVVyaSc7XHJcbmltcG9ydCB7YXN5bmNMaW1pdH0gZnJvbSAnLi9wcm9taXNlJztcclxuXHJcbmludmFyaWFudChcclxuICAodHlwZW9mIGF0b20gIT09ICd1bmRlZmluZWQnICYmIGF0b20uaW5TcGVjTW9kZSgpKSB8fFxyXG4gICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICd0ZXN0JyxcclxuICAnVGVzdCBoZWxwZXJzIHNob3VsZCBvbmx5IGJlIHVzZWQgaW4gc3BlYyBtb2RlJyxcclxuKTtcclxuXHJcbi8qKlxyXG4gKiBWZXJpZmllcyB0aGF0IGEgUHJvbWlzZSBmYWlscyB3aXRoIGFuIEVycm9yIHdpdGggc3BlY2lmaWMgZXhwZWN0YXRpb25zLiBXaGVuXHJcbiAqIHJ1bm5pbmcgYSB0ZXN0IHdoZXJlIGEgUHJvbWlzZSBpcyBleHBlY3RlZCB0byBmYWlsLCBpdCBpcyBpbXBvcnRhbnQgdG8gdmVyaWZ5XHJcbiAqIHRoYXQgaXQgZmFpbGVkIGluIHRoZSBleHBlY3RlZCB3YXkgdG8gYXZvaWQgZmFsc2UgcG9zaXRpdmVzIGluIHRlc3QgcmVzdWx0cy5cclxuICpcclxuICogVGhpcyBmdW5jdGlvbiBzaG91bGQgYmUgdXNlZCB3aXRoIGBhd2FpdGAgaW5zaWRlIGB3YWl0c0ZvclByb21pc2UoKWAuXHJcbiAqXHJcbiAqIEBwYXJhbSBwcm9taXNlIHdpbGwgYmUgYXdhaXRlZC4gSXQgaXMgZXhwZWN0ZWQgdG8gcmVqZWN0LiBJZiBpdCBkb2VzIG5vdFxyXG4gKiAgICAgcmVqZWN0LCB0aGVuIHRoaXMgZnVuY3Rpb24gd2lsbCByZXR1cm4gYSByZWplY3RlZCBQcm9taXNlLlxyXG4gKiBAcGFyYW0gdmVyaWZ5IHNob3VsZCBjb25maXJtIGV4cGVjdGF0aW9ucyBhYm91dCB0aGUgRXJyb3IgcHJvZHVjZWQgYnkgdGhlXHJcbiAqICAgICByZWplY3Rpb24gb2YgYHByb21pc2VgLiBJZiB0aGVzZSBleHBlY3RhdGlvbnMgYXJlIG5vdCBtZXQsIHRoZW5cclxuICogICAgIGB2ZXJpZnkoKWAgbXVzdCB0aHJvdyBhbiBleGNlcHRpb24uXHJcbiAqL1xyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhwZWN0QXN5bmNGYWlsdXJlKFxyXG4gIHByb21pc2U6IFByb21pc2U8YW55PixcclxuICB2ZXJpZnk6IChlcnJvcjogRXJyb3IpID0+IHZvaWQsXHJcbik6IFByb21pc2U8YW55PiB7XHJcbiAgdHJ5IHtcclxuICAgIGF3YWl0IHByb21pc2U7XHJcbiAgICByZXR1cm4gUHJvbWlzZS5yZWplY3QoXHJcbiAgICAgIG5ldyBFcnJvcignUHJvbWlzZSBzaG91bGQgaGF2ZSBmYWlsZWQsIGJ1dCBkaWQgbm90LicpLFxyXG4gICAgKTtcclxuICB9IGNhdGNoIChlKSB7XHJcbiAgICB2ZXJpZnkoZSk7XHJcbiAgfVxyXG59XHJcblxyXG4vKipcclxuICogVGhpcyBpcyB1c2VmdWwgZm9yIG1vY2tpbmcgYSBtb2R1bGUgdGhhdCB0aGUgbW9kdWxlIHVuZGVyIHRlc3QgcmVxdWlyZXMuXHJcbiAqIEFmdGVyIHNldHRpbmcgdXAgdGhlIG1vY2tzLCB5b3UgbXVzdCBpbnZhbGlkYXRlIHRoZSByZXF1aXJlIGNhY2hlIGFuZCB0aGVuXHJcbiAqIHJlLXJlcXVpcmUgdGhlIG1vZHVsZSB1bmRlciB0ZXN0IHNvIHRoYXQgaXQgcGlja3MgdXAgdGhlIG1vY2tlZFxyXG4gKiBkZXBlbmRlbmNpZXMuXHJcbiAqXHJcbiAqIFRoZSByZXF1aXJlIHBhcmFtZXRlciBpcyBuZWVkZWQgYmVjYXVzZSByZXF1aXJlIGlzIGJvdW5kIGRpZmZlcmVudGx5IGluIGVhY2hcclxuICogZmlsZSwgYW5kIHdlIG5lZWQgdG8gZXhlY3V0ZSB0aGlzIGluIHRoZSBjYWxsZXIncyBjb250ZXh0LlxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGNsZWFyUmVxdWlyZUNhY2hlKHJlcXVpcmU6IE9iamVjdCwgbW9kdWxlOiBzdHJpbmcpOiB2b2lkIHtcclxuICBkZWxldGUgcmVxdWlyZS5jYWNoZVtyZXF1aXJlLnJlc29sdmUobW9kdWxlKV07XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiB1bmNhY2hlZFJlcXVpcmUocmVxdWlyZTogT2JqZWN0LCBtb2R1bGU6IHN0cmluZyk6IG1peGVkIHtcclxuICBjbGVhclJlcXVpcmVDYWNoZShyZXF1aXJlLCBtb2R1bGUpO1xyXG4gIC8vICRGbG93SWdub3JlXHJcbiAgcmV0dXJuIHJlcXVpcmUobW9kdWxlKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIEphc21pbmUgaGFzIHRyb3VibGUgc3B5aW5nIG9uIHByb3BlcnRpZXMgc3VwcGxpZWQgYnkgZ2V0dGVycywgc28gdG8gbWFrZSBpdFxyXG4gKiB3b3JrIHdlIGhhdmUgdG8gZ2V0IHRoZSB2YWx1ZSwgZGVsZXRlIHRoZSBnZXR0ZXIsIGFuZCBzZXQgdGhlIHZhbHVlIGFzIGFcclxuICogcHJvcGVydHkuXHJcbiAqXHJcbiAqIFRoaXMgbWFrZXMgdHdvIGFzc3VtcHRpb25zOlxyXG4gKiAtIFRoZSBnZXR0ZXIgaXMgaWRlbXBvdGVudCAob3RoZXJ3aXNlLCBjYWxsZXJzIGluIG90aGVyIHRlc3RzIG1pZ2h0IGJlXHJcbiAqICAgc3VycHJpc2VkIHdoZW4gdGhlIHZhbHVlIGhlcmUgaXMgcmV0dXJuZWQpXHJcbiAqIC0gVGhlIGdldHRlciByZXR1cm5zIGEgZnVuY3Rpb24gKG90aGVyd2lzZSwgaXQgZG9lc24ndCBtYWtlIHNlbnNlIHRvIHNweSBvblxyXG4gKiAgIGl0KVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIHNweU9uR2V0dGVyVmFsdWUob2JqZWN0OiBPYmplY3QsIGY6IHN0cmluZyk6IEphc21pbmVTcHkge1xyXG4gIGNvbnN0IHZhbHVlID0gb2JqZWN0W2ZdO1xyXG4gIGRlbGV0ZSBvYmplY3RbZl07XHJcbiAgb2JqZWN0W2ZdID0gdmFsdWU7XHJcbiAgcmV0dXJuIHNweU9uKG9iamVjdCwgZik7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBDaGVja3MgaWYgdGhlIHR3byBvYmplY3RzIGhhdmUgZXF1YWwgcHJvcGVydGllcy4gVGhpcyBjb25zaWRlcnMgYSBwcm9wZXJ0eVxyXG4gKiBzZXQgdG8gdW5kZWZpbmVkIHRvIGJlIGVxdWl2YWxlbnQgdG8gYSBwcm9wZXJ0eSB0aGF0IHdhcyBub3Qgc2V0IGF0IGFsbC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBhcmVQcm9wZXJ0aWVzRXF1YWwob2JqMTogT2JqZWN0LCBvYmoyOiBPYmplY3QpOiBib29sZWFuIHtcclxuICBjb25zdCBhbGxQcm9wcyA9IG5ldyBTZXQoKTtcclxuICBmdW5jdGlvbiBhZGRBbGxQcm9wcyhvYmopIHtcclxuICAgIGZvciAoY29uc3QgcHJvcCBvZiBPYmplY3Qua2V5cyhvYmopKSB7XHJcbiAgICAgIGFsbFByb3BzLmFkZChwcm9wKTtcclxuICAgIH1cclxuICB9XHJcbiAgW29iajEsIG9iajJdLmZvckVhY2goYWRkQWxsUHJvcHMpO1xyXG4gIGZvciAoY29uc3QgcHJvcCBvZiBhbGxQcm9wcykge1xyXG4gICAgaWYgKG9iajFbcHJvcF0gIT09IG9iajJbcHJvcF0pIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gdHJ1ZTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFdhcm5pbmc6IENhbGxzaXRlcyAqbXVzdCogYXdhaXQgdGhlIHJlc3VsdGluZyBwcm9taXNlLCBvciB0ZXN0IGZhaWx1cmVzIG1heSBnbyB1bnJlcG9ydGVkIG9yXHJcbiAqIG1pc2F0dHJpYnV0ZWQuXHJcbiAqL1xyXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZXhwZWN0T2JzZXJ2YWJsZVRvU3RhcnRXaXRoPFQ+KFxyXG4gIHNvdXJjZTogT2JzZXJ2YWJsZTxUPixcclxuICBleHBlY3RlZDogQXJyYXk8VD4sXHJcbik6IFByb21pc2U8dm9pZD4ge1xyXG4gIGNvbnN0IGFjdHVhbDogQXJyYXk8VD4gPSBhd2FpdCBzb3VyY2VcclxuICAgIC50YWtlKGV4cGVjdGVkLmxlbmd0aClcclxuICAgIC50b0FycmF5KClcclxuICAgIC50b1Byb21pc2UoKTtcclxuICBleHBlY3QoYWN0dWFsKS50b0VxdWFsKGV4cGVjdGVkKTtcclxufVxyXG5cclxuLyoqXHJcbiAqIFRha2VzIG9mIE1hcCBvZiBmaWxlL2ZpbGUtY29udGVudCBwYWlycywgYW5kIGNyZWF0ZXMgYSB0ZW1wIGRpciB0aGF0IG1hdGNoZXNcclxuICogdGhlIGZpbGUgc3RydWN0dXJlIG9mIHRoZSBNYXAuIEV4YW1wbGU6XHJcbiAqXHJcbiAqIGdlbmVyYXRlRml4dHVyZSgnbXlmaXh0dXJlJywgbmV3IE1hcChbXHJcbiAqICAgWydmb28uanMnXSxcclxuICogICBbJ2Jhci9iYXoudHh0JywgJ3NvbWUgdGV4dCddLFxyXG4gKiBdKSk7XHJcbiAqXHJcbiAqIENyZWF0ZXM6XHJcbiAqXHJcbiAqIC90bXAvbXlmaXh0dXJlXzEvZm9vLmpzIChlbXB0eSBmaWxlKVxyXG4gKiAvdG1wL215Zml4dHVyZV8xL2Jhci9iYXoudHh0ICh3aXRoICdzb21lIHRleHQnKVxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdlbmVyYXRlRml4dHVyZShcclxuICBmaXh0dXJlTmFtZTogc3RyaW5nLFxyXG4gIGZpbGVzOiA/TWFwPHN0cmluZywgP3N0cmluZz4sXHJcbik6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgdGVtcC50cmFjaygpO1xyXG5cclxuICBjb25zdCBNQVhfQ09OQ1VSUkVOVF9GSUxFX09QUyA9IDEwMDtcclxuICBjb25zdCB0ZW1wRGlyID0gYXdhaXQgZnNQcm9taXNlLnRlbXBkaXIoZml4dHVyZU5hbWUpO1xyXG5cclxuICBpZiAoZmlsZXMgPT0gbnVsbCkge1xyXG4gICAgcmV0dXJuIHRlbXBEaXI7XHJcbiAgfVxyXG5cclxuICAvLyBNYXAgLT4gQXJyYXkgd2l0aCBmdWxsIHBhdGhzXHJcbiAgY29uc3QgZmlsZVR1cGxlcyA9IEFycmF5LmZyb20oZmlsZXMsIHR1cGxlID0+IHtcclxuICAgIC8vIEl0J3Mgb3VyIG93biBhcnJheSAtIGl0J3Mgb2sgdG8gbXV0YXRlIGl0XHJcbiAgICB0dXBsZVswXSA9IG51Y2xpZGVVcmkuam9pbih0ZW1wRGlyLCB0dXBsZVswXSk7XHJcbiAgICByZXR1cm4gdHVwbGU7XHJcbiAgfSk7XHJcblxyXG4gIC8vIERlZHVwZSB0aGUgZGlycyB0aGF0IHdlIGhhdmUgdG8gbWFrZS5cclxuICBjb25zdCBkaXJzVG9NYWtlID0gZmlsZVR1cGxlc1xyXG4gICAgLm1hcCgoW2ZpbGVuYW1lXSkgPT4gbnVjbGlkZVVyaS5kaXJuYW1lKGZpbGVuYW1lKSlcclxuICAgIC5maWx0ZXIoKGRpcm5hbWUsIGksIGFycikgPT4gYXJyLmluZGV4T2YoZGlybmFtZSkgPT09IGkpO1xyXG5cclxuICBhd2FpdCBhc3luY0xpbWl0KGRpcnNUb01ha2UsIE1BWF9DT05DVVJSRU5UX0ZJTEVfT1BTLCBkaXJuYW1lID0+XHJcbiAgICBmc1Byb21pc2UubWtkaXJwKGRpcm5hbWUpLFxyXG4gICk7XHJcblxyXG4gIGF3YWl0IGFzeW5jTGltaXQoXHJcbiAgICBmaWxlVHVwbGVzLFxyXG4gICAgTUFYX0NPTkNVUlJFTlRfRklMRV9PUFMsXHJcbiAgICAoW2ZpbGVuYW1lLCBjb250ZW50c10pID0+IHtcclxuICAgICAgLy8gV2UgY2FuJ3QgdXNlIGZzUHJvbWlzZS9mcy1wbHVzIGJlY2F1c2UgaXQgZG9lcyB0b28gbXVjaCBleHRyYSB3b3JrLlxyXG4gICAgICAvLyBUaGV5IGNhbGwgYG1rZGlycGAgYmVmb3JlIGB3cml0ZUZpbGVgLiBXZSBrbm93IHRoYXQgdGhlIHRhcmdldCBkaXJcclxuICAgICAgLy8gZXhpc3RzLCBzbyB3ZSBjYW4gb3B0aW1pemUgYnkgZ29pbmcgc3RyYWlnaHQgdG8gYGZzYC4gV2hlbiB5b3UncmVcclxuICAgICAgLy8gbWFraW5nIDEwayBmaWxlcywgdGhpcyBhZGRzIH41MDBtcy5cclxuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlLCByZWplY3QpID0+IHtcclxuICAgICAgICBmcy53cml0ZUZpbGUoZmlsZW5hbWUsIGNvbnRlbnRzIHx8ICcnLCBlcnIgPT4ge1xyXG4gICAgICAgICAgaWYgKGVycikge1xyXG4gICAgICAgICAgICByZWplY3QoZXJyKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJlc29sdmUoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgICAgfSk7XHJcbiAgICB9LFxyXG4gICk7XHJcblxyXG4gIHJldHVybiB0ZW1wRGlyO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gd3JpdGVDb3ZlcmFnZSgpOiB2b2lkIHtcclxuICBjb25zdCB7Q09WRVJBR0VfRElSfSA9IHByb2Nlc3MuZW52O1xyXG4gIGlmIChDT1ZFUkFHRV9ESVIgIT0gbnVsbCkge1xyXG4gICAgY29uc3QgY292ZXJhZ2UgPSBnbG9iYWwuX19jb3ZlcmFnZV9fO1xyXG4gICAgaWYgKGNvdmVyYWdlICE9IG51bGwpIHtcclxuICAgICAgZnMud3JpdGVGaWxlU3luYyhcclxuICAgICAgICBudWNsaWRlVXJpLmpvaW4oQ09WRVJBR0VfRElSLCB1dWlkLnY0KCkgKyAnLmpzb24nKSxcclxuICAgICAgICBKU09OLnN0cmluZ2lmeShjb3ZlcmFnZSksXHJcbiAgICAgICk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Rlc3QtaGVscGVycy5qcyJdLCJuYW1lcyI6WyJhdG9tIiwiaW5TcGVjTW9kZSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImV4cGVjdEFzeW5jRmFpbHVyZSIsInByb21pc2UiLCJ2ZXJpZnkiLCJQcm9taXNlIiwicmVqZWN0IiwiRXJyb3IiLCJlIiwiY2xlYXJSZXF1aXJlQ2FjaGUiLCJyZXF1aXJlIiwibW9kdWxlIiwiY2FjaGUiLCJyZXNvbHZlIiwidW5jYWNoZWRSZXF1aXJlIiwic3B5T25HZXR0ZXJWYWx1ZSIsIm9iamVjdCIsImYiLCJ2YWx1ZSIsInNweU9uIiwiYXJlUHJvcGVydGllc0VxdWFsIiwib2JqMSIsIm9iajIiLCJhbGxQcm9wcyIsIlNldCIsImFkZEFsbFByb3BzIiwib2JqIiwicHJvcCIsIk9iamVjdCIsImtleXMiLCJhZGQiLCJmb3JFYWNoIiwiZXhwZWN0T2JzZXJ2YWJsZVRvU3RhcnRXaXRoIiwic291cmNlIiwiZXhwZWN0ZWQiLCJhY3R1YWwiLCJ0YWtlIiwibGVuZ3RoIiwidG9BcnJheSIsInRvUHJvbWlzZSIsImV4cGVjdCIsInRvRXF1YWwiLCJnZW5lcmF0ZUZpeHR1cmUiLCJmaXh0dXJlTmFtZSIsImZpbGVzIiwidGVtcCIsInRyYWNrIiwiTUFYX0NPTkNVUlJFTlRfRklMRV9PUFMiLCJ0ZW1wRGlyIiwiZnNQcm9taXNlIiwidGVtcGRpciIsImZpbGVUdXBsZXMiLCJBcnJheSIsImZyb20iLCJ0dXBsZSIsIm51Y2xpZGVVcmkiLCJqb2luIiwiZGlyc1RvTWFrZSIsIm1hcCIsImZpbGVuYW1lIiwiZGlybmFtZSIsImZpbHRlciIsImkiLCJhcnIiLCJpbmRleE9mIiwibWtkaXJwIiwiY29udGVudHMiLCJmcyIsIndyaXRlRmlsZSIsImVyciIsIndyaXRlQ292ZXJhZ2UiLCJDT1ZFUkFHRV9ESVIiLCJjb3ZlcmFnZSIsImdsb2JhbCIsIl9fY292ZXJhZ2VfXyIsIndy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R0osQ0FBQyxDQUFDWSxRQUFELEVBQVdPLFFBQVgsQ0FBRCxLQUEwQjtBQUN4QjtBQUNBO0FBQ0E7QUFDQTtBQUNBLFdBQU8sSUFBSTdELE9BQUosQ0FBWSxDQUFDUSxPQUFELEVBQVVQLE1BQVYsS0FBcUI7QUFDdEM2RCxrQkFBR0MsU0FBSCxDQUFhVCxRQUFiLEVBQXVCTyxRQUFRLElBQUksRUFBbkMsRUFBdUNHLEdBQUcsSUFBSTtBQUM1QyxZQUFJQSxHQUFKLEVBQVM7QUFDUC9ELFVBQUFBLE1BQU0sQ0FBQytELEdBQUQsQ0FBTjtBQUNELFNBRkQsTUFFTztBQUNMeEQsVUFBQUEsT0FBTztBQUNSO0FBQ0YsT0FORDtBQU9ELEtBUk0sQ0FBUDtBQVNELEdBakJHLENBQU47QUFvQkEsU0FBT21DLE9BQVA7QUFDRDs7QUFFTSxTQUFTc0IsYUFBVCxHQUErQjtBQUNwQyxRQUFNO0FBQUNDLElBQUFBO0FBQUQsTUFBaUJ4RSxPQUFPLENBQUNDLEdBQS9COztBQUNBLE1BQUl1RSxZQUFZLElBQUksSUFBcEIsRUFBMEI7QUFDeEIsVUFBTUMsUUFBUSxHQUFHQyxNQUFNLENBQUNDLFlBQXhCOztBQUNBLFFBQUlGLFFBQVEsSUFBSSxJQUFoQixFQUFzQjtBQUNwQkwsa0JBQUdRLGFBQUgsQ0FDRXBCLG9CQUFXQyxJQUFYLENBQWdCZSxZQUFoQixFQUE4QkssY0FBS0MsRUFBTCxLQUFZLE9BQTFDLENBREYsRUFFRUMsSUFBSSxDQUFDQyxTQUFMLENBQWVQLFFBQWYsQ0FGRjtBQUlEO0FBQ0Y7QUFDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB0eXBlIHtPYnNlcnZhYmxlfSBmcm9tICdyeGpzLWNvbXBhdC9idW5kbGVzL3J4anMtY29tcGF0LnVtZC5taW4uanMnO1xyXG5cclxuaW1wb3J0IGludmFyaWFudCBmcm9tICdhc3NlcnQnO1xyXG5pbXBvcnQgZnMgZnJvbSAnZnMnO1xyXG5pbXBvcnQgdGVtcCBmcm9tICd0ZW1wJztcclxuaW1wb3J0IHV1aWQgZnJvbSAndXVpZCc7XHJcbmltcG9ydCBmc1Byb21pc2UgZnJvbSAnLi9mc1Byb21pc2UnO1xyXG5pbXBvcnQgbnVjbGlkZVVyaSBmcm9tICcuL251Y2xpZGVVcmknO1xyXG5pbXBvcnQge2FzeW5jTGltaXR9IGZyb20gJy4vcHJvbWlzZSc7XHJcblxyXG5pbnZhcmlhbnQoXHJcbiAgKHR5cGVvZiBhdG9tICE9PSAndW5kZWZpbmVkJyAmJiBhdG9tLmluU3BlY01vZGUoKSkgfHxcclxuICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAndGVzdCcsXHJcbiAgJ1Rlc3QgaGVscGVycyBzaG91bGQgb25seSBiZSB1c2VkIGluIHNwZWMgbW9kZScsXHJcbik7XHJcblxyXG4vKipcclxuICogVmVyaWZpZXMgdGhhdCBhIFByb21pc2UgZmFpbHMgd2l0aCBhbiBFcnJvciB3aXRoIHNwZWNpZmljIGV4cGVjdGF0aW9ucy4gV2hlblxyXG4gKiBydW5uaW5nIGEgdGVzdCB3aGVyZSBhIFByb21pc2UgaXMgZXhwZWN0ZWQgdG8gZmFpbCwgaXQgaXMgaW1wb3J0YW50IHRvIHZlcmlmeVxyXG4gKiB0aGF0IGl0IGZhaWxlZCBpbiB0aGUgZXhwZWN0ZWQgd2F5IHRvIGF2b2lkIGZhbHNlIHBvc2l0aXZlcyBpbiB0ZXN0IHJlc3VsdHMuXHJcbiAqXHJcbiAqIFRoaXMgZnVuY3Rpb24gc2hvdWxkIGJlIHVzZWQgd2l0aCBgYXdhaXRgIGluc2lkZSBgd2FpdHNGb3JQcm9taXNlKClgLlxyXG4gKlxyXG4gKiBAcGFyYW0gcHJvbWlzZSB3aWxsIGJlIGF3YWl0ZWQuIEl0IGlzIGV4cGVjdGVkIHRvIHJlamVjdC4gSWYgaXQgZG9lcyBub3RcclxuICogICAgIHJlamVjdCwgdGhlbiB0aGlzIGZ1bmN0aW9uIHdpbGwgcmV0dXJuIGEgcmVqZWN0ZWQgUHJvbWlzZS5cclxuICogQHBhcmFtIHZlcmlmeSBzaG91bGQgY29uZmlybSBleHBlY3RhdGlvbnMgYWJvdXQgdGhlIEVycm9yIHByb2R1Y2VkIGJ5IHRoZVxyXG4gKiAgICAgcmVqZWN0aW9uIG9mIGBwcm9taXNlYC4gSWYgdGhlc2UgZXhwZWN0YXRpb25zIGFyZSBub3QgbWV0LCB0aGVuXHJcbiAqICAgICBgdmVyaWZ5KClgIG11c3QgdGhyb3cgYW4gZXhjZXB0aW9uLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4cGVjdEFzeW5jRmFpbHVyZShcclxuICBwcm9taXNlOiBQcm9taXNlPGFueT4sXHJcbiAgdmVyaWZ5OiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkLFxyXG4pOiBQcm9taXNlPGFueT4ge1xyXG4gIHRyeSB7XHJcbiAgICBhd2FpdCBwcm9taXNlO1xyXG4gICAgcmV0dXJuIFByb21pc2UucmVqZWN0KFxyXG4gICAgICBuZXcgRXJyb3IoJ1Byb21pc2Ugc2hvdWxkIGhhdmUgZmFpbGVkLCBidXQgZGlkIG5vdC4nKSxcclxuICAgICk7XHJcbiAgfSBjYXRjaCAoZSkge1xyXG4gICAgdmVyaWZ5KGUpO1xyXG4gIH1cclxufVxyXG5cclxuLyoqXHJcbiAqIFRoaXMgaXMgdXNlZnVsIGZvciBtb2NraW5nIGEgbW9kdWxlIHRoYXQgdGhlIG1vZHVsZSB1bmRlciB0ZXN0IHJlcXVpcmVzLlxyXG4gKiBBZnRlciBzZXR0aW5nIHVwIHRoZSBtb2NrcywgeW91IG11c3QgaW52YWxpZGF0ZSB0aGUgcmVxdWlyZSBjYWNoZSBhbmQgdGhlblxyXG4gKiByZS1yZXF1aXJlIHRoZSBtb2R1bGUgdW5kZXIgdGVzdCBzbyB0aGF0IGl0IHBpY2tzIHVwIHRoZSBtb2NrZWRcclxuICogZGVwZW5kZW5jaWVzLlxyXG4gKlxyXG4gKiBUaGUgcmVxdWlyZSBwYXJhbWV0ZXIgaXMgbmVlZGVkIGJlY2F1c2UgcmVxdWlyZSBpcyBib3VuZCBkaWZmZXJlbnRseSBpbiBlYWNoXHJcbiAqIGZpbGUsIGFuZCB3ZSBuZWVkIHRvIGV4ZWN1dGUgdGhpcyBpbiB0aGUgY2FsbGVyJ3MgY29udGV4dC5cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBjbGVhclJlcXVpcmVDYWNoZShyZXF1aXJlOiBPYmplY3QsIG1vZHVsZTogc3RyaW5nKTogdm9pZCB7XHJcbiAgZGVsZXRlIHJlcXVpcmUuY2FjaGVbcmVxdWlyZS5yZXNvbHZlKG1vZHVsZSldO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdW5jYWNoZWRSZXF1aXJlKHJlcXVpcmU6IE9iamVjdCwgbW9kdWxlOiBzdHJpbmcpOiBtaXhlZCB7XHJcbiAgY2xlYXJSZXF1aXJlQ2FjaGUocmVxdWlyZSwgbW9kdWxlKTtcclxuICAvLyAkRmxvd0lnbm9yZVxyXG4gIHJldHVybiByZXF1aXJlKG1vZHVsZSk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBKYXNtaW5lIGhhcyB0cm91YmxlIHNweWluZyBvbiBwcm9wZXJ0aWVzIHN1cHBsaWVkIGJ5IGdldHRlcnMsIHNvIHRvIG1ha2UgaXRcclxuICogd29yayB3ZSBoYXZlIHRvIGdldCB0aGUgdmFsdWUsIGRlbGV0ZSB0aGUgZ2V0dGVyLCBhbmQgc2V0IHRoZSB2YWx1ZSBhcyBhXHJcbiAqIHByb3BlcnR5LlxyXG4gKlxyXG4gKiBUaGlzIG1ha2VzIHR3byBhc3N1bXB0aW9uczpcclxuICogLSBUaGUgZ2V0dGVyIGlzIGlkZW1wb3RlbnQgKG90aGVyd2lzZSwgY2FsbGVycyBpbiBvdGhlciB0ZXN0cyBtaWdodCBiZVxyXG4gKiAgIHN1cnByaXNlZCB3aGVuIHRoZSB2YWx1ZSBoZXJlIGlzIHJldHVybmVkKVxyXG4gKiAtIFRoZSBnZXR0ZXIgcmV0dXJucyBhIGZ1bmN0aW9uIChvdGhlcndpc2UsIGl0IGRvZXNuJ3QgbWFrZSBzZW5zZSB0byBzcHkgb25cclxuICogICBpdClcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBzcHlPbkdldHRlclZhbHVlKG9iamVjdDogT2JqZWN0LCBmOiBzdHJpbmcpOiBKYXNtaW5lU3B5IHtcclxuICBjb25zdCB2YWx1ZSA9IG9iamVjdFtmXTtcclxuICBkZWxldGUgb2JqZWN0W2ZdO1xyXG4gIG9iamVjdFtmXSA9IHZhbHVlO1xyXG4gIHJldHVybiBzcHlPbihvYmplY3QsIGYpO1xyXG59XHJcblxyXG4vKipcclxuICogQ2hlY2tzIGlmIHRoZSB0d28gb2JqZWN0cyBoYXZlIGVxdWFsIHByb3BlcnRpZXMuIFRoaXMgY29uc2lkZXJzIGEgcHJvcGVydHlcclxuICogc2V0IHRvIHVuZGVmaW5lZCB0byBiZSBlcXVpdmFsZW50IHRvIGEgcHJvcGVydHkgdGhhdCB3YXMgbm90IHNldCBhdCBhbGwuXHJcbiAqL1xyXG5leHBvcnQgZnVuY3Rpb24gYXJlUHJvcGVydGllc0VxdWFsKG9iajE6IE9iamVjdCwgb2JqMjogT2JqZWN0KTogYm9vbGVhbiB7XHJcbiAgY29uc3QgYWxsUHJvcHMgPSBuZXcgU2V0KCk7XHJcbiAgZnVuY3Rpb24gYWRkQWxsUHJvcHMob2JqKSB7XHJcbiAgICBmb3IgKGNvbnN0IHByb3Agb2YgT2JqZWN0LmtleXMob2JqKSkge1xyXG4gICAgICBhbGxQcm9wcy5hZGQocHJvcCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIFtvYmoxLCBvYmoyXS5mb3JFYWNoKGFkZEFsbFByb3BzKTtcclxuICBmb3IgKGNvbnN0IHByb3Agb2YgYWxsUHJvcHMpIHtcclxuICAgIGlmIChvYmoxW3Byb3BdICE9PSBvYmoyW3Byb3BdKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIHRydWU7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBXYXJuaW5nOiBDYWxsc2l0ZXMgKm11c3QqIGF3YWl0IHRoZSByZXN1bHRpbmcgcHJvbWlzZSwgb3IgdGVzdCBmYWlsdXJlcyBtYXkgZ28gdW5yZXBvcnRlZCBvclxyXG4gKiBtaXNhdHRyaWJ1dGVkLlxyXG4gKi9cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4cGVjdE9ic2VydmFibGVUb1N0YXJ0V2l0aDxUPihcclxuICBzb3VyY2U6IE9ic2VydmFibGU8VD4sXHJcbiAgZXhwZWN0ZWQ6IEFycmF5PFQ+LFxyXG4pOiBQcm9taXNlPHZvaWQ+IHtcclxuICBjb25zdCBhY3R1YWw6IEFycmF5PFQ+ID0gYXdhaXQgc291cmNlXHJcbiAgICAudGFrZShleHBlY3RlZC5sZW5ndGgpXHJcbiAgICAudG9BcnJheSgpXHJcbiAgICAudG9Qcm9taXNlKCk7XHJcbiAgZXhwZWN0KGFjdHVhbCkudG9FcXVhbChleHBlY3RlZCk7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBUYWtlcyBvZiBNYXAgb2YgZmlsZS9maWxlLWNvbnRlbnQgcGFpcnMsIGFuZCBjcmVhdGVzIGEgdGVtcCBkaXIgdGhhdCBtYXRjaGVzXHJcbiAqIHRoZSBmaWxlIHN0cnVjdHVyZSBvZiB0aGUgTWFwLiBFeGFtcGxlOlxyXG4gKlxyXG4gKiBnZW5lcmF0ZUZpeHR1cmUoJ215Zml4dHVyZScsIG5ldyBNYXAoW1xyXG4gKiAgIFsnZm9vLmpzJ10sXHJcbiAqICAgWydiYXIvYmF6LnR4dCcsICdzb21lIHRleHQnXSxcclxuICogXSkpO1xyXG4gKlxyXG4gKiBDcmVhdGVzOlxyXG4gKlxyXG4gKiAvdG1wL215Zml4dHVyZV8xL2Zvby5qcyAoZW1wdHkgZmlsZSlcclxuICogL3RtcC9teWZpeHR1cmVfMS9iYXIvYmF6LnR4dCAod2l0aCAnc29tZSB0ZXh0JylcclxuICovXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZW5lcmF0ZUZpeHR1cmUoXHJcbiAgZml4dHVyZU5hbWU6IHN0cmluZyxcclxuICBmaWxlczogP01hcDxzdHJpbmcsID9zdHJpbmc+LFxyXG4pOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gIHRlbXAudHJhY2soKTtcclxuXHJcbiAgY29uc3QgTUFYX0NPTkNVUlJFTlRfRklMRV9PUFMgPSAxMDA7XHJcbiAgY29uc3QgdGVtcERpciA9IGF3YWl0IGZzUHJvbWlzZS50ZW1wZGlyKGZpeHR1cmVOYW1lKTtcclxuXHJcbiAgaWYgKGZpbGVzID09IG51bGwpIHtcclxuICAgIHJldHVybiB0ZW1wRGlyO1xyXG4gIH1cclxuXHJcbiAgLy8gTWFwIC0+IEFycmF5IHdpdGggZnVsbCBwYXRoc1xyXG4gIGNvbnN0IGZpbGVUdXBsZXMgPSBBcnJheS5mcm9tKGZpbGVzLCB0dXBsZSA9PiB7XHJcbiAgICAvLyBJdCdzIG91ciBvd24gYXJyYXkgLSBpdCdzIG9rIHRvIG11dGF0ZSBpdFxyXG4gICAgdHVwbGVbMF0gPSBudWNsaWRlVXJpLmpvaW4odGVtcERpciwgdHVwbGVbMF0pO1xyXG4gICAgcmV0dXJuIHR1cGxlO1xyXG4gIH0pO1xyXG5cclxuICAvLyBEZWR1cGUgdGhlIGRpcnMgdGhhdCB3ZSBoYXZlIHRvIG1ha2UuXHJcbiAgY29uc3QgZGlyc1RvTWFrZSA9IGZpbGVUdXBsZXNcclxuICAgIC5tYXAoKFtmaWxlbmFtZV0pID0+IG51Y2xpZGVVcmkuZGlybmFtZShmaWxlbmFtZSkpXHJcbiAgICAuZmlsdGVyKChkaXJuYW1lLCBpLCBhcnIpID0+IGFyci5pbmRleE9mKGRpcm5hbWUpID09PSBpKTtcclxuXHJcbiAgYXdhaXQgYXN5bmNMaW1pdChkaXJzVG9NYWtlLCBNQVhfQ09OQ1VSUkVOVF9GSUxFX09QUywgZGlybmFtZSA9PlxyXG4gICAgZnNQcm9taXNlLm1rZGlycChkaXJuYW1lKSxcclxuICApO1xyXG5cclxuICBhd2FpdCBhc3luY0xpbWl0KFxyXG4gICAgZmlsZVR1cGxlcyxcclxuICAgIE1BWF9DT05DVVJSRU5UX0ZJTEVfT1BTLFxyXG4gICAgKFtmaWxlbmFtZSwgY29udGVudHNdKSA9PiB7XHJcbiAgICAgIC8vIFdlIGNhbid0IHVzZSBmc1Byb21pc2UvZnMtcGx1cyBiZWNhdXNlIGl0IGRvZXMgdG9vIG11Y2ggZXh0cmEgd29yay5cclxuICAgICAgLy8gVGhleSBjYWxsIGBta2RpcnBgIGJlZm9yZSBgd3JpdGVGaWxlYC4gV2Uga25vdyB0aGF0IHRoZSB0YXJnZXQgZGlyXHJcbiAgICAgIC8vIGV4aXN0cywgc28gd2UgY2FuIG9wdGltaXplIGJ5IGdvaW5nIHN0cmFpZ2h0IHRvIGBmc2AuIFdoZW4geW91J3JlXHJcbiAgICAgIC8vIG1ha2luZyAxMGsgZmlsZXMsIHRoaXMgYWRkcyB+NTAwbXMuXHJcbiAgICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgZnMud3JpdGVGaWxlKGZpbGVuYW1lLCBjb250ZW50cyB8fCAnJywgZXJyID0+IHtcclxuICAgICAgICAgIGlmIChlcnIpIHtcclxuICAgICAgICAgICAgcmVqZWN0KGVycik7XHJcbiAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXNvbHZlKCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICApO1xyXG5cclxuICByZXR1cm4gdGVtcERpcjtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlQ292ZXJhZ2UoKTogdm9pZCB7XHJcbiAgY29uc3Qge0NPVkVSQUdFX0RJUn0gPSBwcm9jZXNzLmVudjtcclxuICBpZiAoQ09WRVJBR0VfRElSICE9IG51bGwpIHtcclxuICAgIGNvbnN0IGNvdmVyYWdlID0gZ2xvYmFsLl9fY292ZXJhZ2VfXztcclxuICAgIGlmIChjb3ZlcmFnZSAhPSBudWxsKSB7XHJcbiAgICAgIGZzLndyaXRlRmlsZVN5bmMoXHJcbiAgICAgICAgbnVjbGlkZVVyaS5qb2luKENPVkVSQUdFX0RJUiwgdXVpZC52NCgpICsgJy5qc29uJyksXHJcbiAgICAgICAgSlNPTi5zdHJpbmdpZnkoY292ZXJhZ2UpLFxyXG4gICAgICApO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0= |
@@ -69,2 +69,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Rva2VuaXplZC10ZXh0LmpzIl0sIm5hbWVzIjpbImtleXdvcmQiLCJ2YWx1ZSIsIl9idWlsZFRva2VuIiwiY2xhc3NOYW1lIiwiY29uc3RydWN0b3IiLCJtZXRob2QiLCJwYXJhbSIsInN0cmluZyIsIndoaXRlc3BhY2UiLCJwbGFpbiIsInR5cGUiLCJraW5kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7QUE4Qk8sU0FBU0EsT0FBVCxDQUFpQkMsS0FBakIsRUFBMkM7QUFDaEQsU0FBT0MsV0FBVyxDQUFDLFNBQUQsRUFBWUQsS0FBWixDQUFsQjtBQUNEOztBQUVNLFNBQVNFLFNBQVQsQ0FBbUJGLEtBQW5CLEVBQTZDO0FBQ2xELFNBQU9DLFdBQVcsQ0FBQyxZQUFELEVBQWVELEtBQWYsQ0FBbEI7QUFDRDs7QUFFTSxTQUFTRyxXQUFULENBQXFCSCxLQUFyQixFQUErQztBQUNwRCxTQUFPQyxXQUFXLENBQUMsYUFBRCxFQUFnQkQsS0FBaEIsQ0FBbEI7QUFDRDs7QUFFTSxTQUFTSSxNQUFULENBQWdCSixLQUFoQixFQUEwQztBQUMvQyxTQUFPQyxXQUFXLENBQUMsUUFBRCxFQUFXRCxLQUFYLENBQWxCO0FBQ0Q7O0FBRU0sU0FBU0ssS0FBVCxDQUFlTCxLQUFmLEVBQXlDO0FBQzlDLFNBQU9DLFdBQVcsQ0FBQyxPQUFELEVBQVVELEtBQVYsQ0FBbEI7QUFDRDs7QUFFTSxTQUFTTSxNQUFULENBQWdCTixLQUFoQixFQUEwQztBQUMvQyxTQUFPQyxXQUFXLENBQUMsUUFBRCxFQUFXRCxLQUFYLENBQWxCO0FBQ0Q7O0FBRU0sU0FBU08sVUFBVCxDQUFvQlAsS0FBcEIsRUFBOEM7QUFDbkQsU0FBT0MsV0FBVyxDQUFDLFlBQUQsRUFBZUQsS0FBZixDQUFsQjtBQUNEOztBQUVNLFNBQVNRLEtBQVQsQ0FBZVIsS0FBZixFQUF5QztBQUM5QyxTQUFPQyxXQUFXLENBQUMsT0FBRCxFQUFVRCxLQUFWLENBQWxCO0FBQ0Q7O0FBRU0sU0FBU1MsSUFBVCxDQUFjVCxLQUFkLEVBQXdDO0FBQzdDLFNBQU9DLFdBQVcsQ0FBQyxNQUFELEVBQVNELEtBQVQsQ0FBbEI7QUFDRDs7QUFFRCxTQUFTQyxXQUFULENBQXFCUyxJQUFyQixFQUFzQ1YsS0FBdEMsRUFBZ0U7QUFDOUQsU0FBTztBQUFDVSxJQUFBQSxJQUFEO0FBQU9WLElBQUFBO0FBQVAsR0FBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3RcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCB0eXBlIFRva2VuS2luZCA9XHJcbiAgfCAna2V5d29yZCdcclxuICB8ICdjbGFzcy1uYW1lJ1xyXG4gIHwgJ2NvbnN0cnVjdG9yJ1xyXG4gIHwgJ21ldGhvZCdcclxuICB8ICdwYXJhbSdcclxuICB8ICdzdHJpbmcnXHJcbiAgfCAnd2hpdGVzcGFjZSdcclxuICB8ICdwbGFpbidcclxuICB8ICd0eXBlJztcclxuXHJcbmV4cG9ydCB0eXBlIFRleHRUb2tlbiA9IHtcclxuICBraW5kOiBUb2tlbktpbmQsXHJcbiAgdmFsdWU6IHN0cmluZyxcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIFRva2VuaXplZFRleHQgPSBBcnJheTxUZXh0VG9rZW4+O1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGtleXdvcmQodmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIF9idWlsZFRva2VuKCdrZXl3b3JkJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2xhc3NOYW1lKHZhbHVlOiBzdHJpbmcpOiBUZXh0VG9rZW4ge1xyXG4gIHJldHVybiBfYnVpbGRUb2tlbignY2xhc3MtbmFtZScsIHZhbHVlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNvbnN0cnVjdG9yKHZhbHVlOiBzdHJpbmcpOiBUZXh0VG9rZW4ge1xyXG4gIHJldHVybiBfYnVpbGRUb2tlbignY29uc3RydWN0b3InLCB2YWx1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtZXRob2QodmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIF9idWlsZFRva2VuKCdtZXRob2QnLCB2YWx1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwYXJhbSh2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ3BhcmFtJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gc3RyaW5nKHZhbHVlOiBzdHJpbmcpOiBUZXh0VG9rZW4ge1xyXG4gIHJldHVybiBfYnVpbGRUb2tlbignc3RyaW5nJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gd2hpdGVzcGFjZSh2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ3doaXRlc3BhY2UnLCB2YWx1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBwbGFpbih2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ3BsYWluJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gdHlwZSh2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ3R5cGUnLCB2YWx1ZSk7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIF9idWlsZFRva2VuKGtpbmQ6IFRva2VuS2luZCwgdmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIHtraW5kLCB2YWx1ZX07XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3Rva2VuaXplZC10ZXh0LmpzIl0sIm5hbWVzIjpbImtleXdvcmQiLCJ2YWx1ZSIsIl9idWlsZFRva2VuIiwiY2xhc3NOYW1lIiwiY29uc3RydWN0b3IiLCJtZXRob2QiLCJwYXJhbSIsInN0cmluZyIsIndoaXRlc3BhY2UiLCJwbGFpbiIsInR5cGUiLCJraW5kIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBb0JPLFNBQVNBLE9BQVQsQ0FBaUJDLEtBQWpCLEVBQTJDO0FBQ2hELFNBQU9DLFdBQVcsQ0FBQyxTQUFELEVBQVlELEtBQVosQ0FBbEI7QUFDRDs7QUFFTSxTQUFTRSxTQUFULENBQW1CRixLQUFuQixFQUE2QztBQUNsRCxTQUFPQyxXQUFXLENBQUMsWUFBRCxFQUFlRCxLQUFmLENBQWxCO0FBQ0Q7O0FBRU0sU0FBU0csV0FBVCxDQUFxQkgsS0FBckIsRUFBK0M7QUFDcEQsU0FBT0MsV0FBVyxDQUFDLGFBQUQsRUFBZ0JELEtBQWhCLENBQWxCO0FBQ0Q7O0FBRU0sU0FBU0ksTUFBVCxDQUFnQkosS0FBaEIsRUFBMEM7QUFDL0MsU0FBT0MsV0FBVyxDQUFDLFFBQUQsRUFBV0QsS0FBWCxDQUFsQjtBQUNEOztBQUVNLFNBQVNLLEtBQVQsQ0FBZUwsS0FBZixFQUF5QztBQUM5QyxTQUFPQyxXQUFXLENBQUMsT0FBRCxFQUFVRCxLQUFWLENBQWxCO0FBQ0Q7O0FBRU0sU0FBU00sTUFBVCxDQUFnQk4sS0FBaEIsRUFBMEM7QUFDL0MsU0FBT0MsV0FBVyxDQUFDLFFBQUQsRUFBV0QsS0FBWCxDQUFsQjtBQUNEOztBQUVNLFNBQVNPLFVBQVQsQ0FBb0JQLEtBQXBCLEVBQThDO0FBQ25ELFNBQU9DLFdBQVcsQ0FBQyxZQUFELEVBQWVELEtBQWYsQ0FBbEI7QUFDRDs7QUFFTSxTQUFTUSxLQUFULENBQWVSLEtBQWYsRUFBeUM7QUFDOUMsU0FBT0MsV0FBVyxDQUFDLE9BQUQsRUFBVUQsS0FBVixDQUFsQjtBQUNEOztBQUVNLFNBQVNTLElBQVQsQ0FBY1QsS0FBZCxFQUF3QztBQUM3QyxTQUFPQyxXQUFXLENBQUMsTUFBRCxFQUFTRCxLQUFULENBQWxCO0FBQ0Q7O0FBRUQsU0FBU0MsV0FBVCxDQUFxQlMsSUFBckIsRUFBc0NWLEtBQXRDLEVBQWdFO0FBQzlELFNBQU87QUFBQ1UsSUFBQUEsSUFBRDtBQUFPVixJQUFBQTtBQUFQLEdBQVA7QUFDRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5leHBvcnQgdHlwZSBUb2tlbktpbmQgPVxyXG4gIHwgJ2tleXdvcmQnXHJcbiAgfCAnY2xhc3MtbmFtZSdcclxuICB8ICdjb25zdHJ1Y3RvcidcclxuICB8ICdtZXRob2QnXHJcbiAgfCAncGFyYW0nXHJcbiAgfCAnc3RyaW5nJ1xyXG4gIHwgJ3doaXRlc3BhY2UnXHJcbiAgfCAncGxhaW4nXHJcbiAgfCAndHlwZSc7XHJcblxyXG5leHBvcnQgdHlwZSBUZXh0VG9rZW4gPSB7XHJcbiAga2luZDogVG9rZW5LaW5kLFxyXG4gIHZhbHVlOiBzdHJpbmcsXHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBUb2tlbml6ZWRUZXh0ID0gQXJyYXk8VGV4dFRva2VuPjtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBrZXl3b3JkKHZhbHVlOiBzdHJpbmcpOiBUZXh0VG9rZW4ge1xyXG4gIHJldHVybiBfYnVpbGRUb2tlbigna2V5d29yZCcsIHZhbHVlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNsYXNzTmFtZSh2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ2NsYXNzLW5hbWUnLCB2YWx1ZSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjb25zdHJ1Y3Rvcih2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ2NvbnN0cnVjdG9yJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWV0aG9kKHZhbHVlOiBzdHJpbmcpOiBUZXh0VG9rZW4ge1xyXG4gIHJldHVybiBfYnVpbGRUb2tlbignbWV0aG9kJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcGFyYW0odmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIF9idWlsZFRva2VuKCdwYXJhbScsIHZhbHVlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHN0cmluZyh2YWx1ZTogc3RyaW5nKTogVGV4dFRva2VuIHtcclxuICByZXR1cm4gX2J1aWxkVG9rZW4oJ3N0cmluZycsIHZhbHVlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHdoaXRlc3BhY2UodmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIF9idWlsZFRva2VuKCd3aGl0ZXNwYWNlJywgdmFsdWUpO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcGxhaW4odmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIF9idWlsZFRva2VuKCdwbGFpbicsIHZhbHVlKTtcclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIHR5cGUodmFsdWU6IHN0cmluZyk6IFRleHRUb2tlbiB7XHJcbiAgcmV0dXJuIF9idWlsZFRva2VuKCd0eXBlJywgdmFsdWUpO1xyXG59XHJcblxyXG5mdW5jdGlvbiBfYnVpbGRUb2tlbihraW5kOiBUb2tlbktpbmQsIHZhbHVlOiBzdHJpbmcpOiBUZXh0VG9rZW4ge1xyXG4gIHJldHVybiB7a2luZCwgdmFsdWV9O1xyXG59XHJcbiJdfQ== |
@@ -38,2 +38,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3RyYWNrUmVhY3RQcm9maWxlclJlbmRlci5qcyJdLCJuYW1lcyI6WyJTQU1QTEVfUkFURSIsIlNUQUxMX1RIUkVTSE9MRF9NUyIsInRyYWNrUmVhY3RQcm9maWxlclJlbmRlciIsImlkIiwicGhhc2UiLCJhY3R1YWxUaW1lIiwiYmFzZVRpbWUiLCJzdGFydFRpbWUiLCJjb21taXRUaW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBWkE7Ozs7Ozs7Ozs7O0FBY0EsTUFBTUEsV0FBVyxHQUFHLEVBQXBCO0FBQ0EsTUFBTUMsa0JBQWtCLEdBQUcsR0FBM0I7O0FBRWUsU0FBU0Msd0JBQVQsQ0FDYkMsRUFEYSxFQUViQyxLQUZhLEVBR2JDLFVBSGEsRUFJYkMsUUFKYSxFQUtiQyxTQUxhLEVBTWJDLFVBTmEsRUFPYjtBQUNBLCtCQUNFLGdCQURGLEVBRUU7QUFDQTtBQUNBO0FBQ0E7QUFDQUgsRUFBQUEsVUFBVSxJQUFJSixrQkFBZCxHQUFtQyxDQUFuQyxHQUF1Q0QsV0FOekMsRUFPRTtBQUNFRyxJQUFBQSxFQURGO0FBRUVDLElBQUFBLEtBRkY7QUFHRUMsSUFBQUEsVUFIRjtBQUlFQyxJQUFBQSxRQUpGO0FBS0VDLElBQUFBLFNBTEY7QUFNRUMsSUFBQUE7QUFORixHQVBGO0FBZ0JEIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB7dHJhY2tTYW1wbGVkfSBmcm9tICcuL2FuYWx5dGljcyc7XHJcblxyXG5jb25zdCBTQU1QTEVfUkFURSA9IDEwO1xyXG5jb25zdCBTVEFMTF9USFJFU0hPTERfTVMgPSAxMDA7XHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB0cmFja1JlYWN0UHJvZmlsZXJSZW5kZXIoXHJcbiAgaWQ6IHN0cmluZyxcclxuICBwaGFzZTogc3RyaW5nLFxyXG4gIGFjdHVhbFRpbWU6IG51bWJlcixcclxuICBiYXNlVGltZTogbnVtYmVyLFxyXG4gIHN0YXJ0VGltZTogbnVtYmVyLFxyXG4gIGNvbW1pdFRpbWU6IG51bWJlcixcclxuKSB7XHJcbiAgdHJhY2tTYW1wbGVkKFxyXG4gICAgJ3JlYWN0LXByb2ZpbGVyJyxcclxuICAgIC8vIFdlIGFsd2F5cyB3YW50IHRvIHRyYWNrIGxvbmcgcmVuZGVycyBhcyB0aGVpciBpbnNpZ2h0IGlzIHZhbHVhYmxlLCBzbyBzZXRcclxuICAgIC8vIHRoZWlyIHNhbXBsZSByYXRlIHRvIDEuXHJcbiAgICAvLyBJbiByZXBvcnRpbmcsIHdlaWdodCBmYXN0ZXIgcmVuZGVycyBhdCBTQU1QTEVfUkFURSp4IHRoZWlyIHZhbHVlIHRvXHJcbiAgICAvLyBjb250aW51ZSB0byBnZXQgYWNjdXJhdGUgcmVwb3J0aW5nLlxyXG4gICAgYWN0dWFsVGltZSA+PSBTVEFMTF9USFJFU0hPTERfTVMgPyAxIDogU0FNUExFX1JBVEUsXHJcbiAgICB7XHJcbiAgICAgIGlkLFxyXG4gICAgICBwaGFzZSxcclxuICAgICAgYWN0dWFsVGltZSxcclxuICAgICAgYmFzZVRpbWUsXHJcbiAgICAgIHN0YXJ0VGltZSxcclxuICAgICAgY29tbWl0VGltZSxcclxuICAgIH0sXHJcbiAgKTtcclxufVxyXG4iXX0= | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3RyYWNrUmVhY3RQcm9maWxlclJlbmRlci5qcyJdLCJuYW1lcyI6WyJTQU1QTEVfUkFURSIsIlNUQUxMX1RIUkVTSE9MRF9NUyIsInRyYWNrUmVhY3RQcm9maWxlclJlbmRlciIsImlkIiwicGhhc2UiLCJhY3R1YWxUaW1lIiwiYmFzZVRpbWUiLCJzdGFydFRpbWUiLCJjb21taXRUaW1lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBWUE7O0FBWkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUlBLE1BQU1BLFdBQVcsR0FBRyxFQUFwQjtBQUNBLE1BQU1DLGtCQUFrQixHQUFHLEdBQTNCOztBQUVlLFNBQVNDLHdCQUFULENBQ2JDLEVBRGEsRUFFYkMsS0FGYSxFQUdiQyxVQUhhLEVBSWJDLFFBSmEsRUFLYkMsU0FMYSxFQU1iQyxVQU5hLEVBT2I7QUFDQSwrQkFDRSxnQkFERixFQUVFO0FBQ0E7QUFDQTtBQUNBO0FBQ0FILEVBQUFBLFVBQVUsSUFBSUosa0JBQWQsR0FBbUMsQ0FBbkMsR0FBdUNELFdBTnpDLEVBT0U7QUFDRUcsSUFBQUEsRUFERjtBQUVFQyxJQUFBQSxLQUZGO0FBR0VDLElBQUFBLFVBSEY7QUFJRUMsSUFBQUEsUUFKRjtBQUtFQyxJQUFBQSxTQUxGO0FBTUVDLElBQUFBO0FBTkYsR0FQRjtBQWdCRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3cgc3RyaWN0LWxvY2FsXHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5pbXBvcnQge3RyYWNrU2FtcGxlZH0gZnJvbSAnLi9hbmFseXRpY3MnO1xyXG5cclxuY29uc3QgU0FNUExFX1JBVEUgPSAxMDtcclxuY29uc3QgU1RBTExfVEhSRVNIT0xEX01TID0gMTAwO1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdHJhY2tSZWFjdFByb2ZpbGVyUmVuZGVyKFxyXG4gIGlkOiBzdHJpbmcsXHJcbiAgcGhhc2U6IHN0cmluZyxcclxuICBhY3R1YWxUaW1lOiBudW1iZXIsXHJcbiAgYmFzZVRpbWU6IG51bWJlcixcclxuICBzdGFydFRpbWU6IG51bWJlcixcclxuICBjb21taXRUaW1lOiBudW1iZXIsXHJcbikge1xyXG4gIHRyYWNrU2FtcGxlZChcclxuICAgICdyZWFjdC1wcm9maWxlcicsXHJcbiAgICAvLyBXZSBhbHdheXMgd2FudCB0byB0cmFjayBsb25nIHJlbmRlcnMgYXMgdGhlaXIgaW5zaWdodCBpcyB2YWx1YWJsZSwgc28gc2V0XHJcbiAgICAvLyB0aGVpciBzYW1wbGUgcmF0ZSB0byAxLlxyXG4gICAgLy8gSW4gcmVwb3J0aW5nLCB3ZWlnaHQgZmFzdGVyIHJlbmRlcnMgYXQgU0FNUExFX1JBVEUqeCB0aGVpciB2YWx1ZSB0b1xyXG4gICAgLy8gY29udGludWUgdG8gZ2V0IGFjY3VyYXRlIHJlcG9ydGluZy5cclxuICAgIGFjdHVhbFRpbWUgPj0gU1RBTExfVEhSRVNIT0xEX01TID8gMSA6IFNBTVBMRV9SQVRFLFxyXG4gICAge1xyXG4gICAgICBpZCxcclxuICAgICAgcGhhc2UsXHJcbiAgICAgIGFjdHVhbFRpbWUsXHJcbiAgICAgIGJhc2VUaW1lLFxyXG4gICAgICBzdGFydFRpbWUsXHJcbiAgICAgIGNvbW1pdFRpbWUsXHJcbiAgICB9LFxyXG4gICk7XHJcbn1cclxuIl19 |
@@ -114,2 +114,2 @@ "use strict"; | ||
} | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1VuaXZlcnNhbERpc3Bvc2FibGUuanMiXSwibmFtZXMiOlsiVW5pdmVyc2FsRGlzcG9zYWJsZSIsImNvbnN0cnVjdG9yIiwidGVhcmRvd25zIiwiZGlzcG9zZWQiLCJTZXQiLCJsZW5ndGgiLCJhZGQiLCJFcnJvciIsImkiLCJhc3NlcnRUZWFyZG93biIsImFkZFVudGlsRGVzdHJveWVkIiwiZGVzdHJ1Y3RpYmxlIiwiZGVzdHJveURpc3Bvc2FibGUiLCJvbkRpZERlc3Ryb3kiLCJkaXNwb3NlIiwicmVtb3ZlIiwidGVhcmRvd24iLCJkZWxldGUiLCJmb3JFYWNoIiwidW5zdWJzY3JpYmUiLCJkZXN0cm95IiwiY2xlYXIiLCJUeXBlRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7O0FBdUJBOzs7O0FBSWUsTUFBTUEsbUJBQU4sQ0FBMEI7QUFJdkNDLEVBQUFBLFdBQVcsQ0FBQyxHQUFHQyxTQUFKLEVBQW1DO0FBQUEsU0FIOUNDLFFBRzhDO0FBQUEsU0FGOUNELFNBRThDO0FBQzVDLFNBQUtBLFNBQUwsR0FBaUIsSUFBSUUsR0FBSixFQUFqQjtBQUNBLFNBQUtELFFBQUwsR0FBZ0IsS0FBaEI7O0FBQ0EsUUFBSUQsU0FBUyxDQUFDRyxNQUFkLEVBQXNCO0FBQ3BCLFdBQUtDLEdBQUwsQ0FBUyxHQUFHSixTQUFaO0FBQ0Q7QUFDRjs7QUFFREksRUFBQUEsR0FBRyxDQUFDLEdBQUdKLFNBQUosRUFBeUM7QUFDMUMsUUFBSSxLQUFLQyxRQUFULEVBQW1CO0FBQ2pCLFlBQU0sSUFBSUksS0FBSixDQUFVLHdEQUFWLENBQU47QUFDRDs7QUFDRCxTQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdOLFNBQVMsQ0FBQ0csTUFBOUIsRUFBc0NHLENBQUMsRUFBdkMsRUFBMkM7QUFDekNDLE1BQUFBLGNBQWMsQ0FBQ1AsU0FBUyxDQUFDTSxDQUFELENBQVYsQ0FBZDtBQUNBLFdBQUtOLFNBQUwsQ0FBZUksR0FBZixDQUFtQkosU0FBUyxDQUFDTSxDQUFELENBQTVCO0FBQ0Q7QUFDRjtBQUVEOzs7Ozs7Ozs7OztBQVNBRSxFQUFBQSxpQkFBaUIsQ0FDZkMsWUFEZSxFQUVmLEdBQUdULFNBRlksRUFHZjtBQUNBLFFBQUksS0FBS0MsUUFBVCxFQUFtQjtBQUNqQixZQUFNLElBQUlJLEtBQUosQ0FBVSx3REFBVixDQUFOO0FBQ0Q7O0FBQ0QsVUFBTUssaUJBQWlCLEdBQUcsSUFBSVosbUJBQUosQ0FDeEIsR0FBR0UsU0FEcUIsRUFFeEJTLFlBQVksQ0FBQ0UsWUFBYixDQUEwQixNQUFNO0FBQzlCRCxNQUFBQSxpQkFBaUIsQ0FBQ0UsT0FBbEI7QUFDQSxXQUFLQyxNQUFMLENBQVlILGlCQUFaO0FBQ0QsS0FIRCxDQUZ3QixDQUExQjtBQU9BLFNBQUtOLEdBQUwsQ0FBU00saUJBQVQ7QUFDRDs7QUFFREcsRUFBQUEsTUFBTSxDQUFDQyxRQUFELEVBQThCO0FBQ2xDLFFBQUksQ0FBQyxLQUFLYixRQUFWLEVBQW9CO0FBQ2xCLFdBQUtELFNBQUwsQ0FBZWUsTUFBZixDQUFzQkQsUUFBdEI7QUFDRDtBQUNGOztBQUVERixFQUFBQSxPQUFPLEdBQVM7QUFDZCxRQUFJLENBQUMsS0FBS1gsUUFBVixFQUFvQjtBQUNsQixXQUFLQSxRQUFMLEdBQWdCLElBQWhCO0FBQ0EsV0FBS0QsU0FBTCxDQUFlZ0IsT0FBZixDQUF1QkYsUUFBUSxJQUFJO0FBQ2pDLFlBQUksT0FBT0EsUUFBUSxDQUFDRixPQUFoQixLQUE0QixVQUFoQyxFQUE0QztBQUMxQ0UsVUFBQUEsUUFBUSxDQUFDRixPQUFUO0FBQ0QsU0FGRCxNQUVPLElBQUksT0FBT0UsUUFBUSxDQUFDRyxXQUFoQixLQUFnQyxVQUFwQyxFQUFnRDtBQUNyREgsVUFBQUEsUUFBUSxDQUFDRyxXQUFUO0FBQ0QsU0FGTSxNQUVBLElBQUksT0FBT0gsUUFBUSxDQUFDSSxPQUFoQixLQUE0QixVQUFoQyxFQUE0QztBQUNqREosVUFBQUEsUUFBUSxDQUFDSSxPQUFUO0FBQ0QsU0FGTSxNQUVBLElBQUksT0FBT0osUUFBUCxLQUFvQixVQUF4QixFQUFvQztBQUN6Q0EsVUFBQUEsUUFBUTtBQUNUO0FBQ0YsT0FWRDtBQVdBLFdBQUtkLFNBQUwsR0FBa0IsSUFBbEI7QUFDRDtBQUNGOztBQUVEaUIsRUFBQUEsV0FBVyxHQUFTO0FBQ2xCLFNBQUtMLE9BQUw7QUFDRDs7QUFFRE8sRUFBQUEsS0FBSyxHQUFTO0FBQ1osUUFBSSxDQUFDLEtBQUtsQixRQUFWLEVBQW9CO0FBQ2xCLFdBQUtELFNBQUwsQ0FBZW1CLEtBQWY7QUFDRDtBQUNGOztBQWhGc0M7Ozs7QUFtRnpDLFNBQVNaLGNBQVQsQ0FBd0JPLFFBQXhCLEVBQXFEO0FBQ25ELE1BQ0UsT0FBT0EsUUFBUSxDQUFDRixPQUFoQixLQUE0QixVQUE1QixJQUNBLE9BQU9FLFFBQVEsQ0FBQ0csV0FBaEIsS0FBZ0MsVUFEaEMsSUFFQSxPQUFPSCxRQUFRLENBQUNJLE9BQWhCLEtBQTRCLFVBRjVCLElBR0EsT0FBT0osUUFBUCxLQUFvQixVQUp0QixFQUtFO0FBQ0E7QUFDRDs7QUFDRCxRQUFNLElBQUlNLFNBQUosQ0FDSix5REFESSxDQUFOO0FBR0QiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93XHJcbiAqIEBmb3JtYXRcclxuICovXHJcblxyXG5leHBvcnQgdHlwZSBJRGVzdHJ1Y3RpYmxlID0ge1xyXG4gIGRlc3Ryb3koKTogdm9pZCxcclxuICBvbkRpZERlc3Ryb3koY2FsbGJhY2s6ICgpID0+IG1peGVkKTogSURpc3Bvc2FibGUsXHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBBbnlUZWFyZG93biA9XHJcbiAgfCAoKCkgPT4gbWl4ZWQpXHJcbiAgfCByeGpzJElTdWJzY3JpcHRpb25cclxuICB8IElEaXNwb3NhYmxlXHJcbiAgfCBJRGVzdHJ1Y3RpYmxlO1xyXG5cclxuLyoqXHJcbiAqIExpa2UgYSBDb21wb3NpdGVEaXNwb3NhYmxlLCBidXQgaW4gYWRkaXRpb24gdG8gRGlzcG9zYWJsZSBpbnN0YW5jZXMgaXQgY2FuXHJcbiAqIGFsc28gYWNjZXB0IHBsYWluIGZ1bmN0aW9ucyBhbmQgUnggc3Vic2NyaXB0aW9ucy5cclxuICovXHJcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFVuaXZlcnNhbERpc3Bvc2FibGUge1xyXG4gIGRpc3Bvc2VkOiBib29sZWFuO1xyXG4gIHRlYXJkb3duczogU2V0PEFueVRlYXJkb3duPjtcclxuXHJcbiAgY29uc3RydWN0b3IoLi4udGVhcmRvd25zOiBBcnJheTxBbnlUZWFyZG93bj4pIHtcclxuICAgIHRoaXMudGVhcmRvd25zID0gbmV3IFNldCgpO1xyXG4gICAgdGhpcy5kaXNwb3NlZCA9IGZhbHNlO1xyXG4gICAgaWYgKHRlYXJkb3ducy5sZW5ndGgpIHtcclxuICAgICAgdGhpcy5hZGQoLi4udGVhcmRvd25zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFkZCguLi50ZWFyZG93bnM6IEFycmF5PEFueVRlYXJkb3duPik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuZGlzcG9zZWQpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgYWRkIHRvIGFuIGFscmVhZHkgZGlzcG9zZWQgVW5pdmVyc2FsRGlzcG9zYWJsZSEnKTtcclxuICAgIH1cclxuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgdGVhcmRvd25zLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGFzc2VydFRlYXJkb3duKHRlYXJkb3duc1tpXSk7XHJcbiAgICAgIHRoaXMudGVhcmRvd25zLmFkZCh0ZWFyZG93bnNbaV0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQWRkcyBhIGxpc3Qgb2YgdGVhcmRvd25zIGJ1dCBhbHNvIHRpZXMgdGhlbSB0byB0aGUgbGlmZXRpbWUgb2YgYGRlc3RydWN0aWJsZWAuXHJcbiAgICogV2hlbiBgZGVzdHJ1Y3RpYmxlYCBpcyBkZXN0cm95ZWQgKG9yIGB0aGlzLmRpc3Bvc2UoKWAgZ2V0cyBjYWxsZWQsIHdoaWNoZXZlciBjb21lcyBmaXJzdCksXHJcbiAgICogYWxsIGB0ZWFyZG93bnNgIHByb3ZpZGVkIGFyZSBhbHNvIGRpc3Bvc2VkLlxyXG4gICAqXHJcbiAgICogVGhpcyBpcyBhIHN1YnRsZSBwYXR0ZXJuIHRvIGdldCByaWdodCBiZWNhdXNlIG9mIHR3byBmYWN0b3JzOlxyXG4gICAqIC0gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhhdCBhbGwgdGVhcmRvd25zIGFyZSBhbHNvIHJlbW92ZWQgb24gZGVzdHJveVxyXG4gICAqIC0gd2UgYWxzbyBuZWVkIHRvIGVuc3VyZSB0aGF0IHdlIGRvbid0IGxlYWsgdGhlIG9uRGlkRGVzdHJveSBkaXNwb3NhYmxlXHJcbiAgICovXHJcbiAgYWRkVW50aWxEZXN0cm95ZWQoXHJcbiAgICBkZXN0cnVjdGlibGU6IElEZXN0cnVjdGlibGUsXHJcbiAgICAuLi50ZWFyZG93bnM6IEFycmF5PEFueVRlYXJkb3duPlxyXG4gICkge1xyXG4gICAgaWYgKHRoaXMuZGlzcG9zZWQpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdDYW5ub3QgYWRkIHRvIGFuIGFscmVhZHkgZGlzcG9zZWQgVW5pdmVyc2FsRGlzcG9zYWJsZSEnKTtcclxuICAgIH1cclxuICAgIGNvbnN0IGRlc3Ryb3lEaXNwb3NhYmxlID0gbmV3IFVuaXZlcnNhbERpc3Bvc2FibGUoXHJcbiAgICAgIC4uLnRlYXJkb3ducyxcclxuICAgICAgZGVzdHJ1Y3RpYmxlLm9uRGlkRGVzdHJveSgoKSA9PiB7XHJcbiAgICAgICAgZGVzdHJveURpc3Bvc2FibGUuZGlzcG9zZSgpO1xyXG4gICAgICAgIHRoaXMucmVtb3ZlKGRlc3Ryb3lEaXNwb3NhYmxlKTtcclxuICAgICAgfSksXHJcbiAgICApO1xyXG4gICAgdGhpcy5hZGQoZGVzdHJveURpc3Bvc2FibGUpO1xyXG4gIH1cclxuXHJcbiAgcmVtb3ZlKHRlYXJkb3duOiBBbnlUZWFyZG93bik6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc3Bvc2VkKSB7XHJcbiAgICAgIHRoaXMudGVhcmRvd25zLmRlbGV0ZSh0ZWFyZG93bik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBkaXNwb3NlKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc3Bvc2VkKSB7XHJcbiAgICAgIHRoaXMuZGlzcG9zZWQgPSB0cnVlO1xyXG4gICAgICB0aGlzLnRlYXJkb3ducy5mb3JFYWNoKHRlYXJkb3duID0+IHtcclxuICAgICAgICBpZiAodHlwZW9mIHRlYXJkb3duLmRpc3Bvc2UgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgIHRlYXJkb3duLmRpc3Bvc2UoKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0ZWFyZG93bi51bnN1YnNjcmliZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgdGVhcmRvd24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0ZWFyZG93bi5kZXN0cm95ID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICAgICB0ZWFyZG93bi5kZXN0cm95KCk7XHJcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdGVhcmRvd24gPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgIHRlYXJkb3duKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy50ZWFyZG93bnMgPSAobnVsbDogYW55KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHVuc3Vic2NyaWJlKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kaXNwb3NlKCk7XHJcbiAgfVxyXG5cclxuICBjbGVhcigpOiB2b2lkIHtcclxuICAgIGlmICghdGhpcy5kaXNwb3NlZCkge1xyXG4gICAgICB0aGlzLnRlYXJkb3ducy5jbGVhcigpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuZnVuY3Rpb24gYXNzZXJ0VGVhcmRvd24odGVhcmRvd246IEFueVRlYXJkb3duKTogdm9pZCB7XHJcbiAgaWYgKFxyXG4gICAgdHlwZW9mIHRlYXJkb3duLmRpc3Bvc2UgPT09ICdmdW5jdGlvbicgfHxcclxuICAgIHR5cGVvZiB0ZWFyZG93bi51bnN1YnNjcmliZSA9PT0gJ2Z1bmN0aW9uJyB8fFxyXG4gICAgdHlwZW9mIHRlYXJkb3duLmRlc3Ryb3kgPT09ICdmdW5jdGlvbicgfHxcclxuICAgIHR5cGVvZiB0ZWFyZG93biA9PT0gJ2Z1bmN0aW9uJ1xyXG4gICkge1xyXG4gICAgcmV0dXJuO1xyXG4gIH1cclxuICB0aHJvdyBuZXcgVHlwZUVycm9yKFxyXG4gICAgJ0FyZ3VtZW50cyB0byBVbml2ZXJzYWxEaXNwb3NhYmxlLmFkZCBtdXN0IGJlIGRpc3Bvc2FibGUnLFxyXG4gICk7XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL1VuaXZlcnNhbERpc3Bvc2FibGUuanMiXSwibmFtZXMiOlsiVW5pdmVyc2FsRGlzcG9zYWJsZSIsImNvbnN0cnVjdG9yIiwidGVhcmRvd25zIiwiZGlzcG9zZWQiLCJTZXQiLCJsZW5ndGgiLCJhZGQiLCJFcnJvciIsImkiLCJhc3NlcnRUZWFyZG93biIsImFkZFVudGlsRGVzdHJveWVkIiwiZGVzdHJ1Y3RpYmxlIiwiZGVzdHJveURpc3Bvc2FibGUiLCJvbkRpZERlc3Ryb3kiLCJkaXNwb3NlIiwicmVtb3ZlIiwidGVhcmRvd24iLCJkZWxldGUiLCJmb3JFYWNoIiwidW5zdWJzY3JpYmUiLCJkZXN0cm95IiwiY2xlYXIiLCJUeXBlRXJyb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQWFBO0FBQ0E7QUFDQTtBQUNBO0FBQ2UsTUFBTUEsbUJBQU4sQ0FBMEI7QUFJdkNDLEVBQUFBLFdBQVcsQ0FBQyxHQUFHQyxTQUFKLEVBQW1DO0FBQUEsU0FIOUNDLFFBRzhDO0FBQUEsU0FGOUNELFNBRThDO0FBQzVDLFNBQUtBLFNBQUwsR0FBaUIsSUFBSUUsR0FBSixFQUFqQjtBQUNBLFNBQUtELFFBQUwsR0FBZ0IsS0FBaEI7O0FBQ0EsUUFBSUQsU0FBUyxDQUFDRyxNQUFkLEVBQXNCO0FBQ3BCLFdBQUtDLEdBQUwsQ0FBUyxHQUFHSixTQUFaO0FBQ0Q7QUFDRjs7QUFFREksRUFBQUEsR0FBRyxDQUFDLEdBQUdKLFNBQUosRUFBeUM7QUFDMUMsUUFBSSxLQUFLQyxRQUFULEVBQW1CO0FBQ2pCLFlBQU0sSUFBSUksS0FBSixDQUFVLHdEQUFWLENBQU47QUFDRDs7QUFDRCxTQUFLLElBQUlDLENBQUMsR0FBRyxDQUFiLEVBQWdCQSxDQUFDLEdBQUdOLFNBQVMsQ0FBQ0csTUFBOUIsRUFBc0NHLENBQUMsRUFBdkMsRUFBMkM7QUFDekNDLE1BQUFBLGNBQWMsQ0FBQ1AsU0FBUyxDQUFDTSxDQUFELENBQVYsQ0FBZDtBQUNBLFdBQUtOLFNBQUwsQ0FBZUksR0FBZixDQUFtQkosU0FBUyxDQUFDTSxDQUFELENBQTVCO0FBQ0Q7QUFDRjtBQUVEO0FBQ0Y7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7O0FBQ0VFLEVBQUFBLGlCQUFpQixDQUNmQyxZQURlLEVBRWYsR0FBR1QsU0FGWSxFQUdmO0FBQ0EsUUFBSSxLQUFLQyxRQUFULEVBQW1CO0FBQ2pCLFlBQU0sSUFBSUksS0FBSixDQUFVLHdEQUFWLENBQU47QUFDRDs7QUFDRCxVQUFNSyxpQkFBaUIsR0FBRyxJQUFJWixtQkFBSixDQUN4QixHQUFHRSxTQURxQixFQUV4QlMsWUFBWSxDQUFDRSxZQUFiLENBQTBCLE1BQU07QUFDOUJELE1BQUFBLGlCQUFpQixDQUFDRSxPQUFsQjtBQUNBLFdBQUtDLE1BQUwsQ0FBWUgsaUJBQVo7QUFDRCxLQUhELENBRndCLENBQTFCO0FBT0EsU0FBS04sR0FBTCxDQUFTTSxpQkFBVDtBQUNEOztBQUVERyxFQUFBQSxNQUFNLENBQUNDLFFBQUQsRUFBOEI7QUFDbEMsUUFBSSxDQUFDLEtBQUtiLFFBQVYsRUFBb0I7QUFDbEIsV0FBS0QsU0FBTCxDQUFlZSxNQUFmLENBQXNCRCxRQUF0QjtBQUNEO0FBQ0Y7O0FBRURGLEVBQUFBLE9BQU8sR0FBUztBQUNkLFFBQUksQ0FBQyxLQUFLWCxRQUFWLEVBQW9CO0FBQ2xCLFdBQUtBLFFBQUwsR0FBZ0IsSUFBaEI7QUFDQSxXQUFLRCxTQUFMLENBQWVnQixPQUFmLENBQXVCRixRQUFRLElBQUk7QUFDakMsWUFBSSxPQUFPQSxRQUFRLENBQUNGLE9BQWhCLEtBQTRCLFVBQWhDLEVBQTRDO0FBQzFDRSxVQUFBQSxRQUFRLENBQUNGLE9BQVQ7QUFDRCxTQUZELE1BRU8sSUFBSSxPQUFPRSxRQUFRLENBQUNHLFdBQWhCLEtBQWdDLFVBQXBDLEVBQWdEO0FBQ3JESCxVQUFBQSxRQUFRLENBQUNHLFdBQVQ7QUFDRCxTQUZNLE1BRUEsSUFBSSxPQUFPSCxRQUFRLENBQUNJLE9BQWhCLEtBQTRCLFVBQWhDLEVBQTRDO0FBQ2pESixVQUFBQSxRQUFRLENBQUNJLE9BQVQ7QUFDRCxTQUZNLE1BRUEsSUFBSSxPQUFPSixRQUFQLEtBQW9CLFVBQXhCLEVBQW9DO0FBQ3pDQSxVQUFBQSxRQUFRO0FBQ1Q7QUFDRixPQVZEO0FBV0EsV0FBS2QsU0FBTCxHQUFrQixJQUFsQjtBQUNEO0FBQ0Y7O0FBRURpQixFQUFBQSxXQUFXLEdBQVM7QUFDbEIsU0FBS0wsT0FBTDtBQUNEOztBQUVETyxFQUFBQSxLQUFLLEdBQVM7QUFDWixRQUFJLENBQUMsS0FBS2xCLFFBQVYsRUFBb0I7QUFDbEIsV0FBS0QsU0FBTCxDQUFlbUIsS0FBZjtBQUNEO0FBQ0Y7O0FBaEZzQzs7OztBQW1GekMsU0FBU1osY0FBVCxDQUF3Qk8sUUFBeEIsRUFBcUQ7QUFDbkQsTUFDRSxPQUFPQSxRQUFRLENBQUNGLE9BQWhCLEtBQTRCLFVBQTVCLElBQ0EsT0FBT0UsUUFBUSxDQUFDRyxXQUFoQixLQUFnQyxVQURoQyxJQUVBLE9BQU9ILFFBQVEsQ0FBQ0ksT0FBaEIsS0FBNEIsVUFGNUIsSUFHQSxPQUFPSixRQUFQLEtBQW9CLFVBSnRCLEVBS0U7QUFDQTtBQUNEOztBQUNELFFBQU0sSUFBSU0sU0FBSixDQUNKLHlEQURJLENBQU47QUFHRCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTctcHJlc2VudCwgRmFjZWJvb2ssIEluYy5cclxuICogQWxsIHJpZ2h0cyByZXNlcnZlZC5cclxuICpcclxuICogVGhpcyBzb3VyY2UgY29kZSBpcyBsaWNlbnNlZCB1bmRlciB0aGUgQlNELXN0eWxlIGxpY2Vuc2UgZm91bmQgaW4gdGhlXHJcbiAqIExJQ0VOU0UgZmlsZSBpbiB0aGUgcm9vdCBkaXJlY3Rvcnkgb2YgdGhpcyBzb3VyY2UgdHJlZS4gQW4gYWRkaXRpb25hbCBncmFudFxyXG4gKiBvZiBwYXRlbnQgcmlnaHRzIGNhbiBiZSBmb3VuZCBpbiB0aGUgUEFURU5UUyBmaWxlIGluIHRoZSBzYW1lIGRpcmVjdG9yeS5cclxuICpcclxuICogQGZsb3dcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmV4cG9ydCB0eXBlIElEZXN0cnVjdGlibGUgPSB7XHJcbiAgZGVzdHJveSgpOiB2b2lkLFxyXG4gIG9uRGlkRGVzdHJveShjYWxsYmFjazogKCkgPT4gbWl4ZWQpOiBJRGlzcG9zYWJsZSxcclxufTtcclxuXHJcbmV4cG9ydCB0eXBlIEFueVRlYXJkb3duID1cclxuICB8ICgoKSA9PiBtaXhlZClcclxuICB8IHJ4anMkSVN1YnNjcmlwdGlvblxyXG4gIHwgSURpc3Bvc2FibGVcclxuICB8IElEZXN0cnVjdGlibGU7XHJcblxyXG4vKipcclxuICogTGlrZSBhIENvbXBvc2l0ZURpc3Bvc2FibGUsIGJ1dCBpbiBhZGRpdGlvbiB0byBEaXNwb3NhYmxlIGluc3RhbmNlcyBpdCBjYW5cclxuICogYWxzbyBhY2NlcHQgcGxhaW4gZnVuY3Rpb25zIGFuZCBSeCBzdWJzY3JpcHRpb25zLlxyXG4gKi9cclxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgVW5pdmVyc2FsRGlzcG9zYWJsZSB7XHJcbiAgZGlzcG9zZWQ6IGJvb2xlYW47XHJcbiAgdGVhcmRvd25zOiBTZXQ8QW55VGVhcmRvd24+O1xyXG5cclxuICBjb25zdHJ1Y3RvciguLi50ZWFyZG93bnM6IEFycmF5PEFueVRlYXJkb3duPikge1xyXG4gICAgdGhpcy50ZWFyZG93bnMgPSBuZXcgU2V0KCk7XHJcbiAgICB0aGlzLmRpc3Bvc2VkID0gZmFsc2U7XHJcbiAgICBpZiAodGVhcmRvd25zLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmFkZCguLi50ZWFyZG93bnMpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgYWRkKC4uLnRlYXJkb3duczogQXJyYXk8QW55VGVhcmRvd24+KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kaXNwb3NlZCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBhZGQgdG8gYW4gYWxyZWFkeSBkaXNwb3NlZCBVbml2ZXJzYWxEaXNwb3NhYmxlIScpO1xyXG4gICAgfVxyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCB0ZWFyZG93bnMubGVuZ3RoOyBpKyspIHtcclxuICAgICAgYXNzZXJ0VGVhcmRvd24odGVhcmRvd25zW2ldKTtcclxuICAgICAgdGhpcy50ZWFyZG93bnMuYWRkKHRlYXJkb3duc1tpXSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBBZGRzIGEgbGlzdCBvZiB0ZWFyZG93bnMgYnV0IGFsc28gdGllcyB0aGVtIHRvIHRoZSBsaWZldGltZSBvZiBgZGVzdHJ1Y3RpYmxlYC5cclxuICAgKiBXaGVuIGBkZXN0cnVjdGlibGVgIGlzIGRlc3Ryb3llZCAob3IgYHRoaXMuZGlzcG9zZSgpYCBnZXRzIGNhbGxlZCwgd2hpY2hldmVyIGNvbWVzIGZpcnN0KSxcclxuICAgKiBhbGwgYHRlYXJkb3duc2AgcHJvdmlkZWQgYXJlIGFsc28gZGlzcG9zZWQuXHJcbiAgICpcclxuICAgKiBUaGlzIGlzIGEgc3VidGxlIHBhdHRlcm4gdG8gZ2V0IHJpZ2h0IGJlY2F1c2Ugb2YgdHdvIGZhY3RvcnM6XHJcbiAgICogLSB3ZSBuZWVkIHRvIG1ha2Ugc3VyZSB0aGF0IGFsbCB0ZWFyZG93bnMgYXJlIGFsc28gcmVtb3ZlZCBvbiBkZXN0cm95XHJcbiAgICogLSB3ZSBhbHNvIG5lZWQgdG8gZW5zdXJlIHRoYXQgd2UgZG9uJ3QgbGVhayB0aGUgb25EaWREZXN0cm95IGRpc3Bvc2FibGVcclxuICAgKi9cclxuICBhZGRVbnRpbERlc3Ryb3llZChcclxuICAgIGRlc3RydWN0aWJsZTogSURlc3RydWN0aWJsZSxcclxuICAgIC4uLnRlYXJkb3duczogQXJyYXk8QW55VGVhcmRvd24+XHJcbiAgKSB7XHJcbiAgICBpZiAodGhpcy5kaXNwb3NlZCkge1xyXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0Nhbm5vdCBhZGQgdG8gYW4gYWxyZWFkeSBkaXNwb3NlZCBVbml2ZXJzYWxEaXNwb3NhYmxlIScpO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZGVzdHJveURpc3Bvc2FibGUgPSBuZXcgVW5pdmVyc2FsRGlzcG9zYWJsZShcclxuICAgICAgLi4udGVhcmRvd25zLFxyXG4gICAgICBkZXN0cnVjdGlibGUub25EaWREZXN0cm95KCgpID0+IHtcclxuICAgICAgICBkZXN0cm95RGlzcG9zYWJsZS5kaXNwb3NlKCk7XHJcbiAgICAgICAgdGhpcy5yZW1vdmUoZGVzdHJveURpc3Bvc2FibGUpO1xyXG4gICAgICB9KSxcclxuICAgICk7XHJcbiAgICB0aGlzLmFkZChkZXN0cm95RGlzcG9zYWJsZSk7XHJcbiAgfVxyXG5cclxuICByZW1vdmUodGVhcmRvd246IEFueVRlYXJkb3duKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGlzcG9zZWQpIHtcclxuICAgICAgdGhpcy50ZWFyZG93bnMuZGVsZXRlKHRlYXJkb3duKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGRpc3Bvc2UoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuZGlzcG9zZWQpIHtcclxuICAgICAgdGhpcy5kaXNwb3NlZCA9IHRydWU7XHJcbiAgICAgIHRoaXMudGVhcmRvd25zLmZvckVhY2godGVhcmRvd24gPT4ge1xyXG4gICAgICAgIGlmICh0eXBlb2YgdGVhcmRvd24uZGlzcG9zZSA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgdGVhcmRvd24uZGlzcG9zZSgpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHRlYXJkb3duLnVuc3Vic2NyaWJlID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICAgICB0ZWFyZG93bi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHRlYXJkb3duLmRlc3Ryb3kgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgIHRlYXJkb3duLmRlc3Ryb3koKTtcclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0ZWFyZG93biA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgdGVhcmRvd24oKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgICB0aGlzLnRlYXJkb3ducyA9IChudWxsOiBhbnkpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdW5zdWJzY3JpYmUoKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc3Bvc2UoKTtcclxuICB9XHJcblxyXG4gIGNsZWFyKCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLmRpc3Bvc2VkKSB7XHJcbiAgICAgIHRoaXMudGVhcmRvd25zLmNsZWFyKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiBhc3NlcnRUZWFyZG93bih0ZWFyZG93bjogQW55VGVhcmRvd24pOiB2b2lkIHtcclxuICBpZiAoXHJcbiAgICB0eXBlb2YgdGVhcmRvd24uZGlzcG9zZSA9PT0gJ2Z1bmN0aW9uJyB8fFxyXG4gICAgdHlwZW9mIHRlYXJkb3duLnVuc3Vic2NyaWJlID09PSAnZnVuY3Rpb24nIHx8XHJcbiAgICB0eXBlb2YgdGVhcmRvd24uZGVzdHJveSA9PT0gJ2Z1bmN0aW9uJyB8fFxyXG4gICAgdHlwZW9mIHRlYXJkb3duID09PSAnZnVuY3Rpb24nXHJcbiAgKSB7XHJcbiAgICByZXR1cm47XHJcbiAgfVxyXG4gIHRocm93IG5ldyBUeXBlRXJyb3IoXHJcbiAgICAnQXJndW1lbnRzIHRvIFVuaXZlcnNhbERpc3Bvc2FibGUuYWRkIG11c3QgYmUgZGlzcG9zYWJsZScsXHJcbiAgKTtcclxufVxyXG4iXX0= |
@@ -57,2 +57,2 @@ "use strict"; | ||
exports.default = which; | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3doaWNoLmpzIl0sIm5hbWVzIjpbInNhbml0aXplUGF0aEZvcldpbmRvd3MiLCJwYXRoIiwibnVjbGlkZVVyaSIsImJhc2VuYW1lIiwiZGlybmFtZSIsIndoaWNoIiwib3B0aW9ucyIsImlzV2luZG93cyIsInByb2Nlc3MiLCJwbGF0Zm9ybSIsIndoaWNoQ29tbWFuZCIsInNlYXJjaFBhdGgiLCJyZXN1bHQiLCJ0b1Byb21pc2UiLCJzcGxpdCIsIm9zIiwiRU9MIiwiZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQWNBOztBQUNBOztBQUNBOzs7O0FBaEJBOzs7Ozs7Ozs7Ozs7QUFrQkE7Ozs7OztBQU9BLFNBQVNBLHNCQUFULENBQWdDQyxJQUFoQyxFQUFzRDtBQUNwRCxNQUFJQyxvQkFBV0MsUUFBWCxDQUFvQkYsSUFBcEIsTUFBOEJBLElBQWxDLEVBQXdDO0FBQ3RDO0FBQ0EsV0FBT0EsSUFBUDtBQUNELEdBSEQsTUFHTztBQUNMLFdBQVEsR0FBRUMsb0JBQVdFLE9BQVgsQ0FBbUJILElBQW5CLENBQXlCLElBQUdDLG9CQUFXQyxRQUFYLENBQW9CRixJQUFwQixDQUEwQixFQUFoRTtBQUNEO0FBQ0Y7O0lBRThCSSxLLEdBQWYsZUFBZUEsS0FBZixDQUNkSixJQURjLEVBRWRLLE9BQStCLEdBQUcsRUFGcEIsRUFHSTtBQUNsQixRQUFNQyxTQUFTLEdBQUdDLE9BQU8sQ0FBQ0MsUUFBUixLQUFxQixPQUF2QztBQUNBLFFBQU1DLFlBQVksR0FBR0gsU0FBUyxHQUFHLE9BQUgsR0FBYSxPQUEzQztBQUNBLFFBQU1JLFVBQVUsR0FBR0osU0FBUyxHQUFHUCxzQkFBc0IsQ0FBQ0MsSUFBRCxDQUF6QixHQUFrQ0EsSUFBOUQ7O0FBQ0EsTUFBSTtBQUNGLFVBQU1XLE1BQU0sR0FBRyxNQUFNLHlCQUNuQkYsWUFEbUIsRUFFbkIsQ0FBQ0MsVUFBRCxDQUZtQixFQUduQkwsT0FIbUIsRUFJbkJPLFNBSm1CLEVBQXJCO0FBS0EsV0FBT0QsTUFBTSxDQUFDRSxLQUFQLENBQWFDLFlBQUdDLEdBQWhCLEVBQXFCLENBQXJCLENBQVA7QUFDRCxHQVBELENBT0UsT0FBT0MsQ0FBUCxFQUFVO0FBQ1YsV0FBTyxJQUFQO0FBQ0Q7QUFDRixDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXHJcbiAqIENvcHlyaWdodCAoYykgMjAxNy1wcmVzZW50LCBGYWNlYm9vaywgSW5jLlxyXG4gKiBBbGwgcmlnaHRzIHJlc2VydmVkLlxyXG4gKlxyXG4gKiBUaGlzIHNvdXJjZSBjb2RlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBCU0Qtc3R5bGUgbGljZW5zZSBmb3VuZCBpbiB0aGVcclxuICogTElDRU5TRSBmaWxlIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHNvdXJjZSB0cmVlLiBBbiBhZGRpdGlvbmFsIGdyYW50XHJcbiAqIG9mIHBhdGVudCByaWdodHMgY2FuIGJlIGZvdW5kIGluIHRoZSBQQVRFTlRTIGZpbGUgaW4gdGhlIHNhbWUgZGlyZWN0b3J5LlxyXG4gKlxyXG4gKiBAZmxvdyBzdHJpY3QtbG9jYWxcclxuICogQGZvcm1hdFxyXG4gKi9cclxuXHJcbmltcG9ydCB0eXBlIHtPYnNlcnZlUHJvY2Vzc09wdGlvbnN9IGZyb20gJy4vcHJvY2Vzcyc7XHJcblxyXG5pbXBvcnQgb3MgZnJvbSAnb3MnO1xyXG5pbXBvcnQgbnVjbGlkZVVyaSBmcm9tICcuL251Y2xpZGVVcmknO1xyXG5pbXBvcnQge3J1bkNvbW1hbmR9IGZyb20gJy4vcHJvY2Vzcyc7XHJcblxyXG4vKipcclxuICogUHJvdmlkZXMgYSBjcm9zcy1wbGF0Zm9ybSB3YXkgdG8gY2hlY2sgd2hldGhlciBhIGJpbmFyeSBpcyBhdmFpbGFibGUuXHJcbiAqXHJcbiAqIFdlIHJhbiBpbnRvIHByb2JsZW1zIHdpdGggdGhlIG5wbSBgd2hpY2hgIHBhY2thZ2UgKHRoZSBuYXR1cmUgb2Ygd2hpY2ggSSB1bmZvcnR1bmF0ZWx5IGRvbid0XHJcbiAqIHJlbWVtYmVyKSBzbyB3ZSBjYW4gdXNlIHRoaXMgZm9yIG5vdy5cclxuICovXHJcblxyXG5mdW5jdGlvbiBzYW5pdGl6ZVBhdGhGb3JXaW5kb3dzKHBhdGg6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgaWYgKG51Y2xpZGVVcmkuYmFzZW5hbWUocGF0aCkgPT09IHBhdGgpIHtcclxuICAgIC8vIHNpbXBsZSBiaW5hcnkgaW4gJFBBVEggbGlrZSBgZmxvd2BcclxuICAgIHJldHVybiBwYXRoO1xyXG4gIH0gZWxzZSB7XHJcbiAgICByZXR1cm4gYCR7bnVjbGlkZVVyaS5kaXJuYW1lKHBhdGgpfToke251Y2xpZGVVcmkuYmFzZW5hbWUocGF0aCl9YDtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBkZWZhdWx0IChhc3luYyBmdW5jdGlvbiB3aGljaChcclxuICBwYXRoOiBzdHJpbmcsXHJcbiAgb3B0aW9ucz86IE9ic2VydmVQcm9jZXNzT3B0aW9ucyA9IHt9LFxyXG4pOiBQcm9taXNlPD9zdHJpbmc+IHtcclxuICBjb25zdCBpc1dpbmRvd3MgPSBwcm9jZXNzLnBsYXRmb3JtID09PSAnd2luMzInO1xyXG4gIGNvbnN0IHdoaWNoQ29tbWFuZCA9IGlzV2luZG93cyA/ICd3aGVyZScgOiAnd2hpY2gnO1xyXG4gIGNvbnN0IHNlYXJjaFBhdGggPSBpc1dpbmRvd3MgPyBzYW5pdGl6ZVBhdGhGb3JXaW5kb3dzKHBhdGgpIDogcGF0aDtcclxuICB0cnkge1xyXG4gICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcnVuQ29tbWFuZChcclxuICAgICAgd2hpY2hDb21tYW5kLFxyXG4gICAgICBbc2VhcmNoUGF0aF0sXHJcbiAgICAgIG9wdGlvbnMsXHJcbiAgICApLnRvUHJvbWlzZSgpO1xyXG4gICAgcmV0dXJuIHJlc3VsdC5zcGxpdChvcy5FT0wpWzBdO1xyXG4gIH0gY2F0Y2ggKGUpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxufSk7XHJcbiJdfQ== | ||
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL251Y2xpZGUvbnVjbGlkZS1jb21tb25zL3doaWNoLmpzIl0sIm5hbWVzIjpbInNhbml0aXplUGF0aEZvcldpbmRvd3MiLCJwYXRoIiwibnVjbGlkZVVyaSIsImJhc2VuYW1lIiwiZGlybmFtZSIsIndoaWNoIiwib3B0aW9ucyIsImlzV2luZG93cyIsInByb2Nlc3MiLCJwbGF0Zm9ybSIsIndoaWNoQ29tbWFuZCIsInNlYXJjaFBhdGgiLCJyZXN1bHQiLCJ0b1Byb21pc2UiLCJzcGxpdCIsIm9zIiwiRU9MIiwiZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQWNBOztBQUNBOztBQUNBOzs7O0FBaEJBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBUUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUEsU0FBU0Esc0JBQVQsQ0FBZ0NDLElBQWhDLEVBQXNEO0FBQ3BELE1BQUlDLG9CQUFXQyxRQUFYLENBQW9CRixJQUFwQixNQUE4QkEsSUFBbEMsRUFBd0M7QUFDdEM7QUFDQSxXQUFPQSxJQUFQO0FBQ0QsR0FIRCxNQUdPO0FBQ0wsV0FBUSxHQUFFQyxvQkFBV0UsT0FBWCxDQUFtQkgsSUFBbkIsQ0FBeUIsSUFBR0Msb0JBQVdDLFFBQVgsQ0FBb0JGLElBQXBCLENBQTBCLEVBQWhFO0FBQ0Q7QUFDRjs7SUFFOEJJLEssR0FBZixlQUFlQSxLQUFmLENBQ2RKLElBRGMsRUFFZEssT0FBK0IsR0FBRyxFQUZwQixFQUdJO0FBQ2xCLFFBQU1DLFNBQVMsR0FBR0MsT0FBTyxDQUFDQyxRQUFSLEtBQXFCLE9BQXZDO0FBQ0EsUUFBTUMsWUFBWSxHQUFHSCxTQUFTLEdBQUcsT0FBSCxHQUFhLE9BQTNDO0FBQ0EsUUFBTUksVUFBVSxHQUFHSixTQUFTLEdBQUdQLHNCQUFzQixDQUFDQyxJQUFELENBQXpCLEdBQWtDQSxJQUE5RDs7QUFDQSxNQUFJO0FBQ0YsVUFBTVcsTUFBTSxHQUFHLE1BQU0seUJBQ25CRixZQURtQixFQUVuQixDQUFDQyxVQUFELENBRm1CLEVBR25CTCxPQUhtQixFQUluQk8sU0FKbUIsRUFBckI7QUFLQSxXQUFPRCxNQUFNLENBQUNFLEtBQVAsQ0FBYUMsWUFBR0MsR0FBaEIsRUFBcUIsQ0FBckIsQ0FBUDtBQUNELEdBUEQsQ0FPRSxPQUFPQyxDQUFQLEVBQVU7QUFDVixXQUFPLElBQVA7QUFDRDtBQUNGLEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogQ29weXJpZ2h0IChjKSAyMDE3LXByZXNlbnQsIEZhY2Vib29rLCBJbmMuXHJcbiAqIEFsbCByaWdodHMgcmVzZXJ2ZWQuXHJcbiAqXHJcbiAqIFRoaXMgc291cmNlIGNvZGUgaXMgbGljZW5zZWQgdW5kZXIgdGhlIEJTRC1zdHlsZSBsaWNlbnNlIGZvdW5kIGluIHRoZVxyXG4gKiBMSUNFTlNFIGZpbGUgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgc291cmNlIHRyZWUuIEFuIGFkZGl0aW9uYWwgZ3JhbnRcclxuICogb2YgcGF0ZW50IHJpZ2h0cyBjYW4gYmUgZm91bmQgaW4gdGhlIFBBVEVOVFMgZmlsZSBpbiB0aGUgc2FtZSBkaXJlY3RvcnkuXHJcbiAqXHJcbiAqIEBmbG93IHN0cmljdC1sb2NhbFxyXG4gKiBAZm9ybWF0XHJcbiAqL1xyXG5cclxuaW1wb3J0IHR5cGUge09ic2VydmVQcm9jZXNzT3B0aW9uc30gZnJvbSAnLi9wcm9jZXNzJztcclxuXHJcbmltcG9ydCBvcyBmcm9tICdvcyc7XHJcbmltcG9ydCBudWNsaWRlVXJpIGZyb20gJy4vbnVjbGlkZVVyaSc7XHJcbmltcG9ydCB7cnVuQ29tbWFuZH0gZnJvbSAnLi9wcm9jZXNzJztcclxuXHJcbi8qKlxyXG4gKiBQcm92aWRlcyBhIGNyb3NzLXBsYXRmb3JtIHdheSB0byBjaGVjayB3aGV0aGVyIGEgYmluYXJ5IGlzIGF2YWlsYWJsZS5cclxuICpcclxuICogV2UgcmFuIGludG8gcHJvYmxlbXMgd2l0aCB0aGUgbnBtIGB3aGljaGAgcGFja2FnZSAodGhlIG5hdHVyZSBvZiB3aGljaCBJIHVuZm9ydHVuYXRlbHkgZG9uJ3RcclxuICogcmVtZW1iZXIpIHNvIHdlIGNhbiB1c2UgdGhpcyBmb3Igbm93LlxyXG4gKi9cclxuXHJcbmZ1bmN0aW9uIHNhbml0aXplUGF0aEZvcldpbmRvd3MocGF0aDogc3RyaW5nKTogc3RyaW5nIHtcclxuICBpZiAobnVjbGlkZVVyaS5iYXNlbmFtZShwYXRoKSA9PT0gcGF0aCkge1xyXG4gICAgLy8gc2ltcGxlIGJpbmFyeSBpbiAkUEFUSCBsaWtlIGBmbG93YFxyXG4gICAgcmV0dXJuIHBhdGg7XHJcbiAgfSBlbHNlIHtcclxuICAgIHJldHVybiBgJHtudWNsaWRlVXJpLmRpcm5hbWUocGF0aCl9OiR7bnVjbGlkZVVyaS5iYXNlbmFtZShwYXRoKX1gO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IGRlZmF1bHQgKGFzeW5jIGZ1bmN0aW9uIHdoaWNoKFxyXG4gIHBhdGg6IHN0cmluZyxcclxuICBvcHRpb25zPzogT2JzZXJ2ZVByb2Nlc3NPcHRpb25zID0ge30sXHJcbik6IFByb21pc2U8P3N0cmluZz4ge1xyXG4gIGNvbnN0IGlzV2luZG93cyA9IHByb2Nlc3MucGxhdGZvcm0gPT09ICd3aW4zMic7XHJcbiAgY29uc3Qgd2hpY2hDb21tYW5kID0gaXNXaW5kb3dzID8gJ3doZXJlJyA6ICd3aGljaCc7XHJcbiAgY29uc3Qgc2VhcmNoUGF0aCA9IGlzV2luZG93cyA/IHNhbml0aXplUGF0aEZvcldpbmRvd3MocGF0aCkgOiBwYXRoO1xyXG4gIHRyeSB7XHJcbiAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBydW5Db21tYW5kKFxyXG4gICAgICB3aGljaENvbW1hbmQsXHJcbiAgICAgIFtzZWFyY2hQYXRoXSxcclxuICAgICAgb3B0aW9ucyxcclxuICAgICkudG9Qcm9taXNlKCk7XHJcbiAgICByZXR1cm4gcmVzdWx0LnNwbGl0KG9zLkVPTClbMF07XHJcbiAgfSBjYXRjaCAoZSkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG59KTtcclxuIl19 |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
931660
+ Added@atom-ide-community/nuclide-node-transpiler@0.8.3(transitive)
+ Addeddompurify@2.2.6(transitive)
- Removed@atom-ide-community/nuclide-node-transpiler@0.8.2(transitive)
- Removeddompurify@2.1.1(transitive)
Updateddompurify@2.2.6