appium-adb 9.3.0 → 9.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/lib/adb.js +19 -1
- package/build/lib/helpers.js +88 -3
- package/build/lib/logcat.js +1 -1
- package/build/lib/logger.js +1 -1
- package/build/lib/tools/aab-utils.js +1 -1
- package/build/lib/tools/adb-commands.js +32 -2
- package/build/lib/tools/adb-emu-commands.js +1 -1
- package/build/lib/tools/android-manifest.js +1 -1
- package/build/lib/tools/apk-signing.js +1 -1
- package/build/lib/tools/apk-utils.js +1 -1
- package/build/lib/tools/apks-utils.js +1 -1
- package/build/lib/tools/keyboard-commands.js +1 -1
- package/build/lib/tools/lockmgmt.js +1 -1
- package/build/lib/tools/settings-client-commands.js +1 -1
- package/build/lib/tools/system-calls.js +1 -1
- package/lib/adb.js +23 -0
- package/lib/helpers.js +91 -4
- package/lib/tools/adb-commands.js +32 -1
- package/package.json +1 -1
package/build/lib/logcat.js
CHANGED
|
@@ -218,4 +218,4 @@ var _default = Logcat;
|
|
|
218
218
|
exports.default = _default;require('source-map-support').install();
|
|
219
219
|
|
|
220
220
|
|
|
221
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2xvZ2NhdC5qcyIsIm5hbWVzIjpbIkV2ZW50RW1pdHRlciIsImV2ZW50cyIsImxvZyIsImxvZ2dlciIsImdldExvZ2dlciIsIk1BWF9CVUZGRVJfU0laRSIsIkxPR0NBVF9QUk9DX1NUQVJUVVBfVElNRU9VVCIsIlNVUFBPUlRFRF9GT1JNQVRTIiwiU1VQUE9SVEVEX1BSSU9SSVRJRVMiLCJERUZBVUxUX1BSSU9SSVRZIiwiREVGQVVMVF9UQUciLCJERUZBVUxUX0ZPUk1BVCIsInJlcXVpcmVGb3JtYXQiLCJmb3JtYXQiLCJpbmNsdWRlcyIsImluZm8iLCJyZXF1aXJlU3BlYyIsInNwZWMiLCJ0YWciLCJwcmlvcml0eSIsInNwbGl0IiwicmVzdWx0VGFnIiwic29tZSIsInAiLCJfIiwidG9Mb3dlciIsImZvcm1hdEZpbHRlclNwZWNzIiwiZmlsdGVyU3BlY3MiLCJpc0FycmF5IiwiZmlsdGVyIiwiaXNTdHJpbmciLCJzdGFydHNXaXRoIiwibWFwIiwiTG9nY2F0IiwiY29uc3RydWN0b3IiLCJvcHRzIiwiYWRiIiwiY2xlYXJMb2dzIiwiY2xlYXJEZXZpY2VMb2dzT25TdGFydCIsImRlYnVnIiwiZGVidWdUcmFjZSIsIm1heEJ1ZmZlclNpemUiLCJsb2dzIiwibG9nSWR4U2luY2VMYXN0UmVxdWVzdCIsInN0YXJ0Q2FwdHVyZSIsInN0YXJ0ZWQiLCJCIiwiX3Jlc29sdmUiLCJfcmVqZWN0IiwicmVzb2x2ZSIsImFyZ3MiLCJyZWplY3QiLCJjbGVhciIsImNtZCIsImRlZmF1bHRBcmdzIiwidXRpbCIsInF1b3RlIiwicGF0aCIsInByb2MiLCJTdWJQcm9jZXNzIiwib24iLCJjb2RlIiwic2lnbmFsIiwiZXJyb3IiLCJ3YXJuIiwibGluZXMiLCJsaW5lIiwidGVzdCIsIkVycm9yIiwib3V0cHV0SGFuZGxlciIsInRyaW0iLCJzdGFydCIsInNldFRpbWVvdXQiLCJvdXRwdXQiLCJwcmVmaXgiLCJsZW5ndGgiLCJzaGlmdCIsIm91dHB1dE9iaiIsInRpbWVzdGFtcCIsIkRhdGUiLCJub3ciLCJsZXZlbCIsIm1lc3NhZ2UiLCJwdXNoIiwiZW1pdCIsImlzVHJhY2UiLCJzdG9wQ2FwdHVyZSIsImlzUnVubmluZyIsInJlbW92ZUFsbExpc3RlbmVycyIsInN0b3AiLCJnZXRMb2dzIiwicmVzdWx0Iiwic2xpY2UiLCJnZXRBbGxMb2dzIiwiZXJyIiwic3RkZXJyIl0sInNvdXJjZVJvb3QiOiIuLi8uLiIsInNvdXJjZXMiOlsibGliL2xvZ2NhdC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHsgbG9nZ2VyLCB1dGlsIH0gZnJvbSAnQGFwcGl1bS9zdXBwb3J0JztcbmltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcbmltcG9ydCBldmVudHMgZnJvbSAnZXZlbnRzJztcbmNvbnN0IHsgRXZlbnRFbWl0dGVyIH0gPSBldmVudHM7XG5pbXBvcnQgeyBTdWJQcm9jZXNzLCBleGVjIH0gZnJvbSAndGVlbl9wcm9jZXNzJztcblxuY29uc3QgbG9nID0gbG9nZ2VyLmdldExvZ2dlcignTG9nY2F0Jyk7XG5jb25zdCBNQVhfQlVGRkVSX1NJWkUgPSAxMDAwMDtcbmNvbnN0IExPR0NBVF9QUk9DX1NUQVJUVVBfVElNRU9VVCA9IDEwMDAwO1xuY29uc3QgU1VQUE9SVEVEX0ZPUk1BVFMgPSBbJ2JyaWVmJywgJ3Byb2Nlc3MnLCAndGFnJywgJ3RocmVhZCcsICdyYXcnLCAndGltZScsICd0aHJlYWR0aW1lJywgJ2xvbmcnXTtcbmNvbnN0IFNVUFBPUlRFRF9QUklPUklUSUVTID0gWyd2JywgJ2QnLCAnaScsICd3JywgJ2UnLCAnZicsICdzJ107XG5jb25zdCBERUZBVUxUX1BSSU9SSVRZID0gJ3YnO1xuY29uc3QgREVGQVVMVF9UQUcgPSAnKic7XG5jb25zdCBERUZBVUxUX0ZPUk1BVCA9ICd0aHJlYWR0aW1lJztcblxuZnVuY3Rpb24gcmVxdWlyZUZvcm1hdCAoZm9ybWF0KSB7XG4gIGlmICghU1VQUE9SVEVEX0ZPUk1BVFMuaW5jbHVkZXMoZm9ybWF0KSkge1xuICAgIGxvZy5pbmZvKGBUaGUgZm9ybWF0IHZhbHVlICcke2Zvcm1hdH0nIGlzIHVua25vd24uIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOiAke1NVUFBPUlRFRF9GT1JNQVRTfWApO1xuICAgIGxvZy5pbmZvKGBEZWZhdWx0aW5nIHRvICcke0RFRkFVTFRfRk9STUFUfSdgKTtcbiAgICByZXR1cm4gREVGQVVMVF9GT1JNQVQ7XG4gIH1cbiAgcmV0dXJuIGZvcm1hdDtcbn1cblxuZnVuY3Rpb24gcmVxdWlyZVNwZWMgKHNwZWMpIHtcbiAgY29uc3QgW3RhZywgcHJpb3JpdHldID0gc3BlYy5zcGxpdCgnOicpO1xuICBsZXQgcmVzdWx0VGFnID0gdGFnO1xuICBpZiAoIXJlc3VsdFRhZykge1xuICAgIGxvZy5pbmZvKGBUaGUgdGFnIHZhbHVlIGluIHNwZWMgJyR7c3BlY30nIGNhbm5vdCBiZSBlbXB0eWApO1xuICAgIGxvZy5pbmZvKGBEZWZhdWx0aW5nIHRvICcke0RFRkFVTFRfVEFHfSdgKTtcbiAgICByZXN1bHRUYWcgPSBERUZBVUxUX1RBRztcbiAgfVxuICBpZiAoIXByaW9yaXR5KSB7XG4gICAgbG9nLmluZm8oYFRoZSBwcmlvcml0eSB2YWx1ZSBpbiBzcGVjICcke3NwZWN9JyBpcyBlbXB0eS4gRGVmYXVsdGluZyB0byBWZXJib3NlICgke0RFRkFVTFRfUFJJT1JJVFl9KWApO1xuICAgIHJldHVybiBgJHtyZXN1bHRUYWd9OiR7REVGQVVMVF9QUklPUklUWX1gO1xuICB9XG4gIGlmICghU1VQUE9SVEVEX1BSSU9SSVRJRVMuc29tZSgocCkgPT4gXy50b0xvd2VyKHByaW9yaXR5KSA9PT0gXy50b0xvd2VyKHApKSkge1xuICAgIGxvZy5pbmZvKGBUaGUgcHJpb3JpdHkgdmFsdWUgaW4gc3BlYyAnJHtzcGVjfScgaXMgdW5rbm93bi4gU3VwcG9ydGVkIHZhbHVlcyBhcmU6ICR7U1VQUE9SVEVEX1BSSU9SSVRJRVN9YCk7XG4gICAgbG9nLmluZm8oYERlZmF1bHRpbmcgdG8gVmVyYm9zZSAoJHtERUZBVUxUX1BSSU9SSVRZfSlgKTtcbiAgICByZXR1cm4gYCR7cmVzdWx0VGFnfToke0RFRkFVTFRfUFJJT1JJVFl9YDtcbiAgfVxuICByZXR1cm4gc3BlYztcbn1cblxuZnVuY3Rpb24gZm9ybWF0RmlsdGVyU3BlY3MgKGZpbHRlclNwZWNzKSB7XG4gIGlmICghXy5pc0FycmF5KGZpbHRlclNwZWNzKSkge1xuICAgIGZpbHRlclNwZWNzID0gW2ZpbHRlclNwZWNzXTtcbiAgfVxuICByZXR1cm4gZmlsdGVyU3BlY3NcbiAgICAuZmlsdGVyKChzcGVjKSA9PiBzcGVjICYmIF8uaXNTdHJpbmcoc3BlYykgJiYgIXNwZWMuc3RhcnRzV2l0aCgnLScpKVxuICAgIC5tYXAoKHNwZWMpID0+IHNwZWMuaW5jbHVkZXMoJzonKSA/IHJlcXVpcmVTcGVjKHNwZWMpIDogc3BlYyk7XG59XG5cblxuY2xhc3MgTG9nY2F0IGV4dGVuZHMgRXZlbnRFbWl0dGVyIHtcbiAgY29uc3RydWN0b3IgKG9wdHMgPSB7fSkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5hZGIgPSBvcHRzLmFkYjtcbiAgICB0aGlzLmNsZWFyTG9ncyA9IG9wdHMuY2xlYXJEZXZpY2VMb2dzT25TdGFydCB8fCBmYWxzZTtcbiAgICB0aGlzLmRlYnVnID0gb3B0cy5kZWJ1ZztcbiAgICB0aGlzLmRlYnVnVHJhY2UgPSBvcHRzLmRlYnVnVHJhY2U7XG4gICAgdGhpcy5tYXhCdWZmZXJTaXplID0gb3B0cy5tYXhCdWZmZXJTaXplIHx8IE1BWF9CVUZGRVJfU0laRTtcbiAgICB0aGlzLmxvZ3MgPSBbXTtcbiAgICB0aGlzLmxvZ0lkeFNpbmNlTGFzdFJlcXVlc3QgPSAwO1xuICB9XG5cbiAgYXN5bmMgc3RhcnRDYXB0dXJlIChvcHRzID0ge30pIHtcbiAgICBsZXQgc3RhcnRlZCA9IGZhbHNlO1xuICAgIHJldHVybiBhd2FpdCBuZXcgQihhc3luYyAoX3Jlc29sdmUsIF9yZWplY3QpID0+IHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcm9taXNlL3BhcmFtLW5hbWVzXG4gICAgICBjb25zdCByZXNvbHZlID0gZnVuY3Rpb24gKC4uLmFyZ3MpIHtcbiAgICAgICAgc3RhcnRlZCA9IHRydWU7XG4gICAgICAgIF9yZXNvbHZlKC4uLmFyZ3MpO1xuICAgICAgfTtcbiAgICAgIGNvbnN0IHJlamVjdCA9IGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgICAgIHN0YXJ0ZWQgPSB0cnVlO1xuICAgICAgICBfcmVqZWN0KC4uLmFyZ3MpO1xuICAgICAgfTtcblxuICAgICAgaWYgKHRoaXMuY2xlYXJMb2dzKSB7XG4gICAgICAgIGF3YWl0IHRoaXMuY2xlYXIoKTtcbiAgICAgIH1cblxuICAgICAgY29uc3Qge1xuICAgICAgICBmb3JtYXQgPSBERUZBVUxUX0ZPUk1BVCxcbiAgICAgICAgZmlsdGVyU3BlY3MgPSBbXSxcbiAgICAgIH0gPSBvcHRzO1xuICAgICAgY29uc3QgY21kID0gW1xuICAgICAgICAuLi50aGlzLmFkYi5kZWZhdWx0QXJncyxcbiAgICAgICAgJ2xvZ2NhdCcsXG4gICAgICAgICctdicsIHJlcXVpcmVGb3JtYXQoZm9ybWF0KSxcbiAgICAgICAgLi4uZm9ybWF0RmlsdGVyU3BlY3MoZmlsdGVyU3BlY3MpLFxuICAgICAgXTtcbiAgICAgIGxvZy5kZWJ1ZyhgU3RhcnRpbmcgbG9ncyBjYXB0dXJlIHdpdGggY29tbWFuZDogJHt1dGlsLnF1b3RlKFt0aGlzLmFkYi5wYXRoLCAuLi5jbWRdKX1gKTtcbiAgICAgIHRoaXMucHJvYyA9IG5ldyBTdWJQcm9jZXNzKHRoaXMuYWRiLnBhdGgsIGNtZCk7XG4gICAgICB0aGlzLnByb2Mub24oJ2V4aXQnLCAoY29kZSwgc2lnbmFsKSA9PiB7XG4gICAgICAgIGxvZy5lcnJvcihgTG9nY2F0IHRlcm1pbmF0ZWQgd2l0aCBjb2RlICR7Y29kZX0sIHNpZ25hbCAke3NpZ25hbH1gKTtcbiAgICAgICAgdGhpcy5wcm9jID0gbnVsbDtcbiAgICAgICAgaWYgKCFzdGFydGVkKSB7XG4gICAgICAgICAgbG9nLndhcm4oJ0xvZ2NhdCBub3Qgc3RhcnRlZC4gQ29udGludWluZycpO1xuICAgICAgICAgIHJlc29sdmUoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB0aGlzLnByb2Mub24oJ2xpbmVzLXN0ZGVycicsIChsaW5lcykgPT4ge1xuICAgICAgICBmb3IgKGxldCBsaW5lIG9mIGxpbmVzKSB7XG4gICAgICAgICAgaWYgKC9leGVjdnBcXChcXCkvLnRlc3QobGluZSkpIHtcbiAgICAgICAgICAgIGxvZy5lcnJvcignTG9nY2F0IHByb2Nlc3MgZmFpbGVkIHRvIHN0YXJ0Jyk7XG4gICAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBMb2djYXQgcHJvY2VzcyBmYWlsZWQgdG8gc3RhcnQuIHN0ZGVycjogJHtsaW5lfWApKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGhpcy5vdXRwdXRIYW5kbGVyKF8udHJpbShsaW5lKSwgJ1NUREVSUjogJyk7XG4gICAgICAgIH1cbiAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLnByb2Mub24oJ2xpbmVzLXN0ZG91dCcsIChsaW5lcykgPT4ge1xuICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIGZvciAobGV0IGxpbmUgb2YgbGluZXMpIHtcbiAgICAgICAgICB0aGlzLm91dHB1dEhhbmRsZXIoXy50cmltKGxpbmUpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBhd2FpdCB0aGlzLnByb2Muc3RhcnQoMCk7XG4gICAgICAvLyByZXNvbHZlIGFmdGVyIGEgdGltZW91dCwgZXZlbiBpZiBubyBvdXRwdXQgd2FzIHJlY29yZGVkXG4gICAgICBzZXRUaW1lb3V0KHJlc29sdmUsIExPR0NBVF9QUk9DX1NUQVJUVVBfVElNRU9VVCk7XG4gICAgfSk7XG4gIH1cblxuICBvdXRwdXRIYW5kbGVyIChvdXRwdXQsIHByZWZpeCA9ICcnKSB7XG4gICAgaWYgKCFvdXRwdXQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5sb2dzLmxlbmd0aCA+PSB0aGlzLm1heEJ1ZmZlclNpemUpIHtcbiAgICAgIHRoaXMubG9ncy5zaGlmdCgpO1xuICAgICAgaWYgKHRoaXMubG9nSWR4U2luY2VMYXN0UmVxdWVzdCA+IDApIHtcbiAgICAgICAgLS10aGlzLmxvZ0lkeFNpbmNlTGFzdFJlcXVlc3Q7XG4gICAgICB9XG4gICAgfVxuICAgIGNvbnN0IG91dHB1dE9iaiA9IHtcbiAgICAgIHRpbWVzdGFtcDogRGF0ZS5ub3coKSxcbiAgICAgIGxldmVsOiAnQUxMJyxcbiAgICAgIG1lc3NhZ2U6IG91dHB1dCxcbiAgICB9O1xuICAgIHRoaXMubG9ncy5wdXNoKG91dHB1dE9iaik7XG4gICAgdGhpcy5lbWl0KCdvdXRwdXQnLCBvdXRwdXRPYmopO1xuICAgIGNvbnN0IGlzVHJhY2UgPSAvV1xcL1RyYWNlLy50ZXN0KG91dHB1dCk7XG4gICAgaWYgKHRoaXMuZGVidWcgJiYgKCFpc1RyYWNlIHx8IHRoaXMuZGVidWdUcmFjZSkpIHtcbiAgICAgIGxvZy5kZWJ1ZyhwcmVmaXggKyBvdXRwdXQpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHN0b3BDYXB0dXJlICgpIHtcbiAgICBsb2cuZGVidWcoJ1N0b3BwaW5nIGxvZ2NhdCBjYXB0dXJlJyk7XG4gICAgaWYgKCF0aGlzLnByb2MgfHwgIXRoaXMucHJvYy5pc1J1bm5pbmcpIHtcbiAgICAgIGxvZy5kZWJ1ZygnTG9nY2F0IGFscmVhZHkgc3RvcHBlZCcpO1xuICAgICAgdGhpcy5wcm9jID0gbnVsbDtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5wcm9jLnJlbW92ZUFsbExpc3RlbmVycygnZXhpdCcpO1xuICAgIGF3YWl0IHRoaXMucHJvYy5zdG9wKCk7XG4gICAgdGhpcy5wcm9jID0gbnVsbDtcbiAgfVxuXG4gIGdldExvZ3MgKCkge1xuICAgIGlmICh0aGlzLmxvZ0lkeFNpbmNlTGFzdFJlcXVlc3QgPCB0aGlzLmxvZ3MubGVuZ3RoKSB7XG4gICAgICBjb25zdCByZXN1bHQgPSB0aGlzLmxvZ3Muc2xpY2UodGhpcy5sb2dJZHhTaW5jZUxhc3RSZXF1ZXN0KTtcbiAgICAgIHRoaXMubG9nSWR4U2luY2VMYXN0UmVxdWVzdCA9IHRoaXMubG9ncy5sZW5ndGg7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cbiAgICByZXR1cm4gW107XG4gIH1cblxuICBnZXRBbGxMb2dzICgpIHtcbiAgICByZXR1cm4gdGhpcy5sb2dzO1xuICB9XG5cbiAgYXN5bmMgY2xlYXIgKCkge1xuICAgIGxvZy5kZWJ1ZygnQ2xlYXJpbmcgbG9nY2F0IGxvZ3MgZnJvbSBkZXZpY2UnKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgYXJncyA9IFsuLi50aGlzLmFkYi5kZWZhdWx0QXJncywgJ2xvZ2NhdCcsICctYyddO1xuICAgICAgYXdhaXQgZXhlYyh0aGlzLmFkYi5wYXRoLCBhcmdzKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGxvZy53YXJuKGBGYWlsZWQgdG8gY2xlYXIgbG9nY2F0IGxvZ3M6ICR7ZXJyLnN0ZGVyciB8fCBlcnIubWVzc2FnZX1gKTtcbiAgICB9XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTG9nY2F0O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUVBOztBQURBLE1BQU07RUFBRUE7QUFBRixJQUFtQkMsZUFBekI7O0FBR0EsTUFBTUMsR0FBRyxHQUFHQyxnQkFBT0MsU0FBUCxDQUFpQixRQUFqQixDQUFaOztBQUNBLE1BQU1DLGVBQWUsR0FBRyxLQUF4QjtBQUNBLE1BQU1DLDJCQUEyQixHQUFHLEtBQXBDO0FBQ0EsTUFBTUMsaUJBQWlCLEdBQUcsQ0FBQyxPQUFELEVBQVUsU0FBVixFQUFxQixLQUFyQixFQUE0QixRQUE1QixFQUFzQyxLQUF0QyxFQUE2QyxNQUE3QyxFQUFxRCxZQUFyRCxFQUFtRSxNQUFuRSxDQUExQjtBQUNBLE1BQU1DLG9CQUFvQixHQUFHLENBQUMsR0FBRCxF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
|
|
221
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2xvZ2NhdC5qcyIsIm5hbWVzIjpbIkV2ZW50RW1pdHRlciIsImV2ZW50cyIsImxvZyIsImxvZ2dlciIsImdldExvZ2dlciIsIk1BWF9CVUZGRVJfU0laRSIsIkxPR0NBVF9QUk9DX1NUQVJUVVBfVElNRU9VVCIsIlNVUFBPUlRFRF9GT1JNQVRTIiwiU1VQUE9SVEVEX1BSSU9SSVRJRVMiLCJERUZBVUxUX1BSSU9SSVRZIiwiREVGQVVMVF9UQUciLCJERUZBVUxUX0ZPUk1BVCIsInJlcXVpcmVGb3JtYXQiLCJmb3JtYXQiLCJpbmNsdWRlcyIsImluZm8iLCJyZXF1aXJlU3BlYyIsInNwZWMiLCJ0YWciLCJwcmlvcml0eSIsInNwbGl0IiwicmVzdWx0VGFnIiwic29tZSIsInAiLCJfIiwidG9Mb3dlciIsImZvcm1hdEZpbHRlclNwZWNzIiwiZmlsdGVyU3BlY3MiLCJpc0FycmF5IiwiZmlsdGVyIiwiaXNTdHJpbmciLCJzdGFydHNXaXRoIiwibWFwIiwiTG9nY2F0IiwiY29uc3RydWN0b3IiLCJvcHRzIiwiYWRiIiwiY2xlYXJMb2dzIiwiY2xlYXJEZXZpY2VMb2dzT25TdGFydCIsImRlYnVnIiwiZGVidWdUcmFjZSIsIm1heEJ1ZmZlclNpemUiLCJsb2dzIiwibG9nSWR4U2luY2VMYXN0UmVxdWVzdCIsInN0YXJ0Q2FwdHVyZSIsInN0YXJ0ZWQiLCJCIiwiX3Jlc29sdmUiLCJfcmVqZWN0IiwicmVzb2x2ZSIsImFyZ3MiLCJyZWplY3QiLCJjbGVhciIsImNtZCIsImRlZmF1bHRBcmdzIiwidXRpbCIsInF1b3RlIiwicGF0aCIsInByb2MiLCJTdWJQcm9jZXNzIiwib24iLCJjb2RlIiwic2lnbmFsIiwiZXJyb3IiLCJ3YXJuIiwibGluZXMiLCJsaW5lIiwidGVzdCIsIkVycm9yIiwib3V0cHV0SGFuZGxlciIsInRyaW0iLCJzdGFydCIsInNldFRpbWVvdXQiLCJvdXRwdXQiLCJwcmVmaXgiLCJsZW5ndGgiLCJzaGlmdCIsIm91dHB1dE9iaiIsInRpbWVzdGFtcCIsIkRhdGUiLCJub3ciLCJsZXZlbCIsIm1lc3NhZ2UiLCJwdXNoIiwiZW1pdCIsImlzVHJhY2UiLCJzdG9wQ2FwdHVyZSIsImlzUnVubmluZyIsInJlbW92ZUFsbExpc3RlbmVycyIsInN0b3AiLCJnZXRMb2dzIiwicmVzdWx0Iiwic2xpY2UiLCJnZXRBbGxMb2dzIiwiZXhlYyIsImVyciIsInN0ZGVyciJdLCJzb3VyY2VSb290IjoiLi4vLi4iLCJzb3VyY2VzIjpbImxpYi9sb2djYXQuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IGxvZ2dlciwgdXRpbCB9IGZyb20gJ0BhcHBpdW0vc3VwcG9ydCc7XG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5pbXBvcnQgZXZlbnRzIGZyb20gJ2V2ZW50cyc7XG5jb25zdCB7IEV2ZW50RW1pdHRlciB9ID0gZXZlbnRzO1xuaW1wb3J0IHsgU3ViUHJvY2VzcywgZXhlYyB9IGZyb20gJ3RlZW5fcHJvY2Vzcyc7XG5cbmNvbnN0IGxvZyA9IGxvZ2dlci5nZXRMb2dnZXIoJ0xvZ2NhdCcpO1xuY29uc3QgTUFYX0JVRkZFUl9TSVpFID0gMTAwMDA7XG5jb25zdCBMT0dDQVRfUFJPQ19TVEFSVFVQX1RJTUVPVVQgPSAxMDAwMDtcbmNvbnN0IFNVUFBPUlRFRF9GT1JNQVRTID0gWydicmllZicsICdwcm9jZXNzJywgJ3RhZycsICd0aHJlYWQnLCAncmF3JywgJ3RpbWUnLCAndGhyZWFkdGltZScsICdsb25nJ107XG5jb25zdCBTVVBQT1JURURfUFJJT1JJVElFUyA9IFsndicsICdkJywgJ2knLCAndycsICdlJywgJ2YnLCAncyddO1xuY29uc3QgREVGQVVMVF9QUklPUklUWSA9ICd2JztcbmNvbnN0IERFRkFVTFRfVEFHID0gJyonO1xuY29uc3QgREVGQVVMVF9GT1JNQVQgPSAndGhyZWFkdGltZSc7XG5cbmZ1bmN0aW9uIHJlcXVpcmVGb3JtYXQgKGZvcm1hdCkge1xuICBpZiAoIVNVUFBPUlRFRF9GT1JNQVRTLmluY2x1ZGVzKGZvcm1hdCkpIHtcbiAgICBsb2cuaW5mbyhgVGhlIGZvcm1hdCB2YWx1ZSAnJHtmb3JtYXR9JyBpcyB1bmtub3duLiBTdXBwb3J0ZWQgdmFsdWVzIGFyZTogJHtTVVBQT1JURURfRk9STUFUU31gKTtcbiAgICBsb2cuaW5mbyhgRGVmYXVsdGluZyB0byAnJHtERUZBVUxUX0ZPUk1BVH0nYCk7XG4gICAgcmV0dXJuIERFRkFVTFRfRk9STUFUO1xuICB9XG4gIHJldHVybiBmb3JtYXQ7XG59XG5cbmZ1bmN0aW9uIHJlcXVpcmVTcGVjIChzcGVjKSB7XG4gIGNvbnN0IFt0YWcsIHByaW9yaXR5XSA9IHNwZWMuc3BsaXQoJzonKTtcbiAgbGV0IHJlc3VsdFRhZyA9IHRhZztcbiAgaWYgKCFyZXN1bHRUYWcpIHtcbiAgICBsb2cuaW5mbyhgVGhlIHRhZyB2YWx1ZSBpbiBzcGVjICcke3NwZWN9JyBjYW5ub3QgYmUgZW1wdHlgKTtcbiAgICBsb2cuaW5mbyhgRGVmYXVsdGluZyB0byAnJHtERUZBVUxUX1RBR30nYCk7XG4gICAgcmVzdWx0VGFnID0gREVGQVVMVF9UQUc7XG4gIH1cbiAgaWYgKCFwcmlvcml0eSkge1xuICAgIGxvZy5pbmZvKGBUaGUgcHJpb3JpdHkgdmFsdWUgaW4gc3BlYyAnJHtzcGVjfScgaXMgZW1wdHkuIERlZmF1bHRpbmcgdG8gVmVyYm9zZSAoJHtERUZBVUxUX1BSSU9SSVRZfSlgKTtcbiAgICByZXR1cm4gYCR7cmVzdWx0VGFnfToke0RFRkFVTFRfUFJJT1JJVFl9YDtcbiAgfVxuICBpZiAoIVNVUFBPUlRFRF9QUklPUklUSUVTLnNvbWUoKHApID0+IF8udG9Mb3dlcihwcmlvcml0eSkgPT09IF8udG9Mb3dlcihwKSkpIHtcbiAgICBsb2cuaW5mbyhgVGhlIHByaW9yaXR5IHZhbHVlIGluIHNwZWMgJyR7c3BlY30nIGlzIHVua25vd24uIFN1cHBvcnRlZCB2YWx1ZXMgYXJlOiAke1NVUFBPUlRFRF9QUklPUklUSUVTfWApO1xuICAgIGxvZy5pbmZvKGBEZWZhdWx0aW5nIHRvIFZlcmJvc2UgKCR7REVGQVVMVF9QUklPUklUWX0pYCk7XG4gICAgcmV0dXJuIGAke3Jlc3VsdFRhZ306JHtERUZBVUxUX1BSSU9SSVRZfWA7XG4gIH1cbiAgcmV0dXJuIHNwZWM7XG59XG5cbmZ1bmN0aW9uIGZvcm1hdEZpbHRlclNwZWNzIChmaWx0ZXJTcGVjcykge1xuICBpZiAoIV8uaXNBcnJheShmaWx0ZXJTcGVjcykpIHtcbiAgICBmaWx0ZXJTcGVjcyA9IFtmaWx0ZXJTcGVjc107XG4gIH1cbiAgcmV0dXJuIGZpbHRlclNwZWNzXG4gICAgLmZpbHRlcigoc3BlYykgPT4gc3BlYyAmJiBfLmlzU3RyaW5nKHNwZWMpICYmICFzcGVjLnN0YXJ0c1dpdGgoJy0nKSlcbiAgICAubWFwKChzcGVjKSA9PiBzcGVjLmluY2x1ZGVzKCc6JykgPyByZXF1aXJlU3BlYyhzcGVjKSA6IHNwZWMpO1xufVxuXG5cbmNsYXNzIExvZ2NhdCBleHRlbmRzIEV2ZW50RW1pdHRlciB7XG4gIGNvbnN0cnVjdG9yIChvcHRzID0ge30pIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuYWRiID0gb3B0cy5hZGI7XG4gICAgdGhpcy5jbGVhckxvZ3MgPSBvcHRzLmNsZWFyRGV2aWNlTG9nc09uU3RhcnQgfHwgZmFsc2U7XG4gICAgdGhpcy5kZWJ1ZyA9IG9wdHMuZGVidWc7XG4gICAgdGhpcy5kZWJ1Z1RyYWNlID0gb3B0cy5kZWJ1Z1RyYWNlO1xuICAgIHRoaXMubWF4QnVmZmVyU2l6ZSA9IG9wdHMubWF4QnVmZmVyU2l6ZSB8fCBNQVhfQlVGRkVSX1NJWkU7XG4gICAgdGhpcy5sb2dzID0gW107XG4gICAgdGhpcy5sb2dJZHhTaW5jZUxhc3RSZXF1ZXN0ID0gMDtcbiAgfVxuXG4gIGFzeW5jIHN0YXJ0Q2FwdHVyZSAob3B0cyA9IHt9KSB7XG4gICAgbGV0IHN0YXJ0ZWQgPSBmYWxzZTtcbiAgICByZXR1cm4gYXdhaXQgbmV3IEIoYXN5bmMgKF9yZXNvbHZlLCBfcmVqZWN0KSA9PiB7IC8vIGVzbGludC1kaXNhYmxlLWxpbmUgcHJvbWlzZS9wYXJhbS1uYW1lc1xuICAgICAgY29uc3QgcmVzb2x2ZSA9IGZ1bmN0aW9uICguLi5hcmdzKSB7XG4gICAgICAgIHN0YXJ0ZWQgPSB0cnVlO1xuICAgICAgICBfcmVzb2x2ZSguLi5hcmdzKTtcbiAgICAgIH07XG4gICAgICBjb25zdCByZWplY3QgPSBmdW5jdGlvbiAoLi4uYXJncykge1xuICAgICAgICBzdGFydGVkID0gdHJ1ZTtcbiAgICAgICAgX3JlamVjdCguLi5hcmdzKTtcbiAgICAgIH07XG5cbiAgICAgIGlmICh0aGlzLmNsZWFyTG9ncykge1xuICAgICAgICBhd2FpdCB0aGlzLmNsZWFyKCk7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IHtcbiAgICAgICAgZm9ybWF0ID0gREVGQVVMVF9GT1JNQVQsXG4gICAgICAgIGZpbHRlclNwZWNzID0gW10sXG4gICAgICB9ID0gb3B0cztcbiAgICAgIGNvbnN0IGNtZCA9IFtcbiAgICAgICAgLi4udGhpcy5hZGIuZGVmYXVsdEFyZ3MsXG4gICAgICAgICdsb2djYXQnLFxuICAgICAgICAnLXYnLCByZXF1aXJlRm9ybWF0KGZvcm1hdCksXG4gICAgICAgIC4uLmZvcm1hdEZpbHRlclNwZWNzKGZpbHRlclNwZWNzKSxcbiAgICAgIF07XG4gICAgICBsb2cuZGVidWcoYFN0YXJ0aW5nIGxvZ3MgY2FwdHVyZSB3aXRoIGNvbW1hbmQ6ICR7dXRpbC5xdW90ZShbdGhpcy5hZGIucGF0aCwgLi4uY21kXSl9YCk7XG4gICAgICB0aGlzLnByb2MgPSBuZXcgU3ViUHJvY2Vzcyh0aGlzLmFkYi5wYXRoLCBjbWQpO1xuICAgICAgdGhpcy5wcm9jLm9uKCdleGl0JywgKGNvZGUsIHNpZ25hbCkgPT4ge1xuICAgICAgICBsb2cuZXJyb3IoYExvZ2NhdCB0ZXJtaW5hdGVkIHdpdGggY29kZSAke2NvZGV9LCBzaWduYWwgJHtzaWduYWx9YCk7XG4gICAgICAgIHRoaXMucHJvYyA9IG51bGw7XG4gICAgICAgIGlmICghc3RhcnRlZCkge1xuICAgICAgICAgIGxvZy53YXJuKCdMb2djYXQgbm90IHN0YXJ0ZWQuIENvbnRpbnVpbmcnKTtcbiAgICAgICAgICByZXNvbHZlKCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgdGhpcy5wcm9jLm9uKCdsaW5lcy1zdGRlcnInLCAobGluZXMpID0+IHtcbiAgICAgICAgZm9yIChsZXQgbGluZSBvZiBsaW5lcykge1xuICAgICAgICAgIGlmICgvZXhlY3ZwXFwoXFwpLy50ZXN0KGxpbmUpKSB7XG4gICAgICAgICAgICBsb2cuZXJyb3IoJ0xvZ2NhdCBwcm9jZXNzIGZhaWxlZCB0byBzdGFydCcpO1xuICAgICAgICAgICAgcmVqZWN0KG5ldyBFcnJvcihgTG9nY2F0IHByb2Nlc3MgZmFpbGVkIHRvIHN0YXJ0LiBzdGRlcnI6ICR7bGluZX1gKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRoaXMub3V0cHV0SGFuZGxlcihfLnRyaW0obGluZSksICdTVERFUlI6ICcpO1xuICAgICAgICB9XG4gICAgICAgIHJlc29sdmUoKTtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5wcm9jLm9uKCdsaW5lcy1zdGRvdXQnLCAobGluZXMpID0+IHtcbiAgICAgICAgcmVzb2x2ZSgpO1xuICAgICAgICBmb3IgKGxldCBsaW5lIG9mIGxpbmVzKSB7XG4gICAgICAgICAgdGhpcy5vdXRwdXRIYW5kbGVyKF8udHJpbShsaW5lKSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgICAgYXdhaXQgdGhpcy5wcm9jLnN0YXJ0KDApO1xuICAgICAgLy8gcmVzb2x2ZSBhZnRlciBhIHRpbWVvdXQsIGV2ZW4gaWYgbm8gb3V0cHV0IHdhcyByZWNvcmRlZFxuICAgICAgc2V0VGltZW91dChyZXNvbHZlLCBMT0dDQVRfUFJPQ19TVEFSVFVQX1RJTUVPVVQpO1xuICAgIH0pO1xuICB9XG5cbiAgb3V0cHV0SGFuZGxlciAob3V0cHV0LCBwcmVmaXggPSAnJykge1xuICAgIGlmICghb3V0cHV0KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHRoaXMubG9ncy5sZW5ndGggPj0gdGhpcy5tYXhCdWZmZXJTaXplKSB7XG4gICAgICB0aGlzLmxvZ3Muc2hpZnQoKTtcbiAgICAgIGlmICh0aGlzLmxvZ0lkeFNpbmNlTGFzdFJlcXVlc3QgPiAwKSB7XG4gICAgICAgIC0tdGhpcy5sb2dJZHhTaW5jZUxhc3RSZXF1ZXN0O1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBvdXRwdXRPYmogPSB7XG4gICAgICB0aW1lc3RhbXA6IERhdGUubm93KCksXG4gICAgICBsZXZlbDogJ0FMTCcsXG4gICAgICBtZXNzYWdlOiBvdXRwdXQsXG4gICAgfTtcbiAgICB0aGlzLmxvZ3MucHVzaChvdXRwdXRPYmopO1xuICAgIHRoaXMuZW1pdCgnb3V0cHV0Jywgb3V0cHV0T2JqKTtcbiAgICBjb25zdCBpc1RyYWNlID0gL1dcXC9UcmFjZS8udGVzdChvdXRwdXQpO1xuICAgIGlmICh0aGlzLmRlYnVnICYmICghaXNUcmFjZSB8fCB0aGlzLmRlYnVnVHJhY2UpKSB7XG4gICAgICBsb2cuZGVidWcocHJlZml4ICsgb3V0cHV0KTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBzdG9wQ2FwdHVyZSAoKSB7XG4gICAgbG9nLmRlYnVnKCdTdG9wcGluZyBsb2djYXQgY2FwdHVyZScpO1xuICAgIGlmICghdGhpcy5wcm9jIHx8ICF0aGlzLnByb2MuaXNSdW5uaW5nKSB7XG4gICAgICBsb2cuZGVidWcoJ0xvZ2NhdCBhbHJlYWR5IHN0b3BwZWQnKTtcbiAgICAgIHRoaXMucHJvYyA9IG51bGw7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMucHJvYy5yZW1vdmVBbGxMaXN0ZW5lcnMoJ2V4aXQnKTtcbiAgICBhd2FpdCB0aGlzLnByb2Muc3RvcCgpO1xuICAgIHRoaXMucHJvYyA9IG51bGw7XG4gIH1cblxuICBnZXRMb2dzICgpIHtcbiAgICBpZiAodGhpcy5sb2dJZHhTaW5jZUxhc3RSZXF1ZXN0IDwgdGhpcy5sb2dzLmxlbmd0aCkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5sb2dzLnNsaWNlKHRoaXMubG9nSWR4U2luY2VMYXN0UmVxdWVzdCk7XG4gICAgICB0aGlzLmxvZ0lkeFNpbmNlTGFzdFJlcXVlc3QgPSB0aGlzLmxvZ3MubGVuZ3RoO1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgcmV0dXJuIFtdO1xuICB9XG5cbiAgZ2V0QWxsTG9ncyAoKSB7XG4gICAgcmV0dXJuIHRoaXMubG9ncztcbiAgfVxuXG4gIGFzeW5jIGNsZWFyICgpIHtcbiAgICBsb2cuZGVidWcoJ0NsZWFyaW5nIGxvZ2NhdCBsb2dzIGZyb20gZGV2aWNlJyk7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IGFyZ3MgPSBbLi4udGhpcy5hZGIuZGVmYXVsdEFyZ3MsICdsb2djYXQnLCAnLWMnXTtcbiAgICAgIGF3YWl0IGV4ZWModGhpcy5hZGIucGF0aCwgYXJncyk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBsb2cud2FybihgRmFpbGVkIHRvIGNsZWFyIGxvZ2NhdCBsb2dzOiAke2Vyci5zdGRlcnIgfHwgZXJyLm1lc3NhZ2V9YCk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IExvZ2NhdDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFEQSxNQUFNO0VBQUVBO0FBQUYsSUFBbUJDLGVBQXpCOztBQUdBLE1BQU1DLEdBQUcsR0FBR0MsZUFBQSxDQUFPQyxTQUFQLENBQWlCLFFBQWpCLENBQVo7O0FBQ0EsTUFBTUMsZUFBZSxHQUFHLEtBQXhCO0FBQ0EsTUFBTUMsMkJBQTJCLEdBQUcsS0FBcEM7QUFDQSxNQUFNQyxpQkFBaUIsR0FBRyxDQUFDLE9BQUQsRUFBVSxTQUFWLEVBQXFCLEtBQXJCLEVBQTRCLFFBQTVCLEVBQXNDLEtBQXRDLEVBQTZDLE1BQTdDLEVBQXFELFlBQXJELEVBQW1FLE1BQW5FLENBQTFCO0FBQ0EsTUFBTUMsb0JBQW9CLEdBQUcs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
|
package/build/lib/logger.js
CHANGED
|
@@ -15,4 +15,4 @@ var _default = log;
|
|
|
15
15
|
exports.default = _default;require('source-map-support').install();
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL2xvZ2dlci5qcyIsIm5hbWVzIjpbImxvZyIsImxvZ2dlciIsImdldExvZ2dlciJdLCJzb3VyY2VSb290IjoiLi4vLi4iLCJzb3VyY2VzIjpbImxpYi9sb2dnZXIuanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbG9nZ2VyIH0gZnJvbSAnQGFwcGl1bS9zdXBwb3J0JztcblxuY29uc3QgbG9nID0gbG9nZ2VyLmdldExvZ2dlcignQURCJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGxvZztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUE7O0FBRUEsTUFBTUEsR0FBRyxHQUFHQyxlQUFBLENBQU9DLFNBQVAsQ0FBaUIsS0FBakIsQ0FBWjs7ZUFFZUYsRyJ9
|
|
@@ -154,4 +154,4 @@ var _default = aabUtilsMethods;
|
|
|
154
154
|
exports.default = _default;require('source-map-support').install();
|
|
155
155
|
|
|
156
156
|
|
|
157
|
-
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL3Rvb2xzL2FhYi11dGlscy5qcyIsIm5hbWVzIjpbIkFBQl9DQUNIRSIsIkxSVSIsIm1heCIsImRpc3Bvc2UiLCJoYXNoIiwiZXh0cmFjdGVkRmlsZXNSb290IiwiZnMiLCJyaW1yYWYiLCJBQUJfQ0FDSEVfR1VBUkQiLCJBc3luY0xvY2siLCJVTklWRVJTQUxfQVBLIiwiYWFiVXRpbHNNZXRob2RzIiwicHJvY2VzcyIsIm9uIiwic2l6ZSIsInBhdGhzIiwidmFsdWVzIiwibG9nIiwiZGVidWciLCJsZW5ndGgiLCJ1dGlsIiwicGx1cmFsaXplIiwiYXBwUGF0aCIsInJpbXJhZlN5bmMiLCJlIiwid2FybiIsIm1lc3NhZ2UiLCJleHRyYWN0VW5pdmVyc2FsQXBrIiwiYWFiUGF0aCIsIm9wdHMiLCJleGlzdHMiLCJFcnJvciIsImFhYk5hbWUiLCJwYXRoIiwiYmFzZW5hbWUiLCJhcGtOYW1lIiwic3Vic3RyaW5nIiwiZXh0bmFtZSIsInRtcFJvb3QiLCJ0ZW1wRGlyIiwib3BlbkRpciIsInRtcEFwa3NQYXRoIiwiam9pbiIsImFjcXVpcmUiLCJhYWJIYXNoIiwia2V5c3RvcmUiLCJrZXlzdG9yZVBhc3N3b3JkIiwia2V5QWxpYXMiLCJrZXlQYXNzd29yZCIsImNhY2hlSGFzaCIsImtleXN0b3JlSGFzaCIsImtleUFsaWFzSGFzaCIsImNyeXB0byIsImNyZWF0ZUhhc2giLCJ1cGRhdGUiLCJkaWdlc3QiLCJoYXMiLCJyZXN1bHRQYXRoIiwicmVzb2x2ZSIsImdldCIsImRlbCIsImluaXRBYXB0MiIsImFyZ3MiLCJiaW5hcmllcyIsImFhcHQyIiwiZXhlY0J1bmRsZXRvb2wiLCJ1bml2ZXJzYWxBcGtQYXRoIiwiZmlsZURlbGV0aW9uUHJvbWlzZXMiLCJhbGxGaWxlTmFtZXMiLCJyZWFkZGlyIiwiZmlsZU5hbWUiLCJmdWxsUGF0aCIsInB1c2giLCJCIiwiYWxsIiwiaWduIiwibXYiLCJzZXQiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uIiwic291cmNlcyI6WyJsaWIvdG9vbHMvYWFiLXV0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBsb2cgZnJvbSAnLi4vbG9nZ2VyLmpzJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgZnMsIHRlbXBEaXIsIHV0aWwgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IExSVSBmcm9tICdscnUtY2FjaGUnO1xuaW1wb3J0IHsgdW56aXBGaWxlIH0gZnJvbSAnLi4vaGVscGVycy5qcyc7XG5pbXBvcnQgQXN5bmNMb2NrIGZyb20gJ2FzeW5jLWxvY2snO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5jb25zdCBBQUJfQ0FDSEUgPSBuZXcgTFJVKHtcbiAgbWF4OiAxMCxcbiAgZGlzcG9zZTogKGhhc2gsIGV4dHJhY3RlZEZpbGVzUm9vdCkgPT4gZnMucmltcmFmKGV4dHJhY3RlZEZpbGVzUm9vdCksXG59KTtcbmNvbnN0IEFBQl9DQUNIRV9HVUFSRCA9IG5ldyBBc3luY0xvY2soKTtcbmNvbnN0IFVOSVZFUlNBTF9BUEsgPSAndW5pdmVyc2FsLmFwayc7XG5cbmNvbnN0IGFhYlV0aWxzTWV0aG9kcyA9IHt9O1xuXG5wcm9jZXNzLm9uKCdleGl0JywgKCkgPT4ge1xuICBpZiAoIUFBQl9DQUNIRS5zaXplKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcGF0aHMgPSBbLi4uQUFCX0NBQ0hFLnZhbHVlcygpXTtcbiAgbG9nLmRlYnVnKGBQZXJmb3JtaW5nIGNsZWFudXAgb2YgJHtwYXRocy5sZW5ndGh9IGNhY2hlZCAuYWFiIGAgK1xuICAgIHV0aWwucGx1cmFsaXplKCdwYWNrYWdlJywgcGF0aHMubGVuZ3RoKSk7XG4gIGZvciAoY29uc3QgYXBwUGF0aCBvZiBwYXRocykge1xuICAgIHRyeSB7XG4gICAgICAvLyBBc3luY2hyb25vdXMgY2FsbHMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gb25FeGl0IGhhbmRsZXJcbiAgICAgIGZzLnJpbXJhZlN5bmMoYXBwUGF0aCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgbG9nLndhcm4oZS5tZXNzYWdlKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IEFwa0NyZWF0aW9uT3B0aW9uc1xuICogQHByb3BlcnR5IHtzdHJpbmd9IGtleXN0b3JlIFNwZWNpZmllcyB0aGUgcGF0aCB0byB0aGUgZGVwbG95bWVudCBrZXlzdG9yZSB1c2VkXG4gKiB0byBzaWduIHRoZSBBUEtzLiBUaGlzIGZsYWcgaXMgb3B0aW9uYWwuIElmIHlvdSBkb24ndCBpbmNsdWRlIGl0LFxuICogYnVuZGxldG9vbCBhdHRlbXB0cyB0byBzaWduIHlvdXIgQVBLcyB3aXRoIGEgZGVidWcgc2lnbmluZyBrZXkuXG4gKiBJZiB0aGUgLmFwayBoYXMgYmVlbiBhbHJlYWR5IHNpZ25lZCBhbmQgY2FjaGVkIHRoZW4gaXQgaXMgbm90IGdvaW5nIHRvIGJlIHJlc2lnbmVkXG4gKiB1bmxlc3MgYSBkaWZmZXJlbnQga2V5c3RvcmUgb3Iga2V5IGFsaWFzIGlzIHVzZWQuXG4gKiBAcHJvcGVydHkge3N0cmluZ30ga2V5c3RvcmVQYXNzd29yZCBTcGVjaWZpZXMgeW91ciBrZXlzdG9yZeKAmXMgcGFzc3dvcmQuXG4gKiBJdCBpcyBtYW5kYXRvcnkgdG8gcHJvdmlkZSB0aGlzIHZhbHVlIGlmIGBrZXlzdG9yZWAgb25lIGlzIGFzc2lnbmVkXG4gKiBvdGhlcndpc2UgaXQgaXMgZ29pbmcgdG8gYmUgaWdub3JlZC5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBrZXlBbGlhcyBTcGVjaWZpZXMgdGhlIGFsaWFzIG9mIHRoZSBzaWduaW5nIGtleSB5b3Ugd2FudCB0byB1c2UuXG4gKiBJdCBpcyBtYW5kYXRvcnkgdG8gcHJvdmlkZSB0aGlzIHZhbHVlIGlmIGBrZXlzdG9yZWAgb25lIGlzIGFzc2lnbmVkXG4gKiBvdGhlcndpc2UgaXQgaXMgZ29pbmcgdG8gYmUgaWdub3JlZC5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBrZXlQYXNzd29yZCBTcGVjaWZpZXMgdGhlIHBhc3N3b3JkIGZvciB0aGUgc2lnbmluZyBrZXkuXG4gKiBJdCBpcyBtYW5kYXRvcnkgdG8gcHJvdmlkZSB0aGlzIHZhbHVlIGlmIGBrZXlzdG9yZWAgb25lIGlzIGFzc2lnbmVkXG4gKiBvdGhlcndpc2UgaXQgaXMgZ29pbmcgdG8gYmUgaWdub3JlZC5cbiAqL1xuXG4vKipcbiAqIEJ1aWxkcyBhIHVuaXZlcnNhbCAuYXBrIGZyb20gdGhlIGdpdmVuIC5hYWIgcGFja2FnZS4gU2VlXG4gKiBodHRwczovL2RldmVsb3Blci5hbmRyb2lkLmNvbS9zdHVkaW8vY29tbWFuZC1saW5lL2J1bmRsZXRvb2wjZ2VuZXJhdGVfYXBrc1xuICogZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gYWFiUGF0aCBGdWxsIHBhdGggdG8gdGhlIHNvdXJjZSAuYWFiIHBhY2thZ2VcbiAqIEBwYXJhbSB7QXBrQ3JlYXRpb25PcHRpb25zfSBvcHRzXG4gKiBAcmV0dXJucyBUaGUgcGF0aCB0byB0aGUgcmVzdWx0aW5nIHVuaXZlcnNhbCAuYXBrLiBUaGUgLmFwayBpcyBzdG9yZWQgaW4gdGhlIGludGVybmFsIGNhY2hlXG4gKiBieSBkZWZhdWx0LlxuICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdhcyBhbiBlcnJvciB3aGlsZSBjcmVhdGluZyB0aGUgdW5pdmVyc2FsIC5hcGtcbiAqL1xuYWFiVXRpbHNNZXRob2RzLmV4dHJhY3RVbml2ZXJzYWxBcGsgPSBhc3luYyBmdW5jdGlvbiBleHRyYWN0VW5pdmVyc2FsQXBrIChhYWJQYXRoLCBvcHRzID0ge30pIHtcbiAgaWYgKCFhd2FpdCBmcy5leGlzdHMoYWFiUGF0aCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmaWxlIGF0ICcke2FhYlBhdGh9JyBlaXRoZXIgZG9lcyBub3QgZXhpc3Qgb3IgaXMgbm90IGFjY2Vzc2libGVgKTtcbiAgfVxuXG4gIGNvbnN0IGFhYk5hbWUgPSBwYXRoLmJhc2VuYW1lKGFhYlBhdGgpO1xuICBjb25zdCBhcGtOYW1lID0gYWFiTmFtZS5zdWJzdHJpbmcoMCwgYWFiTmFtZS5sZW5ndGggLSBwYXRoLmV4dG5hbWUoYWFiTmFtZSkubGVuZ3RoKSArICcuYXBrJztcbiAgY29uc3QgdG1wUm9vdCA9IGF3YWl0IHRlbXBEaXIub3BlbkRpcigpO1xuICBjb25zdCB0bXBBcGtzUGF0aCA9IHBhdGguam9pbih0bXBSb290LCBgJHthYWJOYW1lfS5hcGtzYCk7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IEFBQl9DQUNIRV9HVUFSRC5hY3F1aXJlKGFhYlBhdGgsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGFhYkhhc2ggPSBhd2FpdCBmcy5oYXNoKGFhYlBhdGgpO1xuICAgICAgY29uc3Qge1xuICAgICAgICBrZXlzdG9yZSxcbiAgICAgICAga2V5c3RvcmVQYXNzd29yZCxcbiAgICAgICAga2V5QWxpYXMsXG4gICAgICAgIGtleVBhc3N3b3JkLFxuICAgICAgfSA9IG9wdHM7XG4gICAgICBsZXQgY2FjaGVIYXNoID0gYWFiSGFzaDtcbiAgICAgIGlmIChrZXlzdG9yZSkge1xuICAgICAgICBpZiAoIWF3YWl0IGZzLmV4aXN0cyhrZXlzdG9yZSkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBrZXlzdG9yZSBmaWxlIGF0ICcke2tleXN0b3JlfScgZWl0aGVyIGRvZXMgbm90IGV4aXN0IGAgK1xuICAgICAgICAgICAgYG9yIGlzIG5vdCBhY2Nlc3NpYmxlYCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFrZXlzdG9yZVBhc3N3b3JkIHx8ICFrZXlBbGlhcyB8fCAha2V5UGFzc3dvcmQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0l0IGlzIG1hbmRhdG9yeSB0byBhbHNvIHByb3ZpZGUga2V5c3RvcmUgcGFzc3dvcmQsIGtleSBhbGlhcywgJyArXG4gICAgICAgICAgICAnYW5kIGtleSBwYXNzd29yZCBpZiB0aGUga2V5c3RvcmUgcGF0aCBpcyBzZXQnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBrZXlzdG9yZUhhc2ggPSBhd2FpdCBmcy5oYXNoKGtleXN0b3JlKTtcbiAgICAgICAgY29uc3Qga2V5QWxpYXNIYXNoID0gY3J5cHRvLmNyZWF0ZUhhc2goJ3NoYTEnKTtcbiAgICAgICAga2V5QWxpYXNIYXNoLnVwZGF0ZShrZXlBbGlhcyk7XG4gICAgICAgIGNhY2hlSGFzaCA9IFtjYWNoZUhhc2gsIGtleXN0b3JlSGFzaCwga2V5QWxpYXNIYXNoLmRpZ2VzdCgnaGV4JyldLmpvaW4oJzonKTtcbiAgICAgIH1cbiAgICAgIGxvZy5kZWJ1ZyhgQ2FsY3VsYXRlZCB0aGUgY2FjaGUga2V5IGZvciAnJHthYWJQYXRofSc6ICR7Y2FjaGVIYXNofWApO1xuICAgICAgaWYgKEFBQl9DQUNIRS5oYXMoY2FjaGVIYXNoKSkge1xuICAgICAgICBjb25zdCByZXN1bHRQYXRoID0gcGF0aC5yZXNvbHZlKEFBQl9DQUNIRS5nZXQoY2FjaGVIYXNoKSwgYXBrTmFtZSk7XG4gICAgICAgIGlmIChhd2FpdCBmcy5leGlzdHMocmVzdWx0UGF0aCkpIHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0UGF0aDtcbiAgICAgICAgfVxuICAgICAgICBBQUJfQ0FDSEUuZGVsKGNhY2hlSGFzaCk7XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRoaXMuaW5pdEFhcHQyKCk7XG4gICAgICBjb25zdCBhcmdzID0gW1xuICAgICAgICAnYnVpbGQtYXBrcycsXG4gICAgICAgICctLWFhcHQyJywgdGhpcy5iaW5hcmllcy5hYXB0MixcbiAgICAgICAgJy0tYnVuZGxlJywgYWFiUGF0aCxcbiAgICAgICAgJy0tb3V0cHV0JywgdG1wQXBrc1BhdGgsXG4gICAgICAgIC4uLihrZXlzdG9yZSA/IFtcbiAgICAgICAgICAnLS1rcycsIGtleXN0b3JlLFxuICAgICAgICAgICctLWtzLXBhc3MnLCBgcGFzczoke2tleXN0b3JlUGFzc3dvcmR9YCxcbiAgICAgICAgICAnLS1rcy1rZXktYWxpYXMnLCBrZXlBbGlhcyxcbiAgICAgICAgICAnLS1rZXktcGFzcycsIGBwYXNzOiR7a2V5UGFzc3dvcmR9YCxcbiAgICAgICAgXSA6IFtdKSxcbiAgICAgICAgJy0tbW9kZT11bml2ZXJzYWwnXG4gICAgICBdO1xuICAgICAgbG9nLmRlYnVnKGBQcmVwYXJpbmcgdW5pdmVyc2FsIC5hcGtzIGJ1bmRsZSBmcm9tICcke2FhYlBhdGh9J2ApO1xuICAgICAgYXdhaXQgdGhpcy5leGVjQnVuZGxldG9vbChhcmdzLCBgQ2Fubm90IGJ1aWxkIGEgdW5pdmVyc2FsIC5hcGtzIGJ1bmRsZSBmcm9tICcke2FhYlBhdGh9J2ApO1xuXG4gICAgICBsb2cuZGVidWcoYFVucGFja2luZyB1bml2ZXJzYWwgYXBwbGljYXRpb24gYnVuZGxlIGF0ICcke3RtcEFwa3NQYXRofScgdG8gJyR7dG1wUm9vdH0nYCk7XG4gICAgICBhd2FpdCB1bnppcEZpbGUodG1wQXBrc1BhdGgsIHRtcFJvb3QpO1xuICAgICAgbGV0IHVuaXZlcnNhbEFwa1BhdGg7XG4gICAgICBjb25zdCBmaWxlRGVsZXRpb25Qcm9taXNlcyA9IFtdO1xuICAgICAgY29uc3QgYWxsRmlsZU5hbWVzID0gYXdhaXQgZnMucmVhZGRpcih0bXBSb290KTtcbiAgICAgIGZvciAoY29uc3QgZmlsZU5hbWUgb2YgYWxsRmlsZU5hbWVzKSB7XG4gICAgICAgIGNvbnN0IGZ1bGxQYXRoID0gcGF0aC5qb2luKHRtcFJvb3QsIGZpbGVOYW1lKTtcbiAgICAgICAgaWYgKGZpbGVOYW1lID09PSBVTklWRVJTQUxfQVBLKSB7XG4gICAgICAgICAgdW5pdmVyc2FsQXBrUGF0aCA9IGZ1bGxQYXRoO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZpbGVEZWxldGlvblByb21pc2VzLnB1c2goZnMucmltcmFmKGZ1bGxQYXRoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IEIuYWxsKGZpbGVEZWxldGlvblByb21pc2VzKTtcbiAgICAgIH0gY2F0Y2ggKGlnbikge31cbiAgICAgIGlmICghdW5pdmVyc2FsQXBrUGF0aCkge1xuICAgICAgICBsb2cuZGVidWcoYFRoZSBmb2xsb3dpbmcgaXRlbXMgd2VyZSBleHRyYWN0ZWQgZnJvbSB0aGUgLmFhYiBidW5kbGU6ICR7YWxsRmlsZU5hbWVzfWApO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7VU5JVkVSU0FMX0FQS30gY2Fubm90IGJlIGZvdW5kIGluICcke2FhYlBhdGh9JyBidW5kbGUuIGAgK1xuICAgICAgICAgIGBEb2VzIHRoZSBhcmNoaXZlIGNvbnRhaW4gYSB2YWxpZCBhcHBsaWNhdGlvbiBidW5kbGU/YCk7XG4gICAgICB9XG4gICAgICBjb25zdCByZXN1bHRQYXRoID0gcGF0aC5qb2luKHRtcFJvb3QsIGFwa05hbWUpO1xuICAgICAgbG9nLmRlYnVnKGBGb3VuZCAke1VOSVZFUlNBTF9BUEt9IGF0ICcke3VuaXZlcnNhbEFwa1BhdGh9Jy4gQ2FjaGluZyBpdCB0byAnJHtyZXN1bHRQYXRofSdgKTtcbiAgICAgIGF3YWl0IGZzLm12KHVuaXZlcnNhbEFwa1BhdGgsIHJlc3VsdFBhdGgpO1xuICAgICAgQUFCX0NBQ0hFLnNldChjYWNoZUhhc2gsIHRtcFJvb3QpO1xuICAgICAgcmV0dXJuIHJlc3VsdFBhdGg7XG4gICAgfSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBhd2FpdCBmcy5yaW1yYWYodG1wUm9vdCk7XG4gICAgdGhyb3cgZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgYWFiVXRpbHNNZXRob2RzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU1BLFNBQVMsR0FBRyxJQUFJQyxpQkFBSixDQUFRO0VBQ3hCQyxHQUFHLEVBQUUsRUFEbUI7RUFFeEJDLE9BQU8sRUFBRSxDQUFDQyxJQUFELEVBQU9DLGtCQUFQLEtBQThCQyxZQUFHQyxNQUFILENBQVVGLGtCQUFWO0FBRmYsQ0FBUixDQUFsQjtBQUlBLE1BQU1HLGVBQWUsR0FBRyxJQUFJQyxrQkFBSixFQUF4QjtBQUNBLE1BQU1DLGFBQWEsR0FBRyxlQUF0QjtBQUVBLE1BQU1DLGVBQWUsR0FBRyxFQUF4QjtBQUVBQyxPQUFPLENBQUNDLEVBQVIsQ0FBVyxNQUFYLEVBQW1CLE1BQU07RUFDdkIsSUFBSSxDQUFDYixTQUFTLENBQUNjLElBQWYsRUFBcUI7SUFDbkI7RUFDRDs7RUFFRCxNQUFNQyxLQUFLLEdBQUcsQ0FBQyxHQUFHZixTQUFTLENBQUNnQixNQUFWLEVBQUosQ0FBZDs7RUFDQUMsZ0JBQUlDLEtBQUosQ0FBVyx5QkFBd0JILEtBQUssQ0FBQ0ksTUFBTyxlQUF0QyxHQUNSQyxjQUFLQyxTQUFMLENBQWUsU0FBZixFQUEwQk4sS0FBSyxDQUFDSSxNQUFoQyxDQURGOztFQUVBLEtBQUssTUFBTUcsT0FBWCxJQUFzQlAsS0FBdEIsRUFBNkI7SUFDM0IsSUFBSTtNQUVGVCxZQUFHaUIsVUFBSCxDQUFjRCxPQUFkO0lBQ0QsQ0FIRCxDQUdFLE9BQU9FLENBQVAsRUFBVTtNQUNWUCxnQkFBSVEsSUFBSixDQUFTRCxDQUFDLENBQUNFLE9BQVg7SUFDRDtFQUNGO0FBQ0YsQ0FoQkQ7O0FBK0NBZixlQUFlLENBQUNnQixtQkFBaEIsR0FBc0MsZUFBZUEsbUJBQWYsQ0FBb0NDLE9BQXBDLEVBQTZDQyxJQUFJLEdBQUcsRUFBcEQsRUFBd0Q7RUFDNUYsSUFBSSxFQUFDLE1BQU12QixZQUFHd0IsTUFBSCxDQUFVRixPQUFWLENBQVAsQ0FBSixFQUErQjtJQUM3QixNQUFNLElBQUlHLEtBQUosQ0FBVyxnQkFBZUgsT0FBUSw4Q0FBbEMsQ0FBTjtFQUNEOztFQUVELE1BQU1JLE9BQU8sR0FBR0MsY0FBS0MsUUFBTCxDQUFjTixPQUFkLENBQWhCOztFQUNBLE1BQU1PLE9BQU8sR0FBR0gsT0FBTyxDQUFDSSxTQUFSLENBQWtCLENBQWxCLEVBQXFCSixPQUFPLENBQUNiLE1BQVIsR0FBaUJjLGNBQUtJLE9BQUwsQ0FBYUwsT0FBYixFQUFzQmIsTUFBNUQsSUFBc0UsTUFBdEY7RUFDQSxNQUFNbUIsT0FBTyxHQUFHLE1BQU1DLGlCQUFRQyxPQUFSLEVBQXRCOztFQUNBLE1BQU1DLFdBQVcsR0FBR1IsY0FBS1MsSUFBTCxDQUFVSixPQUFWLEVBQW9CLEdBQUVOLE9BQVEsT0FBOUIsQ0FBcEI7O0VBQ0EsSUFBSTtJQUNGLE9BQU8sTUFBTXhCLGVBQWUsQ0FBQ21DLE9BQWhCLENBQXdCZixPQUF4QixFQUFpQyxZQUFZO01BQ3hELE1BQU1nQixPQUFPLEdBQUcsTUFBTXRDLFlBQUdGLElBQUgsQ0FBUXdCLE9BQVIsQ0FBdEI7TUFDQSxNQUFNO1FBQ0ppQixRQURJO1FBRUpDLGdCQUZJO1FBR0pDLFFBSEk7UUFJSkM7TUFKSSxJQUtGbkIsSUFMSjtNQU1BLElBQUlvQixTQUFTLEdBQUdMLE9BQWhCOztNQUNBLElBQUlDLFFBQUosRUFBYztRQUNaLElBQUksRUFBQyxNQUFNdkMsWUFBR3dCLE1BQUgsQ0FBVWUsUUFBVixDQUFQLENBQUosRUFBZ0M7VUFDOUIsTUFBTSxJQUFJZCxLQUFKLENBQVcseUJBQXdCYyxRQUFTLDBCQUFsQyxHQUNiLHNCQURHLENBQU47UUFFRDs7UUFDRCxJQUFJLENBQUNDLGdCQUFELElBQXFCLENBQUNDLFFBQXRCLElBQWtDLENBQUNDLFdBQXZDLEVBQW9EO1VBQ2xELE1BQU0sSUFBSWpCLEtBQUosQ0FBVSxtRUFDZCw4Q0FESSxDQUFOO1FBRUQ7O1FBQ0QsTUFBTW1CLFlBQVksR0FBRyxNQUFNNUMsWUFBR0YsSUFBSCxDQUFReUMsUUFBUixDQUEzQjs7UUFDQSxNQUFNTSxZQUFZLEdBQUdDLGdCQUFPQyxVQUFQLENBQWtCLE1BQWxCLENBQXJCOztRQUNBRixZQUFZLENBQUNHLE1BQWIsQ0FBb0JQLFFBQXBCO1FBQ0FFLFNBQVMsR0FBRyxDQUFDQSxTQUFELEVBQVlDLFlBQVosRUFBMEJDLFlBQVksQ0FBQ0ksTUFBYixDQUFvQixLQUFwQixDQUExQixFQUFzRGIsSUFBdEQsQ0FBMkQsR0FBM0QsQ0FBWjtNQUNEOztNQUNEekIsZ0JBQUlDLEtBQUosQ0FBVyxpQ0FBZ0NVLE9BQVEsTUFBS3FCLFNBQVUsRUFBbEU7O01BQ0EsSUFBSWpELFNBQVMsQ0FBQ3dELEdBQVYsQ0FBY1AsU0FBZCxDQUFKLEVBQThCO1FBQzVCLE1BQU1RLFVBQVUsR0FBR3hCLGNBQUt5QixPQUFMLENBQWExRCxTQUFTLENBQUMyRCxHQUFWLENBQWNWLFNBQWQsQ0FBYixFQUF1Q2QsT0FBdkMsQ0FBbkI7O1FBQ0EsSUFBSSxNQUFNN0IsWUFBR3dCLE1BQUgsQ0FBVTJCLFVBQVYsQ0FBVixFQUFpQztVQUMvQixPQUFPQSxVQUFQO1FBQ0Q7O1FBQ0R6RCxTQUFTLENBQUM0RCxHQUFWLENBQWNYLFNBQWQ7TUFDRDs7TUFFRCxNQUFNLEtBQUtZLFNBQUwsRUFBTjtNQUNBLE1BQU1DLElBQUksR0FBRyxDQUNYLFlBRFcsRUFFWCxTQUZXLEVBRUEsS0FBS0MsUUFBTCxDQUFjQyxLQUZkLEVBR1gsVUFIVyxFQUdDcEMsT0FIRCxFQUlYLFVBSlcsRUFJQ2EsV0FKRCxFQUtYLElBQUlJLFFBQVEsR0FBRyxDQUNiLE1BRGEsRUFDTEEsUUFESyxFQUViLFdBRmEsRUFFQyxRQUFPQyxnQkFBaUIsRUFGekIsRUFHYixnQkFIYSxFQUdLQyxRQUhMLEVBSWIsWUFKYSxFQUlFLFFBQU9DLFdBQVksRUFKckIsQ0FBSCxHQUtSLEVBTEosQ0FMVyxFQVdYLGtCQVhXLENBQWI7O01BYUEvQixnQkFBSUMsS0FBSixDQUFXLDBDQUF5Q1UsT0FBUSxHQUE1RDs7TUFDQSxNQUFNLEtBQUtxQyxjQUFMLENBQW9CSCxJQUFwQixFQUEyQiwrQ0FBOENsQyxPQUFRLEdBQWpGLENBQU47O01BRUFYLGdCQUFJQyxLQUFKLENBQVcsOENBQTZDdUIsV0FBWSxTQUFRSCxPQUFRLEdBQXBGOztNQUNBLE1BQU0sd0JBQVVHLFdBQVYsRUFBdUJILE9BQXZCLENBQU47TUFDQSxJQUFJNEIsZ0JBQUo7TUFDQSxNQUFNQyxvQkFBb0IsR0FBRyxFQUE3QjtNQUNBLE1BQU1DLFlBQVksR0FBRyxNQUFNOUQsWUFBRytELE9BQUgsQ0FBVy9CLE9BQVgsQ0FBM0I7O01BQ0EsS0FBSyxNQUFNZ0MsUUFBWCxJQUF1QkYsWUFBdkIsRUFBcUM7UUFDbkMsTUFBTUcsUUFBUSxHQUFHdEMsY0FBS1MsSUFBTCxDQUFVSixPQUFWLEVBQW1CZ0MsUUFBbkIsQ0FBakI7O1FBQ0EsSUFBSUEsUUFBUSxLQUFLNUQsYUFBakIsRUFBZ0M7VUFDOUJ3RCxnQkFBZ0IsR0FBR0ssUUFBbkI7UUFDRCxDQUZELE1BRU87VUFDTEosb0JBQW9CLENBQUNLLElBQXJCLENBQTBCbEUsWUFBR0MsTUFBSCxDQUFVZ0UsUUFBVixDQUExQjtRQUNEO01BQ0Y7O01BQ0QsSUFBSTtRQUNGLE1BQU1FLGtCQUFFQyxHQUFGLENBQU1QLG9CQUFOLENBQU47TUFDRCxDQUZELENBRUUsT0FBT1EsR0FBUCxFQUFZLENBQUU7O01BQ2hCLElBQUksQ0FBQ1QsZ0JBQUwsRUFBdUI7UUFDckJqRCxnQkFBSUMsS0FBSixDQUFXLDREQUEyRGtELFlBQWEsRUFBbkY7O1FBQ0EsTUFBTSxJQUFJckMsS0FBSixDQUFXLEdBQUVyQixhQUFjLHdCQUF1QmtCLE9BQVEsWUFBaEQsR0FDYixzREFERyxDQUFOO01BRUQ7O01BQ0QsTUFBTTZCLFVBQVUsR0FBR3hCLGNBQUtTLElBQUwsQ0FBVUosT0FBVixFQUFtQkgsT0FBbkIsQ0FBbkI7O01BQ0FsQixnQkFBSUMsS0FBSixDQUFXLFNBQVFSLGFBQWMsUUFBT3dELGdCQUFpQixxQkFBb0JULFVBQVcsR0FBeEY7O01BQ0EsTUFBTW5ELFlBQUdzRSxFQUFILENBQU1WLGdCQUFOLEVBQXdCVCxVQUF4QixDQUFOO01BQ0F6RCxTQUFTLENBQUM2RSxHQUFWLENBQWM1QixTQUFkLEVBQXlCWCxPQUF6QjtNQUNBLE9BQU9tQixVQUFQO0lBQ0QsQ0EzRVksQ0FBYjtFQTRFRCxDQTdFRCxDQTZFRSxPQUFPakMsQ0FBUCxFQUFVO0lBQ1YsTUFBTWxCLFlBQUdDLE1BQUgsQ0FBVStCLE9BQVYsQ0FBTjtJQUNBLE1BQU1kLENBQU47RUFDRDtBQUNGLENBMUZEOztlQTRGZWIsZSJ9
|
|
157
|
+
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGliL3Rvb2xzL2FhYi11dGlscy5qcyIsIm5hbWVzIjpbIkFBQl9DQUNIRSIsIkxSVSIsIm1heCIsImRpc3Bvc2UiLCJoYXNoIiwiZXh0cmFjdGVkRmlsZXNSb290IiwiZnMiLCJyaW1yYWYiLCJBQUJfQ0FDSEVfR1VBUkQiLCJBc3luY0xvY2siLCJVTklWRVJTQUxfQVBLIiwiYWFiVXRpbHNNZXRob2RzIiwicHJvY2VzcyIsIm9uIiwic2l6ZSIsInBhdGhzIiwidmFsdWVzIiwibG9nIiwiZGVidWciLCJsZW5ndGgiLCJ1dGlsIiwicGx1cmFsaXplIiwiYXBwUGF0aCIsInJpbXJhZlN5bmMiLCJlIiwid2FybiIsIm1lc3NhZ2UiLCJleHRyYWN0VW5pdmVyc2FsQXBrIiwiYWFiUGF0aCIsIm9wdHMiLCJleGlzdHMiLCJFcnJvciIsImFhYk5hbWUiLCJwYXRoIiwiYmFzZW5hbWUiLCJhcGtOYW1lIiwic3Vic3RyaW5nIiwiZXh0bmFtZSIsInRtcFJvb3QiLCJ0ZW1wRGlyIiwib3BlbkRpciIsInRtcEFwa3NQYXRoIiwiam9pbiIsImFjcXVpcmUiLCJhYWJIYXNoIiwia2V5c3RvcmUiLCJrZXlzdG9yZVBhc3N3b3JkIiwia2V5QWxpYXMiLCJrZXlQYXNzd29yZCIsImNhY2hlSGFzaCIsImtleXN0b3JlSGFzaCIsImtleUFsaWFzSGFzaCIsImNyeXB0byIsImNyZWF0ZUhhc2giLCJ1cGRhdGUiLCJkaWdlc3QiLCJoYXMiLCJyZXN1bHRQYXRoIiwicmVzb2x2ZSIsImdldCIsImRlbCIsImluaXRBYXB0MiIsImFyZ3MiLCJiaW5hcmllcyIsImFhcHQyIiwiZXhlY0J1bmRsZXRvb2wiLCJ1bnppcEZpbGUiLCJ1bml2ZXJzYWxBcGtQYXRoIiwiZmlsZURlbGV0aW9uUHJvbWlzZXMiLCJhbGxGaWxlTmFtZXMiLCJyZWFkZGlyIiwiZmlsZU5hbWUiLCJmdWxsUGF0aCIsInB1c2giLCJCIiwiYWxsIiwiaWduIiwibXYiLCJzZXQiXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uIiwic291cmNlcyI6WyJsaWIvdG9vbHMvYWFiLXV0aWxzLmpzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBsb2cgZnJvbSAnLi4vbG9nZ2VyLmpzJztcbmltcG9ydCBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgZnMsIHRlbXBEaXIsIHV0aWwgfSBmcm9tICdAYXBwaXVtL3N1cHBvcnQnO1xuaW1wb3J0IExSVSBmcm9tICdscnUtY2FjaGUnO1xuaW1wb3J0IHsgdW56aXBGaWxlIH0gZnJvbSAnLi4vaGVscGVycy5qcyc7XG5pbXBvcnQgQXN5bmNMb2NrIGZyb20gJ2FzeW5jLWxvY2snO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuXG5jb25zdCBBQUJfQ0FDSEUgPSBuZXcgTFJVKHtcbiAgbWF4OiAxMCxcbiAgZGlzcG9zZTogKGhhc2gsIGV4dHJhY3RlZEZpbGVzUm9vdCkgPT4gZnMucmltcmFmKGV4dHJhY3RlZEZpbGVzUm9vdCksXG59KTtcbmNvbnN0IEFBQl9DQUNIRV9HVUFSRCA9IG5ldyBBc3luY0xvY2soKTtcbmNvbnN0IFVOSVZFUlNBTF9BUEsgPSAndW5pdmVyc2FsLmFwayc7XG5cbmNvbnN0IGFhYlV0aWxzTWV0aG9kcyA9IHt9O1xuXG5wcm9jZXNzLm9uKCdleGl0JywgKCkgPT4ge1xuICBpZiAoIUFBQl9DQUNIRS5zaXplKSB7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcGF0aHMgPSBbLi4uQUFCX0NBQ0hFLnZhbHVlcygpXTtcbiAgbG9nLmRlYnVnKGBQZXJmb3JtaW5nIGNsZWFudXAgb2YgJHtwYXRocy5sZW5ndGh9IGNhY2hlZCAuYWFiIGAgK1xuICAgIHV0aWwucGx1cmFsaXplKCdwYWNrYWdlJywgcGF0aHMubGVuZ3RoKSk7XG4gIGZvciAoY29uc3QgYXBwUGF0aCBvZiBwYXRocykge1xuICAgIHRyeSB7XG4gICAgICAvLyBBc3luY2hyb25vdXMgY2FsbHMgYXJlIG5vdCBzdXBwb3J0ZWQgaW4gb25FeGl0IGhhbmRsZXJcbiAgICAgIGZzLnJpbXJhZlN5bmMoYXBwUGF0aCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgbG9nLndhcm4oZS5tZXNzYWdlKTtcbiAgICB9XG4gIH1cbn0pO1xuXG4vKipcbiAqIEB0eXBlZGVmIHtPYmplY3R9IEFwa0NyZWF0aW9uT3B0aW9uc1xuICogQHByb3BlcnR5IHtzdHJpbmd9IGtleXN0b3JlIFNwZWNpZmllcyB0aGUgcGF0aCB0byB0aGUgZGVwbG95bWVudCBrZXlzdG9yZSB1c2VkXG4gKiB0byBzaWduIHRoZSBBUEtzLiBUaGlzIGZsYWcgaXMgb3B0aW9uYWwuIElmIHlvdSBkb24ndCBpbmNsdWRlIGl0LFxuICogYnVuZGxldG9vbCBhdHRlbXB0cyB0byBzaWduIHlvdXIgQVBLcyB3aXRoIGEgZGVidWcgc2lnbmluZyBrZXkuXG4gKiBJZiB0aGUgLmFwayBoYXMgYmVlbiBhbHJlYWR5IHNpZ25lZCBhbmQgY2FjaGVkIHRoZW4gaXQgaXMgbm90IGdvaW5nIHRvIGJlIHJlc2lnbmVkXG4gKiB1bmxlc3MgYSBkaWZmZXJlbnQga2V5c3RvcmUgb3Iga2V5IGFsaWFzIGlzIHVzZWQuXG4gKiBAcHJvcGVydHkge3N0cmluZ30ga2V5c3RvcmVQYXNzd29yZCBTcGVjaWZpZXMgeW91ciBrZXlzdG9yZeKAmXMgcGFzc3dvcmQuXG4gKiBJdCBpcyBtYW5kYXRvcnkgdG8gcHJvdmlkZSB0aGlzIHZhbHVlIGlmIGBrZXlzdG9yZWAgb25lIGlzIGFzc2lnbmVkXG4gKiBvdGhlcndpc2UgaXQgaXMgZ29pbmcgdG8gYmUgaWdub3JlZC5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBrZXlBbGlhcyBTcGVjaWZpZXMgdGhlIGFsaWFzIG9mIHRoZSBzaWduaW5nIGtleSB5b3Ugd2FudCB0byB1c2UuXG4gKiBJdCBpcyBtYW5kYXRvcnkgdG8gcHJvdmlkZSB0aGlzIHZhbHVlIGlmIGBrZXlzdG9yZWAgb25lIGlzIGFzc2lnbmVkXG4gKiBvdGhlcndpc2UgaXQgaXMgZ29pbmcgdG8gYmUgaWdub3JlZC5cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBrZXlQYXNzd29yZCBTcGVjaWZpZXMgdGhlIHBhc3N3b3JkIGZvciB0aGUgc2lnbmluZyBrZXkuXG4gKiBJdCBpcyBtYW5kYXRvcnkgdG8gcHJvdmlkZSB0aGlzIHZhbHVlIGlmIGBrZXlzdG9yZWAgb25lIGlzIGFzc2lnbmVkXG4gKiBvdGhlcndpc2UgaXQgaXMgZ29pbmcgdG8gYmUgaWdub3JlZC5cbiAqL1xuXG4vKipcbiAqIEJ1aWxkcyBhIHVuaXZlcnNhbCAuYXBrIGZyb20gdGhlIGdpdmVuIC5hYWIgcGFja2FnZS4gU2VlXG4gKiBodHRwczovL2RldmVsb3Blci5hbmRyb2lkLmNvbS9zdHVkaW8vY29tbWFuZC1saW5lL2J1bmRsZXRvb2wjZ2VuZXJhdGVfYXBrc1xuICogZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gYWFiUGF0aCBGdWxsIHBhdGggdG8gdGhlIHNvdXJjZSAuYWFiIHBhY2thZ2VcbiAqIEBwYXJhbSB7QXBrQ3JlYXRpb25PcHRpb25zfSBvcHRzXG4gKiBAcmV0dXJucyBUaGUgcGF0aCB0byB0aGUgcmVzdWx0aW5nIHVuaXZlcnNhbCAuYXBrLiBUaGUgLmFwayBpcyBzdG9yZWQgaW4gdGhlIGludGVybmFsIGNhY2hlXG4gKiBieSBkZWZhdWx0LlxuICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdhcyBhbiBlcnJvciB3aGlsZSBjcmVhdGluZyB0aGUgdW5pdmVyc2FsIC5hcGtcbiAqL1xuYWFiVXRpbHNNZXRob2RzLmV4dHJhY3RVbml2ZXJzYWxBcGsgPSBhc3luYyBmdW5jdGlvbiBleHRyYWN0VW5pdmVyc2FsQXBrIChhYWJQYXRoLCBvcHRzID0ge30pIHtcbiAgaWYgKCFhd2FpdCBmcy5leGlzdHMoYWFiUGF0aCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmaWxlIGF0ICcke2FhYlBhdGh9JyBlaXRoZXIgZG9lcyBub3QgZXhpc3Qgb3IgaXMgbm90IGFjY2Vzc2libGVgKTtcbiAgfVxuXG4gIGNvbnN0IGFhYk5hbWUgPSBwYXRoLmJhc2VuYW1lKGFhYlBhdGgpO1xuICBjb25zdCBhcGtOYW1lID0gYWFiTmFtZS5zdWJzdHJpbmcoMCwgYWFiTmFtZS5sZW5ndGggLSBwYXRoLmV4dG5hbWUoYWFiTmFtZSkubGVuZ3RoKSArICcuYXBrJztcbiAgY29uc3QgdG1wUm9vdCA9IGF3YWl0IHRlbXBEaXIub3BlbkRpcigpO1xuICBjb25zdCB0bXBBcGtzUGF0aCA9IHBhdGguam9pbih0bXBSb290LCBgJHthYWJOYW1lfS5hcGtzYCk7XG4gIHRyeSB7XG4gICAgcmV0dXJuIGF3YWl0IEFBQl9DQUNIRV9HVUFSRC5hY3F1aXJlKGFhYlBhdGgsIGFzeW5jICgpID0+IHtcbiAgICAgIGNvbnN0IGFhYkhhc2ggPSBhd2FpdCBmcy5oYXNoKGFhYlBhdGgpO1xuICAgICAgY29uc3Qge1xuICAgICAgICBrZXlzdG9yZSxcbiAgICAgICAga2V5c3RvcmVQYXNzd29yZCxcbiAgICAgICAga2V5QWxpYXMsXG4gICAgICAgIGtleVBhc3N3b3JkLFxuICAgICAgfSA9IG9wdHM7XG4gICAgICBsZXQgY2FjaGVIYXNoID0gYWFiSGFzaDtcbiAgICAgIGlmIChrZXlzdG9yZSkge1xuICAgICAgICBpZiAoIWF3YWl0IGZzLmV4aXN0cyhrZXlzdG9yZSkpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBrZXlzdG9yZSBmaWxlIGF0ICcke2tleXN0b3JlfScgZWl0aGVyIGRvZXMgbm90IGV4aXN0IGAgK1xuICAgICAgICAgICAgYG9yIGlzIG5vdCBhY2Nlc3NpYmxlYCk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFrZXlzdG9yZVBhc3N3b3JkIHx8ICFrZXlBbGlhcyB8fCAha2V5UGFzc3dvcmQpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0l0IGlzIG1hbmRhdG9yeSB0byBhbHNvIHByb3ZpZGUga2V5c3RvcmUgcGFzc3dvcmQsIGtleSBhbGlhcywgJyArXG4gICAgICAgICAgICAnYW5kIGtleSBwYXNzd29yZCBpZiB0aGUga2V5c3RvcmUgcGF0aCBpcyBzZXQnKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBrZXlzdG9yZUhhc2ggPSBhd2FpdCBmcy5oYXNoKGtleXN0b3JlKTtcbiAgICAgICAgY29uc3Qga2V5QWxpYXNIYXNoID0gY3J5cHRvLmNyZWF0ZUhhc2goJ3NoYTEnKTtcbiAgICAgICAga2V5QWxpYXNIYXNoLnVwZGF0ZShrZXlBbGlhcyk7XG4gICAgICAgIGNhY2hlSGFzaCA9IFtjYWNoZUhhc2gsIGtleXN0b3JlSGFzaCwga2V5QWxpYXNIYXNoLmRpZ2VzdCgnaGV4JyldLmpvaW4oJzonKTtcbiAgICAgIH1cbiAgICAgIGxvZy5kZWJ1ZyhgQ2FsY3VsYXRlZCB0aGUgY2FjaGUga2V5IGZvciAnJHthYWJQYXRofSc6ICR7Y2FjaGVIYXNofWApO1xuICAgICAgaWYgKEFBQl9DQUNIRS5oYXMoY2FjaGVIYXNoKSkge1xuICAgICAgICBjb25zdCByZXN1bHRQYXRoID0gcGF0aC5yZXNvbHZlKEFBQl9DQUNIRS5nZXQoY2FjaGVIYXNoKSwgYXBrTmFtZSk7XG4gICAgICAgIGlmIChhd2FpdCBmcy5leGlzdHMocmVzdWx0UGF0aCkpIHtcbiAgICAgICAgICByZXR1cm4gcmVzdWx0UGF0aDtcbiAgICAgICAgfVxuICAgICAgICBBQUJfQ0FDSEUuZGVsKGNhY2hlSGFzaCk7XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IHRoaXMuaW5pdEFhcHQyKCk7XG4gICAgICBjb25zdCBhcmdzID0gW1xuICAgICAgICAnYnVpbGQtYXBrcycsXG4gICAgICAgICctLWFhcHQyJywgdGhpcy5iaW5hcmllcy5hYXB0MixcbiAgICAgICAgJy0tYnVuZGxlJywgYWFiUGF0aCxcbiAgICAgICAgJy0tb3V0cHV0JywgdG1wQXBrc1BhdGgsXG4gICAgICAgIC4uLihrZXlzdG9yZSA/IFtcbiAgICAgICAgICAnLS1rcycsIGtleXN0b3JlLFxuICAgICAgICAgICctLWtzLXBhc3MnLCBgcGFzczoke2tleXN0b3JlUGFzc3dvcmR9YCxcbiAgICAgICAgICAnLS1rcy1rZXktYWxpYXMnLCBrZXlBbGlhcyxcbiAgICAgICAgICAnLS1rZXktcGFzcycsIGBwYXNzOiR7a2V5UGFzc3dvcmR9YCxcbiAgICAgICAgXSA6IFtdKSxcbiAgICAgICAgJy0tbW9kZT11bml2ZXJzYWwnXG4gICAgICBdO1xuICAgICAgbG9nLmRlYnVnKGBQcmVwYXJpbmcgdW5pdmVyc2FsIC5hcGtzIGJ1bmRsZSBmcm9tICcke2FhYlBhdGh9J2ApO1xuICAgICAgYXdhaXQgdGhpcy5leGVjQnVuZGxldG9vbChhcmdzLCBgQ2Fubm90IGJ1aWxkIGEgdW5pdmVyc2FsIC5hcGtzIGJ1bmRsZSBmcm9tICcke2FhYlBhdGh9J2ApO1xuXG4gICAgICBsb2cuZGVidWcoYFVucGFja2luZyB1bml2ZXJzYWwgYXBwbGljYXRpb24gYnVuZGxlIGF0ICcke3RtcEFwa3NQYXRofScgdG8gJyR7dG1wUm9vdH0nYCk7XG4gICAgICBhd2FpdCB1bnppcEZpbGUodG1wQXBrc1BhdGgsIHRtcFJvb3QpO1xuICAgICAgbGV0IHVuaXZlcnNhbEFwa1BhdGg7XG4gICAgICBjb25zdCBmaWxlRGVsZXRpb25Qcm9taXNlcyA9IFtdO1xuICAgICAgY29uc3QgYWxsRmlsZU5hbWVzID0gYXdhaXQgZnMucmVhZGRpcih0bXBSb290KTtcbiAgICAgIGZvciAoY29uc3QgZmlsZU5hbWUgb2YgYWxsRmlsZU5hbWVzKSB7XG4gICAgICAgIGNvbnN0IGZ1bGxQYXRoID0gcGF0aC5qb2luKHRtcFJvb3QsIGZpbGVOYW1lKTtcbiAgICAgICAgaWYgKGZpbGVOYW1lID09PSBVTklWRVJTQUxfQVBLKSB7XG4gICAgICAgICAgdW5pdmVyc2FsQXBrUGF0aCA9IGZ1bGxQYXRoO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGZpbGVEZWxldGlvblByb21pc2VzLnB1c2goZnMucmltcmFmKGZ1bGxQYXRoKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IEIuYWxsKGZpbGVEZWxldGlvblByb21pc2VzKTtcbiAgICAgIH0gY2F0Y2ggKGlnbikge31cbiAgICAgIGlmICghdW5pdmVyc2FsQXBrUGF0aCkge1xuICAgICAgICBsb2cuZGVidWcoYFRoZSBmb2xsb3dpbmcgaXRlbXMgd2VyZSBleHRyYWN0ZWQgZnJvbSB0aGUgLmFhYiBidW5kbGU6ICR7YWxsRmlsZU5hbWVzfWApO1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7VU5JVkVSU0FMX0FQS30gY2Fubm90IGJlIGZvdW5kIGluICcke2FhYlBhdGh9JyBidW5kbGUuIGAgK1xuICAgICAgICAgIGBEb2VzIHRoZSBhcmNoaXZlIGNvbnRhaW4gYSB2YWxpZCBhcHBsaWNhdGlvbiBidW5kbGU/YCk7XG4gICAgICB9XG4gICAgICBjb25zdCByZXN1bHRQYXRoID0gcGF0aC5qb2luKHRtcFJvb3QsIGFwa05hbWUpO1xuICAgICAgbG9nLmRlYnVnKGBGb3VuZCAke1VOSVZFUlNBTF9BUEt9IGF0ICcke3VuaXZlcnNhbEFwa1BhdGh9Jy4gQ2FjaGluZyBpdCB0byAnJHtyZXN1bHRQYXRofSdgKTtcbiAgICAgIGF3YWl0IGZzLm12KHVuaXZlcnNhbEFwa1BhdGgsIHJlc3VsdFBhdGgpO1xuICAgICAgQUFCX0NBQ0hFLnNldChjYWNoZUhhc2gsIHRtcFJvb3QpO1xuICAgICAgcmV0dXJuIHJlc3VsdFBhdGg7XG4gICAgfSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBhd2FpdCBmcy5yaW1yYWYodG1wUm9vdCk7XG4gICAgdGhyb3cgZTtcbiAgfVxufTtcblxuZXhwb3J0IGRlZmF1bHQgYWFiVXRpbHNNZXRob2RzO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU1BLFNBQVMsR0FBRyxJQUFJQyxpQkFBSixDQUFRO0VBQ3hCQyxHQUFHLEVBQUUsRUFEbUI7RUFFeEJDLE9BQU8sRUFBRSxDQUFD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
|