@pipeline-builder/api-server 4.4.5 → 4.4.7

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.
@@ -60,4 +60,4 @@ export function rateLimitByOrg(opts) {
60
60
  options.store = createSharedRateLimitStore(`${process.env.SERVICE_NAME || 'api'}:${name}`);
61
61
  return rateLimit(options);
62
62
  }
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZS1saW1pdC1ieS1vcmcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3JhdGUtbGltaXQtYnktb3JnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUxRixPQUFPLFNBQVMsRUFBRSxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQy9ELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBd0JuRTs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQUMsSUFBeUI7SUFDdEQsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxLQUFLLEdBQUcsS0FBSyxFQUFFLEdBQUcsSUFBSSxDQUFDO0lBRTdELE1BQU0sT0FBTyxHQUFvQztRQUMvQyxHQUFHO1FBQ0gsUUFBUTtRQUNSLGVBQWUsRUFBRSxJQUFJO1FBQ3JCLGFBQWEsRUFBRSxLQUFLO1FBQ3BCLDJFQUEyRTtRQUMzRSxJQUFJLEVBQUUsQ0FBQyxHQUFZLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQztRQUNuRCwyRUFBMkU7UUFDM0UsZ0JBQWdCLEVBQUUsSUFBSTtRQUN0QixzRUFBc0U7UUFDdEUsNEVBQTRFO1FBQzVFLDBFQUEwRTtRQUMxRSx5RUFBeUU7UUFDekUsNEVBQTRFO1FBQzVFLG9FQUFvRTtRQUNwRSxtRUFBbUU7UUFDbkUsWUFBWSxFQUFFLENBQUMsR0FBWSxFQUFVLEVBQUU7WUFDckMsTUFBTSxFQUFFLEdBQUcsTUFBTSxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUN4RCxJQUFJLEtBQUssS0FBSyxJQUFJO2dCQUFFLE9BQU8sRUFBRSxDQUFDO1lBQzlCLElBQUksS0FBSyxLQUFLLE1BQU07Z0JBQUUsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDekUsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFLGFBQWEsS0FBSyxpQkFBaUIsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTyxNQUFNLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDL0YsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFDLElBQUksRUFBRSxjQUFjLENBQUM7WUFDdkMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNuRCxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUMsSUFBYSxFQUFFLEdBQWEsRUFBUSxFQUFFO1lBQzlDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLE9BQU8sSUFBSSxZQUFZLElBQUksOEJBQThCLEVBQUUsU0FBUyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFDaEgsQ0FBQztLQUNGLENBQUM7SUFFRiwrRUFBK0U7SUFDL0UsaUZBQWlGO0lBQ2pGLDJFQUEyRTtJQUMzRSxtQkFBbUI7SUFDbkIsT0FBTyxDQUFDLEtBQUssR0FBRywwQkFBMEIsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBRTNGLE9BQU8sU0FBUyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBQzVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgc2VuZEVycm9yLCBFcnJvckNvZGUsIHZlcmlmeVNlcnZpY2VQcmluY2lwYWwgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgdHlwZSB7IFJlcXVlc3QsIFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgcmF0ZUxpbWl0LCB7IGlwS2V5R2VuZXJhdG9yIH0gZnJvbSAnZXhwcmVzcy1yYXRlLWxpbWl0JztcbmltcG9ydCB7IGNyZWF0ZVNoYXJlZFJhdGVMaW1pdFN0b3JlIH0gZnJvbSAnLi9yYXRlLWxpbWl0LXN0b3JlLmpzJztcblxuLyoqIENvbmZpZyBmb3IgYSB7QGxpbmsgcmF0ZUxpbWl0QnlPcmd9IGxpbWl0ZXIuICovXG5leHBvcnQgaW50ZXJmYWNlIE9yZ1JhdGVMaW1pdE9wdGlvbnMge1xuICAvKiogVW5pcXVlIG5hbWUg4oCUIG5hbWVzcGFjZXMgdGhlIFJlZGlzIGJ1Y2tldCArIGxhYmVscyBsb2dzLiAqL1xuICBuYW1lOiBzdHJpbmc7XG4gIC8qKiBNYXggcmVxdWVzdHMgcGVyIHdpbmRvdyBwZXIgb3JnIChvciBwZXIgY2xpZW50IElQIHdoZW4gdW5hdXRoZW50aWNhdGVkKS4gKi9cbiAgbWF4OiBudW1iZXI7XG4gIC8qKiBXaW5kb3cgbGVuZ3RoIGluIG1zLiAqL1xuICB3aW5kb3dNczogbnVtYmVyO1xuICAvKiogT3B0aW9uYWwgNDI5IG1lc3NhZ2Ugb3ZlcnJpZGUuICovXG4gIG1lc3NhZ2U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGF0IG9uZSBidWNrZXQgaXMgKGRlZmF1bHQgYG9yZ2ApOlxuICAgKiAgLSBgb3JnYCAg4oCUIHRoZSB2ZXJpZmllZCBvcmcgKGFuIG9yZyBzZXJ2aWNlIGFjY291bnQgZ2V0cyBpdHMgb3duIGJ1Y2tldCk7XG4gICAqICAtIGB1c2VyYCDigJQgdGhlIHZlcmlmaWVkIGNhbGxlciAoYHN1YmApLCBmb3IgcGVyLXBlcnNvbiBjYXBzO1xuICAgKiAgLSBgaXBgICAg4oCUIHRoZSBUUlVTVEVEIGNsaWVudCBJUCAoYHJlcS5pcGAsIHJlc29sdmVkIGJ5IHRoZSBhcHAnc1xuICAgKiAgICAgICAgICAgICBgdHJ1c3QgcHJveHlgIHNldHRpbmcg4oCUIG5ldmVyIGEgcmF3IGZvcndhcmRpbmcgaGVhZGVyKSwgZm9yXG4gICAqICAgICAgICAgICAgIHBlci1hZGRyZXNzIGNhcHMgdGhhdCBhIHVzZXIgY2FuJ3QgcmVzZXQgYnkgc3dpdGNoaW5nIG9yZ3MuXG4gICAqIEV2ZXJ5IG1vZGUgZmFsbHMgYmFjayB0byB0aGUgY2xpZW50LUlQIGJ1Y2tldCBmb3IgYW4gdW5hdXRoZW50aWNhdGVkIGNhbGxlci5cbiAgICovXG4gIGtleUJ5PzogJ29yZycgfCAndXNlcicgfCAnaXAnO1xufVxuXG4vKipcbiAqIFBlci1PUkdBTklaQVRJT04gcmF0ZSBsaW1pdGVyIGZvciBhIHNwZWNpZmljIGhvdC9leHBlbnNpdmUgcm91dGUsIGtleWVkIG9uIHRoZVxuICogVkVSSUZJRUQgYXV0aCBvcmcg4oCUIHRoZSBjb21wbGVtZW50IHRvIHRoZSBjb2Fyc2UgZ2xvYmFsIHBlci1JUCBsaW1pdGVyIGluXG4gKiBgY3JlYXRlQXBwYCAod2hpY2ggYSB3aG9sZSBvcmcgYmVoaW5kIG9uZSBOQVQgc2hhcmVzLCBhbmQgYSBkaXN0cmlidXRlZFxuICogYXR0YWNrZXIgc3ByZWFkcyBhY3Jvc3MgSVAgYnVja2V0cyB0byBldmFkZSkuXG4gKlxuICogTVVTVCBiZSBtb3VudGVkIEFGVEVSIGByZXF1aXJlQXV0aGAgc28gYHJlcS51c2VyLm9yZ2FuaXphdGlvbklkYCBpcyBwb3B1bGF0ZWQ7XG4gKiBhbiB1bmF1dGhlbnRpY2F0ZWQgY2FsbGVyIGZhbGxzIGJhY2sgdG8gYSBjbGllbnQtSVAgYnVja2V0IChuZXZlciBhIHNwb29mYWJsZVxuICogaGVhZGVyKSBzbyBpdCBzdGF5cyBib3VuZGVkLiBWZXJpZmllZCBpbnRlcm5hbCBzZXJ2aWNlIHByaW5jaXBhbHMgYXJlIGV4ZW1wdFxuICogKHRoZXkgY2FycnkgYSBzaWduZWQgc2VydmljZSBKV1QpLiBVc2VzIHRoZSBzaGFyZWQgZW52IFJlZGlzIHN0b3JlXG4gKiAoY3Jvc3MtcmVwbGljYSwgbmFtZXNwYWNlZCBieSBgbmFtZWApIHdoZW4gY29uZmlndXJlZCwgZWxzZSBpbi1tZW1vcnkuXG4gKlxuICogQGV4YW1wbGVcbiAqICAgcm91dGVyLnBvc3QoJy8nLCAuLi5jcmVhdGVBdXRoZW50aWNhdGVkV2l0aE9yZ1JvdXRlKCksIHJlcXVpcmVQZXJtaXNzaW9uKCdtZXNzYWdlczp3cml0ZScpLFxuICogICAgIHJhdGVMaW1pdEJ5T3JnKHsgbmFtZTogJ21lc3NhZ2Utc2VuZCcsIG1heDogNjAsIHdpbmRvd01zOiA2MF8wMDAgfSksXG4gKiAgICAgd2l0aFJvdXRlKGhhbmRsZXIpKTtcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJhdGVMaW1pdEJ5T3JnKG9wdHM6IE9yZ1JhdGVMaW1pdE9wdGlvbnMpIHtcbiAgY29uc3QgeyBuYW1lLCBtYXgsIHdpbmRvd01zLCBtZXNzYWdlLCBrZXlCeSA9ICdvcmcnIH0gPSBvcHRzO1xuXG4gIGNvbnN0IG9wdGlvbnM6IFBhcmFtZXRlcnM8dHlwZW9mIHJhdGVMaW1pdD5bMF0gPSB7XG4gICAgbWF4LFxuICAgIHdpbmRvd01zLFxuICAgIHN0YW5kYXJkSGVhZGVyczogdHJ1ZSxcbiAgICBsZWdhY3lIZWFkZXJzOiBmYWxzZSxcbiAgICAvLyBFeGVtcHQgY3J5cHRvZ3JhcGhpY2FsbHktdmVyaWZpZWQgaW50ZXJuYWwgc2VydmljZSBjYWxsZXJzIChzaWduZWQgSldUKS5cbiAgICBza2lwOiAocmVxOiBSZXF1ZXN0KSA9PiB2ZXJpZnlTZXJ2aWNlUHJpbmNpcGFsKHJlcSksXG4gICAgLy8gUmVkaXMgc3RvcmUgZmFpbHVyZSBkZWdyYWRlcyB0byBcIm5vdCBsaW1pdGVkXCIsIG5ldmVyIGEgNTAwIG9uIHRoZSByb3V0ZS5cbiAgICBwYXNzT25TdG9yZUVycm9yOiB0cnVlLFxuICAgIC8vIEJ1Y2tldCBieSBWRVJJRklFRCBpZGVudGl0eSAoc2V0IGJ5IHJlcXVpcmVBdXRoKSwgTk9UIHRoZSBzcG9vZmFibGVcbiAgICAvLyBgeC1vcmctaWRgIGhlYWRlci4gQW4gT1JHIFNFUlZJQ0UgQUNDT1VOVCBnZXRzIGl0cyBPV04gYnVja2V0IHJhdGhlciB0aGFuXG4gICAgLy8gaXRzIG9yZydzOiBhdXRvbWF0aW9uIGlzIGV4YWN0bHkgdGhlIHRyYWZmaWMgc2hhcGUgdGhhdCB3b3VsZCBvdGhlcndpc2VcbiAgICAvLyBkcmFpbiB0aGUgd2luZG93IGl0cyBvcmcncyBwZW9wbGUgc2hhcmUsIGFuZCB0aGUgcGxhbiByZXF1aXJlcyBtYWNoaW5lXG4gICAgLy8gcmF0ZSBsaW1pdHMgdG8gYmUga2V5ZWQgcGVyIGFjY291bnQuIEZhbGxzIGJhY2sgdG8gYSBub3JtYWxpemVkIGNsaWVudC1JUFxuICAgIC8vIGJ1Y2tldCB3aGVuIHVuYXV0aGVudGljYXRlZCBzbyBwcmUtYXV0aCB0cmFmZmljIGlzIHN0aWxsIGJvdW5kZWQuXG4gICAgLy8gTmFtZXNwYWNlZCAoYHNhOmAvYG9yZzpgL2BpcDpgKSBzbyBubyB0d28gaWQgc3BhY2VzIGNhbiBjb2xsaWRlLlxuICAgIGtleUdlbmVyYXRvcjogKHJlcTogUmVxdWVzdCk6IHN0cmluZyA9PiB7XG4gICAgICBjb25zdCBpcCA9IGBpcDoke2lwS2V5R2VuZXJhdG9yKHJlcS5pcCB8fCAnYW5vbicsIDY0KX1gO1xuICAgICAgaWYgKGtleUJ5ID09PSAnaXAnKSByZXR1cm4gaXA7XG4gICAgICBpZiAoa2V5QnkgPT09ICd1c2VyJykgcmV0dXJuIHJlcS51c2VyPy5zdWIgPyBgdXNlcjoke3JlcS51c2VyLnN1Yn1gIDogaXA7XG4gICAgICBpZiAocmVxLnVzZXI/LnByaW5jaXBhbFR5cGUgPT09ICdzZXJ2aWNlX2FjY291bnQnICYmIHJlcS51c2VyLnN1YikgcmV0dXJuIGBzYToke3JlcS51c2VyLnN1Yn1gO1xuICAgICAgY29uc3Qgb3JnSWQgPSByZXEudXNlcj8ub3JnYW5pemF0aW9uSWQ7XG4gICAgICByZXR1cm4gb3JnSWQgPyBgb3JnOiR7b3JnSWQudG9Mb3dlckNhc2UoKX1gIDogaXA7XG4gICAgfSxcbiAgICBoYW5kbGVyOiAoX3JlcTogUmVxdWVzdCwgcmVzOiBSZXNwb25zZSk6IHZvaWQgPT4ge1xuICAgICAgc2VuZEVycm9yKHJlcywgNDI5LCBtZXNzYWdlID8/IGBUb28gbWFueSAke25hbWV9IHJlcXVlc3RzLCBwbGVhc2Ugc2xvdyBkb3duLmAsIEVycm9yQ29kZS5SQVRFX0xJTUlUX0VYQ0VFREVEKTtcbiAgICB9LFxuICB9O1xuXG4gIC8vIFNoYXJlZCBjcm9zcy1yZXBsaWNhIHN0b3JlIChvbmUgcHJvY2Vzcy13aWRlIFJlZGlzIGNvbm5lY3Rpb24pIHdoZW4gUmVkaXMgaXNcbiAgLy8gY29uZmlndXJlZCwgZWxzZSBwZXItcHJvY2VzcyBtZW1vcnkuIE5hbWVzcGFjZWQgYnkgc2VydmljZSBBTkQgbGltaXRlciBuYW1lIHNvXG4gIC8vIGRpc3RpbmN0IGxpbWl0ZXJzIOKAlCBvciBzYW1lLW5hbWVkIGxpbWl0ZXJzIGluIGRpZmZlcmVudCBzZXJ2aWNlcyDigJQgbmV2ZXJcbiAgLy8gc2hhcmUgYSBjb3VudGVyLlxuICBvcHRpb25zLnN0b3JlID0gY3JlYXRlU2hhcmVkUmF0ZUxpbWl0U3RvcmUoYCR7cHJvY2Vzcy5lbnYuU0VSVklDRV9OQU1FIHx8ICdhcGknfToke25hbWV9YCk7XG5cbiAgcmV0dXJuIHJhdGVMaW1pdChvcHRpb25zKTtcbn1cbiJdfQ==
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZS1saW1pdC1ieS1vcmcuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcmF0ZS1saW1pdC1ieS1vcmcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTFGLE9BQU8sU0FBUyxFQUFFLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUF3Qm5FOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxJQUF5QjtJQUN0RCxNQUFNLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEtBQUssR0FBRyxLQUFLLEVBQUUsR0FBRyxJQUFJLENBQUM7SUFFN0QsTUFBTSxPQUFPLEdBQW9DO1FBQy9DLEdBQUc7UUFDSCxRQUFRO1FBQ1IsZUFBZSxFQUFFLElBQUk7UUFDckIsYUFBYSxFQUFFLEtBQUs7UUFDcEIsMkVBQTJFO1FBQzNFLElBQUksRUFBRSxDQUFDLEdBQVksRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDO1FBQ25ELDJFQUEyRTtRQUMzRSxnQkFBZ0IsRUFBRSxJQUFJO1FBQ3RCLHNFQUFzRTtRQUN0RSw0RUFBNEU7UUFDNUUsMEVBQTBFO1FBQzFFLHlFQUF5RTtRQUN6RSw0RUFBNEU7UUFDNUUsb0VBQW9FO1FBQ3BFLG1FQUFtRTtRQUNuRSxZQUFZLEVBQUUsQ0FBQyxHQUFZLEVBQVUsRUFBRTtZQUNyQyxNQUFNLEVBQUUsR0FBRyxNQUFNLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLE1BQU0sRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3hELElBQUksS0FBSyxLQUFLLElBQUk7Z0JBQUUsT0FBTyxFQUFFLENBQUM7WUFDOUIsSUFBSSxLQUFLLEtBQUssTUFBTTtnQkFBRSxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUN6RSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEVBQUUsYUFBYSxLQUFLLGlCQUFpQixJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRztnQkFBRSxPQUFPLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUMvRixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxFQUFFLGNBQWMsQ0FBQztZQUN2QyxPQUFPLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ25ELENBQUM7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFhLEVBQUUsR0FBYSxFQUFRLEVBQUU7WUFDOUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsT0FBTyxJQUFJLFlBQVksSUFBSSw4QkFBOEIsRUFBRSxTQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUNoSCxDQUFDO0tBQ0YsQ0FBQztJQUVGLCtFQUErRTtJQUMvRSxpRkFBaUY7SUFDakYsMkVBQTJFO0lBQzNFLG1CQUFtQjtJQUNuQixPQUFPLENBQUMsS0FBSyxHQUFHLDBCQUEwQixDQUFDLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLElBQUksS0FBSyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7SUFFM0YsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLENBQUM7QUFDNUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgeyBzZW5kRXJyb3IsIEVycm9yQ29kZSwgdmVyaWZ5U2VydmljZVByaW5jaXBhbCB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCByYXRlTGltaXQsIHsgaXBLZXlHZW5lcmF0b3IgfSBmcm9tICdleHByZXNzLXJhdGUtbGltaXQnO1xuaW1wb3J0IHsgY3JlYXRlU2hhcmVkUmF0ZUxpbWl0U3RvcmUgfSBmcm9tICcuL3JhdGUtbGltaXQtc3RvcmUuanMnO1xuXG4vKiogQ29uZmlnIGZvciBhIHtAbGluayByYXRlTGltaXRCeU9yZ30gbGltaXRlci4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3JnUmF0ZUxpbWl0T3B0aW9ucyB7XG4gIC8qKiBVbmlxdWUgbmFtZSDigJQgbmFtZXNwYWNlcyB0aGUgUmVkaXMgYnVja2V0ICsgbGFiZWxzIGxvZ3MuICovXG4gIG5hbWU6IHN0cmluZztcbiAgLyoqIE1heCByZXF1ZXN0cyBwZXIgd2luZG93IHBlciBvcmcgKG9yIHBlciBjbGllbnQgSVAgd2hlbiB1bmF1dGhlbnRpY2F0ZWQpLiAqL1xuICBtYXg6IG51bWJlcjtcbiAgLyoqIFdpbmRvdyBsZW5ndGggaW4gbXMuICovXG4gIHdpbmRvd01zOiBudW1iZXI7XG4gIC8qKiBPcHRpb25hbCA0MjkgbWVzc2FnZSBvdmVycmlkZS4gKi9cbiAgbWVzc2FnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFdoYXQgb25lIGJ1Y2tldCBpcyAoZGVmYXVsdCBgb3JnYCk6XG4gICAqICAtIGBvcmdgICDigJQgdGhlIHZlcmlmaWVkIG9yZyAoYW4gb3JnIHNlcnZpY2UgYWNjb3VudCBnZXRzIGl0cyBvd24gYnVja2V0KTtcbiAgICogIC0gYHVzZXJgIOKAlCB0aGUgdmVyaWZpZWQgY2FsbGVyIChgc3ViYCksIGZvciBwZXItcGVyc29uIGNhcHM7XG4gICAqICAtIGBpcGAgICDigJQgdGhlIFRSVVNURUQgY2xpZW50IElQIChgcmVxLmlwYCwgcmVzb2x2ZWQgYnkgdGhlIGFwcCdzXG4gICAqICAgICAgICAgICAgIGB0cnVzdCBwcm94eWAgc2V0dGluZyDigJQgbmV2ZXIgYSByYXcgZm9yd2FyZGluZyBoZWFkZXIpLCBmb3JcbiAgICogICAgICAgICAgICAgcGVyLWFkZHJlc3MgY2FwcyB0aGF0IGEgdXNlciBjYW4ndCByZXNldCBieSBzd2l0Y2hpbmcgb3Jncy5cbiAgICogRXZlcnkgbW9kZSBmYWxscyBiYWNrIHRvIHRoZSBjbGllbnQtSVAgYnVja2V0IGZvciBhbiB1bmF1dGhlbnRpY2F0ZWQgY2FsbGVyLlxuICAgKi9cbiAga2V5Qnk/OiAnb3JnJyB8ICd1c2VyJyB8ICdpcCc7XG59XG5cbi8qKlxuICogUGVyLU9SR0FOSVpBVElPTiByYXRlIGxpbWl0ZXIgZm9yIGEgc3BlY2lmaWMgaG90L2V4cGVuc2l2ZSByb3V0ZSwga2V5ZWQgb24gdGhlXG4gKiBWRVJJRklFRCBhdXRoIG9yZyDigJQgdGhlIGNvbXBsZW1lbnQgdG8gdGhlIGNvYXJzZSBnbG9iYWwgcGVyLUlQIGxpbWl0ZXIgaW5cbiAqIGBjcmVhdGVBcHBgICh3aGljaCBhIHdob2xlIG9yZyBiZWhpbmQgb25lIE5BVCBzaGFyZXMsIGFuZCBhIGRpc3RyaWJ1dGVkXG4gKiBhdHRhY2tlciBzcHJlYWRzIGFjcm9zcyBJUCBidWNrZXRzIHRvIGV2YWRlKS5cbiAqXG4gKiBNVVNUIGJlIG1vdW50ZWQgQUZURVIgYHJlcXVpcmVBdXRoYCBzbyBgcmVxLnVzZXIub3JnYW5pemF0aW9uSWRgIGlzIHBvcHVsYXRlZDtcbiAqIGFuIHVuYXV0aGVudGljYXRlZCBjYWxsZXIgZmFsbHMgYmFjayB0byBhIGNsaWVudC1JUCBidWNrZXQgKG5ldmVyIGEgc3Bvb2ZhYmxlXG4gKiBoZWFkZXIpIHNvIGl0IHN0YXlzIGJvdW5kZWQuIFZlcmlmaWVkIGludGVybmFsIHNlcnZpY2UgcHJpbmNpcGFscyBhcmUgZXhlbXB0XG4gKiAodGhleSBjYXJyeSBhIHNpZ25lZCBzZXJ2aWNlIEpXVCkuIFVzZXMgdGhlIHNoYXJlZCBlbnYgUmVkaXMgc3RvcmVcbiAqIChjcm9zcy1yZXBsaWNhLCBuYW1lc3BhY2VkIGJ5IGBuYW1lYCkgd2hlbiBjb25maWd1cmVkLCBlbHNlIGluLW1lbW9yeS5cbiAqXG4gKiBAZXhhbXBsZVxuICogICByb3V0ZXIucG9zdCgnLycsIC4uLmNyZWF0ZUF1dGhlbnRpY2F0ZWRXaXRoT3JnUm91dGUoKSwgcmVxdWlyZVBlcm1pc3Npb24oJ21lc3NhZ2VzOndyaXRlJyksXG4gKiAgICAgcmF0ZUxpbWl0QnlPcmcoeyBuYW1lOiAnbWVzc2FnZS1zZW5kJywgbWF4OiA2MCwgd2luZG93TXM6IDYwXzAwMCB9KSxcbiAqICAgICB3aXRoUm91dGUoaGFuZGxlcikpO1xuICovXG5leHBvcnQgZnVuY3Rpb24gcmF0ZUxpbWl0QnlPcmcob3B0czogT3JnUmF0ZUxpbWl0T3B0aW9ucykge1xuICBjb25zdCB7IG5hbWUsIG1heCwgd2luZG93TXMsIG1lc3NhZ2UsIGtleUJ5ID0gJ29yZycgfSA9IG9wdHM7XG5cbiAgY29uc3Qgb3B0aW9uczogUGFyYW1ldGVyczx0eXBlb2YgcmF0ZUxpbWl0PlswXSA9IHtcbiAgICBtYXgsXG4gICAgd2luZG93TXMsXG4gICAgc3RhbmRhcmRIZWFkZXJzOiB0cnVlLFxuICAgIGxlZ2FjeUhlYWRlcnM6IGZhbHNlLFxuICAgIC8vIEV4ZW1wdCBjcnlwdG9ncmFwaGljYWxseS12ZXJpZmllZCBpbnRlcm5hbCBzZXJ2aWNlIGNhbGxlcnMgKHNpZ25lZCBKV1QpLlxuICAgIHNraXA6IChyZXE6IFJlcXVlc3QpID0+IHZlcmlmeVNlcnZpY2VQcmluY2lwYWwocmVxKSxcbiAgICAvLyBSZWRpcyBzdG9yZSBmYWlsdXJlIGRlZ3JhZGVzIHRvIFwibm90IGxpbWl0ZWRcIiwgbmV2ZXIgYSA1MDAgb24gdGhlIHJvdXRlLlxuICAgIHBhc3NPblN0b3JlRXJyb3I6IHRydWUsXG4gICAgLy8gQnVja2V0IGJ5IFZFUklGSUVEIGlkZW50aXR5IChzZXQgYnkgcmVxdWlyZUF1dGgpLCBOT1QgdGhlIHNwb29mYWJsZVxuICAgIC8vIGB4LW9yZy1pZGAgaGVhZGVyLiBBbiBPUkcgU0VSVklDRSBBQ0NPVU5UIGdldHMgaXRzIE9XTiBidWNrZXQgcmF0aGVyIHRoYW5cbiAgICAvLyBpdHMgb3JnJ3M6IGF1dG9tYXRpb24gaXMgZXhhY3RseSB0aGUgdHJhZmZpYyBzaGFwZSB0aGF0IHdvdWxkIG90aGVyd2lzZVxuICAgIC8vIGRyYWluIHRoZSB3aW5kb3cgaXRzIG9yZydzIHBlb3BsZSBzaGFyZSwgYW5kIHRoZSBwbGFuIHJlcXVpcmVzIG1hY2hpbmVcbiAgICAvLyByYXRlIGxpbWl0cyB0byBiZSBrZXllZCBwZXIgYWNjb3VudC4gRmFsbHMgYmFjayB0byBhIG5vcm1hbGl6ZWQgY2xpZW50LUlQXG4gICAgLy8gYnVja2V0IHdoZW4gdW5hdXRoZW50aWNhdGVkIHNvIHByZS1hdXRoIHRyYWZmaWMgaXMgc3RpbGwgYm91bmRlZC5cbiAgICAvLyBOYW1lc3BhY2VkIChgc2E6YC9gb3JnOmAvYGlwOmApIHNvIG5vIHR3byBpZCBzcGFjZXMgY2FuIGNvbGxpZGUuXG4gICAga2V5R2VuZXJhdG9yOiAocmVxOiBSZXF1ZXN0KTogc3RyaW5nID0+IHtcbiAgICAgIGNvbnN0IGlwID0gYGlwOiR7aXBLZXlHZW5lcmF0b3IocmVxLmlwIHx8ICdhbm9uJywgNjQpfWA7XG4gICAgICBpZiAoa2V5QnkgPT09ICdpcCcpIHJldHVybiBpcDtcbiAgICAgIGlmIChrZXlCeSA9PT0gJ3VzZXInKSByZXR1cm4gcmVxLnVzZXI/LnN1YiA/IGB1c2VyOiR7cmVxLnVzZXIuc3VifWAgOiBpcDtcbiAgICAgIGlmIChyZXEudXNlcj8ucHJpbmNpcGFsVHlwZSA9PT0gJ3NlcnZpY2VfYWNjb3VudCcgJiYgcmVxLnVzZXIuc3ViKSByZXR1cm4gYHNhOiR7cmVxLnVzZXIuc3VifWA7XG4gICAgICBjb25zdCBvcmdJZCA9IHJlcS51c2VyPy5vcmdhbml6YXRpb25JZDtcbiAgICAgIHJldHVybiBvcmdJZCA/IGBvcmc6JHtvcmdJZC50b0xvd2VyQ2FzZSgpfWAgOiBpcDtcbiAgICB9LFxuICAgIGhhbmRsZXI6IChfcmVxOiBSZXF1ZXN0LCByZXM6IFJlc3BvbnNlKTogdm9pZCA9PiB7XG4gICAgICBzZW5kRXJyb3IocmVzLCA0MjksIG1lc3NhZ2UgPz8gYFRvbyBtYW55ICR7bmFtZX0gcmVxdWVzdHMsIHBsZWFzZSBzbG93IGRvd24uYCwgRXJyb3JDb2RlLlJBVEVfTElNSVRfRVhDRUVERUQpO1xuICAgIH0sXG4gIH07XG5cbiAgLy8gU2hhcmVkIGNyb3NzLXJlcGxpY2Egc3RvcmUgKG9uZSBwcm9jZXNzLXdpZGUgUmVkaXMgY29ubmVjdGlvbikgd2hlbiBSZWRpcyBpc1xuICAvLyBjb25maWd1cmVkLCBlbHNlIHBlci1wcm9jZXNzIG1lbW9yeS4gTmFtZXNwYWNlZCBieSBzZXJ2aWNlIEFORCBsaW1pdGVyIG5hbWUgc29cbiAgLy8gZGlzdGluY3QgbGltaXRlcnMg4oCUIG9yIHNhbWUtbmFtZWQgbGltaXRlcnMgaW4gZGlmZmVyZW50IHNlcnZpY2VzIOKAlCBuZXZlclxuICAvLyBzaGFyZSBhIGNvdW50ZXIuXG4gIG9wdGlvbnMuc3RvcmUgPSBjcmVhdGVTaGFyZWRSYXRlTGltaXRTdG9yZShgJHtwcm9jZXNzLmVudi5TRVJWSUNFX05BTUUgfHwgJ2FwaSd9OiR7bmFtZX1gKTtcblxuICByZXR1cm4gcmF0ZUxpbWl0KG9wdGlvbnMpO1xufVxuIl19
@@ -110,4 +110,4 @@ export function createSharedRateLimitStore(namespace) {
110
110
  export function __resetSharedRateLimitStoreForTests() {
111
111
  client = undefined;
112
112
  }
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZS1saW1pdC1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcmF0ZS1saW1pdC1zdG9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHakgsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFPaEQ7OERBQzhEO0FBQzlELElBQUksTUFBd0MsQ0FBQztBQUU3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0EwQkc7QUFDSCxTQUFTLGdCQUFnQixDQUFDLEtBQVksRUFBRSxTQUFpQjtJQUN2RCxJQUFJLFdBQXlDLENBQUM7SUFDOUMsSUFBSSxRQUFRLEdBQXlCLElBQUksQ0FBQztJQUMxQyxJQUFJLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFFbkIsTUFBTSxXQUFXLEdBQUcsR0FBa0IsRUFBRTtRQUN0QywwRUFBMEU7UUFDMUUsdUVBQXVFO1FBQ3ZFLElBQUksV0FBVyxLQUFLLFNBQVM7WUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN4RCxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDZCxRQUFRLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDLENBQUM7aUJBQ2xELElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1Qsc0VBQXNFO2dCQUN0RSwyREFBMkQ7Z0JBQzNELElBQUksTUFBTTtvQkFBRSxNQUFNLENBQUMsSUFBSSxDQUFDLDZDQUE2QyxFQUFFLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztnQkFDdEYsTUFBTSxHQUFHLEtBQUssQ0FBQztZQUNqQixDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLENBQUMsS0FBYyxFQUFFLEVBQUU7Z0JBQ3hCLHNFQUFzRTtnQkFDdEUsb0RBQW9EO2dCQUNwRCxRQUFRLEdBQUcsSUFBSSxDQUFDO2dCQUNoQixNQUFNLEdBQUcsSUFBSSxDQUFDO2dCQUNkLE1BQU0sQ0FBQyxJQUFJLENBQUMsMEVBQTBFLEVBQUU7b0JBQ3RGLFNBQVMsRUFBRSxLQUFLLEVBQUUsWUFBWSxDQUFDLEtBQUssQ0FBQztpQkFDdEMsQ0FBQyxDQUFDO2dCQUNILE1BQU0sS0FBSyxDQUFDO1lBQ2QsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO1FBQ0QsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUFDO0lBRUYsMEVBQTBFO0lBQzFFLDBFQUEwRTtJQUMxRSxvRUFBb0U7SUFDcEUsc0VBQXNFO0lBQ3RFLDRFQUE0RTtJQUM1RSw2Q0FBNkM7SUFDN0MsT0FBTztRQUNMLHFFQUFxRTtRQUNyRSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxHQUFHLFdBQVcsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzdDLEdBQUcsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxNQUFNLFdBQVcsRUFBRSxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JFLFNBQVMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxNQUFNLFdBQVcsRUFBRSxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRSxTQUFTLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLEdBQUcsTUFBTSxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDL0UsUUFBUSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLE1BQU0sV0FBVyxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzdFLE1BQU0sRUFBRSxLQUFLLENBQUMsTUFBTTtLQUNyQixDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBTSxVQUFVLDBCQUEwQixDQUFDLFNBQWlCO0lBQzFELElBQUksTUFBTSxLQUFLLFNBQVM7UUFBRSxNQUFNLEdBQUcsb0JBQW9CLENBQWdCLFlBQVksQ0FBQyxDQUFDO0lBQ3JGLElBQUksQ0FBQyxNQUFNO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDOUIsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDO0lBQ3JCLE1BQU0sT0FBTyxHQUFHLGlCQUFpQixDQUFDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ25ELGlFQUFpRTtJQUNqRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEdBQUcsT0FBTyxDQUFDLGtCQUFrQixDQUE4QyxDQUFDO0lBQ2hHLE1BQU0sQ0FBQyxLQUFLLENBQUMsaUNBQWlDLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQy9ELE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxVQUFVLENBQUM7UUFDckMsTUFBTSxFQUFFLE1BQU0sU0FBUyxHQUFHO1FBQzFCLFdBQVcsRUFBRSxDQUFDLEdBQUcsSUFBYyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDO0tBQ3hELENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztBQUNqQixDQUFDO0FBRUQsNkNBQTZDO0FBQzdDLE1BQU0sVUFBVSxtQ0FBbUM7SUFDakQsTUFBTSxHQUFHLFNBQVMsQ0FBQztBQUNyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IGNyZWF0ZUVudlJlZGlzQ2xpZW50LCBjcmVhdGVMb2dnZXIsIGVycm9yTWVzc2FnZSwgc2FmZUNyZWF0ZVJlcXVpcmUgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgdHlwZSB7IFN0b3JlIH0gZnJvbSAnZXhwcmVzcy1yYXRlLWxpbWl0JztcblxuY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKCdyYXRlLWxpbWl0LXN0b3JlJyk7XG5cbnR5cGUgQ29tbWFuZENsaWVudCA9IHsgY2FsbDogKC4uLmFyZ3M6IHN0cmluZ1tdKSA9PiBQcm9taXNlPHVua25vd24+IH07XG5cbi8qKiBUaGUgb3B0aW9ucyBleHByZXNzLXJhdGUtbGltaXQgaGFuZHMgdG8gYFN0b3JlLmluaXRgLiAqL1xudHlwZSBTdG9yZUluaXRPcHRpb25zID0gUGFyYW1ldGVyczxOb25OdWxsYWJsZTxTdG9yZVsnaW5pdCddPj5bMF07XG5cbi8qKiBPbmUgUmVkaXMgY29ubmVjdGlvbiBmb3IgZXZlcnkgcmF0ZSBsaW1pdGVyIGluIHRoZSBwcm9jZXNzLlxuICogIHVuZGVmaW5lZCA9IG5vdCBidWlsdCB5ZXQ7IG51bGwgPSBSZWRpcyBub3QgY29uZmlndXJlZC4gKi9cbmxldCBjbGllbnQ6IENvbW1hbmRDbGllbnQgfCBudWxsIHwgdW5kZWZpbmVkO1xuXG4vKipcbiAqIFJ1biB0aGUgd3JhcHBlZCBzdG9yZSdzIGBpbml0YCBvbiBGSVJTVCBVU0UgcmF0aGVyIHRoYW4gYXQgcm91dGUgc2V0dXAsIGFuZFxuICogcnVuIGl0IGFnYWluIGlmIGl0IGZhaWxzLlxuICpcbiAqIGByYXRlLWxpbWl0LXJlZGlzYCBsb2FkcyBpdHMgdHdvIEx1YSBzY3JpcHRzIGluIGBpbml0YCBhbmQga2VlcHMgdGhlIGluLWZsaWdodFxuICogYFNDUklQVCBMT0FEYCBwcm9taXNlcyBvbiB0aGUgaW5zdGFuY2UgKGBpbmNyZW1lbnRTY3JpcHRTaGFgLCBgZ2V0U2NyaXB0U2hhYCksXG4gKiB3aGljaCBldmVyeSBsYXRlciBgaW5jcmVtZW50YCBhd2FpdHMuIGV4cHJlc3MtcmF0ZS1saW1pdCBjYWxscyBgaW5pdGAgZXhhY3RseVxuICogb25jZSwgYXQgcm91dGUgc2V0dXAsIGRvZXMgbm90IGF3YWl0IGl0LCBhbmQgbmV2ZXIgY2FsbHMgaXQgYWdhaW4g4oCUIGl0cyBvd25cbiAqIGNvbnRyYWN0IHNheXMgc28uIFNvIE9ORSByZWplY3Rpb24gdGhlcmUgaXMgbWVtb2l6ZWQgZm9yIHRoZSBsaWZlIG9mIHRoZVxuICogcHJvY2VzczogZXZlcnkgc3Vic2VxdWVudCByZXF1ZXN0IHJlLWF3YWl0cyB0aGF0IHNhbWUgcmVqZWN0ZWQgcHJvbWlzZSBhbmQgdGhlXG4gKiBsaW1pdGVyIGlzIHNpbGVudGx5IG9mZi4gVGhlIHN0b3JlJ3MgaW50ZXJuYWwgcmV0cnkgZG9lc24ndCBoZWxwLCBiZWNhdXNlIGl0XG4gKiBvbmx5IHJlLWxvYWRzIG9uIGEgYE5PU0NSSVBUYCByZXBseS5cbiAqXG4gKiBBdCBib290IHRoYXQgcmVqZWN0aW9uIGlzIGEgbGl2ZSByYWNlLCBub3QgYSBoeXBvdGhldGljYWwuIFRoZSBlbnYgUmVkaXNcbiAqIGNsaWVudCBoYXMgbm8gb2ZmbGluZSBxdWV1ZSwgYW5kIGl0cyByZWFkaW5lc3MgZ2F0ZSB3YWl0cyBvbmx5XG4gKiBgUkVRVUVTVF9QQVRIX1JFRElTX1JFQURZX1RJTUVPVVRfTVNgIGJlZm9yZSBsZXR0aW5nIHRoZSBjb21tYW5kIHJ1biBhZ2FpbnN0IGFcbiAqIHNvY2tldCB0aGF0IGlzIHN0aWxsIGNvbm5lY3Rpbmcg4oCUIHNvIG9uIGEgc2xvdyBzdGFydCB0aGUgYFNDUklQVCBMT0FEYCBpc1xuICogcmVqZWN0ZWQgd2l0aCBcIlN0cmVhbSBpc24ndCB3cml0ZWFibGVcIiwgYW5kIHJhdGUgbGltaXRpbmcgbmV2ZXIgY29tZXMgYmFjay5cbiAqXG4gKiBCb3RoIGhhbHZlcyBvZiB0aGUgZml4IG1hdHRlciwgYW5kIG5laXRoZXIgdG91Y2hlcyB0aGUgY29ubmVjdGlvbidzIHNlbWFudGljc1xuICogKG5vIG9mZmxpbmUgcXVldWUsIHN0aWxsIGZhaWwtZmFzdCDigJQgYSByZXF1ZXN0IG11c3QgbmV2ZXIgaGFuZyBiZWhpbmQgYSBSZWRpc1xuICogb3V0YWdlKS4gRGVmZXJyaW5nIGBpbml0YCB0byB0aGUgZmlyc3QgYWN0dWFsIHJlcXVlc3QgcmVtb3ZlcyB0aGUgcmFjZSwgc2luY2VcbiAqIGEgcmVxdWVzdCBhcnJpdmVzIGxvbmcgYWZ0ZXIgdGhlIGNvbm5lY3Rpb24gc2V0dGxlcy4gUmUtcnVubmluZyBpdCBvbiBmYWlsdXJlXG4gKiBtZWFucyBubyBsaW1pdGVyIGNhbiBiZSBsZWZ0IHBlcm1hbmVudGx5IG9mZiBieSBvbmUgYmFkIG1vbWVudC4gQSBmYWlsdXJlXG4gKiBzdGlsbCBwcm9wYWdhdGVzIHRvIGV4cHJlc3MtcmF0ZS1saW1pdCwgd2hpY2gg4oCUIHBhaXJlZCB3aXRoXG4gKiBgcGFzc09uU3RvcmVFcnJvcjogdHJ1ZWAg4oCUIGxldHMgdGhhdCBvbmUgcmVxdWVzdCB0aHJvdWdoIGFuZCBsb2dzIGl0LlxuICovXG5mdW5jdGlvbiB3aXRoUmV0cnlpbmdJbml0KHN0b3JlOiBTdG9yZSwgbmFtZXNwYWNlOiBzdHJpbmcpOiBTdG9yZSB7XG4gIGxldCBpbml0T3B0aW9uczogU3RvcmVJbml0T3B0aW9ucyB8IHVuZGVmaW5lZDtcbiAgbGV0IGluZmxpZ2h0OiBQcm9taXNlPHZvaWQ+IHwgbnVsbCA9IG51bGw7XG4gIGxldCBmYWlsZWQgPSBmYWxzZTtcblxuICBjb25zdCBpbml0aWFsaXplZCA9ICgpOiBQcm9taXNlPHZvaWQ+ID0+IHtcbiAgICAvLyBleHByZXNzLXJhdGUtbGltaXQgYWx3YXlzIGNhbGxzIGBpbml0YCBiZWZvcmUgYW55IG90aGVyIG1ldGhvZDsgaWYgc29tZVxuICAgIC8vIGNhbGxlciBkb2Vzbid0LCBwYXNzIHN0cmFpZ2h0IHRocm91Z2ggcmF0aGVyIHRoYW4gaW52ZW50aW5nIG9wdGlvbnMuXG4gICAgaWYgKGluaXRPcHRpb25zID09PSB1bmRlZmluZWQpIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcbiAgICBpZiAoIWluZmxpZ2h0KSB7XG4gICAgICBpbmZsaWdodCA9IFByb21pc2UucmVzb2x2ZShzdG9yZS5pbml0Py4oaW5pdE9wdGlvbnMpKVxuICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgLy8gV29ydGggYSBsaW5lOiB0aGUgZmFpbHVyZSBiZWxvdyBpcyBsb3VkLCBhbmQgYW4gb3BlcmF0b3Igd2hvIHNhdyBpdFxuICAgICAgICAgIC8vIG5lZWRzIHRvIGtub3cgcmF0ZSBsaW1pdGluZyBpcyBhY3R1YWxseSBlbmZvcmNpbmcgYWdhaW4uXG4gICAgICAgICAgaWYgKGZhaWxlZCkgbG9nZ2VyLmluZm8oJ1JhdGUtbGltaXQgc3RvcmUgcmVjb3ZlcmVkIOKAlCBzY3JpcHRzIGxvYWRlZCcsIHsgbmFtZXNwYWNlIH0pO1xuICAgICAgICAgIGZhaWxlZCA9IGZhbHNlO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goKGVycm9yOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgLy8gRm9yZ2V0IHRoZSBmYWlsdXJlIHNvIHRoZSBORVhUIHJlcXVlc3QgYnVpbGRzIGZyZXNoIHNjcmlwdCBwcm9taXNlc1xuICAgICAgICAgIC8vIGluc3RlYWQgb2YgcmUtYXdhaXRpbmcgdGhpcyByZWplY3RlZCBvbmUgZm9yZXZlci5cbiAgICAgICAgICBpbmZsaWdodCA9IG51bGw7XG4gICAgICAgICAgZmFpbGVkID0gdHJ1ZTtcbiAgICAgICAgICBsb2dnZXIud2FybignUmF0ZS1saW1pdCBzdG9yZSBpbml0IGZhaWxlZCDigJQgcmVxdWVzdHMgcGFzcyB1bmxpbWl0ZWQgdW50aWwgaXQgc3VjY2VlZHMnLCB7XG4gICAgICAgICAgICBuYW1lc3BhY2UsIGVycm9yOiBlcnJvck1lc3NhZ2UoZXJyb3IpLFxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGluZmxpZ2h0O1xuICB9O1xuXG4gIC8vIEV4YWN0bHkgYFJlZGlzU3RvcmVgJ3Mgc3VyZmFjZSwgd2hpY2ggaXMgYWxsIHRoaXMgZXZlciB3cmFwcy4gSXQgaGFzIG5vXG4gIC8vIGByZXNldEFsbGAsIGBzaHV0ZG93bmAgb3IgYGxvY2FsS2V5c2AsIGFuZCBleHByZXNzLXJhdGUtbGltaXQgcmVhZHMgdGhlXG4gIC8vIFBSRVNFTkNFIG9mIHRob3NlIGFzIFwidGhlIHN0b3JlIHN1cHBvcnRzIGl0XCIg4oCUIHNvIGZvcndhcmRpbmcgdGhlbVxuICAvLyBkZWZlbnNpdmVseSB3b3VsZCBhZHZlcnRpc2UgY2FwYWJpbGl0aWVzIHRoYXQgZG9uJ3QgZXhpc3QuIE9taXR0aW5nXG4gIC8vIGBsb2NhbEtleXNgIGlzIGFsc28gdGhlIGNvcnJlY3QgYW5zd2VyIGZvciBhIFJlZGlzIHN0b3JlOiBrZXlzIGFyZSBzaGFyZWRcbiAgLy8gYWNyb3NzIHJlcGxpY2FzLCB3aGljaCBpcyB0aGUgd2hvbGUgcG9pbnQuXG4gIHJldHVybiB7XG4gICAgLy8gQ2FwdHVyZWQsIG5vdCBmb3J3YXJkZWQg4oCUIHRoZSByZWFsIGluaXQgcnVucyBmcm9tIGBpbml0aWFsaXplZCgpYC5cbiAgICBpbml0OiAob3B0aW9ucykgPT4geyBpbml0T3B0aW9ucyA9IG9wdGlvbnM7IH0sXG4gICAgZ2V0OiBhc3luYyAoa2V5KSA9PiB7IGF3YWl0IGluaXRpYWxpemVkKCk7IHJldHVybiBzdG9yZS5nZXQ/LihrZXkpOyB9LFxuICAgIGluY3JlbWVudDogYXN5bmMgKGtleSkgPT4geyBhd2FpdCBpbml0aWFsaXplZCgpOyByZXR1cm4gc3RvcmUuaW5jcmVtZW50KGtleSk7IH0sXG4gICAgZGVjcmVtZW50OiBhc3luYyAoa2V5KSA9PiB7IGF3YWl0IGluaXRpYWxpemVkKCk7IHJldHVybiBzdG9yZS5kZWNyZW1lbnQoa2V5KTsgfSxcbiAgICByZXNldEtleTogYXN5bmMgKGtleSkgPT4geyBhd2FpdCBpbml0aWFsaXplZCgpOyByZXR1cm4gc3RvcmUucmVzZXRLZXkoa2V5KTsgfSxcbiAgICBwcmVmaXg6IHN0b3JlLnByZWZpeCxcbiAgfTtcbn1cblxuLyoqXG4gKiBBIGNyb3NzLXJlcGxpY2EgcmF0ZS1saW1pdCBzdG9yZSB1bmRlciBgcmw6PG5hbWVzcGFjZT46YCwgb3IgYHVuZGVmaW5lZGAgd2hlblxuICogUmVkaXMgaXNuJ3QgY29uZmlndXJlZCAoZXhwcmVzcy1yYXRlLWxpbWl0IHRoZW4gdXNlcyBpdHMgcGVyLXByb2Nlc3MgbWVtb3J5XG4gKiBzdG9yZSwgd2hpY2ggaXMgcmlnaHQgZm9yIGEgc2luZ2xlIHJlcGxpY2EpLlxuICpcbiAqIFdpdGhvdXQgYSBzaGFyZWQgc3RvcmUgZXZlcnkgbGltaXQgaXMgcmVhbGx5IGBtYXggw5cgcmVwbGljYXNgLCBhbmQgd2Vha2VzdFxuICogZXhhY3RseSB3aGVuIGFuIEhQQSBoYXMgc2NhbGVkIG91dCB1bmRlciBsb2FkLiBVc2UgYSBuYW1lc3BhY2UgdW5pcXVlIHRvIHRoZVxuICogc2VydmljZSBBTkQgbGltaXRlciwgc28gc2VwYXJhdGUgbGltaXRlcnMgbmV2ZXIgc2hhcmUgYSBjb3VudGVyLiBQYWlyIGl0IHdpdGhcbiAqIGBwYXNzT25TdG9yZUVycm9yOiB0cnVlYDogYSBSZWRpcyBvdXRhZ2UgdGhlbiBsZXRzIHJlcXVlc3RzIHRocm91Z2ggaW5zdGVhZCBvZlxuICogZmFpbGluZyB0aGVtLiBTY3JpcHQgbG9hZGluZyBpcyBkZWZlcnJlZCB0byB0aGUgZmlyc3QgcmVxdWVzdCBhbmQgcmV0cmllZCBvblxuICogZmFpbHVyZSDigJQgc2VlIHtAbGluayB3aXRoUmV0cnlpbmdJbml0fS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZVNoYXJlZFJhdGVMaW1pdFN0b3JlKG5hbWVzcGFjZTogc3RyaW5nKTogU3RvcmUgfCB1bmRlZmluZWQge1xuICBpZiAoY2xpZW50ID09PSB1bmRlZmluZWQpIGNsaWVudCA9IGNyZWF0ZUVudlJlZGlzQ2xpZW50PENvbW1hbmRDbGllbnQ+KCdyYXRlLWxpbWl0Jyk7XG4gIGlmICghY2xpZW50KSByZXR1cm4gdW5kZWZpbmVkO1xuICBjb25zdCByZWRpcyA9IGNsaWVudDtcbiAgY29uc3QgcmVxdWlyZSA9IHNhZmVDcmVhdGVSZXF1aXJlKGltcG9ydC5tZXRhLnVybCk7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tcmVxdWlyZS1pbXBvcnRzXG4gIGNvbnN0IHsgUmVkaXNTdG9yZSB9ID0gcmVxdWlyZSgncmF0ZS1saW1pdC1yZWRpcycpIGFzIHsgUmVkaXNTdG9yZTogbmV3IChvOiB1bmtub3duKSA9PiBTdG9yZSB9O1xuICBsb2dnZXIuZGVidWcoJ1NoYXJlZCByYXRlLWxpbWl0IHN0b3JlIGNyZWF0ZWQnLCB7IG5hbWVzcGFjZSB9KTtcbiAgcmV0dXJuIHdpdGhSZXRyeWluZ0luaXQobmV3IFJlZGlzU3RvcmUoe1xuICAgIHByZWZpeDogYHJsOiR7bmFtZXNwYWNlfTpgLFxuICAgIHNlbmRDb21tYW5kOiAoLi4uYXJnczogc3RyaW5nW10pID0+IHJlZGlzLmNhbGwoLi4uYXJncyksXG4gIH0pLCBuYW1lc3BhY2UpO1xufVxuXG4vKiogVGVzdC1vbmx5OiBmb3JnZXQgdGhlIG1lbW9pemVkIGNsaWVudC4gKi9cbmV4cG9ydCBmdW5jdGlvbiBfX3Jlc2V0U2hhcmVkUmF0ZUxpbWl0U3RvcmVGb3JUZXN0cygpOiB2b2lkIHtcbiAgY2xpZW50ID0gdW5kZWZpbmVkO1xufVxuIl19
113
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmF0ZS1saW1pdC1zdG9yZS5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9yYXRlLWxpbWl0LXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUdqSCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQU9oRDs4REFDOEQ7QUFDOUQsSUFBSSxNQUF3QyxDQUFDO0FBRTdDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTBCRztBQUNILFNBQVMsZ0JBQWdCLENBQUMsS0FBWSxFQUFFLFNBQWlCO0lBQ3ZELElBQUksV0FBeUMsQ0FBQztJQUM5QyxJQUFJLFFBQVEsR0FBeUIsSUFBSSxDQUFDO0lBQzFDLElBQUksTUFBTSxHQUFHLEtBQUssQ0FBQztJQUVuQixNQUFNLFdBQVcsR0FBRyxHQUFrQixFQUFFO1FBQ3RDLDBFQUEwRTtRQUMxRSx1RUFBdUU7UUFDdkUsSUFBSSxXQUFXLEtBQUssU0FBUztZQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3hELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNkLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQztpQkFDbEQsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDVCxzRUFBc0U7Z0JBQ3RFLDJEQUEyRDtnQkFDM0QsSUFBSSxNQUFNO29CQUFFLE1BQU0sQ0FBQyxJQUFJLENBQUMsNkNBQTZDLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO2dCQUN0RixNQUFNLEdBQUcsS0FBSyxDQUFDO1lBQ2pCLENBQUMsQ0FBQztpQkFDRCxLQUFLLENBQUMsQ0FBQyxLQUFjLEVBQUUsRUFBRTtnQkFDeEIsc0VBQXNFO2dCQUN0RSxvREFBb0Q7Z0JBQ3BELFFBQVEsR0FBRyxJQUFJLENBQUM7Z0JBQ2hCLE1BQU0sR0FBRyxJQUFJLENBQUM7Z0JBQ2QsTUFBTSxDQUFDLElBQUksQ0FBQywwRUFBMEUsRUFBRTtvQkFDdEYsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLENBQUMsS0FBSyxDQUFDO2lCQUN0QyxDQUFDLENBQUM7Z0JBQ0gsTUFBTSxLQUFLLENBQUM7WUFDZCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDLENBQUM7SUFFRiwwRUFBMEU7SUFDMUUsMEVBQTBFO0lBQzFFLG9FQUFvRTtJQUNwRSxzRUFBc0U7SUFDdEUsNEVBQTRFO0lBQzVFLDZDQUE2QztJQUM3QyxPQUFPO1FBQ0wscUVBQXFFO1FBQ3JFLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsV0FBVyxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDN0MsR0FBRyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLE1BQU0sV0FBVyxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckUsU0FBUyxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsRUFBRSxHQUFHLE1BQU0sV0FBVyxFQUFFLENBQUMsQ0FBQyxPQUFPLEtBQUssQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQy9FLFNBQVMsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsR0FBRyxNQUFNLFdBQVcsRUFBRSxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMvRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLEdBQUcsTUFBTSxXQUFXLEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0UsTUFBTSxFQUFFLEtBQUssQ0FBQyxNQUFNO0tBQ3JCLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLFVBQVUsMEJBQTBCLENBQUMsU0FBaUI7SUFDMUQsSUFBSSxNQUFNLEtBQUssU0FBUztRQUFFLE1BQU0sR0FBRyxvQkFBb0IsQ0FBZ0IsWUFBWSxDQUFDLENBQUM7SUFDckYsSUFBSSxDQUFDLE1BQU07UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUM5QixNQUFNLEtBQUssR0FBRyxNQUFNLENBQUM7SUFDckIsTUFBTSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkQsaUVBQWlFO0lBQ2pFLE1BQU0sRUFBRSxVQUFVLEVBQUUsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQThDLENBQUM7SUFDaEcsTUFBTSxDQUFDLEtBQUssQ0FBQyxpQ0FBaUMsRUFBRSxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFDL0QsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLFVBQVUsQ0FBQztRQUNyQyxNQUFNLEVBQUUsTUFBTSxTQUFTLEdBQUc7UUFDMUIsV0FBVyxFQUFFLENBQUMsR0FBRyxJQUFjLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUM7S0FDeEQsQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0FBQ2pCLENBQUM7QUFFRCw2Q0FBNkM7QUFDN0MsTUFBTSxVQUFVLG1DQUFtQztJQUNqRCxNQUFNLEdBQUcsU0FBUyxDQUFDO0FBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgY3JlYXRlRW52UmVkaXNDbGllbnQsIGNyZWF0ZUxvZ2dlciwgZXJyb3JNZXNzYWdlLCBzYWZlQ3JlYXRlUmVxdWlyZSB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB0eXBlIHsgU3RvcmUgfSBmcm9tICdleHByZXNzLXJhdGUtbGltaXQnO1xuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ3JhdGUtbGltaXQtc3RvcmUnKTtcblxudHlwZSBDb21tYW5kQ2xpZW50ID0geyBjYWxsOiAoLi4uYXJnczogc3RyaW5nW10pID0+IFByb21pc2U8dW5rbm93bj4gfTtcblxuLyoqIFRoZSBvcHRpb25zIGV4cHJlc3MtcmF0ZS1saW1pdCBoYW5kcyB0byBgU3RvcmUuaW5pdGAuICovXG50eXBlIFN0b3JlSW5pdE9wdGlvbnMgPSBQYXJhbWV0ZXJzPE5vbk51bGxhYmxlPFN0b3JlWydpbml0J10+PlswXTtcblxuLyoqIE9uZSBSZWRpcyBjb25uZWN0aW9uIGZvciBldmVyeSByYXRlIGxpbWl0ZXIgaW4gdGhlIHByb2Nlc3MuXG4gKiAgdW5kZWZpbmVkID0gbm90IGJ1aWx0IHlldDsgbnVsbCA9IFJlZGlzIG5vdCBjb25maWd1cmVkLiAqL1xubGV0IGNsaWVudDogQ29tbWFuZENsaWVudCB8IG51bGwgfCB1bmRlZmluZWQ7XG5cbi8qKlxuICogUnVuIHRoZSB3cmFwcGVkIHN0b3JlJ3MgYGluaXRgIG9uIEZJUlNUIFVTRSByYXRoZXIgdGhhbiBhdCByb3V0ZSBzZXR1cCwgYW5kXG4gKiBydW4gaXQgYWdhaW4gaWYgaXQgZmFpbHMuXG4gKlxuICogYHJhdGUtbGltaXQtcmVkaXNgIGxvYWRzIGl0cyB0d28gTHVhIHNjcmlwdHMgaW4gYGluaXRgIGFuZCBrZWVwcyB0aGUgaW4tZmxpZ2h0XG4gKiBgU0NSSVBUIExPQURgIHByb21pc2VzIG9uIHRoZSBpbnN0YW5jZSAoYGluY3JlbWVudFNjcmlwdFNoYWAsIGBnZXRTY3JpcHRTaGFgKSxcbiAqIHdoaWNoIGV2ZXJ5IGxhdGVyIGBpbmNyZW1lbnRgIGF3YWl0cy4gZXhwcmVzcy1yYXRlLWxpbWl0IGNhbGxzIGBpbml0YCBleGFjdGx5XG4gKiBvbmNlLCBhdCByb3V0ZSBzZXR1cCwgZG9lcyBub3QgYXdhaXQgaXQsIGFuZCBuZXZlciBjYWxscyBpdCBhZ2FpbiDigJQgaXRzIG93blxuICogY29udHJhY3Qgc2F5cyBzby4gU28gT05FIHJlamVjdGlvbiB0aGVyZSBpcyBtZW1vaXplZCBmb3IgdGhlIGxpZmUgb2YgdGhlXG4gKiBwcm9jZXNzOiBldmVyeSBzdWJzZXF1ZW50IHJlcXVlc3QgcmUtYXdhaXRzIHRoYXQgc2FtZSByZWplY3RlZCBwcm9taXNlIGFuZCB0aGVcbiAqIGxpbWl0ZXIgaXMgc2lsZW50bHkgb2ZmLiBUaGUgc3RvcmUncyBpbnRlcm5hbCByZXRyeSBkb2Vzbid0IGhlbHAsIGJlY2F1c2UgaXRcbiAqIG9ubHkgcmUtbG9hZHMgb24gYSBgTk9TQ1JJUFRgIHJlcGx5LlxuICpcbiAqIEF0IGJvb3QgdGhhdCByZWplY3Rpb24gaXMgYSBsaXZlIHJhY2UsIG5vdCBhIGh5cG90aGV0aWNhbC4gVGhlIGVudiBSZWRpc1xuICogY2xpZW50IGhhcyBubyBvZmZsaW5lIHF1ZXVlLCBhbmQgaXRzIHJlYWRpbmVzcyBnYXRlIHdhaXRzIG9ubHlcbiAqIGBSRVFVRVNUX1BBVEhfUkVESVNfUkVBRFlfVElNRU9VVF9NU2AgYmVmb3JlIGxldHRpbmcgdGhlIGNvbW1hbmQgcnVuIGFnYWluc3QgYVxuICogc29ja2V0IHRoYXQgaXMgc3RpbGwgY29ubmVjdGluZyDigJQgc28gb24gYSBzbG93IHN0YXJ0IHRoZSBgU0NSSVBUIExPQURgIGlzXG4gKiByZWplY3RlZCB3aXRoIFwiU3RyZWFtIGlzbid0IHdyaXRlYWJsZVwiLCBhbmQgcmF0ZSBsaW1pdGluZyBuZXZlciBjb21lcyBiYWNrLlxuICpcbiAqIEJvdGggaGFsdmVzIG9mIHRoZSBmaXggbWF0dGVyLCBhbmQgbmVpdGhlciB0b3VjaGVzIHRoZSBjb25uZWN0aW9uJ3Mgc2VtYW50aWNzXG4gKiAobm8gb2ZmbGluZSBxdWV1ZSwgc3RpbGwgZmFpbC1mYXN0IOKAlCBhIHJlcXVlc3QgbXVzdCBuZXZlciBoYW5nIGJlaGluZCBhIFJlZGlzXG4gKiBvdXRhZ2UpLiBEZWZlcnJpbmcgYGluaXRgIHRvIHRoZSBmaXJzdCBhY3R1YWwgcmVxdWVzdCByZW1vdmVzIHRoZSByYWNlLCBzaW5jZVxuICogYSByZXF1ZXN0IGFycml2ZXMgbG9uZyBhZnRlciB0aGUgY29ubmVjdGlvbiBzZXR0bGVzLiBSZS1ydW5uaW5nIGl0IG9uIGZhaWx1cmVcbiAqIG1lYW5zIG5vIGxpbWl0ZXIgY2FuIGJlIGxlZnQgcGVybWFuZW50bHkgb2ZmIGJ5IG9uZSBiYWQgbW9tZW50LiBBIGZhaWx1cmVcbiAqIHN0aWxsIHByb3BhZ2F0ZXMgdG8gZXhwcmVzcy1yYXRlLWxpbWl0LCB3aGljaCDigJQgcGFpcmVkIHdpdGhcbiAqIGBwYXNzT25TdG9yZUVycm9yOiB0cnVlYCDigJQgbGV0cyB0aGF0IG9uZSByZXF1ZXN0IHRocm91Z2ggYW5kIGxvZ3MgaXQuXG4gKi9cbmZ1bmN0aW9uIHdpdGhSZXRyeWluZ0luaXQoc3RvcmU6IFN0b3JlLCBuYW1lc3BhY2U6IHN0cmluZyk6IFN0b3JlIHtcbiAgbGV0IGluaXRPcHRpb25zOiBTdG9yZUluaXRPcHRpb25zIHwgdW5kZWZpbmVkO1xuICBsZXQgaW5mbGlnaHQ6IFByb21pc2U8dm9pZD4gfCBudWxsID0gbnVsbDtcbiAgbGV0IGZhaWxlZCA9IGZhbHNlO1xuXG4gIGNvbnN0IGluaXRpYWxpemVkID0gKCk6IFByb21pc2U8dm9pZD4gPT4ge1xuICAgIC8vIGV4cHJlc3MtcmF0ZS1saW1pdCBhbHdheXMgY2FsbHMgYGluaXRgIGJlZm9yZSBhbnkgb3RoZXIgbWV0aG9kOyBpZiBzb21lXG4gICAgLy8gY2FsbGVyIGRvZXNuJ3QsIHBhc3Mgc3RyYWlnaHQgdGhyb3VnaCByYXRoZXIgdGhhbiBpbnZlbnRpbmcgb3B0aW9ucy5cbiAgICBpZiAoaW5pdE9wdGlvbnMgPT09IHVuZGVmaW5lZCkgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpO1xuICAgIGlmICghaW5mbGlnaHQpIHtcbiAgICAgIGluZmxpZ2h0ID0gUHJvbWlzZS5yZXNvbHZlKHN0b3JlLmluaXQ/Lihpbml0T3B0aW9ucykpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAvLyBXb3J0aCBhIGxpbmU6IHRoZSBmYWlsdXJlIGJlbG93IGlzIGxvdWQsIGFuZCBhbiBvcGVyYXRvciB3aG8gc2F3IGl0XG4gICAgICAgICAgLy8gbmVlZHMgdG8ga25vdyByYXRlIGxpbWl0aW5nIGlzIGFjdHVhbGx5IGVuZm9yY2luZyBhZ2Fpbi5cbiAgICAgICAgICBpZiAoZmFpbGVkKSBsb2dnZXIuaW5mbygnUmF0ZS1saW1pdCBzdG9yZSByZWNvdmVyZWQg4oCUIHNjcmlwdHMgbG9hZGVkJywgeyBuYW1lc3BhY2UgfSk7XG4gICAgICAgICAgZmFpbGVkID0gZmFsc2U7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoZXJyb3I6IHVua25vd24pID0+IHtcbiAgICAgICAgICAvLyBGb3JnZXQgdGhlIGZhaWx1cmUgc28gdGhlIE5FWFQgcmVxdWVzdCBidWlsZHMgZnJlc2ggc2NyaXB0IHByb21pc2VzXG4gICAgICAgICAgLy8gaW5zdGVhZCBvZiByZS1hd2FpdGluZyB0aGlzIHJlamVjdGVkIG9uZSBmb3JldmVyLlxuICAgICAgICAgIGluZmxpZ2h0ID0gbnVsbDtcbiAgICAgICAgICBmYWlsZWQgPSB0cnVlO1xuICAgICAgICAgIGxvZ2dlci53YXJuKCdSYXRlLWxpbWl0IHN0b3JlIGluaXQgZmFpbGVkIOKAlCByZXF1ZXN0cyBwYXNzIHVubGltaXRlZCB1bnRpbCBpdCBzdWNjZWVkcycsIHtcbiAgICAgICAgICAgIG5hbWVzcGFjZSwgZXJyb3I6IGVycm9yTWVzc2FnZShlcnJvciksXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgdGhyb3cgZXJyb3I7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gaW5mbGlnaHQ7XG4gIH07XG5cbiAgLy8gRXhhY3RseSBgUmVkaXNTdG9yZWAncyBzdXJmYWNlLCB3aGljaCBpcyBhbGwgdGhpcyBldmVyIHdyYXBzLiBJdCBoYXMgbm9cbiAgLy8gYHJlc2V0QWxsYCwgYHNodXRkb3duYCBvciBgbG9jYWxLZXlzYCwgYW5kIGV4cHJlc3MtcmF0ZS1saW1pdCByZWFkcyB0aGVcbiAgLy8gUFJFU0VOQ0Ugb2YgdGhvc2UgYXMgXCJ0aGUgc3RvcmUgc3VwcG9ydHMgaXRcIiDigJQgc28gZm9yd2FyZGluZyB0aGVtXG4gIC8vIGRlZmVuc2l2ZWx5IHdvdWxkIGFkdmVydGlzZSBjYXBhYmlsaXRpZXMgdGhhdCBkb24ndCBleGlzdC4gT21pdHRpbmdcbiAgLy8gYGxvY2FsS2V5c2AgaXMgYWxzbyB0aGUgY29ycmVjdCBhbnN3ZXIgZm9yIGEgUmVkaXMgc3RvcmU6IGtleXMgYXJlIHNoYXJlZFxuICAvLyBhY3Jvc3MgcmVwbGljYXMsIHdoaWNoIGlzIHRoZSB3aG9sZSBwb2ludC5cbiAgcmV0dXJuIHtcbiAgICAvLyBDYXB0dXJlZCwgbm90IGZvcndhcmRlZCDigJQgdGhlIHJlYWwgaW5pdCBydW5zIGZyb20gYGluaXRpYWxpemVkKClgLlxuICAgIGluaXQ6IChvcHRpb25zKSA9PiB7IGluaXRPcHRpb25zID0gb3B0aW9uczsgfSxcbiAgICBnZXQ6IGFzeW5jIChrZXkpID0+IHsgYXdhaXQgaW5pdGlhbGl6ZWQoKTsgcmV0dXJuIHN0b3JlLmdldD8uKGtleSk7IH0sXG4gICAgaW5jcmVtZW50OiBhc3luYyAoa2V5KSA9PiB7IGF3YWl0IGluaXRpYWxpemVkKCk7IHJldHVybiBzdG9yZS5pbmNyZW1lbnQoa2V5KTsgfSxcbiAgICBkZWNyZW1lbnQ6IGFzeW5jIChrZXkpID0+IHsgYXdhaXQgaW5pdGlhbGl6ZWQoKTsgcmV0dXJuIHN0b3JlLmRlY3JlbWVudChrZXkpOyB9LFxuICAgIHJlc2V0S2V5OiBhc3luYyAoa2V5KSA9PiB7IGF3YWl0IGluaXRpYWxpemVkKCk7IHJldHVybiBzdG9yZS5yZXNldEtleShrZXkpOyB9LFxuICAgIHByZWZpeDogc3RvcmUucHJlZml4LFxuICB9O1xufVxuXG4vKipcbiAqIEEgY3Jvc3MtcmVwbGljYSByYXRlLWxpbWl0IHN0b3JlIHVuZGVyIGBybDo8bmFtZXNwYWNlPjpgLCBvciBgdW5kZWZpbmVkYCB3aGVuXG4gKiBSZWRpcyBpc24ndCBjb25maWd1cmVkIChleHByZXNzLXJhdGUtbGltaXQgdGhlbiB1c2VzIGl0cyBwZXItcHJvY2VzcyBtZW1vcnlcbiAqIHN0b3JlLCB3aGljaCBpcyByaWdodCBmb3IgYSBzaW5nbGUgcmVwbGljYSkuXG4gKlxuICogV2l0aG91dCBhIHNoYXJlZCBzdG9yZSBldmVyeSBsaW1pdCBpcyByZWFsbHkgYG1heCDDlyByZXBsaWNhc2AsIGFuZCB3ZWFrZXN0XG4gKiBleGFjdGx5IHdoZW4gYW4gSFBBIGhhcyBzY2FsZWQgb3V0IHVuZGVyIGxvYWQuIFVzZSBhIG5hbWVzcGFjZSB1bmlxdWUgdG8gdGhlXG4gKiBzZXJ2aWNlIEFORCBsaW1pdGVyLCBzbyBzZXBhcmF0ZSBsaW1pdGVycyBuZXZlciBzaGFyZSBhIGNvdW50ZXIuIFBhaXIgaXQgd2l0aFxuICogYHBhc3NPblN0b3JlRXJyb3I6IHRydWVgOiBhIFJlZGlzIG91dGFnZSB0aGVuIGxldHMgcmVxdWVzdHMgdGhyb3VnaCBpbnN0ZWFkIG9mXG4gKiBmYWlsaW5nIHRoZW0uIFNjcmlwdCBsb2FkaW5nIGlzIGRlZmVycmVkIHRvIHRoZSBmaXJzdCByZXF1ZXN0IGFuZCByZXRyaWVkIG9uXG4gKiBmYWlsdXJlIOKAlCBzZWUge0BsaW5rIHdpdGhSZXRyeWluZ0luaXR9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlU2hhcmVkUmF0ZUxpbWl0U3RvcmUobmFtZXNwYWNlOiBzdHJpbmcpOiBTdG9yZSB8IHVuZGVmaW5lZCB7XG4gIGlmIChjbGllbnQgPT09IHVuZGVmaW5lZCkgY2xpZW50ID0gY3JlYXRlRW52UmVkaXNDbGllbnQ8Q29tbWFuZENsaWVudD4oJ3JhdGUtbGltaXQnKTtcbiAgaWYgKCFjbGllbnQpIHJldHVybiB1bmRlZmluZWQ7XG4gIGNvbnN0IHJlZGlzID0gY2xpZW50O1xuICBjb25zdCByZXF1aXJlID0gc2FmZUNyZWF0ZVJlcXVpcmUoaW1wb3J0Lm1ldGEudXJsKTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1yZXF1aXJlLWltcG9ydHNcbiAgY29uc3QgeyBSZWRpc1N0b3JlIH0gPSByZXF1aXJlKCdyYXRlLWxpbWl0LXJlZGlzJykgYXMgeyBSZWRpc1N0b3JlOiBuZXcgKG86IHVua25vd24pID0+IFN0b3JlIH07XG4gIGxvZ2dlci5kZWJ1ZygnU2hhcmVkIHJhdGUtbGltaXQgc3RvcmUgY3JlYXRlZCcsIHsgbmFtZXNwYWNlIH0pO1xuICByZXR1cm4gd2l0aFJldHJ5aW5nSW5pdChuZXcgUmVkaXNTdG9yZSh7XG4gICAgcHJlZml4OiBgcmw6JHtuYW1lc3BhY2V9OmAsXG4gICAgc2VuZENvbW1hbmQ6ICguLi5hcmdzOiBzdHJpbmdbXSkgPT4gcmVkaXMuY2FsbCguLi5hcmdzKSxcbiAgfSksIG5hbWVzcGFjZSk7XG59XG5cbi8qKiBUZXN0LW9ubHk6IGZvcmdldCB0aGUgbWVtb2l6ZWQgY2xpZW50LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIF9fcmVzZXRTaGFyZWRSYXRlTGltaXRTdG9yZUZvclRlc3RzKCk6IHZvaWQge1xuICBjbGllbnQgPSB1bmRlZmluZWQ7XG59XG4iXX0=
@@ -62,4 +62,4 @@ export function readinessGuard(bypassPaths = DEFAULT_READINESS_BYPASS) {
62
62
  sendError(res, 503, 'Service not ready — dependencies are still connecting');
63
63
  };
64
64
  }
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZGluZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9yZWFkaW5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFHdkQ7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsSUFBSSxZQUFZLEdBQUcsSUFBSSxDQUFDO0FBRXhCLG9FQUFvRTtBQUNwRSxNQUFNLFVBQVUsT0FBTztJQUNyQixPQUFPLFlBQVksQ0FBQztBQUN0QixDQUFDO0FBRUQsaURBQWlEO0FBQ2pELE1BQU0sVUFBVSxRQUFRLENBQUMsS0FBYztJQUNyQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0FBQ3ZCLENBQUM7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBRXZHLFNBQVMsVUFBVSxDQUFDLElBQVksRUFBRSxNQUF5QjtJQUN6RCxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRUQ7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQUMsV0FBVyxHQUFzQix3QkFBd0I7SUFDdEYsT0FBTyxDQUFDLEdBQVksRUFBRSxHQUFhLEVBQUUsSUFBSSxFQUFRLEVBQUU7UUFDakQsSUFBSSxZQUFZLElBQUksVUFBVSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLEVBQUUsQ0FBQztZQUN0RCxJQUFJLEVBQUUsQ0FBQztZQUNQLE9BQU87UUFDVCxDQUFDO1FBQ0QsR0FBRyxDQUFDLFNBQVMsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDbEMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsdURBQXVELENBQUMsQ0FBQztJQUMvRSxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IHNlbmRFcnJvciB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVxdWVzdEhhbmRsZXIsIFJlc3BvbnNlIH0gZnJvbSAnZXhwcmVzcyc7XG5cbi8qKlxuICogU2VydmljZSByZWFkaW5lc3Mgc3RhdGUuXG4gKlxuICogRmxpcHBlZCBieSBzdGFydFNlcnZlcidzIGRlcGVuZGVuY3kgc3VwZXJ2aXNvcjogc2V0IGZhbHNlIHRoZSBpbnN0YW50IHdlXG4gKiBzdGFydCBsaXN0ZW5pbmcsIHRydWUgb25jZSB0aGUgYmFja2luZyBzdG9yZShzKSBjb25uZWN0LCBhbmQgYmFjayB0byBmYWxzZVxuICogaWYgdGhleSBsYXRlciBkcm9wLiBSZWFkIGJ5IHRoZSByZWFkaW5lc3MtZ3VhcmQgbWlkZGxld2FyZSAoYW5kIHRlc3RzKS5cbiAqXG4gKiBNb2R1bGUtbGV2ZWwgc2luZ2xldG9uOiBlYWNoIHNlcnZpY2UgcnVucyBhcyBpdHMgb3duIHByb2Nlc3Mgd2l0aCBleGFjdGx5XG4gKiBvbmUgc2VydmVyLCBzbyBhIHNpbmdsZSBmbGFnIGlzIHN1ZmZpY2llbnQgYW5kIGF2b2lkcyB0aHJlYWRpbmcgc3RhdGVcbiAqIHRocm91Z2ggY3JlYXRlQXBwICsgc3RhcnRTZXJ2ZXIuXG4gKlxuICogRGVmYXVsdHMgdG8gYHRydWVgIHNvIGFuIGFwcCBidWlsdCB3aXRoIGNyZWF0ZUFwcCBidXQgTk9UIHN0YXJ0ZWQgdmlhXG4gKiBzdGFydFNlcnZlciDigJQgZXZlcnkgcm91dGUgdW5pdCB0ZXN0LCB3aGljaCBkcml2ZXMgdGhlIGFwcCBkaXJlY3RseSB3aXRoXG4gKiBzdXBlcnRlc3Qg4oCUIGlzIG5ldmVyIGJsb2NrZWQgYnkgdGhlIGd1YXJkLiBzdGFydFNlcnZlciBmbGlwcyBpdCB0byBmYWxzZVxuICogc3luY2hyb25vdXNseSBiZWZvcmUgaXQgb3BlbnMgdGhlIHBvcnQsIHNvIHRoZSBwcm9kdWN0aW9uIHBhdGggaXMgZ2F0ZWQuXG4gKi9cbmxldCBzZXJ2aWNlUmVhZHkgPSB0cnVlO1xuXG4vKiogVHJ1ZSBvbmNlIGRlcGVuZGVuY2llcyBoYXZlIGNvbm5lY3RlZCAoYW5kIHJlbWFpbiBjb25uZWN0ZWQpLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzUmVhZHkoKTogYm9vbGVhbiB7XG4gIHJldHVybiBzZXJ2aWNlUmVhZHk7XG59XG5cbi8qKiBTZXQgYnkgdGhlIHN0YXJ0dXAgc3VwZXJ2aXNvciAoYW5kIHRlc3RzKS4gKi9cbmV4cG9ydCBmdW5jdGlvbiBzZXRSZWFkeShyZWFkeTogYm9vbGVhbik6IHZvaWQge1xuICBzZXJ2aWNlUmVhZHkgPSByZWFkeTtcbn1cblxuLyoqXG4gKiBEZWZhdWx0IGluZnJhIGVuZHBvaW50cyB0aGF0IG11c3Qgc3RheSByZWFjaGFibGUgd2hpbGUgTm90UmVhZHksIHNvXG4gKiBvcmNoZXN0cmF0b3JzIGNhbiBwcm9iZSBsaXZlbmVzcy9yZWFkaW5lc3MsIHNjcmFwZSBtZXRyaWNzLCB3YXJtIHBvb2xzLFxuICogc2VydmUgZG9jcywgYW5kIHJlbGF5IFNTRSBsb2dzIGR1cmluZyBzdGFydHVwIG9yIGEgZGVwZW5kZW5jeSBvdXRhZ2UuIFRoaXNcbiAqIG1hdGNoZXMgd2hhdCBgY3JlYXRlQXBwYCBtb3VudHMuIEEgc2VydmljZSB3aG9zZSBvd24gcm91dGVzIENPTExJREUgd2l0aCBvbmVcbiAqIG9mIHRoZXNlIHByZWZpeGVzIChlLmcuIHBsYXRmb3JtIHNlcnZlcyBhIHRlbmFudCBsb2cgQVBJIGF0IGAvbG9nc2ApIG11c3RcbiAqIHBhc3MgYSBuYXJyb3dlciBsaXN0IHRvIGByZWFkaW5lc3NHdWFyZCgpYCBzbyBpdHMgYnVzaW5lc3Mgcm91dGVzIHN0YXkgZ2F0ZWQuXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX1JFQURJTkVTU19CWVBBU1MgPSBbJy9oZWFsdGgnLCAnL3JlYWR5JywgJy9tZXRyaWNzJywgJy93YXJtdXAnLCAnL2RvY3MnLCAnL2xvZ3MnXTtcblxuZnVuY3Rpb24gaXNCeXBhc3NlZChwYXRoOiBzdHJpbmcsIGJ5cGFzczogcmVhZG9ubHkgc3RyaW5nW10pOiBib29sZWFuIHtcbiAgcmV0dXJuIGJ5cGFzcy5zb21lKChwKSA9PiBwYXRoID09PSBwIHx8IHBhdGguc3RhcnRzV2l0aChgJHtwfS9gKSk7XG59XG5cbi8qKlxuICogUmVhZGluZXNzIGd1YXJkIOKAlCB3aGlsZSB0aGUgc2VydmljZSBpcyBOb3RSZWFkeSAoZGVwZW5kZW5jaWVzIG5vdCB5ZXRcbiAqIGNvbm5lY3RlZCwgb3IgZHJvcHBlZCksIHJlamVjdCBidXNpbmVzcyByZXF1ZXN0cyB3aXRoIDUwMyArIFJldHJ5LUFmdGVyXG4gKiBpbnN0ZWFkIG9mIGxldHRpbmcgdGhlbSBoaXQgYSBkaXNjb25uZWN0ZWQgZGF0YXN0b3JlIGFuZCA1MDAuXG4gKlxuICogVGhpcyBpcyB0aGUgcG9ydGFibGUsIGFwcC1sZXZlbCByZWFkaW5lc3MgbWVjaGFuaXNtIHRoYXQgd29ya3Mgb24gZXZlcnlcbiAqIGRlcGxveSB0YXJnZXQg4oCUIGluY2x1ZGluZyBEb2NrZXIgQ29tcG9zZSAoc2luZ2xlIHJlcGxpY2EsIG5vIG9yY2hlc3RyYXRvclxuICogdHJhZmZpYy1kcmFpbmluZykgYW5kIEZhcmdhdGUgKEVDUyBleHBvc2VzIG9ubHkgb25lIHBlci1zZXJ2aWNlIGhlYWx0aFxuICogc2lnbmFsLCB3aGljaCBpcyBhbHNvIGEga2lsbCB0cmlnZ2VyKS4gazhzIHJlYWRpbmVzcyBwcm9iZXMgbGF5ZXIgb24gdG9wLlxuICpcbiAqIEBwYXJhbSBieXBhc3NQYXRocyBJbmZyYSBwcmVmaXhlcyB0aGF0IGFsd2F5cyBwYXNzIHRocm91Z2ggZXZlbiB3aGlsZVxuICogICBOb3RSZWFkeS4gRGVmYXVsdHMgdG8ge0BsaW5rIERFRkFVTFRfUkVBRElORVNTX0JZUEFTU307IHBhc3MgYSBjdXN0b20gbGlzdFxuICogICB3aGVuIGEgYnVzaW5lc3Mgcm91dGUgd291bGQgb3RoZXJ3aXNlIGNvbGxpZGUgd2l0aCBhIGRlZmF1bHQgcHJlZml4LlxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVhZGluZXNzR3VhcmQoYnlwYXNzUGF0aHM6IHJlYWRvbmx5IHN0cmluZ1tdID0gREVGQVVMVF9SRUFESU5FU1NfQllQQVNTKTogUmVxdWVzdEhhbmRsZXIge1xuICByZXR1cm4gKHJlcTogUmVxdWVzdCwgcmVzOiBSZXNwb25zZSwgbmV4dCk6IHZvaWQgPT4ge1xuICAgIGlmIChzZXJ2aWNlUmVhZHkgfHwgaXNCeXBhc3NlZChyZXEucGF0aCwgYnlwYXNzUGF0aHMpKSB7XG4gICAgICBuZXh0KCk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHJlcy5zZXRIZWFkZXIoJ1JldHJ5LUFmdGVyJywgJzUnKTtcbiAgICBzZW5kRXJyb3IocmVzLCA1MDMsICdTZXJ2aWNlIG5vdCByZWFkeSDigJQgZGVwZW5kZW5jaWVzIGFyZSBzdGlsbCBjb25uZWN0aW5nJyk7XG4gIH07XG59XG4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZGluZXNzLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3JlYWRpbmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUd2RDs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxJQUFJLFlBQVksR0FBRyxJQUFJLENBQUM7QUFFeEIsb0VBQW9FO0FBQ3BFLE1BQU0sVUFBVSxPQUFPO0lBQ3JCLE9BQU8sWUFBWSxDQUFDO0FBQ3RCLENBQUM7QUFFRCxpREFBaUQ7QUFDakQsTUFBTSxVQUFVLFFBQVEsQ0FBQyxLQUFjO0lBQ3JDLFlBQVksR0FBRyxLQUFLLENBQUM7QUFDdkIsQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxDQUFDLFNBQVMsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFFdkcsU0FBUyxVQUFVLENBQUMsSUFBWSxFQUFFLE1BQXlCO0lBQ3pELE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFRDs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsTUFBTSxVQUFVLGNBQWMsQ0FBQyxXQUFXLEdBQXNCLHdCQUF3QjtJQUN0RixPQUFPLENBQUMsR0FBWSxFQUFFLEdBQWEsRUFBRSxJQUFJLEVBQVEsRUFBRTtRQUNqRCxJQUFJLFlBQVksSUFBSSxVQUFVLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsRUFBRSxDQUFDO1lBQ3RELElBQUksRUFBRSxDQUFDO1lBQ1AsT0FBTztRQUNULENBQUM7UUFDRCxHQUFHLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNsQyxTQUFTLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSx1REFBdUQsQ0FBQyxDQUFDO0lBQy9FLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgc2VuZEVycm9yIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHR5cGUgeyBSZXF1ZXN0LCBSZXF1ZXN0SGFuZGxlciwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcblxuLyoqXG4gKiBTZXJ2aWNlIHJlYWRpbmVzcyBzdGF0ZS5cbiAqXG4gKiBGbGlwcGVkIGJ5IHN0YXJ0U2VydmVyJ3MgZGVwZW5kZW5jeSBzdXBlcnZpc29yOiBzZXQgZmFsc2UgdGhlIGluc3RhbnQgd2VcbiAqIHN0YXJ0IGxpc3RlbmluZywgdHJ1ZSBvbmNlIHRoZSBiYWNraW5nIHN0b3JlKHMpIGNvbm5lY3QsIGFuZCBiYWNrIHRvIGZhbHNlXG4gKiBpZiB0aGV5IGxhdGVyIGRyb3AuIFJlYWQgYnkgdGhlIHJlYWRpbmVzcy1ndWFyZCBtaWRkbGV3YXJlIChhbmQgdGVzdHMpLlxuICpcbiAqIE1vZHVsZS1sZXZlbCBzaW5nbGV0b246IGVhY2ggc2VydmljZSBydW5zIGFzIGl0cyBvd24gcHJvY2VzcyB3aXRoIGV4YWN0bHlcbiAqIG9uZSBzZXJ2ZXIsIHNvIGEgc2luZ2xlIGZsYWcgaXMgc3VmZmljaWVudCBhbmQgYXZvaWRzIHRocmVhZGluZyBzdGF0ZVxuICogdGhyb3VnaCBjcmVhdGVBcHAgKyBzdGFydFNlcnZlci5cbiAqXG4gKiBEZWZhdWx0cyB0byBgdHJ1ZWAgc28gYW4gYXBwIGJ1aWx0IHdpdGggY3JlYXRlQXBwIGJ1dCBOT1Qgc3RhcnRlZCB2aWFcbiAqIHN0YXJ0U2VydmVyIOKAlCBldmVyeSByb3V0ZSB1bml0IHRlc3QsIHdoaWNoIGRyaXZlcyB0aGUgYXBwIGRpcmVjdGx5IHdpdGhcbiAqIHN1cGVydGVzdCDigJQgaXMgbmV2ZXIgYmxvY2tlZCBieSB0aGUgZ3VhcmQuIHN0YXJ0U2VydmVyIGZsaXBzIGl0IHRvIGZhbHNlXG4gKiBzeW5jaHJvbm91c2x5IGJlZm9yZSBpdCBvcGVucyB0aGUgcG9ydCwgc28gdGhlIHByb2R1Y3Rpb24gcGF0aCBpcyBnYXRlZC5cbiAqL1xubGV0IHNlcnZpY2VSZWFkeSA9IHRydWU7XG5cbi8qKiBUcnVlIG9uY2UgZGVwZW5kZW5jaWVzIGhhdmUgY29ubmVjdGVkIChhbmQgcmVtYWluIGNvbm5lY3RlZCkuICovXG5leHBvcnQgZnVuY3Rpb24gaXNSZWFkeSgpOiBib29sZWFuIHtcbiAgcmV0dXJuIHNlcnZpY2VSZWFkeTtcbn1cblxuLyoqIFNldCBieSB0aGUgc3RhcnR1cCBzdXBlcnZpc29yIChhbmQgdGVzdHMpLiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldFJlYWR5KHJlYWR5OiBib29sZWFuKTogdm9pZCB7XG4gIHNlcnZpY2VSZWFkeSA9IHJlYWR5O1xufVxuXG4vKipcbiAqIERlZmF1bHQgaW5mcmEgZW5kcG9pbnRzIHRoYXQgbXVzdCBzdGF5IHJlYWNoYWJsZSB3aGlsZSBOb3RSZWFkeSwgc29cbiAqIG9yY2hlc3RyYXRvcnMgY2FuIHByb2JlIGxpdmVuZXNzL3JlYWRpbmVzcywgc2NyYXBlIG1ldHJpY3MsIHdhcm0gcG9vbHMsXG4gKiBzZXJ2ZSBkb2NzLCBhbmQgcmVsYXkgU1NFIGxvZ3MgZHVyaW5nIHN0YXJ0dXAgb3IgYSBkZXBlbmRlbmN5IG91dGFnZS4gVGhpc1xuICogbWF0Y2hlcyB3aGF0IGBjcmVhdGVBcHBgIG1vdW50cy4gQSBzZXJ2aWNlIHdob3NlIG93biByb3V0ZXMgQ09MTElERSB3aXRoIG9uZVxuICogb2YgdGhlc2UgcHJlZml4ZXMgKGUuZy4gcGxhdGZvcm0gc2VydmVzIGEgdGVuYW50IGxvZyBBUEkgYXQgYC9sb2dzYCkgbXVzdFxuICogcGFzcyBhIG5hcnJvd2VyIGxpc3QgdG8gYHJlYWRpbmVzc0d1YXJkKClgIHNvIGl0cyBidXNpbmVzcyByb3V0ZXMgc3RheSBnYXRlZC5cbiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfUkVBRElORVNTX0JZUEFTUyA9IFsnL2hlYWx0aCcsICcvcmVhZHknLCAnL21ldHJpY3MnLCAnL3dhcm11cCcsICcvZG9jcycsICcvbG9ncyddO1xuXG5mdW5jdGlvbiBpc0J5cGFzc2VkKHBhdGg6IHN0cmluZywgYnlwYXNzOiByZWFkb25seSBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICByZXR1cm4gYnlwYXNzLnNvbWUoKHApID0+IHBhdGggPT09IHAgfHwgcGF0aC5zdGFydHNXaXRoKGAke3B9L2ApKTtcbn1cblxuLyoqXG4gKiBSZWFkaW5lc3MgZ3VhcmQg4oCUIHdoaWxlIHRoZSBzZXJ2aWNlIGlzIE5vdFJlYWR5IChkZXBlbmRlbmNpZXMgbm90IHlldFxuICogY29ubmVjdGVkLCBvciBkcm9wcGVkKSwgcmVqZWN0IGJ1c2luZXNzIHJlcXVlc3RzIHdpdGggNTAzICsgUmV0cnktQWZ0ZXJcbiAqIGluc3RlYWQgb2YgbGV0dGluZyB0aGVtIGhpdCBhIGRpc2Nvbm5lY3RlZCBkYXRhc3RvcmUgYW5kIDUwMC5cbiAqXG4gKiBUaGlzIGlzIHRoZSBwb3J0YWJsZSwgYXBwLWxldmVsIHJlYWRpbmVzcyBtZWNoYW5pc20gdGhhdCB3b3JrcyBvbiBldmVyeVxuICogZGVwbG95IHRhcmdldCDigJQgaW5jbHVkaW5nIERvY2tlciBDb21wb3NlIChzaW5nbGUgcmVwbGljYSwgbm8gb3JjaGVzdHJhdG9yXG4gKiB0cmFmZmljLWRyYWluaW5nKSBhbmQgRmFyZ2F0ZSAoRUNTIGV4cG9zZXMgb25seSBvbmUgcGVyLXNlcnZpY2UgaGVhbHRoXG4gKiBzaWduYWwsIHdoaWNoIGlzIGFsc28gYSBraWxsIHRyaWdnZXIpLiBrOHMgcmVhZGluZXNzIHByb2JlcyBsYXllciBvbiB0b3AuXG4gKlxuICogQHBhcmFtIGJ5cGFzc1BhdGhzIEluZnJhIHByZWZpeGVzIHRoYXQgYWx3YXlzIHBhc3MgdGhyb3VnaCBldmVuIHdoaWxlXG4gKiAgIE5vdFJlYWR5LiBEZWZhdWx0cyB0byB7QGxpbmsgREVGQVVMVF9SRUFESU5FU1NfQllQQVNTfTsgcGFzcyBhIGN1c3RvbSBsaXN0XG4gKiAgIHdoZW4gYSBidXNpbmVzcyByb3V0ZSB3b3VsZCBvdGhlcndpc2UgY29sbGlkZSB3aXRoIGEgZGVmYXVsdCBwcmVmaXguXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWFkaW5lc3NHdWFyZChieXBhc3NQYXRoczogcmVhZG9ubHkgc3RyaW5nW10gPSBERUZBVUxUX1JFQURJTkVTU19CWVBBU1MpOiBSZXF1ZXN0SGFuZGxlciB7XG4gIHJldHVybiAocmVxOiBSZXF1ZXN0LCByZXM6IFJlc3BvbnNlLCBuZXh0KTogdm9pZCA9PiB7XG4gICAgaWYgKHNlcnZpY2VSZWFkeSB8fCBpc0J5cGFzc2VkKHJlcS5wYXRoLCBieXBhc3NQYXRocykpIHtcbiAgICAgIG5leHQoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgcmVzLnNldEhlYWRlcignUmV0cnktQWZ0ZXInLCAnNScpO1xuICAgIHNlbmRFcnJvcihyZXMsIDUwMywgJ1NlcnZpY2Ugbm90IHJlYWR5IOKAlCBkZXBlbmRlbmNpZXMgYXJlIHN0aWxsIGNvbm5lY3RpbmcnKTtcbiAgfTtcbn1cbiJdfQ==
@@ -67,4 +67,4 @@ export function createRequestContext(req, sseManager) {
67
67
  log,
68
68
  };
69
69
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcmVxdWVzdC10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLGVBQWUsRUFBMEMsTUFBTSw0QkFBNEIsQ0FBQztBQUVoSSxPQUFPLEVBQUUsRUFBRSxJQUFJLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsVUFBVSxFQUFxQixNQUFNLG1DQUFtQyxDQUFDO0FBY2xGLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxZQUFZLENBQUMsQ0FBQztBQW1CMUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5Qkc7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQ2xDLEdBQVksRUFDWixVQUFzQjtJQUV0QixNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsR0FBa0IsQ0FBQyxDQUFDO0lBQ2pELG1FQUFtRTtJQUNuRSx5REFBeUQ7SUFDekQsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsU0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO0lBRWhFLGdEQUFnRDtJQUNoRCxNQUFNLEdBQUcsR0FBa0IsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ2pELE1BQU0sSUFBSSxHQUFHLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxRQUFRLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUM5RCxRQUFRLElBQUksRUFBRSxDQUFDO1lBQ2IsS0FBSyxPQUFPO2dCQUNWLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUM1QixNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO2dCQUMzQixNQUFNO1lBQ1I7Z0JBQ0UsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzNCLE1BQU07UUFDVixDQUFDO1FBQ0Qsd0VBQXdFO1FBQ3hFLDJFQUEyRTtRQUMzRSxxRUFBcUU7UUFDckUsNkVBQTZFO1FBQzdFLHNFQUFzRTtRQUN0RSwwRUFBMEU7UUFDMUUsMkVBQTJFO1FBQzNFLHNDQUFzQztRQUN0QyxJQUFJLFVBQVUsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ2hDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDbkUsQ0FBQztJQUNILENBQUMsQ0FBQztJQUVGLE9BQU87UUFDTCxTQUFTO1FBQ1QsUUFBUTtRQUNSLEdBQUc7S0FDSixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgeyBnZXRJZGVudGl0eSwgY3JlYXRlTG9nZ2VyLCByZWRhY3RTZW5zaXRpdmUsIHR5cGUgUmVxdWVzdElkZW50aXR5LCB0eXBlIEh0dHBSZXF1ZXN0IH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuaW1wb3J0IHR5cGUgeyBSZXF1ZXN0IH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyB2NyBhcyB1dWlkIH0gZnJvbSAndXVpZCc7XG5pbXBvcnQgeyBTU0VNYW5hZ2VyLCB0eXBlIFNTRUV2ZW50VHlwZSB9IGZyb20gJy4uL2h0dHAvc3NlLWNvbm5lY3Rpb24tbWFuYWdlci5qcyc7XG5cbi8vIENvbnNvbGlkYXRlZCBFeHByZXNzIFJlcXVlc3QgYXVnbWVudGF0aW9uc1xuZGVjbGFyZSBnbG9iYWwge1xuICBuYW1lc3BhY2UgRXhwcmVzcyB7XG4gICAgaW50ZXJmYWNlIFJlcXVlc3Qge1xuICAgICAgLyoqIFVuaXF1ZSByZXF1ZXN0IElEIChzZXQgYnkgYXBwLWZhY3RvcnkgbWlkZGxld2FyZSkgKi9cbiAgICAgIHJlcXVlc3RJZD86IHN0cmluZztcbiAgICAgIC8qKiBSZXF1ZXN0IGNvbnRleHQgd2l0aCBpZGVudGl0eSwgbG9nZ2luZywgYW5kIFNTRSAqL1xuICAgICAgY29udGV4dD86IFJlcXVlc3RDb250ZXh0O1xuICAgIH1cbiAgfVxufVxuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ2FwaS1zZXJ2ZXInKTtcblxuLyoqXG4gKiBSZXF1ZXN0IGxvZ2dlciBmdW5jdGlvbiB0eXBlXG4gKi9cbmV4cG9ydCB0eXBlIFJlcXVlc3RMb2dnZXIgPSAodHlwZTogU1NFRXZlbnRUeXBlLCBtZXNzYWdlOiBzdHJpbmcsIGRhdGE/OiB1bmtub3duKSA9PiB2b2lkO1xuXG4vKipcbiAqIFJlcXVlc3QgY29udGV4dCB3aXRoIGlkZW50aXR5IGFuZCBsb2dnaW5nXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVxdWVzdENvbnRleHQge1xuICAvKiogVW5pcXVlIHJlcXVlc3QgSUQgKi9cbiAgcmVxdWVzdElkOiBzdHJpbmc7XG4gIC8qKiBJZGVudGl0eSBmcm9tIGhlYWRlcnMgKi9cbiAgaWRlbnRpdHk6IFJlcXVlc3RJZGVudGl0eTtcbiAgLyoqIExvZ2dpbmcgZnVuY3Rpb246IGxvZ2dlciBhbHdheXMsIHBsdXMgdGhlIFNTRSBsb2cgc3RyZWFtIHdoZW4gdGhlIHNlcnZpY2UgZW5hYmxlcyBpdCAqL1xuICBsb2c6IFJlcXVlc3RMb2dnZXI7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgcmVxdWVzdCBjb250ZXh0IHdpdGggaWRlbnRpdHkgYW5kIGxvZ2dpbmdcbiAqXG4gKiBDcmVhdGVzIGEgbG9nZ2VyIHRoYXQgb3V0cHV0cyB0byBib3RoIGNvbnNvbGUgYW5kIFNTRS5cbiAqXG4gKiBAcGFyYW0gcmVxIC0gRXhwcmVzcyByZXF1ZXN0XG4gKiBAcGFyYW0gc3NlTWFuYWdlciAtIFNTRSBtYW5hZ2VyIGZvciByZWFsLXRpbWUgbG9nc1xuICogQHJldHVybnMgUmVxdWVzdCBjb250ZXh0IHdpdGggaWRlbnRpdHkgYW5kIGxvZ2dlclxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBhcHAucG9zdCgnL2FwaS9yZXNvdXJjZScsIHJlcXVpcmVBdXRoLCBhc3luYyAocmVxLCByZXMpID0+IHtcbiAqICAgY29uc3QgY3R4ID0gY3JlYXRlUmVxdWVzdENvbnRleHQocmVxLCBzc2VNYW5hZ2VyKTtcbiAqXG4gKiAgIGN0eC5sb2coJ0lORk8nLCAnUHJvY2Vzc2luZyByZXF1ZXN0JywgeyBkYXRhOiByZXEuYm9keSB9KTtcbiAqXG4gKiAgIGlmICghY3R4LmlkZW50aXR5Lm9yZ0lkKSB7XG4gKiAgICAgY3R4LmxvZygnRVJST1InLCAnTWlzc2luZyBvcmdhbml6YXRpb24gSUQnKTtcbiAqICAgICByZXR1cm4gc2VuZEJhZFJlcXVlc3QocmVzLCAneC1vcmctaWQgaGVhZGVyIHJlcXVpcmVkJyk7XG4gKiAgIH1cbiAqXG4gKiAgIC8vIFByb2Nlc3MgcmVxdWVzdC4uLlxuICogICBjdHgubG9nKCdDT01QTEVURUQnLCAnUmVxdWVzdCBwcm9jZXNzZWQgc3VjY2Vzc2Z1bGx5Jyk7XG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUmVxdWVzdENvbnRleHQoXG4gIHJlcTogUmVxdWVzdCxcbiAgc3NlTWFuYWdlcjogU1NFTWFuYWdlcixcbik6IFJlcXVlc3RDb250ZXh0IHtcbiAgY29uc3QgaWRlbnRpdHkgPSBnZXRJZGVudGl0eShyZXEgYXMgSHR0cFJlcXVlc3QpO1xuICAvLyBQcmVmZXIgdGhlIGFscmVhZHktcGFyc2VkIHJlcXVlc3RJZCBmcm9tIGFwcC1mYWN0b3J5IG1pZGRsZXdhcmUsXG4gIC8vIGZhbGwgYmFjayB0byBpZGVudGl0eSBoZWFkZXIsIHRoZW4gZ2VuZXJhdGUgYSBuZXcgb25lLlxuICBjb25zdCByZXF1ZXN0SWQgPSByZXEucmVxdWVzdElkIHx8IGlkZW50aXR5LnJlcXVlc3RJZCB8fCB1dWlkKCk7XG5cbiAgLy8gQ3JlYXRlIGxvZ2dlciB0aGF0IG91dHB1dHMgdG8gV2luc3RvbiBhbmQgU1NFXG4gIGNvbnN0IGxvZzogUmVxdWVzdExvZ2dlciA9ICh0eXBlLCBtZXNzYWdlLCBkYXRhKSA9PiB7XG4gICAgY29uc3QgbWV0YSA9IHsgcmVxdWVzdElkLCBvcmdJZDogaWRlbnRpdHkub3JnSWQsIHR5cGUsIGRhdGEgfTtcbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ0VSUk9SJzpcbiAgICAgICAgbG9nZ2VyLmVycm9yKG1lc3NhZ2UsIG1ldGEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ1dBUk4nOlxuICAgICAgICBsb2dnZXIud2FybihtZXNzYWdlLCBtZXRhKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBsb2dnZXIuaW5mbyhtZXNzYWdlLCBtZXRhKTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICAgIC8vIE9ubHkgYSBzZXJ2aWNlIHRoYXQgc2VydmVzIGEgbG9nIHN0cmVhbSAoY3JlYXRlQXBwIGBsb2dTdHJlYW06IHRydWVgKVxuICAgIC8vIHB1c2hlcyB0aGUgbGluZSB0byBTU0Ug4oCUIG90aGVyd2lzZSBldmVyeSBsb2cgbGluZSBvZiBldmVyeSBzZXJ2aWNlIHdvdWxkXG4gICAgLy8gYmUgc2VyaWFsaXplZCwgd3JpdHRlbiBhbmQgcmVsYXllZCBhY3Jvc3MgUmVkaXMgZm9yIG5vIHN1YnNjcmliZXIuXG4gICAgLy8gVGhlIFdpbnN0b24gY2FsbCBhYm92ZSBpcyByZWRhY3RlZCBieSB0aGUgbG9nZ2VyJ3MgYHJlZGFjdEZvcm1hdGAsIGJ1dCB0aGVcbiAgICAvLyBTU0UgZnJhbWUgYnlwYXNzZXMgdGhlIGxvZ2dlciBlbnRpcmVseSDigJQgYXBwbHkgdGhlIFNBTUUga2V5LXBhdHRlcm5cbiAgICAvLyByZWRhY3Rpb24gdG8gYGRhdGFgIGJlZm9yZSBpdCdzIHB1c2hlZCB0byB0aGUgY2xpZW50IHNvIGEgc2VjcmV0IGluIHRoZVxuICAgIC8vIGxvZyBwYXlsb2FkIChlLmcuIGFuIGFjY2lkZW50YWwgYHRva2VuYC9gcGFzc3dvcmRgIGZpZWxkKSBpc24ndCBzdHJlYW1lZFxuICAgIC8vIG91dCBvdmVyIHRoZSBidWlsZC1sb2cgU1NFIGNoYW5uZWwuXG4gICAgaWYgKHNzZU1hbmFnZXIubG9nU3RyZWFtRW5hYmxlZCkge1xuICAgICAgc3NlTWFuYWdlci5zZW5kKHJlcXVlc3RJZCwgdHlwZSwgbWVzc2FnZSwgcmVkYWN0U2Vuc2l0aXZlKGRhdGEpKTtcbiAgICB9XG4gIH07XG5cbiAgcmV0dXJuIHtcbiAgICByZXF1ZXN0SWQsXG4gICAgaWRlbnRpdHksXG4gICAgbG9nLFxuICB9O1xufVxuIl19
70
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWVzdC10eXBlcy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9yZXF1ZXN0LXR5cGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsZUFBZSxFQUEwQyxNQUFNLDRCQUE0QixDQUFDO0FBRWhJLE9BQU8sRUFBRSxFQUFFLElBQUksSUFBSSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxVQUFVLEVBQXFCLE1BQU0sbUNBQW1DLENBQUM7QUFjbEYsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBbUIxQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXlCRztBQUNILE1BQU0sVUFBVSxvQkFBb0IsQ0FDbEMsR0FBWSxFQUNaLFVBQXNCO0lBRXRCLE1BQU0sUUFBUSxHQUFHLFdBQVcsQ0FBQyxHQUFrQixDQUFDLENBQUM7SUFDakQsbUVBQW1FO0lBQ25FLHlEQUF5RDtJQUN6RCxNQUFNLFNBQVMsR0FBRyxHQUFHLENBQUMsU0FBUyxJQUFJLFFBQVEsQ0FBQyxTQUFTLElBQUksSUFBSSxFQUFFLENBQUM7SUFFaEUsZ0RBQWdEO0lBQ2hELE1BQU0sR0FBRyxHQUFrQixDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDakQsTUFBTSxJQUFJLEdBQUcsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFFBQVEsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQzlELFFBQVEsSUFBSSxFQUFFLENBQUM7WUFDYixLQUFLLE9BQU87Z0JBQ1YsTUFBTSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzVCLE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzNCLE1BQU07WUFDUjtnQkFDRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDM0IsTUFBTTtRQUNWLENBQUM7UUFDRCx3RUFBd0U7UUFDeEUsMkVBQTJFO1FBQzNFLHFFQUFxRTtRQUNyRSw2RUFBNkU7UUFDN0Usc0VBQXNFO1FBQ3RFLDBFQUEwRTtRQUMxRSwyRUFBMkU7UUFDM0Usc0NBQXNDO1FBQ3RDLElBQUksVUFBVSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDaEMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNuRSxDQUFDO0lBQ0gsQ0FBQyxDQUFDO0lBRUYsT0FBTztRQUNMLFNBQVM7UUFDVCxRQUFRO1FBQ1IsR0FBRztLQUNKLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IGdldElkZW50aXR5LCBjcmVhdGVMb2dnZXIsIHJlZGFjdFNlbnNpdGl2ZSwgdHlwZSBSZXF1ZXN0SWRlbnRpdHksIHR5cGUgSHR0cFJlcXVlc3QgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgdHlwZSB7IFJlcXVlc3QgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IHY3IGFzIHV1aWQgfSBmcm9tICd1dWlkJztcbmltcG9ydCB7IFNTRU1hbmFnZXIsIHR5cGUgU1NFRXZlbnRUeXBlIH0gZnJvbSAnLi4vaHR0cC9zc2UtY29ubmVjdGlvbi1tYW5hZ2VyLmpzJztcblxuLy8gQ29uc29saWRhdGVkIEV4cHJlc3MgUmVxdWVzdCBhdWdtZW50YXRpb25zXG5kZWNsYXJlIGdsb2JhbCB7XG4gIG5hbWVzcGFjZSBFeHByZXNzIHtcbiAgICBpbnRlcmZhY2UgUmVxdWVzdCB7XG4gICAgICAvKiogVW5pcXVlIHJlcXVlc3QgSUQgKHNldCBieSBhcHAtZmFjdG9yeSBtaWRkbGV3YXJlKSAqL1xuICAgICAgcmVxdWVzdElkPzogc3RyaW5nO1xuICAgICAgLyoqIFJlcXVlc3QgY29udGV4dCB3aXRoIGlkZW50aXR5LCBsb2dnaW5nLCBhbmQgU1NFICovXG4gICAgICBjb250ZXh0PzogUmVxdWVzdENvbnRleHQ7XG4gICAgfVxuICB9XG59XG5cbmNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcignYXBpLXNlcnZlcicpO1xuXG4vKipcbiAqIFJlcXVlc3QgbG9nZ2VyIGZ1bmN0aW9uIHR5cGVcbiAqL1xuZXhwb3J0IHR5cGUgUmVxdWVzdExvZ2dlciA9ICh0eXBlOiBTU0VFdmVudFR5cGUsIG1lc3NhZ2U6IHN0cmluZywgZGF0YT86IHVua25vd24pID0+IHZvaWQ7XG5cbi8qKlxuICogUmVxdWVzdCBjb250ZXh0IHdpdGggaWRlbnRpdHkgYW5kIGxvZ2dpbmdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0Q29udGV4dCB7XG4gIC8qKiBVbmlxdWUgcmVxdWVzdCBJRCAqL1xuICByZXF1ZXN0SWQ6IHN0cmluZztcbiAgLyoqIElkZW50aXR5IGZyb20gaGVhZGVycyAqL1xuICBpZGVudGl0eTogUmVxdWVzdElkZW50aXR5O1xuICAvKiogTG9nZ2luZyBmdW5jdGlvbjogbG9nZ2VyIGFsd2F5cywgcGx1cyB0aGUgU1NFIGxvZyBzdHJlYW0gd2hlbiB0aGUgc2VydmljZSBlbmFibGVzIGl0ICovXG4gIGxvZzogUmVxdWVzdExvZ2dlcjtcbn1cblxuLyoqXG4gKiBDcmVhdGUgYSByZXF1ZXN0IGNvbnRleHQgd2l0aCBpZGVudGl0eSBhbmQgbG9nZ2luZ1xuICpcbiAqIENyZWF0ZXMgYSBsb2dnZXIgdGhhdCBvdXRwdXRzIHRvIGJvdGggY29uc29sZSBhbmQgU1NFLlxuICpcbiAqIEBwYXJhbSByZXEgLSBFeHByZXNzIHJlcXVlc3RcbiAqIEBwYXJhbSBzc2VNYW5hZ2VyIC0gU1NFIG1hbmFnZXIgZm9yIHJlYWwtdGltZSBsb2dzXG4gKiBAcmV0dXJucyBSZXF1ZXN0IGNvbnRleHQgd2l0aCBpZGVudGl0eSBhbmQgbG9nZ2VyXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGFwcC5wb3N0KCcvYXBpL3Jlc291cmNlJywgcmVxdWlyZUF1dGgsIGFzeW5jIChyZXEsIHJlcykgPT4ge1xuICogICBjb25zdCBjdHggPSBjcmVhdGVSZXF1ZXN0Q29udGV4dChyZXEsIHNzZU1hbmFnZXIpO1xuICpcbiAqICAgY3R4LmxvZygnSU5GTycsICdQcm9jZXNzaW5nIHJlcXVlc3QnLCB7IGRhdGE6IHJlcS5ib2R5IH0pO1xuICpcbiAqICAgaWYgKCFjdHguaWRlbnRpdHkub3JnSWQpIHtcbiAqICAgICBjdHgubG9nKCdFUlJPUicsICdNaXNzaW5nIG9yZ2FuaXphdGlvbiBJRCcpO1xuICogICAgIHJldHVybiBzZW5kQmFkUmVxdWVzdChyZXMsICd4LW9yZy1pZCBoZWFkZXIgcmVxdWlyZWQnKTtcbiAqICAgfVxuICpcbiAqICAgLy8gUHJvY2VzcyByZXF1ZXN0Li4uXG4gKiAgIGN0eC5sb2coJ0NPTVBMRVRFRCcsICdSZXF1ZXN0IHByb2Nlc3NlZCBzdWNjZXNzZnVsbHknKTtcbiAqIH0pO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVSZXF1ZXN0Q29udGV4dChcbiAgcmVxOiBSZXF1ZXN0LFxuICBzc2VNYW5hZ2VyOiBTU0VNYW5hZ2VyLFxuKTogUmVxdWVzdENvbnRleHQge1xuICBjb25zdCBpZGVudGl0eSA9IGdldElkZW50aXR5KHJlcSBhcyBIdHRwUmVxdWVzdCk7XG4gIC8vIFByZWZlciB0aGUgYWxyZWFkeS1wYXJzZWQgcmVxdWVzdElkIGZyb20gYXBwLWZhY3RvcnkgbWlkZGxld2FyZSxcbiAgLy8gZmFsbCBiYWNrIHRvIGlkZW50aXR5IGhlYWRlciwgdGhlbiBnZW5lcmF0ZSBhIG5ldyBvbmUuXG4gIGNvbnN0IHJlcXVlc3RJZCA9IHJlcS5yZXF1ZXN0SWQgfHwgaWRlbnRpdHkucmVxdWVzdElkIHx8IHV1aWQoKTtcblxuICAvLyBDcmVhdGUgbG9nZ2VyIHRoYXQgb3V0cHV0cyB0byBXaW5zdG9uIGFuZCBTU0VcbiAgY29uc3QgbG9nOiBSZXF1ZXN0TG9nZ2VyID0gKHR5cGUsIG1lc3NhZ2UsIGRhdGEpID0+IHtcbiAgICBjb25zdCBtZXRhID0geyByZXF1ZXN0SWQsIG9yZ0lkOiBpZGVudGl0eS5vcmdJZCwgdHlwZSwgZGF0YSB9O1xuICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgY2FzZSAnRVJST1InOlxuICAgICAgICBsb2dnZXIuZXJyb3IobWVzc2FnZSwgbWV0YSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnV0FSTic6XG4gICAgICAgIGxvZ2dlci53YXJuKG1lc3NhZ2UsIG1ldGEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIGxvZ2dlci5pbmZvKG1lc3NhZ2UsIG1ldGEpO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgLy8gT25seSBhIHNlcnZpY2UgdGhhdCBzZXJ2ZXMgYSBsb2cgc3RyZWFtIChjcmVhdGVBcHAgYGxvZ1N0cmVhbTogdHJ1ZWApXG4gICAgLy8gcHVzaGVzIHRoZSBsaW5lIHRvIFNTRSDigJQgb3RoZXJ3aXNlIGV2ZXJ5IGxvZyBsaW5lIG9mIGV2ZXJ5IHNlcnZpY2Ugd291bGRcbiAgICAvLyBiZSBzZXJpYWxpemVkLCB3cml0dGVuIGFuZCByZWxheWVkIGFjcm9zcyBSZWRpcyBmb3Igbm8gc3Vic2NyaWJlci5cbiAgICAvLyBUaGUgV2luc3RvbiBjYWxsIGFib3ZlIGlzIHJlZGFjdGVkIGJ5IHRoZSBsb2dnZXIncyBgcmVkYWN0Rm9ybWF0YCwgYnV0IHRoZVxuICAgIC8vIFNTRSBmcmFtZSBieXBhc3NlcyB0aGUgbG9nZ2VyIGVudGlyZWx5IOKAlCBhcHBseSB0aGUgU0FNRSBrZXktcGF0dGVyblxuICAgIC8vIHJlZGFjdGlvbiB0byBgZGF0YWAgYmVmb3JlIGl0J3MgcHVzaGVkIHRvIHRoZSBjbGllbnQgc28gYSBzZWNyZXQgaW4gdGhlXG4gICAgLy8gbG9nIHBheWxvYWQgKGUuZy4gYW4gYWNjaWRlbnRhbCBgdG9rZW5gL2BwYXNzd29yZGAgZmllbGQpIGlzbid0IHN0cmVhbWVkXG4gICAgLy8gb3V0IG92ZXIgdGhlIGJ1aWxkLWxvZyBTU0UgY2hhbm5lbC5cbiAgICBpZiAoc3NlTWFuYWdlci5sb2dTdHJlYW1FbmFibGVkKSB7XG4gICAgICBzc2VNYW5hZ2VyLnNlbmQocmVxdWVzdElkLCB0eXBlLCBtZXNzYWdlLCByZWRhY3RTZW5zaXRpdmUoZGF0YSkpO1xuICAgIH1cbiAgfTtcblxuICByZXR1cm4ge1xuICAgIHJlcXVlc3RJZCxcbiAgICBpZGVudGl0eSxcbiAgICBsb2csXG4gIH07XG59XG4iXX0=
@@ -25,4 +25,4 @@ export function requireOrgId() {
25
25
  next();
26
26
  };
27
27
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS1vcmctaWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3JlcXVpcmUtb3JnLWlkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUVsRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFOUM7Ozs7Ozs7Ozs7O0dBV0c7QUFDSCxNQUFNLFVBQVUsWUFBWTtJQUMxQixPQUFPLENBQUMsR0FBWSxFQUFFLEdBQWEsRUFBRSxJQUFrQixFQUFRLEVBQUU7UUFDL0QsTUFBTSxHQUFHLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRTVCLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3hCLEdBQUcsQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLHNEQUFzRCxDQUFDLENBQUM7WUFDekUsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUscUVBQXFFLEVBQUUsU0FBUyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDdkgsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLEVBQUUsQ0FBQztJQUNULENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgRXJyb3JDb2RlLCBzZW5kRXJyb3IgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgdHlwZSB7IFJlcXVlc3QsIFJlc3BvbnNlLCBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IGdldENvbnRleHQgfSBmcm9tICcuL2dldC1jb250ZXh0LmpzJztcblxuLyoqXG4gKiBDcmVhdGUgbWlkZGxld2FyZSB0aGF0IHZhbGlkYXRlcyB0aGUgcmVxdWVzdCBoYXMgYSByZXNvbHZlZCB0ZW5hbnQgb3JnIChgY3R4LmlkZW50aXR5Lm9yZ0lkYCkuXG4gKlxuICogQHJldHVybnMgRXhwcmVzcyBtaWRkbGV3YXJlXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHsgYXBwLCBzc2VNYW5hZ2VyIH0gPSBjcmVhdGVBcHAoKTtcbiAqXG4gKiBhcHAuZ2V0KCcvcGlwZWxpbmVzJywgcmVxdWlyZUF1dGgsIHJlcXVpcmVPcmdJZCgpLCBoYW5kbGVyKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWlyZU9yZ0lkKCkge1xuICByZXR1cm4gKHJlcTogUmVxdWVzdCwgcmVzOiBSZXNwb25zZSwgbmV4dDogTmV4dEZ1bmN0aW9uKTogdm9pZCA9PiB7XG4gICAgY29uc3QgY3R4ID0gZ2V0Q29udGV4dChyZXEpO1xuXG4gICAgaWYgKCFjdHguaWRlbnRpdHkub3JnSWQpIHtcbiAgICAgIGN0eC5sb2coJ0VSUk9SJywgJ09yZ2FuaXphdGlvbiBJRCBpcyBtaXNzaW5nIGZyb20gdGhlIHJlcXVlc3QgaWRlbnRpdHknKTtcbiAgICAgIHNlbmRFcnJvcihyZXMsIDQwMCwgJ09yZ2FuaXphdGlvbiBJRCBpcyByZXF1aXJlZDogdGhlIGNhbGxlciBoYXMgbm8gYWN0aXZlIG9yZ2FuaXphdGlvbi4nLCBFcnJvckNvZGUuVkFMSURBVElPTl9FUlJPUik7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbmV4dCgpO1xuICB9O1xufVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS1vcmctaWQuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcmVxdWlyZS1vcmctaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWxFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU5Qzs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sVUFBVSxZQUFZO0lBQzFCLE9BQU8sQ0FBQyxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCLEVBQVEsRUFBRTtRQUMvRCxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDeEIsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsc0RBQXNELENBQUMsQ0FBQztZQUN6RSxTQUFTLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxxRUFBcUUsRUFBRSxTQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztZQUN2SCxPQUFPO1FBQ1QsQ0FBQztRQUVELElBQUksRUFBRSxDQUFDO0lBQ1QsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgeyBFcnJvckNvZGUsIHNlbmRFcnJvciB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVzcG9uc2UsIE5leHRGdW5jdGlvbiB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHsgZ2V0Q29udGV4dCB9IGZyb20gJy4vZ2V0LWNvbnRleHQuanMnO1xuXG4vKipcbiAqIENyZWF0ZSBtaWRkbGV3YXJlIHRoYXQgdmFsaWRhdGVzIHRoZSByZXF1ZXN0IGhhcyBhIHJlc29sdmVkIHRlbmFudCBvcmcgKGBjdHguaWRlbnRpdHkub3JnSWRgKS5cbiAqXG4gKiBAcmV0dXJucyBFeHByZXNzIG1pZGRsZXdhcmVcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgeyBhcHAsIHNzZU1hbmFnZXIgfSA9IGNyZWF0ZUFwcCgpO1xuICpcbiAqIGFwcC5nZXQoJy9waXBlbGluZXMnLCByZXF1aXJlQXV0aCwgcmVxdWlyZU9yZ0lkKCksIGhhbmRsZXIpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZXF1aXJlT3JnSWQoKSB7XG4gIHJldHVybiAocmVxOiBSZXF1ZXN0LCByZXM6IFJlc3BvbnNlLCBuZXh0OiBOZXh0RnVuY3Rpb24pOiB2b2lkID0+IHtcbiAgICBjb25zdCBjdHggPSBnZXRDb250ZXh0KHJlcSk7XG5cbiAgICBpZiAoIWN0eC5pZGVudGl0eS5vcmdJZCkge1xuICAgICAgY3R4LmxvZygnRVJST1InLCAnT3JnYW5pemF0aW9uIElEIGlzIG1pc3NpbmcgZnJvbSB0aGUgcmVxdWVzdCBpZGVudGl0eScpO1xuICAgICAgc2VuZEVycm9yKHJlcywgNDAwLCAnT3JnYW5pemF0aW9uIElEIGlzIHJlcXVpcmVkOiB0aGUgY2FsbGVyIGhhcyBubyBhY3RpdmUgb3JnYW5pemF0aW9uLicsIEVycm9yQ29kZS5WQUxJREFUSU9OX0VSUk9SKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBuZXh0KCk7XG4gIH07XG59XG4iXX0=
@@ -81,4 +81,4 @@ export function withRoute(handler, options = {}) {
81
81
  }
82
82
  };
83
83
  }
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvcm91dGUtd3JhcHBlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFDTCxRQUFRLEVBQ1IsWUFBWSxFQUNaLGNBQWMsRUFDZCxTQUFTLEVBQ1QsY0FBYyxFQUNkLGlCQUFpQixFQUNqQixZQUFZLEdBQ2IsTUFBTSw0QkFBNEIsQ0FBQztBQUVwQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHOUMsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBRTdDOzs7OztHQUtHO0FBQ0gsU0FBUyxlQUFlLENBQUMsS0FBYztJQUNyQyxJQUFJLEtBQUssWUFBWSxLQUFLLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQztRQUN4RSxPQUFPLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxtQkFBbUIseUJBQXlCLENBQUM7SUFDdkUsQ0FBQztJQUNELE9BQU8sWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQzdCLENBQUM7QUE4QkQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FDdkIsT0FBNEMsRUFDNUMsT0FBTyxHQUFxQixFQUFFO0lBRTlCLE1BQU0sRUFBRSxZQUFZLEdBQUcsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDO0lBRXhDLE9BQU8sS0FBSyxFQUFFLEdBQVksRUFBRSxHQUFhLEVBQUUsRUFBRTtRQUMzQyxNQUFNLEdBQUcsR0FBRyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUIsd0VBQXdFO1FBQ3hFLDZFQUE2RTtRQUM3RSxNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDdkMsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksRUFBRSxDQUFDO1FBRXpDLElBQUksWUFBWSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsT0FBTyxjQUFjLENBQUMsR0FBRyxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDNUQsQ0FBQztRQUVELElBQUksQ0FBQztZQUNILE1BQU0sT0FBTyxDQUFDLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDbEQsQ0FBQztRQUFDLE9BQU8sS0FBSyxFQUFFLENBQUM7WUFDZixzREFBc0Q7WUFDdEQsSUFBSSxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3BCLE1BQU0sQ0FBQyxLQUFLLENBQUMseUNBQXlDLEVBQUU7b0JBQ3RELFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztvQkFDeEIsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUM7aUJBQzlCLENBQUMsQ0FBQztnQkFDSCxPQUFPO1lBQ1QsQ0FBQztZQUVELElBQUksS0FBSyxZQUFZLFFBQVEsRUFBRSxDQUFDO2dCQUM5QixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsVUFBVSxJQUFJLEdBQUcsSUFBSSxLQUFLLENBQUMsVUFBVSxHQUFHLEdBQUc7b0JBQzlELENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVTtvQkFDbEIsQ0FBQyxDQUFDLEdBQUcsQ0FBQztnQkFDUixPQUFPLEtBQUssQ0FBQyxPQUFPLEtBQUssU0FBUztvQkFDaEMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQztvQkFDbkQsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDdkUsQ0FBQztZQUVELDZFQUE2RTtZQUM3RSw4RUFBOEU7WUFDOUUsK0VBQStFO1lBQy9FLDhFQUE4RTtZQUM5RSxNQUFNLEVBQUUsR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQ2pDLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztnQkFDeEIsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFLLENBQUM7Z0JBQzdCLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO2FBQzFDLENBQUMsQ0FBQztZQUNILE9BQU8saUJBQWlCLENBQUMsR0FBRyxFQUFFLHVCQUF1QixFQUFFLEVBQUUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZGLENBQUM7SUFDSCxDQUFDLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7XG4gIEFwcEVycm9yLFxuICBlcnJvck1lc3NhZ2UsXG4gIGV4dHJhY3REYkVycm9yLFxuICBzZW5kRXJyb3IsXG4gIHNlbmRCYWRSZXF1ZXN0LFxuICBzZW5kSW50ZXJuYWxFcnJvcixcbiAgY3JlYXRlTG9nZ2VyLFxufSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgdHlwZSB7IFJlcXVlc3QsIFJlc3BvbnNlLCBSZXF1ZXN0SGFuZGxlciB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHsgZ2V0Q29udGV4dCB9IGZyb20gJy4vZ2V0LWNvbnRleHQuanMnO1xuaW1wb3J0IHR5cGUgeyBSZXF1ZXN0Q29udGV4dCB9IGZyb20gJy4vcmVxdWVzdC10eXBlcy5qcyc7XG5cbmNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcigncm91dGUtd3JhcHBlcicpO1xuXG4vKipcbiAqIEEgbG9nLXNhZmUgcmVuZGVyaW5nIG9mIGFuIHVua25vd24gZXJyb3IuIGRyaXp6bGUtb3JtJ3MgYERyaXp6bGVRdWVyeUVycm9yYFxuICogZW1iZWRzIHRoZSBmYWlsZWQgU1FMIHN0YXRlbWVudCBBTkQgdGhlIGJvdW5kIHBhcmFtZXRlciB2YWx1ZXMgKHJlYWwgZGF0YSkgaW5cbiAqIGl0cyBgLm1lc3NhZ2VgIChgRmFpbGVkIHF1ZXJ5OiA8c3FsPlxcbnBhcmFtczogPHZhbHVlcz5gKS4gTmV2ZXIgcHV0IHRoYXQgaW4gYVxuICogcmVzcG9uc2Ugb3IgYSBsb2cgbGluZSDigJQgY29sbGFwc2UgaXQgdG8gdGhlIGVycm9yIG5hbWUuIE90aGVyIGVycm9ycyBhcmUgc2FmZS5cbiAqL1xuZnVuY3Rpb24gc2FmZUVycm9yRm9yTG9nKGVycm9yOiB1bmtub3duKTogc3RyaW5nIHtcbiAgaWYgKGVycm9yIGluc3RhbmNlb2YgRXJyb3IgJiYgZXJyb3IubWVzc2FnZS5zdGFydHNXaXRoKCdGYWlsZWQgcXVlcnk6JykpIHtcbiAgICByZXR1cm4gYCR7ZXJyb3IubmFtZSB8fCAnRHJpenpsZVF1ZXJ5RXJyb3InfTogZGF0YWJhc2UgcXVlcnkgZmFpbGVkYDtcbiAgfVxuICByZXR1cm4gZXJyb3JNZXNzYWdlKGVycm9yKTtcbn1cblxuLyoqXG4gKiBDb250ZXh0IG9iamVjdCBwYXNzZWQgdG8gZXZlcnkgcm91dGUgaGFuZGxlciB3cmFwcGVkIHdpdGggYHdpdGhSb3V0ZSgpYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSb3V0ZUNvbnRleHQge1xuICAvKiogT3JpZ2luYWwgRXhwcmVzcyByZXF1ZXN0ICovXG4gIHJlcTogUmVxdWVzdDtcbiAgLyoqIE9yaWdpbmFsIEV4cHJlc3MgcmVzcG9uc2UgKi9cbiAgcmVzOiBSZXNwb25zZTtcbiAgLyoqIFJlcXVlc3QgY29udGV4dCB3aXRoIGlkZW50aXR5IGFuZCBsb2dnaW5nICovXG4gIGN0eDogUmVxdWVzdENvbnRleHQ7XG4gIC8qKiBMb3dlcmNhc2VkIG9yZ2FuaXphdGlvbiBJRCAoZ3VhcmFudGVlZCBub24tZW1wdHkgd2hlbiByZXF1aXJlT3JnSWQgaXMgdHJ1ZSkgKi9cbiAgb3JnSWQ6IHN0cmluZztcbiAgLyoqIFVzZXIgSUQgZnJvbSBKV1QgKGRlZmF1bHRzIHRvIGVtcHR5IHN0cmluZykgKi9cbiAgdXNlcklkOiBzdHJpbmc7XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3IgYHdpdGhSb3V0ZSgpYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBXaXRoUm91dGVPcHRpb25zIHtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcmVxdWlyZSBvcmdJZCBvbiB0aGUgcmVxdWVzdC5cbiAgICogV2hlbiB0cnVlIChkZWZhdWx0KSwgcmV0dXJucyA0MDAgaWYgb3JnSWQgaXMgbWlzc2luZy5cbiAgICogU2V0IHRvIGZhbHNlIGZvciByb3V0ZXMgdGhhdCBkb24ndCBuZWVkIG9yZyBjb250ZXh0LlxuICAgKi9cbiAgcmVxdWlyZU9yZ0lkPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBXcmFwIGFuIGFzeW5jIHJvdXRlIGhhbmRsZXIgd2l0aCBzdGFuZGFyZCBib2lsZXJwbGF0ZS5cbiAqXG4gKiBFeHRyYWN0cyBjb250ZXh0LCBvcmdJZCwgdXNlcklkIGZyb20gdGhlIHJlcXVlc3QsIHZhbGlkYXRlcyBvcmdJZCxcbiAqIGFuZCBjYXRjaGVzIGVycm9ycy4gVHlwZWQgYEFwcEVycm9yYCBzdWJjbGFzc2VzIGFyZSBhdXRvbWF0aWNhbGx5XG4gKiBtYXBwZWQgdG8gdGhlIGNvcnJlY3QgSFRUUCByZXNwb25zZS5cbiAqXG4gKiBAcGFyYW0gaGFuZGxlciAtIEFzeW5jIGZ1bmN0aW9uIHJlY2VpdmluZyBhIFJvdXRlQ29udGV4dFxuICogQHBhcmFtIG9wdGlvbnMgLSBDb25maWd1cmF0aW9uIG9wdGlvbnNcbiAqIEByZXR1cm5zIEV4cHJlc3MgUmVxdWVzdEhhbmRsZXJcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogcm91dGVyLmdldCgnLzppZCcsIHdpdGhSb3V0ZShhc3luYyAoeyByZXEsIHJlcywgY3R4LCBvcmdJZCB9KSA9PiB7XG4gKiAgIGNvbnN0IGlkID0gZ2V0UGFyYW0ocmVxLnBhcmFtcywgJ2lkJyk7XG4gKiAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHBpcGVsaW5lU2VydmljZS5maW5kQnlJZChpZCwgb3JnSWQpO1xuICogICBpZiAoIXJlc3VsdCkgdGhyb3cgbmV3IE5vdEZvdW5kRXJyb3IoJ1BpcGVsaW5lIG5vdCBmb3VuZCcpO1xuICogICByZXR1cm4gc2VuZFN1Y2Nlc3MocmVzLCAyMDAsIHsgcGlwZWxpbmU6IHJlc3VsdCB9KTtcbiAqIH0pKTtcbiAqIGBgYFxuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aFJvdXRlKFxuICBoYW5kbGVyOiAocmM6IFJvdXRlQ29udGV4dCkgPT4gUHJvbWlzZTx2b2lkPixcbiAgb3B0aW9uczogV2l0aFJvdXRlT3B0aW9ucyA9IHt9LFxuKTogUmVxdWVzdEhhbmRsZXIge1xuICBjb25zdCB7IHJlcXVpcmVPcmdJZCA9IHRydWUgfSA9IG9wdGlvbnM7XG5cbiAgcmV0dXJuIGFzeW5jIChyZXE6IFJlcXVlc3QsIHJlczogUmVzcG9uc2UpID0+IHtcbiAgICBjb25zdCBjdHggPSBnZXRDb250ZXh0KHJlcSk7XG4gICAgLy8gYGlkZW50aXR5Lm9yZ0lkYCBpcyBhbHJlYWR5IG5vcm1hbGl6ZWQgKHRyaW1tZWQgKyBsb3dlcmNhc2VkKSBvbmNlIGF0XG4gICAgLy8gcmVzb2x1dGlvbiBpbiBhcGktY29yZSdzIGBnZXRJZGVudGl0eWAsIHNvIGl0IG1hdGNoZXMgdGhlIFJMUyBHVUMgZXhhY3RseS5cbiAgICBjb25zdCBvcmdJZCA9IGN0eC5pZGVudGl0eS5vcmdJZCB8fCAnJztcbiAgICBjb25zdCB1c2VySWQgPSBjdHguaWRlbnRpdHkudXNlcklkIHx8ICcnO1xuXG4gICAgaWYgKHJlcXVpcmVPcmdJZCAmJiAhb3JnSWQpIHtcbiAgICAgIHJldHVybiBzZW5kQmFkUmVxdWVzdChyZXMsICdPcmdhbml6YXRpb24gSUQgaXMgcmVxdWlyZWQnKTtcbiAgICB9XG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgaGFuZGxlcih7IHJlcSwgcmVzLCBjdHgsIG9yZ0lkLCB1c2VySWQgfSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIC8vIERvbid0IHNlbmQgYW5vdGhlciByZXNwb25zZSBpZiBvbmUgd2FzIGFscmVhZHkgc2VudFxuICAgICAgaWYgKHJlcy5oZWFkZXJzU2VudCkge1xuICAgICAgICBsb2dnZXIuZXJyb3IoJ1JvdXRlIGhhbmRsZXIgZXJyb3IgYWZ0ZXIgcmVzcG9uc2Ugc2VudCcsIHtcbiAgICAgICAgICByZXF1ZXN0SWQ6IGN0eC5yZXF1ZXN0SWQsXG4gICAgICAgICAgZXJyb3I6IHNhZmVFcnJvckZvckxvZyhlcnJvciksXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGlmIChlcnJvciBpbnN0YW5jZW9mIEFwcEVycm9yKSB7XG4gICAgICAgIGNvbnN0IHN0YXR1cyA9IGVycm9yLnN0YXR1c0NvZGUgPj0gNDAwICYmIGVycm9yLnN0YXR1c0NvZGUgPCA2MDBcbiAgICAgICAgICA/IGVycm9yLnN0YXR1c0NvZGVcbiAgICAgICAgICA6IDUwMDtcbiAgICAgICAgcmV0dXJuIGVycm9yLmRldGFpbHMgPT09IHVuZGVmaW5lZFxuICAgICAgICAgID8gc2VuZEVycm9yKHJlcywgc3RhdHVzLCBlcnJvci5tZXNzYWdlLCBlcnJvci5jb2RlKVxuICAgICAgICAgIDogc2VuZEVycm9yKHJlcywgc3RhdHVzLCBlcnJvci5tZXNzYWdlLCBlcnJvci5jb2RlLCBlcnJvci5kZXRhaWxzKTtcbiAgICAgIH1cblxuICAgICAgLy8gVW5oYW5kbGVkIGVycm9yIOKGkiA1MDAuIE5FVkVSIGVjaG8gdGhlIHJhdyBtZXNzYWdlIHRvIHRoZSBjbGllbnQ6IERCIGRyaXZlclxuICAgICAgLy8gZXJyb3JzIGNhcnJ5IHRoZSBTUUwgKyBib3VuZCBwYXJhbXMsIGFuZCBDcnVkU2VydmljZSBkZWxpYmVyYXRlbHkgbGV0cyB0aGVtXG4gICAgICAvLyBwcm9wYWdhdGUgaGVyZS4gU2VuZCBhIGdlbmVyaWMgbWVzc2FnZSArIHJlcXVlc3RJZCAodG8gY29ycmVsYXRlIHdpdGggbG9ncyksXG4gICAgICAvLyBhbmQgbG9nIG9ubHkgc2FuaXRpemVkIERCIG1ldGFkYXRhIChjb2RlL2NvbnN0cmFpbnQvdGFibGUg4oCUIG5vIFNRTC9wYXJhbXMpLlxuICAgICAgY29uc3QgZGIgPSBleHRyYWN0RGJFcnJvcihlcnJvcik7XG4gICAgICBjdHgubG9nKCdFUlJPUicsICdSZXF1ZXN0IGZhaWxlZCcsIHtcbiAgICAgICAgcmVxdWVzdElkOiBjdHgucmVxdWVzdElkLFxuICAgICAgICBlcnJvcjogc2FmZUVycm9yRm9yTG9nKGVycm9yKSxcbiAgICAgICAgLi4uKE9iamVjdC5rZXlzKGRiKS5sZW5ndGggPyB7IGRiIH0gOiB7fSksXG4gICAgICB9KTtcbiAgICAgIHJldHVybiBzZW5kSW50ZXJuYWxFcnJvcihyZXMsICdJbnRlcm5hbCBzZXJ2ZXIgZXJyb3InLCB7IHJlcXVlc3RJZDogY3R4LnJlcXVlc3RJZCB9KTtcbiAgICB9XG4gIH07XG59XG4iXX0=
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUtd3JhcHBlci5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9yb3V0ZS13cmFwcGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUNMLFFBQVEsRUFDUixZQUFZLEVBQ1osY0FBYyxFQUNkLFNBQVMsRUFDVCxjQUFjLEVBQ2QsaUJBQWlCLEVBQ2pCLFlBQVksR0FDYixNQUFNLDRCQUE0QixDQUFDO0FBRXBDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUc5QyxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFN0M7Ozs7O0dBS0c7QUFDSCxTQUFTLGVBQWUsQ0FBQyxLQUFjO0lBQ3JDLElBQUksS0FBSyxZQUFZLEtBQUssSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDO1FBQ3hFLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxJQUFJLG1CQUFtQix5QkFBeUIsQ0FBQztJQUN2RSxDQUFDO0lBQ0QsT0FBTyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDN0IsQ0FBQztBQThCRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFDSCxNQUFNLFVBQVUsU0FBUyxDQUN2QixPQUE0QyxFQUM1QyxPQUFPLEdBQXFCLEVBQUU7SUFFOUIsTUFBTSxFQUFFLFlBQVksR0FBRyxJQUFJLEVBQUUsR0FBRyxPQUFPLENBQUM7SUFFeEMsT0FBTyxLQUFLLEVBQUUsR0FBWSxFQUFFLEdBQWEsRUFBRSxFQUFFO1FBQzNDLE1BQU0sR0FBRyxHQUFHLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM1Qix3RUFBd0U7UUFDeEUsNkVBQTZFO1FBQzdFLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUN2QyxNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFFekMsSUFBSSxZQUFZLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixPQUFPLGNBQWMsQ0FBQyxHQUFHLEVBQUUsNkJBQTZCLENBQUMsQ0FBQztRQUM1RCxDQUFDO1FBRUQsSUFBSSxDQUFDO1lBQ0gsTUFBTSxPQUFPLENBQUMsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUNsRCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLHNEQUFzRDtZQUN0RCxJQUFJLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDcEIsTUFBTSxDQUFDLEtBQUssQ0FBQyx5Q0FBeUMsRUFBRTtvQkFDdEQsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO29CQUN4QixLQUFLLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQztpQkFDOUIsQ0FBQyxDQUFDO2dCQUNILE9BQU87WUFDVCxDQUFDO1lBRUQsSUFBSSxLQUFLLFlBQVksUUFBUSxFQUFFLENBQUM7Z0JBQzlCLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksR0FBRyxJQUFJLEtBQUssQ0FBQyxVQUFVLEdBQUcsR0FBRztvQkFDOUQsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVO29CQUNsQixDQUFDLENBQUMsR0FBRyxDQUFDO2dCQUNSLE9BQU8sS0FBSyxDQUFDLE9BQU8sS0FBSyxTQUFTO29CQUNoQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDO29CQUNuRCxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2RSxDQUFDO1lBRUQsNkVBQTZFO1lBQzdFLDhFQUE4RTtZQUM5RSwrRUFBK0U7WUFDL0UsOEVBQThFO1lBQzlFLE1BQU0sRUFBRSxHQUFHLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxHQUFHLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRTtnQkFDakMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO2dCQUN4QixLQUFLLEVBQUUsZUFBZSxDQUFDLEtBQUssQ0FBQztnQkFDN0IsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDMUMsQ0FBQyxDQUFDO1lBQ0gsT0FBTyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsdUJBQXVCLEVBQUUsRUFBRSxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUM7UUFDdkYsQ0FBQztJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHtcbiAgQXBwRXJyb3IsXG4gIGVycm9yTWVzc2FnZSxcbiAgZXh0cmFjdERiRXJyb3IsXG4gIHNlbmRFcnJvcixcbiAgc2VuZEJhZFJlcXVlc3QsXG4gIHNlbmRJbnRlcm5hbEVycm9yLFxuICBjcmVhdGVMb2dnZXIsXG59IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVzcG9uc2UsIFJlcXVlc3RIYW5kbGVyIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyBnZXRDb250ZXh0IH0gZnJvbSAnLi9nZXQtY29udGV4dC5qcyc7XG5pbXBvcnQgdHlwZSB7IFJlcXVlc3RDb250ZXh0IH0gZnJvbSAnLi9yZXF1ZXN0LXR5cGVzLmpzJztcblxuY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKCdyb3V0ZS13cmFwcGVyJyk7XG5cbi8qKlxuICogQSBsb2ctc2FmZSByZW5kZXJpbmcgb2YgYW4gdW5rbm93biBlcnJvci4gZHJpenpsZS1vcm0ncyBgRHJpenpsZVF1ZXJ5RXJyb3JgXG4gKiBlbWJlZHMgdGhlIGZhaWxlZCBTUUwgc3RhdGVtZW50IEFORCB0aGUgYm91bmQgcGFyYW1ldGVyIHZhbHVlcyAocmVhbCBkYXRhKSBpblxuICogaXRzIGAubWVzc2FnZWAgKGBGYWlsZWQgcXVlcnk6IDxzcWw+XFxucGFyYW1zOiA8dmFsdWVzPmApLiBOZXZlciBwdXQgdGhhdCBpbiBhXG4gKiByZXNwb25zZSBvciBhIGxvZyBsaW5lIOKAlCBjb2xsYXBzZSBpdCB0byB0aGUgZXJyb3IgbmFtZS4gT3RoZXIgZXJyb3JzIGFyZSBzYWZlLlxuICovXG5mdW5jdGlvbiBzYWZlRXJyb3JGb3JMb2coZXJyb3I6IHVua25vd24pOiBzdHJpbmcge1xuICBpZiAoZXJyb3IgaW5zdGFuY2VvZiBFcnJvciAmJiBlcnJvci5tZXNzYWdlLnN0YXJ0c1dpdGgoJ0ZhaWxlZCBxdWVyeTonKSkge1xuICAgIHJldHVybiBgJHtlcnJvci5uYW1lIHx8ICdEcml6emxlUXVlcnlFcnJvcid9OiBkYXRhYmFzZSBxdWVyeSBmYWlsZWRgO1xuICB9XG4gIHJldHVybiBlcnJvck1lc3NhZ2UoZXJyb3IpO1xufVxuXG4vKipcbiAqIENvbnRleHQgb2JqZWN0IHBhc3NlZCB0byBldmVyeSByb3V0ZSBoYW5kbGVyIHdyYXBwZWQgd2l0aCBgd2l0aFJvdXRlKClgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJvdXRlQ29udGV4dCB7XG4gIC8qKiBPcmlnaW5hbCBFeHByZXNzIHJlcXVlc3QgKi9cbiAgcmVxOiBSZXF1ZXN0O1xuICAvKiogT3JpZ2luYWwgRXhwcmVzcyByZXNwb25zZSAqL1xuICByZXM6IFJlc3BvbnNlO1xuICAvKiogUmVxdWVzdCBjb250ZXh0IHdpdGggaWRlbnRpdHkgYW5kIGxvZ2dpbmcgKi9cbiAgY3R4OiBSZXF1ZXN0Q29udGV4dDtcbiAgLyoqIExvd2VyY2FzZWQgb3JnYW5pemF0aW9uIElEIChndWFyYW50ZWVkIG5vbi1lbXB0eSB3aGVuIHJlcXVpcmVPcmdJZCBpcyB0cnVlKSAqL1xuICBvcmdJZDogc3RyaW5nO1xuICAvKiogVXNlciBJRCBmcm9tIEpXVCAoZGVmYXVsdHMgdG8gZW1wdHkgc3RyaW5nKSAqL1xuICB1c2VySWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciBgd2l0aFJvdXRlKClgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFdpdGhSb3V0ZU9wdGlvbnMge1xuICAvKipcbiAgICogV2hldGhlciB0byByZXF1aXJlIG9yZ0lkIG9uIHRoZSByZXF1ZXN0LlxuICAgKiBXaGVuIHRydWUgKGRlZmF1bHQpLCByZXR1cm5zIDQwMCBpZiBvcmdJZCBpcyBtaXNzaW5nLlxuICAgKiBTZXQgdG8gZmFsc2UgZm9yIHJvdXRlcyB0aGF0IGRvbid0IG5lZWQgb3JnIGNvbnRleHQuXG4gICAqL1xuICByZXF1aXJlT3JnSWQ/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIFdyYXAgYW4gYXN5bmMgcm91dGUgaGFuZGxlciB3aXRoIHN0YW5kYXJkIGJvaWxlcnBsYXRlLlxuICpcbiAqIEV4dHJhY3RzIGNvbnRleHQsIG9yZ0lkLCB1c2VySWQgZnJvbSB0aGUgcmVxdWVzdCwgdmFsaWRhdGVzIG9yZ0lkLFxuICogYW5kIGNhdGNoZXMgZXJyb3JzLiBUeXBlZCBgQXBwRXJyb3JgIHN1YmNsYXNzZXMgYXJlIGF1dG9tYXRpY2FsbHlcbiAqIG1hcHBlZCB0byB0aGUgY29ycmVjdCBIVFRQIHJlc3BvbnNlLlxuICpcbiAqIEBwYXJhbSBoYW5kbGVyIC0gQXN5bmMgZnVuY3Rpb24gcmVjZWl2aW5nIGEgUm91dGVDb250ZXh0XG4gKiBAcGFyYW0gb3B0aW9ucyAtIENvbmZpZ3VyYXRpb24gb3B0aW9uc1xuICogQHJldHVybnMgRXhwcmVzcyBSZXF1ZXN0SGFuZGxlclxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiByb3V0ZXIuZ2V0KCcvOmlkJywgd2l0aFJvdXRlKGFzeW5jICh7IHJlcSwgcmVzLCBjdHgsIG9yZ0lkIH0pID0+IHtcbiAqICAgY29uc3QgaWQgPSBnZXRQYXJhbShyZXEucGFyYW1zLCAnaWQnKTtcbiAqICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgcGlwZWxpbmVTZXJ2aWNlLmZpbmRCeUlkKGlkLCBvcmdJZCk7XG4gKiAgIGlmICghcmVzdWx0KSB0aHJvdyBuZXcgTm90Rm91bmRFcnJvcignUGlwZWxpbmUgbm90IGZvdW5kJyk7XG4gKiAgIHJldHVybiBzZW5kU3VjY2VzcyhyZXMsIDIwMCwgeyBwaXBlbGluZTogcmVzdWx0IH0pO1xuICogfSkpO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB3aXRoUm91dGUoXG4gIGhhbmRsZXI6IChyYzogUm91dGVDb250ZXh0KSA9PiBQcm9taXNlPHZvaWQ+LFxuICBvcHRpb25zOiBXaXRoUm91dGVPcHRpb25zID0ge30sXG4pOiBSZXF1ZXN0SGFuZGxlciB7XG4gIGNvbnN0IHsgcmVxdWlyZU9yZ0lkID0gdHJ1ZSB9ID0gb3B0aW9ucztcblxuICByZXR1cm4gYXN5bmMgKHJlcTogUmVxdWVzdCwgcmVzOiBSZXNwb25zZSkgPT4ge1xuICAgIGNvbnN0IGN0eCA9IGdldENvbnRleHQocmVxKTtcbiAgICAvLyBgaWRlbnRpdHkub3JnSWRgIGlzIGFscmVhZHkgbm9ybWFsaXplZCAodHJpbW1lZCArIGxvd2VyY2FzZWQpIG9uY2UgYXRcbiAgICAvLyByZXNvbHV0aW9uIGluIGFwaS1jb3JlJ3MgYGdldElkZW50aXR5YCwgc28gaXQgbWF0Y2hlcyB0aGUgUkxTIEdVQyBleGFjdGx5LlxuICAgIGNvbnN0IG9yZ0lkID0gY3R4LmlkZW50aXR5Lm9yZ0lkIHx8ICcnO1xuICAgIGNvbnN0IHVzZXJJZCA9IGN0eC5pZGVudGl0eS51c2VySWQgfHwgJyc7XG5cbiAgICBpZiAocmVxdWlyZU9yZ0lkICYmICFvcmdJZCkge1xuICAgICAgcmV0dXJuIHNlbmRCYWRSZXF1ZXN0KHJlcywgJ09yZ2FuaXphdGlvbiBJRCBpcyByZXF1aXJlZCcpO1xuICAgIH1cblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBoYW5kbGVyKHsgcmVxLCByZXMsIGN0eCwgb3JnSWQsIHVzZXJJZCB9KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgLy8gRG9uJ3Qgc2VuZCBhbm90aGVyIHJlc3BvbnNlIGlmIG9uZSB3YXMgYWxyZWFkeSBzZW50XG4gICAgICBpZiAocmVzLmhlYWRlcnNTZW50KSB7XG4gICAgICAgIGxvZ2dlci5lcnJvcignUm91dGUgaGFuZGxlciBlcnJvciBhZnRlciByZXNwb25zZSBzZW50Jywge1xuICAgICAgICAgIHJlcXVlc3RJZDogY3R4LnJlcXVlc3RJZCxcbiAgICAgICAgICBlcnJvcjogc2FmZUVycm9yRm9yTG9nKGVycm9yKSxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgQXBwRXJyb3IpIHtcbiAgICAgICAgY29uc3Qgc3RhdHVzID0gZXJyb3Iuc3RhdHVzQ29kZSA+PSA0MDAgJiYgZXJyb3Iuc3RhdHVzQ29kZSA8IDYwMFxuICAgICAgICAgID8gZXJyb3Iuc3RhdHVzQ29kZVxuICAgICAgICAgIDogNTAwO1xuICAgICAgICByZXR1cm4gZXJyb3IuZGV0YWlscyA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyBzZW5kRXJyb3IocmVzLCBzdGF0dXMsIGVycm9yLm1lc3NhZ2UsIGVycm9yLmNvZGUpXG4gICAgICAgICAgOiBzZW5kRXJyb3IocmVzLCBzdGF0dXMsIGVycm9yLm1lc3NhZ2UsIGVycm9yLmNvZGUsIGVycm9yLmRldGFpbHMpO1xuICAgICAgfVxuXG4gICAgICAvLyBVbmhhbmRsZWQgZXJyb3Ig4oaSIDUwMC4gTkVWRVIgZWNobyB0aGUgcmF3IG1lc3NhZ2UgdG8gdGhlIGNsaWVudDogREIgZHJpdmVyXG4gICAgICAvLyBlcnJvcnMgY2FycnkgdGhlIFNRTCArIGJvdW5kIHBhcmFtcywgYW5kIENydWRTZXJ2aWNlIGRlbGliZXJhdGVseSBsZXRzIHRoZW1cbiAgICAgIC8vIHByb3BhZ2F0ZSBoZXJlLiBTZW5kIGEgZ2VuZXJpYyBtZXNzYWdlICsgcmVxdWVzdElkICh0byBjb3JyZWxhdGUgd2l0aCBsb2dzKSxcbiAgICAgIC8vIGFuZCBsb2cgb25seSBzYW5pdGl6ZWQgREIgbWV0YWRhdGEgKGNvZGUvY29uc3RyYWludC90YWJsZSDigJQgbm8gU1FML3BhcmFtcykuXG4gICAgICBjb25zdCBkYiA9IGV4dHJhY3REYkVycm9yKGVycm9yKTtcbiAgICAgIGN0eC5sb2coJ0VSUk9SJywgJ1JlcXVlc3QgZmFpbGVkJywge1xuICAgICAgICByZXF1ZXN0SWQ6IGN0eC5yZXF1ZXN0SWQsXG4gICAgICAgIGVycm9yOiBzYWZlRXJyb3JGb3JMb2coZXJyb3IpLFxuICAgICAgICAuLi4oT2JqZWN0LmtleXMoZGIpLmxlbmd0aCA/IHsgZGIgfSA6IHt9KSxcbiAgICAgIH0pO1xuICAgICAgcmV0dXJuIHNlbmRJbnRlcm5hbEVycm9yKHJlcywgJ0ludGVybmFsIHNlcnZlciBlcnJvcicsIHsgcmVxdWVzdElkOiBjdHgucmVxdWVzdElkIH0pO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
package/lib/api/server.js CHANGED
@@ -261,4 +261,4 @@ export function runServer(app, options = {}) {
261
261
  process.exit(1);
262
262
  });
263
263
  }
264
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS9zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsWUFBWSxFQUFFLG1CQUFtQixFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM5TixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRS9ELE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUd0Qyw4RUFBOEU7QUFDOUUsNkVBQTZFO0FBQzdFLDZFQUE2RTtBQUM3RSx5Q0FBeUM7QUFDekMsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUM7QUFDakMsTUFBTSxrQkFBa0IsR0FBRyxLQUFLLENBQUM7QUFDakMsTUFBTSx5QkFBeUIsR0FBRyxNQUFNLENBQUMsK0JBQStCLEVBQUUsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFFOUY7Ozs7Ozs7Ozs7Ozs7R0FhRztBQUNILEtBQUssVUFBVSxxQkFBcUIsQ0FDbEMsSUFBWSxFQUNaLGFBQWdELEVBQ2hELFlBQTBELEVBQzFELE9B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OlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbmltcG9ydCB7IFNlcnZlciB9IGZyb20gJ2h0dHAnO1xuaW1wb3J0IHsgYnVpbGRSb3V0ZVRhYmxlLCBjcmVhdGVMb2dnZXIsIGVycm9yTWVzc2FnZSwgZmx1c2hRdW90YUluY3JlbWVudHMsIGluc3RhbGxDcmFzaEhhbmRsZXJzLCBuZXh0QmFja29mZk1zLCByZXNvbHZlUmVkaXNDb25uZWN0aW9uLCByZXRyeUZvcmV2ZXIsIHN1bW1hcml6ZVJvdXRlVGFibGUsIHNsZWVwLCBlbnZJbnQgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgeyBDb25maWcgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9waXBlbGluZS1jb3JlJztcbmltcG9ydCB7IGdldENvbm5lY3Rpb24sIGNsb3NlQ29ubmVjdGlvbiB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL3BpcGVsaW5lLWRhdGEnO1xuaW1wb3J0IHR5cGUgeyBFeHByZXNzIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyBzZXRSZWFkeSwgaXNSZWFkeSB9IGZyb20gJy4vcmVhZGluZXNzLmpzJztcbmltcG9ydCB7IHNodXRkb3duVHJhY2luZyB9IGZyb20gJy4vdHJhY2luZy5qcyc7XG5pbXBvcnQgeyBTU0VNYW5hZ2VyIH0gZnJvbSAnLi4vaHR0cC9zc2UtY29ubmVjdGlvbi1tYW5hZ2VyLmpzJztcblxuY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKCdzZXJ2ZXInKTtcblxuXG4vLyBEZXBlbmRlbmN5LXN1cGVydmlzb3IgY2FkZW5jZS4gSW5pdGlhbCBjb25uZWN0IHJldHJpZXMgd2l0aCBjYXBwZWQgYmFja29mZjtcbi8vIG9uY2UgY29ubmVjdGVkLCByZS1jaGVja3MgYXQgYSBzdGVhZHkgaW50ZXJ2YWwgc28gYSBsYXRlciBvdXRhZ2UgZmxpcHMgdGhlXG4vLyBzZXJ2aWNlIE5vdFJlYWR5IChkcmFpbmluZyB0cmFmZmljKSBhbmQgYSByZWNvdmVyeSBmbGlwcyBpdCBiYWNrIOKAlCB3aXRob3V0XG4vLyBldmVyIGV4aXRpbmcgLyByZXN0YXJ0aW5nIHRoZSBwcm9jZXNzLlxuY29uc3QgUkVBRFlfUkVUUllfQkFTRV9NUyA9IDEwMDA7XG5jb25zdCBSRUFEWV9SRVRSWV9NQVhfTVMgPSAxMDAwMDtcbmNvbnN0IFJFQURZX01PTklUT1JfSU5URVJWQUxfTVMgPSBlbnZJbnQoJ1JFQURJTkVTU19NT05JVE9SX0lOVEVSVkFMX01TJywgMTVfMDAwLCB7IG1pbjogMSB9KTtcblxuLyoqXG4gKiBFc3RhYmxpc2ggYW5kIGNvbnRpbnVvdXNseSBtb25pdG9yIHRoZSBzZXJ2aWNlJ3MgZGF0YXN0b3JlIGRlcGVuZGVuY3ksXG4gKiBmbGlwcGluZyByZWFkaW5lc3Mgc3RhdGUgaW5zdGVhZCBvZiBjcmFzaC1sb29waW5nLlxuICpcbiAqIC0gRXN0YWJsaXNoIHBoYXNlOiByZXRyeSBgb25CZWZvcmVTdGFydGAgKGUuZy4gY29ubmVjdE1vbmdvKSB3aXRoIGNhcHBlZFxuICogICBiYWNrb2ZmIHVudGlsIGl0IHN1Y2NlZWRzIOKAlCBhIGNvbGQgZGF0YXN0b3JlIG11c3QgbmV2ZXIgZXhpdCB0aGUgcHJvY2Vzcy5cbiAqIC0gTW9uaXRvciBwaGFzZTogcG9sbCBgdGVzdERhdGFiYXNlYCBmb3IgdGhlIGxpZmUgb2YgdGhlIHByb2Nlc3M7IGZsaXBcbiAqICAgcmVhZHkvTm90UmVhZHkgb24gdHJhbnNpdGlvbnMuIFdoaWxlIE5vdFJlYWR5IHRoZSByZWFkaW5lc3MgZ3VhcmQgNTAzc1xuICogICBidXNpbmVzcyB0cmFmZmljIGFuZCBvcmNoZXN0cmF0b3IgcmVhZGluZXNzIHByb2JlcyBkcmFpbiB0aGUgaW5zdGFuY2UuXG4gKlxuICogUnVucyBpbiB0aGUgYmFja2dyb3VuZCAodGhlIEhUVFAgc2VydmVyIGlzIGFscmVhZHkgbGlzdGVuaW5nKS4gU3RvcHMgd2hlblxuICogYGFib3J0ZWQoKWAgcmV0dXJucyB0cnVlIChncmFjZWZ1bCBzaHV0ZG93biksIHNvIGl0IG5ldmVyIGtlZXBzIGEgY2xvc2luZ1xuICogcHJvY2VzcyBhbGl2ZS5cbiAqL1xuYXN5bmMgZnVuY3Rpb24gc3VwZXJ2aXNlRGVwZW5kZW5jaWVzKFxuICBuYW1lOiBzdHJpbmcsXG4gIG9uQmVmb3JlU3RhcnQ6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IHVuZGVmaW5lZCxcbiAgdGVzdERhdGFiYXNlOiAoKCkgPT4gUHJvbWlzZTxib29sZWFuPikgfCBmYWxzZSB8IHVuZGVmaW5lZCxcbiAgYWJvcnRlZDogKCkgPT4gYm9vbGVhbixcbik6IFByb21pc2U8dm9pZD4ge1xuICBpZiAob25CZWZvcmVTdGFydCkge1xuICAgIGF3YWl0IHJldHJ5Rm9yZXZlcihvbkJlZm9yZVN0YXJ0LCB7XG4gICAgICBiYXNlTXM6IFJFQURZX1JFVFJZX0JBU0VfTVMsXG4gICAgICBtYXhNczogUkVBRFlfUkVUUllfTUFYX01TLFxuICAgICAgb25BdHRlbXB0RmFpbGVkOiAoZXJyb3IsIGRlbGF5TXMpID0+IGxvZ2dlci53YXJuKFxuICAgICAgICBgJHtuYW1lfTogZGVwZW5kZW5jeSBpbml0IGZhaWxlZCwgcmV0cnlpbmcgaW4gJHtkZWxheU1zfW1zYCxcbiAgICAgICAgeyBlcnJvcjogZXJyb3JNZXNzYWdlKGVycm9yKSB9LFxuICAgICAgKSxcbiAgICAgIHNob3VsZENvbnRpbnVlOiAoKSA9PiAhYWJvcnRlZCgpLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gTm8gZGF0YXN0b3JlIHRvIGdhdGUgb24g4oaSIHJlYWR5IGFzIHNvb24gYXMgd2UgYXJlIGxpc3RlbmluZy5cbiAgaWYgKHRlc3REYXRhYmFzZSA9PT0gZmFsc2UpIHtcbiAgICBpZiAoYWJvcnRlZCgpKSByZXR1cm47IC8vIHNodXRkb3duIGJlZ2FuIHdoaWxlIHdlIHdlcmUgaW5pdGlhbGl6aW5nXG4gICAgc2V0UmVhZHkodHJ1ZSk7XG4gICAgbG9nZ2VyLmluZm8oYCR7bmFtZX0gcmVhZHkgKG5vIGRhdGFzdG9yZSBkZXBlbmRlbmN5KWApO1xuICAgIHJldHVybjtcbiAgfVxuXG4gIGNvbnN0IHByb2JlID0gdGVzdERhdGFiYXNlID8/ICgoKSA9PiBnZXRDb25uZWN0aW9uKCkudGVzdENvbm5lY3Rpb24oKSk7XG4gIGxldCB3YWl0RGVsYXkgPSBSRUFEWV9SRVRSWV9CQVNFX01TO1xuICB3aGlsZSAoIWFib3J0ZWQoKSkge1xuICAgIGxldCBvayA9IGZhbHNlO1xuICAgIHRyeSB7XG4gICAgICBvayA9IGF3YWl0IHByb2JlKCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICBvayA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIEEgcHJvYmUgdGhhdCB3YXMgaW4gZmxpZ2h0IHdoZW4gc2h1dGRvd24gYmVnYW4gbXVzdCBub3QgZmxpcCB0aGVcbiAgICAvLyBkcmFpbmluZyBpbnN0YW5jZSBiYWNrIHRvIHJlYWR5LlxuICAgIGlmIChhYm9ydGVkKCkpIGJyZWFrO1xuICAgIGlmIChvayAmJiAhaXNSZWFkeSgpKSB7XG4gICAgICBzZXRSZWFkeSh0cnVlKTtcbiAgICAgIHdhaXREZWxheSA9IFJFQURZX1JFVFJZX0JBU0VfTVM7XG4gICAgICBsb2dnZXIuaW5mbyhgJHtuYW1lfSByZWFkeSDigJQgZGVwZW5kZW5jaWVzIGNvbm5lY3RlZGApO1xuICAgIH0gZWxzZSBpZiAoIW9rICYmIGlzUmVhZHkoKSkge1xuICAgICAgc2V0UmVhZHkoZmFsc2UpO1xuICAgICAgbG9nZ2VyLndhcm4oYCR7bmFtZX0gZGVncmFkZWQg4oCUIGRlcGVuZGVuY3kgY2hlY2sgZmFpbGluZyAobm93IE5vdFJlYWR5KWApO1xuICAgIH1cblxuICAgIC8vIFN0ZWFkeSBjYWRlbmNlIG9uY2UgcmVhZHk7IGZhc3RlciBiYWNrb2ZmIHdoaWxlIHdhaXRpbmcgc28gd2UgZmxpcCB0b1xuICAgIC8vIHJlYWR5IHByb21wdGx5IHdoZW4gdGhlIGRhdGFzdG9yZSBjb21lcyB1cC5cbiAgICBpZiAoaXNSZWFkeSgpKSB7XG4gICAgICBhd2FpdCBzbGVlcChSRUFEWV9NT05JVE9SX0lOVEVSVkFMX01TKTtcbiAgICB9IGVsc2Uge1xuICAgICAgYXdhaXQgc2xlZXAod2FpdERlbGF5KTtcbiAgICAgIHdhaXREZWxheSA9IG5leHRCYWNrb2ZmTXMod2FpdERlbGF5LCBSRUFEWV9SRVRSWV9NQVhfTVMpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHN0YXJ0aW5nIGEgc2VydmVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcnRTZXJ2ZXJPcHRpb25zIHtcbiAgLyoqIFNlcnZpY2UgbmFtZSBmb3IgbG9nZ2luZyAqL1xuICBuYW1lPzogc3RyaW5nO1xuICAvKiogUG9ydCB0byBsaXN0ZW4gb24gKGRlZmF1bHQ6IGZyb20gY29uZmlnKSAqL1xuICBwb3J0PzogbnVtYmVyO1xuICAvKiogU1NFIG1hbmFnZXIgZm9yIGdyYWNlZnVsIHNodXRkb3duICovXG4gIHNzZU1hbmFnZXI/OiBTU0VNYW5hZ2VyO1xuICAvKiogU2h1dGRvd24gdGltZW91dCBpbiBtaWxsaXNlY29uZHMgKGRlZmF1bHQ6IDE1MDAwKSAqL1xuICBzaHV0ZG93blRpbWVvdXRNcz86IG51bWJlcjtcbiAgLyoqIENhbGxiYWNrIGFmdGVyIHNlcnZlciBzdGFydHMgKi9cbiAgb25TdGFydD86IChwb3J0OiBudW1iZXIpID0+IHZvaWQ7XG4gIC8qKiBDYWxsYmFjayBiZWZvcmUgc2h1dGRvd24gKi9cbiAgb25TaHV0ZG93bj86ICgpID0+IFByb21pc2U8dm9pZD47XG4gIC8qKiBSdW5zIGJlZm9yZSBkYXRhYmFzZSBjaGVjayAoZS5nLiwgaW5pdGlhbGl6ZSBleHRlcm5hbCBjb25uZWN0aW9ucykgKi9cbiAgb25CZWZvcmVTdGFydD86ICgpID0+IFByb21pc2U8dm9pZD47XG4gIC8qKiBDdXN0b20gZGF0YWJhc2UgaGVhbHRoIGNoZWNrLCBvciBmYWxzZSB0byBza2lwLiBEZWZhdWx0OiBQb3N0Z3JlU1FMIHRlc3RDb25uZWN0aW9uICovXG4gIHRlc3REYXRhYmFzZT86ICgoKSA9PiBQcm9taXNlPGJvb2xlYW4+KSB8IGZhbHNlO1xuICAvKiogQ3VzdG9tIGRhdGFiYXNlIGNsb3NlLCBvciBmYWxzZSB0byBza2lwLiBEZWZhdWx0OiBQb3N0Z3JlU1FMIGNsb3NlQ29ubmVjdGlvbiAqL1xuICBjbG9zZURhdGFiYXNlPzogKCgpID0+IFByb21pc2U8dm9pZD4pIHwgZmFsc2U7XG59XG5cbi8qKlxuICogUmVzdWx0IG9mIHN0YXJ0aW5nIGEgc2VydmVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcnRTZXJ2ZXJSZXN1bHQge1xuICAvKiogSFRUUCBzZXJ2ZXIgaW5zdGFuY2UgKi9cbiAgc2VydmVyOiBTZXJ2ZXI7XG4gIC8qKiBQb3J0IHRoZSBzZXJ2ZXIgaXMgbGlzdGVuaW5nIG9uICovXG4gIHBvcnQ6IG51bWJlcjtcbiAgLyoqIEZ1bmN0aW9uIHRvIG1hbnVhbGx5IHRyaWdnZXIgc2h1dGRvd24gKi9cbiAgc2h1dGRvd246ICgpID0+IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogU3RhcnQgYW4gRXhwcmVzcyBzZXJ2ZXIgd2l0aCBncmFjZWZ1bCBzaHV0ZG93biBoYW5kbGluZ1xuICpcbiAqIEZlYXR1cmVzOlxuICogLSBBdXRvbWF0aWMgZGF0YWJhc2UgY29ubmVjdGlvbiB0ZXN0aW5nXG4gKiAtIEdyYWNlZnVsIHNodXRkb3duIG9uIFNJR0lOVC9TSUdURVJNXG4gKiAtIFNTRSBjb25uZWN0aW9uIGNsZWFudXBcbiAqIC0gQ29uZmlndXJhYmxlIHNodXRkb3duIHRpbWVvdXRcbiAqXG4gKiBAcGFyYW0gYXBwIC0gRXhwcmVzcyBhcHBsaWNhdGlvblxuICogQHBhcmFtIG9wdGlvbnMgLSBTZXJ2ZXIgb3B0aW9uc1xuICogQHJldHVybnMgU2VydmVyIGluc3RhbmNlIGFuZCBjb250cm9sIGZ1bmN0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCB7IGFwcCwgc3NlTWFuYWdlciB9ID0gY3JlYXRlQXBwKCk7XG4gKlxuICogYXBwLnBvc3QoJy9hcGkvcmVzb3VyY2UnLCByZXF1aXJlQXV0aCwgaGFuZGxlcik7XG4gKlxuICogYXdhaXQgc3RhcnRTZXJ2ZXIoYXBwLCB7XG4gKiAgIG5hbWU6ICdNeSBNaWNyb3NlcnZpY2UnLFxuICogICBzc2VNYW5hZ2VyLFxuICogICBvblN0YXJ0OiAocG9ydCkgPT4gY29uc29sZS5sb2coYExpc3RlbmluZyBvbiAke3BvcnR9YCksXG4gKiB9KTtcbiAqIGBgYFxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc3RhcnRTZXJ2ZXIoXG4gIGFwcDogRXhwcmVzcyxcbiAgb3B0aW9uczogU3RhcnRTZXJ2ZXJPcHRpb25zID0ge30sXG4pOiBQcm9taXNlPFN0YXJ0U2VydmVyUmVzdWx0PiB7XG4gIGNvbnN0IHNlcnZlckNvbmZpZyA9IENvbmZpZy5nZXQoJ3NlcnZlcicpO1xuICBjb25zdCB7XG4gICAgbmFtZSA9ICdNaWNyb3NlcnZpY2UnLFxuICAgIHNzZU1hbmFnZXIsXG4gICAgc2h1dGRvd25UaW1lb3V0TXMgPSAxNTAwMCxcbiAgICBvblN0YXJ0LFxuICAgIG9uU2h1dGRvd24sXG4gICAgb25CZWZvcmVTdGFydCxcbiAgICB0ZXN0RGF0YWJhc2UsXG4gICAgY2xvc2VEYXRhYmFzZSxcbiAgfSA9IG9wdGlvbnM7XG4gIGNvbnN0IHBvcnQgPSBvcHRpb25zLnBvcnQgPz8gc2VydmVyQ29uZmlnLnBvcnQ7XG5cbiAgLy8gVmFsaWRhdGUgYXV0aCBjb25maWd1cmF0aW9uIGF0IHNlcnZlciBzdGFydHVwIChub3QgZHVyaW5nIENESyBzeW50aGVzaXMpXG4gIENvbmZpZy52YWxpZGF0ZUF1dGgoKTtcbiAgLy8gRmFpbCBmYXN0IGlmIHRoaXMgc2VydmljZSBoYXMgbm8gaW50ZXJuYWwgc2lnbmluZyBrZXkgb2YgaXRzIG93biwgb3Igbm9cbiAgLy8gcHVibGljIGJ1bmRsZSB0byB2ZXJpZnkgaXRzIHBlZXJzIHdpdGguIFdpdGhvdXQgdGhlbSBpdCB3b3VsZCBtaW50XG4gIC8vIHRva2VucyBvbiBhbiBFUEhFTUVSQUwgaW4tcHJvY2VzcyBrZXkgdGhhdCBubyBwZWVyIGFjY2VwdHMsIGFuZCByZWplY3QgZXZlcnlcbiAgLy8gcGVlcidzIHRva2VuIOKAlCBpLmUuIHNpbGVudGx5IGxvc2UgYWxsIHNlcnZpY2UtdG8tc2VydmljZSB0cmFmZmljLiBDaGVja2VkXG4gIC8vIEhFUkUgcmF0aGVyIHRoYW4gaW4gYGNyZWF0ZUFwcGAgYmVjYXVzZSBpdCBpcyBhIHByb3BlcnR5IG9mIHRoZSBydW5uaW5nXG4gIC8vIGRlcGxveW1lbnQsIG5vdCBvZiB0aGUgYXBwIG9iamVjdDogcm91dGUtdGFibGUgYnVpbGRlcnMgYW5kIHRlc3Qgc3VpdGVzXG4gIC8vIGFzc2VtYmxlIGFuIGFwcCB3aXRob3V0IGV2ZXIgc2lnbmluZyBhbnl0aGluZy5cbiAgZm9yIChjb25zdCBlbnZWYXIgb2YgWydTRVJWSUNFX1NJR05JTkdfS0VZX0ZJTEUnLCAnU0VSVklDRV9LRVlfQlVORExFX0ZJTEUnXSBhcyBjb25zdCkge1xuICAgIGlmICghcHJvY2Vzcy5lbnZbZW52VmFyXSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2VudlZhcn0gZW52aXJvbm1lbnQgdmFyaWFibGUgaXMgcmVxdWlyZWQgKGdlbmVyYXRlIHdpdGggZGVwbG95L2Jpbi9zZXJ2aWNlLXNpZ25pbmcta2V5cy5zaCkuIFNldCBpdCBiZWZvcmUgc3RhcnRpbmcgdGhlIHNlcnZlci5gKTtcbiAgICB9XG4gIH1cbiAgLy8gRmFpbCBmYXN0IG9uIGFuIHVudXNhYmxlIFJlZGlzIGNvbmZpZ3VyYXRpb24gKHRocm93cyBSZWRpc0NvbmZpZ0Vycm9yKSDigJQgYVxuICAvLyBSZWRpcyBjbGllbnQgaXMgY3JlYXRlZCBsYXppbHkgb24gZmlyc3QgdXNlLCBzbyB3aXRob3V0IHRoaXMgYSBiYWQgY29uZmlnXG4gIC8vIHdvdWxkIHN1cmZhY2UgYXMgcmVxdWVzdC10aW1lIGVycm9ycyBpbnN0ZWFkIG9mIGEgZmFpbGVkIHN0YXJ0LlxuICByZXNvbHZlUmVkaXNDb25uZWN0aW9uKCk7XG5cbiAgbG9nZ2VyLmluZm8oYFN0YXJ0aW5nICR7bmFtZX0uLi5gKTtcblxuICAvLyBNYXJrIE5vdFJlYWR5IHN5bmNocm9ub3VzbHksIEJFRk9SRSB0aGUgcG9ydCBvcGVucywgc28gbm8gcmVxdWVzdCBzbGlwc1xuICAvLyB0aHJvdWdoIHRoZSByZWFkaW5lc3MgZ3VhcmQgYmVmb3JlIHRoZSBzdXBlcnZpc29yIGhhcyBydW4uIFRoZSBzdXBlcnZpc29yXG4gIC8vIGZsaXBzIGl0IHRydWUgb25jZSBkZXBlbmRlbmNpZXMgY29ubmVjdC5cbiAgc2V0UmVhZHkoZmFsc2UpO1xuXG4gIC8vIExpc3RlbiBGSVJTVCwgdGhlbiBlc3RhYmxpc2ggKyBtb25pdG9yIHRoZSBkYXRhc3RvcmUgaW4gdGhlIGJhY2tncm91bmQsXG4gIC8vIHJlcG9ydGluZyBOb3RSZWFkeSB1bnRpbCBpdCBjb25uZWN0cy4gVGVzdGluZyB0aGUgREIgYmVmb3JlIGxpc3RlbiBhbmRcbiAgLy8gZXhpdGluZyBvbiBmYWlsdXJlIGNyYXNoLWxvb3BzIHRoZSB3aG9sZSBmbGVldCBkdXJpbmcgYSBjb2xkLURCIHN0YW1wZWRlOlxuICAvLyB0aGUgcHJvY2VzcyBuZXZlciBvcGVucyBpdHMgcG9ydCwgc28gL2hlYWx0aCAobGl2ZW5lc3MpLCAvcmVhZHkgYW5kIHRoZVxuICAvLyByZWFkaW5lc3MgZ3VhcmQgY2FuJ3QgYW5zd2VyIGFuZCB0aGUgb3JjaGVzdHJhdG9yIG9ubHkgc2VlcyBhIGRlYWQgcG9kLlxuICAvLyBPcGVuaW5nIHRoZSBwb3J0IGZpcnN0IG1ha2VzIFwiZGVwZW5kZW5jeSBkb3duXCIgYW4gb2JzZXJ2YWJsZSBzdGF0ZS5cbiAgY29uc3Qgc2VydmVyID0gYXBwLmxpc3Rlbihwb3J0LCAoKSA9PiB7XG4gICAgbG9nZ2VyLmluZm8oYCR7bmFtZX0gbGlzdGVuaW5nIG9uIHBvcnQ6ICR7cG9ydH1gKTtcbiAgICBsb2dnZXIuaW5mbyhgUGxhdGZvcm0gVVJMOiAke3NlcnZlckNvbmZpZy5wbGF0Zm9ybVVybH1gKTtcbiAgICBvblN0YXJ0Py4ocG9ydCk7XG4gIH0pO1xuXG4gIC8vIFNodXRkb3duIGhhbmRsZXIgKGd1YXJkZWQgYWdhaW5zdCBjb25jdXJyZW50IHNpZ25hbHMpXG4gIGxldCBzaHV0dGluZ0Rvd24gPSBmYWxzZTtcblxuICAvLyBCYWNrZ3JvdW5kIGRlcGVuZGVuY3kgc3VwZXJ2aXNvciDigJQgZXN0YWJsaXNoZWQgKyBtb25pdG9yZWQgYWZ0ZXIgbGlzdGVuLFxuICAvLyBzdG9wcGVkIG9uIHNodXRkb3duIHNvIGl0IG5ldmVyIGtlZXBzIGEgY2xvc2luZyBwcm9jZXNzIGFsaXZlLiBHdWFyZCB0aGVcbiAgLy8gZmxvYXRpbmcgcHJvbWlzZTogZXZlcnkgZXhwZWN0ZWQgZmFpbHVyZSBpcyBoYW5kbGVkIGluc2lkZSwgc28gYSByZWplY3Rpb25cbiAgLy8gaGVyZSBtZWFucyBhIHByb2dyYW1taW5nIGVycm9yIOKAlCBsb2cgaXQgYW5kIGxlYXZlIHRoZSBzZXJ2aWNlIE5vdFJlYWR5XG4gIC8vIHJhdGhlciB0aGFuIGxldHRpbmcgaXQgYmVjb21lIGFuIHVuaGFuZGxlZFJlamVjdGlvbiB0aGF0IGNyYXNoLWV4aXRzIHRoZVxuICAvLyBwcm9jZXNzICh3aGljaCB3b3VsZCBkZWZlYXQgdGhlIHdob2xlIFwibmV2ZXIgZXhpdCBvbiBkZXBlbmRlbmN5IHRyb3VibGVcIlxuICAvLyBnb2FsKS5cbiAgc3VwZXJ2aXNlRGVwZW5kZW5jaWVzKG5hbWUsIG9uQmVmb3JlU3RhcnQsIHRlc3REYXRhYmFzZSwgKCkgPT4gc2h1dHRpbmdEb3duKS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICBsb2dnZXIuZXJyb3IoJ0RlcGVuZGVuY3kgc3VwZXJ2aXNvciBjcmFzaGVkOyBzZXJ2aWNlIHdpbGwgcmVtYWluIE5vdFJlYWR5JywgeyBlcnJvcjogZXJyb3JNZXNzYWdlKGVycm9yKSB9KTtcbiAgfSk7XG5cbiAgY29uc3Qgc2h1dGRvd24gPSBhc3luYyAoc2lnbmFsPzogc3RyaW5nKSA9PiB7XG4gICAgaWYgKHNodXR0aW5nRG93bikgcmV0dXJuO1xuICAgIHNodXR0aW5nRG93biA9IHRydWU7XG5cbiAgICAvLyBEcmFpbiBGSVJTVDogcmVwb3J0IE5vdFJlYWR5IGJlZm9yZSBhbnl0aGluZyBlbHNlLCBzbyB0aGUgbG9hZCBiYWxhbmNlciAvXG4gICAgLy8gcmVhZGluZXNzIHByb2JlIHN0b3BzIHNlbmRpbmcgbmV3IHdvcmsgd2hpbGUgdGhlIHJlc3Qgb2Ygc2h1dGRvd24gcnVucy5cbiAgICAvLyBgb25TaHV0ZG93bmAgY2FuIHRha2Ugc2Vjb25kczsgcmVhZGluZXNzIGxlZnQgZ3JlZW4gYWNyb3NzIGl0IGtlZXBzIG5ld1xuICAgIC8vIHJlcXVlc3RzIGFycml2aW5nIGF0IGEgcHJvY2VzcyB0aGF0IGlzIGFscmVhZHkgdGVhcmluZyBpdHNlbGYgZG93bi5cbiAgICBzZXRSZWFkeShmYWxzZSk7XG5cbiAgICBpZiAoc2lnbmFsKSB7XG4gICAgICBsb2dnZXIuaW5mbyhgJHtzaWduYWx9IHJlY2VpdmVkLCBzaHV0dGluZyBkb3duIGdyYWNlZnVsbHkuLi5gKTtcbiAgICB9XG5cbiAgICAvLyBBcm0gdGhlIGZvcmNlLWV4aXQgQkVGT1JFIGF3YWl0aW5nIGFueXRoaW5nOiBhIGh1bmcgb25TaHV0ZG93biAoYSBzdHVja1xuICAgIC8vIHF1ZXVlIGNsb3NlLCBhIFJlZGlzIHF1aXQgdGhhdCBuZXZlciBhbnN3ZXJzKSB3b3VsZCBvdGhlcndpc2UgYmxvY2sgZm9yZXZlclxuICAgIC8vIHdpdGggdGhlIHRpbWVyIG5ldmVyIHN0YXJ0ZWQsIHNvIHRoZSBwb2Qgd291bGQgaWdub3JlIFNJR1RFUk0gdW50aWwgU0lHS0lMTC5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGxvZ2dlci5lcnJvcignRm9yY2VkIHNodXRkb3duIGFmdGVyIHRpbWVvdXQnKTtcbiAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICB9LCBzaHV0ZG93blRpbWVvdXRNcykudW5yZWYoKTtcblxuICAgIC8vIEN1c3RvbSBzaHV0ZG93biBjYWxsYmFja1xuICAgIGlmIChvblNodXRkb3duKSB7XG4gICAgICB0cnkge1xuICAgICAgICBhd2FpdCBvblNodXRkb3duKCk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBsb2dnZXIuZXJyb3IoJ0Vycm9yIGluIG9uU2h1dGRvd24gY2FsbGJhY2snLCB7IGVycm9yIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIENsb3NlIFNTRSBjb25uZWN0aW9uc1xuICAgIGlmIChzc2VNYW5hZ2VyKSB7XG4gICAgICBzc2VNYW5hZ2VyLnNodXRkb3duKCk7XG4gICAgICBsb2dnZXIuaW5mbygnU1NFIGNvbm5lY3Rpb25zIGNsb3NlZCcpO1xuICAgIH1cblxuICAgIC8vIENsb3NlIEhUVFAgc2VydmVyXG4gICAgc2VydmVyLmNsb3NlKGFzeW5jICgpID0+IHtcbiAgICAgIGxvZ2dlci5pbmZvKCdIVFRQIHNlcnZlciBjbG9zZWQnKTtcblxuICAgICAgLy8gRXZlcnkgaW4tZmxpZ2h0IHJlcXVlc3QgaGFzIG5vdyBmaW5pc2hlZCBhbmQgYnVmZmVyZWQgaXRzIG1ldGVyaW5nIHVuaXQ7XG4gICAgICAvLyBzZW5kIHRoZW0gYmVmb3JlIGV4aXRpbmcgKGFwaS1jb3JlIHF1b3RhLWluY3JlbWVudC1iYXRjaGVyKS4gTmV2ZXIgcmVqZWN0cy5cbiAgICAgIGF3YWl0IGZsdXNoUXVvdGFJbmNyZW1lbnRzKCk7XG5cbiAgICAgIC8vIFNodXRkb3duIE9wZW5UZWxlbWV0cnkgdHJhY2luZ1xuICAgICAgYXdhaXQgc2h1dGRvd25UcmFjaW5nKCkuY2F0Y2goZXJyID0+IGxvZ2dlci5lcnJvcignRXJyb3Igc2h1dHRpbmcgZG93biB0cmFjaW5nJywgeyBlcnJvcjogZXJyIH0pKTtcblxuICAgICAgLy8gQ2xvc2UgZGF0YWJhc2UgY29ubmVjdGlvblxuICAgICAgaWYgKGNsb3NlRGF0YWJhc2UgIT09IGZhbHNlKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgaWYgKGNsb3NlRGF0YWJhc2UpIHtcbiAgICAgICAgICAgIGF3YWl0IGNsb3NlRGF0YWJhc2UoKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgYXdhaXQgY2xvc2VDb25uZWN0aW9uKCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxvZ2dlci5pbmZvKCdEYXRhYmFzZSBjb25uZWN0aW9uIGNsb3NlZCcpO1xuICAgICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICAgIGxvZ2dlci5lcnJvcignRXJyb3IgY2xvc2luZyBkYXRhYmFzZScsIHsgZXJyb3IgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgcHJvY2Vzcy5leGl0KDApO1xuICAgIH0pO1xuICB9O1xuXG4gIC8vIFJlZ2lzdGVyIHNpZ25hbCBoYW5kbGVyc1xuICBwcm9jZXNzLm9uY2UoJ1NJR0lOVCcsICgpID0+IHZvaWQgc2h1dGRvd24oJ1NJR0lOVCcpKTtcbiAgcHJvY2Vzcy5vbmNlKCdTSUdURVJNJywgKCkgPT4gdm9pZCBzaHV0ZG93bignU0lHVEVSTScpKTtcblxuICByZXR1cm4ge1xuICAgIHNlcnZlcixcbiAgICBwb3J0LFxuICAgIHNodXRkb3duOiAoKSA9PiBzaHV0ZG93bigpLFxuICB9O1xufVxuXG4vKipcbiAqIFNpbXBsZSBzZXJ2ZXIgc3RhcnQgd3JhcHBlciB3aXRoIGVycm9yIGhhbmRsaW5nXG4gKlxuICogQHBhcmFtIGFwcCAtIEV4cHJlc3MgYXBwbGljYXRpb25cbiAqIEBwYXJhbSBvcHRpb25zIC0gU2VydmVyIG9wdGlvbnNcbiAqXG4gKiBAZXhhbXBsZVxuICogYGBgdHlwZXNjcmlwdFxuICogY29uc3QgeyBhcHAsIHNzZU1hbmFnZXIgfSA9IGNyZWF0ZUFwcCgpO1xuICogYXBwLnBvc3QoJy9hcGkvcmVzb3VyY2UnLCBoYW5kbGVyKTtcbiAqXG4gKiB2b2lkIHJ1blNlcnZlcihhcHAsIHsgbmFtZTogJ015IFNlcnZpY2UnLCBzc2VNYW5hZ2VyIH0pO1xuICogYGBgXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBydW5TZXJ2ZXIoYXBwOiBFeHByZXNzLCBvcHRpb25zOiBTdGFydFNlcnZlck9wdGlvbnMgPSB7fSk6IHZvaWQge1xuICAvLyBSb3V0ZSB0YWJsZSBvZiB0aGUgZnVsbHkgYXNzZW1ibGVkIGFwcCAoc2VlIGFwaS1jb3JlJ3Mgcm91dGUtdGFibGUudHMpOiB0aGVcbiAgLy8gc2FtZSBpbnRyb3NwZWN0aW9uIHRoZSBwZXItc2VydmljZSBjb3ZlcmFnZSB0ZXN0IGFzc2VydHMgb24sIGxvZ2dlZCBvbmNlIGF0XG4gIC8vIGJvb3Qgc28gYW4gdW5nYXRlZCBvciB1bmF1ZGl0ZWQgd3JpdGUgcm91dGUgaXMgdmlzaWJsZSBpbiB0aGUgcnVubmluZ1xuICAvLyBzZXJ2aWNlLCBub3Qgb25seSBpbiBDSS5cbiAgbG9nZ2VyLmluZm8oJ1JvdXRlIHRhYmxlIGJ1aWx0Jywgc3VtbWFyaXplUm91dGVUYWJsZShidWlsZFJvdXRlVGFibGUoYXBwKSkpO1xuXG4gIC8vIExhc3QtcmVzb3J0IGZhdWx0IGhhbmRsZXJzIGZvciB0aGUgcHJvZHVjdGlvbiBlbnRyeXBvaW50OiBhbiB1bmhhbmRsZWRcbiAgLy8gcmVqZWN0aW9uIC8gdW5jYXVnaHQgZXhjZXB0aW9uIGlzIGxvZ2dlZCAobm90IHNpbGVudGx5IGZhdGFsKSB0aGVuIHRoZVxuICAvLyBwcm9jZXNzIGV4aXRzIGZvciB0aGUgb3JjaGVzdHJhdG9yIHRvIHJlc3RhcnQuIE5vLW9wIHVuZGVyIE5PREVfRU5WPXRlc3QuXG4gIGluc3RhbGxDcmFzaEhhbmRsZXJzKGxvZ2dlcik7XG4gIHN0YXJ0U2VydmVyKGFwcCwgb3B0aW9ucykuY2F0Y2goKGVycm9yKSA9PiB7XG4gICAgLy8gc3RhcnRTZXJ2ZXIgbm93IGxpc3RlbnMtZmlyc3QgYW5kIHN1cGVydmlzZXMgdGhlIERCIGluIHRoZSBiYWNrZ3JvdW5kLCBzb1xuICAgIC8vIGl0IG9ubHkgcmVqZWN0cyBvbiBhIGdlbnVpbmVseSBmYXRhbCBTRVRVUCBlcnJvciAoaW52YWxpZCBhdXRoIGNvbmZpZywgYVxuICAgIC8vIGZhaWxlZCBvblN0YXJ0LCB0aGUgcG9ydCBhbHJlYWR5IGluIHVzZSkuIExvZyBtZXNzYWdlICsgc3RhY2sgZXhwbGljaXRseTpcbiAgICAvLyBhbiBFcnJvciBpbiB3aW5zdG9uIG1ldGFkYXRhIHNlcmlhbGl6ZXMgdG8gYHt9YCAobWVzc2FnZS9zdGFjayBhcmVcbiAgICAvLyBub24tZW51bWVyYWJsZSksIHdoaWNoIHdvdWxkIG90aGVyd2lzZSBoaWRlIHRoZSBjYXVzZSBiZWhpbmQgYHtlcnJvcjp7fX1gLlxuICAgIGxvZ2dlci5lcnJvcignRmFpbGVkIHRvIHN0YXJ0IHNlcnZlcicsIHtcbiAgICAgIGVycm9yOiBlcnJvck1lc3NhZ2UoZXJyb3IpLFxuICAgICAgc3RhY2s6IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5zdGFjayA6IHVuZGVmaW5lZCxcbiAgICB9KTtcbiAgICBwcm9jZXNzLmV4aXQoMSk7XG4gIH0pO1xufVxuIl19
264
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmVyLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3NlcnZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUIsT0FBTyxFQUFFLGVBQWUsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFFLG9CQUFvQixFQUFFLG9CQUFvQixFQUFFLGFBQWEsRUFBRSxzQkFBc0IsRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzlOLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRWpGLE9BQU8sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUMvQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFFL0QsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBR3RDLDhFQUE4RTtBQUM5RSw2RUFBNkU7QUFDN0UsNkVBQTZFO0FBQzdFLHlDQUF5QztBQUN6QyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQztBQUNqQyxNQUFNLGtCQUFrQixHQUFHLEtBQUssQ0FBQztBQUNqQyxNQUFNLHlCQUF5QixHQUFHLE1BQU0sQ0FBQywrQkFBK0IsRUFBRSxNQUFNLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUU5Rjs7Ozs7Ozs7Ozs7OztHQWFHO0FBQ0gsS0FBSyxVQUFVLHFCQUFxQixDQUNsQyxJQUFZLEVBQ1osYUFBZ0QsRUFDaEQsWUFBMEQsRUFDMUQsT0FBc0I7SUFFdEIsSUFBSSxh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MjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgU2VydmVyIH0gZnJvbSAnaHR0cCc7XG5pbXBvcnQgeyBidWlsZFJvdXRlVGFibGUsIGNyZWF0ZUxvZ2dlciwgZXJyb3JNZXNzYWdlLCBmbHVzaFF1b3RhSW5jcmVtZW50cywgaW5zdGFsbENyYXNoSGFuZGxlcnMsIG5leHRCYWNrb2ZmTXMsIHJlc29sdmVSZWRpc0Nvbm5lY3Rpb24sIHJldHJ5Rm9yZXZlciwgc3VtbWFyaXplUm91dGVUYWJsZSwgc2xlZXAsIGVudkludCB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB7IENvbmZpZyB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL3BpcGVsaW5lLWNvcmUnO1xuaW1wb3J0IHsgZ2V0Q29ubmVjdGlvbiwgY2xvc2VDb25uZWN0aW9uIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvcGlwZWxpbmUtZGF0YSc7XG5pbXBvcnQgdHlwZSB7IEV4cHJlc3MgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IHNldFJlYWR5LCBpc1JlYWR5IH0gZnJvbSAnLi9yZWFkaW5lc3MuanMnO1xuaW1wb3J0IHsgc2h1dGRvd25UcmFjaW5nIH0gZnJvbSAnLi90cmFjaW5nLmpzJztcbmltcG9ydCB7IFNTRU1hbmFnZXIgfSBmcm9tICcuLi9odHRwL3NzZS1jb25uZWN0aW9uLW1hbmFnZXIuanMnO1xuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ3NlcnZlcicpO1xuXG5cbi8vIERlcGVuZGVuY3ktc3VwZXJ2aXNvciBjYWRlbmNlLiBJbml0aWFsIGNvbm5lY3QgcmV0cmllcyB3aXRoIGNhcHBlZCBiYWNrb2ZmO1xuLy8gb25jZSBjb25uZWN0ZWQsIHJlLWNoZWNrcyBhdCBhIHN0ZWFkeSBpbnRlcnZhbCBzbyBhIGxhdGVyIG91dGFnZSBmbGlwcyB0aGVcbi8vIHNlcnZpY2UgTm90UmVhZHkgKGRyYWluaW5nIHRyYWZmaWMpIGFuZCBhIHJlY292ZXJ5IGZsaXBzIGl0IGJhY2sg4oCUIHdpdGhvdXRcbi8vIGV2ZXIgZXhpdGluZyAvIHJlc3RhcnRpbmcgdGhlIHByb2Nlc3MuXG5jb25zdCBSRUFEWV9SRVRSWV9CQVNFX01TID0gMTAwMDtcbmNvbnN0IFJFQURZX1JFVFJZX01BWF9NUyA9IDEwMDAwO1xuY29uc3QgUkVBRFlfTU9OSVRPUl9JTlRFUlZBTF9NUyA9IGVudkludCgnUkVBRElORVNTX01PTklUT1JfSU5URVJWQUxfTVMnLCAxNV8wMDAsIHsgbWluOiAxIH0pO1xuXG4vKipcbiAqIEVzdGFibGlzaCBhbmQgY29udGludW91c2x5IG1vbml0b3IgdGhlIHNlcnZpY2UncyBkYXRhc3RvcmUgZGVwZW5kZW5jeSxcbiAqIGZsaXBwaW5nIHJlYWRpbmVzcyBzdGF0ZSBpbnN0ZWFkIG9mIGNyYXNoLWxvb3BpbmcuXG4gKlxuICogLSBFc3RhYmxpc2ggcGhhc2U6IHJldHJ5IGBvbkJlZm9yZVN0YXJ0YCAoZS5nLiBjb25uZWN0TW9uZ28pIHdpdGggY2FwcGVkXG4gKiAgIGJhY2tvZmYgdW50aWwgaXQgc3VjY2VlZHMg4oCUIGEgY29sZCBkYXRhc3RvcmUgbXVzdCBuZXZlciBleGl0IHRoZSBwcm9jZXNzLlxuICogLSBNb25pdG9yIHBoYXNlOiBwb2xsIGB0ZXN0RGF0YWJhc2VgIGZvciB0aGUgbGlmZSBvZiB0aGUgcHJvY2VzczsgZmxpcFxuICogICByZWFkeS9Ob3RSZWFkeSBvbiB0cmFuc2l0aW9ucy4gV2hpbGUgTm90UmVhZHkgdGhlIHJlYWRpbmVzcyBndWFyZCA1MDNzXG4gKiAgIGJ1c2luZXNzIHRyYWZmaWMgYW5kIG9yY2hlc3RyYXRvciByZWFkaW5lc3MgcHJvYmVzIGRyYWluIHRoZSBpbnN0YW5jZS5cbiAqXG4gKiBSdW5zIGluIHRoZSBiYWNrZ3JvdW5kICh0aGUgSFRUUCBzZXJ2ZXIgaXMgYWxyZWFkeSBsaXN0ZW5pbmcpLiBTdG9wcyB3aGVuXG4gKiBgYWJvcnRlZCgpYCByZXR1cm5zIHRydWUgKGdyYWNlZnVsIHNodXRkb3duKSwgc28gaXQgbmV2ZXIga2VlcHMgYSBjbG9zaW5nXG4gKiBwcm9jZXNzIGFsaXZlLlxuICovXG5hc3luYyBmdW5jdGlvbiBzdXBlcnZpc2VEZXBlbmRlbmNpZXMoXG4gIG5hbWU6IHN0cmluZyxcbiAgb25CZWZvcmVTdGFydDogKCgpID0+IFByb21pc2U8dm9pZD4pIHwgdW5kZWZpbmVkLFxuICB0ZXN0RGF0YWJhc2U6ICgoKSA9PiBQcm9taXNlPGJvb2xlYW4+KSB8IGZhbHNlIHwgdW5kZWZpbmVkLFxuICBhYm9ydGVkOiAoKSA9PiBib29sZWFuLFxuKTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmIChvbkJlZm9yZVN0YXJ0KSB7XG4gICAgYXdhaXQgcmV0cnlGb3JldmVyKG9uQmVmb3JlU3RhcnQsIHtcbiAgICAgIGJhc2VNczogUkVBRFlfUkVUUllfQkFTRV9NUyxcbiAgICAgIG1heE1zOiBSRUFEWV9SRVRSWV9NQVhfTVMsXG4gICAgICBvbkF0dGVtcHRGYWlsZWQ6IChlcnJvciwgZGVsYXlNcykgPT4gbG9nZ2VyLndhcm4oXG4gICAgICAgIGAke25hbWV9OiBkZXBlbmRlbmN5IGluaXQgZmFpbGVkLCByZXRyeWluZyBpbiAke2RlbGF5TXN9bXNgLFxuICAgICAgICB7IGVycm9yOiBlcnJvck1lc3NhZ2UoZXJyb3IpIH0sXG4gICAgICApLFxuICAgICAgc2hvdWxkQ29udGludWU6ICgpID0+ICFhYm9ydGVkKCksXG4gICAgfSk7XG4gIH1cblxuICAvLyBObyBkYXRhc3RvcmUgdG8gZ2F0ZSBvbiDihpIgcmVhZHkgYXMgc29vbiBhcyB3ZSBhcmUgbGlzdGVuaW5nLlxuICBpZiAodGVzdERhdGFiYXNlID09PSBmYWxzZSkge1xuICAgIGlmIChhYm9ydGVkKCkpIHJldHVybjsgLy8gc2h1dGRvd24gYmVnYW4gd2hpbGUgd2Ugd2VyZSBpbml0aWFsaXppbmdcbiAgICBzZXRSZWFkeSh0cnVlKTtcbiAgICBsb2dnZXIuaW5mbyhgJHtuYW1lfSByZWFkeSAobm8gZGF0YXN0b3JlIGRlcGVuZGVuY3kpYCk7XG4gICAgcmV0dXJuO1xuICB9XG5cbiAgY29uc3QgcHJvYmUgPSB0ZXN0RGF0YWJhc2UgPz8gKCgpID0+IGdldENvbm5lY3Rpb24oKS50ZXN0Q29ubmVjdGlvbigpKTtcbiAgbGV0IHdhaXREZWxheSA9IFJFQURZX1JFVFJZX0JBU0VfTVM7XG4gIHdoaWxlICghYWJvcnRlZCgpKSB7XG4gICAgbGV0IG9rID0gZmFsc2U7XG4gICAgdHJ5IHtcbiAgICAgIG9rID0gYXdhaXQgcHJvYmUoKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIG9rID0gZmFsc2U7XG4gICAgfVxuXG4gICAgLy8gQSBwcm9iZSB0aGF0IHdhcyBpbiBmbGlnaHQgd2hlbiBzaHV0ZG93biBiZWdhbiBtdXN0IG5vdCBmbGlwIHRoZVxuICAgIC8vIGRyYWluaW5nIGluc3RhbmNlIGJhY2sgdG8gcmVhZHkuXG4gICAgaWYgKGFib3J0ZWQoKSkgYnJlYWs7XG4gICAgaWYgKG9rICYmICFpc1JlYWR5KCkpIHtcbiAgICAgIHNldFJlYWR5KHRydWUpO1xuICAgICAgd2FpdERlbGF5ID0gUkVBRFlfUkVUUllfQkFTRV9NUztcbiAgICAgIGxvZ2dlci5pbmZvKGAke25hbWV9IHJlYWR5IOKAlCBkZXBlbmRlbmNpZXMgY29ubmVjdGVkYCk7XG4gICAgfSBlbHNlIGlmICghb2sgJiYgaXNSZWFkeSgpKSB7XG4gICAgICBzZXRSZWFkeShmYWxzZSk7XG4gICAgICBsb2dnZXIud2FybihgJHtuYW1lfSBkZWdyYWRlZCDigJQgZGVwZW5kZW5jeSBjaGVjayBmYWlsaW5nIChub3cgTm90UmVhZHkpYCk7XG4gICAgfVxuXG4gICAgLy8gU3RlYWR5IGNhZGVuY2Ugb25jZSByZWFkeTsgZmFzdGVyIGJhY2tvZmYgd2hpbGUgd2FpdGluZyBzbyB3ZSBmbGlwIHRvXG4gICAgLy8gcmVhZHkgcHJvbXB0bHkgd2hlbiB0aGUgZGF0YXN0b3JlIGNvbWVzIHVwLlxuICAgIGlmIChpc1JlYWR5KCkpIHtcbiAgICAgIGF3YWl0IHNsZWVwKFJFQURZX01PTklUT1JfSU5URVJWQUxfTVMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCBzbGVlcCh3YWl0RGVsYXkpO1xuICAgICAgd2FpdERlbGF5ID0gbmV4dEJhY2tvZmZNcyh3YWl0RGVsYXksIFJFQURZX1JFVFJZX01BWF9NUyk7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogT3B0aW9ucyBmb3Igc3RhcnRpbmcgYSBzZXJ2ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFydFNlcnZlck9wdGlvbnMge1xuICAvKiogU2VydmljZSBuYW1lIGZvciBsb2dnaW5nICovXG4gIG5hbWU/OiBzdHJpbmc7XG4gIC8qKiBQb3J0IHRvIGxpc3RlbiBvbiAoZGVmYXVsdDogZnJvbSBjb25maWcpICovXG4gIHBvcnQ/OiBudW1iZXI7XG4gIC8qKiBTU0UgbWFuYWdlciBmb3IgZ3JhY2VmdWwgc2h1dGRvd24gKi9cbiAgc3NlTWFuYWdlcj86IFNTRU1hbmFnZXI7XG4gIC8qKiBTaHV0ZG93biB0aW1lb3V0IGluIG1pbGxpc2Vjb25kcyAoZGVmYXVsdDogMTUwMDApICovXG4gIHNodXRkb3duVGltZW91dE1zPzogbnVtYmVyO1xuICAvKiogQ2FsbGJhY2sgYWZ0ZXIgc2VydmVyIHN0YXJ0cyAqL1xuICBvblN0YXJ0PzogKHBvcnQ6IG51bWJlcikgPT4gdm9pZDtcbiAgLyoqIENhbGxiYWNrIGJlZm9yZSBzaHV0ZG93biAqL1xuICBvblNodXRkb3duPzogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgLyoqIFJ1bnMgYmVmb3JlIGRhdGFiYXNlIGNoZWNrIChlLmcuLCBpbml0aWFsaXplIGV4dGVybmFsIGNvbm5lY3Rpb25zKSAqL1xuICBvbkJlZm9yZVN0YXJ0PzogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbiAgLyoqIEN1c3RvbSBkYXRhYmFzZSBoZWFsdGggY2hlY2ssIG9yIGZhbHNlIHRvIHNraXAuIERlZmF1bHQ6IFBvc3RncmVTUUwgdGVzdENvbm5lY3Rpb24gKi9cbiAgdGVzdERhdGFiYXNlPzogKCgpID0+IFByb21pc2U8Ym9vbGVhbj4pIHwgZmFsc2U7XG4gIC8qKiBDdXN0b20gZGF0YWJhc2UgY2xvc2UsIG9yIGZhbHNlIHRvIHNraXAuIERlZmF1bHQ6IFBvc3RncmVTUUwgY2xvc2VDb25uZWN0aW9uICovXG4gIGNsb3NlRGF0YWJhc2U/OiAoKCkgPT4gUHJvbWlzZTx2b2lkPikgfCBmYWxzZTtcbn1cblxuLyoqXG4gKiBSZXN1bHQgb2Ygc3RhcnRpbmcgYSBzZXJ2ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFydFNlcnZlclJlc3VsdCB7XG4gIC8qKiBIVFRQIHNlcnZlciBpbnN0YW5jZSAqL1xuICBzZXJ2ZXI6IFNlcnZlcjtcbiAgLyoqIFBvcnQgdGhlIHNlcnZlciBpcyBsaXN0ZW5pbmcgb24gKi9cbiAgcG9ydDogbnVtYmVyO1xuICAvKiogRnVuY3Rpb24gdG8gbWFudWFsbHkgdHJpZ2dlciBzaHV0ZG93biAqL1xuICBzaHV0ZG93bjogKCkgPT4gUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBTdGFydCBhbiBFeHByZXNzIHNlcnZlciB3aXRoIGdyYWNlZnVsIHNodXRkb3duIGhhbmRsaW5nXG4gKlxuICogRmVhdHVyZXM6XG4gKiAtIEF1dG9tYXRpYyBkYXRhYmFzZSBjb25uZWN0aW9uIHRlc3RpbmdcbiAqIC0gR3JhY2VmdWwgc2h1dGRvd24gb24gU0lHSU5UL1NJR1RFUk1cbiAqIC0gU1NFIGNvbm5lY3Rpb24gY2xlYW51cFxuICogLSBDb25maWd1cmFibGUgc2h1dGRvd24gdGltZW91dFxuICpcbiAqIEBwYXJhbSBhcHAgLSBFeHByZXNzIGFwcGxpY2F0aW9uXG4gKiBAcGFyYW0gb3B0aW9ucyAtIFNlcnZlciBvcHRpb25zXG4gKiBAcmV0dXJucyBTZXJ2ZXIgaW5zdGFuY2UgYW5kIGNvbnRyb2wgZnVuY3Rpb25zXG4gKlxuICogQGV4YW1wbGVcbiAqIGBgYHR5cGVzY3JpcHRcbiAqIGNvbnN0IHsgYXBwLCBzc2VNYW5hZ2VyIH0gPSBjcmVhdGVBcHAoKTtcbiAqXG4gKiBhcHAucG9zdCgnL2FwaS9yZXNvdXJjZScsIHJlcXVpcmVBdXRoLCBoYW5kbGVyKTtcbiAqXG4gKiBhd2FpdCBzdGFydFNlcnZlcihhcHAsIHtcbiAqICAgbmFtZTogJ015IE1pY3Jvc2VydmljZScsXG4gKiAgIHNzZU1hbmFnZXIsXG4gKiAgIG9uU3RhcnQ6IChwb3J0KSA9PiBjb25zb2xlLmxvZyhgTGlzdGVuaW5nIG9uICR7cG9ydH1gKSxcbiAqIH0pO1xuICogYGBgXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzdGFydFNlcnZlcihcbiAgYXBwOiBFeHByZXNzLFxuICBvcHRpb25zOiBTdGFydFNlcnZlck9wdGlvbnMgPSB7fSxcbik6IFByb21pc2U8U3RhcnRTZXJ2ZXJSZXN1bHQ+IHtcbiAgY29uc3Qgc2VydmVyQ29uZmlnID0gQ29uZmlnLmdldCgnc2VydmVyJyk7XG4gIGNvbnN0IHtcbiAgICBuYW1lID0gJ01pY3Jvc2VydmljZScsXG4gICAgc3NlTWFuYWdlcixcbiAgICBzaHV0ZG93blRpbWVvdXRNcyA9IDE1MDAwLFxuICAgIG9uU3RhcnQsXG4gICAgb25TaHV0ZG93bixcbiAgICBvbkJlZm9yZVN0YXJ0LFxuICAgIHRlc3REYXRhYmFzZSxcbiAgICBjbG9zZURhdGFiYXNlLFxuICB9ID0gb3B0aW9ucztcbiAgY29uc3QgcG9ydCA9IG9wdGlvbnMucG9ydCA/PyBzZXJ2ZXJDb25maWcucG9ydDtcblxuICAvLyBWYWxpZGF0ZSBhdXRoIGNvbmZpZ3VyYXRpb24gYXQgc2VydmVyIHN0YXJ0dXAgKG5vdCBkdXJpbmcgQ0RLIHN5bnRoZXNpcylcbiAgQ29uZmlnLnZhbGlkYXRlQXV0aCgpO1xuICAvLyBGYWlsIGZhc3QgaWYgdGhpcyBzZXJ2aWNlIGhhcyBubyBpbnRlcm5hbCBzaWduaW5nIGtleSBvZiBpdHMgb3duLCBvciBub1xuICAvLyBwdWJsaWMgYnVuZGxlIHRvIHZlcmlmeSBpdHMgcGVlcnMgd2l0aC4gV2l0aG91dCB0aGVtIGl0IHdvdWxkIG1pbnRcbiAgLy8gdG9rZW5zIG9uIGFuIEVQSEVNRVJBTCBpbi1wcm9jZXNzIGtleSB0aGF0IG5vIHBlZXIgYWNjZXB0cywgYW5kIHJlamVjdCBldmVyeVxuICAvLyBwZWVyJ3MgdG9rZW4g4oCUIGkuZS4gc2lsZW50bHkgbG9zZSBhbGwgc2VydmljZS10by1zZXJ2aWNlIHRyYWZmaWMuIENoZWNrZWRcbiAgLy8gSEVSRSByYXRoZXIgdGhhbiBpbiBgY3JlYXRlQXBwYCBiZWNhdXNlIGl0IGlzIGEgcHJvcGVydHkgb2YgdGhlIHJ1bm5pbmdcbiAgLy8gZGVwbG95bWVudCwgbm90IG9mIHRoZSBhcHAgb2JqZWN0OiByb3V0ZS10YWJsZSBidWlsZGVycyBhbmQgdGVzdCBzdWl0ZXNcbiAgLy8gYXNzZW1ibGUgYW4gYXBwIHdpdGhvdXQgZXZlciBzaWduaW5nIGFueXRoaW5nLlxuICBmb3IgKGNvbnN0IGVudlZhciBvZiBbJ1NFUlZJQ0VfU0lHTklOR19LRVlfRklMRScsICdTRVJWSUNFX0tFWV9CVU5ETEVfRklMRSddIGFzIGNvbnN0KSB7XG4gICAgaWYgKCFwcm9jZXNzLmVudltlbnZWYXJdKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7ZW52VmFyfSBlbnZpcm9ubWVudCB2YXJpYWJsZSBpcyByZXF1aXJlZCAoZ2VuZXJhdGUgd2l0aCBkZXBsb3kvYmluL3NlcnZpY2Utc2lnbmluZy1rZXlzLnNoKS4gU2V0IGl0IGJlZm9yZSBzdGFydGluZyB0aGUgc2VydmVyLmApO1xuICAgIH1cbiAgfVxuICAvLyBGYWlsIGZhc3Qgb24gYW4gdW51c2FibGUgUmVkaXMgY29uZmlndXJhdGlvbiAodGhyb3dzIFJlZGlzQ29uZmlnRXJyb3IpIOKAlCBhXG4gIC8vIFJlZGlzIGNsaWVudCBpcyBjcmVhdGVkIGxhemlseSBvbiBmaXJzdCB1c2UsIHNvIHdpdGhvdXQgdGhpcyBhIGJhZCBjb25maWdcbiAgLy8gd291bGQgc3VyZmFjZSBhcyByZXF1ZXN0LXRpbWUgZXJyb3JzIGluc3RlYWQgb2YgYSBmYWlsZWQgc3RhcnQuXG4gIHJlc29sdmVSZWRpc0Nvbm5lY3Rpb24oKTtcblxuICBsb2dnZXIuaW5mbyhgU3RhcnRpbmcgJHtuYW1lfS4uLmApO1xuXG4gIC8vIE1hcmsgTm90UmVhZHkgc3luY2hyb25vdXNseSwgQkVGT1JFIHRoZSBwb3J0IG9wZW5zLCBzbyBubyByZXF1ZXN0IHNsaXBzXG4gIC8vIHRocm91Z2ggdGhlIHJlYWRpbmVzcyBndWFyZCBiZWZvcmUgdGhlIHN1cGVydmlzb3IgaGFzIHJ1bi4gVGhlIHN1cGVydmlzb3JcbiAgLy8gZmxpcHMgaXQgdHJ1ZSBvbmNlIGRlcGVuZGVuY2llcyBjb25uZWN0LlxuICBzZXRSZWFkeShmYWxzZSk7XG5cbiAgLy8gTGlzdGVuIEZJUlNULCB0aGVuIGVzdGFibGlzaCArIG1vbml0b3IgdGhlIGRhdGFzdG9yZSBpbiB0aGUgYmFja2dyb3VuZCxcbiAgLy8gcmVwb3J0aW5nIE5vdFJlYWR5IHVudGlsIGl0IGNvbm5lY3RzLiBUZXN0aW5nIHRoZSBEQiBiZWZvcmUgbGlzdGVuIGFuZFxuICAvLyBleGl0aW5nIG9uIGZhaWx1cmUgY3Jhc2gtbG9vcHMgdGhlIHdob2xlIGZsZWV0IGR1cmluZyBhIGNvbGQtREIgc3RhbXBlZGU6XG4gIC8vIHRoZSBwcm9jZXNzIG5ldmVyIG9wZW5zIGl0cyBwb3J0LCBzbyAvaGVhbHRoIChsaXZlbmVzcyksIC9yZWFkeSBhbmQgdGhlXG4gIC8vIHJlYWRpbmVzcyBndWFyZCBjYW4ndCBhbnN3ZXIgYW5kIHRoZSBvcmNoZXN0cmF0b3Igb25seSBzZWVzIGEgZGVhZCBwb2QuXG4gIC8vIE9wZW5pbmcgdGhlIHBvcnQgZmlyc3QgbWFrZXMgXCJkZXBlbmRlbmN5IGRvd25cIiBhbiBvYnNlcnZhYmxlIHN0YXRlLlxuICBjb25zdCBzZXJ2ZXIgPSBhcHAubGlzdGVuKHBvcnQsICgpID0+IHtcbiAgICBsb2dnZXIuaW5mbyhgJHtuYW1lfSBsaXN0ZW5pbmcgb24gcG9ydDogJHtwb3J0fWApO1xuICAgIGxvZ2dlci5pbmZvKGBQbGF0Zm9ybSBVUkw6ICR7c2VydmVyQ29uZmlnLnBsYXRmb3JtVXJsfWApO1xuICAgIG9uU3RhcnQ/Lihwb3J0KTtcbiAgfSk7XG5cbiAgLy8gU2h1dGRvd24gaGFuZGxlciAoZ3VhcmRlZCBhZ2FpbnN0IGNvbmN1cnJlbnQgc2lnbmFscylcbiAgbGV0IHNodXR0aW5nRG93biA9IGZhbHNlO1xuXG4gIC8vIEJhY2tncm91bmQgZGVwZW5kZW5jeSBzdXBlcnZpc29yIOKAlCBlc3RhYmxpc2hlZCArIG1vbml0b3JlZCBhZnRlciBsaXN0ZW4sXG4gIC8vIHN0b3BwZWQgb24gc2h1dGRvd24gc28gaXQgbmV2ZXIga2VlcHMgYSBjbG9zaW5nIHByb2Nlc3MgYWxpdmUuIEd1YXJkIHRoZVxuICAvLyBmbG9hdGluZyBwcm9taXNlOiBldmVyeSBleHBlY3RlZCBmYWlsdXJlIGlzIGhhbmRsZWQgaW5zaWRlLCBzbyBhIHJlamVjdGlvblxuICAvLyBoZXJlIG1lYW5zIGEgcHJvZ3JhbW1pbmcgZXJyb3Ig4oCUIGxvZyBpdCBhbmQgbGVhdmUgdGhlIHNlcnZpY2UgTm90UmVhZHlcbiAgLy8gcmF0aGVyIHRoYW4gbGV0dGluZyBpdCBiZWNvbWUgYW4gdW5oYW5kbGVkUmVqZWN0aW9uIHRoYXQgY3Jhc2gtZXhpdHMgdGhlXG4gIC8vIHByb2Nlc3MgKHdoaWNoIHdvdWxkIGRlZmVhdCB0aGUgd2hvbGUgXCJuZXZlciBleGl0IG9uIGRlcGVuZGVuY3kgdHJvdWJsZVwiXG4gIC8vIGdvYWwpLlxuICBzdXBlcnZpc2VEZXBlbmRlbmNpZXMobmFtZSwgb25CZWZvcmVTdGFydCwgdGVzdERhdGFiYXNlLCAoKSA9PiBzaHV0dGluZ0Rvd24pLmNhdGNoKChlcnJvcikgPT4ge1xuICAgIGxvZ2dlci5lcnJvcignRGVwZW5kZW5jeSBzdXBlcnZpc29yIGNyYXNoZWQ7IHNlcnZpY2Ugd2lsbCByZW1haW4gTm90UmVhZHknLCB7IGVycm9yOiBlcnJvck1lc3NhZ2UoZXJyb3IpIH0pO1xuICB9KTtcblxuICBjb25zdCBzaHV0ZG93biA9IGFzeW5jIChzaWduYWw/OiBzdHJpbmcpID0+IHtcbiAgICBpZiAoc2h1dHRpbmdEb3duKSByZXR1cm47XG4gICAgc2h1dHRpbmdEb3duID0gdHJ1ZTtcblxuICAgIC8vIERyYWluIEZJUlNUOiByZXBvcnQgTm90UmVhZHkgYmVmb3JlIGFueXRoaW5nIGVsc2UsIHNvIHRoZSBsb2FkIGJhbGFuY2VyIC9cbiAgICAvLyByZWFkaW5lc3MgcHJvYmUgc3RvcHMgc2VuZGluZyBuZXcgd29yayB3aGlsZSB0aGUgcmVzdCBvZiBzaHV0ZG93biBydW5zLlxuICAgIC8vIGBvblNodXRkb3duYCBjYW4gdGFrZSBzZWNvbmRzOyByZWFkaW5lc3MgbGVmdCBncmVlbiBhY3Jvc3MgaXQga2VlcHMgbmV3XG4gICAgLy8gcmVxdWVzdHMgYXJyaXZpbmcgYXQgYSBwcm9jZXNzIHRoYXQgaXMgYWxyZWFkeSB0ZWFyaW5nIGl0c2VsZiBkb3duLlxuICAgIHNldFJlYWR5KGZhbHNlKTtcblxuICAgIGlmIChzaWduYWwpIHtcbiAgICAgIGxvZ2dlci5pbmZvKGAke3NpZ25hbH0gcmVjZWl2ZWQsIHNodXR0aW5nIGRvd24gZ3JhY2VmdWxseS4uLmApO1xuICAgIH1cblxuICAgIC8vIEFybSB0aGUgZm9yY2UtZXhpdCBCRUZPUkUgYXdhaXRpbmcgYW55dGhpbmc6IGEgaHVuZyBvblNodXRkb3duIChhIHN0dWNrXG4gICAgLy8gcXVldWUgY2xvc2UsIGEgUmVkaXMgcXVpdCB0aGF0IG5ldmVyIGFuc3dlcnMpIHdvdWxkIG90aGVyd2lzZSBibG9jayBmb3JldmVyXG4gICAgLy8gd2l0aCB0aGUgdGltZXIgbmV2ZXIgc3RhcnRlZCwgc28gdGhlIHBvZCB3b3VsZCBpZ25vcmUgU0lHVEVSTSB1bnRpbCBTSUdLSUxMLlxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgbG9nZ2VyLmVycm9yKCdGb3JjZWQgc2h1dGRvd24gYWZ0ZXIgdGltZW91dCcpO1xuICAgICAgcHJvY2Vzcy5leGl0KDEpO1xuICAgIH0sIHNodXRkb3duVGltZW91dE1zKS51bnJlZigpO1xuXG4gICAgLy8gQ3VzdG9tIHNodXRkb3duIGNhbGxiYWNrXG4gICAgaWYgKG9uU2h1dGRvd24pIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIGF3YWl0IG9uU2h1dGRvd24oKTtcbiAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgIGxvZ2dlci5lcnJvcignRXJyb3IgaW4gb25TaHV0ZG93biBjYWxsYmFjaycsIHsgZXJyb3IgfSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2xvc2UgU1NFIGNvbm5lY3Rpb25zXG4gICAgaWYgKHNzZU1hbmFnZXIpIHtcbiAgICAgIHNzZU1hbmFnZXIuc2h1dGRvd24oKTtcbiAgICAgIGxvZ2dlci5pbmZvKCdTU0UgY29ubmVjdGlvbnMgY2xvc2VkJyk7XG4gICAgfVxuXG4gICAgLy8gQ2xvc2UgSFRUUCBzZXJ2ZXJcbiAgICBzZXJ2ZXIuY2xvc2UoYXN5bmMgKCkgPT4ge1xuICAgICAgbG9nZ2VyLmluZm8oJ0hUVFAgc2VydmVyIGNsb3NlZCcpO1xuXG4gICAgICAvLyBFdmVyeSBpbi1mbGlnaHQgcmVxdWVzdCBoYXMgbm93IGZpbmlzaGVkIGFuZCBidWZmZXJlZCBpdHMgbWV0ZXJpbmcgdW5pdDtcbiAgICAgIC8vIHNlbmQgdGhlbSBiZWZvcmUgZXhpdGluZyAoYXBpLWNvcmUgcXVvdGEtaW5jcmVtZW50LWJhdGNoZXIpLiBOZXZlciByZWplY3RzLlxuICAgICAgYXdhaXQgZmx1c2hRdW90YUluY3JlbWVudHMoKTtcblxuICAgICAgLy8gU2h1dGRvd24gT3BlblRlbGVtZXRyeSB0cmFjaW5nXG4gICAgICBhd2FpdCBzaHV0ZG93blRyYWNpbmcoKS5jYXRjaChlcnIgPT4gbG9nZ2VyLmVycm9yKCdFcnJvciBzaHV0dGluZyBkb3duIHRyYWNpbmcnLCB7IGVycm9yOiBlcnIgfSkpO1xuXG4gICAgICAvLyBDbG9zZSBkYXRhYmFzZSBjb25uZWN0aW9uXG4gICAgICBpZiAoY2xvc2VEYXRhYmFzZSAhPT0gZmFsc2UpIHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBpZiAoY2xvc2VEYXRhYmFzZSkge1xuICAgICAgICAgICAgYXdhaXQgY2xvc2VEYXRhYmFzZSgpO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBhd2FpdCBjbG9zZUNvbm5lY3Rpb24oKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbG9nZ2VyLmluZm8oJ0RhdGFiYXNlIGNvbm5lY3Rpb24gY2xvc2VkJyk7XG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgbG9nZ2VyLmVycm9yKCdFcnJvciBjbG9zaW5nIGRhdGFiYXNlJywgeyBlcnJvciB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBwcm9jZXNzLmV4aXQoMCk7XG4gICAgfSk7XG4gIH07XG5cbiAgLy8gUmVnaXN0ZXIgc2lnbmFsIGhhbmRsZXJzXG4gIHByb2Nlc3Mub25jZSgnU0lHSU5UJywgKCkgPT4gdm9pZCBzaHV0ZG93bignU0lHSU5UJykpO1xuICBwcm9jZXNzLm9uY2UoJ1NJR1RFUk0nLCAoKSA9PiB2b2lkIHNodXRkb3duKCdTSUdURVJNJykpO1xuXG4gIHJldHVybiB7XG4gICAgc2VydmVyLFxuICAgIHBvcnQsXG4gICAgc2h1dGRvd246ICgpID0+IHNodXRkb3duKCksXG4gIH07XG59XG5cbi8qKlxuICogU2ltcGxlIHNlcnZlciBzdGFydCB3cmFwcGVyIHdpdGggZXJyb3IgaGFuZGxpbmdcbiAqXG4gKiBAcGFyYW0gYXBwIC0gRXhwcmVzcyBhcHBsaWNhdGlvblxuICogQHBhcmFtIG9wdGlvbnMgLSBTZXJ2ZXIgb3B0aW9uc1xuICpcbiAqIEBleGFtcGxlXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBjb25zdCB7IGFwcCwgc3NlTWFuYWdlciB9ID0gY3JlYXRlQXBwKCk7XG4gKiBhcHAucG9zdCgnL2FwaS9yZXNvdXJjZScsIGhhbmRsZXIpO1xuICpcbiAqIHZvaWQgcnVuU2VydmVyKGFwcCwgeyBuYW1lOiAnTXkgU2VydmljZScsIHNzZU1hbmFnZXIgfSk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJ1blNlcnZlcihhcHA6IEV4cHJlc3MsIG9wdGlvbnM6IFN0YXJ0U2VydmVyT3B0aW9ucyA9IHt9KTogdm9pZCB7XG4gIC8vIFJvdXRlIHRhYmxlIG9mIHRoZSBmdWxseSBhc3NlbWJsZWQgYXBwIChzZWUgYXBpLWNvcmUncyByb3V0ZS10YWJsZS50cyk6IHRoZVxuICAvLyBzYW1lIGludHJvc3BlY3Rpb24gdGhlIHBlci1zZXJ2aWNlIGNvdmVyYWdlIHRlc3QgYXNzZXJ0cyBvbiwgbG9nZ2VkIG9uY2UgYXRcbiAgLy8gYm9vdCBzbyBhbiB1bmdhdGVkIG9yIHVuYXVkaXRlZCB3cml0ZSByb3V0ZSBpcyB2aXNpYmxlIGluIHRoZSBydW5uaW5nXG4gIC8vIHNlcnZpY2UsIG5vdCBvbmx5IGluIENJLlxuICBsb2dnZXIuaW5mbygnUm91dGUgdGFibGUgYnVpbHQnLCBzdW1tYXJpemVSb3V0ZVRhYmxlKGJ1aWxkUm91dGVUYWJsZShhcHApKSk7XG5cbiAgLy8gTGFzdC1yZXNvcnQgZmF1bHQgaGFuZGxlcnMgZm9yIHRoZSBwcm9kdWN0aW9uIGVudHJ5cG9pbnQ6IGFuIHVuaGFuZGxlZFxuICAvLyByZWplY3Rpb24gLyB1bmNhdWdodCBleGNlcHRpb24gaXMgbG9nZ2VkIChub3Qgc2lsZW50bHkgZmF0YWwpIHRoZW4gdGhlXG4gIC8vIHByb2Nlc3MgZXhpdHMgZm9yIHRoZSBvcmNoZXN0cmF0b3IgdG8gcmVzdGFydC4gTm8tb3AgdW5kZXIgTk9ERV9FTlY9dGVzdC5cbiAgaW5zdGFsbENyYXNoSGFuZGxlcnMobG9nZ2VyKTtcbiAgc3RhcnRTZXJ2ZXIoYXBwLCBvcHRpb25zKS5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAvLyBzdGFydFNlcnZlciBub3cgbGlzdGVucy1maXJzdCBhbmQgc3VwZXJ2aXNlcyB0aGUgREIgaW4gdGhlIGJhY2tncm91bmQsIHNvXG4gICAgLy8gaXQgb25seSByZWplY3RzIG9uIGEgZ2VudWluZWx5IGZhdGFsIFNFVFVQIGVycm9yIChpbnZhbGlkIGF1dGggY29uZmlnLCBhXG4gICAgLy8gZmFpbGVkIG9uU3RhcnQsIHRoZSBwb3J0IGFscmVhZHkgaW4gdXNlKS4gTG9nIG1lc3NhZ2UgKyBzdGFjayBleHBsaWNpdGx5OlxuICAgIC8vIGFuIEVycm9yIGluIHdpbnN0b24gbWV0YWRhdGEgc2VyaWFsaXplcyB0byBge31gIChtZXNzYWdlL3N0YWNrIGFyZVxuICAgIC8vIG5vbi1lbnVtZXJhYmxlKSwgd2hpY2ggd291bGQgb3RoZXJ3aXNlIGhpZGUgdGhlIGNhdXNlIGJlaGluZCBge2Vycm9yOnt9fWAuXG4gICAgbG9nZ2VyLmVycm9yKCdGYWlsZWQgdG8gc3RhcnQgc2VydmVyJywge1xuICAgICAgZXJyb3I6IGVycm9yTWVzc2FnZShlcnJvciksXG4gICAgICBzdGFjazogZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLnN0YWNrIDogdW5kZWZpbmVkLFxuICAgIH0pO1xuICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgfSk7XG59XG4iXX0=
@@ -113,4 +113,4 @@ export function withTenantContext(resolve = identityScope) {
113
113
  });
114
114
  };
115
115
  }
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWNvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3RlbmFudC1jb250ZXh0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLFlBQVksRUFBRSxhQUFhLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQXNCLE1BQU0saUNBQWlDLENBQUM7QUFFN0csT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEY7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gscUJBQXFCLENBQUMsR0FBRyxFQUFFO0lBQ3pCLE1BQU0sR0FBRyxHQUFHLGdCQUFnQixFQUFFLENBQUM7SUFDL0IsSUFBSSxDQUFDLEdBQUc7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUMzQiw2RUFBNkU7SUFDN0UseUVBQXlFO0lBQ3pFLG9DQUFvQztJQUNwQyxPQUFPLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7QUFDL0QsQ0FBQyxDQUFDLENBQUM7QUFFSDs7Ozs7O0dBTUc7QUFDSCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUk5Qzs7OzZDQUc2QztBQUM3QyxNQUFNLGFBQWEsR0FBd0IsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDbkQsd0VBQXdFO0lBQ3hFLDBFQUEwRTtJQUMxRSx1RUFBdUU7SUFDdkUsS0FBSyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSztJQUNyQyxNQUFNLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLElBQUksU0FBUztJQUNwRCxZQUFZLEVBQUUsYUFBYSxDQUFDLEdBQUcsQ0FBQztJQUNoQyxXQUFXLEVBQUUsR0FBRyxDQUFDLElBQUksRUFBRSxvQkFBb0I7Q0FDNUMsQ0FBQyxDQUFDO0FBRUg7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLE9BQU8sR0FBd0IsYUFBYTtJQUM1RSxPQUFPLENBQUMsR0FBWSxFQUFFLEdBQWEsRUFBRSxJQUFrQixFQUFRLEVBQUU7UUFDL0QsSUFBSSxLQUFvQixDQUFDO1FBQ3pCLElBQUksQ0FBQztZQUNILEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkIsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDVixPQUFPO1FBQ1QsQ0FBQztRQUNELG9CQUFvQixDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUU7WUFDL0IseURBQXlEO1lBQ3pELEVBQUU7WUFDRix1RUFBdUU7WUFDdkUsc0VBQXNFO1lBQ3RFLHlFQUF5RTtZQUN6RSwwRUFBMEU7WUFDMUUseUVBQXlFO1lBQ3pFLGdCQUFnQjtZQUNoQixJQUFJLENBQUMsY0FBYyxFQUFFLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxFQUFFLENBQUM7Z0JBQ1AsT0FBTztZQUNULENBQUM7WUFFRCx3RUFBd0U7WUFDeEUsK0RBQStEO1lBQy9ELHFFQUFxRTtZQUNyRSx1RUFBdUU7WUFDdkUsa0JBQWtCO1lBQ2xCLEdBQUcsQ0FBQyxFQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFakQsK0RBQStEO1lBQy9ELHlEQUF5RDtZQUN6RCxFQUFFO1lBQ0YsMEVBQTBFO1lBQzFFLGtFQUFrRTtZQUNsRSxzRUFBc0U7WUFDdEUsaURBQWlEO1lBQ2pELEtBQUssYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLElBQUksQ0FDNUIsR0FBRyxFQUFFLENBQUMsSUFBSSxFQUFFLEVBQ1osQ0FBQyxHQUFZLEVBQUUsRUFBRTtnQkFDZixxREFBcUQ7Z0JBQ3JELEtBQUssQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO2dCQUM1QixNQUFNLENBQUMsSUFBSSxDQUFDLGlGQUFpRixFQUFFO29CQUM3RixLQUFLLEVBQUUsR0FBRyxZQUFZLEtBQUssQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQztpQkFDeEQsQ0FBQyxDQUFDO2dCQUNILElBQUksRUFBRSxDQUFDO1lBQ1QsQ0FBQyxDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgY3JlYXRlTG9nZ2VyLCBpc1N5c3RlbUFkbWluLCBzZXRMb2dDb250ZXh0UHJvdmlkZXIgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5pbXBvcnQgeyBnZXRUZW5hbnRDb250ZXh0LCBydW5XaXRoVGVuYW50Q29udGV4dCwgdHlwZSBUZW5hbnRDb250ZXh0IH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvcGlwZWxpbmUtZGF0YSc7XG5pbXBvcnQgdHlwZSB7IFJlcXVlc3QsIFJlc3BvbnNlLCBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IGdldENvbnRleHQgfSBmcm9tICcuL2dldC1jb250ZXh0LmpzJztcbmltcG9ydCB7IGFwcGx5V3JpdGVQaW4sIHJlY29yZFdyaXRlRm9yUGluLCB3cml0ZVBpbkFjdGl2ZSB9IGZyb20gJy4vd3JpdGUtcGluLmpzJztcblxuLyoqXG4gKiBUZWFjaCB0aGUgbG9nZ2VyIHdoZXJlIHRoZSBhbWJpZW50IG9yZy91c2VyIGlkZW50aXR5IGxpdmVzIOKAlCB0aGUgU0lOR0xFIHdpcmVcbiAqIHBvaW50IGZvciBsb2cgdGVuYW5jeSBhY3Jvc3MgZXZlcnkgc2VydmljZS5cbiAqXG4gKiBgYXBpLWNvcmVgICh3aGljaCBvd25zIHRoZSBsb2dnZXIpIGhhcyBubyBpbnRlcm5hbCBkZXBlbmRlbmNpZXMsIGFuZCB0aGVcbiAqIHJlcXVlc3Qgc2NvcGUgbGl2ZXMgaW4gYHBpcGVsaW5lLWRhdGFgLCB3aGljaCBkZXBlbmRzIG9uIGl0IOKAlCBzbyB0aGUgbG9nZ2VyXG4gKiB0YWtlcyBhIHByb3ZpZGVyIHJhdGhlciB0aGFuIGltcG9ydGluZyB0aGUgQXN5bmNMb2NhbFN0b3JhZ2UgZGlyZWN0bHkuIFRoaXNcbiAqIG1vZHVsZSBpcyB0aGUgbmF0dXJhbCBwbGFjZSB0byByZWdpc3RlcjogaXQgYWxyZWFkeSBicmlkZ2VzIGJvdGggcGFja2FnZXMsXG4gKiBhbmQgZXZlcnkgc2VydmljZSB0aGF0IG9wZW5zIGEgdGVuYW50IHNjb3BlIGRvZXMgc28gdGhyb3VnaCB0aGVcbiAqIGB3aXRoVGVuYW50Q29udGV4dGAgZXhwb3J0ZWQgYmVsb3cgKHBsYXRmb3JtIGluY2x1ZGVkLCB2aWEgaXRzIG93biBwcmUtYXV0aFxuICogcmVzb2x2ZXIpLiBSZWdpc3RlcmluZyBoZXJlIHJhdGhlciB0aGFuIGluIGVhY2ggc2VydmljZSdzIGJvb3RzdHJhcCBtZWFucyBhXG4gKiBuZXcgc2VydmljZSBjYW5ub3QgZm9yZ2V0IHRvIGRvIGl0LlxuICpcbiAqIE1vZHVsZS1zY29wZSBvbiBwdXJwb3NlOiBpZGVtcG90ZW50LCBhbmQgaXQgbXVzdCBiZSBpbiBwbGFjZSBiZWZvcmUgdGhlIGZpcnN0XG4gKiByZXF1ZXN0IGlzIGxvZ2dlZC5cbiAqL1xuc2V0TG9nQ29udGV4dFByb3ZpZGVyKCgpID0+IHtcbiAgY29uc3QgY3R4ID0gZ2V0VGVuYW50Q29udGV4dCgpO1xuICBpZiAoIWN0eCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgLy8gRW1wdHktc3RyaW5nIG9yZ0lkICh0aGUgcHJlLWF1dGggZGVmYXVsdCBmb3IgdW5hdXRoZW50aWNhdGVkIGVuZHBvaW50cykgaXNcbiAgLy8gTk9UIGFuIG9yZyDigJQgbGVhdmUgdGhlIGZpZWxkIG9mZiBzbyB0aGUgbGluZSBpcyByb3V0ZWQgYXMgdW5hdHRyaWJ1dGVkXG4gIC8vIHJhdGhlciB0aGFuIHRvIGEgdGVuYW50IG5hbWVkIFwiXCIuXG4gIHJldHVybiB7IG9yZ0lkOiBjdHgub3JnSWQgfHwgdW5kZWZpbmVkLCB1c2VySWQ6IGN0eC51c2VySWQgfTtcbn0pO1xuXG4vKipcbiAqIFJlc29sdmVzIHRoZSBSTFMgdGVuYW50IHNjb3BlIGZvciBhIHJlcXVlc3QuIFRoZSBkZWZhdWx0IHJlYWRzIHRoZSBDQUxMRVInc1xuICogYXV0aGVudGljYXRlZCBpZGVudGl0eSBvcmcgKGBjdHguaWRlbnRpdHkub3JnSWRgLCB2YWxpZGF0ZWQgYnkgcmVxdWlyZU9yZ0lkKSDigJQgbmV2ZXIgYVxuICogcm91dGUgcGFyYW0sIHdoaWNoIG5hbWVzIHRoZSBRVUVSSUVEIHNjb3BlLCB0aGUgd3JvbmcgdGVuYW50IGZvciBSTFMuIFNlcnZpY2VzIHdpdGggYSBkaWZmZXJlbnQgcmVxdWVzdCBib3VuZGFyeSBzdXBwbHkgdGhlaXIgb3duIHJlc29sdmVyIChlLmcuIHBsYXRmb3JtXG4gKiBzZXRzIHRoZSBzY29wZSBwcmUtYXV0aCBmcm9tIGFuIHVudmVyaWZpZWQgSldUIHBlZWsgc28gdW5hdXRoZW50aWNhdGVkIGVuZHBvaW50cyBzdGlsbFxuICogZ2V0IGEgc2FuZSBkZWZhdWx0KS5cbiAqL1xuY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKCd0ZW5hbnQtY29udGV4dCcpO1xuXG5leHBvcnQgdHlwZSBUZW5hbnRTY29wZVJlc29sdmVyID0gKHJlcTogUmVxdWVzdCkgPT4gVGVuYW50Q29udGV4dDtcblxuLyoqIERlZmF1bHQgcmVzb2x2ZXI6IHRoZSBhdXRoZW50aWNhdGVkIGlkZW50aXR5J3Mgb3JnICsgc3VwZXItYWRtaW4gZmxhZywgcGx1c1xuICogIHRoZSBhY3RpdmUtb3JnIHBhcmVudCAob3JnIOKGkiB0ZWFtIGhpZXJhcmNoeSkgc28gZG93bnN0cmVhbSBzaWRlLWVmZmVjdHMgY2FuXG4gKiAgcmVhY2ggaXQgd2l0aG91dCBhIHJlcXVlc3QsIGFuZCB0aGUgY2FsbGVyJ3MgdXNlciBpZCBmb3IgdGhlIGFwcC1sYXllclxuICogIHByZWRpY2F0ZXMgdGhhdCBjYXJyeSBhIHBlci11c2VyIHJ1bmcuICovXG5jb25zdCBpZGVudGl0eVNjb3BlOiBUZW5hbnRTY29wZVJlc29sdmVyID0gKHJlcSkgPT4gKHtcbiAgLy8gYGlkZW50aXR5Lm9yZ0lkYCBpcyBhbHJlYWR5IG5vcm1hbGl6ZWQgKHRyaW1tZWQgKyBsb3dlcmNhc2VkKSBvbmNlIGF0XG4gIC8vIHJlc29sdXRpb24gaW4gYXBpLWNvcmUncyBgZ2V0SWRlbnRpdHlgLCBzbyB0aGUgR1VDIHNldCBoZXJlIG1hdGNoZXMgdGhlXG4gIC8vIGFwcC1sYXllciBXSEVSRSBjbGF1c2VzIGV4YWN0bHkg4oCUIG5vIGFkLWhvYyByZS1ub3JtYWxpemF0aW9uIG5lZWRlZC5cbiAgb3JnSWQ6IGdldENvbnRleHQocmVxKS5pZGVudGl0eS5vcmdJZCxcbiAgdXNlcklkOiBnZXRDb250ZXh0KHJlcSkuaWRlbnRpdHkudXNlcklkIHx8IHVuZGVmaW5lZCxcbiAgaXNTdXBlckFkbWluOiBpc1N5c3RlbUFkbWluKHJlcSksXG4gIHBhcmVudE9yZ0lkOiByZXEudXNlcj8ucGFyZW50T3JnYW5pemF0aW9uSWQsXG59KTtcblxuLyoqXG4gKiBFc3RhYmxpc2ggdGhlIHJlcXVlc3QncyByb3ctbGV2ZWwtc2VjdXJpdHkgdGVuYW50IHNjb3BlLlxuICpcbiAqIFJ1bnMgdGhlIHJlc3Qgb2YgdGhlIHJlcXVlc3QgaW5zaWRlIGBydW5XaXRoVGVuYW50Q29udGV4dCh7IG9yZ0lkLCBpc1N1cGVyQWRtaW4gfSlgIChhblxuICogQXN5bmNMb2NhbFN0b3JhZ2Ugc2NvcGUpIHNvIGV2ZXJ5IGB3aXRoVGVuYW50VHhgIHF1ZXJ5IGRvd25zdHJlYW0gY2FuIGBTRVQgTE9DQUxgIHRoZVxuICogUG9zdGdyZXMgR1VDcyB0aGF0IFJMUyBwb2xpY2llcyByZWFkLiBXaXRob3V0IHRoaXMsIHJlYWRzIGFnYWluc3QgRk9SQ0UtUkxTIHRhYmxlcyAoZS5nLlxuICogYHBsdWdpbnNgLCBgcGlwZWxpbmVzYCkgcnVuIHdpdGggZW1wdHkgR1VDcyBhbmQgc2lsZW50bHkgcmV0dXJuIG5vIHJvd3Mg4oCUIHRoZSBcInNldCBvbmNlXG4gKiBhdCB0aGUgcmVxdWVzdCBib3VuZGFyeVwiIGJvb2tlbmQgdGhlIFJMUyBlbmZvcmNlbWVudCBwbGFuIGNhbGxzIGZvci5cbiAqXG4gKiBEZWZhdWx0IHBsYWNlbWVudCBpcyBBRlRFUiBgcmVxdWlyZUF1dGhgICsgYHJlcXVpcmVPcmdJZGAgKHRoZSByb3V0ZSBmYWN0b3JpZXMgZG8gdGhpcyk7XG4gKiBwYXNzIGEgY3VzdG9tIGByZXNvbHZlYCBmb3IgYSBkaWZmZXJlbnQgYm91bmRhcnkuIEEgdGhyb3duIHJlc29sdmVyIG1lYW5zIHRlbmFudCBpZGVudGl0eVxuICogY291bGQgTk9UIGJlIGVzdGFibGlzaGVkIChhIHdpcmluZyBidWcg4oCUIHRoaXMgcnVucyBhZnRlciBhdXRoKSDigJQgd2UgaGFyZC1GQUlMIHRoZSByZXF1ZXN0XG4gKiAoNTAwIHZpYSBuZXh0KGVycikpIHJhdGhlciB0aGFuIHByb2NlZWQuIFByb2NlZWRpbmcgd291bGQgcnVuIHF1ZXJpZXMgd2l0aCBlbXB0eSBSTFMgR1VDcyxcbiAqIHdoaWNoIHVuZGVyIEZPUkNFIFJMUyBoaWRlIGV2ZXJ5IHJvdyBhbmQgcmVmdXNlIHdyaXRlcyDigJQgYSB3aXJpbmcgYnVnIHN1cmZhY2luZyBhcyBhXG4gKiBzaWxlbnRseSBlbXB0eSByZXN1bHQgaW5zdGVhZCBvZiBhbiBlcnJvci5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhUZW5hbnRDb250ZXh0KHJlc29sdmU6IFRlbmFudFNjb3BlUmVzb2x2ZXIgPSBpZGVudGl0eVNjb3BlKSB7XG4gIHJldHVybiAocmVxOiBSZXF1ZXN0LCByZXM6IFJlc3BvbnNlLCBuZXh0OiBOZXh0RnVuY3Rpb24pOiB2b2lkID0+IHtcbiAgICBsZXQgc2NvcGU6IFRlbmFudENvbnRleHQ7XG4gICAgdHJ5IHtcbiAgICAgIHNjb3BlID0gcmVzb2x2ZShyZXEpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgbmV4dChlcnIpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBydW5XaXRoVGVuYW50Q29udGV4dChzY29wZSwgKCkgPT4ge1xuICAgICAgLy8gUmVhZC1hZnRlci13cml0ZSBBQ1JPU1MgcmVxdWVzdHMgKHNlZSAuL3dyaXRlLXBpbi50cykuXG4gICAgICAvL1xuICAgICAgLy8gR0FURUQgU1lOQ0hST05PVVNMWSBBTkQgRklSU1QuIFdpdGggbm8gcmVhZCByZXBsaWNhIGNvbmZpZ3VyZWQg4oCUIGhvd1xuICAgICAgLy8gYWxsIGZvdXIgdGFyZ2V0cyBzaGlwIOKAlCB0aGlzIHJldHVybnMgaGVyZTogbm8gcmVzcG9uc2UgbGlzdGVuZXIsIG5vXG4gICAgICAvLyBSZWRpcywgYW5kIGBuZXh0KClgIGNhbGxlZCBzeW5jaHJvbm91c2x5IGV4YWN0bHkgYXMgYmVmb3JlIGFueSBvZiB0aGlzXG4gICAgICAvLyBleGlzdGVkLiBFdmVyeXRoaW5nIGJlbG93IGlzIG9wdC1pbiBtYWNoaW5lcnksIGFuZCBhIGZlYXR1cmUgbm9ib2R5IGhhc1xuICAgICAgLy8gZW5hYmxlZCBtdXN0IG5vdCBtYWtlIHRoZSByZXF1ZXN0IHBhdGggYXN5bmNocm9ub3VzIGZvciBldmVyeSByb3V0ZSBvblxuICAgICAgLy8gZXZlcnkgdGFyZ2V0LlxuICAgICAgaWYgKCF3cml0ZVBpbkFjdGl2ZSgpKSB7XG4gICAgICAgIG5leHQoKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICAvLyBUaGUgcGluIGlzIHJlY29yZGVkIG9uIGBmaW5pc2hgLCBhZnRlciB0aGUgcmVzcG9uc2UsIHNvIGEgd3JpdGUgbmV2ZXJcbiAgICAgIC8vIHdhaXRzIG9uIFJlZGlzLiBJdCByZWFkcyB0aGUgU0FNRSBgbWF5SGF2ZVdyaXR0ZW5gIGZsYWcgdGhhdFxuICAgICAgLy8gYHdpdGhUZW5hbnRUeGAgc2V0cywgd2hpY2ggaXMgd2h5IGl0IGNhdGNoZXMgYSBHRVQgdGhhdCB3cml0ZXMgYW5kXG4gICAgICAvLyBpZ25vcmVzIGEgUE9TVCB0aGF0IG9ubHkgdmFsaWRhdGVzIOKAlCB0aGUgSFRUUCBtZXRob2QgY2Fubm90IHRlbGwgeW91XG4gICAgICAvLyB3aGljaCBoYXBwZW5lZC5cbiAgICAgIHJlcy5vbignZmluaXNoJywgKCkgPT4gcmVjb3JkV3JpdGVGb3JQaW4oc2NvcGUpKTtcblxuICAgICAgLy8gYG5leHQoKWAgcnVucyBpbnNpZGUgdGhlIEFzeW5jTG9jYWxTdG9yYWdlIHNjb3BlIGVpdGhlciB3YXk6XG4gICAgICAvLyB0aGUgc3RvcmUgcHJvcGFnYXRlcyB0aHJvdWdoIHRoZSBwcm9taXNlIGNvbnRpbnVhdGlvbi5cbiAgICAgIC8vXG4gICAgICAvLyBBIGZhaWxlZCBsb29rdXAgbXVzdCBub3QgZmFpbCB0aGUgcmVxdWVzdCDigJQgYXBwbHlXcml0ZVBpbiBhbHJlYWR5IGZhaWxzXG4gICAgICAvLyBDTE9TRUQgaW50ZXJuYWxseSAodW5rbm93biBtZWFucyBcImFzc3VtZSB3cml0dGVuXCIsIGkuZS4gdXNlIHRoZVxuICAgICAgLy8gcHJpbWFyeSksIHNvIHRoZSBjYXRjaCBoZXJlIGlzIGZvciBhIGdlbnVpbmVseSB1bmV4cGVjdGVkIHRocm93IGFuZFxuICAgICAgLy8gY29udGludWVzIHdpdGggd2hhdGV2ZXIgdGhlIHJlc29sdmVyIHByb2R1Y2VkLlxuICAgICAgdm9pZCBhcHBseVdyaXRlUGluKHNjb3BlKS50aGVuKFxuICAgICAgICAoKSA9PiBuZXh0KCksXG4gICAgICAgIChlcnI6IHVua25vd24pID0+IHtcbiAgICAgICAgICAvLyBEZWZlbnNpdmU6IGFwcGx5V3JpdGVQaW4gaXMgd3JpdHRlbiBub3QgdG8gcmVqZWN0LlxuICAgICAgICAgIHNjb3BlLm1heUhhdmVXcml0dGVuID0gdHJ1ZTtcbiAgICAgICAgICBsb2dnZXIud2FybignV3JpdGUtcGluIHByZS1jaGVjayB0aHJldzsgYXNzdW1pbmcgYSByZWNlbnQgd3JpdGUgYW5kIHJlYWRpbmcgZnJvbSB0aGUgcHJpbWFyeScsIHtcbiAgICAgICAgICAgIGVycm9yOiBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogU3RyaW5nKGVyciksXG4gICAgICAgICAgfSk7XG4gICAgICAgICAgbmV4dCgpO1xuICAgICAgICB9LFxuICAgICAgKTtcbiAgICB9KTtcbiAgfTtcbn1cbiJdfQ==
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVuYW50LWNvbnRleHQuanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvdGVuYW50LWNvbnRleHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0QyxPQUFPLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxvQkFBb0IsRUFBc0IsTUFBTSxpQ0FBaUMsQ0FBQztBQUU3RyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxpQkFBaUIsRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVsRjs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxxQkFBcUIsQ0FBQyxHQUFHLEVBQUU7SUFDekIsTUFBTSxHQUFHLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztJQUMvQixJQUFJLENBQUMsR0FBRztRQUFFLE9BQU8sU0FBUyxDQUFDO0lBQzNCLDZFQUE2RTtJQUM3RSx5RUFBeUU7SUFDekUsb0NBQW9DO0lBQ3BDLE9BQU8sRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssSUFBSSxTQUFTLEVBQUUsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNLEVBQUUsQ0FBQztBQUMvRCxDQUFDLENBQUMsQ0FBQztBQUVIOzs7Ozs7R0FNRztBQUNILE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBSTlDOzs7NkNBRzZDO0FBQzdDLE1BQU0sYUFBYSxHQUF3QixDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNuRCx3RUFBd0U7SUFDeEUsMEVBQTBFO0lBQzFFLHVFQUF1RTtJQUN2RSxLQUFLLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxLQUFLO0lBQ3JDLE1BQU0sRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sSUFBSSxTQUFTO0lBQ3BELFlBQVksRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDO0lBQ2hDLFdBQVcsRUFBRSxHQUFHLENBQUMsSUFBSSxFQUFFLG9CQUFvQjtDQUM1QyxDQUFDLENBQUM7QUFFSDs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsT0FBTyxHQUF3QixhQUFhO0lBQzVFLE9BQU8sQ0FBQyxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCLEVBQVEsRUFBRTtRQUMvRCxJQUFJLEtBQW9CLENBQUM7UUFDekIsSUFBSSxDQUFDO1lBQ0gsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN2QixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNWLE9BQU87UUFDVCxDQUFDO1FBQ0Qsb0JBQW9CLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRTtZQUMvQix5REFBeUQ7WUFDekQsRUFBRTtZQUNGLHVFQUF1RTtZQUN2RSxzRUFBc0U7WUFDdEUseUVBQXlFO1lBQ3pFLDBFQUEwRTtZQUMxRSx5RUFBeUU7WUFDekUsZ0JBQWdCO1lBQ2hCLElBQUksQ0FBQyxjQUFjLEVBQUUsRUFBRSxDQUFDO2dCQUN0QixJQUFJLEVBQUUsQ0FBQztnQkFDUCxPQUFPO1lBQ1QsQ0FBQztZQUVELHdFQUF3RTtZQUN4RSwrREFBK0Q7WUFDL0QscUVBQXFFO1lBQ3JFLHVFQUF1RTtZQUN2RSxrQkFBa0I7WUFDbEIsR0FBRyxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUVqRCwrREFBK0Q7WUFDL0QseURBQXlEO1lBQ3pELEVBQUU7WUFDRiwwRUFBMEU7WUFDMUUsa0VBQWtFO1lBQ2xFLHNFQUFzRTtZQUN0RSxpREFBaUQ7WUFDakQsS0FBSyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUM1QixHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsRUFDWixDQUFDLEdBQVksRUFBRSxFQUFFO2dCQUNmLHFEQUFxRDtnQkFDckQsS0FBSyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7Z0JBQzVCLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUZBQWlGLEVBQUU7b0JBQzdGLEtBQUssRUFBRSxHQUFHLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDO2lCQUN4RCxDQUFDLENBQUM7Z0JBQ0gsSUFBSSxFQUFFLENBQUM7WUFDVCxDQUFDLENBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgeyBjcmVhdGVMb2dnZXIsIGlzU3lzdGVtQWRtaW4sIHNldExvZ0NvbnRleHRQcm92aWRlciB9IGZyb20gJ0BwaXBlbGluZS1idWlsZGVyL2FwaS1jb3JlJztcbmltcG9ydCB7IGdldFRlbmFudENvbnRleHQsIHJ1bldpdGhUZW5hbnRDb250ZXh0LCB0eXBlIFRlbmFudENvbnRleHQgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9waXBlbGluZS1kYXRhJztcbmltcG9ydCB0eXBlIHsgUmVxdWVzdCwgUmVzcG9uc2UsIE5leHRGdW5jdGlvbiB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IHsgZ2V0Q29udGV4dCB9IGZyb20gJy4vZ2V0LWNvbnRleHQuanMnO1xuaW1wb3J0IHsgYXBwbHlXcml0ZVBpbiwgcmVjb3JkV3JpdGVGb3JQaW4sIHdyaXRlUGluQWN0aXZlIH0gZnJvbSAnLi93cml0ZS1waW4uanMnO1xuXG4vKipcbiAqIFRlYWNoIHRoZSBsb2dnZXIgd2hlcmUgdGhlIGFtYmllbnQgb3JnL3VzZXIgaWRlbnRpdHkgbGl2ZXMg4oCUIHRoZSBTSU5HTEUgd2lyZVxuICogcG9pbnQgZm9yIGxvZyB0ZW5hbmN5IGFjcm9zcyBldmVyeSBzZXJ2aWNlLlxuICpcbiAqIGBhcGktY29yZWAgKHdoaWNoIG93bnMgdGhlIGxvZ2dlcikgaGFzIG5vIGludGVybmFsIGRlcGVuZGVuY2llcywgYW5kIHRoZVxuICogcmVxdWVzdCBzY29wZSBsaXZlcyBpbiBgcGlwZWxpbmUtZGF0YWAsIHdoaWNoIGRlcGVuZHMgb24gaXQg4oCUIHNvIHRoZSBsb2dnZXJcbiAqIHRha2VzIGEgcHJvdmlkZXIgcmF0aGVyIHRoYW4gaW1wb3J0aW5nIHRoZSBBc3luY0xvY2FsU3RvcmFnZSBkaXJlY3RseS4gVGhpc1xuICogbW9kdWxlIGlzIHRoZSBuYXR1cmFsIHBsYWNlIHRvIHJlZ2lzdGVyOiBpdCBhbHJlYWR5IGJyaWRnZXMgYm90aCBwYWNrYWdlcyxcbiAqIGFuZCBldmVyeSBzZXJ2aWNlIHRoYXQgb3BlbnMgYSB0ZW5hbnQgc2NvcGUgZG9lcyBzbyB0aHJvdWdoIHRoZVxuICogYHdpdGhUZW5hbnRDb250ZXh0YCBleHBvcnRlZCBiZWxvdyAocGxhdGZvcm0gaW5jbHVkZWQsIHZpYSBpdHMgb3duIHByZS1hdXRoXG4gKiByZXNvbHZlcikuIFJlZ2lzdGVyaW5nIGhlcmUgcmF0aGVyIHRoYW4gaW4gZWFjaCBzZXJ2aWNlJ3MgYm9vdHN0cmFwIG1lYW5zIGFcbiAqIG5ldyBzZXJ2aWNlIGNhbm5vdCBmb3JnZXQgdG8gZG8gaXQuXG4gKlxuICogTW9kdWxlLXNjb3BlIG9uIHB1cnBvc2U6IGlkZW1wb3RlbnQsIGFuZCBpdCBtdXN0IGJlIGluIHBsYWNlIGJlZm9yZSB0aGUgZmlyc3RcbiAqIHJlcXVlc3QgaXMgbG9nZ2VkLlxuICovXG5zZXRMb2dDb250ZXh0UHJvdmlkZXIoKCkgPT4ge1xuICBjb25zdCBjdHggPSBnZXRUZW5hbnRDb250ZXh0KCk7XG4gIGlmICghY3R4KSByZXR1cm4gdW5kZWZpbmVkO1xuICAvLyBFbXB0eS1zdHJpbmcgb3JnSWQgKHRoZSBwcmUtYXV0aCBkZWZhdWx0IGZvciB1bmF1dGhlbnRpY2F0ZWQgZW5kcG9pbnRzKSBpc1xuICAvLyBOT1QgYW4gb3JnIOKAlCBsZWF2ZSB0aGUgZmllbGQgb2ZmIHNvIHRoZSBsaW5lIGlzIHJvdXRlZCBhcyB1bmF0dHJpYnV0ZWRcbiAgLy8gcmF0aGVyIHRoYW4gdG8gYSB0ZW5hbnQgbmFtZWQgXCJcIi5cbiAgcmV0dXJuIHsgb3JnSWQ6IGN0eC5vcmdJZCB8fCB1bmRlZmluZWQsIHVzZXJJZDogY3R4LnVzZXJJZCB9O1xufSk7XG5cbi8qKlxuICogUmVzb2x2ZXMgdGhlIFJMUyB0ZW5hbnQgc2NvcGUgZm9yIGEgcmVxdWVzdC4gVGhlIGRlZmF1bHQgcmVhZHMgdGhlIENBTExFUidzXG4gKiBhdXRoZW50aWNhdGVkIGlkZW50aXR5IG9yZyAoYGN0eC5pZGVudGl0eS5vcmdJZGAsIHZhbGlkYXRlZCBieSByZXF1aXJlT3JnSWQpIOKAlCBuZXZlciBhXG4gKiByb3V0ZSBwYXJhbSwgd2hpY2ggbmFtZXMgdGhlIFFVRVJJRUQgc2NvcGUsIHRoZSB3cm9uZyB0ZW5hbnQgZm9yIFJMUy4gU2VydmljZXMgd2l0aCBhIGRpZmZlcmVudCByZXF1ZXN0IGJvdW5kYXJ5IHN1cHBseSB0aGVpciBvd24gcmVzb2x2ZXIgKGUuZy4gcGxhdGZvcm1cbiAqIHNldHMgdGhlIHNjb3BlIHByZS1hdXRoIGZyb20gYW4gdW52ZXJpZmllZCBKV1QgcGVlayBzbyB1bmF1dGhlbnRpY2F0ZWQgZW5kcG9pbnRzIHN0aWxsXG4gKiBnZXQgYSBzYW5lIGRlZmF1bHQpLlxuICovXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ3RlbmFudC1jb250ZXh0Jyk7XG5cbmV4cG9ydCB0eXBlIFRlbmFudFNjb3BlUmVzb2x2ZXIgPSAocmVxOiBSZXF1ZXN0KSA9PiBUZW5hbnRDb250ZXh0O1xuXG4vKiogRGVmYXVsdCByZXNvbHZlcjogdGhlIGF1dGhlbnRpY2F0ZWQgaWRlbnRpdHkncyBvcmcgKyBzdXBlci1hZG1pbiBmbGFnLCBwbHVzXG4gKiAgdGhlIGFjdGl2ZS1vcmcgcGFyZW50IChvcmcg4oaSIHRlYW0gaGllcmFyY2h5KSBzbyBkb3duc3RyZWFtIHNpZGUtZWZmZWN0cyBjYW5cbiAqICByZWFjaCBpdCB3aXRob3V0IGEgcmVxdWVzdCwgYW5kIHRoZSBjYWxsZXIncyB1c2VyIGlkIGZvciB0aGUgYXBwLWxheWVyXG4gKiAgcHJlZGljYXRlcyB0aGF0IGNhcnJ5IGEgcGVyLXVzZXIgcnVuZy4gKi9cbmNvbnN0IGlkZW50aXR5U2NvcGU6IFRlbmFudFNjb3BlUmVzb2x2ZXIgPSAocmVxKSA9PiAoe1xuICAvLyBgaWRlbnRpdHkub3JnSWRgIGlzIGFscmVhZHkgbm9ybWFsaXplZCAodHJpbW1lZCArIGxvd2VyY2FzZWQpIG9uY2UgYXRcbiAgLy8gcmVzb2x1dGlvbiBpbiBhcGktY29yZSdzIGBnZXRJZGVudGl0eWAsIHNvIHRoZSBHVUMgc2V0IGhlcmUgbWF0Y2hlcyB0aGVcbiAgLy8gYXBwLWxheWVyIFdIRVJFIGNsYXVzZXMgZXhhY3RseSDigJQgbm8gYWQtaG9jIHJlLW5vcm1hbGl6YXRpb24gbmVlZGVkLlxuICBvcmdJZDogZ2V0Q29udGV4dChyZXEpLmlkZW50aXR5Lm9yZ0lkLFxuICB1c2VySWQ6IGdldENvbnRleHQocmVxKS5pZGVudGl0eS51c2VySWQgfHwgdW5kZWZpbmVkLFxuICBpc1N1cGVyQWRtaW46IGlzU3lzdGVtQWRtaW4ocmVxKSxcbiAgcGFyZW50T3JnSWQ6IHJlcS51c2VyPy5wYXJlbnRPcmdhbml6YXRpb25JZCxcbn0pO1xuXG4vKipcbiAqIEVzdGFibGlzaCB0aGUgcmVxdWVzdCdzIHJvdy1sZXZlbC1zZWN1cml0eSB0ZW5hbnQgc2NvcGUuXG4gKlxuICogUnVucyB0aGUgcmVzdCBvZiB0aGUgcmVxdWVzdCBpbnNpZGUgYHJ1bldpdGhUZW5hbnRDb250ZXh0KHsgb3JnSWQsIGlzU3VwZXJBZG1pbiB9KWAgKGFuXG4gKiBBc3luY0xvY2FsU3RvcmFnZSBzY29wZSkgc28gZXZlcnkgYHdpdGhUZW5hbnRUeGAgcXVlcnkgZG93bnN0cmVhbSBjYW4gYFNFVCBMT0NBTGAgdGhlXG4gKiBQb3N0Z3JlcyBHVUNzIHRoYXQgUkxTIHBvbGljaWVzIHJlYWQuIFdpdGhvdXQgdGhpcywgcmVhZHMgYWdhaW5zdCBGT1JDRS1STFMgdGFibGVzIChlLmcuXG4gKiBgcGx1Z2luc2AsIGBwaXBlbGluZXNgKSBydW4gd2l0aCBlbXB0eSBHVUNzIGFuZCBzaWxlbnRseSByZXR1cm4gbm8gcm93cyDigJQgdGhlIFwic2V0IG9uY2VcbiAqIGF0IHRoZSByZXF1ZXN0IGJvdW5kYXJ5XCIgYm9va2VuZCB0aGUgUkxTIGVuZm9yY2VtZW50IHBsYW4gY2FsbHMgZm9yLlxuICpcbiAqIERlZmF1bHQgcGxhY2VtZW50IGlzIEFGVEVSIGByZXF1aXJlQXV0aGAgKyBgcmVxdWlyZU9yZ0lkYCAodGhlIHJvdXRlIGZhY3RvcmllcyBkbyB0aGlzKTtcbiAqIHBhc3MgYSBjdXN0b20gYHJlc29sdmVgIGZvciBhIGRpZmZlcmVudCBib3VuZGFyeS4gQSB0aHJvd24gcmVzb2x2ZXIgbWVhbnMgdGVuYW50IGlkZW50aXR5XG4gKiBjb3VsZCBOT1QgYmUgZXN0YWJsaXNoZWQgKGEgd2lyaW5nIGJ1ZyDigJQgdGhpcyBydW5zIGFmdGVyIGF1dGgpIOKAlCB3ZSBoYXJkLUZBSUwgdGhlIHJlcXVlc3RcbiAqICg1MDAgdmlhIG5leHQoZXJyKSkgcmF0aGVyIHRoYW4gcHJvY2VlZC4gUHJvY2VlZGluZyB3b3VsZCBydW4gcXVlcmllcyB3aXRoIGVtcHR5IFJMUyBHVUNzLFxuICogd2hpY2ggdW5kZXIgRk9SQ0UgUkxTIGhpZGUgZXZlcnkgcm93IGFuZCByZWZ1c2Ugd3JpdGVzIOKAlCBhIHdpcmluZyBidWcgc3VyZmFjaW5nIGFzIGFcbiAqIHNpbGVudGx5IGVtcHR5IHJlc3VsdCBpbnN0ZWFkIG9mIGFuIGVycm9yLlxuICovXG5leHBvcnQgZnVuY3Rpb24gd2l0aFRlbmFudENvbnRleHQocmVzb2x2ZTogVGVuYW50U2NvcGVSZXNvbHZlciA9IGlkZW50aXR5U2NvcGUpIHtcbiAgcmV0dXJuIChyZXE6IFJlcXVlc3QsIHJlczogUmVzcG9uc2UsIG5leHQ6IE5leHRGdW5jdGlvbik6IHZvaWQgPT4ge1xuICAgIGxldCBzY29wZTogVGVuYW50Q29udGV4dDtcbiAgICB0cnkge1xuICAgICAgc2NvcGUgPSByZXNvbHZlKHJlcSk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICBuZXh0KGVycik7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHJ1bldpdGhUZW5hbnRDb250ZXh0KHNjb3BlLCAoKSA9PiB7XG4gICAgICAvLyBSZWFkLWFmdGVyLXdyaXRlIEFDUk9TUyByZXF1ZXN0cyAoc2VlIC4vd3JpdGUtcGluLnRzKS5cbiAgICAgIC8vXG4gICAgICAvLyBHQVRFRCBTWU5DSFJPTk9VU0xZIEFORCBGSVJTVC4gV2l0aCBubyByZWFkIHJlcGxpY2EgY29uZmlndXJlZCDigJQgaG93XG4gICAgICAvLyBhbGwgZm91ciB0YXJnZXRzIHNoaXAg4oCUIHRoaXMgcmV0dXJucyBoZXJlOiBubyByZXNwb25zZSBsaXN0ZW5lciwgbm9cbiAgICAgIC8vIFJlZGlzLCBhbmQgYG5leHQoKWAgY2FsbGVkIHN5bmNocm9ub3VzbHkgZXhhY3RseSBhcyBiZWZvcmUgYW55IG9mIHRoaXNcbiAgICAgIC8vIGV4aXN0ZWQuIEV2ZXJ5dGhpbmcgYmVsb3cgaXMgb3B0LWluIG1hY2hpbmVyeSwgYW5kIGEgZmVhdHVyZSBub2JvZHkgaGFzXG4gICAgICAvLyBlbmFibGVkIG11c3Qgbm90IG1ha2UgdGhlIHJlcXVlc3QgcGF0aCBhc3luY2hyb25vdXMgZm9yIGV2ZXJ5IHJvdXRlIG9uXG4gICAgICAvLyBldmVyeSB0YXJnZXQuXG4gICAgICBpZiAoIXdyaXRlUGluQWN0aXZlKCkpIHtcbiAgICAgICAgbmV4dCgpO1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIC8vIFRoZSBwaW4gaXMgcmVjb3JkZWQgb24gYGZpbmlzaGAsIGFmdGVyIHRoZSByZXNwb25zZSwgc28gYSB3cml0ZSBuZXZlclxuICAgICAgLy8gd2FpdHMgb24gUmVkaXMuIEl0IHJlYWRzIHRoZSBTQU1FIGBtYXlIYXZlV3JpdHRlbmAgZmxhZyB0aGF0XG4gICAgICAvLyBgd2l0aFRlbmFudFR4YCBzZXRzLCB3aGljaCBpcyB3aHkgaXQgY2F0Y2hlcyBhIEdFVCB0aGF0IHdyaXRlcyBhbmRcbiAgICAgIC8vIGlnbm9yZXMgYSBQT1NUIHRoYXQgb25seSB2YWxpZGF0ZXMg4oCUIHRoZSBIVFRQIG1ldGhvZCBjYW5ub3QgdGVsbCB5b3VcbiAgICAgIC8vIHdoaWNoIGhhcHBlbmVkLlxuICAgICAgcmVzLm9uKCdmaW5pc2gnLCAoKSA9PiByZWNvcmRXcml0ZUZvclBpbihzY29wZSkpO1xuXG4gICAgICAvLyBgbmV4dCgpYCBydW5zIGluc2lkZSB0aGUgQXN5bmNMb2NhbFN0b3JhZ2Ugc2NvcGUgZWl0aGVyIHdheTpcbiAgICAgIC8vIHRoZSBzdG9yZSBwcm9wYWdhdGVzIHRocm91Z2ggdGhlIHByb21pc2UgY29udGludWF0aW9uLlxuICAgICAgLy9cbiAgICAgIC8vIEEgZmFpbGVkIGxvb2t1cCBtdXN0IG5vdCBmYWlsIHRoZSByZXF1ZXN0IOKAlCBhcHBseVdyaXRlUGluIGFscmVhZHkgZmFpbHNcbiAgICAgIC8vIENMT1NFRCBpbnRlcm5hbGx5ICh1bmtub3duIG1lYW5zIFwiYXNzdW1lIHdyaXR0ZW5cIiwgaS5lLiB1c2UgdGhlXG4gICAgICAvLyBwcmltYXJ5KSwgc28gdGhlIGNhdGNoIGhlcmUgaXMgZm9yIGEgZ2VudWluZWx5IHVuZXhwZWN0ZWQgdGhyb3cgYW5kXG4gICAgICAvLyBjb250aW51ZXMgd2l0aCB3aGF0ZXZlciB0aGUgcmVzb2x2ZXIgcHJvZHVjZWQuXG4gICAgICB2b2lkIGFwcGx5V3JpdGVQaW4oc2NvcGUpLnRoZW4oXG4gICAgICAgICgpID0+IG5leHQoKSxcbiAgICAgICAgKGVycjogdW5rbm93bikgPT4ge1xuICAgICAgICAgIC8vIERlZmVuc2l2ZTogYXBwbHlXcml0ZVBpbiBpcyB3cml0dGVuIG5vdCB0byByZWplY3QuXG4gICAgICAgICAgc2NvcGUubWF5SGF2ZVdyaXR0ZW4gPSB0cnVlO1xuICAgICAgICAgIGxvZ2dlci53YXJuKCdXcml0ZS1waW4gcHJlLWNoZWNrIHRocmV3OyBhc3N1bWluZyBhIHJlY2VudCB3cml0ZSBhbmQgcmVhZGluZyBmcm9tIHRoZSBwcmltYXJ5Jywge1xuICAgICAgICAgICAgZXJyb3I6IGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiBTdHJpbmcoZXJyKSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBuZXh0KCk7XG4gICAgICAgIH0sXG4gICAgICApO1xuICAgIH0pO1xuICB9O1xufVxuIl19
@@ -66,4 +66,4 @@ export function currentTraceId() {
66
66
  // disabled / there is no active span.
67
67
  return trace.getActiveSpan()?.spanContext()?.traceId;
68
68
  }
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2luZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcGkvdHJhY2luZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLE9BQU8sRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUE4QixNQUFNLG9CQUFvQixDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFMUQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBRXZDLDZDQUE2QztBQUM3QyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsU0FBUyxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFFbkQ7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxRQUFRLENBQzVCLElBQVksRUFDWixFQUE4QixFQUM5QixVQUF1QjtJQUV2QixPQUFPLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUNqRCxJQUFJLFVBQVU7WUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQy9DLElBQUksQ0FBQztZQUNILE1BQU0sTUFBTSxHQUFHLE1BQU0sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLEVBQUUsY0FBYyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDNUMsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixNQUFNLEtBQUssR0FBRyxHQUFHLFlBQVksS0FBSyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ2xFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUN2RSxNQUFNLEdBQUcsQ0FBQztRQUNaLENBQUM7Z0JBQVMsQ0FBQztZQUNULElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUNiLENBQUM7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRCx5RUFBeUU7QUFDekUsNkVBQTZFO0FBQzdFLDJFQUEyRTtBQUMzRSw0RUFBNEU7QUFDNUUsSUFBSSxHQUFHLEdBQW1CLElBQUksQ0FBQztBQUUvQjs7R0FFRztBQUNILE1BQU0sQ0FBQyxLQUFLLFVBQVUsZUFBZTtJQUNuQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ1IsTUFBTSxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDckIsR0FBRyxHQUFHLElBQUksQ0FBQztRQUNYLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUNBQWlDLENBQUMsQ0FBQztJQUNqRCxDQUFDO0FBQ0gsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsY0FBYztJQUM1Qix5RUFBeUU7SUFDekUsNkVBQTZFO0lBQzdFLDRFQUE0RTtJQUM1RSxzQ0FBc0M7SUFDdEMsT0FBTyxLQUFLLENBQUMsYUFBYSxFQUFFLEVBQUUsV0FBVyxFQUFFLEVBQUUsT0FBTyxDQUFDO0FBQ3ZELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyNiBQaXBlbGluZSBCdWlsZGVyIENvbnRyaWJ1dG9yc1xuLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcblxuaW1wb3J0IHsgdHJhY2UsIFNwYW5TdGF0dXNDb2RlLCB0eXBlIFNwYW4sIHR5cGUgQXR0cmlidXRlcyB9IGZyb20gJ0BvcGVudGVsZW1ldHJ5L2FwaSc7XG5pbXBvcnQgeyBOb2RlU0RLIH0gZnJvbSAnQG9wZW50ZWxlbWV0cnkvc2RrLW5vZGUnO1xuaW1wb3J0IHsgY3JlYXRlTG9nZ2VyIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuXG5jb25zdCBsb2dnZXIgPSBjcmVhdGVMb2dnZXIoJ3RyYWNpbmcnKTtcblxuLyoqIFNoYXJlZCB0cmFjZXIgZm9yIGhhbmQtYXV0aG9yZWQgc3BhbnMuICovXG5jb25zdCB0cmFjZXIgPSB0cmFjZS5nZXRUcmFjZXIoJ3BpcGVsaW5lLWJ1aWxkZXInKTtcblxuLyoqXG4gKiBSdW4gYGZuYCBpbnNpZGUgYSBuZXcgYWN0aXZlIHNwYW4gbmFtZWQgYG5hbWVgLlxuICpcbiAqIEF1dG8taW5zdHJ1bWVudGF0aW9uIG9ubHkgY292ZXJzIGluYm91bmQgSFRUUC9leHByZXNzL21vbmdvL3BnOyB0aGUgcGF0aHMgdGhhdFxuICogYWN0dWFsbHkgZ2V0IGRlYnVnZ2VkIGluIGFuIGluY2lkZW50IOKAlCBBSSBnZW5lcmF0aW9uLCB0aGUgb3V0LW9mLWJhbmQgQnVsbE1RXG4gKiBwbHVnaW4gYnVpbGQgKHJ1bnMgZGV0YWNoZWQgZnJvbSBhbnkgaW5ib3VuZCBzcGFuKSwgbG9uZyBhc3luYyB3b3JrIOKAlCBzaG93IG5vXG4gKiBzcGFuIGRldGFpbCB3aXRob3V0IGEgaGFuZC1hdXRob3JlZCBvbmUuIFdyYXAgdGhvc2Ugd2l0aCB0aGlzLlxuICpcbiAqIFNhZmUgd2hlbiB0cmFjaW5nIGlzIGRpc2FibGVkOiB3aXRoIG5vIFNESyByZWdpc3RlcmVkLCBgc3RhcnRBY3RpdmVTcGFuYCBydW5zXG4gKiB0aGUgY2FsbGJhY2sgd2l0aCBhIG5vLW9wIHNwYW4sIHNvIHRoaXMgYWRkcyBuZWdsaWdpYmxlIG92ZXJoZWFkIGFuZCBuZXZlclxuICogY2hhbmdlcyBiZWhhdmlvci4gT24gdGhyb3csIHRoZSBzcGFuIGlzIG1hcmtlZCBFUlJPUiBhbmQgdGhlIGV4Y2VwdGlvblxuICogcmVjb3JkZWQsIHRoZW4gcmUtdGhyb3duIHVuY2hhbmdlZC4gQWx3YXlzIGVuZHMgdGhlIHNwYW4uXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB3aXRoU3BhbjxUPihcbiAgbmFtZTogc3RyaW5nLFxuICBmbjogKHNwYW46IFNwYW4pID0+IFByb21pc2U8VD4sXG4gIGF0dHJpYnV0ZXM/OiBBdHRyaWJ1dGVzLFxuKTogUHJvbWlzZTxUPiB7XG4gIHJldHVybiB0cmFjZXIuc3RhcnRBY3RpdmVTcGFuKG5hbWUsIGFzeW5jIChzcGFuKSA9PiB7XG4gICAgaWYgKGF0dHJpYnV0ZXMpIHNwYW4uc2V0QXR0cmlidXRlcyhhdHRyaWJ1dGVzKTtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcmVzdWx0ID0gYXdhaXQgZm4oc3Bhbik7XG4gICAgICBzcGFuLnNldFN0YXR1cyh7IGNvZGU6IFNwYW5TdGF0dXNDb2RlLk9LIH0pO1xuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGNvbnN0IGVycm9yID0gZXJyIGluc3RhbmNlb2YgRXJyb3IgPyBlcnIgOiBuZXcgRXJyb3IoU3RyaW5nKGVycikpO1xuICAgICAgc3Bhbi5yZWNvcmRFeGNlcHRpb24oZXJyb3IpO1xuICAgICAgc3Bhbi5zZXRTdGF0dXMoeyBjb2RlOiBTcGFuU3RhdHVzQ29kZS5FUlJPUiwgbWVzc2FnZTogZXJyb3IubWVzc2FnZSB9KTtcbiAgICAgIHRocm93IGVycjtcbiAgICB9IGZpbmFsbHkge1xuICAgICAgc3Bhbi5lbmQoKTtcbiAgICB9XG4gIH0pO1xufVxuXG4vLyBNb2R1bGUtbG9jYWwgU0RLIGhhbmRsZS4gUHJvZHVjdGlvbiBzZXJ2aWNlcyBzdGFydCB0cmFjaW5nIHRocm91Z2ggdGhlXG4vLyBgb3RlbC1ib290c3RyYXAuanNgIGAtLWltcG9ydGAgcHJlbG9hZCwgd2hpY2ggcmVnaXN0ZXJzIGl0cyBvd24gU0RLIG9uIHRoZVxuLy8gZ2xvYmFsIHByb3ZpZGVyIOKAlCBzbyB0aGlzIHN0YXlzIG51bGwgYW5kIGBzaHV0ZG93blRyYWNpbmcoKWAgaXMgYSBuby1vcC5cbi8vIEl0IGlzIHJldGFpbmVkIGJlY2F1c2UgYHNlcnZlci50c2AgY2FsbHMgYHNodXRkb3duVHJhY2luZygpYCBvbiBzaHV0ZG93bi5cbmxldCBzZGs6IE5vZGVTREsgfCBudWxsID0gbnVsbDtcblxuLyoqXG4gKiBTaHV0ZG93biB0aGUgT3BlblRlbGVtZXRyeSBTREsgZ3JhY2VmdWxseS5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHNodXRkb3duVHJhY2luZygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgaWYgKHNkaykge1xuICAgIGF3YWl0IHNkay5zaHV0ZG93bigpO1xuICAgIHNkayA9IG51bGw7XG4gICAgbG9nZ2VyLmluZm8oJ09wZW5UZWxlbWV0cnkgdHJhY2luZyBzaHV0IGRvd24nKTtcbiAgfVxufVxuXG4vKipcbiAqIFJldHVybnMgdGhlIGN1cnJlbnQgYWN0aXZlIHRyYWNlIElELCBvciB1bmRlZmluZWQgd2hlbiB0cmFjaW5nIGlzXG4gKiBkaXNhYmxlZCAvIG5vIGFjdGl2ZSBzcGFuLiBVc2VmdWwgZm9yIGVucmljaGluZyBzdHJ1Y3R1cmVkIGxvZ3Mgc28gYW5cbiAqIG9wZXJhdG9yIGNhbiBjb3JyZWxhdGUgYSByZXF1ZXN0IGFjcm9zcyBzZXJ2aWNlcyB2aWEgaXRzIHRyYWNlIElELlxuICovXG5leHBvcnQgZnVuY3Rpb24gY3VycmVudFRyYWNlSWQoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgLy8gUmVhZCB0aGUgZ2xvYmFsbHktcmVnaXN0ZXJlZCB0cmFjZXIgcHJvdmlkZXIncyBhY3RpdmUgc3Bhbi4gVGhlIFNESyBpc1xuICAvLyBzdGFydGVkIGJ5IHRoZSBgb3RlbC1ib290c3RyYXAuanNgIGAtLWltcG9ydGAgcHJlbG9hZCwgd2hpY2ggcmVnaXN0ZXJzIHRoZVxuICAvLyBnbG9iYWwgcHJvdmlkZXIgdmlhIEBvcGVudGVsZW1ldHJ5L2FwaS4gUmV0dXJucyB1bmRlZmluZWQgd2hlbiB0cmFjaW5nIGlzXG4gIC8vIGRpc2FibGVkIC8gdGhlcmUgaXMgbm8gYWN0aXZlIHNwYW4uXG4gIHJldHVybiB0cmFjZS5nZXRBY3RpdmVTcGFuKCk/LnNwYW5Db250ZXh0KCk/LnRyYWNlSWQ7XG59XG4iXX0=
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhY2luZy5qcyIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS90cmFjaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsT0FBTyxFQUFFLEtBQUssRUFBRSxjQUFjLEVBQThCLE1BQU0sb0JBQW9CLENBQUM7QUFDdkYsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUxRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7QUFFdkMsNkNBQTZDO0FBQzdDLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQUVuRDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFFBQVEsQ0FDNUIsSUFBWSxFQUNaLEVBQThCLEVBQzlCLFVBQXVCO0lBRXZCLE9BQU8sTUFBTSxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ2pELElBQUksVUFBVTtZQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0MsSUFBSSxDQUFDO1lBQ0gsTUFBTSxNQUFNLEdBQUcsTUFBTSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxFQUFFLElBQUksRUFBRSxjQUFjLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUM1QyxPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO1FBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztZQUNiLE1BQU0sS0FBSyxHQUFHLEdBQUcsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDbEUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsSUFBSSxFQUFFLGNBQWMsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1lBQ3ZFLE1BQU0sR0FBRyxDQUFDO1FBQ1osQ0FBQztnQkFBUyxDQUFDO1lBQ1QsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ2IsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELHlFQUF5RTtBQUN6RSw2RUFBNkU7QUFDN0UsMkVBQTJFO0FBQzNFLDRFQUE0RTtBQUM1RSxJQUFJLEdBQUcsR0FBbUIsSUFBSSxDQUFDO0FBRS9COztHQUVHO0FBQ0gsTUFBTSxDQUFDLEtBQUssVUFBVSxlQUFlO0lBQ25DLElBQUksR0FBRyxFQUFFLENBQUM7UUFDUixNQUFNLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyQixHQUFHLEdBQUcsSUFBSSxDQUFDO1FBQ1gsTUFBTSxDQUFDLElBQUksQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ2pELENBQUM7QUFDSCxDQUFDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSxjQUFjO0lBQzVCLHlFQUF5RTtJQUN6RSw2RUFBNkU7SUFDN0UsNEVBQTRFO0lBQzVFLHNDQUFzQztJQUN0QyxPQUFPLEtBQUssQ0FBQyxhQUFhLEVBQUUsRUFBRSxXQUFXLEVBQUUsRUFBRSxPQUFPLENBQUM7QUFDdkQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG5pbXBvcnQgeyB0cmFjZSwgU3BhblN0YXR1c0NvZGUsIHR5cGUgU3BhbiwgdHlwZSBBdHRyaWJ1dGVzIH0gZnJvbSAnQG9wZW50ZWxlbWV0cnkvYXBpJztcbmltcG9ydCB7IE5vZGVTREsgfSBmcm9tICdAb3BlbnRlbGVtZXRyeS9zZGstbm9kZSc7XG5pbXBvcnQgeyBjcmVhdGVMb2dnZXIgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG5cbmNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcigndHJhY2luZycpO1xuXG4vKiogU2hhcmVkIHRyYWNlciBmb3IgaGFuZC1hdXRob3JlZCBzcGFucy4gKi9cbmNvbnN0IHRyYWNlciA9IHRyYWNlLmdldFRyYWNlcigncGlwZWxpbmUtYnVpbGRlcicpO1xuXG4vKipcbiAqIFJ1biBgZm5gIGluc2lkZSBhIG5ldyBhY3RpdmUgc3BhbiBuYW1lZCBgbmFtZWAuXG4gKlxuICogQXV0by1pbnN0cnVtZW50YXRpb24gb25seSBjb3ZlcnMgaW5ib3VuZCBIVFRQL2V4cHJlc3MvbW9uZ28vcGc7IHRoZSBwYXRocyB0aGF0XG4gKiBhY3R1YWxseSBnZXQgZGVidWdnZWQgaW4gYW4gaW5jaWRlbnQg4oCUIEFJIGdlbmVyYXRpb24sIHRoZSBvdXQtb2YtYmFuZCBCdWxsTVFcbiAqIHBsdWdpbiBidWlsZCAocnVucyBkZXRhY2hlZCBmcm9tIGFueSBpbmJvdW5kIHNwYW4pLCBsb25nIGFzeW5jIHdvcmsg4oCUIHNob3cgbm9cbiAqIHNwYW4gZGV0YWlsIHdpdGhvdXQgYSBoYW5kLWF1dGhvcmVkIG9uZS4gV3JhcCB0aG9zZSB3aXRoIHRoaXMuXG4gKlxuICogU2FmZSB3aGVuIHRyYWNpbmcgaXMgZGlzYWJsZWQ6IHdpdGggbm8gU0RLIHJlZ2lzdGVyZWQsIGBzdGFydEFjdGl2ZVNwYW5gIHJ1bnNcbiAqIHRoZSBjYWxsYmFjayB3aXRoIGEgbm8tb3Agc3Bhbiwgc28gdGhpcyBhZGRzIG5lZ2xpZ2libGUgb3ZlcmhlYWQgYW5kIG5ldmVyXG4gKiBjaGFuZ2VzIGJlaGF2aW9yLiBPbiB0aHJvdywgdGhlIHNwYW4gaXMgbWFya2VkIEVSUk9SIGFuZCB0aGUgZXhjZXB0aW9uXG4gKiByZWNvcmRlZCwgdGhlbiByZS10aHJvd24gdW5jaGFuZ2VkLiBBbHdheXMgZW5kcyB0aGUgc3Bhbi5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdpdGhTcGFuPFQ+KFxuICBuYW1lOiBzdHJpbmcsXG4gIGZuOiAoc3BhbjogU3BhbikgPT4gUHJvbWlzZTxUPixcbiAgYXR0cmlidXRlcz86IEF0dHJpYnV0ZXMsXG4pOiBQcm9taXNlPFQ+IHtcbiAgcmV0dXJuIHRyYWNlci5zdGFydEFjdGl2ZVNwYW4obmFtZSwgYXN5bmMgKHNwYW4pID0+IHtcbiAgICBpZiAoYXR0cmlidXRlcykgc3Bhbi5zZXRBdHRyaWJ1dGVzKGF0dHJpYnV0ZXMpO1xuICAgIHRyeSB7XG4gICAgICBjb25zdCByZXN1bHQgPSBhd2FpdCBmbihzcGFuKTtcbiAgICAgIHNwYW4uc2V0U3RhdHVzKHsgY29kZTogU3BhblN0YXR1c0NvZGUuT0sgfSk7XG4gICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgY29uc3QgZXJyb3IgPSBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyciA6IG5ldyBFcnJvcihTdHJpbmcoZXJyKSk7XG4gICAgICBzcGFuLnJlY29yZEV4Y2VwdGlvbihlcnJvcik7XG4gICAgICBzcGFuLnNldFN0YXR1cyh7IGNvZGU6IFNwYW5TdGF0dXNDb2RlLkVSUk9SLCBtZXNzYWdlOiBlcnJvci5tZXNzYWdlIH0pO1xuICAgICAgdGhyb3cgZXJyO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBzcGFuLmVuZCgpO1xuICAgIH1cbiAgfSk7XG59XG5cbi8vIE1vZHVsZS1sb2NhbCBTREsgaGFuZGxlLiBQcm9kdWN0aW9uIHNlcnZpY2VzIHN0YXJ0IHRyYWNpbmcgdGhyb3VnaCB0aGVcbi8vIGBvdGVsLWJvb3RzdHJhcC5qc2AgYC0taW1wb3J0YCBwcmVsb2FkLCB3aGljaCByZWdpc3RlcnMgaXRzIG93biBTREsgb24gdGhlXG4vLyBnbG9iYWwgcHJvdmlkZXIg4oCUIHNvIHRoaXMgc3RheXMgbnVsbCBhbmQgYHNodXRkb3duVHJhY2luZygpYCBpcyBhIG5vLW9wLlxuLy8gSXQgaXMgcmV0YWluZWQgYmVjYXVzZSBgc2VydmVyLnRzYCBjYWxscyBgc2h1dGRvd25UcmFjaW5nKClgIG9uIHNodXRkb3duLlxubGV0IHNkazogTm9kZVNESyB8IG51bGwgPSBudWxsO1xuXG4vKipcbiAqIFNodXRkb3duIHRoZSBPcGVuVGVsZW1ldHJ5IFNESyBncmFjZWZ1bGx5LlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gc2h1dGRvd25UcmFjaW5nKCk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoc2RrKSB7XG4gICAgYXdhaXQgc2RrLnNodXRkb3duKCk7XG4gICAgc2RrID0gbnVsbDtcbiAgICBsb2dnZXIuaW5mbygnT3BlblRlbGVtZXRyeSB0cmFjaW5nIHNodXQgZG93bicpO1xuICB9XG59XG5cbi8qKlxuICogUmV0dXJucyB0aGUgY3VycmVudCBhY3RpdmUgdHJhY2UgSUQsIG9yIHVuZGVmaW5lZCB3aGVuIHRyYWNpbmcgaXNcbiAqIGRpc2FibGVkIC8gbm8gYWN0aXZlIHNwYW4uIFVzZWZ1bCBmb3IgZW5yaWNoaW5nIHN0cnVjdHVyZWQgbG9ncyBzbyBhblxuICogb3BlcmF0b3IgY2FuIGNvcnJlbGF0ZSBhIHJlcXVlc3QgYWNyb3NzIHNlcnZpY2VzIHZpYSBpdHMgdHJhY2UgSUQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjdXJyZW50VHJhY2VJZCgpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAvLyBSZWFkIHRoZSBnbG9iYWxseS1yZWdpc3RlcmVkIHRyYWNlciBwcm92aWRlcidzIGFjdGl2ZSBzcGFuLiBUaGUgU0RLIGlzXG4gIC8vIHN0YXJ0ZWQgYnkgdGhlIGBvdGVsLWJvb3RzdHJhcC5qc2AgYC0taW1wb3J0YCBwcmVsb2FkLCB3aGljaCByZWdpc3RlcnMgdGhlXG4gIC8vIGdsb2JhbCBwcm92aWRlciB2aWEgQG9wZW50ZWxlbWV0cnkvYXBpLiBSZXR1cm5zIHVuZGVmaW5lZCB3aGVuIHRyYWNpbmcgaXNcbiAgLy8gZGlzYWJsZWQgLyB0aGVyZSBpcyBubyBhY3RpdmUgc3Bhbi5cbiAgcmV0dXJuIHRyYWNlLmdldEFjdGl2ZVNwYW4oKT8uc3BhbkNvbnRleHQoKT8udHJhY2VJZDtcbn1cbiJdfQ==
@@ -214,4 +214,4 @@ export function recordWriteForPin(scope) {
214
214
  return;
215
215
  void getWritePinStore().pin(scope.orgId);
216
216
  }
217
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtcGluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FwaS93cml0ZS1waW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0NBQStDO0FBQy9DLHNDQUFzQztBQUV0Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlERztBQUVILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxZQUFZLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBTXBKLE1BQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUV6Qzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxVQUFVLEdBQUcsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLCtCQUErQixFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBRXJFLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBYSxFQUFFLEVBQUUsQ0FBQyxVQUFVLEtBQUssRUFBRSxDQUFDO0FBOEJqRCxrRkFBa0Y7QUFDbEYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFrQjtJQUN6QyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUM7SUFDdEMsR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7Q0FDN0IsQ0FBQztBQUVGLElBQUksS0FBZ0MsQ0FBQztBQUVyQyxnRkFBZ0Y7QUFDaEYsTUFBTSxVQUFVLGdCQUFnQixDQUFDLElBQStCO0lBQzlELEtBQUssR0FBRyxJQUFJLENBQUM7QUFDZixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLGdCQUFnQjtJQUM5QixJQUFJLENBQUMsS0FBSztRQUFFLEtBQUssR0FBRywyQkFBMkIsRUFBRSxDQUFDO0lBQ2xELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELE1BQU0s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Q29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vKipcbiAqIFRoZSBjcm9zcy1yZXF1ZXN0IHdyaXRlIHBpbiDigJQgcmVhZC1hZnRlci13cml0ZSBmb3IgYSB1c2VyJ3MgTkVYVCByZXF1ZXN0LlxuICpcbiAqIFRIRSBQUk9CTEVNIFRISVMgU09MVkVTLCB3aGljaCBpcyB0aGUgY29tbW9uIGNhc2UgYW5kIG5vdCBhbiBlZGdlIGNhc2U6XG4gKiBgUE9TVCAvcGlwZWxpbmVzYCByZXR1cm5zLCB0aGUgcGFnZSByZWxvYWRzLCBgR0VUIC9waXBlbGluZXNgIHJ1bnMuIFRoYXQgR0VUXG4gKiBpcyBhIGRpZmZlcmVudCByZXF1ZXN0IHdpdGggbm8gbWVtb3J5IG9mIHRoZSBQT1NULCBzbyB3aXRob3V0IHNvbWV0aGluZ1xuICogY2FycmllZCBiZXR3ZWVuIHRoZW0gaXQgcm91dGVzIHRvIGEgcmVwbGljYSB0aGF0IG1heSBub3QgaGF2ZSByZXBsYXllZCB0aGVcbiAqIGNvbW1pdCwgYW5kIHRoZSBwaXBlbGluZSB0aGUgdXNlciBqdXN0IGNyZWF0ZWQgaXMgc2ltcGx5IG1pc3NpbmcuIE5vIGVycm9yLFxuICogbm8gcmV0cnksIGFuZCBub3QgcmVwcm9kdWNpYmxlIG9uIGRlbWFuZC5cbiAqXG4gKiBgdGVuYW5jeS50c2AgYWxyZWFkeSBzb2x2ZXMgdGhlIFdJVEhJTi1hLXJlcXVlc3QgaGFsZjogYHdpdGhUZW5hbnRUeGAgc2V0c1xuICogYG1heUhhdmVXcml0dGVuYCBvbiB0aGUgcmVxdWVzdCdzIHRlbmFudCBjb250ZXh0LCBhbmQgdGhlIHJlYWQgaGVscGVyIGtlZXBzXG4gKiB0aGF0IHJlcXVlc3Qgb24gdGhlIHByaW1hcnkgYWZ0ZXJ3YXJkcy4gVGhpcyBtb2R1bGUgZXh0ZW5kcyB0aGUgc2FtZSBmbGFnXG4gKiBBQ1JPU1MgcmVxdWVzdHMgYnkgcmVtZW1iZXJpbmcsIGluIFJlZGlzLCB0aGF0IGFuIG9yZyB3cm90ZSByZWNlbnRseSDigJQgYW5kIGl0XG4gKiBzZXRzIHRoZSB2ZXJ5IHNhbWUgYG1heUhhdmVXcml0dGVuYCBmbGFnLCBzbyB0aGVyZSBpcyBvbmUgbWVjaGFuaXNtIGFuZCBvbmVcbiAqIGNvZGUgcGF0aCwgbm90IHR3by5cbiAqXG4gKiBXSFkgUkVESVMgQU5EIE5PVCBBTiBMU04uIFRoZSBhbHRlcm5hdGl2ZSBpcyBleGFjdDogY2FwdHVyZVxuICogYHBnX2N1cnJlbnRfd2FsX2xzbigpYCBhdCBjb21taXQsIGNhcnJ5IGl0IHdpdGggdGhlIGNsaWVudCwgYW5kIGhhdmUgdGhlIHJlYWRcbiAqIHBhdGggd2FpdCBmb3IgdGhlIHN0YW5kYnkgdG8gcmVwbGF5IGF0IGxlYXN0IHRoYXQgZmFyLiBJdCB3YXMgcmVqZWN0ZWQgZm9yXG4gKiByZWFzb25zIHRoYXQgYXJlIGFib3V0IHRoaXMgc3lzdGVtIHJhdGhlciB0aGFuIGFib3V0IGVsZWdhbmNlOlxuICpcbiAqICAgMS4gU2hhcmVkIHN0YXRlIGlzIG1hbmRhdG9yeSBhbnl3YXkg4oCUIHRoZSBhcHAgdGllciBpcyAyIHJlcGxpY2FzIHdpZGUgb25cbiAqICAgICAgZWtzLCBzbyBhbiBpbi1wcm9jZXNzIG1hcCBtaXNzZXMgZXZlcnkgcmVxdWVzdCB0aGF0IGxhbmRzIG9uIHRoZSBvdGhlclxuICogICAgICBwb2QuIExTTiB0cmFja2luZyBhdm9pZHMgc2hhcmVkIHN0YXRlIG9ubHkgYnkgY2FycnlpbmcgdGhlIHZhbHVlIG9uIHRoZVxuICogICAgICBDTElFTlQsIGFuZCB0aGlzIHByb2R1Y3QncyBvd24gcGl0Y2ggaXMgZml2ZSB3YXlzIGluIChkYXNoYm9hcmQsIENMSSxcbiAqICAgICAgUkVTVCwgQ0RLLCBBSSkuIEEgQ0xJIG9yIENESyBjYWxsZXIgd2lsbCBub3QgZWNobyBhbiBMU04gYmFjaywgc28gdGhhdFxuICogICAgICBhcHByb2FjaCBkZWdyYWRlcyB0byBcInByaW1hcnkgZm9yIGV2ZXJ5IG5vbi1icm93c2VyIGNsaWVudFwiIG9yIG5lZWRzXG4gKiAgICAgIHNlcnZlci1zaWRlIHN0b3JhZ2Ug4oCUIHdoaWNoIGlzIHRoaXMsIHdpdGggZXh0cmEgc3RlcHMuXG4gKiAgIDIuIEEgY2xpZW50LXN1cHBsaWVkIExTTiBpcyBhdHRhY2tlci1jb250cm9sbGVkIGlucHV0LCBhbmQgYW4gdW5ib3VuZGVkXG4gKiAgICAgIHdhaXQgb24gYSByZXBsaWNhIHRoYXQgbmV2ZXIgY2F0Y2hlcyB1cCB0dXJucyBhIGJvZ3VzIHZhbHVlIGludG8gYSBoYW5nLlxuICogICAgICBUaGF0IGlzIGEgZGVuaWFsIG9mIHNlcnZpY2Ugd2VhcmluZyBhIGNvcnJlY3RuZXNzIGNvc3R1bWUsIGFuZCBib3VuZGluZ1xuICogICAgICBpdCBjb3JyZWN0bHkgaXMgYSBzZWNvbmQgc2VjdXJpdHkgc3VyZmFjZSB0byBnZXQgcmlnaHQuXG4gKlxuICogVGhlIHBpbiBpcyBDT0FSU0UgYW5kIHRoYXQgaXMgdGhlIGFjY2VwdGVkIHRyYWRlOiBpdCBpcyBrZXllZCBwZXIgT1JHLCBub3RcbiAqIHBlciB1c2VyLCBiZWNhdXNlIGEgdXNlciBtYXkgcmVhZCB0aHJvdWdoIGEgZGlmZmVyZW50IHNlc3Npb24gdGhhbiB0aGUgb25lXG4gKiB0aGF0IHdyb3RlLiBTbyBvbmUgbWVtYmVyJ3Mgd3JpdGUgYnJpZWZseSBzZW5kcyB0aGUgd2hvbGUgb3JnJ3MgcmVhZHMgdG8gdGhlXG4gKiBwcmltYXJ5LiBUaGF0IGNhbiBvbmx5IHJlbW92ZSBhIGJlbmVmaXQsIG5ldmVyIGludHJvZHVjZSBhIHJlZ3Jlc3Npb24g4oCUXG4gKiByZWFkaW5nIGZyb20gdGhlIHByaW1hcnkgaXMgZXhhY3RseSB3aGF0IGhhcHBlbnMgdG9kYXkuXG4gKlxuICogRkFJTCBDTE9TRUQuIE5vIFJlZGlzIGNvbmZpZ3VyZWQsIGFuIHVucmVhY2hhYmxlIFJlZGlzLCBvciBhIGZhaWxlZCByZWFkIGFsbFxuICogcmVzb2x2ZSB0byBcImFzc3VtZSB0aGlzIG9yZyB3cm90ZVwiLCB3aGljaCByb3V0ZXMgcmVhZHMgdG8gdGhlIHByaW1hcnkuIFRoYXRcbiAqIGlzIHRoZSBzYW1lIGZhaWwtY2xvc2VkLXdpdGhvdXQtUmVkaXMgcG9zdHVyZSB0aGUgbGVhZGVyIGxvY2sgdGFrZXMsIGFuZCBpdFxuICogaXMgdGhlIG9ubHkgc2FmZSBkaXJlY3Rpb246IGd1ZXNzaW5nIFwibm8gcmVjZW50IHdyaXRlXCIgd2hlbiB0aGUgYW5zd2VyIGlzXG4gKiB1bmtub3duIGlzIGhvdyBhIHVzZXIgbG9zZXMgc2lnaHQgb2YgdGhlaXIgb3duIGRhdGEuXG4gKlxuICogQ09TVFMgTk9USElORyBVTlRJTCBSRUFELVNQTElUVElORyBJUyBPTi4gRXZlcnkgZW50cnkgcG9pbnQgc2hvcnQtY2lyY3VpdHNcbiAqIHdoZW4gbm8gcmVhZCByZXBsaWNhIGlzIGNvbmZpZ3VyZWQsIHNvIGEgZGVwbG95IHdpdGggYERCX1JFQURfSE9TVGAgdW5zZXQg4oCUXG4gKiB3aGljaCBpcyBob3cgYWxsIGZvdXIgdGFyZ2V0cyBzaGlwIOKAlCBuZXZlciB0b3VjaGVzIFJlZGlzIG9uIHRoZSByZXF1ZXN0IHBhdGguXG4gKi9cblxuaW1wb3J0IHsgY3JlYXRlRW52UmVkaXNDbGllbnQsIGNyZWF0ZUxvZ2dlciwgY3JlYXRlUmVkaXNSZWFkeUdhdGUsIGVtaXRDb3VudGVyLCBlbnZJbnQsIGlzUmVhZFJlcGxpY2FDb25maWd1cmVkIH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvYXBpLWNvcmUnO1xuLy8gVFlQRS1PTkxZLCBhbmQgdGhhdCBpcyBkZWxpYmVyYXRlOiBhIHR5cGUgaW1wb3J0IGlzIGVyYXNlZCBhdCBjb21waWxlIHRpbWUsIHNvXG4vLyBpdCBuZXZlciB0b3VjaGVzIHBpcGVsaW5lLWRhdGEncyBgc3R1Yk1vZHVsZWAgYXQgcnVudGltZS4gQSBWQUxVRSBpbXBvcnQgaGVyZVxuLy8gdHVybmVkIGFsbCA5MSBzdWl0ZXMgdGhhdCBzdHViIHRoYXQgcGFja2FnZSBpbnRvIGEgNTAwLlxuaW1wb3J0IHR5cGUgeyBUZW5hbnRDb250ZXh0IH0gZnJvbSAnQHBpcGVsaW5lLWJ1aWxkZXIvcGlwZWxpbmUtZGF0YSc7XG5cbmNvbnN0IGxvZ2dlciA9IGNyZWF0ZUxvZ2dlcignd3JpdGUtcGluJyk7XG5cbi8qKlxuICogSG93IGxvbmcgYSB3cml0ZSBrZWVwcyBpdHMgb3JnIG9uIHRoZSBwcmltYXJ5LlxuICpcbiAqIFNob3VsZCBzaXQgY29tZm9ydGFibHkgYWJvdmUgb2JzZXJ2ZWQgcDk5IHJlcGxpY2F0aW9uIGxhZy4gVGVuIHNlY29uZHMgaXNcbiAqIGRlbGliZXJhdGVseSBnZW5lcm91cyBmb3IgYSBkZWZhdWx0OiB0b28gc2hvcnQgc2lsZW50bHkgcmVpbnRyb2R1Y2VzIHRoZVxuICogbWlzc2luZy1yb3cgYnVnLCB3aGlsZSB0b28gbG9uZyBvbmx5IGNvc3RzIG9mZmxvYWQuIFRoZSBhc3ltbWV0cnkgc2F5cyB3aGljaFxuICogd2F5IHRvIGVyci5cbiAqL1xuY29uc3QgdHRsU2Vjb25kcyA9ICgpID0+IGVudkludCgnREJfUkVBRF9XUklURV9QSU5fVFRMX1NFQ09ORFMnLCAxMCk7XG5cbmNvbnN0IGtleSA9IChvcmdJZDogc3RyaW5nKSA9PiBgcnctcGluOiR7b3JnSWR9YDtcblxuLyoqXG4gKiBUaGUgdHdvIGlvcmVkaXMgY2FsbHMgdGhpcyBuZWVkcywgcGx1cyB0aGUgdGhyZWUgbWVtYmVyc1xuICogYGNyZWF0ZVJlZGlzUmVhZHlHYXRlYCByZWFkcy5cbiAqXG4gKiBEZWNsYXJlZCBzdHJ1Y3R1cmFsbHkgcmF0aGVyIHRoYW4gYnkgZXh0ZW5kaW5nIGFwaS1jb3JlJ3MgYFJlYWR5QXdhcmVSZWRpc2AsXG4gKiB3aGljaCBpcyBpbnRlcm5hbCB0byB0aGF0IHBhY2thZ2UgYW5kIG5vdCBwYXJ0IG9mIGl0cyBwdWJsaWMgc3VyZmFjZS4gVGhlXG4gKiByZWFkaW5lc3MgZ2F0ZSBpcyBub3Qgb3B0aW9uYWw6IHRoZSBlbnYgY2xpZW50IGhhcyBubyBvZmZsaW5lIHF1ZXVlLCBzbyBhXG4gKiBjb21tYW5kIGlzc3VlZCBiZWZvcmUgdGhlIGZpcnN0IGNvbm5lY3Rpb24gY29tcGxldGVzIGlzIHJlamVjdGVkIG91dHJpZ2h0IOKAlFxuICogd2hpY2ggd291bGQgbWFrZSB0aGUgRklSU1QgcmVhZCBvZiBldmVyeSBwb2QgZmFpbCBjbG9zZWQgdG8gdGhlIHByaW1hcnkuXG4gKi9cbmludGVyZmFjZSBQaW5SZWRpcyB7XG4gIGV4aXN0cyhrZXk6IHN0cmluZyk6IFByb21pc2U8bnVtYmVyPjtcbiAgc2V0KGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nLCBtb2RlOiAnRVgnLCB0dGw6IG51bWJlcik6IFByb21pc2U8dW5rbm93bj47XG4gIHN0YXR1cz86IHN0cmluZztcbiAgb25jZT8oZXZlbnQ6IHN0cmluZywgY2I6ICguLi5hcmdzOiB1bmtub3duW10pID0+IHZvaWQpOiB1bmtub3duO1xuICBvZmY/KGV2ZW50OiBzdHJpbmcsIGNiOiAoLi4uYXJnczogdW5rbm93bltdKSA9PiB2b2lkKTogdW5rbm93bjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBXcml0ZVBpblN0b3JlIHtcbiAgLyoqXG4gICAqIEhhcyB0aGlzIG9yZyB3cml0dGVuIHJlY2VudGx5PyBSZXR1cm5zIFRSVUUgd2hlbiB0aGUgYW5zd2VyIGlzIHVua25vd25cbiAgICogKG5vIFJlZGlzLCB1bnJlYWNoYWJsZSwgcmVhZCBmYWlsZWQpIOKAlCBzZWUgRkFJTCBDTE9TRUQgYWJvdmUuXG4gICAqL1xuICBpc1Bpbm5lZChvcmdJZDogc3RyaW5nIHwgdW5kZWZpbmVkKTogUHJvbWlzZTxib29sZWFuPjtcbiAgLyoqIFJlY29yZCB0aGF0IHRoaXMgb3JnIGp1c3Qgd3JvdGUuIE5ldmVyIHRocm93cy4gKi9cbiAgcGluKG9yZ0lkOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKiogQSBzdG9yZSB0aGF0IHJlcG9ydHMgbm90aGluZyBwaW5uZWQg4oCUIGZvciB0ZXN0cyBhbmQgZm9yIHNpbmdsZS1wcm9jZXNzIHVzZS4gKi9cbmV4cG9ydCBjb25zdCBOT19XUklURV9QSU46IFdyaXRlUGluU3RvcmUgPSB7XG4gIGlzUGlubmVkOiAoKSA9PiBQcm9taXNlLnJlc29sdmUoZmFsc2UpLFxuICBwaW46ICgpID0+IFByb21pc2UucmVzb2x2ZSgpLFxufTtcblxubGV0IHN0b3JlOiBXcml0ZVBpblN0b3JlIHwgdW5kZWZpbmVkO1xuXG4vKiogUmVwbGFjZSB0aGUgc3RvcmUuIEZvciB0ZXN0cywgYW5kIGZvciBhIHNlcnZpY2UgdGhhdCBvd25zIGl0cyBvd24gY2xpZW50LiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHNldFdyaXRlUGluU3RvcmUobmV4dDogV3JpdGVQaW5TdG9yZSB8IHVuZGVmaW5lZCk6IHZvaWQge1xuICBzdG9yZSA9IG5leHQ7XG59XG5cbi8qKlxuICogVGhlIHByb2Nlc3Mtd2lkZSBzdG9yZSwgYnVpbHQgb24gZmlyc3QgdXNlIGZyb20gYFJFRElTX1VSTGAgL1xuICogYFJFRElTX1NFTlRJTkVMU2AgZXhhY3RseSBsaWtlIHRoZSBvdGhlciBlbnYtUmVkaXMgY29uc3VtZXJzIGhlcmUuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRXcml0ZVBpblN0b3JlKCk6IFdyaXRlUGluU3RvcmUge1xuICBpZiAoIXN0b3JlKSBzdG9yZSA9IGNyZWF0ZUVudlJlZGlzV3JpdGVQaW5TdG9yZSgpO1xuICByZXR1cm4gc3RvcmU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVFbnZSZWRpc1dyaXRlUGluU3RvcmUoKTogV3JpdGVQaW5TdG9yZSB7XG4gIC8vIHVuZGVmaW5lZCA9IG5vdCB5ZXQgYXR0ZW1wdGVkOyBudWxsID0gYXR0ZW1wdGVkIGFuZCB1bmF2YWlsYWJsZS5cbiAgbGV0IGNhY2hlZDogUGluUmVkaXMgfCBudWxsIHwgdW5kZWZpbmVkO1xuICBsZXQgcmVhZHk6ICgoKSA9PiBQcm9taXNlPHZvaWQ+KSB8IHVuZGVmaW5lZDtcbiAgbGV0IHdhcm5lZCA9IGZhbHNlO1xuXG4gIGFzeW5jIGZ1bmN0aW9uIGNsaWVudCgpOiBQcm9taXNlPFBpblJlZGlzIHwgbnVsbD4ge1xuICAgIGlmIChjYWNoZWQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgY2FjaGVkID0gY3JlYXRlRW52UmVkaXNDbGllbnQ8UGluUmVkaXM+KCd3cml0ZS1waW4nKTtcbiAgICAgIGlmIChjYWNoZWQpIHtcbiAgICAgICAgbG9nZ2VyLmluZm8oJ1JlZGlzIHdyaXRlLXBpbiBzdG9yZSBpbml0aWFsaXplZCcsIHsgdHRsU2Vjb25kczogdHRsU2Vjb25kcygpIH0pO1xuICAgICAgICByZWFkeSA9IGNyZWF0ZVJlZGlzUmVhZHlHYXRlKGNhY2hlZCk7XG4gICAgICB9IGVsc2UgaWYgKCF3YXJuZWQpIHtcbiAgICAgICAgd2FybmVkID0gdHJ1ZTtcbiAgICAgICAgLy8gT25seSB3b3J0aCBzYXlpbmcgd2hlbiBhIHJlcGxpY2EgYWN0dWFsbHkgZXhpc3RzOiB3aXRob3V0IG9uZSBldmVyeVxuICAgICAgICAvLyByZWFkIGdvZXMgdG8gdGhlIHByaW1hcnkgcmVnYXJkbGVzcyBhbmQgdGhlIHBpbiBpcyBpcnJlbGV2YW50LlxuICAgICAgICBsb2dnZXIud2FybignTm8gUmVkaXMgY29uZmlndXJlZCBmb3IgdGhlIHJlYWQtYWZ0ZXItd3JpdGUgcGluOyBldmVyeSByZWFkIHdpbGwgdXNlIHRoZSBwcmltYXJ5Jyk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChyZWFkeSkgYXdhaXQgcmVhZHkoKTtcbiAgICByZXR1cm4gY2FjaGVkO1xuICB9XG5cbiAgcmV0dXJuIHtcbiAgICBhc3luYyBpc1Bpbm5lZChvcmdJZDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgICBpZiAoIW9yZ0lkKSByZXR1cm4gdHJ1ZTsgLy8gbm8gb3JnIHRvIGtleSBvbiAtPiBhc3N1bWUgd3JpdHRlblxuICAgICAgdHJ5IHtcbiAgICAgICAgY29uc3QgcmVkaXMgPSBhd2FpdCBjbGllbnQoKTtcbiAgICAgICAgaWYgKCFyZWRpcykgcmV0dXJuIHRydWU7IC8vIGZhaWwgY2xvc2VkXG4gICAgICAgIHJldHVybiAoYXdhaXQgcmVkaXMuZXhpc3RzKGtleShvcmdJZCkpKSA9PT0gMTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAvLyBDb3VudGVkIHVuZGVyIHRoZSBzYW1lIG1ldHJpYyB3aXRoIGEgZGlmZmVyZW50IGBvcGA6IHRoaXMgaGFsZiBpc1xuICAgICAgICAvLyBTQUZFIChpdCBmYWlscyBjbG9zZWQgdG8gdGhlIHByaW1hcnkpIGJ1dCBpdCBydW5zIG9uIGV2ZXJ5IHJlcXVlc3QsIHNvXG4gICAgICAgIC8vIGl0IGlzIHRoZSBoYWxmIHRoYXQgYWN0dWFsbHkgcmVwb3J0cyBSZWRpcyBoZWFsdGgg4oCUIGFuZCBhIGRlcGxveW1lbnRcbiAgICAgICAgLy8gc2lsZW50bHkgc2VydmluZyBldmVyeSByZWFkIGZyb20gdGhlIHByaW1hcnkgaGFzIGxvc3QgdGhlIHdob2xlXG4gICAgICAgIC8vIGJlbmVmaXQgb2YgdGhlIHJlcGxpY2EgaXQgaXMgcGF5aW5nIGZvci5cbiAgICAgICAgZW1pdENvdW50ZXIoJ3Bvc3RncmVzX3dyaXRlX3Bpbl9lcnJvcnNfdG90YWwnLCB7IG9wOiAnbG9va3VwJyB9KTtcbiAgICAgICAgbG9nZ2VyLndhcm4oJ1dyaXRlLXBpbiBsb29rdXAgZmFpbGVkOyByb3V0aW5nIHJlYWRzIHRvIHRoZSBwcmltYXJ5Jywge1xuICAgICAgICAgIGVycm9yOiBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogU3RyaW5nKGVyciksXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gdHJ1ZTsgLy8gZmFpbCBjbG9zZWRcbiAgICAgIH1cbiAgICB9LFxuXG4gICAgYXN5bmMgcGluKG9yZ0lkOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICAgIC8vIE5vdGhpbmcgdG8ga2V5IG9uLCBzbyBub3RoaW5nIHRvIHBpbi4gVGhlIHJlYWQgc2lkZSBmYWlscyBjbG9zZWQgZm9yXG4gICAgICAvLyB0aGUgc2FtZSBzY29wZSBhbnl3YXkuXG4gICAgICBpZiAoIW9yZ0lkKSByZXR1cm47XG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZWRpcyA9IGF3YWl0IGNsaWVudCgpO1xuICAgICAgICBpZiAoIXJlZGlzKSByZXR1cm47XG4gICAgICAgIGF3YWl0IHJlZGlzLnNldChrZXkob3JnSWQpLCAnMScsICdFWCcsIHR0bFNlY29uZHMoKSk7XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgLy8gQSBmYWlsZWQgcGluIGlzIHRoZSBkYW5nZXJvdXMgZGlyZWN0aW9uIOKAlCB0aGUgTkVYVCByZXF1ZXN0IG1heSByZWFkIGFcbiAgICAgICAgLy8gc3RhbGUgcmVwbGljYSBhbmQgdGhlIHVzZXIgbG9zZXMgc2lnaHQgb2YgdGhlaXIgb3duIHdyaXRlIOKAlCBidXQgdGhlcmVcbiAgICAgICAgLy8gaXMgbm90aGluZyB1c2VmdWwgdG8gZG8gYWJvdXQgaXQgaGVyZSwgYW5kIHRocm93aW5nIHdvdWxkIGZhaWwgYVxuICAgICAgICAvLyByZXF1ZXN0IHdob3NlIHdyaXRlIGFscmVhZHkgQ09NTUlUVEVELlxuICAgICAgICAvL1xuICAgICAgICAvLyBDb3VudGVkIHRocm91Z2ggYXBpLWNvcmUncyBgZW1pdENvdW50ZXJgIFNFQU0gcmF0aGVyIHRoYW4gYXBpLXNlcnZlcidzXG4gICAgICAgIC8vIG93biBgaW5jQ291bnRlcmAsIGFsdGhvdWdoIHRoaXMgZmlsZSBsaXZlcyBpbiBhcGktc2VydmVyLiBJbXBvcnRpbmdcbiAgICAgICAgLy8gYC4vbWV0cmljcy5qc2AgaGVyZSBwdXRzIGl0IGluIHRoZSBtb2R1bGUgZ3JhcGggb2YgZXZlcnkgc2VydmljZSdzXG4gICAgICAgIC8vIHJlcXVlc3QgcGF0aCwgYW5kIGl0IHJlYWRzIGBDb25maWcuZ2V0QW55KCdvYnNlcnZhYmlsaXR5JylgIGF0IG1vZHVsZVxuICAgICAgICAvLyBsb2FkIOKAlCB3aGljaCBicm9rZSBhcGkvbWVzc2FnZSdzIGluZGV4LXdpcmluZyBzdWl0ZSB3aXRoXG4gICAgICAgIC8vIGBDb25maWcuZ2V0QW55IGlzIG5vdCBhIGZ1bmN0aW9uYCB0aGUgbW9tZW50IHRoaXMgaW1wb3J0IHdhcyBhZGRlZC5cbiAgICAgICAgLy8gVGhlIHNlYW0gaXMgYSBuby1vcCB1bnRpbCBhcGktc2VydmVyJ3MgYXBwIGZhY3RvcnkgY2FsbHNcbiAgICAgICAgLy8gYHNldENvdW50ZXJFbWl0dGVyKGluY0NvdW50ZXIpYCBhdCBzdGFydHVwLCBzbyBwcm9kdWN0aW9uIGNvdW50cyBhbmRcbiAgICAgICAgLy8gbm90aGluZyBlbHNlIGhhcyB0byBsb2FkIHRoZSByZWdpc3RyeSB0byBkbyBpdC5cbiAgICAgICAgLy9cbiAgICAgICAgLy8gU28gaXQgaXMgY291bnRlZCBhcyB3ZWxsIGFzIGxvZ2dlZCwgYW5kIHRoZSBjb3VudGVyIGlzIHRoZSBwb2ludDogdGhlXG4gICAgICAgIC8vIHN5bXB0b20gaXMgYSByb3cgdGhhdCBpcyBicmllZmx5IG1pc3NpbmcsIHdoaWNoIG5vIGVycm9yIHJhdGUgYW5kIG5vXG4gICAgICAgIC8vIGxvZyBzZWFyY2ggd2lsbCBhdHRyaWJ1dGUgYmFjayB0byBoZXJlLiBgUG9zdGdyZXNXcml0ZVBpbkVycm9yc2AgaW5cbiAgICAgICAgLy8gdGhlIGRlcGxveSBhbGVydCBydWxlcyB3YXRjaGVzIGl0LiBUaGUgc2VyaWVzIGlzIGFic2VudCBvbiBldmVyeVxuICAgICAgICAvLyBkZXBsb3kgdGhhdCBoYXMgbm90IGVuYWJsZWQgcmVhZC1zcGxpdHRpbmcsIHdoaWNoIGlzIGNvcnJlY3Qg4oCUIHdpdGggbm9cbiAgICAgICAgLy8gcmVwbGljYSB0aGVyZSBpcyBub3RoaW5nIHRvIGJlIHN0YWxlLlxuICAgICAgICBlbWl0Q291bnRlcigncG9zdGdyZXNfd3JpdGVfcGluX2Vycm9yc190b3RhbCcsIHsgb3A6ICdzZXQnIH0pO1xuICAgICAgICBsb2dnZXIud2FybignRmFpbGVkIHRvIHNldCB0aGUgcmVhZC1hZnRlci13cml0ZSBwaW47IGEgc3Vic2VxdWVudCByZWFkIG1heSBoaXQgYSBzdGFsZSByZXBsaWNhJywge1xuICAgICAgICAgIG9yZ0lkLFxuICAgICAgICAgIGVycm9yOiBlcnIgaW5zdGFuY2VvZiBFcnJvciA/IGVyci5tZXNzYWdlIDogU3RyaW5nKGVyciksXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0sXG4gIH07XG59XG5cbi8qKlxuICogSXMgdGhlIHBpbiBpbiBwbGF5IGF0IGFsbD9cbiAqXG4gKiBGYWxzZSB3aGVuZXZlciBubyByZWFkIHJlcGxpY2EgaXMgY29uZmlndXJlZCDigJQgd2hpY2ggaXMgaG93IGFsbCBmb3VyIHRhcmdldHNcbiAqIHNoaXAuIFRoZSBtaWRkbGV3YXJlIHVzZXMgdGhpcyBhcyBhIGhhcmQgZ2F0ZSBzbyB0aGF0IHdpdGggbm8gcmVwbGljYSBpdCBkb2VzXG4gKiBub3QgcmVnaXN0ZXIgYSByZXNwb25zZSBsaXN0ZW5lciwgZG9lcyBub3QgdG91Y2ggUmVkaXMsIGFuZCBjYWxscyBgbmV4dCgpYFxuICogU1lOQ0hST05PVVNMWSwgZXhhY3RseSBhcyBpdCBkaWQgYmVmb3JlIGFueSBvZiB0aGlzIGV4aXN0ZWQuIE1ha2luZyB0aGVcbiAqIHJlcXVlc3QgcGF0aCBhc3luY2hyb25vdXMgZm9yIGEgZmVhdHVyZSBub2JvZHkgaGFzIGVuYWJsZWQgd291bGQgYmUgYVxuICogYmVoYXZpb3VyIGNoYW5nZSBwYWlkIGJ5IGV2ZXJ5IHJvdXRlIG9uIGV2ZXJ5IHRhcmdldC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlUGluQWN0aXZlKCk6IGJvb2xlYW4ge1xuICByZXR1cm4gaXNSZWFkUmVwbGljYUNvbmZpZ3VyZWQoKTtcbn1cblxuLyoqXG4gKiBCZWZvcmUgdGhlIHJlcXVlc3QgcnVuczogaWYgdGhpcyBvcmcgd3JvdGUgcmVjZW50bHksIHByZS1zZXQgdGhlIHNhbWVcbiAqIGBtYXlIYXZlV3JpdHRlbmAgZmxhZyBgd2l0aFRlbmFudFR4YCB3b3VsZCBoYXZlIHNldCwgc28gdGhlIHJlYWQgaGVscGVyIGtlZXBzXG4gKiB0aGUgcmVxdWVzdCBvbiB0aGUgcHJpbWFyeS5cbiAqXG4gKiBOby1vcHMgZW50aXJlbHkgd2hlbiBubyByZXBsaWNhIGlzIGNvbmZpZ3VyZWQg4oCUIHdoaWNoIGtlZXBzIFJlZGlzIG9mZiB0aGVcbiAqIHJlcXVlc3QgcGF0aCBmb3IgZXZlcnkgZGVwbG95IHRoYXQgaGFzIG5vdCBlbmFibGVkIHJlYWQtc3BsaXR0aW5nLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gYXBwbHlXcml0ZVBpbihzY29wZTogVGVuYW50Q29udGV4dCk6IFByb21pc2U8dm9pZD4ge1xuICBpZiAoIWlzUmVhZFJlcGxpY2FDb25maWd1cmVkKCkpIHJldHVybjtcbiAgaWYgKHNjb3BlLm1heUhhdmVXcml0dGVuKSByZXR1cm47IC8vIGFscmVhZHkga25vd24gdG8gaGF2ZSB3cml0dGVuXG4gIGlmIChhd2FpdCBnZXRXcml0ZVBpblN0b3JlKCkuaXNQaW5uZWQoc2NvcGUub3JnSWQpKSBzY29wZS5tYXlIYXZlV3JpdHRlbiA9IHRydWU7XG59XG5cbi8qKlxuICogQWZ0ZXIgdGhlIHJlc3BvbnNlOiBpZiBhbnl0aGluZyBpbiB0aGlzIHJlcXVlc3Qgb3BlbmVkIGEgcHJpbWFyeSB0cmFuc2FjdGlvbixcbiAqIHBpbiB0aGUgb3JnIHNvIGl0cyBuZXh0IHJlcXVlc3QgcmVhZHMgZnJvbSB0aGUgcHJpbWFyeSB0b28uXG4gKlxuICogUmVhZHMgYG1heUhhdmVXcml0dGVuYCByYXRoZXIgdGhhbiB0aGUgSFRUUCBtZXRob2Qgb24gcHVycG9zZS4gQSBQT1NUIHRoYXRcbiAqIG9ubHkgdmFsaWRhdGVzIGhhcyBub3RoaW5nIHRvIHBpbiBmb3IsIGFuZCDigJQgbW9yZSBpbXBvcnRhbnRseSDigJQgYSBHRVQgdGhhdFxuICogd3JpdGVzIChhIGxhenkgYmFja2ZpbGwsIGEgbGFzdC1zZWVuIHN0YW1wKSBhYnNvbHV0ZWx5IGRvZXMuIFRoZSBmbGFnIGZvbGxvd3NcbiAqIHdoYXQgYWN0dWFsbHkgdG91Y2hlZCB0aGUgcHJpbWFyeSwgd2hpY2ggdGhlIG1ldGhvZCBjYW5ub3QgdGVsbCB5b3UuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZWNvcmRXcml0ZUZvclBpbihzY29wZTogVGVuYW50Q29udGV4dCk6IHZvaWQge1xuICBpZiAoIWlzUmVhZFJlcGxpY2FDb25maWd1cmVkKCkpIHJldHVybjtcbiAgaWYgKCFzY29wZS5tYXlIYXZlV3JpdHRlbikgcmV0dXJuO1xuICB2b2lkIGdldFdyaXRlUGluU3RvcmUoKS5waW4oc2NvcGUub3JnSWQpO1xufVxuIl19
217
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3JpdGUtcGluLmpzIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpL3dyaXRlLXBpbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaURHO0FBRUgsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFNcEosTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBRXpDOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLFVBQVUsR0FBRyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsK0JBQStCLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFckUsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFhLEVBQUUsRUFBRSxDQUFDLFVBQVUsS0FBSyxFQUFFLENBQUM7QUE4QmpELGtGQUFrRjtBQUNsRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQWtCO0lBQ3pDLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUN0QyxHQUFHLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtDQUM3QixDQUFDO0FBRUYsSUFBSSxLQUFnQyxDQUFDO0FBRXJDLGdGQUFnRjtBQUNoRixNQUFNLFVBQVUsZ0JBQWdCLENBQUMsSUFBK0I7SUFDOUQsS0FBSyxHQUFHLElBQUksQ0FBQztBQUNmLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsZ0JBQWdCO0lBQzlCLElBQUksQ0FBQyxLQUFLO1FBQUUsS0FBSyxHQUFHLDJCQUEyQixFQUFFLENBQUM7SUFDbEQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsTUFBTSxVQUFVLDJCQUEyQjtJQUN6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O2dCQUNuRSx5RUFBeUU7Z0JBQ3pFLHdDQUF3QztnQkFDeEMsV0FBVyxDQUFDLGlDQUFpQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7Z0JBQzlELE1BQU0sQ0FBQyxJQUFJLENBQUMsbUZBQW1GLEVBQUU7b0JBQy9GLEtBQUs7b0JBQ0wsS0FBSyxFQUFFLEdBQUcsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUM7aUJBQ3hELENBQUMsQ0FBQztZQUNMLENBQUM7UUFDSCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRDs7Ozs7Ozs7O0dBU0c7QUFDSCxNQUFNLFVBQVUsY0FBYztJQUM1QixPQUFPLHVCQUF1QixFQUFFLENBQUM7QUFDbkMsQ0FBQztBQUVEOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLGFBQWEsQ0FBQyxLQUFvQjtJQUN0RCxJQUFJLENBQUMsdUJBQXVCLEVBQUU7UUFBRSxPQUFPO0lBQ3ZDLElBQUksS0FBSyxDQUFDLGNBQWM7UUFBRSxPQUFPLENBQUMsZ0NBQWdDO0lBQ2xFLElBQUksTUFBTSxnQkFBZ0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDO1FBQUUsS0FBSyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7QUFDbEYsQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsTUFBTSxVQUFVLGlCQUFpQixDQUFDLEtBQW9CO0lBQ3BELElBQUksQ0FBQyx1QkFBdUIsRUFBRTtRQUFFLE9BQU87SUFDdkMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjO1FBQUUsT0FBTztJQUNsQyxLQUFLLGdCQUFnQixFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMzQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8qKlxuICogVGhlIGNyb3NzLXJlcXVlc3Qgd3JpdGUgcGluIOKAlCByZWFkLWFmdGVyLXdyaXRlIGZvciBhIHVzZXIncyBORVhUIHJlcXVlc3QuXG4gKlxuICogVEhFIFBST0JMRU0gVEhJUyBTT0xWRVMsIHdoaWNoIGlzIHRoZSBjb21tb24gY2FzZSBhbmQgbm90IGFuIGVkZ2UgY2FzZTpcbiAqIGBQT1NUIC9waXBlbGluZXNgIHJldHVybnMsIHRoZSBwYWdlIHJlbG9hZHMsIGBHRVQgL3BpcGVsaW5lc2AgcnVucy4gVGhhdCBHRVRcbiAqIGlzIGEgZGlmZmVyZW50IHJlcXVlc3Qgd2l0aCBubyBtZW1vcnkgb2YgdGhlIFBPU1QsIHNvIHdpdGhvdXQgc29tZXRoaW5nXG4gKiBjYXJyaWVkIGJldHdlZW4gdGhlbSBpdCByb3V0ZXMgdG8gYSByZXBsaWNhIHRoYXQgbWF5IG5vdCBoYXZlIHJlcGxheWVkIHRoZVxuICogY29tbWl0LCBhbmQgdGhlIHBpcGVsaW5lIHRoZSB1c2VyIGp1c3QgY3JlYXRlZCBpcyBzaW1wbHkgbWlzc2luZy4gTm8gZXJyb3IsXG4gKiBubyByZXRyeSwgYW5kIG5vdCByZXByb2R1Y2libGUgb24gZGVtYW5kLlxuICpcbiAqIGB0ZW5hbmN5LnRzYCBhbHJlYWR5IHNvbHZlcyB0aGUgV0lUSElOLWEtcmVxdWVzdCBoYWxmOiBgd2l0aFRlbmFudFR4YCBzZXRzXG4gKiBgbWF5SGF2ZVdyaXR0ZW5gIG9uIHRoZSByZXF1ZXN0J3MgdGVuYW50IGNvbnRleHQsIGFuZCB0aGUgcmVhZCBoZWxwZXIga2VlcHNcbiAqIHRoYXQgcmVxdWVzdCBvbiB0aGUgcHJpbWFyeSBhZnRlcndhcmRzLiBUaGlzIG1vZHVsZSBleHRlbmRzIHRoZSBzYW1lIGZsYWdcbiAqIEFDUk9TUyByZXF1ZXN0cyBieSByZW1lbWJlcmluZywgaW4gUmVkaXMsIHRoYXQgYW4gb3JnIHdyb3RlIHJlY2VudGx5IOKAlCBhbmQgaXRcbiAqIHNldHMgdGhlIHZlcnkgc2FtZSBgbWF5SGF2ZVdyaXR0ZW5gIGZsYWcsIHNvIHRoZXJlIGlzIG9uZSBtZWNoYW5pc20gYW5kIG9uZVxuICogY29kZSBwYXRoLCBub3QgdHdvLlxuICpcbiAqIFdIWSBSRURJUyBBTkQgTk9UIEFOIExTTi4gVGhlIGFsdGVybmF0aXZlIGlzIGV4YWN0OiBjYXB0dXJlXG4gKiBgcGdfY3VycmVudF93YWxfbHNuKClgIGF0IGNvbW1pdCwgY2FycnkgaXQgd2l0aCB0aGUgY2xpZW50LCBhbmQgaGF2ZSB0aGUgcmVhZFxuICogcGF0aCB3YWl0IGZvciB0aGUgc3RhbmRieSB0byByZXBsYXkgYXQgbGVhc3QgdGhhdCBmYXIuIEl0IHdhcyByZWplY3RlZCBmb3JcbiAqIHJlYXNvbnMgdGhhdCBhcmUgYWJvdXQgdGhpcyBzeXN0ZW0gcmF0aGVyIHRoYW4gYWJvdXQgZWxlZ2FuY2U6XG4gKlxuICogICAxLiBTaGFyZWQgc3RhdGUgaXMgbWFuZGF0b3J5IGFueXdheSDigJQgdGhlIGFwcCB0aWVyIGlzIDIgcmVwbGljYXMgd2lkZSBvblxuICogICAgICBla3MsIHNvIGFuIGluLXByb2Nlc3MgbWFwIG1pc3NlcyBldmVyeSByZXF1ZXN0IHRoYXQgbGFuZHMgb24gdGhlIG90aGVyXG4gKiAgICAgIHBvZC4gTFNOIHRyYWNraW5nIGF2b2lkcyBzaGFyZWQgc3RhdGUgb25seSBieSBjYXJyeWluZyB0aGUgdmFsdWUgb24gdGhlXG4gKiAgICAgIENMSUVOVCwgYW5kIHRoaXMgcHJvZHVjdCdzIG93biBwaXRjaCBpcyBmaXZlIHdheXMgaW4gKGRhc2hib2FyZCwgQ0xJLFxuICogICAgICBSRVNULCBDREssIEFJKS4gQSBDTEkgb3IgQ0RLIGNhbGxlciB3aWxsIG5vdCBlY2hvIGFuIExTTiBiYWNrLCBzbyB0aGF0XG4gKiAgICAgIGFwcHJvYWNoIGRlZ3JhZGVzIHRvIFwicHJpbWFyeSBmb3IgZXZlcnkgbm9uLWJyb3dzZXIgY2xpZW50XCIgb3IgbmVlZHNcbiAqICAgICAgc2VydmVyLXNpZGUgc3RvcmFnZSDigJQgd2hpY2ggaXMgdGhpcywgd2l0aCBleHRyYSBzdGVwcy5cbiAqICAgMi4gQSBjbGllbnQtc3VwcGxpZWQgTFNOIGlzIGF0dGFja2VyLWNvbnRyb2xsZWQgaW5wdXQsIGFuZCBhbiB1bmJvdW5kZWRcbiAqICAgICAgd2FpdCBvbiBhIHJlcGxpY2EgdGhhdCBuZXZlciBjYXRjaGVzIHVwIHR1cm5zIGEgYm9ndXMgdmFsdWUgaW50byBhIGhhbmcuXG4gKiAgICAgIFRoYXQgaXMgYSBkZW5pYWwgb2Ygc2VydmljZSB3ZWFyaW5nIGEgY29ycmVjdG5lc3MgY29zdHVtZSwgYW5kIGJvdW5kaW5nXG4gKiAgICAgIGl0IGNvcnJlY3RseSBpcyBhIHNlY29uZCBzZWN1cml0eSBzdXJmYWNlIHRvIGdldCByaWdodC5cbiAqXG4gKiBUaGUgcGluIGlzIENPQVJTRSBhbmQgdGhhdCBpcyB0aGUgYWNjZXB0ZWQgdHJhZGU6IGl0IGlzIGtleWVkIHBlciBPUkcsIG5vdFxuICogcGVyIHVzZXIsIGJlY2F1c2UgYSB1c2VyIG1heSByZWFkIHRocm91Z2ggYSBkaWZmZXJlbnQgc2Vzc2lvbiB0aGFuIHRoZSBvbmVcbiAqIHRoYXQgd3JvdGUuIFNvIG9uZSBtZW1iZXIncyB3cml0ZSBicmllZmx5IHNlbmRzIHRoZSB3aG9sZSBvcmcncyByZWFkcyB0byB0aGVcbiAqIHByaW1hcnkuIFRoYXQgY2FuIG9ubHkgcmVtb3ZlIGEgYmVuZWZpdCwgbmV2ZXIgaW50cm9kdWNlIGEgcmVncmVzc2lvbiDigJRcbiAqIHJlYWRpbmcgZnJvbSB0aGUgcHJpbWFyeSBpcyBleGFjdGx5IHdoYXQgaGFwcGVucyB0b2RheS5cbiAqXG4gKiBGQUlMIENMT1NFRC4gTm8gUmVkaXMgY29uZmlndXJlZCwgYW4gdW5yZWFjaGFibGUgUmVkaXMsIG9yIGEgZmFpbGVkIHJlYWQgYWxsXG4gKiByZXNvbHZlIHRvIFwiYXNzdW1lIHRoaXMgb3JnIHdyb3RlXCIsIHdoaWNoIHJvdXRlcyByZWFkcyB0byB0aGUgcHJpbWFyeS4gVGhhdFxuICogaXMgdGhlIHNhbWUgZmFpbC1jbG9zZWQtd2l0aG91dC1SZWRpcyBwb3N0dXJlIHRoZSBsZWFkZXIgbG9jayB0YWtlcywgYW5kIGl0XG4gKiBpcyB0aGUgb25seSBzYWZlIGRpcmVjdGlvbjogZ3Vlc3NpbmcgXCJubyByZWNlbnQgd3JpdGVcIiB3aGVuIHRoZSBhbnN3ZXIgaXNcbiAqIHVua25vd24gaXMgaG93IGEgdXNlciBsb3NlcyBzaWdodCBvZiB0aGVpciBvd24gZGF0YS5cbiAqXG4gKiBDT1NUUyBOT1RISU5HIFVOVElMIFJFQUQtU1BMSVRUSU5HIElTIE9OLiBFdmVyeSBlbnRyeSBwb2ludCBzaG9ydC1jaXJjdWl0c1xuICogd2hlbiBubyByZWFkIHJlcGxpY2EgaXMgY29uZmlndXJlZCwgc28gYSBkZXBsb3kgd2l0aCBgREJfUkVBRF9IT1NUYCB1bnNldCDigJRcbiAqIHdoaWNoIGlzIGhvdyBhbGwgZm91ciB0YXJnZXRzIHNoaXAg4oCUIG5ldmVyIHRvdWNoZXMgUmVkaXMgb24gdGhlIHJlcXVlc3QgcGF0aC5cbiAqL1xuXG5pbXBvcnQgeyBjcmVhdGVFbnZSZWRpc0NsaWVudCwgY3JlYXRlTG9nZ2VyLCBjcmVhdGVSZWRpc1JlYWR5R2F0ZSwgZW1pdENvdW50ZXIsIGVudkludCwgaXNSZWFkUmVwbGljYUNvbmZpZ3VyZWQgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9hcGktY29yZSc7XG4vLyBUWVBFLU9OTFksIGFuZCB0aGF0IGlzIGRlbGliZXJhdGU6IGEgdHlwZSBpbXBvcnQgaXMgZXJhc2VkIGF0IGNvbXBpbGUgdGltZSwgc29cbi8vIGl0IG5ldmVyIHRvdWNoZXMgcGlwZWxpbmUtZGF0YSdzIGBzdHViTW9kdWxlYCBhdCBydW50aW1lLiBBIFZBTFVFIGltcG9ydCBoZXJlXG4vLyB0dXJuZWQgYWxsIDkxIHN1aXRlcyB0aGF0IHN0dWIgdGhhdCBwYWNrYWdlIGludG8gYSA1MDAuXG5pbXBvcnQgdHlwZSB7IFRlbmFudENvbnRleHQgfSBmcm9tICdAcGlwZWxpbmUtYnVpbGRlci9waXBlbGluZS1kYXRhJztcblxuY29uc3QgbG9nZ2VyID0gY3JlYXRlTG9nZ2VyKCd3cml0ZS1waW4nKTtcblxuLyoqXG4gKiBIb3cgbG9uZyBhIHdyaXRlIGtlZXBzIGl0cyBvcmcgb24gdGhlIHByaW1hcnkuXG4gKlxuICogU2hvdWxkIHNpdCBjb21mb3J0YWJseSBhYm92ZSBvYnNlcnZlZCBwOTkgcmVwbGljYXRpb24gbGFnLiBUZW4gc2Vjb25kcyBpc1xuICogZGVsaWJlcmF0ZWx5IGdlbmVyb3VzIGZvciBhIGRlZmF1bHQ6IHRvbyBzaG9ydCBzaWxlbnRseSByZWludHJvZHVjZXMgdGhlXG4gKiBtaXNzaW5nLXJvdyBidWcsIHdoaWxlIHRvbyBsb25nIG9ubHkgY29zdHMgb2ZmbG9hZC4gVGhlIGFzeW1tZXRyeSBzYXlzIHdoaWNoXG4gKiB3YXkgdG8gZXJyLlxuICovXG5jb25zdCB0dGxTZWNvbmRzID0gKCkgPT4gZW52SW50KCdEQl9SRUFEX1dSSVRFX1BJTl9UVExfU0VDT05EUycsIDEwKTtcblxuY29uc3Qga2V5ID0gKG9yZ0lkOiBzdHJpbmcpID0+IGBydy1waW46JHtvcmdJZH1gO1xuXG4vKipcbiAqIFRoZSB0d28gaW9yZWRpcyBjYWxscyB0aGlzIG5lZWRzLCBwbHVzIHRoZSB0aHJlZSBtZW1iZXJzXG4gKiBgY3JlYXRlUmVkaXNSZWFkeUdhdGVgIHJlYWRzLlxuICpcbiAqIERlY2xhcmVkIHN0cnVjdHVyYWxseSByYXRoZXIgdGhhbiBieSBleHRlbmRpbmcgYXBpLWNvcmUncyBgUmVhZHlBd2FyZVJlZGlzYCxcbiAqIHdoaWNoIGlzIGludGVybmFsIHRvIHRoYXQgcGFja2FnZSBhbmQgbm90IHBhcnQgb2YgaXRzIHB1YmxpYyBzdXJmYWNlLiBUaGVcbiAqIHJlYWRpbmVzcyBnYXRlIGlzIG5vdCBvcHRpb25hbDogdGhlIGVudiBjbGllbnQgaGFzIG5vIG9mZmxpbmUgcXVldWUsIHNvIGFcbiAqIGNvbW1hbmQgaXNzdWVkIGJlZm9yZSB0aGUgZmlyc3QgY29ubmVjdGlvbiBjb21wbGV0ZXMgaXMgcmVqZWN0ZWQgb3V0cmlnaHQg4oCUXG4gKiB3aGljaCB3b3VsZCBtYWtlIHRoZSBGSVJTVCByZWFkIG9mIGV2ZXJ5IHBvZCBmYWlsIGNsb3NlZCB0byB0aGUgcHJpbWFyeS5cbiAqL1xuaW50ZXJmYWNlIFBpblJlZGlzIHtcbiAgZXhpc3RzKGtleTogc3RyaW5nKTogUHJvbWlzZTxudW1iZXI+O1xuICBzZXQoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcsIG1vZGU6ICdFWCcsIHR0bDogbnVtYmVyKTogUHJvbWlzZTx1bmtub3duPjtcbiAgc3RhdHVzPzogc3RyaW5nO1xuICBvbmNlPyhldmVudDogc3RyaW5nLCBjYjogKC4uLmFyZ3M6IHVua25vd25bXSkgPT4gdm9pZCk6IHVua25vd247XG4gIG9mZj8oZXZlbnQ6IHN0cmluZywgY2I6ICguLi5hcmdzOiB1bmtub3duW10pID0+IHZvaWQpOiB1bmtub3duO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFdyaXRlUGluU3RvcmUge1xuICAvKipcbiAgICogSGFzIHRoaXMgb3JnIHdyaXR0ZW4gcmVjZW50bHk/IFJldHVybnMgVFJVRSB3aGVuIHRoZSBhbnN3ZXIgaXMgdW5rbm93blxuICAgKiAobm8gUmVkaXMsIHVucmVhY2hhYmxlLCByZWFkIGZhaWxlZCkg4oCUIHNlZSBGQUlMIENMT1NFRCBhYm92ZS5cbiAgICovXG4gIGlzUGlubmVkKG9yZ0lkOiBzdHJpbmcgfCB1bmRlZmluZWQpOiBQcm9taXNlPGJvb2xlYW4+O1xuICAvKiogUmVjb3JkIHRoYXQgdGhpcyBvcmcganVzdCB3cm90ZS4gTmV2ZXIgdGhyb3dzLiAqL1xuICBwaW4ob3JnSWQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKiBBIHN0b3JlIHRoYXQgcmVwb3J0cyBub3RoaW5nIHBpbm5lZCDigJQgZm9yIHRlc3RzIGFuZCBmb3Igc2luZ2xlLXByb2Nlc3MgdXNlLiAqL1xuZXhwb3J0IGNvbnN0IE5PX1dSSVRFX1BJTjogV3JpdGVQaW5TdG9yZSA9IHtcbiAgaXNQaW5uZWQ6ICgpID0+IFByb21pc2UucmVzb2x2ZShmYWxzZSksXG4gIHBpbjogKCkgPT4gUHJvbWlzZS5yZXNvbHZlKCksXG59O1xuXG5sZXQgc3RvcmU6IFdyaXRlUGluU3RvcmUgfCB1bmRlZmluZWQ7XG5cbi8qKiBSZXBsYWNlIHRoZSBzdG9yZS4gRm9yIHRlc3RzLCBhbmQgZm9yIGEgc2VydmljZSB0aGF0IG93bnMgaXRzIG93biBjbGllbnQuICovXG5leHBvcnQgZnVuY3Rpb24gc2V0V3JpdGVQaW5TdG9yZShuZXh0OiBXcml0ZVBpblN0b3JlIHwgdW5kZWZpbmVkKTogdm9pZCB7XG4gIHN0b3JlID0gbmV4dDtcbn1cblxuLyoqXG4gKiBUaGUgcHJvY2Vzcy13aWRlIHN0b3JlLCBidWlsdCBvbiBmaXJzdCB1c2UgZnJvbSBgUkVESVNfVVJMYCAvXG4gKiBgUkVESVNfU0VOVElORUxTYCBleGFjdGx5IGxpa2UgdGhlIG90aGVyIGVudi1SZWRpcyBjb25zdW1lcnMgaGVyZS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldFdyaXRlUGluU3RvcmUoKTogV3JpdGVQaW5TdG9yZSB7XG4gIGlmICghc3RvcmUpIHN0b3JlID0gY3JlYXRlRW52UmVkaXNXcml0ZVBpblN0b3JlKCk7XG4gIHJldHVybiBzdG9yZTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUVudlJlZGlzV3JpdGVQaW5TdG9yZSgpOiBXcml0ZVBpblN0b3JlIHtcbiAgLy8gdW5kZWZpbmVkID0gbm90IHlldCBhdHRlbXB0ZWQ7IG51bGwgPSBhdHRlbXB0ZWQgYW5kIHVuYXZhaWxhYmxlLlxuICBsZXQgY2FjaGVkOiBQaW5SZWRpcyB8IG51bGwgfCB1bmRlZmluZWQ7XG4gIGxldCByZWFkeTogKCgpID0+IFByb21pc2U8dm9pZD4pIHwgdW5kZWZpbmVkO1xuICBsZXQgd2FybmVkID0gZmFsc2U7XG5cbiAgYXN5bmMgZnVuY3Rpb24gY2xpZW50KCk6IFByb21pc2U8UGluUmVkaXMgfCBudWxsPiB7XG4gICAgaWYgKGNhY2hlZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjYWNoZWQgPSBjcmVhdGVFbnZSZWRpc0NsaWVudDxQaW5SZWRpcz4oJ3dyaXRlLXBpbicpO1xuICAgICAgaWYgKGNhY2hlZCkge1xuICAgICAgICBsb2dnZXIuaW5mbygnUmVkaXMgd3JpdGUtcGluIHN0b3JlIGluaXRpYWxpemVkJywgeyB0dGxTZWNvbmRzOiB0dGxTZWNvbmRzKCkgfSk7XG4gICAgICAgIHJlYWR5ID0gY3JlYXRlUmVkaXNSZWFkeUdhdGUoY2FjaGVkKTtcbiAgICAgIH0gZWxzZSBpZiAoIXdhcm5lZCkge1xuICAgICAgICB3YXJuZWQgPSB0cnVlO1xuICAgICAgICAvLyBPbmx5IHdvcnRoIHNheWluZyB3aGVuIGEgcmVwbGljYSBhY3R1YWxseSBleGlzdHM6IHdpdGhvdXQgb25lIGV2ZXJ5XG4gICAgICAgIC8vIHJlYWQgZ29lcyB0byB0aGUgcHJpbWFyeSByZWdhcmRsZXNzIGFuZCB0aGUgcGluIGlzIGlycmVsZXZhbnQuXG4gICAgICAgIGxvZ2dlci53YXJuKCdObyBSZWRpcyBjb25maWd1cmVkIGZvciB0aGUgcmVhZC1hZnRlci13cml0ZSBwaW47IGV2ZXJ5IHJlYWQgd2lsbCB1c2UgdGhlIHByaW1hcnknKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKHJlYWR5KSBhd2FpdCByZWFkeSgpO1xuICAgIHJldHVybiBjYWNoZWQ7XG4gIH1cblxuICByZXR1cm4ge1xuICAgIGFzeW5jIGlzUGlubmVkKG9yZ0lkOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICAgIGlmICghb3JnSWQpIHJldHVybiB0cnVlOyAvLyBubyBvcmcgdG8ga2V5IG9uIC0+IGFzc3VtZSB3cml0dGVuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCByZWRpcyA9IGF3YWl0IGNsaWVudCgpO1xuICAgICAgICBpZiAoIXJlZGlzKSByZXR1cm4gdHJ1ZTsgLy8gZmFpbCBjbG9zZWRcbiAgICAgICAgcmV0dXJuIChhd2FpdCByZWRpcy5leGlzdHMoa2V5KG9yZ0lkKSkpID09PSAxO1xuICAgICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICAgIC8vIENvdW50ZWQgdW5kZXIgdGhlIHNhbWUgbWV0cmljIHdpdGggYSBkaWZmZXJlbnQgYG9wYDogdGhpcyBoYWxmIGlzXG4gICAgICAgIC8vIFNBRkUgKGl0IGZhaWxzIGNsb3NlZCB0byB0aGUgcHJpbWFyeSkgYnV0IGl0IHJ1bnMgb24gZXZlcnkgcmVxdWVzdCwgc29cbiAgICAgICAgLy8gaXQgaXMgdGhlIGhhbGYgdGhhdCBhY3R1YWxseSByZXBvcnRzIFJlZGlzIGhlYWx0aCDigJQgYW5kIGEgZGVwbG95bWVudFxuICAgICAgICAvLyBzaWxlbnRseSBzZXJ2aW5nIGV2ZXJ5IHJlYWQgZnJvbSB0aGUgcHJpbWFyeSBoYXMgbG9zdCB0aGUgd2hvbGVcbiAgICAgICAgLy8gYmVuZWZpdCBvZiB0aGUgcmVwbGljYSBpdCBpcyBwYXlpbmcgZm9yLlxuICAgICAgICBlbWl0Q291bnRlcigncG9zdGdyZXNfd3JpdGVfcGluX2Vycm9yc190b3RhbCcsIHsgb3A6ICdsb29rdXAnIH0pO1xuICAgICAgICBsb2dnZXIud2FybignV3JpdGUtcGluIGxvb2t1cCBmYWlsZWQ7IHJvdXRpbmcgcmVhZHMgdG8gdGhlIHByaW1hcnknLCB7XG4gICAgICAgICAgZXJyb3I6IGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiBTdHJpbmcoZXJyKSxcbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiB0cnVlOyAvLyBmYWlsIGNsb3NlZFxuICAgICAgfVxuICAgIH0sXG5cbiAgICBhc3luYyBwaW4ob3JnSWQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgLy8gTm90aGluZyB0byBrZXkgb24sIHNvIG5vdGhpbmcgdG8gcGluLiBUaGUgcmVhZCBzaWRlIGZhaWxzIGNsb3NlZCBmb3JcbiAgICAgIC8vIHRoZSBzYW1lIHNjb3BlIGFueXdheS5cbiAgICAgIGlmICghb3JnSWQpIHJldHVybjtcbiAgICAgIHRyeSB7XG4gICAgICAgIGNvbnN0IHJlZGlzID0gYXdhaXQgY2xpZW50KCk7XG4gICAgICAgIGlmICghcmVkaXMpIHJldHVybjtcbiAgICAgICAgYXdhaXQgcmVkaXMuc2V0KGtleShvcmdJZCksICcxJywgJ0VYJywgdHRsU2Vjb25kcygpKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAvLyBBIGZhaWxlZCBwaW4gaXMgdGhlIGRhbmdlcm91cyBkaXJlY3Rpb24g4oCUIHRoZSBORVhUIHJlcXVlc3QgbWF5IHJlYWQgYVxuICAgICAgICAvLyBzdGFsZSByZXBsaWNhIGFuZCB0aGUgdXNlciBsb3NlcyBzaWdodCBvZiB0aGVpciBvd24gd3JpdGUg4oCUIGJ1dCB0aGVyZVxuICAgICAgICAvLyBpcyBub3RoaW5nIHVzZWZ1bCB0byBkbyBhYm91dCBpdCBoZXJlLCBhbmQgdGhyb3dpbmcgd291bGQgZmFpbCBhXG4gICAgICAgIC8vIHJlcXVlc3Qgd2hvc2Ugd3JpdGUgYWxyZWFkeSBDT01NSVRURUQuXG4gICAgICAgIC8vXG4gICAgICAgIC8vIENvdW50ZWQgdGhyb3VnaCBhcGktY29yZSdzIGBlbWl0Q291bnRlcmAgU0VBTSByYXRoZXIgdGhhbiBhcGktc2VydmVyJ3NcbiAgICAgICAgLy8gb3duIGBpbmNDb3VudGVyYCwgYWx0aG91Z2ggdGhpcyBmaWxlIGxpdmVzIGluIGFwaS1zZXJ2ZXIuIEltcG9ydGluZ1xuICAgICAgICAvLyBgLi9tZXRyaWNzLmpzYCBoZXJlIHB1dHMgaXQgaW4gdGhlIG1vZHVsZSBncmFwaCBvZiBldmVyeSBzZXJ2aWNlJ3NcbiAgICAgICAgLy8gcmVxdWVzdCBwYXRoLCBhbmQgaXQgcmVhZHMgYENvbmZpZy5nZXRBbnkoJ29ic2VydmFiaWxpdHknKWAgYXQgbW9kdWxlXG4gICAgICAgIC8vIGxvYWQg4oCUIHdoaWNoIGJyb2tlIGFwaS9tZXNzYWdlJ3MgaW5kZXgtd2lyaW5nIHN1aXRlIHdpdGhcbiAgICAgICAgLy8gYENvbmZpZy5nZXRBbnkgaXMgbm90IGEgZnVuY3Rpb25gIHRoZSBtb21lbnQgdGhpcyBpbXBvcnQgd2FzIGFkZGVkLlxuICAgICAgICAvLyBUaGUgc2VhbSBpcyBhIG5vLW9wIHVudGlsIGFwaS1zZXJ2ZXIncyBhcHAgZmFjdG9yeSBjYWxsc1xuICAgICAgICAvLyBgc2V0Q291bnRlckVtaXR0ZXIoaW5jQ291bnRlcilgIGF0IHN0YXJ0dXAsIHNvIHByb2R1Y3Rpb24gY291bnRzIGFuZFxuICAgICAgICAvLyBub3RoaW5nIGVsc2UgaGFzIHRvIGxvYWQgdGhlIHJlZ2lzdHJ5IHRvIGRvIGl0LlxuICAgICAgICAvL1xuICAgICAgICAvLyBTbyBpdCBpcyBjb3VudGVkIGFzIHdlbGwgYXMgbG9nZ2VkLCBhbmQgdGhlIGNvdW50ZXIgaXMgdGhlIHBvaW50OiB0aGVcbiAgICAgICAgLy8gc3ltcHRvbSBpcyBhIHJvdyB0aGF0IGlzIGJyaWVmbHkgbWlzc2luZywgd2hpY2ggbm8gZXJyb3IgcmF0ZSBhbmQgbm9cbiAgICAgICAgLy8gbG9nIHNlYXJjaCB3aWxsIGF0dHJpYnV0ZSBiYWNrIHRvIGhlcmUuIGBQb3N0Z3Jlc1dyaXRlUGluRXJyb3JzYCBpblxuICAgICAgICAvLyB0aGUgZGVwbG95IGFsZXJ0IHJ1bGVzIHdhdGNoZXMgaXQuIFRoZSBzZXJpZXMgaXMgYWJzZW50IG9uIGV2ZXJ5XG4gICAgICAgIC8vIGRlcGxveSB0aGF0IGhhcyBub3QgZW5hYmxlZCByZWFkLXNwbGl0dGluZywgd2hpY2ggaXMgY29ycmVjdCDigJQgd2l0aCBub1xuICAgICAgICAvLyByZXBsaWNhIHRoZXJlIGlzIG5vdGhpbmcgdG8gYmUgc3RhbGUuXG4gICAgICAgIGVtaXRDb3VudGVyKCdwb3N0Z3Jlc193cml0ZV9waW5fZXJyb3JzX3RvdGFsJywgeyBvcDogJ3NldCcgfSk7XG4gICAgICAgIGxvZ2dlci53YXJuKCdGYWlsZWQgdG8gc2V0IHRoZSByZWFkLWFmdGVyLXdyaXRlIHBpbjsgYSBzdWJzZXF1ZW50IHJlYWQgbWF5IGhpdCBhIHN0YWxlIHJlcGxpY2EnLCB7XG4gICAgICAgICAgb3JnSWQsXG4gICAgICAgICAgZXJyb3I6IGVyciBpbnN0YW5jZW9mIEVycm9yID8gZXJyLm1lc3NhZ2UgOiBTdHJpbmcoZXJyKSxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSxcbiAgfTtcbn1cblxuLyoqXG4gKiBJcyB0aGUgcGluIGluIHBsYXkgYXQgYWxsP1xuICpcbiAqIEZhbHNlIHdoZW5ldmVyIG5vIHJlYWQgcmVwbGljYSBpcyBjb25maWd1cmVkIOKAlCB3aGljaCBpcyBob3cgYWxsIGZvdXIgdGFyZ2V0c1xuICogc2hpcC4gVGhlIG1pZGRsZXdhcmUgdXNlcyB0aGlzIGFzIGEgaGFyZCBnYXRlIHNvIHRoYXQgd2l0aCBubyByZXBsaWNhIGl0IGRvZXNcbiAqIG5vdCByZWdpc3RlciBhIHJlc3BvbnNlIGxpc3RlbmVyLCBkb2VzIG5vdCB0b3VjaCBSZWRpcywgYW5kIGNhbGxzIGBuZXh0KClgXG4gKiBTWU5DSFJPTk9VU0xZLCBleGFjdGx5IGFzIGl0IGRpZCBiZWZvcmUgYW55IG9mIHRoaXMgZXhpc3RlZC4gTWFraW5nIHRoZVxuICogcmVxdWVzdCBwYXRoIGFzeW5jaHJvbm91cyBmb3IgYSBmZWF0dXJlIG5vYm9keSBoYXMgZW5hYmxlZCB3b3VsZCBiZSBhXG4gKiBiZWhhdmlvdXIgY2hhbmdlIHBhaWQgYnkgZXZlcnkgcm91dGUgb24gZXZlcnkgdGFyZ2V0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gd3JpdGVQaW5BY3RpdmUoKTogYm9vbGVhbiB7XG4gIHJldHVybiBpc1JlYWRSZXBsaWNhQ29uZmlndXJlZCgpO1xufVxuXG4vKipcbiAqIEJlZm9yZSB0aGUgcmVxdWVzdCBydW5zOiBpZiB0aGlzIG9yZyB3cm90ZSByZWNlbnRseSwgcHJlLXNldCB0aGUgc2FtZVxuICogYG1heUhhdmVXcml0dGVuYCBmbGFnIGB3aXRoVGVuYW50VHhgIHdvdWxkIGhhdmUgc2V0LCBzbyB0aGUgcmVhZCBoZWxwZXIga2VlcHNcbiAqIHRoZSByZXF1ZXN0IG9uIHRoZSBwcmltYXJ5LlxuICpcbiAqIE5vLW9wcyBlbnRpcmVseSB3aGVuIG5vIHJlcGxpY2EgaXMgY29uZmlndXJlZCDigJQgd2hpY2gga2VlcHMgUmVkaXMgb2ZmIHRoZVxuICogcmVxdWVzdCBwYXRoIGZvciBldmVyeSBkZXBsb3kgdGhhdCBoYXMgbm90IGVuYWJsZWQgcmVhZC1zcGxpdHRpbmcuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBhcHBseVdyaXRlUGluKHNjb3BlOiBUZW5hbnRDb250ZXh0KTogUHJvbWlzZTx2b2lkPiB7XG4gIGlmICghaXNSZWFkUmVwbGljYUNvbmZpZ3VyZWQoKSkgcmV0dXJuO1xuICBpZiAoc2NvcGUubWF5SGF2ZVdyaXR0ZW4pIHJldHVybjsgLy8gYWxyZWFkeSBrbm93biB0byBoYXZlIHdyaXR0ZW5cbiAgaWYgKGF3YWl0IGdldFdyaXRlUGluU3RvcmUoKS5pc1Bpbm5lZChzY29wZS5vcmdJZCkpIHNjb3BlLm1heUhhdmVXcml0dGVuID0gdHJ1ZTtcbn1cblxuLyoqXG4gKiBBZnRlciB0aGUgcmVzcG9uc2U6IGlmIGFueXRoaW5nIGluIHRoaXMgcmVxdWVzdCBvcGVuZWQgYSBwcmltYXJ5IHRyYW5zYWN0aW9uLFxuICogcGluIHRoZSBvcmcgc28gaXRzIG5leHQgcmVxdWVzdCByZWFkcyBmcm9tIHRoZSBwcmltYXJ5IHRvby5cbiAqXG4gKiBSZWFkcyBgbWF5SGF2ZVdyaXR0ZW5gIHJhdGhlciB0aGFuIHRoZSBIVFRQIG1ldGhvZCBvbiBwdXJwb3NlLiBBIFBPU1QgdGhhdFxuICogb25seSB2YWxpZGF0ZXMgaGFzIG5vdGhpbmcgdG8gcGluIGZvciwgYW5kIOKAlCBtb3JlIGltcG9ydGFudGx5IOKAlCBhIEdFVCB0aGF0XG4gKiB3cml0ZXMgKGEgbGF6eSBiYWNrZmlsbCwgYSBsYXN0LXNlZW4gc3RhbXApIGFic29sdXRlbHkgZG9lcy4gVGhlIGZsYWcgZm9sbG93c1xuICogd2hhdCBhY3R1YWxseSB0b3VjaGVkIHRoZSBwcmltYXJ5LCB3aGljaCB0aGUgbWV0aG9kIGNhbm5vdCB0ZWxsIHlvdS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlY29yZFdyaXRlRm9yUGluKHNjb3BlOiBUZW5hbnRDb250ZXh0KTogdm9pZCB7XG4gIGlmICghaXNSZWFkUmVwbGljYUNvbmZpZ3VyZWQoKSkgcmV0dXJuO1xuICBpZiAoIXNjb3BlLm1heUhhdmVXcml0dGVuKSByZXR1cm47XG4gIHZvaWQgZ2V0V3JpdGVQaW5TdG9yZSgpLnBpbihzY29wZS5vcmdJZCk7XG59XG4iXX0=
package/lib/http/index.js CHANGED
@@ -6,4 +6,4 @@ export { SSEManager, } from './sse-connection-manager.js';
6
6
  export * from './sse-ticket-channel.js';
7
7
  // The Redis SSE relay is wired by `createApp` (`relayFactory`); nothing outside
8
8
  // this package constructs one, so it stays off the public barrel.
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaHR0cC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwrQ0FBK0M7QUFDL0Msc0NBQXNDO0FBRXRDLDRFQUE0RTtBQUM1RSwwQ0FBMEM7QUFDMUMsT0FBTyxFQUNMLFVBQVUsR0FPWCxNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsZ0ZBQWdGO0FBQ2hGLGtFQUFrRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDI2IFBpcGVsaW5lIEJ1aWxkZXIgQ29udHJpYnV0b3JzXG4vLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuXG4vLyBgU1NFX1JFUVVFU1RfSURfUkVgIGlzIHRoZSBmb3JtYXQgZ3VhcmQgYGNyZWF0ZUFwcGAgYW5kIHRoZSBtYW5hZ2VyIGFwcGx5XG4vLyB0aGVtc2VsdmVzIOKAlCBjYWxsZXJzIG5ldmVyIHJlLXZhbGlkYXRlLlxuZXhwb3J0IHtcbiAgU1NFTWFuYWdlcixcbiAgdHlwZSBTU0VFdmVudFR5cGUsXG4gIHR5cGUgU1NFUGF5bG9hZCxcbiAgdHlwZSBTU0VDbGllbnQsXG4gIHR5cGUgU1NFTWFuYWdlck9wdGlvbnMsXG4gIHR5cGUgQ3JlYXRlVGlja2V0UmVzdWx0LFxuICB0eXBlIFNTRU1hbmFnZXJTdGF0cyxcbn0gZnJvbSAnLi9zc2UtY29ubmVjdGlvbi1tYW5hZ2VyLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc3NlLXRpY2tldC1jaGFubmVsLmpzJztcbi8vIFRoZSBSZWRpcyBTU0UgcmVsYXkgaXMgd2lyZWQgYnkgYGNyZWF0ZUFwcGAgKGByZWxheUZhY3RvcnlgKTsgbm90aGluZyBvdXRzaWRlXG4vLyB0aGlzIHBhY2thZ2UgY29uc3RydWN0cyBvbmUsIHNvIGl0IHN0YXlzIG9mZiB0aGUgcHVibGljIGJhcnJlbC5cbiJdfQ==
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9odHRwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUErQztBQUMvQyxzQ0FBc0M7QUFFdEMsNEVBQTRFO0FBQzVFLDBDQUEwQztBQUMxQyxPQUFPLEVBQ0wsVUFBVSxHQU9YLE1BQU0sNkJBQTZCLENBQUM7QUFDckMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxnRkFBZ0Y7QUFDaEYsa0VBQWtFIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjYgUGlwZWxpbmUgQnVpbGRlciBDb250cmlidXRvcnNcbi8vIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG5cbi8vIGBTU0VfUkVRVUVTVF9JRF9SRWAgaXMgdGhlIGZvcm1hdCBndWFyZCBgY3JlYXRlQXBwYCBhbmQgdGhlIG1hbmFnZXIgYXBwbHlcbi8vIHRoZW1zZWx2ZXMg4oCUIGNhbGxlcnMgbmV2ZXIgcmUtdmFsaWRhdGUuXG5leHBvcnQge1xuICBTU0VNYW5hZ2VyLFxuICB0eXBlIFNTRUV2ZW50VHlwZSxcbiAgdHlwZSBTU0VQYXlsb2FkLFxuICB0eXBlIFNTRUNsaWVudCxcbiAgdHlwZSBTU0VNYW5hZ2VyT3B0aW9ucyxcbiAgdHlwZSBDcmVhdGVUaWNrZXRSZXN1bHQsXG4gIHR5cGUgU1NFTWFuYWdlclN0YXRzLFxufSBmcm9tICcuL3NzZS1jb25uZWN0aW9uLW1hbmFnZXIuanMnO1xuZXhwb3J0ICogZnJvbSAnLi9zc2UtdGlja2V0LWNoYW5uZWwuanMnO1xuLy8gVGhlIFJlZGlzIFNTRSByZWxheSBpcyB3aXJlZCBieSBgY3JlYXRlQXBwYCAoYHJlbGF5RmFjdG9yeWApOyBub3RoaW5nIG91dHNpZGVcbi8vIHRoaXMgcGFja2FnZSBjb25zdHJ1Y3RzIG9uZSwgc28gaXQgc3RheXMgb2ZmIHRoZSBwdWJsaWMgYmFycmVsLlxuIl19