@riddance/host 0.0.4 → 0.0.6

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/host/context.js CHANGED
@@ -34,8 +34,7 @@ export function createContext(clientInfo, loggers, eventTransport, timeouts, out
34
34
  const innerController = new AbortController();
35
35
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
36
36
  const logTransport = loggers.length === 1 ? loggers[0] : new LogMulticaster(loggers);
37
- const logger = makeLogger(logTransport, meta?.config?.minimumLogLevel, outerController.signal);
38
- logger.enrichReserved({
37
+ const logger = makeLogger(logTransport, meta?.config?.minimumLogLevel, outerController.signal).enrichReserved({
39
38
  operationId: clientInfo.operationId,
40
39
  client: {
41
40
  id: clientInfo.clientId,
@@ -100,4 +99,4 @@ process.on('uncaughtException', err => {
100
99
  process.on('unhandledRejection', reason => {
101
100
  globalLogger?.fatal('Unhandled rejection.', reason, undefined);
102
101
  });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBNkN6QyxNQUFNLGNBQWM7SUFJaEIsWUFBWSxVQUEwQjtRQUh0Qyw2Q0FBMkI7UUFJdkIsdUJBQUEsSUFBSSw4QkFBZSxVQUFVLE1BQUEsQ0FBQTtRQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLGdCQUFnQixDQUFBO0lBQzlGLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBbUIsRUFBRSxNQUFtQjtRQUNoRCxNQUFNLFFBQVEsR0FBRyx1QkFBQSxJQUFJLGtDQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDM0YsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixPQUFNO1NBQ1Q7UUFDRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUE2QixDQUFBO0lBQzVELENBQUM7Q0FDSjs7QUFPRCxNQUFNLFVBQVUsYUFBYSxDQUN6QixVQUFzQixFQUN0QixPQUF1QixFQUN2QixjQUE4QixFQUM5QixRQUEyQyxFQUMzQyxlQUFnQyxFQUNoQyxJQUFlLEVBQ2YsV0FBcUMsRUFDckMsR0FBOEI7SUFPOUIsTUFBTSxPQUFPLEdBQ1QsQ0FBQyxR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QUFFLFNBQVMsQ0FBQyxDQUFBO0FBQ2xFLENBQUMsQ0FBQyxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJvcnRTaWduYWwsIENvbnRleHQsIEVudmlyb25tZW50LCBKc29uLCBMb2dnZXIgfSBmcm9tICcuLi9jb250ZXh0LmpzJ1xyXG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIgfSBmcm9tICcuL2VtaXR0ZXIuanMnXHJcbmltcG9ydCB7IG1ha2VMb2dnZXIgfSBmcm9tICcuL2xvZ2dpbmcuanMnXHJcbmltcG9ydCB7IE1ldGFkYXRhIH0gZnJvbSAnLi9yZWdpc3RyeS5qcydcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50SW5mbyB7XHJcbiAgICByZWFkb25seSBvcGVyYXRpb25JZD86IHN0cmluZ1xyXG4gICAgcmVhZG9ubHkgY2xpZW50SWQ/OiBzdHJpbmdcclxuICAgIHJlYWRvbmx5IGNsaWVudElwPzogc3RyaW5nXHJcbiAgICByZWFkb25seSBjbGllbnRQb3J0PzogbnVtYmVyXHJcbiAgICByZWFkb25seSB1c2VyQWdlbnQ/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFdmVudE1ldGFkYXRhIHtcclxuICAgIHRvcGljOiBzdHJpbmdcclxuICAgIHR5cGU6IHN0cmluZ1xyXG4gICAgc3ViamVjdDogc3RyaW5nXHJcbiAgICBpZD86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEJ1ZmZlcmVkRXZlbnQge1xyXG4gICAgZXZlbnRUaW1lOiBEYXRlXHJcbiAgICBtZXRhOiBPbWl0PEV2ZW50TWV0YWRhdGEsICd0b3BpYyc+XHJcbiAgICBpZHM6IENsaWVudEluZm9cclxuICAgIGpzb24/OiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFdmVudFRyYW5zcG9ydCB7XHJcbiAgICByZWFkb25seSBwdWJsaXNoUmF0ZTogbnVtYmVyXHJcbiAgICBzZW5kRXZlbnRzKHRvcGljOiBzdHJpbmcsIGV2ZW50czogQnVmZmVyZWRFdmVudFtdLCBzaWduYWw6IEFib3J0U2lnbmFsKTogUHJvbWlzZTx2b2lkPlxyXG59XHJcblxyXG5leHBvcnQgdHlwZSBMb2dMZXZlbCA9ICd0cmFjZScgfCAnZGVidWcnIHwgJ2luZm8nIHwgJ3dhcm5pbmcnIHwgJ2Vycm9yJyB8ICdmYXRhbCdcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9nRW50cnkge1xyXG4gICAgcmVhZG9ubHkgbGV2ZWw6IExvZ0xldmVsXHJcbiAgICByZWFkb25seSB0aW1lc3RhbXA6IG51bWJlclxyXG4gICAgcmVhZG9ubHkgbWVzc2FnZTogc3RyaW5nXHJcbiAgICByZWFkb25seSBlcnJvcjogdW5rbm93blxyXG4gICAgcmVhZG9ubHkganNvbjogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgTG9nVHJhbnNwb3J0IHtcclxuICAgIHJlYWRvbmx5IHB1Ymxpc2hSYXRlPzogbnVtYmVyXHJcbiAgICBzZW5kRW50cmllcyhlbnRyaWVzOiBMb2dFbnRyeVtdLCBzaWduYWw6IEFib3J0U2lnbmFsKTogUHJvbWlzZTx2b2lkPiB8IHVuZGVmaW5lZFxyXG59XHJcblxyXG5jbGFzcyBMb2dNdWx0aWNhc3RlciBpbXBsZW1lbnRzIExvZ1RyYW5zcG9ydCB7XHJcbiAgICAjdHJhbnNwb3J0czogTG9nVHJhbnNwb3J0W11cclxuICAgIHJlYWRvbmx5IHB1Ymxpc2hSYXRlOiBudW1iZXJcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcih0cmFuc3BvcnRzOiBMb2dUcmFuc3BvcnRbXSkge1xyXG4gICAgICAgIHRoaXMuI3RyYW5zcG9ydHMgPSB0cmFuc3BvcnRzXHJcbiAgICAgICAgdGhpcy5wdWJsaXNoUmF0ZSA9IHRyYW5zcG9ydHMubWFwKHQgPT4gdC5wdWJsaXNoUmF0ZSkuc29ydCgpWzBdID8/IE51bWJlci5NQVhfU0FGRV9JTlRFR0VSXHJcbiAgICB9XHJcblxyXG4gICAgc2VuZEVudHJpZXMoZW50cmllczogTG9nRW50cnlbXSwgc2lnbmFsOiBBYm9ydFNpZ25hbCkge1xyXG4gICAgICAgIGNvbnN0IHByb21pc2VzID0gdGhpcy4jdHJhbnNwb3J0cy5tYXAodCA9PiB0LnNlbmRFbnRyaWVzKGVudHJpZXMsIHNpZ25hbCkpLmZpbHRlcihwID0+ICEhcClcclxuICAgICAgICBpZiAocHJvbWlzZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwocHJvbWlzZXMpIGFzIHVua25vd24gYXMgUHJvbWlzZTx2b2lkPlxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJvb3RMb2dnZXIgZXh0ZW5kcyBMb2dnZXIge1xyXG4gICAgZW5yaWNoUmVzZXJ2ZWQoZmllbGRzOiBvYmplY3QpOiBSb290TG9nZ2VyXHJcbiAgICBmbHVzaCgpOiBQcm9taXNlPHZvaWQ+XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVDb250ZXh0KFxyXG4gICAgY2xpZW50SW5mbzogQ2xpZW50SW5mbyxcclxuICAgIGxvZ2dlcnM6IExvZ1RyYW5zcG9ydFtdLFxyXG4gICAgZXZlbnRUcmFuc3BvcnQ6IEV2ZW50VHJhbnNwb3J0LFxyXG4gICAgdGltZW91dHM6IHsgZGVmYXVsdDogbnVtYmVyOyBjYXA/OiBudW1iZXIgfSxcclxuICAgIG91dGVyQ29udHJvbGxlcjogQWJvcnRDb250cm9sbGVyLFxyXG4gICAgbWV0YT86IE1ldGFkYXRhLFxyXG4gICAgZW52aXJvbm1lbnQ/OiBFbnZpcm9ubWVudCB8IHVuZGVmaW5lZCxcclxuICAgIG5vdz86ICgoKSA9PiBEYXRlKSB8IHVuZGVmaW5lZCxcclxuKToge1xyXG4gICAgbG9nOiBSb290TG9nZ2VyXHJcbiAgICBjb250ZXh0OiBPbWl0PENvbnRleHQsICdsb2cnPlxyXG4gICAgc3VjY2VzczogKCkgPT4gUHJvbWlzZTx1bmtub3duPlxyXG4gICAgZmx1c2g6ICgpID0+IFByb21pc2U8dm9pZD5cclxufSB7XHJcbiAgICBjb25zdCB0aW1lb3V0ID1cclxuICAgICAgICAodGltZW91dHMuY2FwXHJcbiAgICAgICAgICAgID8gTWF0aC5taW4obWV0YT8uY29uZmlnPy50aW1lb3V0ID8/IHRpbWVvdXRzLmRlZmF1bHQsIHRpbWVvdXRzLmNhcClcclxuICAgICAgICAgICAgOiBtZXRhPy5jb25maWc/LnRpbWVvdXQgPz8gdGltZW91dHMuZGVmYXVsdCkgKiAxMDAwXHJcbiAgICBjb25zdCBpbm5lckNvbnRyb2xsZXIgPSBuZXcgQWJvcnRDb250cm9sbGVyKClcclxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXHJcbiAgICBjb25zdCBsb2dUcmFuc3BvcnQgPSBsb2dnZXJzLmxlbmd0aCA9PT0gMSA/IGxvZ2dlcnNbMF0hIDogbmV3IExvZ011bHRpY2FzdGVyKGxvZ2dlcnMpXHJcbiAgICBjb25zdCBsb2dnZXIgPSBtYWtlTG9nZ2VyKFxyXG4gICAgICAgIGxvZ1RyYW5zcG9ydCxcclxuICAgICAgICBtZXRhPy5jb25maWc/Lm1pbmltdW1Mb2dMZXZlbCxcclxuICAgICAgICBvdXRlckNvbnRyb2xsZXIuc2lnbmFsIGFzIEFib3J0U2lnbmFsLFxyXG4gICAgKVxyXG4gICAgbG9nZ2VyLmVucmljaFJlc2VydmVkKHtcclxuICAgICAgICBvcGVyYXRpb25JZDogY2xpZW50SW5mby5vcGVyYXRpb25JZCxcclxuICAgICAgICBjbGllbnQ6IHtcclxuICAgICAgICAgICAgaWQ6IGNsaWVudEluZm8uY2xpZW50SWQsXHJcbiAgICAgICAgICAgIGlwOiBjbGllbnRJbmZvLmNsaWVudElwLFxyXG4gICAgICAgICAgICBwb3J0OiBjbGllbnRJbmZvLmNsaWVudFBvcnQsXHJcbiAgICAgICAgICAgIHVzZXJBZ2VudDogY2xpZW50SW5mby51c2VyQWdlbnQsXHJcbiAgICAgICAgfSxcclxuICAgIH0pXHJcbiAgICBnbG9iYWxMb2dnZXIgPSBsb2dnZXJcclxuICAgIGNvbnN0IGVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKFxyXG4gICAgICAgIGV2ZW50VHJhbnNwb3J0LFxyXG4gICAgICAgIGxvZ2dlcixcclxuICAgICAgICBjbGllbnRJbmZvLFxyXG4gICAgICAgIHRpbWVvdXQsXHJcbiAgICAgICAgb3V0ZXJDb250cm9sbGVyLnNpZ25hbCBhcyBBYm9ydFNpZ25hbCxcclxuICAgIClcclxuICAgIGNvbnN0IHN1Y2Nlc3NIYW5kbGVyczogKCgpID0+IFByb21pc2U8dm9pZD4gfCB2b2lkKVtdID0gW11cclxuICAgIGNvbnN0IGN0eCA9IHtcclxuICAgICAgICBlbnY6IGVudmlyb25tZW50ID8/IChwcm9jZXNzLmVudiBhcyBFbnZpcm9ubWVudCksXHJcbiAgICAgICAgc2lnbmFsOiBpbm5lckNvbnRyb2xsZXIuc2lnbmFsIGFzIEFib3J0U2lnbmFsLFxyXG4gICAgICAgIG5vdzogbm93ID8/ICgoKSA9PiBuZXcgRGF0ZSgpKSxcclxuICAgICAgICBvcGVyYXRpb25JZDogY2xpZW50SW5mby5vcGVyYXRpb25JZCxcclxuICAgICAgICBjbGllbnQ6IHtcclxuICAgICAgICAgICAgaWQ6IGNsaWVudEluZm8uY2xpZW50SWQsXHJcbiAgICAgICAgICAgIGlwOiBjbGllbnRJbmZvLmNsaWVudElwLFxyXG4gICAgICAgICAgICBwb3J0OiBjbGllbnRJbmZvLmNsaWVudFBvcnQsXHJcbiAgICAgICAgICAgIHVzZXJBZ2VudDogY2xpZW50SW5mby51c2VyQWdlbnQsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBtZXRhOiBtZXRhXHJcbiAgICAgICAgICAgID8ge1xyXG4gICAgICAgICAgICAgICAgICBwYWNrYWdlTmFtZTogbWV0YS5wYWNrYWdlTmFtZSxcclxuICAgICAgICAgICAgICAgICAgZmlsZU5hbWU6IG1ldGEuZmlsZU5hbWUsXHJcbiAgICAgICAgICAgICAgICAgIHJldmlzaW9uOiBtZXRhLnJldmlzaW9uLFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgOiB1bmRlZmluZWQsXHJcbiAgICAgICAgZW1pdDogKHRvcGljOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgc3ViamVjdDogc3RyaW5nLCBkYXRhPzogSnNvbiwgbWVzc2FnZUlkPzogc3RyaW5nKSA9PlxyXG4gICAgICAgICAgICBlbWl0dGVyLmVtaXQoeyB0b3BpYywgdHlwZSwgc3ViamVjdCwgaWQ6IG1lc3NhZ2VJZCB9LCBkYXRhKSxcclxuICAgICAgICBldmVudEJhcnJpZXI6ICgpID0+IGVtaXR0ZXIuZmx1c2goKSxcclxuICAgICAgICBvblN1Y2Nlc3M6IChmbjogKCkgPT4gUHJvbWlzZTx2b2lkPiB8IHZvaWQpID0+IHN1Y2Nlc3NIYW5kbGVycy5wdXNoKGZuKSxcclxuICAgIH1cclxuICAgIGNvbnN0IHRpbWVvdXRIYW5kbGUgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBsb2dnZXIuZXJyb3IoJ1RpbWVvdXQuJywgdW5kZWZpbmVkLCB1bmRlZmluZWQpXHJcbiAgICAgICAgaW5uZXJDb250cm9sbGVyLmFib3J0KClcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdm9pZFxyXG4gICAgICAgIHZvaWQgbG9nZ2VyLmZsdXNoKClcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdm9pZFxyXG4gICAgICAgIHZvaWQgZW1pdHRlci5mbHVzaCgpXHJcbiAgICB9LCB0aW1lb3V0KVxyXG4gICAgY29uc3QgZmx1c2hIYW5kbGUgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBsb2dnZXIuZXJyb3IoJ0Fib3J0aW5nIGZsdXNoLicsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKVxyXG4gICAgICAgIG91dGVyQ29udHJvbGxlci5hYm9ydCgpXHJcbiAgICB9LCB0aW1lb3V0ICsgMTUwMDApXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGxvZzogbG9nZ2VyLFxyXG4gICAgICAgIGNvbnRleHQ6IGN0eCxcclxuICAgICAgICBzdWNjZXNzOiAoKSA9PiBQcm9taXNlLmFsbChzdWNjZXNzSGFuZGxlcnMubWFwKGZuID0+IGZuKCkpKSxcclxuICAgICAgICBmbHVzaDogYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dEhhbmRsZSlcclxuICAgICAgICAgICAgYXdhaXQgZW1pdHRlci5mbHVzaCgpXHJcbiAgICAgICAgICAgIGF3YWl0IGxvZ2dlci5mbHVzaCgpXHJcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChmbHVzaEhhbmRsZSlcclxuICAgICAgICB9LFxyXG4gICAgfVxyXG59XHJcblxyXG5sZXQgZ2xvYmFsTG9nZ2VyOiBMb2dnZXIgfCB1bmRlZmluZWRcclxuXHJcbnByb2Nlc3Mub24oJ3VuY2F1Z2h0RXhjZXB0aW9uJywgZXJyID0+IHtcclxuICAgIGdsb2JhbExvZ2dlcj8uZmF0YWwoJ1VuY2F1Z2h0IGV4Y2VwdGlvbi4nLCBlcnIsIHVuZGVmaW5lZClcclxufSlcclxucHJvY2Vzcy5vbigndW5oYW5kbGVkUmVqZWN0aW9uJywgcmVhc29uID0+IHtcclxuICAgIGdsb2JhbExvZ2dlcj8uZmF0YWwoJ1VuaGFuZGxlZCByZWplY3Rpb24uJywgcmVhc29uLCB1bmRlZmluZWQpXHJcbn0pXHJcbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUMzQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFBO0FBNkN6QyxNQUFNLGNBQWM7SUFJaEIsWUFBWSxVQUEwQjtRQUh0Qyw2Q0FBMkI7UUFJdkIsdUJBQUEsSUFBSSw4QkFBZSxVQUFVLE1BQUEsQ0FBQTtRQUM3QixJQUFJLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLGdCQUFnQixDQUFBO0lBQzlGLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBbUIsRUFBRSxNQUFtQjtRQUNoRCxNQUFNLFFBQVEsR0FBRyx1QkFBQSxJQUFJLGtDQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDM0YsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixPQUFNO1NBQ1Q7UUFDRCxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUE2QixDQUFBO0lBQzVELENBQUM7Q0FDSjs7QUFPRCxNQUFNLFVBQVUsYUFBYSxDQUN6QixVQUFzQixFQUN0QixPQUF1QixFQUN2QixjQUE4QixFQUM5QixRQUEyQyxFQUMzQyxlQUFnQyxFQUNoQyxJQUFlLEVBQ2YsV0FBcUMsRUFDckMsR0FBOEI7SUFPOUIsTUFBTSxPQUFPLEdBQ1QsQ0FBQyxR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QUE7QUFDbEUsQ0FBQyxDQUFDLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYm9ydFNpZ25hbCwgQ29udGV4dCwgRW52aXJvbm1lbnQsIEpzb24sIExvZ2dlciB9IGZyb20gJy4uL2NvbnRleHQuanMnXHJcbmltcG9ydCB7IEV2ZW50RW1pdHRlciB9IGZyb20gJy4vZW1pdHRlci5qcydcclxuaW1wb3J0IHsgbWFrZUxvZ2dlciB9IGZyb20gJy4vbG9nZ2luZy5qcydcclxuaW1wb3J0IHsgTWV0YWRhdGEgfSBmcm9tICcuL3JlZ2lzdHJ5LmpzJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBDbGllbnRJbmZvIHtcclxuICAgIHJlYWRvbmx5IG9wZXJhdGlvbklkPzogc3RyaW5nXHJcbiAgICByZWFkb25seSBjbGllbnRJZD86IHN0cmluZ1xyXG4gICAgcmVhZG9ubHkgY2xpZW50SXA/OiBzdHJpbmdcclxuICAgIHJlYWRvbmx5IGNsaWVudFBvcnQ/OiBudW1iZXJcclxuICAgIHJlYWRvbmx5IHVzZXJBZ2VudD86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50TWV0YWRhdGEge1xyXG4gICAgdG9waWM6IHN0cmluZ1xyXG4gICAgdHlwZTogc3RyaW5nXHJcbiAgICBzdWJqZWN0OiBzdHJpbmdcclxuICAgIGlkPzogc3RyaW5nXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQnVmZmVyZWRFdmVudCB7XHJcbiAgICBldmVudFRpbWU6IERhdGVcclxuICAgIG1ldGE6IE9taXQ8RXZlbnRNZXRhZGF0YSwgJ3RvcGljJz5cclxuICAgIGlkczogQ2xpZW50SW5mb1xyXG4gICAganNvbj86IHN0cmluZ1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50VHJhbnNwb3J0IHtcclxuICAgIHJlYWRvbmx5IHB1Ymxpc2hSYXRlOiBudW1iZXJcclxuICAgIHNlbmRFdmVudHModG9waWM6IHN0cmluZywgZXZlbnRzOiBCdWZmZXJlZEV2ZW50W10sIHNpZ25hbDogQWJvcnRTaWduYWwpOiBQcm9taXNlPHZvaWQ+XHJcbn1cclxuXHJcbmV4cG9ydCB0eXBlIExvZ0xldmVsID0gJ3RyYWNlJyB8ICdkZWJ1ZycgfCAnaW5mbycgfCAnd2FybmluZycgfCAnZXJyb3InIHwgJ2ZhdGFsJ1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMb2dFbnRyeSB7XHJcbiAgICByZWFkb25seSBsZXZlbDogTG9nTGV2ZWxcclxuICAgIHJlYWRvbmx5IHRpbWVzdGFtcDogbnVtYmVyXHJcbiAgICByZWFkb25seSBtZXNzYWdlOiBzdHJpbmdcclxuICAgIHJlYWRvbmx5IGVycm9yOiB1bmtub3duXHJcbiAgICByZWFkb25seSBqc29uOiBzdHJpbmdcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBMb2dUcmFuc3BvcnQge1xyXG4gICAgcmVhZG9ubHkgcHVibGlzaFJhdGU/OiBudW1iZXJcclxuICAgIHNlbmRFbnRyaWVzKGVudHJpZXM6IExvZ0VudHJ5W10sIHNpZ25hbDogQWJvcnRTaWduYWwpOiBQcm9taXNlPHZvaWQ+IHwgdW5kZWZpbmVkXHJcbn1cclxuXHJcbmNsYXNzIExvZ011bHRpY2FzdGVyIGltcGxlbWVudHMgTG9nVHJhbnNwb3J0IHtcclxuICAgICN0cmFuc3BvcnRzOiBMb2dUcmFuc3BvcnRbXVxyXG4gICAgcmVhZG9ubHkgcHVibGlzaFJhdGU6IG51bWJlclxyXG5cclxuICAgIGNvbnN0cnVjdG9yKHRyYW5zcG9ydHM6IExvZ1RyYW5zcG9ydFtdKSB7XHJcbiAgICAgICAgdGhpcy4jdHJhbnNwb3J0cyA9IHRyYW5zcG9ydHNcclxuICAgICAgICB0aGlzLnB1Ymxpc2hSYXRlID0gdHJhbnNwb3J0cy5tYXAodCA9PiB0LnB1Ymxpc2hSYXRlKS5zb3J0KClbMF0gPz8gTnVtYmVyLk1BWF9TQUZFX0lOVEVHRVJcclxuICAgIH1cclxuXHJcbiAgICBzZW5kRW50cmllcyhlbnRyaWVzOiBMb2dFbnRyeVtdLCBzaWduYWw6IEFib3J0U2lnbmFsKSB7XHJcbiAgICAgICAgY29uc3QgcHJvbWlzZXMgPSB0aGlzLiN0cmFuc3BvcnRzLm1hcCh0ID0+IHQuc2VuZEVudHJpZXMoZW50cmllcywgc2lnbmFsKSkuZmlsdGVyKHAgPT4gISFwKVxyXG4gICAgICAgIGlmIChwcm9taXNlcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChwcm9taXNlcykgYXMgdW5rbm93biBhcyBQcm9taXNlPHZvaWQ+XHJcbiAgICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUm9vdExvZ2dlciBleHRlbmRzIExvZ2dlciB7XHJcbiAgICBlbnJpY2hSZXNlcnZlZChmaWVsZHM6IG9iamVjdCk6IFJvb3RMb2dnZXJcclxuICAgIGZsdXNoKCk6IFByb21pc2U8dm9pZD5cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUNvbnRleHQoXHJcbiAgICBjbGllbnRJbmZvOiBDbGllbnRJbmZvLFxyXG4gICAgbG9nZ2VyczogTG9nVHJhbnNwb3J0W10sXHJcbiAgICBldmVudFRyYW5zcG9ydDogRXZlbnRUcmFuc3BvcnQsXHJcbiAgICB0aW1lb3V0czogeyBkZWZhdWx0OiBudW1iZXI7IGNhcD86IG51bWJlciB9LFxyXG4gICAgb3V0ZXJDb250cm9sbGVyOiBBYm9ydENvbnRyb2xsZXIsXHJcbiAgICBtZXRhPzogTWV0YWRhdGEsXHJcbiAgICBlbnZpcm9ubWVudD86IEVudmlyb25tZW50IHwgdW5kZWZpbmVkLFxyXG4gICAgbm93PzogKCgpID0+IERhdGUpIHwgdW5kZWZpbmVkLFxyXG4pOiB7XHJcbiAgICBsb2c6IFJvb3RMb2dnZXJcclxuICAgIGNvbnRleHQ6IE9taXQ8Q29udGV4dCwgJ2xvZyc+XHJcbiAgICBzdWNjZXNzOiAoKSA9PiBQcm9taXNlPHVua25vd24+XHJcbiAgICBmbHVzaDogKCkgPT4gUHJvbWlzZTx2b2lkPlxyXG59IHtcclxuICAgIGNvbnN0IHRpbWVvdXQgPVxyXG4gICAgICAgICh0aW1lb3V0cy5jYXBcclxuICAgICAgICAgICAgPyBNYXRoLm1pbihtZXRhPy5jb25maWc/LnRpbWVvdXQgPz8gdGltZW91dHMuZGVmYXVsdCwgdGltZW91dHMuY2FwKVxyXG4gICAgICAgICAgICA6IG1ldGE/LmNvbmZpZz8udGltZW91dCA/PyB0aW1lb3V0cy5kZWZhdWx0KSAqIDEwMDBcclxuICAgIGNvbnN0IGlubmVyQ29udHJvbGxlciA9IG5ldyBBYm9ydENvbnRyb2xsZXIoKVxyXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1ub24tbnVsbC1hc3NlcnRpb25cclxuICAgIGNvbnN0IGxvZ1RyYW5zcG9ydCA9IGxvZ2dlcnMubGVuZ3RoID09PSAxID8gbG9nZ2Vyc1swXSEgOiBuZXcgTG9nTXVsdGljYXN0ZXIobG9nZ2VycylcclxuICAgIGNvbnN0IGxvZ2dlciA9IG1ha2VMb2dnZXIoXHJcbiAgICAgICAgbG9nVHJhbnNwb3J0LFxyXG4gICAgICAgIG1ldGE/LmNvbmZpZz8ubWluaW11bUxvZ0xldmVsLFxyXG4gICAgICAgIG91dGVyQ29udHJvbGxlci5zaWduYWwgYXMgQWJvcnRTaWduYWwsXHJcbiAgICApLmVucmljaFJlc2VydmVkKHtcclxuICAgICAgICBvcGVyYXRpb25JZDogY2xpZW50SW5mby5vcGVyYXRpb25JZCxcclxuICAgICAgICBjbGllbnQ6IHtcclxuICAgICAgICAgICAgaWQ6IGNsaWVudEluZm8uY2xpZW50SWQsXHJcbiAgICAgICAgICAgIGlwOiBjbGllbnRJbmZvLmNsaWVudElwLFxyXG4gICAgICAgICAgICBwb3J0OiBjbGllbnRJbmZvLmNsaWVudFBvcnQsXHJcbiAgICAgICAgICAgIHVzZXJBZ2VudDogY2xpZW50SW5mby51c2VyQWdlbnQsXHJcbiAgICAgICAgfSxcclxuICAgIH0pXHJcbiAgICBnbG9iYWxMb2dnZXIgPSBsb2dnZXJcclxuICAgIGNvbnN0IGVtaXR0ZXIgPSBuZXcgRXZlbnRFbWl0dGVyKFxyXG4gICAgICAgIGV2ZW50VHJhbnNwb3J0LFxyXG4gICAgICAgIGxvZ2dlcixcclxuICAgICAgICBjbGllbnRJbmZvLFxyXG4gICAgICAgIHRpbWVvdXQsXHJcbiAgICAgICAgb3V0ZXJDb250cm9sbGVyLnNpZ25hbCBhcyBBYm9ydFNpZ25hbCxcclxuICAgIClcclxuICAgIGNvbnN0IHN1Y2Nlc3NIYW5kbGVyczogKCgpID0+IFByb21pc2U8dm9pZD4gfCB2b2lkKVtdID0gW11cclxuICAgIGNvbnN0IGN0eCA9IHtcclxuICAgICAgICBlbnY6IGVudmlyb25tZW50ID8/IChwcm9jZXNzLmVudiBhcyBFbnZpcm9ubWVudCksXHJcbiAgICAgICAgc2lnbmFsOiBpbm5lckNvbnRyb2xsZXIuc2lnbmFsIGFzIEFib3J0U2lnbmFsLFxyXG4gICAgICAgIG5vdzogbm93ID8/ICgoKSA9PiBuZXcgRGF0ZSgpKSxcclxuICAgICAgICBvcGVyYXRpb25JZDogY2xpZW50SW5mby5vcGVyYXRpb25JZCxcclxuICAgICAgICBjbGllbnQ6IHtcclxuICAgICAgICAgICAgaWQ6IGNsaWVudEluZm8uY2xpZW50SWQsXHJcbiAgICAgICAgICAgIGlwOiBjbGllbnRJbmZvLmNsaWVudElwLFxyXG4gICAgICAgICAgICBwb3J0OiBjbGllbnRJbmZvLmNsaWVudFBvcnQsXHJcbiAgICAgICAgICAgIHVzZXJBZ2VudDogY2xpZW50SW5mby51c2VyQWdlbnQsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBtZXRhOiBtZXRhXHJcbiAgICAgICAgICAgID8ge1xyXG4gICAgICAgICAgICAgICAgICBwYWNrYWdlTmFtZTogbWV0YS5wYWNrYWdlTmFtZSxcclxuICAgICAgICAgICAgICAgICAgZmlsZU5hbWU6IG1ldGEuZmlsZU5hbWUsXHJcbiAgICAgICAgICAgICAgICAgIHJldmlzaW9uOiBtZXRhLnJldmlzaW9uLFxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgOiB1bmRlZmluZWQsXHJcbiAgICAgICAgZW1pdDogKHRvcGljOiBzdHJpbmcsIHR5cGU6IHN0cmluZywgc3ViamVjdDogc3RyaW5nLCBkYXRhPzogSnNvbiwgbWVzc2FnZUlkPzogc3RyaW5nKSA9PlxyXG4gICAgICAgICAgICBlbWl0dGVyLmVtaXQoeyB0b3BpYywgdHlwZSwgc3ViamVjdCwgaWQ6IG1lc3NhZ2VJZCB9LCBkYXRhKSxcclxuICAgICAgICBldmVudEJhcnJpZXI6ICgpID0+IGVtaXR0ZXIuZmx1c2goKSxcclxuICAgICAgICBvblN1Y2Nlc3M6IChmbjogKCkgPT4gUHJvbWlzZTx2b2lkPiB8IHZvaWQpID0+IHN1Y2Nlc3NIYW5kbGVycy5wdXNoKGZuKSxcclxuICAgIH1cclxuICAgIGNvbnN0IHRpbWVvdXRIYW5kbGUgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBsb2dnZXIuZXJyb3IoJ1RpbWVvdXQuJywgdW5kZWZpbmVkLCB1bmRlZmluZWQpXHJcbiAgICAgICAgaW5uZXJDb250cm9sbGVyLmFib3J0KClcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdm9pZFxyXG4gICAgICAgIHZvaWQgbG9nZ2VyLmZsdXNoKClcclxuICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tdm9pZFxyXG4gICAgICAgIHZvaWQgZW1pdHRlci5mbHVzaCgpXHJcbiAgICB9LCB0aW1lb3V0KVxyXG4gICAgY29uc3QgZmx1c2hIYW5kbGUgPSBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICBsb2dnZXIuZXJyb3IoJ0Fib3J0aW5nIGZsdXNoLicsIHVuZGVmaW5lZCwgdW5kZWZpbmVkKVxyXG4gICAgICAgIG91dGVyQ29udHJvbGxlci5hYm9ydCgpXHJcbiAgICB9LCB0aW1lb3V0ICsgMTUwMDApXHJcbiAgICByZXR1cm4ge1xyXG4gICAgICAgIGxvZzogbG9nZ2VyLFxyXG4gICAgICAgIGNvbnRleHQ6IGN0eCxcclxuICAgICAgICBzdWNjZXNzOiAoKSA9PiBQcm9taXNlLmFsbChzdWNjZXNzSGFuZGxlcnMubWFwKGZuID0+IGZuKCkpKSxcclxuICAgICAgICBmbHVzaDogYXN5bmMgKCkgPT4ge1xyXG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGltZW91dEhhbmRsZSlcclxuICAgICAgICAgICAgYXdhaXQgZW1pdHRlci5mbHVzaCgpXHJcbiAgICAgICAgICAgIGF3YWl0IGxvZ2dlci5mbHVzaCgpXHJcbiAgICAgICAgICAgIGNsZWFyVGltZW91dChmbHVzaEhhbmRsZSlcclxuICAgICAgICB9LFxyXG4gICAgfVxyXG59XHJcblxyXG5sZXQgZ2xvYmFsTG9nZ2VyOiBMb2dnZXIgfCB1bmRlZmluZWRcclxuXHJcbnByb2Nlc3Mub24oJ3VuY2F1Z2h0RXhjZXB0aW9uJywgZXJyID0+IHtcclxuICAgIGdsb2JhbExvZ2dlcj8uZmF0YWwoJ1VuY2F1Z2h0IGV4Y2VwdGlvbi4nLCBlcnIsIHVuZGVmaW5lZClcclxufSlcclxucHJvY2Vzcy5vbigndW5oYW5kbGVkUmVqZWN0aW9uJywgcmVhc29uID0+IHtcclxuICAgIGdsb2JhbExvZ2dlcj8uZmF0YWwoJ1VuaGFuZGxlZCByZWplY3Rpb24uJywgcmVhc29uLCB1bmRlZmluZWQpXHJcbn0pXHJcbiJdfQ==
package/host/http.js CHANGED
@@ -25,7 +25,7 @@ export async function executeRequest(log, context, handler, options, success) {
25
25
  ...parse(this.rawUrl, true),
26
26
  pathStepAt: (index) => {
27
27
  const steps = (pathSteps ??= parsedUrl.pathname?.split('/') ?? []);
28
- const step = steps[index];
28
+ const step = steps[index - 1];
29
29
  if (!step) {
30
30
  throw new RangeError(`Path does not have a step at index ${index}.`);
31
31
  }
@@ -202,4 +202,4 @@ export function clientFromHeaders(headers) {
202
202
  userAgent: headers['x-forwarded-for-user-agent'] ?? headers['user-agent'],
203
203
  };
204
204
  }
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImh0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBc0IsTUFBTSxVQUFVLENBQUE7QUFDcEQsT0FBTyxFQUFXLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQTBCaEQsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2hDLEdBQWUsRUFDZixPQUE2QixFQUM3QixPQUFvQixFQUNwQixPQUF1QixFQUN2QixPQUErQjtJQUUvQixNQUFNLFNBQVMsR0FDWCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUE7SUFDekYsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUE7SUFDOUQsTUFBTSxVQUFVLEdBQUcsaUJBQWlCO1FBQ2hDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFO1FBQ3hDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUNoRSxHQUFHLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFBO0lBQ3JFLElBQUksU0FBUyxFQUFFO1FBQ1gsR0FBRyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQzVCLE9BQU87WUFDSCxPQUFPLEVBQUUsRUFBRTtZQUNYLE1BQU0sRUFBRSxHQUFHO1NBQ2QsQ0FBQTtLQUNKO0lBQ0QsR0FBRyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUMx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RSxPQUFPLENBQUMsY0FBYyxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQztRQUM3RCxRQUFRLEVBQ0osT0FBTyxDQUFDLGFBQWEsQ0FBQztZQUN0QixPQUFPLENBQUMsbUJBQW1CLENBQUM7WUFDNUIsT0FBTyxDQUFDLFdBQVcsQ0FBQztZQUNwQixPQUFPLENBQUMsaUJBQWlCLENBQUM7UUFDOUIsUUFBUSxFQUFFLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQztRQUNwQyxTQUFTLEVBQUUsT0FBTyxDQUFDLDRCQUE0QixDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQztLQUM1RSxDQUFBO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHBhcnNlLCBVcmxXaXRoUGFyc2VkUXVlcnkgfSBmcm9tICdub2RlOnVybCdcclxuaW1wb3J0IHsgQ29udGV4dCwgbWVhc3VyZSB9IGZyb20gJy4uL2NvbnRleHQuanMnXHJcbmltcG9ydCB0eXBlIHsgSnNvbiwgUmVzcG9uc2VIZWFkZXJzLCBSZXN1bHQgfSBmcm9tICcuLi9odHRwLmpzJ1xyXG5pbXBvcnQgeyBDbGllbnRJbmZvLCBSb290TG9nZ2VyIH0gZnJvbSAnLi9jb250ZXh0LmpzJ1xyXG5pbXBvcnQgdHlwZSB7IEh0dHBIYW5kbGVyIH0gZnJvbSAnLi9yZWdpc3RyeS5qcydcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUmVzcG9uc2Uge1xyXG4gICAgaGVhZGVyczogeyByZWFkb25seSBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxyXG4gICAgc3RhdHVzOiBudW1iZXJcclxuICAgIGJvZHk/OiBzdHJpbmcgfCBCdWZmZXJcclxufVxyXG5cclxudHlwZSBSZXF1ZXN0T3B0aW9ucyA9IEJvZHlsZXNzUmVxdWVzdE9wdGlvbnMgfCBTdHJpbmdSZXF1ZXN0T3B0aW9ucyB8IEpzb25SZXF1ZXN0T3B0aW9uc1xyXG5cclxuaW50ZXJmYWNlIEJvZHlsZXNzUmVxdWVzdE9wdGlvbnMge1xyXG4gICAgdXJpOiBzdHJpbmdcclxuICAgIGhlYWRlcnM/OiB7IHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IHN0cmluZyB9XHJcbn1cclxuXHJcbmludGVyZmFjZSBTdHJpbmdSZXF1ZXN0T3B0aW9ucyBleHRlbmRzIEJvZHlsZXNzUmVxdWVzdE9wdGlvbnMge1xyXG4gICAgYm9keTogc3RyaW5nXHJcbn1cclxuXHJcbmludGVyZmFjZSBKc29uUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBCb2R5bGVzc1JlcXVlc3RPcHRpb25zIHtcclxuICAgIGpzb246IEpzb25cclxufVxyXG5cclxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGV4ZWN1dGVSZXF1ZXN0KFxyXG4gICAgbG9nOiBSb290TG9nZ2VyLFxyXG4gICAgY29udGV4dDogT21pdDxDb250ZXh0LCAnbG9nJz4sXHJcbiAgICBoYW5kbGVyOiBIdHRwSGFuZGxlcixcclxuICAgIG9wdGlvbnM6IFJlcXVlc3RPcHRpb25zLFxyXG4gICAgc3VjY2VzczogKCkgPT4gUHJvbWlzZTx1bmtub3duPixcclxuKTogUHJvbWlzZTxSZXNwb25zZT4ge1xyXG4gICAgY29uc3QgaXNTaGFsbG93ID1cclxuICAgICAgICBjb250ZXh0LmVudi5TSEFMTE9XX0tFWSAmJiBvcHRpb25zLmhlYWRlcnM/LlsneC1zaGFsbG93J10gPT09IGNvbnRleHQuZW52LlNIQUxMT1dfS0VZXHJcbiAgICBjb25zdCBpbmNsdWRlQm9keUluTG9ncyA9ICFoYW5kbGVyLmNvbmZpZz8uZXhjbHVkZUJvZHlGcm9tTG9nc1xyXG4gICAgY29uc3QgbG9nUmVxdWVzdCA9IGluY2x1ZGVCb2R5SW5Mb2dzXHJcbiAgICAgICAgPyB7IG1ldGhvZDogaGFuZGxlci5tZXRob2QsIC4uLm9wdGlvbnMgfVxyXG4gICAgICAgIDogd2l0aG91dFJlcXVlc3RCb2R5KHsgbWV0aG9kOiBoYW5kbGVyLm1ldGhvZCwgLi4ub3B0aW9ucyB9KVxyXG4gICAgbG9nID0gbG9nLmVucmljaFJlc2VydmVkKHsgbWV0YTogY29udGV4dC5tZXRhLCByZXF1ZXN0OiBsb2dSZXF1ZXN0IH0pXHJcbiAgICBpZiAoaXNTaGFsbG93KSB7XHJcbiAgICAgICAgbG9nLnRyYWNlKCdTaGFsbG93IHJlcXVlc3QnKVxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHt9LFxyXG4gICAgICAgICAgICBzdGF0dXM6IDIwNCxcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBsb2cudHJhY2UoJ1JlcXVlc3QgQkVHSU4nKVxyXG4gICAgdHJ5IHtcclxuICAgICAgICBsZXQgcGFyc2VkVXJsOiBVcmxXaXRoUGFyc2VkUXVlcnkgJiB7IHBhdGhTdGVwQXQ6IChpbmRleDogbnVtYmVyKSA9PiBzdHJpbmcgfVxyXG4gICAgICAgIGxldCBwYXRoU3RlcHM6IHN0cmluZ1tdXHJcbiAgICAgICAgY29uc3QgcmVxID0ge1xyXG4gICAgICAgICAgICByYXdVcmw6IG9wdGlvbnMudXJpLFxyXG4gICAgICAgICAgICBnZXQgdXJsKCkge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIChwYXJzZWRVcmwgPz89IHtcclxuICAgICAgICAgICAgICAgICAgICAuLi5wYXJzZSh0aGlzLnJhd1VybCwgdHJ1ZSksXHJcbiAgICAgICAgICAgICAgICAgICAgcGF0aFN0ZXBBdDogKGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3RlcHMgPSAocGF0aFN0ZXBzID8/PSBwYXJzZWRVcmwucGF0aG5hbWU/LnNwbGl0KCcvJykgPz8gW10pXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZXAgPSBzdGVwc1tpbmRleF1cclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFzdGVwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgUmFuZ2VFcnJvcihgUGF0aCBkb2VzIG5vdCBoYXZlIGEgc3RlcCBhdCBpbmRleCAke2luZGV4fS5gKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdGVwXHJcbiAgICAgICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGJvZHk6IHJlcXVlc3RCb2R5KG9wdGlvbnMpLFxyXG4gICAgICAgICAgICBoZWFkZXJzOiBvcHRpb25zLmhlYWRlcnMgPz8ge30sXHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBtZWFzdXJlKGxvZywgJ2V4ZWN1dGlvbicsICgpID0+XHJcbiAgICAgICAgICAgIGhhbmRsZXIuZW50cnkoeyAuLi5jb250ZXh0LCBsb2cgfSwgcmVxKSxcclxuICAgICAgICApXHJcblxyXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gcmVzdWx0VG9SZXNwb25zZShyZXN1bHQsIGluY2x1ZGVCb2R5SW5Mb2dzKVxyXG5cclxuICAgICAgICBpZiAoY29udGV4dC5zaWduYWwuYWJvcnRlZCkge1xyXG4gICAgICAgICAgICByZXNwb25zZS5oZWFkZXJzID0ge1xyXG4gICAgICAgICAgICAgICAgJ3gtdGltZW91dCc6ICcxJyxcclxuICAgICAgICAgICAgICAgIC4uLnJlc3BvbnNlLmhlYWRlcnMsXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxvZyA9IGxvZy5lbnJpY2hSZXNlcnZlZCh7IHJlcXVlc3Q6IGxvZ1JlcXVlc3QgfSlcclxuICAgICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzIDwgMzAwKSB7XHJcbiAgICAgICAgICAgIGxvZy5kZWJ1ZygnUmVxdWVzdCBFTkQnKVxyXG4gICAgICAgICAgICBhd2FpdCBzdWNjZXNzKClcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBsb2cud2FybignUmVxdWVzdCBFTkQnKVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gcmVzcG9uc2VcclxuICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICB0cnkge1xyXG4gICAgICAgICAgICBjb25zdCByZXNwb25zZSA9IGVycm9yVG9SZXNwb25zZShlKVxyXG4gICAgICAgICAgICBsb2cgPSBsb2cuZW5yaWNoUmVzZXJ2ZWQoeyByZXNwb25zZSB9KVxyXG4gICAgICAgICAgICBsb2cuZXJyb3IoJ1JlcXVlc3QgRU5EJywgZSlcclxuICAgICAgICAgICAgcmV0dXJuIHJlc3BvbnNlXHJcbiAgICAgICAgfSBjYXRjaCAoY29udmVydEVycm9yKSB7XHJcbiAgICAgICAgICAgIGxvZy5lcnJvcignQ291bGQgbm90IGNvbnZlcnQgZXhjZXB0aW9uIHRvIGVycm9yIHJlc3BvbnNlLicsIGNvbnZlcnRFcnJvcilcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHt9LFxyXG4gICAgICAgICAgICAgICAgc3RhdHVzOiA1MDAsXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHJlc3VsdFRvUmVzcG9uc2UocmVzdWx0OiBSZXN1bHQsIHdpdGhMb2dCb2R5OiBib29sZWFuKTogUmVzcG9uc2UgJiB7IGxvZ0JvZHk/OiB1bmtub3duIH0ge1xyXG4gICAgaWYgKCFyZXN1bHQpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBoZWFkZXJzOiB7fSxcclxuICAgICAgICAgICAgc3RhdHVzOiAyMDQsXHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0ID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgIGNvbnN0IGxvZ0JvZHkgPSB3aXRoTG9nQm9keSA/IHJlc3VsdCA6IHVuZGVmaW5lZFxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICdjb250ZW50LXR5cGUnOiAndGV4dC9wbGFpbicsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHN0YXR1czogMjAwLFxyXG4gICAgICAgICAgICBib2R5OiByZXN1bHQsXHJcbiAgICAgICAgICAgIGxvZ0JvZHksXHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICBpZiAocmVzdWx0LmJvZHkgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczogcmVzdWx0LmhlYWRlcnMgPz8ge30sXHJcbiAgICAgICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMgPz8gMjAwLFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgcmVzdWx0LmJvZHkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxvZ0JvZHkgPSB3aXRoTG9nQm9keSA/IHJlc3VsdC5ib2R5IDogdW5kZWZpbmVkXHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB3aXRoQ29udGVudFR5cGUocmVzdWx0LmhlYWRlcnMsICd0ZXh0L3BsYWluJyksXHJcbiAgICAgICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMgPz8gMjAwLFxyXG4gICAgICAgICAgICAgICAgYm9keTogcmVzdWx0LmJvZHksXHJcbiAgICAgICAgICAgICAgICBsb2dCb2R5LFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChCdWZmZXIuaXNCdWZmZXIocmVzdWx0LmJvZHkpKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGxvZ0JvZHkgPSB3aXRoTG9nQm9keSA/IHJlc3VsdC5ib2R5LnRvU3RyaW5nKCdiYXNlNjQnKSA6IHVuZGVmaW5lZFxyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczogd2l0aENvbnRlbnRUeXBlKHJlc3VsdC5oZWFkZXJzLCAnYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtJyksXHJcbiAgICAgICAgICAgICAgICBzdGF0dXM6IHJlc3VsdC5zdGF0dXMgPz8gMjAwLFxyXG4gICAgICAgICAgICAgICAgYm9keTogcmVzdWx0LmJvZHksXHJcbiAgICAgICAgICAgICAgICBsb2dCb2R5LFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgbG9nQm9keSA9IHdpdGhMb2dCb2R5ID8gcmVzdWx0LmJvZHkgOiB1bmRlZmluZWRcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHdpdGhDb250ZW50VHlwZShyZXN1bHQuaGVhZGVycywgJ2FwcGxpY2F0aW9uL2pzb24nKSxcclxuICAgICAgICAgICAgICAgIHN0YXR1czogcmVzdWx0LnN0YXR1cyA/PyAyMDAsXHJcbiAgICAgICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShyZXN1bHQuYm9keSksXHJcbiAgICAgICAgICAgICAgICBsb2dCb2R5LFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5mdW5jdGlvbiB3aXRob3V0UmVxdWVzdEJvZHkob3B0aW9uczogUmVxdWVzdE9wdGlvbnMgJiB7IG1ldGhvZDogc3RyaW5nIH0pIHtcclxuICAgIGlmIChoYXNKc29uQm9keShvcHRpb25zKSkge1xyXG4gICAgICAgIGNvbnN0IHsganNvbiwgLi4uYm9keWxlc3MgfSA9IG9wdGlvbnNcclxuICAgICAgICByZXR1cm4gYm9keWxlc3NcclxuICAgIH1cclxuICAgIGlmIChoYXNTdHJpbmdCb2R5KG9wdGlvbnMpKSB7XHJcbiAgICAgICAgY29uc3QgeyBib2R5LCAuLi5ib2R5bGVzcyB9ID0gb3B0aW9uc1xyXG4gICAgICAgIHJldHVybiBib2R5bGVzc1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIG9wdGlvbnNcclxufVxyXG5cclxuZnVuY3Rpb24gcmVxdWVzdEJvZHkob3B0aW9uczogUmVxdWVzdE9wdGlvbnMpOiBKc29uIHwgc3RyaW5nIHwgdW5kZWZpbmVkIHtcclxuICAgIGlmIChoYXNKc29uQm9keShvcHRpb25zKSkge1xyXG4gICAgICAgIHJldHVybiBvcHRpb25zLmpzb25cclxuICAgIH1cclxuICAgIGlmIChoYXNTdHJpbmdCb2R5KG9wdGlvbnMpKSB7XHJcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuYm9keVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHVuZGVmaW5lZFxyXG59XHJcblxyXG5mdW5jdGlvbiBoYXNKc29uQm9keShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6IG9wdGlvbnMgaXMgSnNvblJlcXVlc3RPcHRpb25zIHtcclxuICAgIHJldHVybiAob3B0aW9ucyBhcyB7IGpzb24/OiB1bmtub3duIH0pLmpzb24gIT09IHVuZGVmaW5lZFxyXG59XHJcblxyXG5mdW5jdGlvbiBoYXNTdHJpbmdCb2R5KG9wdGlvbnM6IFJlcXVlc3RPcHRpb25zKTogb3B0aW9ucyBpcyBTdHJpbmdSZXF1ZXN0T3B0aW9ucyB7XHJcbiAgICByZXR1cm4gKG9wdGlvbnMgYXMgeyBib2R5PzogdW5rbm93biB9KS5ib2R5ICE9PSB1bmRlZmluZWRcclxufVxyXG5cclxuZnVuY3Rpb24gd2l0aENvbnRlbnRUeXBlKGhlYWRlcnM6IFJlc3BvbnNlSGVhZGVycyB8IHVuZGVmaW5lZCwgY29udGVudFR5cGU6IHN0cmluZykge1xyXG4gICAgaWYgKCFoZWFkZXJzKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgJ2NvbnRlbnQtdHlwZSc6IGNvbnRlbnRUeXBlLFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIGlmICghaGVhZGVyc1snY29udGVudC10eXBlJ10pIHtcclxuICAgICAgICBoZWFkZXJzWydjb250ZW50LXR5cGUnXSA9IGNvbnRlbnRUeXBlXHJcbiAgICB9XHJcbiAgICByZXR1cm4gaGVhZGVyc1xyXG59XHJcblxyXG5mdW5jdGlvbiBlcnJvclRvUmVzcG9uc2UoZTogdW5rbm93bik6IFJlc3BvbnNlIHtcclxuICAgIGNvbnN0IHsgYm9keSwgc3RhdHVzQ29kZTogc3RhdHVzIH0gPSBlIGFzIHsgYm9keT86IHVua25vd247IHN0YXR1c0NvZGU/OiBudW1iZXIgfVxyXG4gICAgaWYgKHR5cGVvZiBib2R5ID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICdjb250ZW50LXR5cGUnOiAndGV4dC9wbGFpbicsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHN0YXR1czogc3RhdHVzID8/IDUwMCxcclxuICAgICAgICAgICAgYm9keSxcclxuICAgICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiBib2R5ID09PSAnb2JqZWN0Jykge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHtcclxuICAgICAgICAgICAgICAgICdjb250ZW50LXR5cGUnOiAnYXBwbGljYXRpb24vanNvbicsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHN0YXR1czogc3RhdHVzID8/IDUwMCxcclxuICAgICAgICAgICAgYm9keTogSlNPTi5zdHJpbmdpZnkoYm9keSksXHJcbiAgICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBoZWFkZXJzOiB7fSxcclxuICAgICAgICAgICAgc3RhdHVzOiBzdGF0dXMgPz8gNTAwLFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIGNsaWVudEZyb21IZWFkZXJzKFxyXG4gICAgaGVhZGVyczogeyByZWFkb25seSBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSB8IHVuZGVmaW5lZCxcclxuKTogQ2xpZW50SW5mbyB7XHJcbiAgICBpZiAoIWhlYWRlcnMpIHtcclxuICAgICAgICByZXR1cm4ge31cclxuICAgIH1cclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgb3BlcmF0aW9uSWQ6IGhlYWRlcnNbJ3gtcmVxdWVzdC1pZCddID8/IGhlYWRlcnNbJ3JlcXVlc3QtaWQnXSxcclxuICAgICAgICBjbGllbnRJZDpcclxuICAgICAgICAgICAgaGVhZGVyc1sneC1jbGllbnQtaWQnXSA/P1xyXG4gICAgICAgICAgICBoZWFkZXJzWyd4LWluc3RhbGxhdGlvbi1pZCddID8/XHJcbiAgICAgICAgICAgIGhlYWRlcnNbJ2NsaWVudC1pZCddID8/XHJcbiAgICAgICAgICAgIGhlYWRlcnNbJ2luc3RhbGxhdGlvbi1pZCddLFxyXG4gICAgICAgIGNsaWVudElwOiBoZWFkZXJzWyd4LWZvcndhcmRlZC1mb3InXSxcclxuICAgICAgICB1c2VyQWdlbnQ6IGhlYWRlcnNbJ3gtZm9yd2FyZGVkLWZvci11c2VyLWFnZW50J10gPz8gaGVhZGVyc1sndXNlci1hZ2VudCddLFxyXG4gICAgfVxyXG59XHJcbiJdfQ==
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImh0dHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEtBQUssRUFBc0IsTUFBTSxVQUFVLENBQUE7QUFDcEQsT0FBTyxFQUFXLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQTBCaEQsTUFBTSxDQUFDLEtBQUssVUFBVSxjQUFjLENBQ2hDLEdBQWUsRUFDZixPQUE2QixFQUM3QixPQUFvQixFQUNwQixPQUF1QixFQUN2QixPQUErQjtJQUUvQixNQUFNLFNBQVMsR0FDWCxPQUFPLENBQUMsR0FBRyxDQUFDLFdBQVcsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssT0FBTyxDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUE7SUFDekYsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUE7SUFDOUQsTUFBTSxVQUFVLEdBQUcsaUJBQWlCO1FBQ2hDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFO1FBQ3hDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLEdBQUcsT0FBTyxFQUFFLENBQUMsQ0FBQTtJQUNoRSxHQUFHLEdBQUcsR0FBRyxDQUFDLGNBQWMsQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFBO0lBQ3JFLElBQUksU0FBUyxFQUFFO1FBQ1gsR0FBRyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQzVCLE9BQU87WUFDSCxPQUFPLEVBQUUsRUFBRTtZQUNYLE1BQU0sRUFBRSxHQUFHO1NBQ2QsQ0FBQTtLQUNKO0lBQ0QsR0FBRyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQTtJQUMx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SCxXQUFXLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUM7UUFDN0QsUUFBUSxFQUNKLE9BQU8sQ0FBQyxhQUFhLENBQUM7WUFDdEIsT0FBTyxDQUFDLG1CQUFtQixDQUFDO1lBQzVCLE9BQU8sQ0FBQyxXQUFXLENBQUM7WUFDcEIsT0FBTyxDQUFDLGlCQUFpQixDQUFDO1FBQzlCLFFBQVEsRUFBRSxPQUFPLENBQUMsaUJBQWlCLENBQUM7UUFDcEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUM7S0FDNUUsQ0FBQTtBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBwYXJzZSwgVXJsV2l0aFBhcnNlZFF1ZXJ5IH0gZnJvbSAnbm9kZTp1cmwnXHJcbmltcG9ydCB7IENvbnRleHQsIG1lYXN1cmUgfSBmcm9tICcuLi9jb250ZXh0LmpzJ1xyXG5pbXBvcnQgdHlwZSB7IEpzb24sIFJlc3BvbnNlSGVhZGVycywgUmVzdWx0IH0gZnJvbSAnLi4vaHR0cC5qcydcclxuaW1wb3J0IHsgQ2xpZW50SW5mbywgUm9vdExvZ2dlciB9IGZyb20gJy4vY29udGV4dC5qcydcclxuaW1wb3J0IHR5cGUgeyBIdHRwSGFuZGxlciB9IGZyb20gJy4vcmVnaXN0cnkuanMnXHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJlc3BvbnNlIHtcclxuICAgIGhlYWRlcnM6IHsgcmVhZG9ubHkgW2tleTogc3RyaW5nXTogc3RyaW5nIH1cclxuICAgIHN0YXR1czogbnVtYmVyXHJcbiAgICBib2R5Pzogc3RyaW5nIHwgQnVmZmVyXHJcbn1cclxuXHJcbnR5cGUgUmVxdWVzdE9wdGlvbnMgPSBCb2R5bGVzc1JlcXVlc3RPcHRpb25zIHwgU3RyaW5nUmVxdWVzdE9wdGlvbnMgfCBKc29uUmVxdWVzdE9wdGlvbnNcclxuXHJcbmludGVyZmFjZSBCb2R5bGVzc1JlcXVlc3RPcHRpb25zIHtcclxuICAgIHVyaTogc3RyaW5nXHJcbiAgICBoZWFkZXJzPzogeyByZWFkb25seSBba2V5OiBzdHJpbmddOiBzdHJpbmcgfVxyXG59XHJcblxyXG5pbnRlcmZhY2UgU3RyaW5nUmVxdWVzdE9wdGlvbnMgZXh0ZW5kcyBCb2R5bGVzc1JlcXVlc3RPcHRpb25zIHtcclxuICAgIGJvZHk6IHN0cmluZ1xyXG59XHJcblxyXG5pbnRlcmZhY2UgSnNvblJlcXVlc3RPcHRpb25zIGV4dGVuZHMgQm9keWxlc3NSZXF1ZXN0T3B0aW9ucyB7XHJcbiAgICBqc29uOiBKc29uXHJcbn1cclxuXHJcbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBleGVjdXRlUmVxdWVzdChcclxuICAgIGxvZzogUm9vdExvZ2dlcixcclxuICAgIGNvbnRleHQ6IE9taXQ8Q29udGV4dCwgJ2xvZyc+LFxyXG4gICAgaGFuZGxlcjogSHR0cEhhbmRsZXIsXHJcbiAgICBvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyxcclxuICAgIHN1Y2Nlc3M6ICgpID0+IFByb21pc2U8dW5rbm93bj4sXHJcbik6IFByb21pc2U8UmVzcG9uc2U+IHtcclxuICAgIGNvbnN0IGlzU2hhbGxvdyA9XHJcbiAgICAgICAgY29udGV4dC5lbnYuU0hBTExPV19LRVkgJiYgb3B0aW9ucy5oZWFkZXJzPy5bJ3gtc2hhbGxvdyddID09PSBjb250ZXh0LmVudi5TSEFMTE9XX0tFWVxyXG4gICAgY29uc3QgaW5jbHVkZUJvZHlJbkxvZ3MgPSAhaGFuZGxlci5jb25maWc/LmV4Y2x1ZGVCb2R5RnJvbUxvZ3NcclxuICAgIGNvbnN0IGxvZ1JlcXVlc3QgPSBpbmNsdWRlQm9keUluTG9nc1xyXG4gICAgICAgID8geyBtZXRob2Q6IGhhbmRsZXIubWV0aG9kLCAuLi5vcHRpb25zIH1cclxuICAgICAgICA6IHdpdGhvdXRSZXF1ZXN0Qm9keSh7IG1ldGhvZDogaGFuZGxlci5tZXRob2QsIC4uLm9wdGlvbnMgfSlcclxuICAgIGxvZyA9IGxvZy5lbnJpY2hSZXNlcnZlZCh7IG1ldGE6IGNvbnRleHQubWV0YSwgcmVxdWVzdDogbG9nUmVxdWVzdCB9KVxyXG4gICAgaWYgKGlzU2hhbGxvdykge1xyXG4gICAgICAgIGxvZy50cmFjZSgnU2hhbGxvdyByZXF1ZXN0JylcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBoZWFkZXJzOiB7fSxcclxuICAgICAgICAgICAgc3RhdHVzOiAyMDQsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgbG9nLnRyYWNlKCdSZXF1ZXN0IEJFR0lOJylcclxuICAgIHRyeSB7XHJcbiAgICAgICAgbGV0IHBhcnNlZFVybDogVXJsV2l0aFBhcnNlZFF1ZXJ5ICYgeyBwYXRoU3RlcEF0OiAoaW5kZXg6IG51bWJlcikgPT4gc3RyaW5nIH1cclxuICAgICAgICBsZXQgcGF0aFN0ZXBzOiBzdHJpbmdbXVxyXG4gICAgICAgIGNvbnN0IHJlcSA9IHtcclxuICAgICAgICAgICAgcmF3VXJsOiBvcHRpb25zLnVyaSxcclxuICAgICAgICAgICAgZ2V0IHVybCgpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiAocGFyc2VkVXJsID8/PSB7XHJcbiAgICAgICAgICAgICAgICAgICAgLi4ucGFyc2UodGhpcy5yYXdVcmwsIHRydWUpLFxyXG4gICAgICAgICAgICAgICAgICAgIHBhdGhTdGVwQXQ6IChpbmRleDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHN0ZXBzID0gKHBhdGhTdGVwcyA/Pz0gcGFyc2VkVXJsLnBhdGhuYW1lPy5zcGxpdCgnLycpID8/IFtdKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdGVwID0gc3RlcHNbaW5kZXggLSAxXVxyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXN0ZXApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBSYW5nZUVycm9yKGBQYXRoIGRvZXMgbm90IGhhdmUgYSBzdGVwIGF0IGluZGV4ICR7aW5kZXh9LmApXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0ZXBcclxuICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgYm9keTogcmVxdWVzdEJvZHkob3B0aW9ucyksXHJcbiAgICAgICAgICAgIGhlYWRlcnM6IG9wdGlvbnMuaGVhZGVycyA/PyB7fSxcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IG1lYXN1cmUobG9nLCAnZXhlY3V0aW9uJywgKCkgPT5cclxuICAgICAgICAgICAgaGFuZGxlci5lbnRyeSh7IC4uLmNvbnRleHQsIGxvZyB9LCByZXEpLFxyXG4gICAgICAgIClcclxuXHJcbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSByZXN1bHRUb1Jlc3BvbnNlKHJlc3VsdCwgaW5jbHVkZUJvZHlJbkxvZ3MpXHJcblxyXG4gICAgICAgIGlmIChjb250ZXh0LnNpZ25hbC5hYm9ydGVkKSB7XHJcbiAgICAgICAgICAgIHJlc3BvbnNlLmhlYWRlcnMgPSB7XHJcbiAgICAgICAgICAgICAgICAneC10aW1lb3V0JzogJzEnLFxyXG4gICAgICAgICAgICAgICAgLi4ucmVzcG9uc2UuaGVhZGVycyxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbG9nID0gbG9nLmVucmljaFJlc2VydmVkKHsgcmVxdWVzdDogbG9nUmVxdWVzdCB9KVxyXG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPCAzMDApIHtcclxuICAgICAgICAgICAgbG9nLmRlYnVnKCdSZXF1ZXN0IEVORCcpXHJcbiAgICAgICAgICAgIGF3YWl0IHN1Y2Nlc3MoKVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGxvZy53YXJuKCdSZXF1ZXN0IEVORCcpXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiByZXNwb25zZVxyXG4gICAgfSBjYXRjaCAoZSkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0gZXJyb3JUb1Jlc3BvbnNlKGUpXHJcbiAgICAgICAgICAgIGxvZyA9IGxvZy5lbnJpY2hSZXNlcnZlZCh7IHJlc3BvbnNlIH0pXHJcbiAgICAgICAgICAgIGxvZy5lcnJvcignUmVxdWVzdCBFTkQnLCBlKVxyXG4gICAgICAgICAgICByZXR1cm4gcmVzcG9uc2VcclxuICAgICAgICB9IGNhdGNoIChjb252ZXJ0RXJyb3IpIHtcclxuICAgICAgICAgICAgbG9nLmVycm9yKCdDb3VsZCBub3QgY29udmVydCBleGNlcHRpb24gdG8gZXJyb3IgcmVzcG9uc2UuJywgY29udmVydEVycm9yKVxyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczoge30sXHJcbiAgICAgICAgICAgICAgICBzdGF0dXM6IDUwMCxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuZnVuY3Rpb24gcmVzdWx0VG9SZXNwb25zZShyZXN1bHQ6IFJlc3VsdCwgd2l0aExvZ0JvZHk6IGJvb2xlYW4pOiBSZXNwb25zZSAmIHsgbG9nQm9keT86IHVua25vd24gfSB7XHJcbiAgICBpZiAoIXJlc3VsdCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHt9LFxyXG4gICAgICAgICAgICBzdGF0dXM6IDIwNCxcclxuICAgICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKHR5cGVvZiByZXN1bHQgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgY29uc3QgbG9nQm9keSA9IHdpdGhMb2dCb2R5ID8gcmVzdWx0IDogdW5kZWZpbmVkXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgJ2NvbnRlbnQtdHlwZSc6ICd0ZXh0L3BsYWluJyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc3RhdHVzOiAyMDAsXHJcbiAgICAgICAgICAgIGJvZHk6IHJlc3VsdCxcclxuICAgICAgICAgICAgbG9nQm9keSxcclxuICAgICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIGlmIChyZXN1bHQuYm9keSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiByZXN1bHQuaGVhZGVycyA/PyB7fSxcclxuICAgICAgICAgICAgICAgIHN0YXR1czogcmVzdWx0LnN0YXR1cyA/PyAyMDAsXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiByZXN1bHQuYm9keSA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgICAgY29uc3QgbG9nQm9keSA9IHdpdGhMb2dCb2R5ID8gcmVzdWx0LmJvZHkgOiB1bmRlZmluZWRcclxuICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnM6IHdpdGhDb250ZW50VHlwZShyZXN1bHQuaGVhZGVycywgJ3RleHQvcGxhaW4nKSxcclxuICAgICAgICAgICAgICAgIHN0YXR1czogcmVzdWx0LnN0YXR1cyA/PyAyMDAsXHJcbiAgICAgICAgICAgICAgICBib2R5OiByZXN1bHQuYm9keSxcclxuICAgICAgICAgICAgICAgIGxvZ0JvZHksXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKEJ1ZmZlci5pc0J1ZmZlcihyZXN1bHQuYm9keSkpIHtcclxuICAgICAgICAgICAgY29uc3QgbG9nQm9keSA9IHdpdGhMb2dCb2R5ID8gcmVzdWx0LmJvZHkudG9TdHJpbmcoJ2Jhc2U2NCcpIDogdW5kZWZpbmVkXHJcbiAgICAgICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgICAgICBoZWFkZXJzOiB3aXRoQ29udGVudFR5cGUocmVzdWx0LmhlYWRlcnMsICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nKSxcclxuICAgICAgICAgICAgICAgIHN0YXR1czogcmVzdWx0LnN0YXR1cyA/PyAyMDAsXHJcbiAgICAgICAgICAgICAgICBib2R5OiByZXN1bHQuYm9keSxcclxuICAgICAgICAgICAgICAgIGxvZ0JvZHksXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBjb25zdCBsb2dCb2R5ID0gd2l0aExvZ0JvZHkgPyByZXN1bHQuYm9keSA6IHVuZGVmaW5lZFxyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgaGVhZGVyczogd2l0aENvbnRlbnRUeXBlKHJlc3VsdC5oZWFkZXJzLCAnYXBwbGljYXRpb24vanNvbicpLFxyXG4gICAgICAgICAgICAgICAgc3RhdHVzOiByZXN1bHQuc3RhdHVzID8/IDIwMCxcclxuICAgICAgICAgICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KHJlc3VsdC5ib2R5KSxcclxuICAgICAgICAgICAgICAgIGxvZ0JvZHksXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHdpdGhvdXRSZXF1ZXN0Qm9keShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyAmIHsgbWV0aG9kOiBzdHJpbmcgfSkge1xyXG4gICAgaWYgKGhhc0pzb25Cb2R5KG9wdGlvbnMpKSB7XHJcbiAgICAgICAgY29uc3QgeyBqc29uLCAuLi5ib2R5bGVzcyB9ID0gb3B0aW9uc1xyXG4gICAgICAgIHJldHVybiBib2R5bGVzc1xyXG4gICAgfVxyXG4gICAgaWYgKGhhc1N0cmluZ0JvZHkob3B0aW9ucykpIHtcclxuICAgICAgICBjb25zdCB7IGJvZHksIC4uLmJvZHlsZXNzIH0gPSBvcHRpb25zXHJcbiAgICAgICAgcmV0dXJuIGJvZHlsZXNzXHJcbiAgICB9XHJcbiAgICByZXR1cm4gb3B0aW9uc1xyXG59XHJcblxyXG5mdW5jdGlvbiByZXF1ZXN0Qm9keShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6IEpzb24gfCBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgaWYgKGhhc0pzb25Cb2R5KG9wdGlvbnMpKSB7XHJcbiAgICAgICAgcmV0dXJuIG9wdGlvbnMuanNvblxyXG4gICAgfVxyXG4gICAgaWYgKGhhc1N0cmluZ0JvZHkob3B0aW9ucykpIHtcclxuICAgICAgICByZXR1cm4gb3B0aW9ucy5ib2R5XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdW5kZWZpbmVkXHJcbn1cclxuXHJcbmZ1bmN0aW9uIGhhc0pzb25Cb2R5KG9wdGlvbnM6IFJlcXVlc3RPcHRpb25zKTogb3B0aW9ucyBpcyBKc29uUmVxdWVzdE9wdGlvbnMge1xyXG4gICAgcmV0dXJuIChvcHRpb25zIGFzIHsganNvbj86IHVua25vd24gfSkuanNvbiAhPT0gdW5kZWZpbmVkXHJcbn1cclxuXHJcbmZ1bmN0aW9uIGhhc1N0cmluZ0JvZHkob3B0aW9uczogUmVxdWVzdE9wdGlvbnMpOiBvcHRpb25zIGlzIFN0cmluZ1JlcXVlc3RPcHRpb25zIHtcclxuICAgIHJldHVybiAob3B0aW9ucyBhcyB7IGJvZHk/OiB1bmtub3duIH0pLmJvZHkgIT09IHVuZGVmaW5lZFxyXG59XHJcblxyXG5mdW5jdGlvbiB3aXRoQ29udGVudFR5cGUoaGVhZGVyczogUmVzcG9uc2VIZWFkZXJzIHwgdW5kZWZpbmVkLCBjb250ZW50VHlwZTogc3RyaW5nKSB7XHJcbiAgICBpZiAoIWhlYWRlcnMpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAnY29udGVudC10eXBlJzogY29udGVudFR5cGUsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgaWYgKCFoZWFkZXJzWydjb250ZW50LXR5cGUnXSkge1xyXG4gICAgICAgIGhlYWRlcnNbJ2NvbnRlbnQtdHlwZSddID0gY29udGVudFR5cGVcclxuICAgIH1cclxuICAgIHJldHVybiBoZWFkZXJzXHJcbn1cclxuXHJcbmZ1bmN0aW9uIGVycm9yVG9SZXNwb25zZShlOiB1bmtub3duKTogUmVzcG9uc2Uge1xyXG4gICAgY29uc3QgeyBib2R5LCBzdGF0dXNDb2RlOiBzdGF0dXMgfSA9IGUgYXMgeyBib2R5PzogdW5rbm93bjsgc3RhdHVzQ29kZT86IG51bWJlciB9XHJcbiAgICBpZiAodHlwZW9mIGJvZHkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgJ2NvbnRlbnQtdHlwZSc6ICd0ZXh0L3BsYWluJyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc3RhdHVzOiBzdGF0dXMgPz8gNTAwLFxyXG4gICAgICAgICAgICBib2R5LFxyXG4gICAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAodHlwZW9mIGJvZHkgPT09ICdvYmplY3QnKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaGVhZGVyczoge1xyXG4gICAgICAgICAgICAgICAgJ2NvbnRlbnQtdHlwZSc6ICdhcHBsaWNhdGlvbi9qc29uJyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgc3RhdHVzOiBzdGF0dXMgPz8gNTAwLFxyXG4gICAgICAgICAgICBib2R5OiBKU09OLnN0cmluZ2lmeShib2R5KSxcclxuICAgICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGhlYWRlcnM6IHt9LFxyXG4gICAgICAgICAgICBzdGF0dXM6IHN0YXR1cyA/PyA1MDAsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gY2xpZW50RnJvbUhlYWRlcnMoXHJcbiAgICBoZWFkZXJzOiB7IHJlYWRvbmx5IFtrZXk6IHN0cmluZ106IHN0cmluZyB9IHwgdW5kZWZpbmVkLFxyXG4pOiBDbGllbnRJbmZvIHtcclxuICAgIGlmICghaGVhZGVycykge1xyXG4gICAgICAgIHJldHVybiB7fVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICBvcGVyYXRpb25JZDogaGVhZGVyc1sneC1yZXF1ZXN0LWlkJ10gPz8gaGVhZGVyc1sncmVxdWVzdC1pZCddLFxyXG4gICAgICAgIGNsaWVudElkOlxyXG4gICAgICAgICAgICBoZWFkZXJzWyd4LWNsaWVudC1pZCddID8/XHJcbiAgICAgICAgICAgIGhlYWRlcnNbJ3gtaW5zdGFsbGF0aW9uLWlkJ10gPz9cclxuICAgICAgICAgICAgaGVhZGVyc1snY2xpZW50LWlkJ10gPz9cclxuICAgICAgICAgICAgaGVhZGVyc1snaW5zdGFsbGF0aW9uLWlkJ10sXHJcbiAgICAgICAgY2xpZW50SXA6IGhlYWRlcnNbJ3gtZm9yd2FyZGVkLWZvciddLFxyXG4gICAgICAgIHVzZXJBZ2VudDogaGVhZGVyc1sneC1mb3J3YXJkZWQtZm9yLXVzZXItYWdlbnQnXSA/PyBoZWFkZXJzWyd1c2VyLWFnZW50J10sXHJcbiAgICB9XHJcbn1cclxuIl19
package/host/logging.js CHANGED
@@ -161,13 +161,13 @@ class EnrichingLogger {
161
161
  if (__classPrivateFieldGet(this, _EnrichingLogger_level, "f") < 3) {
162
162
  return;
163
163
  }
164
- __classPrivateFieldGet(this, _EnrichingLogger_buffer, "f").collect('debug', 3, message, error, fields, __classPrivateFieldGet(this, _EnrichingLogger_reservedEnrichment, "f"), __classPrivateFieldGet(this, _EnrichingLogger_customEnrichment, "f"));
164
+ __classPrivateFieldGet(this, _EnrichingLogger_buffer, "f").collect('info', 3, message, error, fields, __classPrivateFieldGet(this, _EnrichingLogger_reservedEnrichment, "f"), __classPrivateFieldGet(this, _EnrichingLogger_customEnrichment, "f"));
165
165
  }
166
166
  warn(message, error, fields) {
167
167
  if (__classPrivateFieldGet(this, _EnrichingLogger_level, "f") < 2) {
168
168
  return;
169
169
  }
170
- __classPrivateFieldGet(this, _EnrichingLogger_buffer, "f").collect('debug', 2, message, error, fields, __classPrivateFieldGet(this, _EnrichingLogger_reservedEnrichment, "f"), __classPrivateFieldGet(this, _EnrichingLogger_customEnrichment, "f"));
170
+ __classPrivateFieldGet(this, _EnrichingLogger_buffer, "f").collect('warning', 2, message, error, fields, __classPrivateFieldGet(this, _EnrichingLogger_reservedEnrichment, "f"), __classPrivateFieldGet(this, _EnrichingLogger_customEnrichment, "f"));
171
171
  }
172
172
  error(message, error, fields) {
173
173
  if (__classPrivateFieldGet(this, _EnrichingLogger_level, "f") < 1) {
@@ -202,4 +202,4 @@ function errorAsJson(error) {
202
202
  name: typeof error,
203
203
  };
204
204
  }
205
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImxvZ2dpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUl4QyxNQUFNLFVBQVUsVUFBVSxDQUN0QixTQUF1QixFQUN2QixlQUFxQyxFQUNyQyxNQUFtQjtJQUVuQixPQUFPLElBQUksZUFBZSxDQUN0QixJQUFJLFNBQVMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEVBQ2hDLGVBQWU7UUFDWCxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7UUFDbEYsQ0FBQyxDQUFDLENBQUMsRUFDUCxNQUFNLENBQ1QsQ0FBQTtBQUNMLENBQUM7QUFFRCxNQUFNLDBCQUEwQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQTtBQUU3RSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsY0FBc0I7SUFDdkQsTUFBTSxRQUFRLEdBQUcsMEJBQTBCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLENBQUE7SUFDaEYsT0FBTyxDQUNILElBQUksSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUN6RCxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNqRCxHQUFHLENBQ04sQ0FBQTtBQUNMLENBQUM7QUFFRCxNQUFNLFNBQVM7SUFTWCxZQUFZLFNBQXVCLEVBQUUsTUFBbUI7O1FBUnhELHVDQUFpQztRQUNqQyw2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LElBQUksK0JBQVEsQ0FBQyxPQUFPLENBQ2hCLE9BQU8sRUFDUCxDQUFDLEVBQ0QsT0FBTyxFQUNQLEtBQUssRUFDTCxNQUFNLEVBQ04sdUJBQUEsSUFBSSwyQ0FBb0IsRUFDeEIsdUJBQUEsSUFBSSx5Q0FBa0IsQ0FDekIsQ0FBQTtJQUNMLENBQUM7SUFDRCxLQUFLLENBQUMsT0FBZSxFQUFFLEtBQWMsRUFBRSxNQUEwQjtRQUM3RCx1QkFBQSxJQUFJLCtCQUFRLENBQUMsT0FBTyxDQUNoQixPQUFPLEVBQ1AsQ0FBQyxFQUNELE9BQU8sRUFDUCxLQUFLLEVBQ0wsTUFBTSxFQUNOLHVCQUFBLElBQUksMkNBQW9CLEVBQ3hCLHVCQUFBLElBQUkseUNBQWtCLENBQ3pCLENBQUE7SUFDTCxDQUFDO0NBQ0o7O0FBRUQsU0FBUyxXQUFXLENBQUMsS0FBYztJQUMvQixJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUN2QyxPQUFPLFNBQVMsQ0FBQTtLQUNuQjtJQUNELElBQUksS0FBSyxZQUFZLEtBQUssRUFBRTtRQUN4QixPQUFPO1lBQ0gsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsR0FBSSxLQUErQztTQUM5QyxDQUFBO0tBQ1o7SUFDRCxJQUFJLEtBQUssWUFBWSxNQUFNLEVBQUU7UUFDekIsT0FBTztZQUNILEdBQUcsS0FBSztTQUNILENBQUE7S0FDWjtJQUNELE9BQU87UUFDSCxPQUFPLEVBQUcsS0FBNEIsRUFBRSxRQUFRLEVBQUU7UUFDbEQsSUFBSSxFQUFFLE9BQU8sS0FBSztLQUNiLENBQUE7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGVyZm9ybWFuY2UgfSBmcm9tICdwZXJmX2hvb2tzJ1xyXG5pbXBvcnQgeyBBYm9ydFNpZ25hbCwgSnNvbiwgTG9nZ2VyIH0gZnJvbSAnLi4vY29udGV4dC5qcydcclxuaW1wb3J0IHsgTG9nRW50cnksIExvZ0xldmVsLCBMb2dUcmFuc3BvcnQsIFJvb3RMb2dnZXIgfSBmcm9tICcuL2NvbnRleHQuanMnXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFrZUxvZ2dlcihcclxuICAgIHRyYW5zcG9ydDogTG9nVHJhbnNwb3J0LFxyXG4gICAgbWluaW11bUxvZ0xldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCxcclxuICAgIHNpZ25hbDogQWJvcnRTaWduYWwsXHJcbik6IFJvb3RMb2dnZXIge1xyXG4gICAgcmV0dXJuIG5ldyBFbnJpY2hpbmdMb2dnZXIoXHJcbiAgICAgICAgbmV3IExvZ0J1ZmZlcih0cmFuc3BvcnQsIHNpZ25hbCksXHJcbiAgICAgICAgbWluaW11bUxvZ0xldmVsXHJcbiAgICAgICAgICAgID8gWydmYXRhbCcsICdlcnJvcicsICd3YXJuaW5nJywgJ2luZm8nLCAnZGVidWcnLCAndHJhY2UnXS5pbmRleE9mKG1pbmltdW1Mb2dMZXZlbClcclxuICAgICAgICAgICAgOiA1LFxyXG4gICAgICAgIHNpZ25hbCxcclxuICAgIClcclxufVxyXG5cclxuY29uc3QgcGVyZm9ybWFuY2VUaW1lT3JpZ2luMTAwbnMgPSBNYXRoLnJvdW5kKHBlcmZvcm1hbmNlLnRpbWVPcmlnaW4gKiAxMDAwMClcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoaWdoUHJlY2lzaW9uSVNPRGF0ZShwZXJmb3JtYW5jZU5vdzogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBub3cxMDBucyA9IHBlcmZvcm1hbmNlVGltZU9yaWdpbjEwMG5zICsgTWF0aC5yb3VuZChwZXJmb3JtYW5jZU5vdyAqIDEwMDAwKVxyXG4gICAgcmV0dXJuIChcclxuICAgICAgICBuZXcgRGF0ZShub3cxMDBucyAvIDEwMDAwKS50b0lTT1N0cmluZygpLnN1YnN0cmluZygwLCAyMCkgK1xyXG4gICAgICAgIChub3cxMDBucyAlIDEwMDAwMDAwKS50b1N0cmluZygpLnBhZFN0YXJ0KDcsICcwJykgK1xyXG4gICAgICAgICdaJ1xyXG4gICAgKVxyXG59XHJcblxyXG5jbGFzcyBMb2dCdWZmZXIge1xyXG4gICAgcmVhZG9ubHkgI3RyYW5zcG9ydDogTG9nVHJhbnNwb3J0XHJcbiAgICAjZW50cmllczogTG9nRW50cnlbXSA9IFtdXHJcbiAgICAjc2l6ZSA9IDBcclxuICAgICNmbHVzaGVyPzogUHJvbWlzZTx2b2lkPiB8IHVuZGVmaW5lZFxyXG4gICAgcmVhZG9ubHkgI3NpZ25hbDogQWJvcnRTaWduYWxcclxuICAgICNhc3luY1RyYW5zcG9ydDogYm9vbGVhbiB8IHVuZGVmaW5lZFxyXG4gICAgI3RpbWVvdXQ6IE5vZGVKUy5UaW1lb3V0IHwgdW5kZWZpbmVkXHJcblxyXG4gICAgY29uc3RydWN0b3IodHJhbnNwb3J0OiBMb2dUcmFuc3BvcnQsIHNpZ25hbDogQWJvcnRTaWduYWwpIHtcclxuICAgICAgICB0aGlzLiN0cmFuc3BvcnQgPSB0cmFuc3BvcnRcclxuICAgICAgICB0aGlzLiNzaWduYWwgPSBzaWduYWxcclxuICAgIH1cclxuXHJcbiAgICBjb2xsZWN0KFxyXG4gICAgICAgIGxldmVsOiBMb2dMZXZlbCxcclxuICAgICAgICBudW1lcmljTG9nTGV2ZWw6IG51bWJlcixcclxuICAgICAgICBtZXNzYWdlOiBzdHJpbmcsXHJcbiAgICAgICAgZXJyb3I6IHVua25vd24sXHJcbiAgICAgICAgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgcmVzZXJ2ZWRFbnJpY2htZW50OiBvYmplY3QgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgY3VzdG9tRW5yaWNobWVudDogb2JqZWN0IHwgdW5kZWZpbmVkLFxyXG4gICAgKSB7XHJcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gcGVyZm9ybWFuY2Uubm93KClcclxuICAgICAgICBjb25zdCBqc29uID0gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgICAgICB0aW1lc3RhbXA6IGhpZ2hQcmVjaXNpb25JU09EYXRlKG9mZnNldCksXHJcbiAgICAgICAgICAgIGxldmVsLFxyXG4gICAgICAgICAgICBtZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvcjogZXJyb3JBc0pzb24oZXJyb3IpLFxyXG4gICAgICAgICAgICAuLi5yZXNlcnZlZEVucmljaG1lbnQsXHJcbiAgICAgICAgICAgIC4uLigoZmllbGRzIHx8IGN1c3RvbUVucmljaG1lbnQpICYmIHtcclxuICAgICAgICAgICAgICAgIGZpZWxkczogY3VzdG9tRW5yaWNobWVudFxyXG4gICAgICAgICAgICAgICAgICAgID8gZmllbGRzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID8geyAuLi5jdXN0b21FbnJpY2htZW50LCAuLi5maWVsZHMgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGN1c3RvbUVucmljaG1lbnRcclxuICAgICAgICAgICAgICAgICAgICA6IGZpZWxkcyxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSlcclxuICAgICAgICB0aGlzLiNlbnRyaWVzLnB1c2goe1xyXG4gICAgICAgICAgICB0aW1lc3RhbXA6IG9mZnNldCxcclxuICAgICAgICAgICAgbGV2ZWwsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBqc29uLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy4jc2l6ZSArPSBqc29uLmxlbmd0aFxyXG5cclxuICAgICAgICBpZiAodGhpcy4jYXN5bmNUcmFuc3BvcnQgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12b2lkXHJcbiAgICAgICAgICAgIHZvaWQgdGhpcy4jdHJhbnNwb3J0LnNlbmRFbnRyaWVzKHRoaXMuI2VudHJpZXMsIHRoaXMuI3NpZ25hbClcclxuICAgICAgICAgICAgdGhpcy4jZW50cmllcyA9IFtdXHJcbiAgICAgICAgICAgIHRoaXMuI3NpemUgPSAwXHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLiNhc3luY1RyYW5zcG9ydCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2FzeW5jVHJhbnNwb3J0ID0gdHJ1ZVxyXG4gICAgICAgICAgICBzZXRJbW1lZGlhdGUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuI2ZsdXNoZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbnN0IHNlbmRSZXN1bHQgPSB0aGlzLiN0cmFuc3BvcnQuc2VuZEVudHJpZXModGhpcy4jZW50cmllcywgdGhpcy4jc2lnbmFsKVxyXG4gICAgICAgICAgICAgICAgdGhpcy4jZW50cmllcyA9IFtdXHJcbiAgICAgICAgICAgICAgICB0aGlzLiNzaXplID0gMFxyXG4gICAgICAgICAgICAgICAgaWYgKHNlbmRSZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLiNmbHVzaGVyID0gc2VuZFJlc3VsdFxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLiNhc3luY1RyYW5zcG9ydCA9IGZhbHNlXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKG51bWVyaWNMb2dMZXZlbCA8IDIgfHwgdGhpcy4jZW50cmllcy5sZW5ndGggPiA4IHx8IHRoaXMuI3NpemUgPiA2NDAwMCkge1xyXG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZvaWRcclxuICAgICAgICAgICAgICAgIHZvaWQgdGhpcy5mbHVzaCgpXHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiN0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZvaWRcclxuICAgICAgICAgICAgICAgICAgICB2b2lkIHRoaXMuZmx1c2goKVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuI3RpbWVvdXQgPSB1bmRlZmluZWRcclxuICAgICAgICAgICAgICAgIH0sIDIwMDApXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZmx1c2goKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2VudHJpZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNzdGFydEZsdXNoKHRoaXMuI2VudHJpZXMpXHJcbiAgICAgICAgdGhpcy4jZW50cmllcyA9IFtdXHJcbiAgICAgICAgdGhpcy4jc2l6ZSA9IDBcclxuICAgICAgICBpZiAodGhpcy4jdGltZW91dCkge1xyXG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy4jdGltZW91dClcclxuICAgICAgICAgICAgdGhpcy4jdGltZW91dCA9IHVuZGVmaW5lZFxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy4jZmx1c2hlclxyXG4gICAgfVxyXG5cclxuICAgICNzdGFydEZsdXNoKGVudHJpZXM6IExvZ0VudHJ5W10pIHtcclxuICAgICAgICBpZiAodGhpcy4jZmx1c2hlcikge1xyXG4gICAgICAgICAgICB0aGlzLiNmbHVzaGVyID0gdGhpcy4jZmx1c2hlci50aGVuKCgpID0+XHJcbiAgICAgICAgICAgICAgICB0aGlzLiN0cmFuc3BvcnQuc2VuZEVudHJpZXMoZW50cmllcywgdGhpcy4jc2lnbmFsKSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2ZsdXNoZXIgPSB0aGlzLiN0cmFuc3BvcnQuc2VuZEVudHJpZXMoZW50cmllcywgdGhpcy4jc2lnbmFsKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuY2xhc3MgRW5yaWNoaW5nTG9nZ2VyIGltcGxlbWVudHMgTG9nZ2VyIHtcclxuICAgIHJlYWRvbmx5ICNidWZmZXI6IExvZ0J1ZmZlclxyXG4gICAgcmVhZG9ubHkgI3Jlc2VydmVkRW5yaWNobWVudD86IG9iamVjdFxyXG4gICAgcmVhZG9ubHkgI2N1c3RvbUVucmljaG1lbnQ/OiBvYmplY3RcclxuICAgIHJlYWRvbmx5ICNsZXZlbDogbnVtYmVyXHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgYnVmZmVyOiBMb2dCdWZmZXIsXHJcbiAgICAgICAgbGV2ZWw6IG51bWJlcixcclxuICAgICAgICByZXNlcnZlZEVucmljaG1lbnQ/OiBvYmplY3QsXHJcbiAgICAgICAgY3VzdG9tRW5yaWNobWVudD86IG9iamVjdCxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuI2J1ZmZlciA9IGJ1ZmZlclxyXG4gICAgICAgIHRoaXMuI2xldmVsID0gbGV2ZWxcclxuICAgICAgICB0aGlzLiNyZXNlcnZlZEVucmljaG1lbnQgPSByZXNlcnZlZEVucmljaG1lbnRcclxuICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50ID0gY3VzdG9tRW5yaWNobWVudFxyXG4gICAgfVxyXG5cclxuICAgIGVucmljaChmaWVsZHM6IG9iamVjdCk6IExvZ2dlciB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBFbnJpY2hpbmdMb2dnZXIodGhpcy4jYnVmZmVyLCB0aGlzLiNsZXZlbCwgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LCB7XHJcbiAgICAgICAgICAgIC4uLih0aGlzLiNjdXN0b21FbnJpY2htZW50ID8/IHt9KSxcclxuICAgICAgICAgICAgLi4uZmllbGRzLFxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgZmx1c2goKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2J1ZmZlci5mbHVzaCgpXHJcbiAgICB9XHJcblxyXG4gICAgZW5yaWNoUmVzZXJ2ZWQoZmllbGRzOiBvYmplY3QpOiBFbnJpY2hpbmdMb2dnZXIge1xyXG4gICAgICAgIHJldHVybiBuZXcgRW5yaWNoaW5nTG9nZ2VyKFxyXG4gICAgICAgICAgICB0aGlzLiNidWZmZXIsXHJcbiAgICAgICAgICAgIHRoaXMuI2xldmVsLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAuLi4odGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50ID8/IHt9KSxcclxuICAgICAgICAgICAgICAgIC4uLmZpZWxkcyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2UobWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biwgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy4jbGV2ZWwgPCA1KSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNidWZmZXIuY29sbGVjdChcclxuICAgICAgICAgICAgJ3RyYWNlJyxcclxuICAgICAgICAgICAgNSxcclxuICAgICAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgICAgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LFxyXG4gICAgICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50LFxyXG4gICAgICAgIClcclxuICAgIH1cclxuICAgIGRlYnVnKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24sIGZpZWxkczogb2JqZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2xldmVsIDwgNCkge1xyXG4gICAgICAgICAgICByZXR1cm5cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jYnVmZmVyLmNvbGxlY3QoXHJcbiAgICAgICAgICAgICdkZWJ1ZycsXHJcbiAgICAgICAgICAgIDQsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICAgIHRoaXMuI3Jlc2VydmVkRW5yaWNobWVudCxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcbiAgICBpbmZvKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24sIGZpZWxkczogb2JqZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2xldmVsIDwgMykge1xyXG4gICAgICAgICAgICByZXR1cm5cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jYnVmZmVyLmNvbGxlY3QoXHJcbiAgICAgICAgICAgICdkZWJ1ZycsXHJcbiAgICAgICAgICAgIDMsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICAgIHRoaXMuI3Jlc2VydmVkRW5yaWNobWVudCxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcbiAgICB3YXJuKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24sIGZpZWxkczogb2JqZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2xldmVsIDwgMikge1xyXG4gICAgICAgICAgICByZXR1cm5cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jYnVmZmVyLmNvbGxlY3QoXHJcbiAgICAgICAgICAgICdkZWJ1ZycsXHJcbiAgICAgICAgICAgIDIsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICAgIHRoaXMuI3Jlc2VydmVkRW5yaWNobWVudCxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcbiAgICBlcnJvcihtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duLCBmaWVsZHM6IG9iamVjdCB8IHVuZGVmaW5lZCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLiNsZXZlbCA8IDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuI2J1ZmZlci5jb2xsZWN0KFxyXG4gICAgICAgICAgICAnZXJyb3InLFxyXG4gICAgICAgICAgICAxLFxyXG4gICAgICAgICAgICBtZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvcixcclxuICAgICAgICAgICAgZmllbGRzLFxyXG4gICAgICAgICAgICB0aGlzLiNyZXNlcnZlZEVucmljaG1lbnQsXHJcbiAgICAgICAgICAgIHRoaXMuI2N1c3RvbUVucmljaG1lbnQsXHJcbiAgICAgICAgKVxyXG4gICAgfVxyXG4gICAgZmF0YWwobWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biwgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLiNidWZmZXIuY29sbGVjdChcclxuICAgICAgICAgICAgJ2ZhdGFsJyxcclxuICAgICAgICAgICAgMCxcclxuICAgICAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgICAgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LFxyXG4gICAgICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50LFxyXG4gICAgICAgIClcclxuICAgIH1cclxufVxyXG5cclxuZnVuY3Rpb24gZXJyb3JBc0pzb24oZXJyb3I6IHVua25vd24pOiBKc29uIHwgdW5kZWZpbmVkIHtcclxuICAgIGlmIChlcnJvciA9PT0gdW5kZWZpbmVkIHx8IGVycm9yID09PSBudWxsKSB7XHJcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxyXG4gICAgfVxyXG4gICAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBtZXNzYWdlOiBlcnJvci5tZXNzYWdlLFxyXG4gICAgICAgICAgICBuYW1lOiBlcnJvci5uYW1lLFxyXG4gICAgICAgICAgICBzdGFjazogZXJyb3Iuc3RhY2ssXHJcbiAgICAgICAgICAgIC4uLihlcnJvciBhcyB1bmtub3duIGFzIHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9KSxcclxuICAgICAgICB9IGFzIEpzb25cclxuICAgIH1cclxuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIE9iamVjdCkge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIC4uLmVycm9yLFxyXG4gICAgICAgIH0gYXMgSnNvblxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgICBtZXNzYWdlOiAoZXJyb3IgYXMgb2JqZWN0IHwgdW5kZWZpbmVkKT8udG9TdHJpbmcoKSxcclxuICAgICAgICBuYW1lOiB0eXBlb2YgZXJyb3IsXHJcbiAgICB9IGFzIEpzb25cclxufVxyXG4iXX0=
205
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2luZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbImxvZ2dpbmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUl4QyxNQUFNLFVBQVUsVUFBVSxDQUN0QixTQUF1QixFQUN2QixlQUFxQyxFQUNyQyxNQUFtQjtJQUVuQixPQUFPLElBQUksZUFBZSxDQUN0QixJQUFJLFNBQVMsQ0FBQyxTQUFTLEVBQUUsTUFBTSxDQUFDLEVBQ2hDLGVBQWU7UUFDWCxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxlQUFlLENBQUM7UUFDbEYsQ0FBQyxDQUFDLENBQUMsRUFDUCxNQUFNLENBQ1QsQ0FBQTtBQUNMLENBQUM7QUFFRCxNQUFNLDBCQUEwQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUMsQ0FBQTtBQUU3RSxNQUFNLFVBQVUsb0JBQW9CLENBQUMsY0FBc0I7SUFDdkQsTUFBTSxRQUFRLEdBQUcsMEJBQTBCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLENBQUE7SUFDaEYsT0FBTyxDQUNILElBQUksSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQztRQUN6RCxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQztRQUNqRCxHQUFHLENBQ04sQ0FBQTtBQUNMLENBQUM7QUFFRCxNQUFNLFNBQVM7SUFTWCxZQUFZLFNBQXVCLEVBQUUsTUFBbUI7O1FBUnhELHVDQUFpQztRQUNqQyw2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LElBQUksK0JBQVEsQ0FBQyxPQUFPLENBQ2hCLE9BQU8sRUFDUCxDQUFDLEVBQ0QsT0FBTyxFQUNQLEtBQUssRUFDTCxNQUFNLEVBQ04sdUJBQUEsSUFBSSwyQ0FBb0IsRUFDeEIsdUJBQUEsSUFBSSx5Q0FBa0IsQ0FDekIsQ0FBQTtJQUNMLENBQUM7SUFDRCxLQUFLLENBQUMsT0FBZSxFQUFFLEtBQWMsRUFBRSxNQUEwQjtRQUM3RCx1QkFBQSxJQUFJLCtCQUFRLENBQUMsT0FBTyxDQUNoQixPQUFPLEVBQ1AsQ0FBQyxFQUNELE9BQU8sRUFDUCxLQUFLLEVBQ0wsTUFBTSxFQUNOLHVCQUFBLElBQUksMkNBQW9CLEVBQ3hCLHVCQUFBLElBQUkseUNBQWtCLENBQ3pCLENBQUE7SUFDTCxDQUFDO0NBQ0o7O0FBRUQsU0FBUyxXQUFXLENBQUMsS0FBYztJQUMvQixJQUFJLEtBQUssS0FBSyxTQUFTLElBQUksS0FBSyxLQUFLLElBQUksRUFBRTtRQUN2QyxPQUFPLFNBQVMsQ0FBQTtLQUNuQjtJQUNELElBQUksS0FBSyxZQUFZLEtBQUssRUFBRTtRQUN4QixPQUFPO1lBQ0gsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtZQUNoQixLQUFLLEVBQUUsS0FBSyxDQUFDLEtBQUs7WUFDbEIsR0FBSSxLQUErQztTQUM5QyxDQUFBO0tBQ1o7SUFDRCxJQUFJLEtBQUssWUFBWSxNQUFNLEVBQUU7UUFDekIsT0FBTztZQUNILEdBQUcsS0FBSztTQUNILENBQUE7S0FDWjtJQUNELE9BQU87UUFDSCxPQUFPLEVBQUcsS0FBNEIsRUFBRSxRQUFRLEVBQUU7UUFDbEQsSUFBSSxFQUFFLE9BQU8sS0FBSztLQUNiLENBQUE7QUFDYixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcGVyZm9ybWFuY2UgfSBmcm9tICdwZXJmX2hvb2tzJ1xyXG5pbXBvcnQgeyBBYm9ydFNpZ25hbCwgSnNvbiwgTG9nZ2VyIH0gZnJvbSAnLi4vY29udGV4dC5qcydcclxuaW1wb3J0IHsgTG9nRW50cnksIExvZ0xldmVsLCBMb2dUcmFuc3BvcnQsIFJvb3RMb2dnZXIgfSBmcm9tICcuL2NvbnRleHQuanMnXHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbWFrZUxvZ2dlcihcclxuICAgIHRyYW5zcG9ydDogTG9nVHJhbnNwb3J0LFxyXG4gICAgbWluaW11bUxvZ0xldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCxcclxuICAgIHNpZ25hbDogQWJvcnRTaWduYWwsXHJcbik6IFJvb3RMb2dnZXIge1xyXG4gICAgcmV0dXJuIG5ldyBFbnJpY2hpbmdMb2dnZXIoXHJcbiAgICAgICAgbmV3IExvZ0J1ZmZlcih0cmFuc3BvcnQsIHNpZ25hbCksXHJcbiAgICAgICAgbWluaW11bUxvZ0xldmVsXHJcbiAgICAgICAgICAgID8gWydmYXRhbCcsICdlcnJvcicsICd3YXJuaW5nJywgJ2luZm8nLCAnZGVidWcnLCAndHJhY2UnXS5pbmRleE9mKG1pbmltdW1Mb2dMZXZlbClcclxuICAgICAgICAgICAgOiA1LFxyXG4gICAgICAgIHNpZ25hbCxcclxuICAgIClcclxufVxyXG5cclxuY29uc3QgcGVyZm9ybWFuY2VUaW1lT3JpZ2luMTAwbnMgPSBNYXRoLnJvdW5kKHBlcmZvcm1hbmNlLnRpbWVPcmlnaW4gKiAxMDAwMClcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBoaWdoUHJlY2lzaW9uSVNPRGF0ZShwZXJmb3JtYW5jZU5vdzogbnVtYmVyKSB7XHJcbiAgICBjb25zdCBub3cxMDBucyA9IHBlcmZvcm1hbmNlVGltZU9yaWdpbjEwMG5zICsgTWF0aC5yb3VuZChwZXJmb3JtYW5jZU5vdyAqIDEwMDAwKVxyXG4gICAgcmV0dXJuIChcclxuICAgICAgICBuZXcgRGF0ZShub3cxMDBucyAvIDEwMDAwKS50b0lTT1N0cmluZygpLnN1YnN0cmluZygwLCAyMCkgK1xyXG4gICAgICAgIChub3cxMDBucyAlIDEwMDAwMDAwKS50b1N0cmluZygpLnBhZFN0YXJ0KDcsICcwJykgK1xyXG4gICAgICAgICdaJ1xyXG4gICAgKVxyXG59XHJcblxyXG5jbGFzcyBMb2dCdWZmZXIge1xyXG4gICAgcmVhZG9ubHkgI3RyYW5zcG9ydDogTG9nVHJhbnNwb3J0XHJcbiAgICAjZW50cmllczogTG9nRW50cnlbXSA9IFtdXHJcbiAgICAjc2l6ZSA9IDBcclxuICAgICNmbHVzaGVyPzogUHJvbWlzZTx2b2lkPiB8IHVuZGVmaW5lZFxyXG4gICAgcmVhZG9ubHkgI3NpZ25hbDogQWJvcnRTaWduYWxcclxuICAgICNhc3luY1RyYW5zcG9ydDogYm9vbGVhbiB8IHVuZGVmaW5lZFxyXG4gICAgI3RpbWVvdXQ6IE5vZGVKUy5UaW1lb3V0IHwgdW5kZWZpbmVkXHJcblxyXG4gICAgY29uc3RydWN0b3IodHJhbnNwb3J0OiBMb2dUcmFuc3BvcnQsIHNpZ25hbDogQWJvcnRTaWduYWwpIHtcclxuICAgICAgICB0aGlzLiN0cmFuc3BvcnQgPSB0cmFuc3BvcnRcclxuICAgICAgICB0aGlzLiNzaWduYWwgPSBzaWduYWxcclxuICAgIH1cclxuXHJcbiAgICBjb2xsZWN0KFxyXG4gICAgICAgIGxldmVsOiBMb2dMZXZlbCxcclxuICAgICAgICBudW1lcmljTG9nTGV2ZWw6IG51bWJlcixcclxuICAgICAgICBtZXNzYWdlOiBzdHJpbmcsXHJcbiAgICAgICAgZXJyb3I6IHVua25vd24sXHJcbiAgICAgICAgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgcmVzZXJ2ZWRFbnJpY2htZW50OiBvYmplY3QgfCB1bmRlZmluZWQsXHJcbiAgICAgICAgY3VzdG9tRW5yaWNobWVudDogb2JqZWN0IHwgdW5kZWZpbmVkLFxyXG4gICAgKSB7XHJcbiAgICAgICAgY29uc3Qgb2Zmc2V0ID0gcGVyZm9ybWFuY2Uubm93KClcclxuICAgICAgICBjb25zdCBqc29uID0gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgICAgICB0aW1lc3RhbXA6IGhpZ2hQcmVjaXNpb25JU09EYXRlKG9mZnNldCksXHJcbiAgICAgICAgICAgIGxldmVsLFxyXG4gICAgICAgICAgICBtZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvcjogZXJyb3JBc0pzb24oZXJyb3IpLFxyXG4gICAgICAgICAgICAuLi5yZXNlcnZlZEVucmljaG1lbnQsXHJcbiAgICAgICAgICAgIC4uLigoZmllbGRzIHx8IGN1c3RvbUVucmljaG1lbnQpICYmIHtcclxuICAgICAgICAgICAgICAgIGZpZWxkczogY3VzdG9tRW5yaWNobWVudFxyXG4gICAgICAgICAgICAgICAgICAgID8gZmllbGRzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID8geyAuLi5jdXN0b21FbnJpY2htZW50LCAuLi5maWVsZHMgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA6IGN1c3RvbUVucmljaG1lbnRcclxuICAgICAgICAgICAgICAgICAgICA6IGZpZWxkcyxcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgfSlcclxuICAgICAgICB0aGlzLiNlbnRyaWVzLnB1c2goe1xyXG4gICAgICAgICAgICB0aW1lc3RhbXA6IG9mZnNldCxcclxuICAgICAgICAgICAgbGV2ZWwsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBqc29uLFxyXG4gICAgICAgIH0pXHJcbiAgICAgICAgdGhpcy4jc2l6ZSArPSBqc29uLmxlbmd0aFxyXG5cclxuICAgICAgICBpZiAodGhpcy4jYXN5bmNUcmFuc3BvcnQgPT09IGZhbHNlKSB7XHJcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby12b2lkXHJcbiAgICAgICAgICAgIHZvaWQgdGhpcy4jdHJhbnNwb3J0LnNlbmRFbnRyaWVzKHRoaXMuI2VudHJpZXMsIHRoaXMuI3NpZ25hbClcclxuICAgICAgICAgICAgdGhpcy4jZW50cmllcyA9IFtdXHJcbiAgICAgICAgICAgIHRoaXMuI3NpemUgPSAwXHJcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLiNhc3luY1RyYW5zcG9ydCA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2FzeW5jVHJhbnNwb3J0ID0gdHJ1ZVxyXG4gICAgICAgICAgICBzZXRJbW1lZGlhdGUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuI2ZsdXNoZXIpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm5cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbnN0IHNlbmRSZXN1bHQgPSB0aGlzLiN0cmFuc3BvcnQuc2VuZEVudHJpZXModGhpcy4jZW50cmllcywgdGhpcy4jc2lnbmFsKVxyXG4gICAgICAgICAgICAgICAgdGhpcy4jZW50cmllcyA9IFtdXHJcbiAgICAgICAgICAgICAgICB0aGlzLiNzaXplID0gMFxyXG4gICAgICAgICAgICAgICAgaWYgKHNlbmRSZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLiNmbHVzaGVyID0gc2VuZFJlc3VsdFxyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLiNhc3luY1RyYW5zcG9ydCA9IGZhbHNlXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgaWYgKG51bWVyaWNMb2dMZXZlbCA8IDIgfHwgdGhpcy4jZW50cmllcy5sZW5ndGggPiA4IHx8IHRoaXMuI3NpemUgPiA2NDAwMCkge1xyXG4gICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZvaWRcclxuICAgICAgICAgICAgICAgIHZvaWQgdGhpcy5mbHVzaCgpXHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLiN0aW1lb3V0ID0gc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLXZvaWRcclxuICAgICAgICAgICAgICAgICAgICB2b2lkIHRoaXMuZmx1c2goKVxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuI3RpbWVvdXQgPSB1bmRlZmluZWRcclxuICAgICAgICAgICAgICAgIH0sIDIwMDApXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZmx1c2goKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2VudHJpZXMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNzdGFydEZsdXNoKHRoaXMuI2VudHJpZXMpXHJcbiAgICAgICAgdGhpcy4jZW50cmllcyA9IFtdXHJcbiAgICAgICAgdGhpcy4jc2l6ZSA9IDBcclxuICAgICAgICBpZiAodGhpcy4jdGltZW91dCkge1xyXG4gICAgICAgICAgICBjbGVhclRpbWVvdXQodGhpcy4jdGltZW91dClcclxuICAgICAgICAgICAgdGhpcy4jdGltZW91dCA9IHVuZGVmaW5lZFxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy4jZmx1c2hlclxyXG4gICAgfVxyXG5cclxuICAgICNzdGFydEZsdXNoKGVudHJpZXM6IExvZ0VudHJ5W10pIHtcclxuICAgICAgICBpZiAodGhpcy4jZmx1c2hlcikge1xyXG4gICAgICAgICAgICB0aGlzLiNmbHVzaGVyID0gdGhpcy4jZmx1c2hlci50aGVuKCgpID0+XHJcbiAgICAgICAgICAgICAgICB0aGlzLiN0cmFuc3BvcnQuc2VuZEVudHJpZXMoZW50cmllcywgdGhpcy4jc2lnbmFsKSxcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuI2ZsdXNoZXIgPSB0aGlzLiN0cmFuc3BvcnQuc2VuZEVudHJpZXMoZW50cmllcywgdGhpcy4jc2lnbmFsKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuY2xhc3MgRW5yaWNoaW5nTG9nZ2VyIGltcGxlbWVudHMgTG9nZ2VyIHtcclxuICAgIHJlYWRvbmx5ICNidWZmZXI6IExvZ0J1ZmZlclxyXG4gICAgcmVhZG9ubHkgI3Jlc2VydmVkRW5yaWNobWVudD86IG9iamVjdFxyXG4gICAgcmVhZG9ubHkgI2N1c3RvbUVucmljaG1lbnQ/OiBvYmplY3RcclxuICAgIHJlYWRvbmx5ICNsZXZlbDogbnVtYmVyXHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgYnVmZmVyOiBMb2dCdWZmZXIsXHJcbiAgICAgICAgbGV2ZWw6IG51bWJlcixcclxuICAgICAgICByZXNlcnZlZEVucmljaG1lbnQ/OiBvYmplY3QsXHJcbiAgICAgICAgY3VzdG9tRW5yaWNobWVudD86IG9iamVjdCxcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuI2J1ZmZlciA9IGJ1ZmZlclxyXG4gICAgICAgIHRoaXMuI2xldmVsID0gbGV2ZWxcclxuICAgICAgICB0aGlzLiNyZXNlcnZlZEVucmljaG1lbnQgPSByZXNlcnZlZEVucmljaG1lbnRcclxuICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50ID0gY3VzdG9tRW5yaWNobWVudFxyXG4gICAgfVxyXG5cclxuICAgIGVucmljaChmaWVsZHM6IG9iamVjdCk6IExvZ2dlciB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBFbnJpY2hpbmdMb2dnZXIodGhpcy4jYnVmZmVyLCB0aGlzLiNsZXZlbCwgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LCB7XHJcbiAgICAgICAgICAgIC4uLih0aGlzLiNjdXN0b21FbnJpY2htZW50ID8/IHt9KSxcclxuICAgICAgICAgICAgLi4uZmllbGRzLFxyXG4gICAgICAgIH0pXHJcbiAgICB9XHJcblxyXG4gICAgZmx1c2goKSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2J1ZmZlci5mbHVzaCgpXHJcbiAgICB9XHJcblxyXG4gICAgZW5yaWNoUmVzZXJ2ZWQoZmllbGRzOiBvYmplY3QpOiBFbnJpY2hpbmdMb2dnZXIge1xyXG4gICAgICAgIHJldHVybiBuZXcgRW5yaWNoaW5nTG9nZ2VyKFxyXG4gICAgICAgICAgICB0aGlzLiNidWZmZXIsXHJcbiAgICAgICAgICAgIHRoaXMuI2xldmVsLFxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAuLi4odGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50ID8/IHt9KSxcclxuICAgICAgICAgICAgICAgIC4uLmZpZWxkcyxcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2UobWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biwgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy4jbGV2ZWwgPCA1KSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNidWZmZXIuY29sbGVjdChcclxuICAgICAgICAgICAgJ3RyYWNlJyxcclxuICAgICAgICAgICAgNSxcclxuICAgICAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgICAgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LFxyXG4gICAgICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50LFxyXG4gICAgICAgIClcclxuICAgIH1cclxuICAgIGRlYnVnKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24sIGZpZWxkczogb2JqZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2xldmVsIDwgNCkge1xyXG4gICAgICAgICAgICByZXR1cm5cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jYnVmZmVyLmNvbGxlY3QoXHJcbiAgICAgICAgICAgICdkZWJ1ZycsXHJcbiAgICAgICAgICAgIDQsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICAgIHRoaXMuI3Jlc2VydmVkRW5yaWNobWVudCxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcbiAgICBpbmZvKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24sIGZpZWxkczogb2JqZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuI2xldmVsIDwgMykge1xyXG4gICAgICAgICAgICByZXR1cm5cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jYnVmZmVyLmNvbGxlY3QoXHJcbiAgICAgICAgICAgICdpbmZvJyxcclxuICAgICAgICAgICAgMyxcclxuICAgICAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgICAgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LFxyXG4gICAgICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50LFxyXG4gICAgICAgIClcclxuICAgIH1cclxuICAgIHdhcm4obWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biwgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy4jbGV2ZWwgPCAyKSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNidWZmZXIuY29sbGVjdChcclxuICAgICAgICAgICAgJ3dhcm5pbmcnLFxyXG4gICAgICAgICAgICAyLFxyXG4gICAgICAgICAgICBtZXNzYWdlLFxyXG4gICAgICAgICAgICBlcnJvcixcclxuICAgICAgICAgICAgZmllbGRzLFxyXG4gICAgICAgICAgICB0aGlzLiNyZXNlcnZlZEVucmljaG1lbnQsXHJcbiAgICAgICAgICAgIHRoaXMuI2N1c3RvbUVucmljaG1lbnQsXHJcbiAgICAgICAgKVxyXG4gICAgfVxyXG4gICAgZXJyb3IobWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biwgZmllbGRzOiBvYmplY3QgfCB1bmRlZmluZWQpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy4jbGV2ZWwgPCAxKSB7XHJcbiAgICAgICAgICAgIHJldHVyblxyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNidWZmZXIuY29sbGVjdChcclxuICAgICAgICAgICAgJ2Vycm9yJyxcclxuICAgICAgICAgICAgMSxcclxuICAgICAgICAgICAgbWVzc2FnZSxcclxuICAgICAgICAgICAgZXJyb3IsXHJcbiAgICAgICAgICAgIGZpZWxkcyxcclxuICAgICAgICAgICAgdGhpcy4jcmVzZXJ2ZWRFbnJpY2htZW50LFxyXG4gICAgICAgICAgICB0aGlzLiNjdXN0b21FbnJpY2htZW50LFxyXG4gICAgICAgIClcclxuICAgIH1cclxuICAgIGZhdGFsKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24sIGZpZWxkczogb2JqZWN0IHwgdW5kZWZpbmVkKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy4jYnVmZmVyLmNvbGxlY3QoXHJcbiAgICAgICAgICAgICdmYXRhbCcsXHJcbiAgICAgICAgICAgIDAsXHJcbiAgICAgICAgICAgIG1lc3NhZ2UsXHJcbiAgICAgICAgICAgIGVycm9yLFxyXG4gICAgICAgICAgICBmaWVsZHMsXHJcbiAgICAgICAgICAgIHRoaXMuI3Jlc2VydmVkRW5yaWNobWVudCxcclxuICAgICAgICAgICAgdGhpcy4jY3VzdG9tRW5yaWNobWVudCxcclxuICAgICAgICApXHJcbiAgICB9XHJcbn1cclxuXHJcbmZ1bmN0aW9uIGVycm9yQXNKc29uKGVycm9yOiB1bmtub3duKTogSnNvbiB8IHVuZGVmaW5lZCB7XHJcbiAgICBpZiAoZXJyb3IgPT09IHVuZGVmaW5lZCB8fCBlcnJvciA9PT0gbnVsbCkge1xyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWRcclxuICAgIH1cclxuICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEVycm9yKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgbWVzc2FnZTogZXJyb3IubWVzc2FnZSxcclxuICAgICAgICAgICAgbmFtZTogZXJyb3IubmFtZSxcclxuICAgICAgICAgICAgc3RhY2s6IGVycm9yLnN0YWNrLFxyXG4gICAgICAgICAgICAuLi4oZXJyb3IgYXMgdW5rbm93biBhcyB7IFtrZXk6IHN0cmluZ106IHVua25vd24gfSksXHJcbiAgICAgICAgfSBhcyBKc29uXHJcbiAgICB9XHJcbiAgICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBPYmplY3QpIHtcclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAuLi5lcnJvcixcclxuICAgICAgICB9IGFzIEpzb25cclxuICAgIH1cclxuICAgIHJldHVybiB7XHJcbiAgICAgICAgbWVzc2FnZTogKGVycm9yIGFzIG9iamVjdCB8IHVuZGVmaW5lZCk/LnRvU3RyaW5nKCksXHJcbiAgICAgICAgbmFtZTogdHlwZW9mIGVycm9yLFxyXG4gICAgfSBhcyBKc29uXHJcbn1cclxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@riddance/host",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "engines": {
@@ -29,7 +29,7 @@
29
29
  "./http": "./host/http.js"
30
30
  },
31
31
  "devDependencies": {
32
- "@riddance/env": "0.0.2"
32
+ "@riddance/env": "0.0.3"
33
33
  },
34
34
  "scripts": {
35
35
  "prepare": "tsc",