projen-modules 3.2.1 → 3.2.2

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.
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLXBhY2thZ2Utb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9qZWN0cy9ucG0vbnBtLXBhY2thZ2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBnaXRodWIsIEdpdE9wdGlvbnMsIEdyb3VwUnVubmVyT3B0aW9ucywgSWdub3JlRmlsZU9wdGlvbnMsIGphdmFzY3JpcHQsIExvZ2dlck9wdGlvbnMsIFByb2plY3QsIFByb2plbnJjSnNvbk9wdGlvbnMsIFJlbGVhc2FibGVDb21taXRzLCByZWxlYXNlLCBSZW5vdmF0ZWJvdE9wdGlvbnMsIHR5cGVzY3JpcHQgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHR5cGUgeyBSZWFkbWVPcHRpb25zIH0gZnJvbSAnLi4vLi4vJztcblxuLyoqXG4gKiBOcG1QYWNrYWdlT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE5wbVBhY2thZ2VPcHRpb25zIHtcbiAgLyoqXG4gICAqIFR5cGVTY3JpcHQgdmVyc2lvbiB0byB1c2UuXG4gICAqIE5PVEU6IFR5cGVzY3JpcHQgaXMgbm90IHNlbWFudGljYWxseSB2ZXJzaW9uZWQgYW5kIHNob3VsZCByZW1haW4gb24gdGhlXG4gICAqIHNhbWUgbWlub3IsIHNvIHdlIHJlY29tbWVuZCB1c2luZyBhIGB+YCBkZXBlbmRlbmN5IChlLmcuIGB+MS4yLjNgKS5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXNjcmlwdFZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUeXBlLWNoZWNrIHRoZSB0ZXN0IHN1aXRlIGFzIHBhcnQgb2YgdGhlIGB0ZXN0YCB0YXNrLlxuICAgKiBBZGRzIGEgYHRzYyAtLW5vRW1pdGAgc3RlcCBhZ2FpbnN0IHRoZSBkZXZlbG9wbWVudCB0c2NvbmZpZy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVjaGVja1Rlc3RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRzLWplc3QuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB0c0plc3RPcHRpb25zPzogdHlwZXNjcmlwdC5Uc0plc3RPcHRpb25zO1xuICAvKipcbiAgICogVGhlIG5hbWUgKGFuZCBwYXRoKSBvZiB0aGUgZGV2ZWxvcG1lbnQgdHNjb25maWcgZmlsZS5cbiAgICogQnkgZGVmYXVsdCB0aGlzIGxpdmVzIGluc2lkZSB0aGUgdGVzdCBkaXJlY3RvcnkgKGUuZy4gYHRlc3QvdHNjb25maWcuanNvbmApXG4gICAqIHNvIHRoYXQgdGhlIFR5cGVTY3JpcHQgbGFuZ3VhZ2Ugc2VydmljZSByZXNvbHZlcyBpdCBhcyB0aGUgbmVhcmVzdCBjb25maWdcbiAgICogZm9yIHRlc3QgZmlsZXMuXG4gICAqIEBkZWZhdWx0IC0gXCJ7dGVzdGRpcn0vdHNjb25maWcuanNvblwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ0RldkZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDdXN0b20gdHNjb25maWcgb3B0aW9ucyBmb3IgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZSAodXNlZCBmb3IgdGVzdGluZykuXG4gICAqIEBkZWZhdWx0IC0gdXNlIHRoZSBwcm9kdWN0aW9uIHRzY29uZmlnIG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnRGV2PzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEN1c3RvbSBUU0NvbmZpZy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnPzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEplc3QgdGVzdHMgZGlyZWN0b3J5LiBUZXN0cyBmaWxlcyBzaG91bGQgYmUgbmFtZWQgYHh4eC50ZXN0LnRzYC5cbiAgICogSWYgdGhpcyBkaXJlY3RvcnkgaXMgdW5kZXIgYHNyY2RpcmAgKGUuZy4gYHNyYy90ZXN0YCwgYHNyYy9fX3Rlc3RzX19gKSxcbiAgICogdGhlbiB0ZXN0cyBhcmUgZ29pbmcgdG8gYmUgY29tcGlsZWQgaW50byBgbGliL2AgYW5kIGV4ZWN1dGVkIGFzIGphdmFzY3JpcHQuXG4gICAqIElmIHRoZSB0ZXN0IGRpcmVjdG9yeSBpcyBvdXRzaWRlIG9mIGBzcmNgLCB0aGVuIHdlIGNvbmZpZ3VyZSBqZXN0IHRvXG4gICAqIGNvbXBpbGUgdGhlIGNvZGUgaW4tbWVtb3J5LlxuICAgKiBAZGVmYXVsdCBcInRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgc291cmNlcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwic3JjXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIG9uZS10aW1lIHNhbXBsZSBpbiBgc3JjL2AgYW5kIGB0ZXN0L2AgaWYgdGhlcmUgYXJlIG5vIGZpbGVzIHRoZXJlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzYW1wbGVDb2RlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBUeXBlU2NyaXB0IHJ1bm5lciB0byB1c2UgZm9yIGV4ZWN1dGluZyBUeXBlU2NyaXB0IGZpbGVzLlxuICAgKiBUaGlzIGlzIGEgcHJvamVjdC1sZXZlbCBzZXR0aW5nIHRoYXQgY29tcG9uZW50cyAoZS5nLiBwcm9qZW5yYykgd2lsbFxuICAgKiB1c2UgYXMgdGhlaXIgZGVmYXVsdCBydW5uZXIuXG4gICAqIEBkZWZhdWx0IFR5cGVTY3JpcHRSdW5uZXIudHNOb2RlKClcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJ1bm5lcj86IHR5cGVzY3JpcHQuVHlwZVNjcmlwdFJ1bm5lcjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy50cy5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjVHNPcHRpb25zPzogdHlwZXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgVHlwZVNjcmlwdCBmb3IgeW91ciBwcm9qZW5yYyBmaWxlIChgLnByb2plbnJjLnRzYCkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBwam5ldyB0cnVlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgIGFydGlmYWN0cyBvdXRwdXQgZGlyZWN0b3J5LlxuICAgKiBAZGVmYXVsdCBcImxpYlwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsaWJkaXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFc2xpbnQgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBvcGluaW9uYXRlZCBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGVzbGludE9wdGlvbnM/OiBqYXZhc2NyaXB0LkVzbGludE9wdGlvbnM7XG4gIC8qKlxuICAgKiBTZXR1cCBlc2xpbnQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgdW5sZXNzIGJpb21lIGlzIGVuYWJsZWRcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGVzbGludD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgLmQudHMgZmlsZSB0aGF0IGluY2x1ZGVzIHRoZSB0eXBlIGRlY2xhcmF0aW9ucyBmb3IgdGhpcyBtb2R1bGUuXG4gICAqIEBkZWZhdWx0IC0gLmQudHMgZmlsZSBkZXJpdmVkIGZyb20gdGhlIHByb2plY3QncyBlbnRyeXBvaW50ICh1c3VhbGx5IGxpYi9pbmRleC5kLnRzKVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnlwb2ludFR5cGVzPzogc3RyaW5nO1xuICAvKipcbiAgICogRG9jcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwiZG9jc1wiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkb2NzRGlyZWN0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogRG9jZ2VuIGJ5IFR5cGVkb2MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkb2NnZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogRG8gbm90IGdlbmVyYXRlIGEgZGV2ZWxvcG1lbnQgdHNjb25maWcgZmlsZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZ0Rldj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEbyBub3QgZ2VuZXJhdGUgYSBgdHNjb25maWcuanNvbmAgZmlsZSAodXNlZCBieSBqc2lpIHByb2plY3RzIHNpbmNlIHRzY29uZmlnLmpzb24gaXMgZ2VuZXJhdGVkIGJ5IHRoZSBqc2lpIGNvbXBpbGVyKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgTm9kZS5qcyBwYWNrYWdlIGNhY2hlIGluIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1BhY2thZ2VDYWNoZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgbm9kZSB2ZXJzaW9uIHVzZWQgaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKiBBbHdheXMgdXNlIHRoaXMgb3B0aW9uIGlmIHlvdXIgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIHJlcXVpcmUgYSBzcGVjaWZpYyB0byBydW4uXG4gICAqIEBkZWZhdWx0IC0gYG1pbk5vZGVWZXJzaW9uYCBpZiBzZXQsIG90aGVyd2lzZSBgbHRzLypgLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dOb2RlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBnaXQgaWRlbnRpdHkgdG8gdXNlIGluIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IEdpdEh1YiBBY3Rpb25zIHVzZXJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93R2l0SWRlbnRpdHk/OiBnaXRodWIuR2l0SWRlbnRpdHk7XG4gIC8qKlxuICAgKiBXb3JrZmxvdyBzdGVwcyB0byB1c2UgaW4gb3JkZXIgdG8gYm9vdHN0cmFwIHRoaXMgcmVwby5cbiAgICogQGRlZmF1bHQgXCJ5YXJuIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUgJiYgeWFybiBwcm9qZW5cIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dCb290c3RyYXBTdGVwcz86IEFycmF5PGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcD47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IHJlbGVhc2UgdG8gbnBtIHdoZW4gbmV3IHZlcnNpb25zIGFyZSBpbnRyb2R1Y2VkLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRvTnBtPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkZCByZWxlYXNlIG1hbmFnZW1lbnQgdG8gdGhpcyBwcm9qZWN0LlxuICAgKiBAZGVmYXVsdCAtIHRydWUgKGZhbHNlIGZvciBzdWJwcm9qZWN0cylcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2U/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGNvbnRlbnRzIG9mIHRoZSBwdWxsIHJlcXVlc3QgdGVtcGxhdGUuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBjb250ZW50XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlQ29udGVudHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogSW5jbHVkZSBhIEdpdEh1YiBwdWxsIHJlcXVlc3QgdGVtcGxhdGUuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0VGVtcGxhdGU/OiBib29sZWFuO1xuICAvKipcbiAgICogVmVyc2lvbiBvZiBwcm9qZW4gdG8gaW5zdGFsbC5cbiAgICogQGRlZmF1bHQgLSBEZWZhdWx0cyB0byB0aGUgbGF0ZXN0IHZlcnNpb24uXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKc09wdGlvbnM/OiBqYXZhc2NyaXB0LlByb2plbnJjT3B0aW9ucztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanMgKGluIEphdmFTY3JpcHQpLiBTZXQgdG8gYGZhbHNlYCBpbiBvcmRlciB0byBkaXNhYmxlIC5wcm9qZW5yYy5qcyBnZW5lcmF0aW9uLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgcHJvamVucmNKc29uIGlzIGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBvZiBcInByb2plblwiIHNob3VsZCBiZSBpbnN0YWxsZWQgYXMgYSBkZXZEZXBlbmRlbmN5LlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgbm90IGEgc3VicHJvamVjdFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuRGV2RGVwZW5kZW5jeT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQcmV0dGllciBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJldHRpZXJPcHRpb25zPzogamF2YXNjcmlwdC5QcmV0dGllck9wdGlvbnM7XG4gIC8qKlxuICAgKiBTZXR1cCBwcmV0dGllci5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByZXR0aWVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmluZXMgYSBgcGFja2FnZWAgdGFzayB0aGF0IHdpbGwgcHJvZHVjZSBhbiBucG0gdGFyYmFsbCB1bmRlciB0aGUgYXJ0aWZhY3RzIGRpcmVjdG9yeSAoZS5nLiBgZGlzdGApLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgLm5wbWlnbm9yZSBmaWxlLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtSWdub3JlT3B0aW9ucz86IElnbm9yZUZpbGVPcHRpb25zO1xuICAvKipcbiAgICogRGVmaW5lcyBhbiAubnBtaWdub3JlIGZpbGUuIE5vcm1hbGx5IHRoaXMgaXMgb25seSBuZWVkZWQgZm9yIGxpYnJhcmllcyB0aGF0IGFyZSBwYWNrYWdlZCBhcyB0YXJiYWxscy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtaWdub3JlRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBKZXN0IG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBqZXN0T3B0aW9ucz86IGphdmFzY3JpcHQuSmVzdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBTZXR1cCBqZXN0IHVuaXQgdGVzdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGplc3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBlbnRyaWVzIHRvIC5naXRpZ25vcmUuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBnaXRpZ25vcmU/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYFVwZ3JhZGVEZXBlbmRlbmNpZXNgLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZGVwc1VwZ3JhZGVPcHRpb25zPzogamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzT3B0aW9ucztcbiAgLyoqXG4gICAqIFVzZSB0YXNrcyBhbmQgZ2l0aHViIHdvcmtmbG93cyB0byBoYW5kbGUgZGVwZW5kZW5jeSB1cGdyYWRlcy5cbiAgICogQ2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBgZGVwZW5kYWJvdGAuXG4gICAqIEBkZWZhdWx0IC0gYHRydWVgIGZvciByb290IHByb2plY3RzLCBgZmFsc2VgIGZvciBzdWJwcm9qZWN0c1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZGVwc1VwZ3JhZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgZGVwZW5kYWJvdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3RPcHRpb25zPzogZ2l0aHViLkRlcGVuZGFib3RPcHRpb25zO1xuICAvKipcbiAgICogVXNlIGRlcGVuZGFib3QgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIENhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYGRlcHNVcGdyYWRlYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG1haW4gcmVsZWFzZSBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibWFpblwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0UmVsZWFzZUJyYW5jaD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBjb3B5cmlnaHQgeWVhcnMgdG8gcHV0IGluIHRoZSBMSUNFTlNFIGZpbGUuXG4gICAqIFRoaXMgdmFsdWUgaXMgb25seSB1c2VkIGlmIHRoZSBzZWxlY3RlZCBsaWNlbnNlIHRleHQgY29udGFpbnMgdGhlXG4gICAqIGAkY29weXJpZ2h0X3BlcmlvZGAgcGxhY2Vob2xkZXIuIEZvciBleGFtcGxlLCBpdCBoYXMgbm8gZWZmZWN0IG9uIHRoZVxuICAgKiBNUEwtMi4wIGxpY2Vuc2UgdGV4dC5cbiAgICogQGRlZmF1bHQgLSBjdXJyZW50IHllYXJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvcHlyaWdodFBlcmlvZD86IHN0cmluZztcbiAgLyoqXG4gICAqIExpY2Vuc2UgY29weXJpZ2h0IG93bmVyLlxuICAgKiBUaGlzIHZhbHVlIGlzIG9ubHkgdXNlZCBpZiB0aGUgc2VsZWN0ZWQgbGljZW5zZSB0ZXh0IGNvbnRhaW5zIHRoZVxuICAgKiBgJGNvcHlyaWdodF9vd25lcmAgcGxhY2Vob2xkZXIuIEZvciBleGFtcGxlLCBpdCBoYXMgbm8gZWZmZWN0IG9uIHRoZVxuICAgKiBNUEwtMi4wIGxpY2Vuc2UgdGV4dC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0cyB0byB0aGUgdmFsdWUgb2YgYXV0aG9yTmFtZSBvciBcIlwiIGlmIGBhdXRob3JOYW1lYCBpcyB1bmRlZmluZWQuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBjb3B5cmlnaHRPd25lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIERlZmluZSB0aGUgc2VjcmV0IG5hbWUgZm9yIGEgc3BlY2lmaWVkIGh0dHBzOi8vY29kZWNvdi5pby8gdG9rZW4uXG4gICAqIEBkZWZhdWx0IC0gT0lEQyBhdXRoIGlzIHVzZWRcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVDb3ZUb2tlblNlY3JldD86IHN0cmluZztcbiAgLyoqXG4gICAqIERlZmluZSBhIEdpdEh1YiB3b3JrZmxvdyBzdGVwIGZvciBzZW5kaW5nIGNvZGUgY292ZXJhZ2UgbWV0cmljcyB0byBodHRwczovL2NvZGVjb3YuaW8vLlxuICAgKiBVc2VzIGNvZGVjb3YvY29kZWNvdi1hY3Rpb24uIEJ5IGRlZmF1bHQsIE9JREMgYXV0aCBpcyB1c2VkLlxuICAgKiBBbHRlcm5hdGl2ZWx5IGEgdG9rZW4gY2FuIGJlIHByb3ZpZGVkIHZpYSBgY29kZUNvdlRva2VuU2VjcmV0YC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVDb3Y/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIHdoaWNoIGxpY2Vuc2VzIHNob3VsZCBiZSBkZWVtZWQgYWNjZXB0YWJsZSBmb3IgdXNlIGJ5IGRlcGVuZGVuY2llcy5cbiAgICogVGhpcyBzZXR0aW5nIHdpbGwgY2F1c2UgdGhlIGJ1aWxkIHRvIGZhaWwsIGlmIGFueSBwcm9oaWJpdGVkIG9yIG5vdCBhbGxvd2VkIGxpY2Vuc2VzIGFyZXMgZW5jb3VudGVyZWQuXG4gICAqIEBkZWZhdWx0IC0gbm8gbGljZW5zZSBjaGVja3MgYXJlIHJ1biBkdXJpbmcgdGhlIGJ1aWxkIGFuZCBhbGwgbGljZW5zZXMgd2lsbCBiZSBhY2NlcHRlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgY2hlY2tMaWNlbnNlcz86IGphdmFzY3JpcHQuTGljZW5zZUNoZWNrZXJPcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYEJ1bmRsZXJgLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYnVuZGxlck9wdGlvbnM/OiBqYXZhc2NyaXB0LkJ1bmRsZXJPcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgUFIgYnVpbGQgd29ya2Zsb3cuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93T3B0aW9ucz86IGphdmFzY3JpcHQuQnVpbGRXb3JrZmxvd09wdGlvbnM7XG4gIC8qKlxuICAgKiBEZWZpbmUgYSBHaXRIdWIgd29ya2Zsb3cgZm9yIGJ1aWxkaW5nIFBScy5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIG5vdCBhIHN1YnByb2plY3RcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV29ya2Zsb3c/OiBib29sZWFuO1xuICAvKipcbiAgICogQmlvbWUgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJpb21lT3B0aW9ucz86IGphdmFzY3JpcHQuQmlvbWVPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgQmlvbWUuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBiaW9tZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFwcHJvdmUgZGVwcyB1cGdyYWRlIFBScywgYWxsb3dpbmcgdGhlbSB0byBiZSBtZXJnZWQgYnkgbWVyZ2lmeSAoaWYgY29uZmlndXJlZCkuXG4gICAqIFRocm93IGlmIHNldCB0byB0cnVlIGJ1dCBgYXV0b0FwcHJvdmVPcHRpb25zYCBhcmUgbm90IGRlZmluZWQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVVcGdyYWRlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTZWN1cml0eSBhdWRpdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXVkaXREZXBzT3B0aW9ucz86IGphdmFzY3JpcHQuQXVkaXRPcHRpb25zO1xuICAvKipcbiAgICogUnVuIHNlY3VyaXR5IGF1ZGl0IG9uIGRlcGVuZGVuY2llcy5cbiAgICogV2hlbiBlbmFibGVkLCBjcmVhdGVzIGFuIFwiYXVkaXRcIiB0YXNrIHRoYXQgY2hlY2tzIGZvciBrbm93biBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXNcbiAgICogaW4gZGVwZW5kZW5jaWVzLiBCeSBkZWZhdWx0LCBydW5zIGR1cmluZyBldmVyeSBidWlsZCBhbmQgY2hlY2tzIGZvciBcImhpZ2hcIiBzZXZlcml0eVxuICAgKiB2dWxuZXJhYmlsaXRpZXMgb3IgYWJvdmUgaW4gYWxsIGRlcGVuZGVuY2llcyAoaW5jbHVkaW5nIGRldiBkZXBlbmRlbmNpZXMpLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXVkaXREZXBzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEEgZGlyZWN0b3J5IHdoaWNoIHdpbGwgY29udGFpbiBidWlsZCBhcnRpZmFjdHMuXG4gICAqIEBkZWZhdWx0IFwiZGlzdFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhcnRpZmFjdHNEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIEdyb3VwIHNlbGVjdGlvbiBvcHRpb25zLlxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYGdpdGh1Yk9wdGlvbnMud29ya2Zsb3dSdW5zT25Hcm91cGAgb24gdGhlIHByb2plY3QsIG9yIGBydW5zT25Hcm91cGAgb24gYFJlbGVhc2VPcHRpb25zYFxuICAgKiBAc3RhYmlsaXR5IGRlcHJlY2F0ZWRcbiAgICogQGRlc2NyaXB0aW9uIERlZmluZXMgYSB0YXJnZXQgUnVubmVyIEdyb3VwIGJ5IG5hbWUgYW5kL29yIGxhYmVsc1xuICAgKiBAdGhyb3dzIHtFcnJvcn0gaWYgYm90aCBgcnVuc09uYCBhbmQgYHJ1bnNPbkdyb3VwYCBhcmUgc3BlY2lmaWVkXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1J1bnNPbkdyb3VwPzogR3JvdXBSdW5uZXJPcHRpb25zO1xuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBzZWxlY3Rpb24gbGFiZWxzLlxuICAgKiBAZGVmYXVsdCBbXCJ1YnVudHUtbGF0ZXN0XCJdXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgZ2l0aHViT3B0aW9ucy53b3JrZmxvd1J1bnNPbmAgb24gdGhlIHByb2plY3QsIG9yIGBydW5zT25gIG9uIGBSZWxlYXNlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBkZXByZWNhdGVkXG4gICAqIEBkZXNjcmlwdGlvbiBEZWZpbmVzIGEgdGFyZ2V0IFJ1bm5lciBieSBsYWJlbHNcbiAgICogQHRocm93cyB7RXJyb3J9IGlmIGJvdGggYHJ1bnNPbmAgYW5kIGBydW5zT25Hcm91cGAgYXJlIHNwZWNpZmllZFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dSdW5zT24/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogQ29udGFpbmVyIGltYWdlIHRvIHVzZSBmb3IgR2l0SHViIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IGltYWdlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd0NvbnRhaW5lckltYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3VzdG9tIGNvbmZpZ3VyYXRpb24gdXNlZCB3aGVuIGNyZWF0aW5nIGNoYW5nZWxvZyB3aXRoIGNvbW1pdC1hbmQtdGFnLXZlcnNpb24gcGFja2FnZS5cbiAgICogR2l2ZW4gdmFsdWVzIGVpdGhlciBhcHBlbmQgdG8gZGVmYXVsdCBjb25maWd1cmF0aW9uIG9yIG92ZXJ3cml0ZSB2YWx1ZXMgaW4gaXQuXG4gICAqIEBkZWZhdWx0IC0gc3RhbmRhcmQgY29uZmlndXJhdGlvbiBhcHBsaWNhYmxlIGZvciBHaXRIdWIgcmVwb3NpdG9yaWVzXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2ZXJzaW9ucmNPcHRpb25zPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgLyoqXG4gICAqIEEgc2V0IG9mIHdvcmtmbG93IHN0ZXBzIHRvIGV4ZWN1dGUgaW4gb3JkZXIgdG8gc2V0dXAgdGhlIHdvcmtmbG93IGNvbnRhaW5lci5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd1NldHVwU3RlcHM/OiBBcnJheTxnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXA+O1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgcmVsZWFzZSB3b3JrZmxvdy5cbiAgICogQGRlZmF1bHQgXCJyZWxlYXNlXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd05hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBCdWlsZCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHJlbGVhc2Ugd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVdvcmtmbG93RW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSByZWxlYXNlIHRyaWdnZXIgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCAtIENvbnRpbnVvdXMgcmVsZWFzZXMgKGBSZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKClgKVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRyaWdnZXI/OiByZWxlYXNlLlJlbGVhc2VUcmlnZ2VyO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgdGhlIGdpdmVuIHByZWZpeCB0byByZWxlYXNlIHRhZ3MuIFVzZWZ1bCBpZiB5b3UgYXJlIHJlbGVhc2luZyBvbiBtdWx0aXBsZSBicmFuY2hlcyB3aXRoIG92ZXJsYXBwaW5nIHZlcnNpb24gbnVtYmVycy5cbiAgICogTm90ZTogdGhpcyBwcmVmaXggaXMgdXNlZCB0byBkZXRlY3QgdGhlIGxhdGVzdCB0YWdnZWQgdmVyc2lvblxuICAgKiB3aGVuIGJ1bXBpbmcsIHNvIGlmIHlvdSBjaGFuZ2UgdGhpcyBvbiBhIHByb2plY3Qgd2l0aCBhbiBleGlzdGluZyB2ZXJzaW9uXG4gICAqIGhpc3RvcnksIHlvdSBtYXkgbmVlZCB0byBtYW51YWxseSB0YWcgeW91ciBsYXRlc3QgcmVsZWFzZVxuICAgKiB3aXRoIHRoZSBuZXcgcHJlZml4LlxuICAgKiBAZGVmYXVsdCBcInZcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRhZ1ByZWZpeD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBsYWJlbCB0byBhcHBseSB0byBpc3N1ZXMgaW5kaWNhdGluZyBwdWJsaXNoIGZhaWx1cmVzLlxuICAgKiBPbmx5IGFwcGxpZXMgaWYgYHJlbGVhc2VGYWlsdXJlSXNzdWVgIGlzIHRydWUuXG4gICAqIEBkZWZhdWx0IFwiZmFpbGVkLXJlbGVhc2VcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUZhaWx1cmVJc3N1ZUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3JlYXRlIGEgZ2l0aHViIGlzc3VlIG9uIGV2ZXJ5IGZhaWxlZCBwdWJsaXNoaW5nIHRhc2suXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRmFpbHVyZUlzc3VlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBHaXRIdWIgQWN0aW9ucyBlbnZpcm9ubWVudCB1c2VkIGZvciB0aGUgcmVsZWFzZS5cbiAgICogVGhpcyBjYW4gYmUgdXNlZCB0byBhZGQgYW4gZXhwbGljaXQgYXBwcm92YWwgc3RlcCB0byB0aGUgcmVsZWFzZVxuICAgKiBvciBsaW1pdCB3aG8gY2FuIGluaXRpYXRlIGEgcmVsZWFzZSB0aHJvdWdoIGVudmlyb25tZW50IHByb3RlY3Rpb24gcnVsZXMuXG4gICAqXG4gICAqIFdoZW4gbXVsdGlwbGUgYXJ0aWZhY3RzIGFyZSByZWxlYXNlZCwgdGhlIGVudmlyb25tZW50IGNhbiBiZSBvdmVyd3JpdHRlblxuICAgKiBvbiBhIHBlciBhcnRpZmFjdCBiYXNpcy5cbiAgICogQGRlZmF1bHQgLSBubyBlbnZpcm9ubWVudCB1c2VkLCB1bmxlc3Mgc2V0IGF0IHRoZSBhcnRpZmFjdCBsZXZlbFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUVudmlyb25tZW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogRGVmaW5lcyBhZGRpdGlvbmFsIHJlbGVhc2UgYnJhbmNoZXMuXG4gICAqIEEgd29ya2Zsb3cgd2lsbCBiZSBjcmVhdGVkIGZvciBlYWNoXG4gICAqIHJlbGVhc2UgYnJhbmNoIHdoaWNoIHdpbGwgcHVibGlzaCByZWxlYXNlcyBmcm9tIGNvbW1pdHMgaW4gdGhpcyBicmFuY2guXG4gICAqIEVhY2ggcmVsZWFzZSBicmFuY2ggX211c3RfIGJlIGFzc2lnbmVkIGEgbWFqb3IgdmVyc2lvbiBudW1iZXIgd2hpY2ggaXMgdXNlZFxuICAgKiB0byBlbmZvcmNlIHRoYXQgdmVyc2lvbnMgcHVibGlzaGVkIGZyb20gdGhhdCBicmFuY2ggYWx3YXlzIHVzZSB0aGF0IG1ham9yXG4gICAqIHZlcnNpb24uIElmIG11bHRpcGxlIGJyYW5jaGVzIGFyZSB1c2VkLCB0aGUgYG1ham9yVmVyc2lvbmAgZmllbGQgbXVzdCBhbHNvXG4gICAqIGJlIHByb3ZpZGVkIGZvciB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBicmFuY2hlcyBhcmUgdXNlZCBmb3IgcmVsZWFzZS4geW91IGNhbiB1c2VcbmBhZGRCcmFuY2goKWAgdG8gYWRkIGFkZGl0aW9uYWwgYnJhbmNoZXMuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlQnJhbmNoZXM/OiBSZWNvcmQ8c3RyaW5nLCByZWxlYXNlLkJyYW5jaE9wdGlvbnM+O1xuICAvKipcbiAgICogRmluZCBjb21taXRzIHRoYXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgcmVsZWFzYWJsZSBVc2VkIHRvIGRlY2lkZSBpZiBhIHJlbGVhc2UgaXMgcmVxdWlyZWQuXG4gICAqIEBkZWZhdWx0IFJlbGVhc2FibGVDb21taXRzLmV2ZXJ5Q29tbWl0KClcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2FibGVDb21taXRzPzogUmVsZWFzYWJsZUNvbW1pdHM7XG4gIC8qKlxuICAgKiBEZWZpbmUgcHVibGlzaGluZyB0YXNrcyB0aGF0IGNhbiBiZSBleGVjdXRlZCBtYW51YWxseSBhcyB3ZWxsIGFzIHdvcmtmbG93cy5cbiAgICogTm9ybWFsbHksIHB1Ymxpc2hpbmcgb25seSBoYXBwZW5zIHdpdGhpbiBhdXRvbWF0ZWQgd29ya2Zsb3dzLiBFbmFibGUgdGhpc1xuICAgKiBpbiBvcmRlciB0byBjcmVhdGUgYSBwdWJsaXNoaW5nIHRhc2sgZm9yIGVhY2ggcHVibGlzaGluZyBhY3Rpdml0eS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hUYXNrcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbnN0ZWFkIG9mIGFjdHVhbGx5IHB1Ymxpc2hpbmcgdG8gcGFja2FnZSBtYW5hZ2VycywganVzdCBwcmludCB0aGUgcHVibGlzaGluZyBjb21tYW5kLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaERyeVJ1bj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBCdW1wIHZlcnNpb25zIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoIGFzIHByZS1yZWxlYXNlcyAoZS5nLiBcImJldGFcIiwgXCJhbHBoYVwiLCBcInByZVwiKS5cbiAgICogQGRlZmF1bHQgLSBub3JtYWwgc2VtYW50aWMgdmVyc2lvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByZXJlbGVhc2U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTdGVwcyB0byBleGVjdXRlIGFmdGVyIGJ1aWxkIGFzIHBhcnQgb2YgdGhlIHJlbGVhc2Ugd29ya2Zsb3cuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwb3N0QnVpbGRTdGVwcz86IEFycmF5PGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcD47XG4gIC8qKlxuICAgKiBUaGUgbnBtRGlzdFRhZyB0byB1c2Ugd2hlbiBwdWJsaXNoaW5nIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoLlxuICAgKiBUbyBzZXQgdGhlIG5wbSBkaXN0LXRhZyBmb3IgcmVsZWFzZSBicmFuY2hlcywgc2V0IHRoZSBgbnBtRGlzdFRhZ2AgcHJvcGVydHlcbiAgICogZm9yIGVhY2ggYnJhbmNoLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBucG1EaXN0VGFnPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBzaGVsbCBjb21tYW5kIHRvIGNvbnRyb2wgdGhlIG5leHQgdmVyc2lvbiB0byByZWxlYXNlLlxuICAgKiBJZiBwcmVzZW50LCB0aGlzIHNoZWxsIGNvbW1hbmQgd2lsbCBiZSBydW4gYmVmb3JlIHRoZSBidW1wIGlzIGV4ZWN1dGVkLCBhbmRcbiAgICogaXQgZGV0ZXJtaW5lcyB3aGF0IHZlcnNpb24gdG8gcmVsZWFzZS4gSXQgd2lsbCBiZSBleGVjdXRlZCBpbiB0aGUgZm9sbG93aW5nXG4gICAqIGVudmlyb25tZW50OlxuICAgKlxuICAgKiAtIFdvcmtpbmcgZGlyZWN0b3J5OiB0aGUgcHJvamVjdCBkaXJlY3RvcnkuXG4gICAqIC0gYCRWRVJTSU9OYDogdGhlIGN1cnJlbnQgdmVyc2lvbi4gTG9va3MgbGlrZSBgMS4yLjNgLlxuICAgKiAtIGAkTEFURVNUX1RBR2A6IHRoZSBtb3N0IHJlY2VudCB0YWcuIExvb2tzIGxpa2UgYHByZWZpeC12MS4yLjNgLCBvciBtYXkgYmUgdW5zZXQuXG4gICAqIC0gYCRTVUdHRVNURURfQlVNUGA6IHRoZSBzdWdnZXN0ZWQgYnVtcCBhY3Rpb24gYmFzZWQgb24gY29tbWl0cy4gT25lIG9mIGBtYWpvcnxtaW5vcnxwYXRjaHxub25lYC5cbiAgICpcbiAgICogVGhlIGNvbW1hbmQgc2hvdWxkIHByaW50IG9uZSBvZiB0aGUgZm9sbG93aW5nIHRvIGBzdGRvdXRgOlxuICAgKlxuICAgKiAtIE5vdGhpbmc6IHRoZSBuZXh0IHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiBjb21taXQgaGlzdG9yeS5cbiAgICogLSBgeC55LnpgOiB0aGUgbmV4dCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIGB4LnkuemAuXG4gICAqIC0gYG1ham9yfG1pbm9yfHBhdGNoYDogdGhlIG5leHQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSB0aGUgY3VycmVudCB2ZXJzaW9uIG51bWJlclxuICAgKiAgIHdpdGggdGhlIGluZGljYXRlZCBjb21wb25lbnQgYnVtcGVkLlxuICAgKlxuICAgKiBUaGlzIHNldHRpbmcgY2Fubm90IGJlIHNwZWNpZmllZCB0b2dldGhlciB3aXRoIGBtaW5NYWpvclZlcnNpb25gOyB0aGUgaW52b2tlZFxuICAgKiBzY3JpcHQgY2FuIGJlIHVzZWQgdG8gYWNoaWV2ZSB0aGUgZWZmZWN0cyBvZiBgbWluTWFqb3JWZXJzaW9uYC5cbiAgICogQGRlZmF1bHQgLSBUaGUgbmV4dCB2ZXJzaW9uIHdpbGwgYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0aGUgY29tbWl0IGhpc3RvcnkgYW5kIHByb2plY3Qgc2V0dGluZ3MuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBuZXh0VmVyc2lvbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNaW5pbWFsIE1ham9yIHZlcnNpb24gdG8gcmVsZWFzZS5cbiAgICogVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHNldCB0byAxLCBhcyBicmVha2luZyBjaGFuZ2VzIGJlZm9yZSB0aGUgMS54IG1ham9yXG4gICAqIHJlbGVhc2UgYXJlIG5vdCBpbmNyZW1lbnRpbmcgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyLlxuICAgKlxuICAgKiBDYW4gbm90IGJlIHNldCB0b2dldGhlciB3aXRoIGBtYWpvclZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIE5vIG1pbmltdW0gdmVyc2lvbiBpcyBiZWluZyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbWluTWFqb3JWZXJzaW9uPzogbnVtYmVyO1xuICAvKipcbiAgICogTWFqb3IgdmVyc2lvbiB0byByZWxlYXNlIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoLlxuICAgKiBJZiB0aGlzIGlzIHNwZWNpZmllZCwgd2UgYnVtcCB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtYWpvciB2ZXJzaW9uIGxpbmUuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHdlIGJ1bXAgdGhlIGdsb2JhbCBsYXRlc3QgdmVyc2lvbi5cbiAgICogQGRlZmF1bHQgLSBNYWpvciB2ZXJzaW9uIGlzIG5vdCBlbmZvcmNlZC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG1ham9yVmVyc2lvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIFZlcnNpb24gcmVxdWlyZW1lbnQgb2YgYHB1YmxpYmAgd2hpY2ggaXMgdXNlZCB0byBwdWJsaXNoIG1vZHVsZXMgdG8gbnBtLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBqc2lpUmVsZWFzZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIEdpdEh1YiBzaG91bGQgZXhwbGljaXRseSBtYXJrIHRoZSByZWxlYXNlIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoIGFzIHRoZSBsYXRlc3QgcmVsZWFzZS5cbiAgICogU2V0IHRvIGB0cnVlYCB0byBtYXJrIHRoZSByZWxlYXNlIGFzIGxhdGVzdCwgb3IgYGZhbHNlYCB0byBleHBsaWNpdGx5IG5vdFxuICAgKiBtYXJrIGl0IGFzIGxhdGVzdC5cbiAgICogQGRlZmF1bHQgLSBHaXRIdWIgZGV0ZXJtaW5lcyB0aGUgbGF0ZXN0IHJlbGVhc2UgYmFzZWQgb24gZGF0ZSBhbmQgc2VtYW50aWMgdmVyc2lvbi5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1YlJlbGVhc2VMYXRlc3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGBjb21taXQtYW5kLXRhZy12ZXJzaW9uYCBjb21wYXRpYmxlIHBhY2thZ2UgdXNlZCB0byBidW1wIHRoZSBwYWNrYWdlIHZlcnNpb24sIGFzIGEgZGVwZW5kZW5jeSBzdHJpbmcuXG4gICAqIFRoaXMgY2FuIGJlIGFueSBjb21wYXRpYmxlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBkZXByZWNhdGVkIGBzdGFuZGFyZC12ZXJzaW9uQDlgLlxuICAgKiBAZGVmYXVsdCAtIEEgcmVjZW50IHZlcnNpb24gb2YgXCJjb21taXQtYW5kLXRhZy12ZXJzaW9uXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1bXBQYWNrYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgWWFybiBCZXJyeS5cbiAgICogQGRlZmF1bHQgLSBZYXJuIEJlcnJ5IHY0IHdpdGggYWxsIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgeWFybkJlcnJ5T3B0aW9ucz86IGphdmFzY3JpcHQuWWFybkJlcnJ5T3B0aW9ucztcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBTdGFiaWxpdHkuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzdGFiaWxpdHk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBwcml2YXRlbHkgaG9zdGVkIHNjb3BlZCBwYWNrYWdlcy5cbiAgICogQGRlZmF1bHQgLSBmZXRjaCBhbGwgc2NvcGVkIHBhY2thZ2VzIGZyb20gdGhlIHB1YmxpYyBucG0gcmVnaXN0cnlcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHNjb3BlZFBhY2thZ2VzT3B0aW9ucz86IEFycmF5PGphdmFzY3JpcHQuU2NvcGVkUGFja2FnZXNPcHRpb25zPjtcbiAgLyoqXG4gICAqIElmIHRoZSBwYWNrYWdlLmpzb24gZm9yIHlvdXIgcGFja2FnZSBpcyBub3QgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IChmb3IgZXhhbXBsZSBpZiBpdCBpcyBwYXJ0IG9mIGEgbW9ub3JlcG8pLCB5b3UgY2FuIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCBpdCBsaXZlcy5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcmVwb3NpdG9yeSBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIGFjdHVhbCBjb2RlIGZvciB5b3VyIHBhY2thZ2UgbGl2ZXMuXG4gICAqIFNlZSBodHRwczovL2NsYXNzaWMueWFybnBrZy5jb20vZW4vZG9jcy9wYWNrYWdlLWpzb24vI3RvYy1yZXBvc2l0b3J5XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgUE5QTSB0byB1c2UgaWYgdXNpbmcgUE5QTSBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCIxMC4zMy4wXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHBucG1WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgcG5wbS5cbiAgICogQGRlZmF1bHQgLSBhbGwgZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwbnBtT3B0aW9ucz86IGphdmFzY3JpcHQuUG5wbU9wdGlvbnM7XG4gIC8qKlxuICAgKiBQZWVyIGRlcGVuZGVuY2llcyBmb3IgdGhpcyBtb2R1bGUuXG4gICAqIERlcGVuZGVuY2llcyBsaXN0ZWQgaGVyZSBhcmUgcmVxdWlyZWQgdG9cbiAgICogYmUgaW5zdGFsbGVkIChhbmQgc2F0aXNmaWVkKSBieSB0aGUgX2NvbnN1bWVyXyBvZiB0aGlzIGxpYnJhcnkuIFVzaW5nIHBlZXJcbiAgICogZGVwZW5kZW5jaWVzIGFsbG93cyB5b3UgdG8gZW5zdXJlIHRoYXQgb25seSBhIHNpbmdsZSBtb2R1bGUgb2YgYSBjZXJ0YWluXG4gICAqIGxpYnJhcnkgZXhpc3RzIGluIHRoZSBgbm9kZV9tb2R1bGVzYCB0cmVlIG9mIHlvdXIgY29uc3VtZXJzLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgcHJpb3IgdG8gbnBtQDcsIHBlZXIgZGVwZW5kZW5jaWVzIGFyZSBfbm90XyBhdXRvbWF0aWNhbGx5XG4gICAqIGluc3RhbGxlZCwgd2hpY2ggbWVhbnMgdGhhdCBhZGRpbmcgcGVlciBkZXBlbmRlbmNpZXMgdG8gYSBsaWJyYXJ5IHdpbGwgYmUgYVxuICAgKiBicmVha2luZyBjaGFuZ2UgZm9yIHlvdXIgY3VzdG9tZXJzLlxuICAgKlxuICAgKiBVbmxlc3MgYHBlZXJEZXBlbmRlbmN5T3B0aW9ucy5waW5uZWREZXZEZXBlbmRlbmN5YCBpcyBkaXNhYmxlZCAoaXQgaXNcbiAgICogZW5hYmxlZCBieSBkZWZhdWx0KSwgcHJvamVuIHdpbGwgYXV0b21hdGljYWxseSBhZGQgYSBkZXYgZGVwZW5kZW5jeSB3aXRoIGFcbiAgICogcGlubmVkIHZlcnNpb24gZm9yIGVhY2ggcGVlciBkZXBlbmRlbmN5LiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgeW91IGJ1aWxkICZcbiAgICogdGVzdCB5b3VyIG1vZHVsZSBhZ2FpbnN0IHRoZSBsb3dlc3QgcGVlciB2ZXJzaW9uIHJlcXVpcmVkLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGVlckRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYHBlZXJEZXBzYC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHBlZXJEZXBlbmRlbmN5T3B0aW9ucz86IGphdmFzY3JpcHQuUGVlckRlcGVuZGVuY3lPcHRpb25zO1xuICAvKipcbiAgICogVGhlIFwibmFtZVwiIGluIHBhY2thZ2UuanNvbi5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0cyB0byBwcm9qZWN0IG5hbWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHBhY2thZ2VOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIE5vZGUgUGFja2FnZSBNYW5hZ2VyIHVzZWQgdG8gZXhlY3V0ZSBzY3JpcHRzLlxuICAgKiBAZGVmYXVsdCAtIERldGVjdGVkIGZyb20gdGhlIGNhbGxpbmcgcHJvY2VzcyBvciBgWUFSTl9DTEFTU0lDYCBpZiBkZXRlY3Rpb24gZmFpbHMuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBwam5ldyAkUEFDS0FHRV9NQU5BR0VSXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlTWFuYWdlcj86IGphdmFzY3JpcHQuTm9kZVBhY2thZ2VNYW5hZ2VyO1xuICAvKipcbiAgICogVXNlIHRydXN0ZWQgcHVibGlzaGluZyBmb3IgcHVibGlzaGluZyB0byBucG1qcy5jb20gTmVlZHMgdG8gYmUgcHJlLWNvbmZpZ3VyZWQgb24gbnBtLmpzIHRvIHdvcmsuXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG5wbVRydXN0ZWRQdWJsaXNoaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEdpdEh1YiBzZWNyZXQgd2hpY2ggY29udGFpbnMgdGhlIE5QTSB0b2tlbiB0byB1c2Ugd2hlbiBwdWJsaXNoaW5nIHBhY2thZ2VzLlxuICAgKiBAZGVmYXVsdCBcIk5QTV9UT0tFTlwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBucG1Ub2tlblNlY3JldD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBiYXNlIFVSTCBvZiB0aGUgbnBtIHBhY2thZ2UgcmVnaXN0cnkuXG4gICAqIE11c3QgYmUgYSBVUkwgKGUuZy4gc3RhcnQgd2l0aCBcImh0dHBzOi8vXCIgb3IgXCJodHRwOi8vXCIpXG4gICAqIEBkZWZhdWx0IFwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmdcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUmVnaXN0cnlVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaG91bGQgcHJvdmVuYW5jZSBzdGF0ZW1lbnRzIGJlIGdlbmVyYXRlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIHB1Ymxpc2hlZC5cbiAgICogQSBzdXBwb3J0ZWQgcGFja2FnZSBtYW5hZ2VyIGlzIHJlcXVpcmVkIHRvIHB1Ymxpc2ggYSBwYWNrYWdlIHdpdGggbnBtIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBhbmRcbiAgICogeW91IHdpbGwgbmVlZCB0byB1c2UgYSBzdXBwb3J0ZWQgQ0kvQ0QgcHJvdmlkZXIuXG4gICAqXG4gICAqIE5vdGUgdGhhdCB0aGUgcHJvamVuIGBSZWxlYXNlYCBhbmQgYFB1Ymxpc2hlcmAgY29tcG9uZW50cyBhcmUgdXNpbmcgYHB1YmxpYmAgdG8gcHVibGlzaCBwYWNrYWdlcyxcbiAgICogd2hpY2ggaXMgdXNpbmcgbnBtIGludGVybmFsbHkgYW5kIHN1cHBvcnRzIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBpbmRlcGVuZGVudGx5IG9mIHRoZSBwYWNrYWdlIG1hbmFnZXIgdXNlZC5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGZvciBwdWJsaWMgcGFja2FnZXMsIGZhbHNlIG90aGVyd2lzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUHJvdmVuYW5jZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBY2Nlc3MgbGV2ZWwgb2YgdGhlIG5wbSBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCAtIGZvciBzY29wZWQgcGFja2FnZXMgKGUuZy4gYGZvb0BiYXJgKSwgdGhlIGRlZmF1bHQgaXNcbmBOcG1BY2Nlc3MuUkVTVFJJQ1RFRGAsIGZvciBub24tc2NvcGVkIHBhY2thZ2VzLCB0aGUgZGVmYXVsdCBpc1xuYE5wbUFjY2Vzcy5QVUJMSUNgLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtQWNjZXNzPzogamF2YXNjcmlwdC5OcG1BY2Nlc3M7XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBub2RlIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhpcyBwYWNrYWdlIHRvIGZ1bmN0aW9uLiBNb3N0IHByb2plY3RzIHNob3VsZCBub3QgdXNlIHRoaXMgb3B0aW9uLlxuICAgKiBUaGUgdmFsdWUgaW5kaWNhdGVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW5jb21wYXRpYmxlIHdpdGggYW55IG9sZGVyIHZlcnNpb25zIG9mIG5vZGUuXG4gICAqIFRoaXMgcmVxdWlyZW1lbnQgaXMgZW5mb3JjZWQgdmlhIHRoZSBlbmdpbmVzIGZpZWxkLlxuICAgKlxuICAgKiBZb3Ugd2lsbCBub3JtYWxseSBub3QgbmVlZCB0byBzZXQgdGhpcyBvcHRpb24sIGV2ZW4gaWYgeW91ciBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIEVPTCB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBkZXBlbmRzIG9uIGEgc3BlY2lmaWMgZmVhdHVyZSwgdGhhdCBpcyBub3QgYXZhaWxhYmxlIGluIG90aGVyIExUUyB2ZXJzaW9ucy5cbiAgICogU2V0dGluZyB0aGlzIG9wdGlvbiBoYXMgdmVyeSBoaWdoIGltcGFjdCBvbiB0aGUgY29uc3VtZXJzIG9mIHlvdXIgcGFja2FnZSxcbiAgICogYXMgcGFja2FnZSBtYW5hZ2VycyB3aWxsIGFjdGl2ZWx5IHByZXZlbnQgdXNhZ2Ugd2l0aCBub2RlIHZlcnNpb25zIHlvdSBoYXZlIG1hcmtlZCBhcyBpbmNvbXBhdGlibGUuXG4gICAqXG4gICAqIFRvIGNoYW5nZSB0aGUgbm9kZSB2ZXJzaW9uIG9mIHlvdXIgQ0kvQ0Qgd29ya2Zsb3dzLCB1c2UgYHdvcmtmbG93Tm9kZVZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1pbmltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbWluTm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBub2RlIHZlcnNpb24gc3VwcG9ydGVkIGJ5IHRoaXMgcGFja2FnZS4gTW9zdCBwcm9qZWN0cyBzaG91bGQgbm90IHVzZSB0aGlzIG9wdGlvbi5cbiAgICogVGhlIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIGFueSBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBUaGlzIHJlcXVpcmVtZW50IGlzIGVuZm9yY2VkIHZpYSB0aGUgZW5naW5lcyBmaWVsZC5cbiAgICpcbiAgICogWW91IHdpbGwgbm9ybWFsbHkgbm90IG5lZWQgdG8gc2V0IHRoaXMgb3B0aW9uLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBpcyBrbm93biB0byBub3QgZnVuY3Rpb24gd2l0aCBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1heGltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Tm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgYSBsaWNlbnNlIHNob3VsZCBiZSBhZGRlZC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbGljZW5zZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogTGljZW5zZSdzIFNQRFggaWRlbnRpZmllci5cbiAgICogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZW4vcHJvamVuL3RyZWUvbWFpbi9saWNlbnNlLXRleHQgZm9yIGEgbGlzdCBvZiBzdXBwb3J0ZWQgbGljZW5zZXMuXG4gICAqIFVzZSB0aGUgYGxpY2Vuc2VkYCBvcHRpb24gaWYgeW91IHdhbnQgdG8gbm8gbGljZW5zZSB0byBiZSBzcGVjaWZpZWQuXG4gICAqIEBkZWZhdWx0IFwiQXBhY2hlLTIuMFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuICAvKipcbiAgICogS2V5d29yZHMgdG8gaW5jbHVkZSBpbiBgcGFja2FnZS5qc29uYC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGtleXdvcmRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBIb21lcGFnZSAvIFdlYnNpdGUuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBob21lcGFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE1vZHVsZSBlbnRyeXBvaW50IChgbWFpbmAgaW4gYHBhY2thZ2UuanNvbmApLlxuICAgKiBTZXQgdG8gYW4gZW1wdHkgc3RyaW5nIHRvIG5vdCBpbmNsdWRlIGBtYWluYCBpbiB5b3VyIHBhY2thZ2UuanNvblxuICAgKiBAZGVmYXVsdCBcImxpYi9pbmRleC5qc1wiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBgZGV2RW5naW5lc2AgZmllbGQgaW4gYHBhY2thZ2UuanNvbmAuXG4gICAqIFRoZSBgZGV2RW5naW5lcy5wYWNrYWdlTWFuYWdlcmAgZmllbGQgaXMgYXV0b21hdGljYWxseSBwb3B1bGF0ZWQgYmFzZWQgb25cbiAgICogdGhlIHJlc29sdmVkIGBwYWNrYWdlTWFuYWdlcmAgdmFsdWUuIEFueSBmaWVsZHMgcHJvdmlkZWQgaGVyZSBhcmUgbWVyZ2VkXG4gICAqIHdpdGggdGhlIGF1dG8tcG9wdWxhdGVkIGBwYWNrYWdlTWFuYWdlcmAgZW50cnkuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkZXZFbmdpbmVzPzogamF2YXNjcmlwdC5EZXZFbmdpbmVzO1xuICAvKipcbiAgICogQnVpbGQgZGVwZW5kZW5jaWVzIGZvciB0aGlzIG1vZHVsZS5cbiAgICogVGhlc2UgZGVwZW5kZW5jaWVzIHdpbGwgb25seSBiZVxuICAgKiBhdmFpbGFibGUgaW4geW91ciBidWlsZCBlbnZpcm9ubWVudCBidXQgd2lsbCBub3QgYmUgZmV0Y2hlZCB3aGVuIHRoaXNcbiAgICogbW9kdWxlIGlzIGNvbnN1bWVkLlxuICAgKlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgcG5wbSBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBwbnBtIGFkZGAgb3IgYG5wbSBpYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3VyIGBwYWNrYWdlLmpzb25gIHdpbGwgZXZlbnR1YWxseSBpbmNsdWRlLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGV2RGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gaXMganVzdCBhIHN0cmluZyB0aGF0IGhlbHBzIHBlb3BsZSB1bmRlcnN0YW5kIHRoZSBwdXJwb3NlIG9mIHRoZSBwYWNrYWdlLlxuICAgKiBJdCBjYW4gYmUgdXNlZCB3aGVuIHNlYXJjaGluZyBmb3IgcGFja2FnZXMgaW4gYSBwYWNrYWdlIG1hbmFnZXIgYXMgd2VsbC5cbiAgICogU2VlIGh0dHBzOi8vY2xhc3NpYy55YXJucGtnLmNvbS9lbi9kb2NzL3BhY2thZ2UtanNvbi8jdG9jLWRlc2NyaXB0aW9uXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFJ1bnRpbWUgZGVwZW5kZW5jaWVzIG9mIHRoaXMgbW9kdWxlLlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgcG5wbSBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBwbnBtIGFkZGAgb3IgYG5wbSBpYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3VyIGBwYWNrYWdlLmpzb25gIHdpbGwgZXZlbnR1YWxseSBpbmNsdWRlLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGRlbGV0ZSBsb2NrZmlsZXMgZnJvbSBwYWNrYWdlIG1hbmFnZXJzIHRoYXQgYXJlIG5vdCB0aGUgYWN0aXZlIG9uZS5cbiAgICogT25seSB0cmlnZ2VyZWQgd2hlbiB0aGUgbG9ja2ZpbGUgZm9yIHRoZSBjb25maWd1cmVkIHBhY2thZ2VcbiAgICogbWFuYWdlciBhbHJlYWR5IGV4aXN0cy5cbiAgICpcbiAgICogVGhpcyBpcyB1c2VmdWwgd2hlbiBtaWdyYXRpbmcgYmV0d2VlbiBwYWNrYWdlIG1hbmFnZXJzIHRvIGF2b2lkIGNvbmZsaWN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlT3JwaGFuZWRMb2NrRmlsZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkIGEgYGRlZHVwZWAgdGFzayB0aGF0IGRlZHVwbGljYXRlcyBwcm9qZWN0IGRlcGVuZGVuY2llcy5cbiAgICogRGVkdXBsaWNhdGlvbiBwcmV2ZW50cyBtdWx0aXBsZSB2ZXJzaW9ucyBvZiB0aGUgc2FtZSBwYWNrYWdlIGZyb20gYmVpbmdcbiAgICogaW5zdGFsbGVkLCBpZiBhIHNpbmdsZSB2ZXJzaW9uIGNhbiBzYXRpc2Z5IGFsbCByZXF1ZXN0ZWQgdmVyc2lvbiByYW5nZXMuXG4gICAqIFRoaXMgcHJldmVudHMgdmVyc2lvbiBwcm9saWZlcmF0aW9uIGFuZCByZWR1Y2VzIHRoZSBzaXplIG9mIHRoZSBkZXBlbmRlbmN5XG4gICAqIHRyZWUuXG4gICAqXG4gICAqIFRoZSBiZWhhdmlvciBkZXBlbmRzIG9uIHRoZSBwYWNrYWdlIG1hbmFnZXI6XG4gICAqIC0gbnBtOiBydW5zIGBucG0gZGVkdXBlYCBhZnRlciBldmVyeSBtdXRhdGluZyBpbnN0YWxsLlxuICAgKiAtIHBucG06IHJ1bnMgYHBucG0gZGVkdXBlYCBhZnRlciBldmVyeSBtdXRhdGluZyBpbnN0YWxsLlxuICAgKiAtIFlhcm4gQmVycnk6IHJ1bnMgYHlhcm4gZGVkdXBlYCBhZnRlciBldmVyeSBtdXRhdGluZyBpbnN0YWxsLiBJZlxuICAgKiAgIGB5YXJuQmVycnlPcHRpb25zLmRlZHVwZVBhY2thZ2VzYCBpcyBzZXQsIG9ubHkgdGhlIGxpc3RlZCBwYWNrYWdlcyBhcmVcbiAgICogICBkZWR1cGxpY2F0ZWQuXG4gICAqIC0gWWFybiBDbGFzc2ljOiBgeWFybiBpbnN0YWxsYCBhbHJlYWR5IGRlZHVwbGljYXRlcywgc28gdGhlIHRhc2sgb25seVxuICAgKiAgIHByaW50cyBhbiBpbmZvcm1hdGlvbmFsIG1lc3NhZ2UuXG4gICAqIC0gQnVuOiBub3Qgc3VwcG9ydGVkLCBlbmFibGluZyB0aGlzIG9wdGlvbiB0aHJvd3MgYW4gZXJyb3IuXG4gICAqIEBkZWZhdWx0IC0gZmFsc2UsIHVubGVzcyBgeWFybkJlcnJ5T3B0aW9ucy5kZWR1cGVQYWNrYWdlc2AgaXMgc2V0XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkZWR1cGVEZXBzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gdmFsdWVzIGF2YWlsYWJsZSB0byBwYWNrYWdlIHNjcmlwdHMgYXQgcnVudGltZS5cbiAgICogVmFsdWVzIHNob3VsZCBiZSBKU09OLXNlcmlhbGl6YWJsZS5cbiAgICogQGRlZmF1bHQgLSBubyBwYWNrYWdlIGNvbmZpZ3VyYXRpb25cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBucG0gcGFja2FnZXMgdXNpbmcgQVdTIENvZGVBcnRpZmFjdC5cbiAgICogVGhpcyBpcyByZXF1aXJlZCBpZiBwdWJsaXNoaW5nIHBhY2thZ2VzIHRvLCBvciBpbnN0YWxsaW5nIHNjb3BlZCBwYWNrYWdlcyBmcm9tIEFXUyBDb2RlQXJ0aWZhY3RcbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWRcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVBcnRpZmFjdE9wdGlvbnM/OiBqYXZhc2NyaXB0LkNvZGVBcnRpZmFjdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiBCdW4gdG8gdXNlIGlmIHVzaW5nIEJ1biBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYnVuVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVwZW5kZW5jaWVzIHRvIGJ1bmRsZSBpbnRvIHRoaXMgbW9kdWxlLlxuICAgKiBUaGVzZSBtb2R1bGVzIHdpbGwgYmVcbiAgICogYWRkZWQgYm90aCB0byB0aGUgYGRlcGVuZGVuY2llc2Agc2VjdGlvbiBhbmQgYGJ1bmRsZWREZXBlbmRlbmNpZXNgIHNlY3Rpb24gb2ZcbiAgICogeW91ciBgcGFja2FnZS5qc29uYC5cbiAgICpcbiAgICogVGhlIHJlY29tbWVuZGF0aW9uIGlzIHRvIG9ubHkgc3BlY2lmeSB0aGUgbW9kdWxlIG5hbWUgaGVyZSAoZS5nLlxuICAgKiBgZXhwcmVzc2ApLiBUaGlzIHdpbGwgYmVoYXZlIHNpbWlsYXIgdG8gYHBucG0gYWRkYCBvciBgbnBtIGluc3RhbGxgIGluIHRoZVxuICAgKiBzZW5zZSB0aGF0IGl0IHdpbGwgYWRkIHRoZSBtb2R1bGUgYXMgYSBkZXBlbmRlbmN5IHRvIHlvdXIgYHBhY2thZ2UuanNvbmBcbiAgICogZmlsZSB3aXRoIHRoZSBsYXRlc3QgdmVyc2lvbiAoYF5gKS4gWW91IGNhbiBzcGVjaWZ5IHNlbXZlciByZXF1aXJlbWVudHMgaW5cbiAgICogdGhlIHNhbWUgc3ludGF4IHBhc3NlZCB0byBgcG5wbSBhZGRgIG9yIGBucG0gaWAgKGUuZy4gYGV4cHJlc3NAXjJgKSBhbmRcbiAgICogdGhpcyB3aWxsIGJlIHdoYXQgeW91ciBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsZWREZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSB1cmwgdG8geW91ciBwcm9qZWN0J3MgaXNzdWUgdHJhY2tlci5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgZW1haWwgYWRkcmVzcyB0byB3aGljaCBpc3N1ZXMgc2hvdWxkIGJlIHJlcG9ydGVkLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYnVnc0VtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogQmluYXJ5IHByb2dyYW1zIHZlbmRlZCB3aXRoIHlvdXIgbW9kdWxlLlxuICAgKiBZb3UgY2FuIHVzZSB0aGlzIG9wdGlvbiB0byBhZGQvY3VzdG9taXplIGhvdyBiaW5hcmllcyBhcmUgcmVwcmVzZW50ZWQgaW5cbiAgICogeW91ciBgcGFja2FnZS5qc29uYCwgYnV0IHVubGVzcyBgYXV0b0RldGVjdEJpbmAgaXMgYGZhbHNlYCwgZXZlcnlcbiAgICogZXhlY3V0YWJsZSBmaWxlIHVuZGVyIGBiaW5gIHdpbGwgYXV0b21hdGljYWxseSBiZSBhZGRlZCB0byB0aGlzIHNlY3Rpb24uXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBiaW4/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgYWxsIGV4ZWN1dGFibGVzIHVuZGVyIHRoZSBgYmluYCBkaXJlY3RvcnkgdG8geW91ciBgcGFja2FnZS5qc29uYCBmaWxlIHVuZGVyIHRoZSBgYmluYCBzZWN0aW9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvRGV0ZWN0QmluPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dGhvcidzIFVSTCAvIFdlYnNpdGUuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRob3JVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJcyB0aGUgYXV0aG9yIGFuIG9yZ2FuaXphdGlvbi5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvck9yZ2FuaXphdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRob3IncyBuYW1lLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcidzIGUtbWFpbC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvckVtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogTGlzdCBvZiBkZXBlbmRlbmN5IChwYWNrYWdlKSBuYW1lcyB0aGF0IGFyZSBhbGxvd2VkIHRvIHJ1biBsaWZlY3ljbGUgaW5zdGFsbCBzY3JpcHRzIChgcHJlaW5zdGFsbGAsIGBpbnN0YWxsYCwgYHBvc3RpbnN0YWxsYCwgYHByZXBhcmVgKSBkdXJpbmcgZGVwZW5kZW5jeSBpbnN0YWxsYXRpb24uXG4gICAqIFRoZXNlIHNjcmlwdHMgY2FuIGV4ZWN1dGUgYXJiaXRyYXJ5IGNvZGUsIG1ha2luZyB0aGVtIGEgY29tbW9uXG4gICAqIHN1cHBseS1jaGFpbiBhdHRhY2sgdmVjdG9yLiBQYWNrYWdlIG1hbmFnZXJzIGFyZSBtb3ZpbmcgdG93YXJkXG4gICAqIGJsb2NraW5nIHRoZW0gYnkgZGVmYXVsdCBhbmQgcmVxdWlyaW5nIGFuIGV4cGxpY2l0IGFsbG93bGlzdC5cbiAgICogQ29uZmlndXJpbmcgYGFsbG93U2NyaXB0c2Agc2V0cyB1cCB0aGF0IGFsbG93bGlzdCBzbyBzY3JpcHRzIG9ubHkgcnVuXG4gICAqIGZvciB0aGUgcGFja2FnZXMgeW91IGhhdmUgZXhwbGljaXRseSByZXZpZXdlZCBhbmQgdHJ1c3QuXG4gICAqXG4gICAqIFN1cHBvcnQgZm9yIHRoaXMgc2V0dGluZyBkZXBlbmRzIG9uIHRoZSBjb25maWd1cmVkIGBwYWNrYWdlTWFuYWdlcmA6XG4gICAqXG4gICAqIC0gYE5QTWA6IHdyaXR0ZW4gdG8gdGhlIG5hdGl2ZSBgYWxsb3dTY3JpcHRzYCBmaWVsZCBpbiBgcGFja2FnZS5qc29uYFxuICAgKiAgIChyZXF1aXJlcyBucG0gPj0gMTEuMTY7IHNlZSBodHRwczovL2RvY3MubnBtanMuY29tL2NsaS92MTEvY29tbWFuZHMvbnBtLWFwcHJvdmUtc2NyaXB0cykuXG4gICAqIC0gYEJVTmA6IHdyaXR0ZW4gdG8gdGhlIG5hdGl2ZSBgdHJ1c3RlZERlcGVuZGVuY2llc2AgZmllbGQgaW5cbiAgICogICBgcGFja2FnZS5qc29uYCAoc2VlIGh0dHBzOi8vYnVuLmNvbS9kb2NzL3BtL2xpZmVjeWNsZSkuXG4gICAqIC0gYFBOUE1gOiB3cml0dGVuIHRvIHRoZSBgb25seUJ1aWx0RGVwZW5kZW5jaWVzYCBzZXR0aW5nIGluXG4gICAqICAgYHBucG0td29ya3NwYWNlLnlhbWxgIChzZWUgaHR0cHM6Ly9wbnBtLmlvL3NldHRpbmdzI29ubHlidWlsdGRlcGVuZGVuY2llcykuXG4gICAqIC0gYFlBUk4yYCwgYFlBUk5fQkVSUllgOiB3cml0dGVuIHRvIHRoZSBuYXRpdmVcbiAgICogICBgZGVwZW5kZW5jaWVzTWV0YS48cGtnPi5idWlsdGAgYWxsb3dsaXN0IGluIGBwYWNrYWdlLmpzb25gLCBjb21iaW5lZFxuICAgKiAgIHdpdGggYGVuYWJsZVNjcmlwdHM6IGZhbHNlYCBpbiBgLnlhcm5yYy55bWxgIChzZWVcbiAgICogICBodHRwczovL3lhcm5wa2cuY29tL2ZlYXR1cmVzL3NlY3VyaXR5I3Bvc3RpbnN0YWxscykuIElmIHlvdSBzZXRcbiAgICogICBgeWFybkJlcnJ5T3B0aW9ucy55YXJuUmNPcHRpb25zLmVuYWJsZVNjcmlwdHNgIGV4cGxpY2l0bHksIHRoYXQgdmFsdWVcbiAgICogICBpcyByZXNwZWN0ZWQgaW5zdGVhZCBvZiBiZWluZyBvdmVycmlkZGVuLlxuICAgKiAtIGBZQVJOYCwgYFlBUk5fQ0xBU1NJQ2A6IG5vdCBzdXBwb3J0ZWQuIFlhcm4gQ2xhc3NpYyBoYXMgbm8gbmF0aXZlXG4gICAqICAgbWVjaGFuaXNtIHRvIGFsbG93bGlzdCBpbnN0YWxsIHNjcmlwdHMgZm9yIHNwZWNpZmljIGRlcGVuZGVuY2llcy5cbiAgICogICBTZXR0aW5nIHRoaXMgb3B0aW9uIHdpdGggb25lIG9mIHRoZXNlIHBhY2thZ2UgbWFuYWdlcnMgdGhyb3dzIGFuXG4gICAqICAgZXJyb3IgYXQgc3ludGhlc2lzIHRpbWUuXG4gICAqIEBkZWZhdWx0IC0gYWxsIGluc3RhbGwgc2NyaXB0cyBhcmUgYWxsb3dlZCB0byBydW4gKHBhY2thZ2UgbWFuYWdlciBkZWZhdWx0KVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dTY3JpcHRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEFsbG93IHRoZSBwcm9qZWN0IHRvIGluY2x1ZGUgYHBlZXJEZXBlbmRlbmNpZXNgIGFuZCBgYnVuZGxlZERlcGVuZGVuY2llc2AuXG4gICAqIFRoaXMgaXMgbm9ybWFsbHkgb25seSBhbGxvd2VkIGZvciBsaWJyYXJpZXMuIEZvciBhcHBzLCB0aGVyZSdzIG5vIG1lYW5pbmdcbiAgICogZm9yIHNwZWNpZnlpbmcgdGhlc2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGFsbG93TGlicmFyeURlcGVuZGVuY2llcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFkZCB0aGUgcmVzb2x2ZWQgYHBhY2thZ2VNYW5hZ2VyYCB0byBgZGV2RW5naW5lcy5wYWNrYWdlTWFuYWdlcmAgaW4gYHBhY2thZ2UuanNvbmAsIHNldHRpbmcgYG9uRmFpbGAgdG8gYGlnbm9yZWAuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGFkZFBhY2thZ2VNYW5hZ2VyVG9EZXZFbmdpbmVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBWU0NvZGUgaW50ZWdyYXRpb24uXG4gICAqIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3Igcm9vdCBwcm9qZWN0cy4gRGlzYWJsZWQgZm9yIG5vbi1yb290IHByb2plY3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2c2NvZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0by1jbG9zZSBzdGFsZSBpc3N1ZXMgYW5kIHB1bGwgcmVxdWVzdHMuXG4gICAqIFRvIGRpc2FibGUgc2V0IGBzdGFsZWAgdG8gYGZhbHNlYC5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYFN0YWxlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHN0YWxlT3B0aW9ucz86IGdpdGh1Yi5TdGFsZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIG9mIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0LlxuICAgKiBTZWUgYHN0YWxlT3B0aW9uc2AgZm9yIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzdGFsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9mIHRoZSBSRUFETUUubWQgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG1lPzogUmVhZG1lT3B0aW9ucztcbiAgLyoqXG4gICAqIENob29zZSBhIG1ldGhvZCBvZiBwcm92aWRpbmcgR2l0SHViIEFQSSBhY2Nlc3MgZm9yIHByb2plbiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gdXNlIGEgcGVyc29uYWwgYWNjZXNzIHRva2VuIG5hbWVkIFBST0pFTl9HSVRIVUJfVE9LRU5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNyZWRlbnRpYWxzPzogZ2l0aHViLkdpdGh1YkNyZWRlbnRpYWxzO1xuICAvKipcbiAgICogQWRkIGEgR2l0cG9kIGRldmVsb3BtZW50IGVudmlyb25tZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0cG9kPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogQGRlZmF1bHQgLSBzZWUgR2l0SHViT3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViT3B0aW9ucz86IGdpdGh1Yi5HaXRIdWJPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogRW5hYmxlZCBieSBkZWZhdWx0IGZvciByb290IHByb2plY3RzLiBEaXNhYmxlZCBmb3Igbm9uLXJvb3QgcHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1Yj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBWU0NvZGUgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgKHVzZWQgZm9yIEdpdEh1YiBDb2Rlc3BhY2VzKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRldkNvbnRhaW5lcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBgY2xvYmJlcmAgdGFzayB3aGljaCByZXNldHMgdGhlIHJlcG8gdG8gb3JpZ2luLlxuICAgKiBAZGVmYXVsdCAtIHRydWUsIGJ1dCBmYWxzZSBmb3Igc3VicHJvamVjdHNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNsb2JiZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIG9wdGlvbnMgZm9yIGF1dG9tYXRpYyBtZXJnaW5nIG9uIEdpdEh1Yi5cbiAgICogSGFzIG5vIGVmZmVjdCBpZlxuICAgKiBgZ2l0aHViLm1lcmdpZnlgIG9yIGBhdXRvTWVyZ2VgIGlzIHNldCB0byBmYWxzZS5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYEF1dG9NZXJnZU9wdGlvbnNgXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2VPcHRpb25zPzogZ2l0aHViLkF1dG9NZXJnZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBFbmFibGUgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmIGBnaXRodWIubWVyZ2lmeWBcbiAgICogaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2U/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGFuZCBjb25maWd1cmUgdGhlICdhdXRvIGFwcHJvdmUnIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCAtIGF1dG8gYXBwcm92ZSBpcyBkaXNhYmxlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVPcHRpb25zPzogZ2l0aHViLkF1dG9BcHByb3ZlT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHJlbm92YXRlYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3RPcHRpb25zPzogUmVub3ZhdGVib3RPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHJlbm92YXRlYm90IHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb25PcHRpb25zPzogUHJvamVucmNKc29uT3B0aW9ucztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanNvbiAoaW4gSlNPTikuIFNldCB0byBgZmFsc2VgIGluIG9yZGVyIHRvIGRpc2FibGUgLnByb2plbnJjLmpzb24gZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgc2hlbGwgY29tbWFuZCB0byB1c2UgaW4gb3JkZXIgdG8gcnVuIHRoZSBwcm9qZW4gQ0xJLlxuICAgKiBJbnNlcnRlZCB2ZXJiYXRpbSBpbnRvIHRhc2sgc3RlcHMsIHdvcmtmbG93cyBhbmQgSURFIGNvbmZpZ3VyYXRpb24sIGFuZCBydW5cbiAgICogYnkgZWFjaCBvZiB0aGVpciBzaGVsbHMgLSBsb2NhbGx5LCBpbiBDSSBhbmQgaW4gZGV2IGNvbnRhaW5lcnMuIEtlZXAgaXQgYVxuICAgKiBwbGFpbiB1bnF1b3RlZCBjb21tYW5kLCBzaW5jZSBzaGVsbCBzeW50YXggaW4gaXQgZXhlY3V0ZXMgaW4gYWxsIG9mIHRoZW0uXG4gICAqXG4gICAqIENhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSBpbiBzcGVjaWFsIGVudmlyb25tZW50cy5cbiAgICogQGRlZmF1bHQgXCJucHggcHJvamVuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHByb2plY3QgdHJlZSBmaWxlIChgLnByb2plbi90cmVlLmpzb25gKSB0aGF0IHNob3dzIGFsbCBjb21wb25lbnRzIGFuZCB0aGVpciByZWxhdGlvbnNoaXBzLiBVc2VmdWwgZm9yIHVuZGVyc3RhbmRpbmcgeW91ciBwcm9qZWN0IHN0cnVjdHVyZSBhbmQgZGVidWdnaW5nLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdFRyZWU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHBhcmVudCBwcm9qZWN0LCBpZiB0aGlzIHByb2plY3QgaXMgcGFydCBvZiBhIGJpZ2dlciBwcm9qZWN0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50PzogUHJvamVjdDtcbiAgLyoqXG4gICAqIFRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICogUmVsYXRpdmUgdG8gdGhpcyBkaXJlY3RvcnksIGFsbCBmaWxlcyBhcmUgc3ludGhlc2l6ZWQuXG4gICAqXG4gICAqIElmIHRoaXMgcHJvamVjdCBoYXMgYSBwYXJlbnQsIHRoaXMgZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgICogZGlyZWN0b3J5IGFuZCBpdCBjYW5ub3QgYmUgdGhlIHNhbWUgYXMgdGhlIHBhcmVudCBvciBhbnkgb2YgaXQncyBvdGhlclxuICAgKiBzdWJwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgXCIuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG91dGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBsb2dnaW5nIG9wdGlvbnMgc3VjaCBhcyB2ZXJib3NpdHkuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsb2dnaW5nPzogTG9nZ2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgZ2l0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0T3B0aW9ucz86IEdpdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5naXRpZ25vcmUgZmlsZS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdElnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gY29tbWl0IHRoZSBtYW5hZ2VkIGZpbGVzIGJ5IGRlZmF1bHQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvbW1pdEdlbmVyYXRlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGlzIHRoZSBuYW1lIG9mIHlvdXIgcHJvamVjdC5cbiAgICogQGRlZmF1bHQgJEJBU0VESVJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIExpc3Qgb2YgdGVhbXMgdXNlZCB0byBnZW5lcmF0ZSB0aGUgQ09ERU9XTkVSUyBmaWxlXG4gICAqL1xuICByZWFkb25seSBjb2RlT3duZXJzOiBBcnJheTxzdHJpbmc+O1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnBtLXBhY2thZ2Utb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9qZWN0cy9ucG0vbnBtLXBhY2thZ2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBnaXRodWIsIEdpdE9wdGlvbnMsIEdyb3VwUnVubmVyT3B0aW9ucywgSWdub3JlRmlsZU9wdGlvbnMsIGphdmFzY3JpcHQsIExvZ2dlck9wdGlvbnMsIFByb2plY3QsIFByb2plbnJjSnNvbk9wdGlvbnMsIFJlbGVhc2FibGVDb21taXRzLCByZWxlYXNlLCBSZW5vdmF0ZWJvdE9wdGlvbnMsIHR5cGVzY3JpcHQgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHR5cGUgeyBSZWFkbWVPcHRpb25zIH0gZnJvbSAnLi4vLi4vJztcblxuLyoqXG4gKiBOcG1QYWNrYWdlT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE5wbVBhY2thZ2VPcHRpb25zIHtcbiAgLyoqXG4gICAqIFR5cGVTY3JpcHQgdmVyc2lvbiB0byB1c2UuXG4gICAqIE5PVEU6IFR5cGVzY3JpcHQgaXMgbm90IHNlbWFudGljYWxseSB2ZXJzaW9uZWQgYW5kIHNob3VsZCByZW1haW4gb24gdGhlXG4gICAqIHNhbWUgbWlub3IsIHNvIHdlIHJlY29tbWVuZCB1c2luZyBhIGB+YCBkZXBlbmRlbmN5IChlLmcuIGB+MS4yLjNgKS5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXNjcmlwdFZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUeXBlLWNoZWNrIHRoZSB0ZXN0IHN1aXRlIGFzIHBhcnQgb2YgdGhlIGB0ZXN0YCB0YXNrLlxuICAgKiBBZGRzIGEgYHRzYyAtLW5vRW1pdGAgc3RlcCBhZ2FpbnN0IHRoZSBkZXZlbG9wbWVudCB0c2NvbmZpZy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVjaGVja1Rlc3RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHRzLWplc3QuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB0c0plc3RPcHRpb25zPzogdHlwZXNjcmlwdC5Uc0plc3RPcHRpb25zO1xuICAvKipcbiAgICogVGhlIG5hbWUgKGFuZCBwYXRoKSBvZiB0aGUgZGV2ZWxvcG1lbnQgdHNjb25maWcgZmlsZS5cbiAgICogQnkgZGVmYXVsdCB0aGlzIGxpdmVzIGluc2lkZSB0aGUgdGVzdCBkaXJlY3RvcnkgKGUuZy4gYHRlc3QvdHNjb25maWcuanNvbmApXG4gICAqIHNvIHRoYXQgdGhlIFR5cGVTY3JpcHQgbGFuZ3VhZ2Ugc2VydmljZSByZXNvbHZlcyBpdCBhcyB0aGUgbmVhcmVzdCBjb25maWdcbiAgICogZm9yIHRlc3QgZmlsZXMuXG4gICAqIEBkZWZhdWx0IC0gXCJ7dGVzdGRpcn0vdHNjb25maWcuanNvblwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB0c2NvbmZpZ0RldkZpbGU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBDdXN0b20gdHNjb25maWcgb3B0aW9ucyBmb3IgdGhlIGRldmVsb3BtZW50IHRzY29uZmlnLmpzb24gZmlsZSAodXNlZCBmb3IgdGVzdGluZykuXG4gICAqIEBkZWZhdWx0IC0gdXNlIHRoZSBwcm9kdWN0aW9uIHRzY29uZmlnIG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnRGV2PzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEN1c3RvbSBUU0NvbmZpZy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHRzY29uZmlnPzogamF2YXNjcmlwdC5UeXBlc2NyaXB0Q29uZmlnT3B0aW9ucztcbiAgLyoqXG4gICAqIEplc3QgdGVzdHMgZGlyZWN0b3J5LiBUZXN0cyBmaWxlcyBzaG91bGQgYmUgbmFtZWQgYHh4eC50ZXN0LnRzYC5cbiAgICogSWYgdGhpcyBkaXJlY3RvcnkgaXMgdW5kZXIgYHNyY2RpcmAgKGUuZy4gYHNyYy90ZXN0YCwgYHNyYy9fX3Rlc3RzX19gKSxcbiAgICogdGhlbiB0ZXN0cyBhcmUgZ29pbmcgdG8gYmUgY29tcGlsZWQgaW50byBgbGliL2AgYW5kIGV4ZWN1dGVkIGFzIGphdmFzY3JpcHQuXG4gICAqIElmIHRoZSB0ZXN0IGRpcmVjdG9yeSBpcyBvdXRzaWRlIG9mIGBzcmNgLCB0aGVuIHdlIGNvbmZpZ3VyZSBqZXN0IHRvXG4gICAqIGNvbXBpbGUgdGhlIGNvZGUgaW4tbWVtb3J5LlxuICAgKiBAZGVmYXVsdCBcInRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgc291cmNlcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwic3JjXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHNyY2Rpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIG9uZS10aW1lIHNhbXBsZSBpbiBgc3JjL2AgYW5kIGB0ZXN0L2AgaWYgdGhlcmUgYXJlIG5vIGZpbGVzIHRoZXJlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzYW1wbGVDb2RlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBUeXBlU2NyaXB0IHJ1bm5lciB0byB1c2UgZm9yIGV4ZWN1dGluZyBUeXBlU2NyaXB0IGZpbGVzLlxuICAgKiBUaGlzIGlzIGEgcHJvamVjdC1sZXZlbCBzZXR0aW5nIHRoYXQgY29tcG9uZW50cyAoZS5nLiBwcm9qZW5yYykgd2lsbFxuICAgKiB1c2UgYXMgdGhlaXIgZGVmYXVsdCBydW5uZXIuXG4gICAqIEBkZWZhdWx0IFR5cGVTY3JpcHRSdW5uZXIudHNOb2RlKClcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJ1bm5lcj86IHR5cGVzY3JpcHQuVHlwZVNjcmlwdFJ1bm5lcjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIC5wcm9qZW5yYy50cy5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjVHNPcHRpb25zPzogdHlwZXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgVHlwZVNjcmlwdCBmb3IgeW91ciBwcm9qZW5yYyBmaWxlIChgLnByb2plbnJjLnRzYCkuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBwam5ldyB0cnVlXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFR5cGVzY3JpcHQgIGFydGlmYWN0cyBvdXRwdXQgZGlyZWN0b3J5LlxuICAgKiBAZGVmYXVsdCBcImxpYlwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsaWJkaXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFc2xpbnQgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBvcGluaW9uYXRlZCBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGVzbGludE9wdGlvbnM/OiBqYXZhc2NyaXB0LkVzbGludE9wdGlvbnM7XG4gIC8qKlxuICAgKiBTZXR1cCBlc2xpbnQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgdW5sZXNzIGJpb21lIGlzIGVuYWJsZWRcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGVzbGludD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgLmQudHMgZmlsZSB0aGF0IGluY2x1ZGVzIHRoZSB0eXBlIGRlY2xhcmF0aW9ucyBmb3IgdGhpcyBtb2R1bGUuXG4gICAqIEBkZWZhdWx0IC0gLmQudHMgZmlsZSBkZXJpdmVkIGZyb20gdGhlIHByb2plY3QncyBlbnRyeXBvaW50ICh1c3VhbGx5IGxpYi9pbmRleC5kLnRzKVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZW50cnlwb2ludFR5cGVzPzogc3RyaW5nO1xuICAvKipcbiAgICogRG9jcyBkaXJlY3RvcnkuXG4gICAqIEBkZWZhdWx0IFwiZG9jc1wiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkb2NzRGlyZWN0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogRG9jZ2VuIGJ5IFR5cGVkb2MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkb2NnZW4/OiBib29sZWFuO1xuICAvKipcbiAgICogRG8gbm90IGdlbmVyYXRlIGEgZGV2ZWxvcG1lbnQgdHNjb25maWcgZmlsZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZ0Rldj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBEbyBub3QgZ2VuZXJhdGUgYSBgdHNjb25maWcuanNvbmAgZmlsZSAodXNlZCBieSBqc2lpIHByb2plY3RzIHNpbmNlIHRzY29uZmlnLmpzb24gaXMgZ2VuZXJhdGVkIGJ5IHRoZSBqc2lpIGNvbXBpbGVyKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRpc2FibGVUc2NvbmZpZz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBFbmFibGUgTm9kZS5qcyBwYWNrYWdlIGNhY2hlIGluIEdpdEh1YiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1BhY2thZ2VDYWNoZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgbm9kZSB2ZXJzaW9uIHVzZWQgaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKiBBbHdheXMgdXNlIHRoaXMgb3B0aW9uIGlmIHlvdXIgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzIHJlcXVpcmUgYSBzcGVjaWZpYyB0byBydW4uXG4gICAqIEBkZWZhdWx0IC0gYG1pbk5vZGVWZXJzaW9uYCBpZiBzZXQsIG90aGVyd2lzZSBgbHRzLypgLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dOb2RlVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBnaXQgaWRlbnRpdHkgdG8gdXNlIGluIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IEdpdEh1YiBBY3Rpb25zIHVzZXJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHdvcmtmbG93R2l0SWRlbnRpdHk/OiBnaXRodWIuR2l0SWRlbnRpdHk7XG4gIC8qKlxuICAgKiBXb3JrZmxvdyBzdGVwcyB0byB1c2UgaW4gb3JkZXIgdG8gYm9vdHN0cmFwIHRoaXMgcmVwby5cbiAgICogQGRlZmF1bHQgXCJ5YXJuIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUgJiYgeWFybiBwcm9qZW5cIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dCb290c3RyYXBTdGVwcz86IEFycmF5PGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcD47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IHJlbGVhc2UgdG8gbnBtIHdoZW4gbmV3IHZlcnNpb25zIGFyZSBpbnRyb2R1Y2VkLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRvTnBtPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEFkZCByZWxlYXNlIG1hbmFnZW1lbnQgdG8gdGhpcyBwcm9qZWN0LlxuICAgKiBAZGVmYXVsdCAtIHRydWUgKGZhbHNlIGZvciBzdWJwcm9qZWN0cylcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2U/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGNvbnRlbnRzIG9mIHRoZSBwdWxsIHJlcXVlc3QgdGVtcGxhdGUuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBjb250ZW50XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlQ29udGVudHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogSW5jbHVkZSBhIEdpdEh1YiBwdWxsIHJlcXVlc3QgdGVtcGxhdGUuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0VGVtcGxhdGU/OiBib29sZWFuO1xuICAvKipcbiAgICogVmVyc2lvbiBvZiBwcm9qZW4gdG8gaW5zdGFsbC5cbiAgICogQGRlZmF1bHQgLSBEZWZhdWx0cyB0byB0aGUgbGF0ZXN0IHZlcnNpb24uXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNKc09wdGlvbnM/OiBqYXZhc2NyaXB0LlByb2plbnJjT3B0aW9ucztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanMgKGluIEphdmFTY3JpcHQpLiBTZXQgdG8gYGZhbHNlYCBpbiBvcmRlciB0byBkaXNhYmxlIC5wcm9qZW5yYy5qcyBnZW5lcmF0aW9uLlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgcHJvamVucmNKc29uIGlzIGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEluZGljYXRlcyBvZiBcInByb2plblwiIHNob3VsZCBiZSBpbnN0YWxsZWQgYXMgYSBkZXZEZXBlbmRlbmN5LlxuICAgKiBAZGVmYXVsdCAtIHRydWUgaWYgbm90IGEgc3VicHJvamVjdFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVuRGV2RGVwZW5kZW5jeT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQcmV0dGllciBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJldHRpZXJPcHRpb25zPzogamF2YXNjcmlwdC5QcmV0dGllck9wdGlvbnM7XG4gIC8qKlxuICAgKiBTZXR1cCBwcmV0dGllci5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByZXR0aWVyPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIERlZmluZXMgYSBgcGFja2FnZWAgdGFzayB0aGF0IHdpbGwgcHJvZHVjZSBhbiBucG0gdGFyYmFsbCB1bmRlciB0aGUgYXJ0aWZhY3RzIGRpcmVjdG9yeSAoZS5nLiBgZGlzdGApLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgLm5wbWlnbm9yZSBmaWxlLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtSWdub3JlT3B0aW9ucz86IElnbm9yZUZpbGVPcHRpb25zO1xuICAvKipcbiAgICogRGVmaW5lcyBhbiAubnBtaWdub3JlIGZpbGUuIE5vcm1hbGx5IHRoaXMgaXMgb25seSBuZWVkZWQgZm9yIGxpYnJhcmllcyB0aGF0IGFyZSBwYWNrYWdlZCBhcyB0YXJiYWxscy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtaWdub3JlRW5hYmxlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBKZXN0IG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBqZXN0T3B0aW9ucz86IGphdmFzY3JpcHQuSmVzdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBTZXR1cCBqZXN0IHVuaXQgdGVzdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGplc3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBlbnRyaWVzIHRvIC5naXRpZ25vcmUuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBnaXRpZ25vcmU/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYFVwZ3JhZGVEZXBlbmRlbmNpZXNgLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZGVwc1VwZ3JhZGVPcHRpb25zPzogamF2YXNjcmlwdC5VcGdyYWRlRGVwZW5kZW5jaWVzT3B0aW9ucztcbiAgLyoqXG4gICAqIFVzZSB0YXNrcyBhbmQgZ2l0aHViIHdvcmtmbG93cyB0byBoYW5kbGUgZGVwZW5kZW5jeSB1cGdyYWRlcy5cbiAgICogQ2Fubm90IGJlIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBgZGVwZW5kYWJvdGAuXG4gICAqIEBkZWZhdWx0IC0gYHRydWVgIGZvciByb290IHByb2plY3RzLCBgZmFsc2VgIGZvciBzdWJwcm9qZWN0c1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZGVwc1VwZ3JhZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgZGVwZW5kYWJvdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3RPcHRpb25zPzogZ2l0aHViLkRlcGVuZGFib3RPcHRpb25zO1xuICAvKipcbiAgICogVXNlIGRlcGVuZGFib3QgdG8gaGFuZGxlIGRlcGVuZGVuY3kgdXBncmFkZXMuXG4gICAqIENhbm5vdCBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYGRlcHNVcGdyYWRlYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRlcGVuZGFib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG1haW4gcmVsZWFzZSBicmFuY2guXG4gICAqIEBkZWZhdWx0IFwibWFpblwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0UmVsZWFzZUJyYW5jaD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBjb3B5cmlnaHQgeWVhcnMgdG8gcHV0IGluIHRoZSBMSUNFTlNFIGZpbGUuXG4gICAqIFRoaXMgdmFsdWUgaXMgb25seSB1c2VkIGlmIHRoZSBzZWxlY3RlZCBsaWNlbnNlIHRleHQgY29udGFpbnMgdGhlXG4gICAqIGAkY29weXJpZ2h0X3BlcmlvZGAgcGxhY2Vob2xkZXIuIEZvciBleGFtcGxlLCBpdCBoYXMgbm8gZWZmZWN0IG9uIHRoZVxuICAgKiBNUEwtMi4wIGxpY2Vuc2UgdGV4dC5cbiAgICogQGRlZmF1bHQgLSBjdXJyZW50IHllYXJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvcHlyaWdodFBlcmlvZD86IHN0cmluZztcbiAgLyoqXG4gICAqIExpY2Vuc2UgY29weXJpZ2h0IG93bmVyLlxuICAgKiBUaGlzIHZhbHVlIGlzIG9ubHkgdXNlZCBpZiB0aGUgc2VsZWN0ZWQgbGljZW5zZSB0ZXh0IGNvbnRhaW5zIHRoZVxuICAgKiBgJGNvcHlyaWdodF9vd25lcmAgcGxhY2Vob2xkZXIuIEZvciBleGFtcGxlLCBpdCBoYXMgbm8gZWZmZWN0IG9uIHRoZVxuICAgKiBNUEwtMi4wIGxpY2Vuc2UgdGV4dC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0cyB0byB0aGUgdmFsdWUgb2YgYXV0aG9yTmFtZSBvciBcIlwiIGlmIGBhdXRob3JOYW1lYCBpcyB1bmRlZmluZWQuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBjb3B5cmlnaHRPd25lcj86IHN0cmluZztcbiAgLyoqXG4gICAqIERlZmluZSB0aGUgc2VjcmV0IG5hbWUgZm9yIGEgc3BlY2lmaWVkIGh0dHBzOi8vY29kZWNvdi5pby8gdG9rZW4uXG4gICAqIEBkZWZhdWx0IC0gT0lEQyBhdXRoIGlzIHVzZWRcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVDb3ZUb2tlblNlY3JldD86IHN0cmluZztcbiAgLyoqXG4gICAqIERlZmluZSBhIEdpdEh1YiB3b3JrZmxvdyBzdGVwIGZvciBzZW5kaW5nIGNvZGUgY292ZXJhZ2UgbWV0cmljcyB0byBodHRwczovL2NvZGVjb3YuaW8vLlxuICAgKiBVc2VzIGNvZGVjb3YvY29kZWNvdi1hY3Rpb24uIEJ5IGRlZmF1bHQsIE9JREMgYXV0aCBpcyB1c2VkLlxuICAgKiBBbHRlcm5hdGl2ZWx5IGEgdG9rZW4gY2FuIGJlIHByb3ZpZGVkIHZpYSBgY29kZUNvdlRva2VuU2VjcmV0YC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVDb3Y/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIHdoaWNoIGxpY2Vuc2VzIHNob3VsZCBiZSBkZWVtZWQgYWNjZXB0YWJsZSBmb3IgdXNlIGJ5IGRlcGVuZGVuY2llcy5cbiAgICogVGhpcyBzZXR0aW5nIHdpbGwgY2F1c2UgdGhlIGJ1aWxkIHRvIGZhaWwsIGlmIGFueSBwcm9oaWJpdGVkIG9yIG5vdCBhbGxvd2VkIGxpY2Vuc2VzIGFyZXMgZW5jb3VudGVyZWQuXG4gICAqIEBkZWZhdWx0IC0gbm8gbGljZW5zZSBjaGVja3MgYXJlIHJ1biBkdXJpbmcgdGhlIGJ1aWxkIGFuZCBhbGwgbGljZW5zZXMgd2lsbCBiZSBhY2NlcHRlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgY2hlY2tMaWNlbnNlcz86IGphdmFzY3JpcHQuTGljZW5zZUNoZWNrZXJPcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYEJ1bmRsZXJgLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYnVuZGxlck9wdGlvbnM/OiBqYXZhc2NyaXB0LkJ1bmRsZXJPcHRpb25zO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgUFIgYnVpbGQgd29ya2Zsb3cuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBidWlsZFdvcmtmbG93T3B0aW9ucz86IGphdmFzY3JpcHQuQnVpbGRXb3JrZmxvd09wdGlvbnM7XG4gIC8qKlxuICAgKiBEZWZpbmUgYSBHaXRIdWIgd29ya2Zsb3cgZm9yIGJ1aWxkaW5nIFBScy5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGlmIG5vdCBhIHN1YnByb2plY3RcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkV29ya2Zsb3c/OiBib29sZWFuO1xuICAvKipcbiAgICogQmlvbWUgb3B0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJpb21lT3B0aW9ucz86IGphdmFzY3JpcHQuQmlvbWVPcHRpb25zO1xuICAvKipcbiAgICogU2V0dXAgQmlvbWUuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBiaW9tZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFwcHJvdmUgZGVwcyB1cGdyYWRlIFBScywgYWxsb3dpbmcgdGhlbSB0byBiZSBtZXJnZWQgYnkgbWVyZ2lmeSAoaWYgY29uZmlndXJlZCkuXG4gICAqIFRocm93IGlmIHNldCB0byB0cnVlIGJ1dCBgYXV0b0FwcHJvdmVPcHRpb25zYCBhcmUgbm90IGRlZmluZWQuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVVcGdyYWRlcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTZWN1cml0eSBhdWRpdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXVkaXREZXBzT3B0aW9ucz86IGphdmFzY3JpcHQuQXVkaXRPcHRpb25zO1xuICAvKipcbiAgICogUnVuIHNlY3VyaXR5IGF1ZGl0IG9uIGRlcGVuZGVuY2llcy5cbiAgICogV2hlbiBlbmFibGVkLCBjcmVhdGVzIGFuIFwiYXVkaXRcIiB0YXNrIHRoYXQgY2hlY2tzIGZvciBrbm93biBzZWN1cml0eSB2dWxuZXJhYmlsaXRpZXNcbiAgICogaW4gZGVwZW5kZW5jaWVzLiBCeSBkZWZhdWx0LCBydW5zIGR1cmluZyBldmVyeSBidWlsZCBhbmQgY2hlY2tzIGZvciBcImhpZ2hcIiBzZXZlcml0eVxuICAgKiB2dWxuZXJhYmlsaXRpZXMgb3IgYWJvdmUgaW4gYWxsIGRlcGVuZGVuY2llcyAoaW5jbHVkaW5nIGRldiBkZXBlbmRlbmNpZXMpLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXVkaXREZXBzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEEgZGlyZWN0b3J5IHdoaWNoIHdpbGwgY29udGFpbiBidWlsZCBhcnRpZmFjdHMuXG4gICAqIEBkZWZhdWx0IFwiZGlzdFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhcnRpZmFjdHNEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHaXRodWIgUnVubmVyIEdyb3VwIHNlbGVjdGlvbiBvcHRpb25zLlxuICAgKiBAZGVwcmVjYXRlZCB1c2UgYGdpdGh1Yk9wdGlvbnMud29ya2Zsb3dSdW5zT25Hcm91cGAgb24gdGhlIHByb2plY3QsIG9yIGBydW5zT25Hcm91cGAgb24gYFJlbGVhc2VPcHRpb25zYFxuICAgKiBAc3RhYmlsaXR5IGRlcHJlY2F0ZWRcbiAgICogQGRlc2NyaXB0aW9uIERlZmluZXMgYSB0YXJnZXQgUnVubmVyIEdyb3VwIGJ5IG5hbWUgYW5kL29yIGxhYmVsc1xuICAgKiBAdGhyb3dzIHtFcnJvcn0gaWYgYm90aCBgcnVuc09uYCBhbmQgYHJ1bnNPbkdyb3VwYCBhcmUgc3BlY2lmaWVkXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd1J1bnNPbkdyb3VwPzogR3JvdXBSdW5uZXJPcHRpb25zO1xuICAvKipcbiAgICogR2l0aHViIFJ1bm5lciBzZWxlY3Rpb24gbGFiZWxzLlxuICAgKiBAZGVmYXVsdCBbXCJ1YnVudHUtbGF0ZXN0XCJdXG4gICAqIEBkZXByZWNhdGVkIHVzZSBgZ2l0aHViT3B0aW9ucy53b3JrZmxvd1J1bnNPbmAgb24gdGhlIHByb2plY3QsIG9yIGBydW5zT25gIG9uIGBSZWxlYXNlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBkZXByZWNhdGVkXG4gICAqIEBkZXNjcmlwdGlvbiBEZWZpbmVzIGEgdGFyZ2V0IFJ1bm5lciBieSBsYWJlbHNcbiAgICogQHRocm93cyB7RXJyb3J9IGlmIGJvdGggYHJ1bnNPbmAgYW5kIGBydW5zT25Hcm91cGAgYXJlIHNwZWNpZmllZFxuICAgKi9cbiAgcmVhZG9ubHkgd29ya2Zsb3dSdW5zT24/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogQ29udGFpbmVyIGltYWdlIHRvIHVzZSBmb3IgR2l0SHViIHdvcmtmbG93cy5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IGltYWdlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB3b3JrZmxvd0NvbnRhaW5lckltYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3VzdG9tIGNvbmZpZ3VyYXRpb24gdXNlZCB3aGVuIGNyZWF0aW5nIGNoYW5nZWxvZyB3aXRoIGNvbW1pdC1hbmQtdGFnLXZlcnNpb24gcGFja2FnZS5cbiAgICogR2l2ZW4gdmFsdWVzIGVpdGhlciBhcHBlbmQgdG8gZGVmYXVsdCBjb25maWd1cmF0aW9uIG9yIG92ZXJ3cml0ZSB2YWx1ZXMgaW4gaXQuXG4gICAqIEBkZWZhdWx0IC0gc3RhbmRhcmQgY29uZmlndXJhdGlvbiBhcHBsaWNhYmxlIGZvciBHaXRIdWIgcmVwb3NpdG9yaWVzXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2ZXJzaW9ucmNPcHRpb25zPzogUmVjb3JkPHN0cmluZywgYW55PjtcbiAgLyoqXG4gICAqIEEgc2V0IG9mIHdvcmtmbG93IHN0ZXBzIHRvIGV4ZWN1dGUgaW4gb3JkZXIgdG8gc2V0dXAgdGhlIHdvcmtmbG93IGNvbnRhaW5lci5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd1NldHVwU3RlcHM/OiBBcnJheTxnaXRodWIud29ya2Zsb3dzLkpvYlN0ZXA+O1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIGRlZmF1bHQgcmVsZWFzZSB3b3JrZmxvdy5cbiAgICogQGRlZmF1bHQgXCJyZWxlYXNlXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2VXb3JrZmxvd05hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBCdWlsZCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIHJlbGVhc2Ugd29ya2Zsb3dzLlxuICAgKiBAZGVmYXVsdCB7fVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVdvcmtmbG93RW52PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSByZWxlYXNlIHRyaWdnZXIgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCAtIENvbnRpbnVvdXMgcmVsZWFzZXMgKGBSZWxlYXNlVHJpZ2dlci5jb250aW51b3VzKClgKVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRyaWdnZXI/OiByZWxlYXNlLlJlbGVhc2VUcmlnZ2VyO1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgdGhlIGdpdmVuIHByZWZpeCB0byByZWxlYXNlIHRhZ3MuIFVzZWZ1bCBpZiB5b3UgYXJlIHJlbGVhc2luZyBvbiBtdWx0aXBsZSBicmFuY2hlcyB3aXRoIG92ZXJsYXBwaW5nIHZlcnNpb24gbnVtYmVycy5cbiAgICogTm90ZTogdGhpcyBwcmVmaXggaXMgdXNlZCB0byBkZXRlY3QgdGhlIGxhdGVzdCB0YWdnZWQgdmVyc2lvblxuICAgKiB3aGVuIGJ1bXBpbmcsIHNvIGlmIHlvdSBjaGFuZ2UgdGhpcyBvbiBhIHByb2plY3Qgd2l0aCBhbiBleGlzdGluZyB2ZXJzaW9uXG4gICAqIGhpc3RvcnksIHlvdSBtYXkgbmVlZCB0byBtYW51YWxseSB0YWcgeW91ciBsYXRlc3QgcmVsZWFzZVxuICAgKiB3aXRoIHRoZSBuZXcgcHJlZml4LlxuICAgKiBAZGVmYXVsdCBcInZcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZVRhZ1ByZWZpeD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBsYWJlbCB0byBhcHBseSB0byBpc3N1ZXMgaW5kaWNhdGluZyBwdWJsaXNoIGZhaWx1cmVzLlxuICAgKiBPbmx5IGFwcGxpZXMgaWYgYHJlbGVhc2VGYWlsdXJlSXNzdWVgIGlzIHRydWUuXG4gICAqIEBkZWZhdWx0IFwiZmFpbGVkLXJlbGVhc2VcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUZhaWx1cmVJc3N1ZUxhYmVsPzogc3RyaW5nO1xuICAvKipcbiAgICogQ3JlYXRlIGEgZ2l0aHViIGlzc3VlIG9uIGV2ZXJ5IGZhaWxlZCBwdWJsaXNoaW5nIHRhc2suXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlRmFpbHVyZUlzc3VlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBHaXRIdWIgQWN0aW9ucyBlbnZpcm9ubWVudCB1c2VkIGZvciB0aGUgcmVsZWFzZS5cbiAgICogVGhpcyBjYW4gYmUgdXNlZCB0byBhZGQgYW4gZXhwbGljaXQgYXBwcm92YWwgc3RlcCB0byB0aGUgcmVsZWFzZVxuICAgKiBvciBsaW1pdCB3aG8gY2FuIGluaXRpYXRlIGEgcmVsZWFzZSB0aHJvdWdoIGVudmlyb25tZW50IHByb3RlY3Rpb24gcnVsZXMuXG4gICAqXG4gICAqIFdoZW4gbXVsdGlwbGUgYXJ0aWZhY3RzIGFyZSByZWxlYXNlZCwgdGhlIGVudmlyb25tZW50IGNhbiBiZSBvdmVyd3JpdHRlblxuICAgKiBvbiBhIHBlciBhcnRpZmFjdCBiYXNpcy5cbiAgICogQGRlZmF1bHQgLSBubyBlbnZpcm9ubWVudCB1c2VkLCB1bmxlc3Mgc2V0IGF0IHRoZSBhcnRpZmFjdCBsZXZlbFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsZWFzZUVudmlyb25tZW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogRGVmaW5lcyBhZGRpdGlvbmFsIHJlbGVhc2UgYnJhbmNoZXMuXG4gICAqIEEgd29ya2Zsb3cgd2lsbCBiZSBjcmVhdGVkIGZvciBlYWNoXG4gICAqIHJlbGVhc2UgYnJhbmNoIHdoaWNoIHdpbGwgcHVibGlzaCByZWxlYXNlcyBmcm9tIGNvbW1pdHMgaW4gdGhpcyBicmFuY2guXG4gICAqIEVhY2ggcmVsZWFzZSBicmFuY2ggX211c3RfIGJlIGFzc2lnbmVkIGEgbWFqb3IgdmVyc2lvbiBudW1iZXIgd2hpY2ggaXMgdXNlZFxuICAgKiB0byBlbmZvcmNlIHRoYXQgdmVyc2lvbnMgcHVibGlzaGVkIGZyb20gdGhhdCBicmFuY2ggYWx3YXlzIHVzZSB0aGF0IG1ham9yXG4gICAqIHZlcnNpb24uIElmIG11bHRpcGxlIGJyYW5jaGVzIGFyZSB1c2VkLCB0aGUgYG1ham9yVmVyc2lvbmAgZmllbGQgbXVzdCBhbHNvXG4gICAqIGJlIHByb3ZpZGVkIGZvciB0aGUgZGVmYXVsdCBicmFuY2guXG4gICAqIEBkZWZhdWx0IC0gbm8gYWRkaXRpb25hbCBicmFuY2hlcyBhcmUgdXNlZCBmb3IgcmVsZWFzZS4geW91IGNhbiB1c2VcbmBhZGRCcmFuY2goKWAgdG8gYWRkIGFkZGl0aW9uYWwgYnJhbmNoZXMuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSByZWxlYXNlQnJhbmNoZXM/OiBSZWNvcmQ8c3RyaW5nLCByZWxlYXNlLkJyYW5jaE9wdGlvbnM+O1xuICAvKipcbiAgICogRmluZCBjb21taXRzIHRoYXQgc2hvdWxkIGJlIGNvbnNpZGVyZWQgcmVsZWFzYWJsZSBVc2VkIHRvIGRlY2lkZSBpZiBhIHJlbGVhc2UgaXMgcmVxdWlyZWQuXG4gICAqIEBkZWZhdWx0IFJlbGVhc2FibGVDb21taXRzLmV2ZXJ5Q29tbWl0KClcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbGVhc2FibGVDb21taXRzPzogUmVsZWFzYWJsZUNvbW1pdHM7XG4gIC8qKlxuICAgKiBEZWZpbmUgcHVibGlzaGluZyB0YXNrcyB0aGF0IGNhbiBiZSBleGVjdXRlZCBtYW51YWxseSBhcyB3ZWxsIGFzIHdvcmtmbG93cy5cbiAgICogTm9ybWFsbHksIHB1Ymxpc2hpbmcgb25seSBoYXBwZW5zIHdpdGhpbiBhdXRvbWF0ZWQgd29ya2Zsb3dzLiBFbmFibGUgdGhpc1xuICAgKiBpbiBvcmRlciB0byBjcmVhdGUgYSBwdWJsaXNoaW5nIHRhc2sgZm9yIGVhY2ggcHVibGlzaGluZyBhY3Rpdml0eS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHB1Ymxpc2hUYXNrcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBJbnN0ZWFkIG9mIGFjdHVhbGx5IHB1Ymxpc2hpbmcgdG8gcGFja2FnZSBtYW5hZ2VycywganVzdCBwcmludCB0aGUgcHVibGlzaGluZyBjb21tYW5kLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHVibGlzaERyeVJ1bj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBCdW1wIHZlcnNpb25zIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoIGFzIHByZS1yZWxlYXNlcyAoZS5nLiBcImJldGFcIiwgXCJhbHBoYVwiLCBcInByZVwiKS5cbiAgICogQGRlZmF1bHQgLSBub3JtYWwgc2VtYW50aWMgdmVyc2lvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByZXJlbGVhc2U/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTdGVwcyB0byBleGVjdXRlIGFmdGVyIGJ1aWxkIGFzIHBhcnQgb2YgdGhlIHJlbGVhc2Ugd29ya2Zsb3cuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwb3N0QnVpbGRTdGVwcz86IEFycmF5PGdpdGh1Yi53b3JrZmxvd3MuSm9iU3RlcD47XG4gIC8qKlxuICAgKiBUaGUgbnBtRGlzdFRhZyB0byB1c2Ugd2hlbiBwdWJsaXNoaW5nIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoLlxuICAgKiBUbyBzZXQgdGhlIG5wbSBkaXN0LXRhZyBmb3IgcmVsZWFzZSBicmFuY2hlcywgc2V0IHRoZSBgbnBtRGlzdFRhZ2AgcHJvcGVydHlcbiAgICogZm9yIGVhY2ggYnJhbmNoLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBucG1EaXN0VGFnPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBzaGVsbCBjb21tYW5kIHRvIGNvbnRyb2wgdGhlIG5leHQgdmVyc2lvbiB0byByZWxlYXNlLlxuICAgKiBJZiBwcmVzZW50LCB0aGlzIHNoZWxsIGNvbW1hbmQgd2lsbCBiZSBydW4gYmVmb3JlIHRoZSBidW1wIGlzIGV4ZWN1dGVkLCBhbmRcbiAgICogaXQgZGV0ZXJtaW5lcyB3aGF0IHZlcnNpb24gdG8gcmVsZWFzZS4gSXQgd2lsbCBiZSBleGVjdXRlZCBpbiB0aGUgZm9sbG93aW5nXG4gICAqIGVudmlyb25tZW50OlxuICAgKlxuICAgKiAtIFdvcmtpbmcgZGlyZWN0b3J5OiB0aGUgcHJvamVjdCBkaXJlY3RvcnkuXG4gICAqIC0gYCRWRVJTSU9OYDogdGhlIGN1cnJlbnQgdmVyc2lvbi4gTG9va3MgbGlrZSBgMS4yLjNgLlxuICAgKiAtIGAkTEFURVNUX1RBR2A6IHRoZSBtb3N0IHJlY2VudCB0YWcuIExvb2tzIGxpa2UgYHByZWZpeC12MS4yLjNgLCBvciBtYXkgYmUgdW5zZXQuXG4gICAqIC0gYCRTVUdHRVNURURfQlVNUGA6IHRoZSBzdWdnZXN0ZWQgYnVtcCBhY3Rpb24gYmFzZWQgb24gY29tbWl0cy4gT25lIG9mIGBtYWpvcnxtaW5vcnxwYXRjaHxub25lYC5cbiAgICpcbiAgICogVGhlIGNvbW1hbmQgc2hvdWxkIHByaW50IG9uZSBvZiB0aGUgZm9sbG93aW5nIHRvIGBzdGRvdXRgOlxuICAgKlxuICAgKiAtIE5vdGhpbmc6IHRoZSBuZXh0IHZlcnNpb24gbnVtYmVyIHdpbGwgYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiBjb21taXQgaGlzdG9yeS5cbiAgICogLSBgeC55LnpgOiB0aGUgbmV4dCB2ZXJzaW9uIG51bWJlciB3aWxsIGJlIGB4LnkuemAuXG4gICAqIC0gYG1ham9yfG1pbm9yfHBhdGNoYDogdGhlIG5leHQgdmVyc2lvbiBudW1iZXIgd2lsbCBiZSB0aGUgY3VycmVudCB2ZXJzaW9uIG51bWJlclxuICAgKiAgIHdpdGggdGhlIGluZGljYXRlZCBjb21wb25lbnQgYnVtcGVkLlxuICAgKlxuICAgKiBUaGlzIHNldHRpbmcgY2Fubm90IGJlIHNwZWNpZmllZCB0b2dldGhlciB3aXRoIGBtaW5NYWpvclZlcnNpb25gOyB0aGUgaW52b2tlZFxuICAgKiBzY3JpcHQgY2FuIGJlIHVzZWQgdG8gYWNoaWV2ZSB0aGUgZWZmZWN0cyBvZiBgbWluTWFqb3JWZXJzaW9uYC5cbiAgICogQGRlZmF1bHQgLSBUaGUgbmV4dCB2ZXJzaW9uIHdpbGwgYmUgZGV0ZXJtaW5lZCBiYXNlZCBvbiB0aGUgY29tbWl0IGhpc3RvcnkgYW5kIHByb2plY3Qgc2V0dGluZ3MuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBuZXh0VmVyc2lvbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBNaW5pbWFsIE1ham9yIHZlcnNpb24gdG8gcmVsZWFzZS5cbiAgICogVGhpcyBjYW4gYmUgdXNlZnVsIHRvIHNldCB0byAxLCBhcyBicmVha2luZyBjaGFuZ2VzIGJlZm9yZSB0aGUgMS54IG1ham9yXG4gICAqIHJlbGVhc2UgYXJlIG5vdCBpbmNyZW1lbnRpbmcgdGhlIG1ham9yIHZlcnNpb24gbnVtYmVyLlxuICAgKlxuICAgKiBDYW4gbm90IGJlIHNldCB0b2dldGhlciB3aXRoIGBtYWpvclZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIE5vIG1pbmltdW0gdmVyc2lvbiBpcyBiZWluZyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbWluTWFqb3JWZXJzaW9uPzogbnVtYmVyO1xuICAvKipcbiAgICogTWFqb3IgdmVyc2lvbiB0byByZWxlYXNlIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoLlxuICAgKiBJZiB0aGlzIGlzIHNwZWNpZmllZCwgd2UgYnVtcCB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgdGhpcyBtYWpvciB2ZXJzaW9uIGxpbmUuXG4gICAqIElmIG5vdCBzcGVjaWZpZWQsIHdlIGJ1bXAgdGhlIGdsb2JhbCBsYXRlc3QgdmVyc2lvbi5cbiAgICogQGRlZmF1bHQgLSBNYWpvciB2ZXJzaW9uIGlzIG5vdCBlbmZvcmNlZC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG1ham9yVmVyc2lvbj86IG51bWJlcjtcbiAgLyoqXG4gICAqIFZlcnNpb24gcmVxdWlyZW1lbnQgb2YgYHB1YmxpYmAgd2hpY2ggaXMgdXNlZCB0byBwdWJsaXNoIG1vZHVsZXMgdG8gbnBtLlxuICAgKiBAZGVmYXVsdCBcImxhdGVzdFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBqc2lpUmVsZWFzZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBXaGV0aGVyIEdpdEh1YiBzaG91bGQgZXhwbGljaXRseSBtYXJrIHRoZSByZWxlYXNlIGZyb20gdGhlIGRlZmF1bHQgYnJhbmNoIGFzIHRoZSBsYXRlc3QgcmVsZWFzZS5cbiAgICogU2V0IHRvIGB0cnVlYCB0byBtYXJrIHRoZSByZWxlYXNlIGFzIGxhdGVzdCwgb3IgYGZhbHNlYCB0byBleHBsaWNpdGx5IG5vdFxuICAgKiBtYXJrIGl0IGFzIGxhdGVzdC5cbiAgICogQGRlZmF1bHQgLSBHaXRIdWIgZGV0ZXJtaW5lcyB0aGUgbGF0ZXN0IHJlbGVhc2UgYmFzZWQgb24gZGF0ZSBhbmQgc2VtYW50aWMgdmVyc2lvbi5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1YlJlbGVhc2VMYXRlc3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIGBjb21taXQtYW5kLXRhZy12ZXJzaW9uYCBjb21wYXRpYmxlIHBhY2thZ2UgdXNlZCB0byBidW1wIHRoZSBwYWNrYWdlIHZlcnNpb24sIGFzIGEgZGVwZW5kZW5jeSBzdHJpbmcuXG4gICAqIFRoaXMgY2FuIGJlIGFueSBjb21wYXRpYmxlIHBhY2thZ2UgdmVyc2lvbiwgaW5jbHVkaW5nIHRoZSBkZXByZWNhdGVkIGBzdGFuZGFyZC12ZXJzaW9uQDlgLlxuICAgKiBAZGVmYXVsdCAtIEEgcmVjZW50IHZlcnNpb24gb2YgXCJjb21taXQtYW5kLXRhZy12ZXJzaW9uXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1bXBQYWNrYWdlPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgWWFybiBCZXJyeS5cbiAgICogQGRlZmF1bHQgLSBZYXJuIEJlcnJ5IHY0IHdpdGggYWxsIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgeWFybkJlcnJ5T3B0aW9ucz86IGphdmFzY3JpcHQuWWFybkJlcnJ5T3B0aW9ucztcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBTdGFiaWxpdHkuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzdGFiaWxpdHk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBwcml2YXRlbHkgaG9zdGVkIHNjb3BlZCBwYWNrYWdlcy5cbiAgICogQGRlZmF1bHQgLSBmZXRjaCBhbGwgc2NvcGVkIHBhY2thZ2VzIGZyb20gdGhlIHB1YmxpYyBucG0gcmVnaXN0cnlcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHNjb3BlZFBhY2thZ2VzT3B0aW9ucz86IEFycmF5PGphdmFzY3JpcHQuU2NvcGVkUGFja2FnZXNPcHRpb25zPjtcbiAgLyoqXG4gICAqIElmIHRoZSBwYWNrYWdlLmpzb24gZm9yIHlvdXIgcGFja2FnZSBpcyBub3QgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IChmb3IgZXhhbXBsZSBpZiBpdCBpcyBwYXJ0IG9mIGEgbW9ub3JlcG8pLCB5b3UgY2FuIHNwZWNpZnkgdGhlIGRpcmVjdG9yeSBpbiB3aGljaCBpdCBsaXZlcy5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHJlcG9zaXRvcnlEaXJlY3Rvcnk/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcmVwb3NpdG9yeSBpcyB0aGUgbG9jYXRpb24gd2hlcmUgdGhlIGFjdHVhbCBjb2RlIGZvciB5b3VyIHBhY2thZ2UgbGl2ZXMuXG4gICAqIFNlZSBodHRwczovL2NsYXNzaWMueWFybnBrZy5jb20vZW4vZG9jcy9wYWNrYWdlLWpzb24vI3RvYy1yZXBvc2l0b3J5XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSByZXBvc2l0b3J5Pzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIHZlcnNpb24gb2YgUE5QTSB0byB1c2UgaWYgdXNpbmcgUE5QTSBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCIxMC4zMy4wXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHBucG1WZXJzaW9uPzogc3RyaW5nO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgcG5wbS5cbiAgICogQGRlZmF1bHQgLSBhbGwgZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwbnBtT3B0aW9ucz86IGphdmFzY3JpcHQuUG5wbU9wdGlvbnM7XG4gIC8qKlxuICAgKiBQZWVyIGRlcGVuZGVuY2llcyBmb3IgdGhpcyBtb2R1bGUuXG4gICAqIERlcGVuZGVuY2llcyBsaXN0ZWQgaGVyZSBhcmUgcmVxdWlyZWQgdG9cbiAgICogYmUgaW5zdGFsbGVkIChhbmQgc2F0aXNmaWVkKSBieSB0aGUgX2NvbnN1bWVyXyBvZiB0aGlzIGxpYnJhcnkuIFVzaW5nIHBlZXJcbiAgICogZGVwZW5kZW5jaWVzIGFsbG93cyB5b3UgdG8gZW5zdXJlIHRoYXQgb25seSBhIHNpbmdsZSBtb2R1bGUgb2YgYSBjZXJ0YWluXG4gICAqIGxpYnJhcnkgZXhpc3RzIGluIHRoZSBgbm9kZV9tb2R1bGVzYCB0cmVlIG9mIHlvdXIgY29uc3VtZXJzLlxuICAgKlxuICAgKiBOb3RlIHRoYXQgcHJpb3IgdG8gbnBtQDcsIHBlZXIgZGVwZW5kZW5jaWVzIGFyZSBfbm90XyBhdXRvbWF0aWNhbGx5XG4gICAqIGluc3RhbGxlZCwgd2hpY2ggbWVhbnMgdGhhdCBhZGRpbmcgcGVlciBkZXBlbmRlbmNpZXMgdG8gYSBsaWJyYXJ5IHdpbGwgYmUgYVxuICAgKiBicmVha2luZyBjaGFuZ2UgZm9yIHlvdXIgY3VzdG9tZXJzLlxuICAgKlxuICAgKiBVbmxlc3MgYHBlZXJEZXBlbmRlbmN5T3B0aW9ucy5waW5uZWREZXZEZXBlbmRlbmN5YCBpcyBkaXNhYmxlZCAoaXQgaXNcbiAgICogZW5hYmxlZCBieSBkZWZhdWx0KSwgcHJvamVuIHdpbGwgYXV0b21hdGljYWxseSBhZGQgYSBkZXYgZGVwZW5kZW5jeSB3aXRoIGFcbiAgICogcGlubmVkIHZlcnNpb24gZm9yIGVhY2ggcGVlciBkZXBlbmRlbmN5LiBUaGlzIHdpbGwgZW5zdXJlIHRoYXQgeW91IGJ1aWxkICZcbiAgICogdGVzdCB5b3VyIG1vZHVsZSBhZ2FpbnN0IHRoZSBsb3dlc3QgcGVlciB2ZXJzaW9uIHJlcXVpcmVkLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGVlckRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgYHBlZXJEZXBzYC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHBlZXJEZXBlbmRlbmN5T3B0aW9ucz86IGphdmFzY3JpcHQuUGVlckRlcGVuZGVuY3lPcHRpb25zO1xuICAvKipcbiAgICogVGhlIFwibmFtZVwiIGluIHBhY2thZ2UuanNvbi5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0cyB0byBwcm9qZWN0IG5hbWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHBhY2thZ2VOYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIE5vZGUgUGFja2FnZSBNYW5hZ2VyIHVzZWQgdG8gZXhlY3V0ZSBzY3JpcHRzLlxuICAgKiBAZGVmYXVsdCAtIERldGVjdGVkIGZyb20gdGhlIGNhbGxpbmcgcHJvY2VzcyBvciBgWUFSTl9DTEFTU0lDYCBpZiBkZXRlY3Rpb24gZmFpbHMuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBwam5ldyAkUEFDS0FHRV9NQU5BR0VSXG4gICAqL1xuICByZWFkb25seSBwYWNrYWdlTWFuYWdlcj86IGphdmFzY3JpcHQuTm9kZVBhY2thZ2VNYW5hZ2VyO1xuICAvKipcbiAgICogVXNlIHRydXN0ZWQgcHVibGlzaGluZyBmb3IgcHVibGlzaGluZyB0byBucG1qcy5jb20gTmVlZHMgdG8gYmUgcHJlLWNvbmZpZ3VyZWQgb24gbnBtLmpzIHRvIHdvcmsuXG4gICAqIEBkZWZhdWx0IC0gZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG5wbVRydXN0ZWRQdWJsaXNoaW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEdpdEh1YiBzZWNyZXQgd2hpY2ggY29udGFpbnMgdGhlIE5QTSB0b2tlbiB0byB1c2Ugd2hlbiBwdWJsaXNoaW5nIHBhY2thZ2VzLlxuICAgKiBAZGVmYXVsdCBcIk5QTV9UT0tFTlwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBucG1Ub2tlblNlY3JldD86IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBiYXNlIFVSTCBvZiB0aGUgbnBtIHBhY2thZ2UgcmVnaXN0cnkuXG4gICAqIE11c3QgYmUgYSBVUkwgKGUuZy4gc3RhcnQgd2l0aCBcImh0dHBzOi8vXCIgb3IgXCJodHRwOi8vXCIpXG4gICAqIEBkZWZhdWx0IFwiaHR0cHM6Ly9yZWdpc3RyeS5ucG1qcy5vcmdcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUmVnaXN0cnlVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTaG91bGQgcHJvdmVuYW5jZSBzdGF0ZW1lbnRzIGJlIGdlbmVyYXRlZCB3aGVuIHRoZSBwYWNrYWdlIGlzIHB1Ymxpc2hlZC5cbiAgICogQSBzdXBwb3J0ZWQgcGFja2FnZSBtYW5hZ2VyIGlzIHJlcXVpcmVkIHRvIHB1Ymxpc2ggYSBwYWNrYWdlIHdpdGggbnBtIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBhbmRcbiAgICogeW91IHdpbGwgbmVlZCB0byB1c2UgYSBzdXBwb3J0ZWQgQ0kvQ0QgcHJvdmlkZXIuXG4gICAqXG4gICAqIE5vdGUgdGhhdCB0aGUgcHJvamVuIGBSZWxlYXNlYCBhbmQgYFB1Ymxpc2hlcmAgY29tcG9uZW50cyBhcmUgdXNpbmcgYHB1YmxpYmAgdG8gcHVibGlzaCBwYWNrYWdlcyxcbiAgICogd2hpY2ggaXMgdXNpbmcgbnBtIGludGVybmFsbHkgYW5kIHN1cHBvcnRzIHByb3ZlbmFuY2Ugc3RhdGVtZW50cyBpbmRlcGVuZGVudGx5IG9mIHRoZSBwYWNrYWdlIG1hbmFnZXIgdXNlZC5cbiAgICogQGRlZmF1bHQgLSB0cnVlIGZvciBwdWJsaWMgcGFja2FnZXMsIGZhbHNlIG90aGVyd2lzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtUHJvdmVuYW5jZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBY2Nlc3MgbGV2ZWwgb2YgdGhlIG5wbSBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCAtIGZvciBzY29wZWQgcGFja2FnZXMgKGUuZy4gYGZvb0BiYXJgKSwgdGhlIGRlZmF1bHQgaXNcbmBOcG1BY2Nlc3MuUkVTVFJJQ1RFRGAsIGZvciBub24tc2NvcGVkIHBhY2thZ2VzLCB0aGUgZGVmYXVsdCBpc1xuYE5wbUFjY2Vzcy5QVUJMSUNgLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbnBtQWNjZXNzPzogamF2YXNjcmlwdC5OcG1BY2Nlc3M7XG4gIC8qKlxuICAgKiBUaGUgbWluaW11bSBub2RlIHZlcnNpb24gcmVxdWlyZWQgYnkgdGhpcyBwYWNrYWdlIHRvIGZ1bmN0aW9uLiBNb3N0IHByb2plY3RzIHNob3VsZCBub3QgdXNlIHRoaXMgb3B0aW9uLlxuICAgKiBUaGUgdmFsdWUgaW5kaWNhdGVzIHRoYXQgdGhlIHBhY2thZ2UgaXMgaW5jb21wYXRpYmxlIHdpdGggYW55IG9sZGVyIHZlcnNpb25zIG9mIG5vZGUuXG4gICAqIFRoaXMgcmVxdWlyZW1lbnQgaXMgZW5mb3JjZWQgdmlhIHRoZSBlbmdpbmVzIGZpZWxkLlxuICAgKlxuICAgKiBZb3Ugd2lsbCBub3JtYWxseSBub3QgbmVlZCB0byBzZXQgdGhpcyBvcHRpb24sIGV2ZW4gaWYgeW91ciBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIEVPTCB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBkZXBlbmRzIG9uIGEgc3BlY2lmaWMgZmVhdHVyZSwgdGhhdCBpcyBub3QgYXZhaWxhYmxlIGluIG90aGVyIExUUyB2ZXJzaW9ucy5cbiAgICogU2V0dGluZyB0aGlzIG9wdGlvbiBoYXMgdmVyeSBoaWdoIGltcGFjdCBvbiB0aGUgY29uc3VtZXJzIG9mIHlvdXIgcGFja2FnZSxcbiAgICogYXMgcGFja2FnZSBtYW5hZ2VycyB3aWxsIGFjdGl2ZWx5IHByZXZlbnQgdXNhZ2Ugd2l0aCBub2RlIHZlcnNpb25zIHlvdSBoYXZlIG1hcmtlZCBhcyBpbmNvbXBhdGlibGUuXG4gICAqXG4gICAqIFRvIGNoYW5nZSB0aGUgbm9kZSB2ZXJzaW9uIG9mIHlvdXIgQ0kvQ0Qgd29ya2Zsb3dzLCB1c2UgYHdvcmtmbG93Tm9kZVZlcnNpb25gLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1pbmltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbWluTm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBub2RlIHZlcnNpb24gc3VwcG9ydGVkIGJ5IHRoaXMgcGFja2FnZS4gTW9zdCBwcm9qZWN0cyBzaG91bGQgbm90IHVzZSB0aGlzIG9wdGlvbi5cbiAgICogVGhlIHZhbHVlIGluZGljYXRlcyB0aGF0IHRoZSBwYWNrYWdlIGlzIGluY29tcGF0aWJsZSB3aXRoIGFueSBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBUaGlzIHJlcXVpcmVtZW50IGlzIGVuZm9yY2VkIHZpYSB0aGUgZW5naW5lcyBmaWVsZC5cbiAgICpcbiAgICogWW91IHdpbGwgbm9ybWFsbHkgbm90IG5lZWQgdG8gc2V0IHRoaXMgb3B0aW9uLlxuICAgKiBDb25zaWRlciB0aGlzIG9wdGlvbiBvbmx5IGlmIHlvdXIgcGFja2FnZSBpcyBrbm93biB0byBub3QgZnVuY3Rpb24gd2l0aCBuZXdlciB2ZXJzaW9ucyBvZiBub2RlLlxuICAgKiBAZGVmYXVsdCAtIG5vIG1heGltdW0gdmVyc2lvbiBpcyBlbmZvcmNlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbWF4Tm9kZVZlcnNpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgYSBsaWNlbnNlIHNob3VsZCBiZSBhZGRlZC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbGljZW5zZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogTGljZW5zZSdzIFNQRFggaWRlbnRpZmllci5cbiAgICogU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9wcm9qZW4vcHJvamVuL3RyZWUvbWFpbi9saWNlbnNlLXRleHQgZm9yIGEgbGlzdCBvZiBzdXBwb3J0ZWQgbGljZW5zZXMuXG4gICAqIFVzZSB0aGUgYGxpY2Vuc2VkYCBvcHRpb24gaWYgeW91IHdhbnQgdG8gbm8gbGljZW5zZSB0byBiZSBzcGVjaWZpZWQuXG4gICAqIEBkZWZhdWx0IFwiQXBhY2hlLTIuMFwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuICAvKipcbiAgICogS2V5d29yZHMgdG8gaW5jbHVkZSBpbiBgcGFja2FnZS5qc29uYC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGtleXdvcmRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFBhY2thZ2UncyBIb21lcGFnZSAvIFdlYnNpdGUuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBob21lcGFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIE1vZHVsZSBlbnRyeXBvaW50IChgbWFpbmAgaW4gYHBhY2thZ2UuanNvbmApLlxuICAgKiBTZXQgdG8gYW4gZW1wdHkgc3RyaW5nIHRvIG5vdCBpbmNsdWRlIGBtYWluYCBpbiB5b3VyIHBhY2thZ2UuanNvblxuICAgKiBAZGVmYXVsdCBcImxpYi9pbmRleC5qc1wiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBlbnRyeXBvaW50Pzogc3RyaW5nO1xuICAvKipcbiAgICogQ29uZmlndXJlIHRoZSBgZGV2RW5naW5lc2AgZmllbGQgaW4gYHBhY2thZ2UuanNvbmAuXG4gICAqIFRoZSBgZGV2RW5naW5lcy5wYWNrYWdlTWFuYWdlcmAgZmllbGQgaXMgYXV0b21hdGljYWxseSBwb3B1bGF0ZWQgYmFzZWQgb25cbiAgICogdGhlIHJlc29sdmVkIGBwYWNrYWdlTWFuYWdlcmAgdmFsdWUuIEFueSBmaWVsZHMgcHJvdmlkZWQgaGVyZSBhcmUgbWVyZ2VkXG4gICAqIHdpdGggdGhlIGF1dG8tcG9wdWxhdGVkIGBwYWNrYWdlTWFuYWdlcmAgZW50cnkuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkZXZFbmdpbmVzPzogamF2YXNjcmlwdC5EZXZFbmdpbmVzO1xuICAvKipcbiAgICogQnVpbGQgZGVwZW5kZW5jaWVzIGZvciB0aGlzIG1vZHVsZS5cbiAgICogVGhlc2UgZGVwZW5kZW5jaWVzIHdpbGwgb25seSBiZVxuICAgKiBhdmFpbGFibGUgaW4geW91ciBidWlsZCBlbnZpcm9ubWVudCBidXQgd2lsbCBub3QgYmUgZmV0Y2hlZCB3aGVuIHRoaXNcbiAgICogbW9kdWxlIGlzIGNvbnN1bWVkLlxuICAgKlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgcG5wbSBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBwbnBtIGFkZGAgb3IgYG5wbSBpYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3VyIGBwYWNrYWdlLmpzb25gIHdpbGwgZXZlbnR1YWxseSBpbmNsdWRlLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGV2RGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBUaGUgZGVzY3JpcHRpb24gaXMganVzdCBhIHN0cmluZyB0aGF0IGhlbHBzIHBlb3BsZSB1bmRlcnN0YW5kIHRoZSBwdXJwb3NlIG9mIHRoZSBwYWNrYWdlLlxuICAgKiBJdCBjYW4gYmUgdXNlZCB3aGVuIHNlYXJjaGluZyBmb3IgcGFja2FnZXMgaW4gYSBwYWNrYWdlIG1hbmFnZXIgYXMgd2VsbC5cbiAgICogU2VlIGh0dHBzOi8vY2xhc3NpYy55YXJucGtnLmNvbS9lbi9kb2NzL3BhY2thZ2UtanNvbi8jdG9jLWRlc2NyaXB0aW9uXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIFJ1bnRpbWUgZGVwZW5kZW5jaWVzIG9mIHRoaXMgbW9kdWxlLlxuICAgKiBUaGUgcmVjb21tZW5kYXRpb24gaXMgdG8gb25seSBzcGVjaWZ5IHRoZSBtb2R1bGUgbmFtZSBoZXJlIChlLmcuXG4gICAqIGBleHByZXNzYCkuIFRoaXMgd2lsbCBiZWhhdmUgc2ltaWxhciB0byBgcG5wbSBhZGRgIG9yIGBucG0gaW5zdGFsbGAgaW4gdGhlXG4gICAqIHNlbnNlIHRoYXQgaXQgd2lsbCBhZGQgdGhlIG1vZHVsZSBhcyBhIGRlcGVuZGVuY3kgdG8geW91ciBgcGFja2FnZS5qc29uYFxuICAgKiBmaWxlIHdpdGggdGhlIGxhdGVzdCB2ZXJzaW9uIChgXmApLiBZb3UgY2FuIHNwZWNpZnkgc2VtdmVyIHJlcXVpcmVtZW50cyBpblxuICAgKiB0aGUgc2FtZSBzeW50YXggcGFzc2VkIHRvIGBwbnBtIGFkZGAgb3IgYG5wbSBpYCAoZS5nLiBgZXhwcmVzc0BeMmApIGFuZFxuICAgKiB0aGlzIHdpbGwgYmUgd2hhdCB5b3VyIGBwYWNrYWdlLmpzb25gIHdpbGwgZXZlbnR1YWxseSBpbmNsdWRlLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVwcz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGRlbGV0ZSBsb2NrZmlsZXMgZnJvbSBwYWNrYWdlIG1hbmFnZXJzIHRoYXQgYXJlIG5vdCB0aGUgYWN0aXZlIG9uZS5cbiAgICogT25seSB0cmlnZ2VyZWQgd2hlbiB0aGUgbG9ja2ZpbGUgZm9yIHRoZSBjb25maWd1cmVkIHBhY2thZ2VcbiAgICogbWFuYWdlciBhbHJlYWR5IGV4aXN0cy5cbiAgICpcbiAgICogVGhpcyBpcyB1c2VmdWwgd2hlbiBtaWdyYXRpbmcgYmV0d2VlbiBwYWNrYWdlIG1hbmFnZXJzIHRvIGF2b2lkIGNvbmZsaWN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlT3JwaGFuZWRMb2NrRmlsZXM/OiBib29sZWFuO1xuICAvKipcbiAgICogQWRkIGEgYGRlZHVwZWAgdGFzayB0aGF0IGRlZHVwbGljYXRlcyBwcm9qZWN0IGRlcGVuZGVuY2llcy5cbiAgICogRGVkdXBsaWNhdGlvbiBwcmV2ZW50cyBtdWx0aXBsZSB2ZXJzaW9ucyBvZiB0aGUgc2FtZSBwYWNrYWdlIGZyb20gYmVpbmdcbiAgICogaW5zdGFsbGVkLCBpZiBhIHNpbmdsZSB2ZXJzaW9uIGNhbiBzYXRpc2Z5IGFsbCByZXF1ZXN0ZWQgdmVyc2lvbiByYW5nZXMuXG4gICAqIFRoaXMgcHJldmVudHMgdmVyc2lvbiBwcm9saWZlcmF0aW9uIGFuZCByZWR1Y2VzIHRoZSBzaXplIG9mIHRoZSBkZXBlbmRlbmN5XG4gICAqIHRyZWUuXG4gICAqXG4gICAqIFRoZSBiZWhhdmlvciBkZXBlbmRzIG9uIHRoZSBwYWNrYWdlIG1hbmFnZXI6XG4gICAqIC0gbnBtOiBydW5zIGBucG0gZGVkdXBlYCBhZnRlciBldmVyeSBtdXRhdGluZyBpbnN0YWxsLlxuICAgKiAtIHBucG06IHJ1bnMgYHBucG0gZGVkdXBlYCBhZnRlciBldmVyeSBtdXRhdGluZyBpbnN0YWxsLlxuICAgKiAtIFlhcm4gQmVycnk6IHJ1bnMgYHlhcm4gZGVkdXBlYCBhZnRlciBldmVyeSBtdXRhdGluZyBpbnN0YWxsLiBJZlxuICAgKiAgIGB5YXJuQmVycnlPcHRpb25zLmRlZHVwZVBhY2thZ2VzYCBpcyBzZXQsIG9ubHkgdGhlIGxpc3RlZCBwYWNrYWdlcyBhcmVcbiAgICogICBkZWR1cGxpY2F0ZWQuXG4gICAqIC0gWWFybiBDbGFzc2ljOiBgeWFybiBpbnN0YWxsYCBhbHJlYWR5IGRlZHVwbGljYXRlcywgc28gdGhlIHRhc2sgb25seVxuICAgKiAgIHByaW50cyBhbiBpbmZvcm1hdGlvbmFsIG1lc3NhZ2UuXG4gICAqIC0gQnVuOiBub3Qgc3VwcG9ydGVkLCBlbmFibGluZyB0aGlzIG9wdGlvbiB0aHJvd3MgYW4gZXJyb3IuXG4gICAqIEBkZWZhdWx0IC0gZmFsc2UsIHVubGVzcyBgeWFybkJlcnJ5T3B0aW9ucy5kZWR1cGVQYWNrYWdlc2AgaXMgc2V0XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBkZWR1cGVEZXBzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gdmFsdWVzIGF2YWlsYWJsZSB0byBwYWNrYWdlIHNjcmlwdHMgYXQgcnVudGltZS5cbiAgICogVmFsdWVzIHNob3VsZCBiZSBKU09OLXNlcmlhbGl6YWJsZS5cbiAgICogQGRlZmF1bHQgLSBubyBwYWNrYWdlIGNvbmZpZ3VyYXRpb25cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvbmZpZz86IFJlY29yZDxzdHJpbmcsIGFueT47XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciBucG0gcGFja2FnZXMgdXNpbmcgQVdTIENvZGVBcnRpZmFjdC5cbiAgICogVGhpcyBpcyByZXF1aXJlZCBpZiBwdWJsaXNoaW5nIHBhY2thZ2VzIHRvLCBvciBpbnN0YWxsaW5nIHNjb3BlZCBwYWNrYWdlcyBmcm9tIEFXUyBDb2RlQXJ0aWZhY3RcbiAgICogQGRlZmF1bHQgLSB1bmRlZmluZWRcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVBcnRpZmFjdE9wdGlvbnM/OiBqYXZhc2NyaXB0LkNvZGVBcnRpZmFjdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBUaGUgdmVyc2lvbiBvZiBCdW4gdG8gdXNlIGlmIHVzaW5nIEJ1biBhcyBhIHBhY2thZ2UgbWFuYWdlci5cbiAgICogQGRlZmF1bHQgXCJsYXRlc3RcIlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYnVuVmVyc2lvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVwZW5kZW5jaWVzIHRvIGJ1bmRsZSBpbnRvIHRoaXMgbW9kdWxlLlxuICAgKiBUaGVzZSBtb2R1bGVzIHdpbGwgYmVcbiAgICogYWRkZWQgYm90aCB0byB0aGUgYGRlcGVuZGVuY2llc2Agc2VjdGlvbiBhbmQgYGJ1bmRsZWREZXBlbmRlbmNpZXNgIHNlY3Rpb24gb2ZcbiAgICogeW91ciBgcGFja2FnZS5qc29uYC5cbiAgICpcbiAgICogVGhlIHJlY29tbWVuZGF0aW9uIGlzIHRvIG9ubHkgc3BlY2lmeSB0aGUgbW9kdWxlIG5hbWUgaGVyZSAoZS5nLlxuICAgKiBgZXhwcmVzc2ApLiBUaGlzIHdpbGwgYmVoYXZlIHNpbWlsYXIgdG8gYHBucG0gYWRkYCBvciBgbnBtIGluc3RhbGxgIGluIHRoZVxuICAgKiBzZW5zZSB0aGF0IGl0IHdpbGwgYWRkIHRoZSBtb2R1bGUgYXMgYSBkZXBlbmRlbmN5IHRvIHlvdXIgYHBhY2thZ2UuanNvbmBcbiAgICogZmlsZSB3aXRoIHRoZSBsYXRlc3QgdmVyc2lvbiAoYF5gKS4gWW91IGNhbiBzcGVjaWZ5IHNlbXZlciByZXF1aXJlbWVudHMgaW5cbiAgICogdGhlIHNhbWUgc3ludGF4IHBhc3NlZCB0byBgcG5wbSBhZGRgIG9yIGBucG0gaWAgKGUuZy4gYGV4cHJlc3NAXjJgKSBhbmRcbiAgICogdGhpcyB3aWxsIGJlIHdoYXQgeW91ciBgcGFja2FnZS5qc29uYCB3aWxsIGV2ZW50dWFsbHkgaW5jbHVkZS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1bmRsZWREZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIFRoZSB1cmwgdG8geW91ciBwcm9qZWN0J3MgaXNzdWUgdHJhY2tlci5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGJ1Z3NVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgZW1haWwgYWRkcmVzcyB0byB3aGljaCBpc3N1ZXMgc2hvdWxkIGJlIHJlcG9ydGVkLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYnVnc0VtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogQmluYXJ5IHByb2dyYW1zIHZlbmRlZCB3aXRoIHlvdXIgbW9kdWxlLlxuICAgKiBZb3UgY2FuIHVzZSB0aGlzIG9wdGlvbiB0byBhZGQvY3VzdG9taXplIGhvdyBiaW5hcmllcyBhcmUgcmVwcmVzZW50ZWQgaW5cbiAgICogeW91ciBgcGFja2FnZS5qc29uYCwgYnV0IHVubGVzcyBgYXV0b0RldGVjdEJpbmAgaXMgYGZhbHNlYCwgZXZlcnlcbiAgICogZXhlY3V0YWJsZSBmaWxlIHVuZGVyIGBiaW5gIHdpbGwgYXV0b21hdGljYWxseSBiZSBhZGRlZCB0byB0aGlzIHNlY3Rpb24uXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBiaW4/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuICAvKipcbiAgICogQXV0b21hdGljYWxseSBhZGQgYWxsIGV4ZWN1dGFibGVzIHVuZGVyIHRoZSBgYmluYCBkaXJlY3RvcnkgdG8geW91ciBgcGFja2FnZS5qc29uYCBmaWxlIHVuZGVyIHRoZSBgYmluYCBzZWN0aW9uLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvRGV0ZWN0QmluPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEF1dGhvcidzIFVSTCAvIFdlYnNpdGUuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRob3JVcmw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJcyB0aGUgYXV0aG9yIGFuIG9yZ2FuaXphdGlvbi5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvck9yZ2FuaXphdGlvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRob3IncyBuYW1lLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yTmFtZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcidzIGUtbWFpbC5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvckVtYWlsPzogc3RyaW5nO1xuICAvKipcbiAgICogTGlzdCBvZiBkZXBlbmRlbmN5IChwYWNrYWdlKSBuYW1lcyB0aGF0IGFyZSBhbGxvd2VkIHRvIHJ1biBsaWZlY3ljbGUgaW5zdGFsbCBzY3JpcHRzIChgcHJlaW5zdGFsbGAsIGBpbnN0YWxsYCwgYHBvc3RpbnN0YWxsYCwgYHByZXBhcmVgKSBkdXJpbmcgZGVwZW5kZW5jeSBpbnN0YWxsYXRpb24uXG4gICAqIFRoZXNlIHNjcmlwdHMgY2FuIGV4ZWN1dGUgYXJiaXRyYXJ5IGNvZGUsIG1ha2luZyB0aGVtIGEgY29tbW9uXG4gICAqIHN1cHBseS1jaGFpbiBhdHRhY2sgdmVjdG9yLiBQYWNrYWdlIG1hbmFnZXJzIGFyZSBtb3ZpbmcgdG93YXJkXG4gICAqIGJsb2NraW5nIHRoZW0gYnkgZGVmYXVsdCBhbmQgcmVxdWlyaW5nIGFuIGV4cGxpY2l0IGFsbG93bGlzdC5cbiAgICogQ29uZmlndXJpbmcgYGFsbG93U2NyaXB0c2Agc2V0cyB1cCB0aGF0IGFsbG93bGlzdCBzbyBzY3JpcHRzIG9ubHkgcnVuXG4gICAqIGZvciB0aGUgcGFja2FnZXMgeW91IGhhdmUgZXhwbGljaXRseSByZXZpZXdlZCBhbmQgdHJ1c3QuXG4gICAqXG4gICAqIFN1cHBvcnQgZm9yIHRoaXMgc2V0dGluZyBkZXBlbmRzIG9uIHRoZSBjb25maWd1cmVkIGBwYWNrYWdlTWFuYWdlcmA6XG4gICAqXG4gICAqIC0gYE5QTWA6IHdyaXR0ZW4gdG8gdGhlIG5hdGl2ZSBgYWxsb3dTY3JpcHRzYCBmaWVsZCBpbiBgcGFja2FnZS5qc29uYFxuICAgKiAgIChyZXF1aXJlcyBucG0gPj0gMTEuMTY7IHNlZSBodHRwczovL2RvY3MubnBtanMuY29tL2NsaS92MTEvY29tbWFuZHMvbnBtLWFwcHJvdmUtc2NyaXB0cykuXG4gICAqIC0gYEJVTmA6IHdyaXR0ZW4gdG8gdGhlIG5hdGl2ZSBgdHJ1c3RlZERlcGVuZGVuY2llc2AgZmllbGQgaW5cbiAgICogICBgcGFja2FnZS5qc29uYCAoc2VlIGh0dHBzOi8vYnVuLmNvbS9kb2NzL3BtL2xpZmVjeWNsZSkuXG4gICAqIC0gYFBOUE1gOiB3cml0dGVuIHRvIHRoZSBgb25seUJ1aWx0RGVwZW5kZW5jaWVzYCBzZXR0aW5nIGluXG4gICAqICAgYHBucG0td29ya3NwYWNlLnlhbWxgIChzZWUgaHR0cHM6Ly9wbnBtLmlvL3NldHRpbmdzI29ubHlidWlsdGRlcGVuZGVuY2llcykuXG4gICAqIC0gYFlBUk4yYCwgYFlBUk5fQkVSUllgOiB3cml0dGVuIHRvIHRoZSBuYXRpdmVcbiAgICogICBgZGVwZW5kZW5jaWVzTWV0YS48cGtnPi5idWlsdGAgYWxsb3dsaXN0IGluIGBwYWNrYWdlLmpzb25gLCBjb21iaW5lZFxuICAgKiAgIHdpdGggYGVuYWJsZVNjcmlwdHM6IGZhbHNlYCBpbiBgLnlhcm5yYy55bWxgIChzZWVcbiAgICogICBodHRwczovL3lhcm5wa2cuY29tL2ZlYXR1cmVzL3NlY3VyaXR5I3Bvc3RpbnN0YWxscykuIElmIHlvdSBzZXRcbiAgICogICBgeWFybkJlcnJ5T3B0aW9ucy55YXJuUmNPcHRpb25zLmVuYWJsZVNjcmlwdHNgIGV4cGxpY2l0bHksIHRoYXQgdmFsdWVcbiAgICogICBpcyByZXNwZWN0ZWQgaW5zdGVhZCBvZiBiZWluZyBvdmVycmlkZGVuLlxuICAgKiAtIGBZQVJOYCwgYFlBUk5fQ0xBU1NJQ2A6IG5vdCBzdXBwb3J0ZWQuIFlhcm4gQ2xhc3NpYyBoYXMgbm8gbmF0aXZlXG4gICAqICAgbWVjaGFuaXNtIHRvIGFsbG93bGlzdCBpbnN0YWxsIHNjcmlwdHMgZm9yIHNwZWNpZmljIGRlcGVuZGVuY2llcy5cbiAgICogICBTZXR0aW5nIHRoaXMgb3B0aW9uIHdpdGggb25lIG9mIHRoZXNlIHBhY2thZ2UgbWFuYWdlcnMgdGhyb3dzIGFuXG4gICAqICAgZXJyb3IgYXQgc3ludGhlc2lzIHRpbWUuXG4gICAqIEBkZWZhdWx0IC0gYWxsIGluc3RhbGwgc2NyaXB0cyBhcmUgYWxsb3dlZCB0byBydW4gKHBhY2thZ2UgbWFuYWdlciBkZWZhdWx0KVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dTY3JpcHRzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEFsbG93IHRoZSBwcm9qZWN0IHRvIGluY2x1ZGUgYHBlZXJEZXBlbmRlbmNpZXNgIGFuZCBgYnVuZGxlZERlcGVuZGVuY2llc2AuXG4gICAqIFRoaXMgaXMgbm9ybWFsbHkgb25seSBhbGxvd2VkIGZvciBsaWJyYXJpZXMuIEZvciBhcHBzLCB0aGVyZSdzIG5vIG1lYW5pbmdcbiAgICogZm9yIHNwZWNpZnlpbmcgdGhlc2UuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGFsbG93TGlicmFyeURlcGVuZGVuY2llcz86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBdXRvbWF0aWNhbGx5IGFkZCB0aGUgcmVzb2x2ZWQgYHBhY2thZ2VNYW5hZ2VyYCB0byBgZGV2RW5naW5lcy5wYWNrYWdlTWFuYWdlcmAgaW4gYHBhY2thZ2UuanNvbmAsIHNldHRpbmcgYG9uRmFpbGAgdG8gYGlnbm9yZWAuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGFkZFBhY2thZ2VNYW5hZ2VyVG9EZXZFbmdpbmVzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIEVuYWJsZSBWU0NvZGUgaW50ZWdyYXRpb24uXG4gICAqIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3Igcm9vdCBwcm9qZWN0cy4gRGlzYWJsZWQgZm9yIG5vbi1yb290IHByb2plY3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2c2NvZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0by1jbG9zZSBzdGFsZSBpc3N1ZXMgYW5kIHB1bGwgcmVxdWVzdHMuXG4gICAqIFRvIGRpc2FibGUgc2V0IGBzdGFsZWAgdG8gYGZhbHNlYC5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYFN0YWxlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHN0YWxlT3B0aW9ucz86IGdpdGh1Yi5TdGFsZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIG9mIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0LlxuICAgKiBTZWUgYHN0YWxlT3B0aW9uc2AgZm9yIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzdGFsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9mIHRoZSBSRUFETUUubWQgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG1lPzogUmVhZG1lT3B0aW9ucztcbiAgLyoqXG4gICAqIENob29zZSBhIG1ldGhvZCBvZiBwcm92aWRpbmcgR2l0SHViIEFQSSBhY2Nlc3MgZm9yIHByb2plbiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gdXNlIGEgcGVyc29uYWwgYWNjZXNzIHRva2VuIG5hbWVkIFBST0pFTl9HSVRIVUJfVE9LRU5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNyZWRlbnRpYWxzPzogZ2l0aHViLkdpdGh1YkNyZWRlbnRpYWxzO1xuICAvKipcbiAgICogQWRkIGEgR2l0cG9kIGRldmVsb3BtZW50IGVudmlyb25tZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0cG9kPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogQGRlZmF1bHQgLSBzZWUgR2l0SHViT3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViT3B0aW9ucz86IGdpdGh1Yi5HaXRIdWJPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogRW5hYmxlZCBieSBkZWZhdWx0IGZvciByb290IHByb2plY3RzLiBEaXNhYmxlZCBmb3Igbm9uLXJvb3QgcHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1Yj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBWU0NvZGUgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgKHVzZWQgZm9yIEdpdEh1YiBDb2Rlc3BhY2VzKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRldkNvbnRhaW5lcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBgY2xvYmJlcmAgdGFzayB3aGljaCByZXNldHMgdGhlIHJlcG8gdG8gb3JpZ2luLlxuICAgKiBAZGVmYXVsdCAtIHRydWUsIGJ1dCBmYWxzZSBmb3Igc3VicHJvamVjdHNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNsb2JiZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIG9wdGlvbnMgZm9yIGF1dG9tYXRpYyBtZXJnaW5nIG9uIEdpdEh1Yi5cbiAgICogSGFzIG5vIGVmZmVjdCBpZlxuICAgKiBgZ2l0aHViLm1lcmdpZnlgIG9yIGBhdXRvTWVyZ2VgIGlzIHNldCB0byBmYWxzZS5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYEF1dG9NZXJnZU9wdGlvbnNgXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2VPcHRpb25zPzogZ2l0aHViLkF1dG9NZXJnZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBFbmFibGUgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmIGBnaXRodWIubWVyZ2lmeWBcbiAgICogaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2U/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGFuZCBjb25maWd1cmUgdGhlICdhdXRvIGFwcHJvdmUnIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCAtIGF1dG8gYXBwcm92ZSBpcyBkaXNhYmxlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVPcHRpb25zPzogZ2l0aHViLkF1dG9BcHByb3ZlT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHJlbm92YXRlYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3RPcHRpb25zPzogUmVub3ZhdGVib3RPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHJlbm92YXRlYm90IHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb25PcHRpb25zPzogUHJvamVucmNKc29uT3B0aW9ucztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanNvbiAoaW4gSlNPTikuIFNldCB0byBgZmFsc2VgIGluIG9yZGVyIHRvIGRpc2FibGUgLnByb2plbnJjLmpzb24gZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgc2hlbGwgY29tbWFuZCB0byB1c2UgaW4gb3JkZXIgdG8gcnVuIHRoZSBwcm9qZW4gQ0xJLlxuICAgKiBJbnNlcnRlZCB2ZXJiYXRpbSBpbnRvIHRhc2sgc3RlcHMsIHdvcmtmbG93cyBhbmQgSURFIGNvbmZpZ3VyYXRpb24sIGFuZCBydW5cbiAgICogYnkgZWFjaCBvZiB0aGVpciBzaGVsbHMgLSBsb2NhbGx5LCBpbiBDSSBhbmQgaW4gZGV2IGNvbnRhaW5lcnMuIEtlZXAgaXQgYVxuICAgKiBwbGFpbiB1bnF1b3RlZCBjb21tYW5kLCBzaW5jZSBzaGVsbCBzeW50YXggaW4gaXQgZXhlY3V0ZXMgaW4gYWxsIG9mIHRoZW0uXG4gICAqXG4gICAqIENhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSBpbiBzcGVjaWFsIGVudmlyb25tZW50cy5cbiAgICogQGRlZmF1bHQgXCJucHggcHJvamVuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHByb2plY3QgdHJlZSBmaWxlIChgLnByb2plbi90cmVlLmpzb25gKSB0aGF0IHNob3dzIGFsbCBjb21wb25lbnRzIGFuZCB0aGVpciByZWxhdGlvbnNoaXBzLiBVc2VmdWwgZm9yIHVuZGVyc3RhbmRpbmcgeW91ciBwcm9qZWN0IHN0cnVjdHVyZSBhbmQgZGVidWdnaW5nLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdFRyZWU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHBhcmVudCBwcm9qZWN0LCBpZiB0aGlzIHByb2plY3QgaXMgcGFydCBvZiBhIGJpZ2dlciBwcm9qZWN0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50PzogUHJvamVjdDtcbiAgLyoqXG4gICAqIFRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICogUmVsYXRpdmUgdG8gdGhpcyBkaXJlY3RvcnksIGFsbCBmaWxlcyBhcmUgc3ludGhlc2l6ZWQuXG4gICAqXG4gICAqIElmIHRoaXMgcHJvamVjdCBoYXMgYSBwYXJlbnQsIHRoaXMgZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgICogZGlyZWN0b3J5IGFuZCBpdCBjYW5ub3QgYmUgdGhlIHNhbWUgYXMgdGhlIHBhcmVudCBvciBhbnkgb2YgaXQncyBvdGhlclxuICAgKiBzdWJwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgXCIuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG91dGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBsb2dnaW5nIG9wdGlvbnMgc3VjaCBhcyB2ZXJib3NpdHkuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsb2dnaW5nPzogTG9nZ2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgZ2l0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0T3B0aW9ucz86IEdpdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5naXRpZ25vcmUgZmlsZS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdElnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gY29tbWl0IHRoZSBtYW5hZ2VkIGZpbGVzIGJ5IGRlZmF1bHQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvbW1pdEdlbmVyYXRlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGlzIHRoZSBuYW1lIG9mIHlvdXIgcHJvamVjdC5cbiAgICogQGRlZmF1bHQgJEJBU0VESVJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcnMgd2hvc2UgcHVsbCByZXF1ZXN0cyB0aGUgbWVyZ2UgcXVldWUgbWVyZ2VzIHdpdGhvdXQgYW4gYXBwcm92YWwsIHN1Y2ggYXMgdGhlIHNpbmdsZSBtYWludGFpbmVyIG9mIGEgcmVwb3NpdG9yeSwgd2hvIGNhbm5vdCBhcHByb3ZlIHRoZWlyIG93biBwdWxsIHJlcXVlc3RzLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgdHJ1c3RlZEF1dGhvcnM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogTGlzdCBvZiB0ZWFtcyB1c2VkIHRvIGdlbmVyYXRlIHRoZSBDT0RFT1dORVJTIGZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVPd25lcnM6IEFycmF5PHN0cmluZz47XG59XG4iXX0=
@@ -40,7 +40,7 @@ function getOptions(options) {
40
40
  * @pjid python-package
41
41
  */
42
42
  class PythonPackage extends python_1.PythonProject {
43
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen-modules.PythonPackage", version: "3.2.1" };
43
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen-modules.PythonPackage", version: "3.2.2" };
44
44
  autoMerge;
45
45
  readme;
46
46
  constructor(options) {
@@ -63,13 +63,14 @@ class PythonPackage extends python_1.PythonProject {
63
63
  }
64
64
  // projen only wires the merge queue up for node projects
65
65
  if ((mergedOptions.autoMerge ?? true) && this.github?.mergify) {
66
- this.autoMerge = new projen_1.github.AutoMerge(this.github, mergedOptions.autoMergeOptions);
66
+ this.autoMerge = new projen_1.github.AutoMerge(this.github, (0, mergify_1.autoMergeOptions)(mergedOptions));
67
67
  (0, mergify_1.configureMergify)(this, {
68
68
  approvedReviews: mergedOptions.autoMergeOptions?.approvedReviews,
69
+ trustedAuthors: mergedOptions.trustedAuthors,
69
70
  });
70
71
  }
71
72
  }
72
73
  }
73
74
  exports.PythonPackage = PythonPackage;
74
75
  __exportStar(require("./python-package-options"), exports);
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvamVjdHMvcHl0aG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUFnQztBQUNoQyw4Q0FBd0U7QUFFeEUsbUVBQWdFO0FBQ2hFLDJEQUF3RDtBQUN4RCw2REFBbUU7QUFDbkUseUZBQThGO0FBQzlGLG9EQUFpRDtBQUNqRCw2REFBeUQ7QUFFekQsU0FBUyxVQUFVLENBQUMsT0FBNkI7SUFDL0MsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUV6QixNQUFNLFFBQVEsR0FBRztRQUNmLElBQUk7UUFDSixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLDJCQUEyQixFQUFFLHFEQUE2QjtLQUNuQixDQUFDO0lBRTFDLE9BQU8sSUFBQSw0QkFBWSxFQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGFBQWMsU0FBUSxzQkFBYTs7SUFDckMsU0FBUyxDQUFvQjtJQUN0QyxNQUFNLENBQVM7SUFFZixZQUFZLE9BQTZCO1FBQ3ZDLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxQyxLQUFLLENBQUM7WUFDSixHQUFHLGFBQWE7U0FDTyxDQUFDLENBQUM7UUFFM0IsSUFBSSx1QkFBVSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0MsSUFBSSxhQUFhLENBQUMsbUJBQW1CLElBQUksSUFBSSxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FDakMsR0FBRyxDQUFDLGFBQWEsQ0FBQywyQkFBMkIsSUFBSSxFQUFFLENBQUMsQ0FDckQsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBTSxDQUFDLElBQUksRUFBRTtZQUM3QixXQUFXLEVBQUUsYUFBYSxDQUFDLE1BQU0sRUFBRSxXQUFXO1NBQy9DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUNwQixpQkFBaUIsRUFDakIsNENBQTRDLENBQzdDLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLENBQUM7WUFDcEUsSUFBSSxlQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDdEIsU0FBUyxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQzthQUNqQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QseURBQXlEO1FBQ3pELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7WUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGVBQU0sQ0FBQyxTQUFTLENBQ25DLElBQUksQ0FBQyxNQUFNLEVBQ1gsYUFBYSxDQUFDLGdCQUFnQixDQUMvQixDQUFDO1lBQ0YsSUFBQSwwQkFBZ0IsRUFBQyxJQUFJLEVBQUU7Z0JBQ3JCLGVBQWUsRUFBRSxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsZUFBZTthQUNqRSxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUF2Q0gsc0NBd0NDO0FBRUQsMkRBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2l0aHViIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IFB5dGhvblByb2plY3QsIFB5dGhvblByb2plY3RPcHRpb25zIH0gZnJvbSAncHJvamVuL2xpYi9weXRob24nO1xuaW1wb3J0IHsgUHl0aG9uUGFja2FnZU9wdGlvbnMgfSBmcm9tICcuL3B5dGhvbi1wYWNrYWdlLW9wdGlvbnMnO1xuaW1wb3J0IHsgQ29kZU93bmVycyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZ2l0aHViL2NvZGVvd25lcnMnO1xuaW1wb3J0IHsgQ29kZVFsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9naXRodWIvY29kZXFsJztcbmltcG9ydCB7IGNvbmZpZ3VyZU1lcmdpZnkgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2dpdGh1Yi9tZXJnaWZ5JztcbmltcG9ydCB7IERFRkFVTFRfUFVMTF9SRVFVRVNUX1RFTVBMQVRFIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9naXRodWIvcHVsbC1yZXF1ZXN0LXRlbXBsYXRlJztcbmltcG9ydCB7IFJlYWRtZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvcmVhZG1lJztcbmltcG9ydCB7IG1lcmdlT3B0aW9ucyB9IGZyb20gJy4uLy4uL3V0aWxzL21lcmdlLW9wdGlvbnMnO1xuXG5mdW5jdGlvbiBnZXRPcHRpb25zKG9wdGlvbnM6IFB5dGhvblBhY2thZ2VPcHRpb25zKSB7XG4gIGNvbnN0IHsgbmFtZSB9ID0gb3B0aW9ucztcblxuICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICBuYW1lLFxuICAgIHB1bGxSZXF1ZXN0VGVtcGxhdGU6IHRydWUsXG4gICAgcHVsbFJlcXVlc3RUZW1wbGF0ZUNvbnRlbnRzOiBERUZBVUxUX1BVTExfUkVRVUVTVF9URU1QTEFURSxcbiAgfSBzYXRpc2ZpZXMgUGFydGlhbDxQeXRob25QYWNrYWdlT3B0aW9ucz47XG5cbiAgcmV0dXJuIG1lcmdlT3B0aW9ucyhkZWZhdWx0cywgb3B0aW9ucyk7XG59XG5cbi8qKlxuICogQSBQeXRob24gcGFja2FnZVxuICpcbiAqXG4gKiBAcGppZCBweXRob24tcGFja2FnZVxuICovXG5leHBvcnQgY2xhc3MgUHl0aG9uUGFja2FnZSBleHRlbmRzIFB5dGhvblByb2plY3Qge1xuICByZWFkb25seSBhdXRvTWVyZ2U/OiBnaXRodWIuQXV0b01lcmdlO1xuICByZWFkbWU6IFJlYWRtZTtcblxuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBQeXRob25QYWNrYWdlT3B0aW9ucykge1xuICAgIGNvbnN0IG1lcmdlZE9wdGlvbnMgPSBnZXRPcHRpb25zKG9wdGlvbnMpO1xuXG4gICAgc3VwZXIoe1xuICAgICAgLi4ubWVyZ2VkT3B0aW9ucyxcbiAgICB9IGFzIFB5dGhvblByb2plY3RPcHRpb25zKTtcblxuICAgIG5ldyBDb2RlT3duZXJzKHRoaXMsIG1lcmdlZE9wdGlvbnMuY29kZU93bmVycyk7XG4gICAgaWYgKG1lcmdlZE9wdGlvbnMucHVsbFJlcXVlc3RUZW1wbGF0ZSA/PyB0cnVlKSB7XG4gICAgICB0aGlzLmdpdGh1Yj8uYWRkUHVsbFJlcXVlc3RUZW1wbGF0ZShcbiAgICAgICAgLi4uKG1lcmdlZE9wdGlvbnMucHVsbFJlcXVlc3RUZW1wbGF0ZUNvbnRlbnRzID8/IFtdKSxcbiAgICAgICk7XG4gICAgfVxuICAgIHRoaXMucmVhZG1lID0gbmV3IFJlYWRtZSh0aGlzLCB7XG4gICAgICBkZXNjcmlwdGlvbjogbWVyZ2VkT3B0aW9ucy5yZWFkbWU/LmRlc2NyaXB0aW9uLFxuICAgIH0pO1xuICAgIHRoaXMucmVhZG1lLmFkZFNlY3Rpb24oXG4gICAgICAnR2V0dGluZyBTdGFydGVkJyxcbiAgICAgICdgYGBzaFxcbnlhcm4gaW5zdGFsbFxcbm5weCBwcm9qZW4gYnVpbGRcXG5gYGAnLFxuICAgICk7XG4gICAgaWYgKChtZXJnZWRPcHRpb25zLmNvZGVxbCA/PyB0cnVlKSAmJiB0aGlzLmdpdGh1Yj8ud29ya2Zsb3dzRW5hYmxlZCkge1xuICAgICAgbmV3IENvZGVRbCh0aGlzLmdpdGh1Yiwge1xuICAgICAgICBsYW5ndWFnZXM6IFsncHl0aG9uJywgJ2FjdGlvbnMnXSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICAvLyBwcm9qZW4gb25seSB3aXJlcyB0aGUgbWVyZ2UgcXVldWUgdXAgZm9yIG5vZGUgcHJvamVjdHNcbiAgICBpZiAoKG1lcmdlZE9wdGlvbnMuYXV0b01lcmdlID8/IHRydWUpICYmIHRoaXMuZ2l0aHViPy5tZXJnaWZ5KSB7XG4gICAgICB0aGlzLmF1dG9NZXJnZSA9IG5ldyBnaXRodWIuQXV0b01lcmdlKFxuICAgICAgICB0aGlzLmdpdGh1YixcbiAgICAgICAgbWVyZ2VkT3B0aW9ucy5hdXRvTWVyZ2VPcHRpb25zLFxuICAgICAgKTtcbiAgICAgIGNvbmZpZ3VyZU1lcmdpZnkodGhpcywge1xuICAgICAgICBhcHByb3ZlZFJldmlld3M6IG1lcmdlZE9wdGlvbnMuYXV0b01lcmdlT3B0aW9ucz8uYXBwcm92ZWRSZXZpZXdzLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCAqIGZyb20gJy4vcHl0aG9uLXBhY2thZ2Utb3B0aW9ucyc7XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcHJvamVjdHMvcHl0aG9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1DQUFnQztBQUNoQyw4Q0FBd0U7QUFFeEUsbUVBQWdFO0FBQ2hFLDJEQUF3RDtBQUN4RCw2REFHeUM7QUFDekMseUZBQThGO0FBQzlGLG9EQUFpRDtBQUNqRCw2REFBeUQ7QUFFekQsU0FBUyxVQUFVLENBQUMsT0FBNkI7SUFDL0MsTUFBTSxFQUFFLElBQUksRUFBRSxHQUFHLE9BQU8sQ0FBQztJQUV6QixNQUFNLFFBQVEsR0FBRztRQUNmLElBQUk7UUFDSixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLDJCQUEyQixFQUFFLHFEQUE2QjtLQUNuQixDQUFDO0lBRTFDLE9BQU8sSUFBQSw0QkFBWSxFQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGFBQWMsU0FBUSxzQkFBYTs7SUFDckMsU0FBUyxDQUFvQjtJQUN0QyxNQUFNLENBQVM7SUFFZixZQUFZLE9BQTZCO1FBQ3ZDLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxQyxLQUFLLENBQUM7WUFDSixHQUFHLGFBQWE7U0FDTyxDQUFDLENBQUM7UUFFM0IsSUFBSSx1QkFBVSxDQUFDLElBQUksRUFBRSxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDL0MsSUFBSSxhQUFhLENBQUMsbUJBQW1CLElBQUksSUFBSSxFQUFFLENBQUM7WUFDOUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxzQkFBc0IsQ0FDakMsR0FBRyxDQUFDLGFBQWEsQ0FBQywyQkFBMkIsSUFBSSxFQUFFLENBQUMsQ0FDckQsQ0FBQztRQUNKLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksZUFBTSxDQUFDLElBQUksRUFBRTtZQUM3QixXQUFXLEVBQUUsYUFBYSxDQUFDLE1BQU0sRUFBRSxXQUFXO1NBQy9DLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUNwQixpQkFBaUIsRUFDakIsNENBQTRDLENBQzdDLENBQUM7UUFDRixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLGdCQUFnQixFQUFFLENBQUM7WUFDcEUsSUFBSSxlQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtnQkFDdEIsU0FBUyxFQUFFLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQzthQUNqQyxDQUFDLENBQUM7UUFDTCxDQUFDO1FBQ0QseURBQXlEO1FBQ3pELElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxFQUFFLENBQUM7WUFDOUQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLGVBQU0sQ0FBQyxTQUFTLENBQ25DLElBQUksQ0FBQyxNQUFNLEVBQ1gsSUFBQSwwQkFBZ0IsRUFBQyxhQUFhLENBQUMsQ0FDaEMsQ0FBQztZQUNGLElBQUEsMEJBQWdCLEVBQUMsSUFBSSxFQUFFO2dCQUNyQixlQUFlLEVBQUUsYUFBYSxDQUFDLGdCQUFnQixFQUFFLGVBQWU7Z0JBQ2hFLGNBQWMsRUFBRSxhQUFhLENBQUMsY0FBYzthQUM3QyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUF4Q0gsc0NBeUNDO0FBRUQsMkRBQXlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgZ2l0aHViIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IFB5dGhvblByb2plY3QsIFB5dGhvblByb2plY3RPcHRpb25zIH0gZnJvbSAncHJvamVuL2xpYi9weXRob24nO1xuaW1wb3J0IHsgUHl0aG9uUGFja2FnZU9wdGlvbnMgfSBmcm9tICcuL3B5dGhvbi1wYWNrYWdlLW9wdGlvbnMnO1xuaW1wb3J0IHsgQ29kZU93bmVycyB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZ2l0aHViL2NvZGVvd25lcnMnO1xuaW1wb3J0IHsgQ29kZVFsIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9naXRodWIvY29kZXFsJztcbmltcG9ydCB7XG4gIGF1dG9NZXJnZU9wdGlvbnMsXG4gIGNvbmZpZ3VyZU1lcmdpZnksXG59IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZ2l0aHViL21lcmdpZnknO1xuaW1wb3J0IHsgREVGQVVMVF9QVUxMX1JFUVVFU1RfVEVNUExBVEUgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2dpdGh1Yi9wdWxsLXJlcXVlc3QtdGVtcGxhdGUnO1xuaW1wb3J0IHsgUmVhZG1lIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9yZWFkbWUnO1xuaW1wb3J0IHsgbWVyZ2VPcHRpb25zIH0gZnJvbSAnLi4vLi4vdXRpbHMvbWVyZ2Utb3B0aW9ucyc7XG5cbmZ1bmN0aW9uIGdldE9wdGlvbnMob3B0aW9uczogUHl0aG9uUGFja2FnZU9wdGlvbnMpIHtcbiAgY29uc3QgeyBuYW1lIH0gPSBvcHRpb25zO1xuXG4gIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgIG5hbWUsXG4gICAgcHVsbFJlcXVlc3RUZW1wbGF0ZTogdHJ1ZSxcbiAgICBwdWxsUmVxdWVzdFRlbXBsYXRlQ29udGVudHM6IERFRkFVTFRfUFVMTF9SRVFVRVNUX1RFTVBMQVRFLFxuICB9IHNhdGlzZmllcyBQYXJ0aWFsPFB5dGhvblBhY2thZ2VPcHRpb25zPjtcblxuICByZXR1cm4gbWVyZ2VPcHRpb25zKGRlZmF1bHRzLCBvcHRpb25zKTtcbn1cblxuLyoqXG4gKiBBIFB5dGhvbiBwYWNrYWdlXG4gKlxuICpcbiAqIEBwamlkIHB5dGhvbi1wYWNrYWdlXG4gKi9cbmV4cG9ydCBjbGFzcyBQeXRob25QYWNrYWdlIGV4dGVuZHMgUHl0aG9uUHJvamVjdCB7XG4gIHJlYWRvbmx5IGF1dG9NZXJnZT86IGdpdGh1Yi5BdXRvTWVyZ2U7XG4gIHJlYWRtZTogUmVhZG1lO1xuXG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IFB5dGhvblBhY2thZ2VPcHRpb25zKSB7XG4gICAgY29uc3QgbWVyZ2VkT3B0aW9ucyA9IGdldE9wdGlvbnMob3B0aW9ucyk7XG5cbiAgICBzdXBlcih7XG4gICAgICAuLi5tZXJnZWRPcHRpb25zLFxuICAgIH0gYXMgUHl0aG9uUHJvamVjdE9wdGlvbnMpO1xuXG4gICAgbmV3IENvZGVPd25lcnModGhpcywgbWVyZ2VkT3B0aW9ucy5jb2RlT3duZXJzKTtcbiAgICBpZiAobWVyZ2VkT3B0aW9ucy5wdWxsUmVxdWVzdFRlbXBsYXRlID8/IHRydWUpIHtcbiAgICAgIHRoaXMuZ2l0aHViPy5hZGRQdWxsUmVxdWVzdFRlbXBsYXRlKFxuICAgICAgICAuLi4obWVyZ2VkT3B0aW9ucy5wdWxsUmVxdWVzdFRlbXBsYXRlQ29udGVudHMgPz8gW10pLFxuICAgICAgKTtcbiAgICB9XG4gICAgdGhpcy5yZWFkbWUgPSBuZXcgUmVhZG1lKHRoaXMsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiBtZXJnZWRPcHRpb25zLnJlYWRtZT8uZGVzY3JpcHRpb24sXG4gICAgfSk7XG4gICAgdGhpcy5yZWFkbWUuYWRkU2VjdGlvbihcbiAgICAgICdHZXR0aW5nIFN0YXJ0ZWQnLFxuICAgICAgJ2BgYHNoXFxueWFybiBpbnN0YWxsXFxubnB4IHByb2plbiBidWlsZFxcbmBgYCcsXG4gICAgKTtcbiAgICBpZiAoKG1lcmdlZE9wdGlvbnMuY29kZXFsID8/IHRydWUpICYmIHRoaXMuZ2l0aHViPy53b3JrZmxvd3NFbmFibGVkKSB7XG4gICAgICBuZXcgQ29kZVFsKHRoaXMuZ2l0aHViLCB7XG4gICAgICAgIGxhbmd1YWdlczogWydweXRob24nLCAnYWN0aW9ucyddLFxuICAgICAgfSk7XG4gICAgfVxuICAgIC8vIHByb2plbiBvbmx5IHdpcmVzIHRoZSBtZXJnZSBxdWV1ZSB1cCBmb3Igbm9kZSBwcm9qZWN0c1xuICAgIGlmICgobWVyZ2VkT3B0aW9ucy5hdXRvTWVyZ2UgPz8gdHJ1ZSkgJiYgdGhpcy5naXRodWI/Lm1lcmdpZnkpIHtcbiAgICAgIHRoaXMuYXV0b01lcmdlID0gbmV3IGdpdGh1Yi5BdXRvTWVyZ2UoXG4gICAgICAgIHRoaXMuZ2l0aHViLFxuICAgICAgICBhdXRvTWVyZ2VPcHRpb25zKG1lcmdlZE9wdGlvbnMpLFxuICAgICAgKTtcbiAgICAgIGNvbmZpZ3VyZU1lcmdpZnkodGhpcywge1xuICAgICAgICBhcHByb3ZlZFJldmlld3M6IG1lcmdlZE9wdGlvbnMuYXV0b01lcmdlT3B0aW9ucz8uYXBwcm92ZWRSZXZpZXdzLFxuICAgICAgICB0cnVzdGVkQXV0aG9yczogbWVyZ2VkT3B0aW9ucy50cnVzdGVkQXV0aG9ycyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuXG5leHBvcnQgKiBmcm9tICcuL3B5dGhvbi1wYWNrYWdlLW9wdGlvbnMnO1xuIl19
@@ -378,6 +378,11 @@ export interface PythonPackageOptions {
378
378
  * @featured true
379
379
  */
380
380
  readonly name: string;
381
+ /**
382
+ * Authors whose pull requests the merge queue merges without an approval, such as the single maintainer of a repository, who cannot approve their own pull requests.
383
+ * @default []
384
+ */
385
+ readonly trustedAuthors?: Array<string>;
381
386
  /**
382
387
  * Scan the code with CodeQL on pull requests, pushes to the default branch and weekly.
383
388
  * @default true
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHl0aG9uLXBhY2thZ2Utb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9qZWN0cy9weXRob24vcHl0aG9uLXBhY2thZ2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBnaXRodWIsIEdpdE9wdGlvbnMsIElnbm9yZUZpbGVPcHRpb25zLCBqYXZhc2NyaXB0LCBMb2dnZXJPcHRpb25zLCBQcm9qZWN0LCBQcm9qZW5yY0pzb25PcHRpb25zLCBweXRob24sIFJlbm92YXRlYm90T3B0aW9ucywgdHlwZXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgdHlwZSB7IFJlYWRtZU9wdGlvbnMgfSBmcm9tICcuLi8uLi8nO1xuXG4vKipcbiAqIFB5dGhvblBhY2thZ2VPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHl0aG9uUGFja2FnZU9wdGlvbnMge1xuICAvKipcbiAgICogVmVudiBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2ZW52T3B0aW9ucz86IHB5dGhvbi5WZW52T3B0aW9ucztcbiAgLyoqXG4gICAqIFVzZSB2ZW52IHRvIG1hbmFnZSBhIHZpcnR1YWwgZW52aXJvbm1lbnQgZm9yIGluc3RhbGxpbmcgZGVwZW5kZW5jaWVzIGluc2lkZS5cbiAgICogQGRlZmF1bHQgLSB0cnVlLCB1bmxlc3MgcG9ldHJ5IGlzIHRydWUsIHRoZW4gZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHZlbnY/OiBib29sZWFuO1xuICAvKipcbiAgICogVXNlIHV2IHRvIG1hbmFnZSB5b3VyIHByb2plY3QgZGVwZW5kZW5jaWVzLCB2aXJ0dWFsIGVudmlyb25tZW50LCBhbmQgKG9wdGlvbmFsKSBwYWNrYWdpbmcvcHVibGlzaGluZy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHV2PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZSBzZXR1cHRvb2xzIHdpdGggYSBzZXR1cC5weSBzY3JpcHQgZm9yIHBhY2thZ2luZyBhbmQgcHVibGlzaGluZy5cbiAgICogQGRlZmF1bHQgLSB0cnVlLCB1bmxlc3MgcG9ldHJ5IGlzIHRydWUsIHRoZW4gZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHNldHVwdG9vbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogTG9jYXRpb24gb2Ygc2FtcGxlIHRlc3RzLlxuICAgKiBUeXBpY2FsbHkgdGhlIHNhbWUgZGlyZWN0b3J5IHdoZXJlIHByb2plY3QgdGVzdHMgd2lsbCBiZSBsb2NhdGVkLlxuICAgKiBAZGVmYXVsdCBcInRlc3RzXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHNhbXBsZVRlc3RkaXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmNsdWRlIHNhbXBsZSBjb2RlIGFuZCB0ZXN0IGlmIHRoZSByZWxldmFudCBkaXJlY3RvcmllcyBkb24ndCBleGlzdC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgc2FtcGxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIHB5dGVzdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBweXRlc3RPcHRpb25zPzogcHl0aG9uLlB5dGVzdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBJbmNsdWRlIHB5dGVzdCB0ZXN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcHl0ZXN0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgcmVsYXRlZCB0byBwcm9qZW5yYyBpbiBUeXBlU2NyaXB0LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNUc09wdGlvbnM/OiB0eXBlc2NyaXB0LlByb2plbnJjVHNPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHByb2plbnJjIGluIFR5cGVTY3JpcHQuXG4gICAqIFRoaXMgd2lsbCBjcmVhdGUgYSB0c2NvbmZpZyBmaWxlIChkZWZhdWx0OiBgdHNjb25maWcucHJvamVuLmpzb25gKVxuICAgKiBhbmQgdXNlIGEgdHlwZXNjcmlwdCBydW5uZXIgaW4gdGhlIGRlZmF1bHQgdGFzayB0byBwYXJzZSB0aGUgcHJvamVjdCBzb3VyY2UgZmlsZXMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgcmVsYXRlZCB0byBwcm9qZW5yYyBpbiBweXRob24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1B5dGhvbk9wdGlvbnM/OiBweXRob24uUHJvamVucmNPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHByb2plbnJjIGluIFB5dGhvbi5cbiAgICogVGhpcyB3aWxsIGluc3RhbGwgYHByb2plbmAgYXMgYSBQeXRob24gZGVwZW5kZW5jeSBhbmQgYWRkIGEgYHN5bnRoYFxuICAgKiB0YXNrIHdoaWNoIHdpbGwgcnVuIGAucHJvamVucmMucHlgLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1B5dGhvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIHJlbGF0ZWQgdG8gcHJvamVucmMgaW4gSmF2YVNjcmlwdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNPcHRpb25zPzogamF2YXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgcHJvamVucmMgaW4gamF2YXNjcmlwdC5cbiAgICogVGhpcyB3aWxsIGluc3RhbGwgYHByb2plbmAgYXMgYSBKYXZhU2NyaXB0IGRlcGVuZGVuY3kgYW5kIGFkZCBhIGBzeW50aGBcbiAgICogdGFzayB3aGljaCB3aWxsIHJ1biBgLnByb2plbnJjLmpzYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnM/OiBib29sZWFuO1xuICAvKipcbiAgICogVXNlIHBvZXRyeSB0byBtYW5hZ2UgeW91ciBwcm9qZWN0IGRlcGVuZGVuY2llcywgdmlydHVhbCBlbnZpcm9ubWVudCwgYW5kIChvcHRpb25hbCkgcGFja2FnaW5nL3B1Ymxpc2hpbmcuXG4gICAqIFRoaXMgZmVhdHVyZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBwaXAsIHNldHVwdG9vbHMsIG9yIHZlbnYuXG4gICAqIElmIHlvdSBzZXQgdGhpcyBvcHRpb24gdG8gYHRydWVgLCB0aGVuIHBpcCwgc2V0dXB0b29scywgYW5kIHZlbnYgbXVzdCBiZSBzZXQgdG8gYGZhbHNlYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHBvZXRyeT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBVc2UgcGlwIHdpdGggYSByZXF1aXJlbWVudHMudHh0IGZpbGUgdG8gdHJhY2sgcHJvamVjdCBkZXBlbmRlbmNpZXMuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgdW5sZXNzIHBvZXRyeSBpcyB0cnVlLCB0aGVuIGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwaXA/OiBib29sZWFuO1xuICAvKipcbiAgICogTGlzdCBvZiBkZXYgZGVwZW5kZW5jaWVzIGZvciB0aGlzIHByb2plY3QuXG4gICAqIERlcGVuZGVuY2llcyB1c2UgdGhlIGZvcm1hdDogYDxtb2R1bGU+QDxzZW12ZXI+YFxuICAgKlxuICAgKiBBZGRpdGlvbmFsIGRlcGVuZGVuY2llcyBjYW4gYmUgYWRkZWQgdmlhIGBwcm9qZWN0LmFkZERldkRlcGVuZGVuY3koKWAuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXZEZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIExpc3Qgb2YgcnVudGltZSBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgcHJvamVjdC5cbiAgICogRGVwZW5kZW5jaWVzIHVzZSB0aGUgZm9ybWF0OiBgPG1vZHVsZT5APHNlbXZlcj5gXG4gICAqXG4gICAqIEFkZGl0aW9uYWwgZGVwZW5kZW5jaWVzIGNhbiBiZSBhZGRlZCB2aWEgYHByb2plY3QuYWRkRGVwZW5kZW5jeSgpYC5cbiAgICogQGRlZmF1bHQgW11cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgcHl0aG9uIHBhY2thZ2UgYXMgdXNlZCBpbiBpbXBvcnRzIGFuZCBmaWxlbmFtZXMuXG4gICAqIE11c3Qgb25seSBjb25zaXN0IG9mIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCB1bmRlcnNjb3Jlcy5cbiAgICogQGRlZmF1bHQgJFBZVEhPTl9NT0RVTEVfTkFNRVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbW9kdWxlTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogUGF0aCB0byB0aGUgcHl0aG9uIGV4ZWN1dGFibGUgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCBcInB5dGhvblwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBweXRob25FeGVjPzogc3RyaW5nO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBvcHRpb25zIHRvIHNldCBmb3IgdXYgaWYgdXNpbmcgdXYuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB1dk9wdGlvbnM/OiBweXRob24uVXZPcHRpb25zO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBmaWVsZHMgdG8gcGFzcyBpbiB0aGUgc2V0dXAoKSBmdW5jdGlvbiBpZiB1c2luZyBzZXR1cHRvb2xzLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgc2V0dXBDb25maWc/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICAvKipcbiAgICogQWRkaXRpb25hbCBvcHRpb25zIHRvIHNldCBmb3IgcG9ldHJ5IGlmIHVzaW5nIHBvZXRyeS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHBvZXRyeU9wdGlvbnM/OiBweXRob24uUG9ldHJ5UHlwcm9qZWN0T3B0aW9uc1dpdGhvdXREZXBzO1xuICAvKipcbiAgICogUGFja2FnZSBuYW1lLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaWNlbnNlIG9mIHRoaXMgcGFja2FnZSBhcyBhbiBTUERYIGlkZW50aWZpZXIuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBVUkwgdG8gdGhlIHdlYnNpdGUgb2YgdGhlIHByb2plY3QuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBob21lcGFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgc2hvcnQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBQeVBJIHRyb3ZlIGNsYXNzaWZpZXJzIHRoYXQgZGVzY3JpYmUgdGhlIHByb2plY3QuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBjbGFzc2lmaWVycz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIHRoZSBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCBcIjAuMS4wXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb246IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcidzIG5hbWUuXG4gICAqIEBkZWZhdWx0ICRHSVRfVVNFUl9OQU1FXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRob3JOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRob3IncyBlLW1haWwuXG4gICAqIEBkZWZhdWx0ICRHSVRfVVNFUl9FTUFJTFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yRW1haWw6IHN0cmluZztcbiAgLyoqXG4gICAqIEVuYWJsZSBWU0NvZGUgaW50ZWdyYXRpb24uXG4gICAqIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3Igcm9vdCBwcm9qZWN0cy4gRGlzYWJsZWQgZm9yIG5vbi1yb290IHByb2plY3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2c2NvZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0by1jbG9zZSBzdGFsZSBpc3N1ZXMgYW5kIHB1bGwgcmVxdWVzdHMuXG4gICAqIFRvIGRpc2FibGUgc2V0IGBzdGFsZWAgdG8gYGZhbHNlYC5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYFN0YWxlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHN0YWxlT3B0aW9ucz86IGdpdGh1Yi5TdGFsZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIG9mIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0LlxuICAgKiBTZWUgYHN0YWxlT3B0aW9uc2AgZm9yIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzdGFsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9mIHRoZSBSRUFETUUubWQgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG1lPzogUmVhZG1lT3B0aW9ucztcbiAgLyoqXG4gICAqIENob29zZSBhIG1ldGhvZCBvZiBwcm92aWRpbmcgR2l0SHViIEFQSSBhY2Nlc3MgZm9yIHByb2plbiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gdXNlIGEgcGVyc29uYWwgYWNjZXNzIHRva2VuIG5hbWVkIFBST0pFTl9HSVRIVUJfVE9LRU5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNyZWRlbnRpYWxzPzogZ2l0aHViLkdpdGh1YkNyZWRlbnRpYWxzO1xuICAvKipcbiAgICogQWRkIGEgR2l0cG9kIGRldmVsb3BtZW50IGVudmlyb25tZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0cG9kPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogQGRlZmF1bHQgLSBzZWUgR2l0SHViT3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViT3B0aW9ucz86IGdpdGh1Yi5HaXRIdWJPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogRW5hYmxlZCBieSBkZWZhdWx0IGZvciByb290IHByb2plY3RzLiBEaXNhYmxlZCBmb3Igbm9uLXJvb3QgcHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1Yj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBWU0NvZGUgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgKHVzZWQgZm9yIEdpdEh1YiBDb2Rlc3BhY2VzKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRldkNvbnRhaW5lcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBgY2xvYmJlcmAgdGFzayB3aGljaCByZXNldHMgdGhlIHJlcG8gdG8gb3JpZ2luLlxuICAgKiBAZGVmYXVsdCAtIHRydWUsIGJ1dCBmYWxzZSBmb3Igc3VicHJvamVjdHNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNsb2JiZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIG9wdGlvbnMgZm9yIGF1dG9tYXRpYyBtZXJnaW5nIG9uIEdpdEh1Yi5cbiAgICogSGFzIG5vIGVmZmVjdCBpZlxuICAgKiBgZ2l0aHViLm1lcmdpZnlgIG9yIGBhdXRvTWVyZ2VgIGlzIHNldCB0byBmYWxzZS5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYEF1dG9NZXJnZU9wdGlvbnNgXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2VPcHRpb25zPzogZ2l0aHViLkF1dG9NZXJnZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBFbmFibGUgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmIGBnaXRodWIubWVyZ2lmeWBcbiAgICogaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2U/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGFuZCBjb25maWd1cmUgdGhlICdhdXRvIGFwcHJvdmUnIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCAtIGF1dG8gYXBwcm92ZSBpcyBkaXNhYmxlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVPcHRpb25zPzogZ2l0aHViLkF1dG9BcHByb3ZlT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHJlbm92YXRlYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3RPcHRpb25zPzogUmVub3ZhdGVib3RPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHJlbm92YXRlYm90IHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb25PcHRpb25zPzogUHJvamVucmNKc29uT3B0aW9ucztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanNvbiAoaW4gSlNPTikuIFNldCB0byBgZmFsc2VgIGluIG9yZGVyIHRvIGRpc2FibGUgLnByb2plbnJjLmpzb24gZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgc2hlbGwgY29tbWFuZCB0byB1c2UgaW4gb3JkZXIgdG8gcnVuIHRoZSBwcm9qZW4gQ0xJLlxuICAgKiBJbnNlcnRlZCB2ZXJiYXRpbSBpbnRvIHRhc2sgc3RlcHMsIHdvcmtmbG93cyBhbmQgSURFIGNvbmZpZ3VyYXRpb24sIGFuZCBydW5cbiAgICogYnkgZWFjaCBvZiB0aGVpciBzaGVsbHMgLSBsb2NhbGx5LCBpbiBDSSBhbmQgaW4gZGV2IGNvbnRhaW5lcnMuIEtlZXAgaXQgYVxuICAgKiBwbGFpbiB1bnF1b3RlZCBjb21tYW5kLCBzaW5jZSBzaGVsbCBzeW50YXggaW4gaXQgZXhlY3V0ZXMgaW4gYWxsIG9mIHRoZW0uXG4gICAqXG4gICAqIENhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSBpbiBzcGVjaWFsIGVudmlyb25tZW50cy5cbiAgICogQGRlZmF1bHQgXCJucHggcHJvamVuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHByb2plY3QgdHJlZSBmaWxlIChgLnByb2plbi90cmVlLmpzb25gKSB0aGF0IHNob3dzIGFsbCBjb21wb25lbnRzIGFuZCB0aGVpciByZWxhdGlvbnNoaXBzLiBVc2VmdWwgZm9yIHVuZGVyc3RhbmRpbmcgeW91ciBwcm9qZWN0IHN0cnVjdHVyZSBhbmQgZGVidWdnaW5nLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdFRyZWU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHBhcmVudCBwcm9qZWN0LCBpZiB0aGlzIHByb2plY3QgaXMgcGFydCBvZiBhIGJpZ2dlciBwcm9qZWN0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50PzogUHJvamVjdDtcbiAgLyoqXG4gICAqIFRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICogUmVsYXRpdmUgdG8gdGhpcyBkaXJlY3RvcnksIGFsbCBmaWxlcyBhcmUgc3ludGhlc2l6ZWQuXG4gICAqXG4gICAqIElmIHRoaXMgcHJvamVjdCBoYXMgYSBwYXJlbnQsIHRoaXMgZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgICogZGlyZWN0b3J5IGFuZCBpdCBjYW5ub3QgYmUgdGhlIHNhbWUgYXMgdGhlIHBhcmVudCBvciBhbnkgb2YgaXQncyBvdGhlclxuICAgKiBzdWJwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgXCIuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG91dGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBsb2dnaW5nIG9wdGlvbnMgc3VjaCBhcyB2ZXJib3NpdHkuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsb2dnaW5nPzogTG9nZ2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgZ2l0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0T3B0aW9ucz86IEdpdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5naXRpZ25vcmUgZmlsZS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdElnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gY29tbWl0IHRoZSBtYW5hZ2VkIGZpbGVzIGJ5IGRlZmF1bHQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvbW1pdEdlbmVyYXRlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGlzIHRoZSBuYW1lIG9mIHlvdXIgcHJvamVjdC5cbiAgICogQGRlZmF1bHQgJEJBU0VESVJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIFNjYW4gdGhlIGNvZGUgd2l0aCBDb2RlUUwgb24gcHVsbCByZXF1ZXN0cywgcHVzaGVzIHRvIHRoZSBkZWZhdWx0IGJyYW5jaCBhbmQgd2Vla2x5LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBjb2RlcWw/OiBib29sZWFuO1xuICAvKipcbiAgICogTGlzdCBvZiB0ZWFtcyB1c2VkIHRvIGdlbmVyYXRlIHRoZSBDT0RFT1dORVJTIGZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVPd25lcnM6IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBJbmNsdWRlIGEgR2l0SHViIHB1bGwgcmVxdWVzdCB0ZW1wbGF0ZS5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcHVsbFJlcXVlc3RUZW1wbGF0ZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgY29udGVudHMgb2YgdGhlIHB1bGwgcmVxdWVzdCB0ZW1wbGF0ZS5cbiAgICogQGRlZmF1bHQgZGVmYXVsdCBjb250ZW50XG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlQ29udGVudHM/OiBBcnJheTxzdHJpbmc+O1xufVxuIl19
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHl0aG9uLXBhY2thZ2Utb3B0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wcm9qZWN0cy9weXRob24vcHl0aG9uLXBhY2thZ2Utb3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBnaXRodWIsIEdpdE9wdGlvbnMsIElnbm9yZUZpbGVPcHRpb25zLCBqYXZhc2NyaXB0LCBMb2dnZXJPcHRpb25zLCBQcm9qZWN0LCBQcm9qZW5yY0pzb25PcHRpb25zLCBweXRob24sIFJlbm92YXRlYm90T3B0aW9ucywgdHlwZXNjcmlwdCB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgdHlwZSB7IFJlYWRtZU9wdGlvbnMgfSBmcm9tICcuLi8uLi8nO1xuXG4vKipcbiAqIFB5dGhvblBhY2thZ2VPcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHl0aG9uUGFja2FnZU9wdGlvbnMge1xuICAvKipcbiAgICogVmVudiBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2ZW52T3B0aW9ucz86IHB5dGhvbi5WZW52T3B0aW9ucztcbiAgLyoqXG4gICAqIFVzZSB2ZW52IHRvIG1hbmFnZSBhIHZpcnR1YWwgZW52aXJvbm1lbnQgZm9yIGluc3RhbGxpbmcgZGVwZW5kZW5jaWVzIGluc2lkZS5cbiAgICogQGRlZmF1bHQgLSB0cnVlLCB1bmxlc3MgcG9ldHJ5IGlzIHRydWUsIHRoZW4gZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHZlbnY/OiBib29sZWFuO1xuICAvKipcbiAgICogVXNlIHV2IHRvIG1hbmFnZSB5b3VyIHByb2plY3QgZGVwZW5kZW5jaWVzLCB2aXJ0dWFsIGVudmlyb25tZW50LCBhbmQgKG9wdGlvbmFsKSBwYWNrYWdpbmcvcHVibGlzaGluZy5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHV2PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFVzZSBzZXR1cHRvb2xzIHdpdGggYSBzZXR1cC5weSBzY3JpcHQgZm9yIHBhY2thZ2luZyBhbmQgcHVibGlzaGluZy5cbiAgICogQGRlZmF1bHQgLSB0cnVlLCB1bmxlc3MgcG9ldHJ5IGlzIHRydWUsIHRoZW4gZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHNldHVwdG9vbHM/OiBib29sZWFuO1xuICAvKipcbiAgICogTG9jYXRpb24gb2Ygc2FtcGxlIHRlc3RzLlxuICAgKiBUeXBpY2FsbHkgdGhlIHNhbWUgZGlyZWN0b3J5IHdoZXJlIHByb2plY3QgdGVzdHMgd2lsbCBiZSBsb2NhdGVkLlxuICAgKiBAZGVmYXVsdCBcInRlc3RzXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHNhbXBsZVRlc3RkaXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBJbmNsdWRlIHNhbXBsZSBjb2RlIGFuZCB0ZXN0IGlmIHRoZSByZWxldmFudCBkaXJlY3RvcmllcyBkb24ndCBleGlzdC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgc2FtcGxlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIHB5dGVzdCBvcHRpb25zLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHRzXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBweXRlc3RPcHRpb25zPzogcHl0aG9uLlB5dGVzdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBJbmNsdWRlIHB5dGVzdCB0ZXN0cy5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKiBAZmVhdHVyZWQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgcHl0ZXN0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgcmVsYXRlZCB0byBwcm9qZW5yYyBpbiBUeXBlU2NyaXB0LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVucmNUc09wdGlvbnM/OiB0eXBlc2NyaXB0LlByb2plbnJjVHNPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHByb2plbnJjIGluIFR5cGVTY3JpcHQuXG4gICAqIFRoaXMgd2lsbCBjcmVhdGUgYSB0c2NvbmZpZyBmaWxlIChkZWZhdWx0OiBgdHNjb25maWcucHJvamVuLmpzb25gKVxuICAgKiBhbmQgdXNlIGEgdHlwZXNjcmlwdCBydW5uZXIgaW4gdGhlIGRlZmF1bHQgdGFzayB0byBwYXJzZSB0aGUgcHJvamVjdCBzb3VyY2UgZmlsZXMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1RzPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgcmVsYXRlZCB0byBwcm9qZW5yYyBpbiBweXRob24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1B5dGhvbk9wdGlvbnM/OiBweXRob24uUHJvamVucmNPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHByb2plbnJjIGluIFB5dGhvbi5cbiAgICogVGhpcyB3aWxsIGluc3RhbGwgYHByb2plbmAgYXMgYSBQeXRob24gZGVwZW5kZW5jeSBhbmQgYWRkIGEgYHN5bnRoYFxuICAgKiB0YXNrIHdoaWNoIHdpbGwgcnVuIGAucHJvamVucmMucHlgLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY1B5dGhvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBPcHRpb25zIHJlbGF0ZWQgdG8gcHJvamVucmMgaW4gSmF2YVNjcmlwdC5cbiAgICogQGRlZmF1bHQgLSBkZWZhdWx0IG9wdGlvbnNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNPcHRpb25zPzogamF2YXNjcmlwdC5Qcm9qZW5yY09wdGlvbnM7XG4gIC8qKlxuICAgKiBVc2UgcHJvamVucmMgaW4gamF2YXNjcmlwdC5cbiAgICogVGhpcyB3aWxsIGluc3RhbGwgYHByb2plbmAgYXMgYSBKYXZhU2NyaXB0IGRlcGVuZGVuY3kgYW5kIGFkZCBhIGBzeW50aGBcbiAgICogdGFzayB3aGljaCB3aWxsIHJ1biBgLnByb2plbnJjLmpzYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnM/OiBib29sZWFuO1xuICAvKipcbiAgICogVXNlIHBvZXRyeSB0byBtYW5hZ2UgeW91ciBwcm9qZWN0IGRlcGVuZGVuY2llcywgdmlydHVhbCBlbnZpcm9ubWVudCwgYW5kIChvcHRpb25hbCkgcGFja2FnaW5nL3B1Ymxpc2hpbmcuXG4gICAqIFRoaXMgZmVhdHVyZSBpcyBpbmNvbXBhdGlibGUgd2l0aCBwaXAsIHNldHVwdG9vbHMsIG9yIHZlbnYuXG4gICAqIElmIHlvdSBzZXQgdGhpcyBvcHRpb24gdG8gYHRydWVgLCB0aGVuIHBpcCwgc2V0dXB0b29scywgYW5kIHZlbnYgbXVzdCBiZSBzZXQgdG8gYGZhbHNlYC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHBvZXRyeT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBVc2UgcGlwIHdpdGggYSByZXF1aXJlbWVudHMudHh0IGZpbGUgdG8gdHJhY2sgcHJvamVjdCBkZXBlbmRlbmNpZXMuXG4gICAqIEBkZWZhdWx0IC0gdHJ1ZSwgdW5sZXNzIHBvZXRyeSBpcyB0cnVlLCB0aGVuIGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwaXA/OiBib29sZWFuO1xuICAvKipcbiAgICogTGlzdCBvZiBkZXYgZGVwZW5kZW5jaWVzIGZvciB0aGlzIHByb2plY3QuXG4gICAqIERlcGVuZGVuY2llcyB1c2UgdGhlIGZvcm1hdDogYDxtb2R1bGU+QDxzZW12ZXI+YFxuICAgKlxuICAgKiBBZGRpdGlvbmFsIGRlcGVuZGVuY2llcyBjYW4gYmUgYWRkZWQgdmlhIGBwcm9qZWN0LmFkZERldkRlcGVuZGVuY3koKWAuXG4gICAqIEBkZWZhdWx0IFtdXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXZEZXBzPzogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIExpc3Qgb2YgcnVudGltZSBkZXBlbmRlbmNpZXMgZm9yIHRoaXMgcHJvamVjdC5cbiAgICogRGVwZW5kZW5jaWVzIHVzZSB0aGUgZm9ybWF0OiBgPG1vZHVsZT5APHNlbXZlcj5gXG4gICAqXG4gICAqIEFkZGl0aW9uYWwgZGVwZW5kZW5jaWVzIGNhbiBiZSBhZGRlZCB2aWEgYHByb2plY3QuYWRkRGVwZW5kZW5jeSgpYC5cbiAgICogQGRlZmF1bHQgW11cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGRlcHM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgcHl0aG9uIHBhY2thZ2UgYXMgdXNlZCBpbiBpbXBvcnRzIGFuZCBmaWxlbmFtZXMuXG4gICAqIE11c3Qgb25seSBjb25zaXN0IG9mIGFscGhhbnVtZXJpYyBjaGFyYWN0ZXJzIGFuZCB1bmRlcnNjb3Jlcy5cbiAgICogQGRlZmF1bHQgJFBZVEhPTl9NT0RVTEVfTkFNRVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgbW9kdWxlTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogUGF0aCB0byB0aGUgcHl0aG9uIGV4ZWN1dGFibGUgdG8gdXNlLlxuICAgKiBAZGVmYXVsdCBcInB5dGhvblwiXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBweXRob25FeGVjPzogc3RyaW5nO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBvcHRpb25zIHRvIHNldCBmb3IgdXYgaWYgdXNpbmcgdXYuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB1dk9wdGlvbnM/OiBweXRob24uVXZPcHRpb25zO1xuICAvKipcbiAgICogQWRkaXRpb25hbCBmaWVsZHMgdG8gcGFzcyBpbiB0aGUgc2V0dXAoKSBmdW5jdGlvbiBpZiB1c2luZyBzZXR1cHRvb2xzLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgc2V0dXBDb25maWc/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuICAvKipcbiAgICogQWRkaXRpb25hbCBvcHRpb25zIHRvIHNldCBmb3IgcG9ldHJ5IGlmIHVzaW5nIHBvZXRyeS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHBvZXRyeU9wdGlvbnM/OiBweXRob24uUG9ldHJ5UHlwcm9qZWN0T3B0aW9uc1dpdGhvdXREZXBzO1xuICAvKipcbiAgICogUGFja2FnZSBuYW1lLlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGFja2FnZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaWNlbnNlIG9mIHRoaXMgcGFja2FnZSBhcyBhbiBTUERYIGlkZW50aWZpZXIuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsaWNlbnNlPzogc3RyaW5nO1xuICAvKipcbiAgICogQSBVUkwgdG8gdGhlIHdlYnNpdGUgb2YgdGhlIHByb2plY3QuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBob21lcGFnZT86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgc2hvcnQgZGVzY3JpcHRpb24gb2YgdGhlIHBhY2thZ2UuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqIEBmZWF0dXJlZCB0cnVlXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBQeVBJIHRyb3ZlIGNsYXNzaWZpZXJzIHRoYXQgZGVzY3JpYmUgdGhlIHByb2plY3QuXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBjbGFzc2lmaWVycz86IEFycmF5PHN0cmluZz47XG4gIC8qKlxuICAgKiBWZXJzaW9uIG9mIHRoZSBwYWNrYWdlLlxuICAgKiBAZGVmYXVsdCBcIjAuMS4wXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHZlcnNpb246IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcidzIG5hbWUuXG4gICAqIEBkZWZhdWx0ICRHSVRfVVNFUl9OQU1FXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRob3JOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdXRob3IncyBlLW1haWwuXG4gICAqIEBkZWZhdWx0ICRHSVRfVVNFUl9FTUFJTFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yRW1haWw6IHN0cmluZztcbiAgLyoqXG4gICAqIEVuYWJsZSBWU0NvZGUgaW50ZWdyYXRpb24uXG4gICAqIEVuYWJsZWQgYnkgZGVmYXVsdCBmb3Igcm9vdCBwcm9qZWN0cy4gRGlzYWJsZWQgZm9yIG5vbi1yb290IHByb2plY3RzLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSB2c2NvZGU/OiBib29sZWFuO1xuICAvKipcbiAgICogQXV0by1jbG9zZSBzdGFsZSBpc3N1ZXMgYW5kIHB1bGwgcmVxdWVzdHMuXG4gICAqIFRvIGRpc2FibGUgc2V0IGBzdGFsZWAgdG8gYGZhbHNlYC5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYFN0YWxlT3B0aW9uc2BcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHN0YWxlT3B0aW9ucz86IGdpdGh1Yi5TdGFsZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBBdXRvLWNsb3NlIG9mIHN0YWxlIGlzc3VlcyBhbmQgcHVsbCByZXF1ZXN0LlxuICAgKiBTZWUgYHN0YWxlT3B0aW9uc2AgZm9yIG9wdGlvbnMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBzdGFsZT86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9mIHRoZSBSRUFETUUubWQgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZG1lPzogUmVhZG1lT3B0aW9ucztcbiAgLyoqXG4gICAqIENob29zZSBhIG1ldGhvZCBvZiBwcm92aWRpbmcgR2l0SHViIEFQSSBhY2Nlc3MgZm9yIHByb2plbiB3b3JrZmxvd3MuXG4gICAqIEBkZWZhdWx0IC0gdXNlIGEgcGVyc29uYWwgYWNjZXNzIHRva2VuIG5hbWVkIFBST0pFTl9HSVRIVUJfVE9LRU5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNyZWRlbnRpYWxzPzogZ2l0aHViLkdpdGh1YkNyZWRlbnRpYWxzO1xuICAvKipcbiAgICogQWRkIGEgR2l0cG9kIGRldmVsb3BtZW50IGVudmlyb25tZW50LlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0cG9kPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogQGRlZmF1bHQgLSBzZWUgR2l0SHViT3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0aHViT3B0aW9ucz86IGdpdGh1Yi5HaXRIdWJPcHRpb25zO1xuICAvKipcbiAgICogRW5hYmxlIEdpdEh1YiBpbnRlZ3JhdGlvbi5cbiAgICogRW5hYmxlZCBieSBkZWZhdWx0IGZvciByb290IHByb2plY3RzLiBEaXNhYmxlZCBmb3Igbm9uLXJvb3QgcHJvamVjdHMuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1Yj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBWU0NvZGUgZGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgKHVzZWQgZm9yIEdpdEh1YiBDb2Rlc3BhY2VzKS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGRldkNvbnRhaW5lcj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBBZGQgYSBgY2xvYmJlcmAgdGFzayB3aGljaCByZXNldHMgdGhlIHJlcG8gdG8gb3JpZ2luLlxuICAgKiBAZGVmYXVsdCAtIHRydWUsIGJ1dCBmYWxzZSBmb3Igc3VicHJvamVjdHNcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNsb2JiZXI/OiBib29sZWFuO1xuICAvKipcbiAgICogQ29uZmlndXJlIG9wdGlvbnMgZm9yIGF1dG9tYXRpYyBtZXJnaW5nIG9uIEdpdEh1Yi5cbiAgICogSGFzIG5vIGVmZmVjdCBpZlxuICAgKiBgZ2l0aHViLm1lcmdpZnlgIG9yIGBhdXRvTWVyZ2VgIGlzIHNldCB0byBmYWxzZS5cbiAgICogQGRlZmF1bHQgLSBzZWUgZGVmYXVsdHMgaW4gYEF1dG9NZXJnZU9wdGlvbnNgXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2VPcHRpb25zPzogZ2l0aHViLkF1dG9NZXJnZU9wdGlvbnM7XG4gIC8qKlxuICAgKiBFbmFibGUgYXV0b21hdGljIG1lcmdpbmcgb24gR2l0SHViLlxuICAgKiBIYXMgbm8gZWZmZWN0IGlmIGBnaXRodWIubWVyZ2lmeWBcbiAgICogaXMgc2V0IHRvIGZhbHNlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBhdXRvTWVyZ2U/OiBib29sZWFuO1xuICAvKipcbiAgICogRW5hYmxlIGFuZCBjb25maWd1cmUgdGhlICdhdXRvIGFwcHJvdmUnIHdvcmtmbG93LlxuICAgKiBAZGVmYXVsdCAtIGF1dG8gYXBwcm92ZSBpcyBkaXNhYmxlZFxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0FwcHJvdmVPcHRpb25zPzogZ2l0aHViLkF1dG9BcHByb3ZlT3B0aW9ucztcbiAgLyoqXG4gICAqIE9wdGlvbnMgZm9yIHJlbm92YXRlYm90LlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9uc1xuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3RPcHRpb25zPzogUmVub3ZhdGVib3RPcHRpb25zO1xuICAvKipcbiAgICogVXNlIHJlbm92YXRlYm90IHRvIGhhbmRsZSBkZXBlbmRlbmN5IHVwZ3JhZGVzLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVub3ZhdGVib3Q/OiBib29sZWFuO1xuICAvKipcbiAgICogT3B0aW9ucyBmb3IgLnByb2plbnJjLmpzb24uXG4gICAqIEBkZWZhdWx0IC0gZGVmYXVsdCBvcHRpb25zXG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBwcm9qZW5yY0pzb25PcHRpb25zPzogUHJvamVucmNKc29uT3B0aW9ucztcbiAgLyoqXG4gICAqIEdlbmVyYXRlIChvbmNlKSAucHJvamVucmMuanNvbiAoaW4gSlNPTikuIFNldCB0byBgZmFsc2VgIGluIG9yZGVyIHRvIGRpc2FibGUgLnByb2plbnJjLmpzb24gZ2VuZXJhdGlvbi5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbnJjSnNvbj86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGUgc2hlbGwgY29tbWFuZCB0byB1c2UgaW4gb3JkZXIgdG8gcnVuIHRoZSBwcm9qZW4gQ0xJLlxuICAgKiBJbnNlcnRlZCB2ZXJiYXRpbSBpbnRvIHRhc2sgc3RlcHMsIHdvcmtmbG93cyBhbmQgSURFIGNvbmZpZ3VyYXRpb24sIGFuZCBydW5cbiAgICogYnkgZWFjaCBvZiB0aGVpciBzaGVsbHMgLSBsb2NhbGx5LCBpbiBDSSBhbmQgaW4gZGV2IGNvbnRhaW5lcnMuIEtlZXAgaXQgYVxuICAgKiBwbGFpbiB1bnF1b3RlZCBjb21tYW5kLCBzaW5jZSBzaGVsbCBzeW50YXggaW4gaXQgZXhlY3V0ZXMgaW4gYWxsIG9mIHRoZW0uXG4gICAqXG4gICAqIENhbiBiZSB1c2VkIHRvIGN1c3RvbWl6ZSBpbiBzcGVjaWFsIGVudmlyb25tZW50cy5cbiAgICogQGRlZmF1bHQgXCJucHggcHJvamVuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IHByb2plbkNvbW1hbmQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBHZW5lcmF0ZSBhIHByb2plY3QgdHJlZSBmaWxlIChgLnByb2plbi90cmVlLmpzb25gKSB0aGF0IHNob3dzIGFsbCBjb21wb25lbnRzIGFuZCB0aGVpciByZWxhdGlvbnNoaXBzLiBVc2VmdWwgZm9yIHVuZGVyc3RhbmRpbmcgeW91ciBwcm9qZWN0IHN0cnVjdHVyZSBhbmQgZGVidWdnaW5nLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdFRyZWU/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIHBhcmVudCBwcm9qZWN0LCBpZiB0aGlzIHByb2plY3QgaXMgcGFydCBvZiBhIGJpZ2dlciBwcm9qZWN0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50PzogUHJvamVjdDtcbiAgLyoqXG4gICAqIFRoZSByb290IGRpcmVjdG9yeSBvZiB0aGUgcHJvamVjdC5cbiAgICogUmVsYXRpdmUgdG8gdGhpcyBkaXJlY3RvcnksIGFsbCBmaWxlcyBhcmUgc3ludGhlc2l6ZWQuXG4gICAqXG4gICAqIElmIHRoaXMgcHJvamVjdCBoYXMgYSBwYXJlbnQsIHRoaXMgZGlyZWN0b3J5IGlzIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgICogZGlyZWN0b3J5IGFuZCBpdCBjYW5ub3QgYmUgdGhlIHNhbWUgYXMgdGhlIHBhcmVudCBvciBhbnkgb2YgaXQncyBvdGhlclxuICAgKiBzdWJwcm9qZWN0cy5cbiAgICogQGRlZmF1bHQgXCIuXCJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IG91dGRpcj86IHN0cmluZztcbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBsb2dnaW5nIG9wdGlvbnMgc3VjaCBhcyB2ZXJib3NpdHkuXG4gICAqIEBkZWZhdWx0IHt9XG4gICAqIEBzdGFiaWxpdHkgZXhwZXJpbWVudGFsXG4gICAqL1xuICByZWFkb25seSBsb2dnaW5nPzogTG9nZ2VyT3B0aW9ucztcbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gb3B0aW9ucyBmb3IgZ2l0LlxuICAgKiBAc3RhYmlsaXR5IGV4cGVyaW1lbnRhbFxuICAgKi9cbiAgcmVhZG9ubHkgZ2l0T3B0aW9ucz86IEdpdE9wdGlvbnM7XG4gIC8qKlxuICAgKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIC5naXRpZ25vcmUgZmlsZS5cbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGdpdElnbm9yZU9wdGlvbnM/OiBJZ25vcmVGaWxlT3B0aW9ucztcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gY29tbWl0IHRoZSBtYW5hZ2VkIGZpbGVzIGJ5IGRlZmF1bHQuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICovXG4gIHJlYWRvbmx5IGNvbW1pdEdlbmVyYXRlZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBUaGlzIGlzIHRoZSBuYW1lIG9mIHlvdXIgcHJvamVjdC5cbiAgICogQGRlZmF1bHQgJEJBU0VESVJcbiAgICogQHN0YWJpbGl0eSBleHBlcmltZW50YWxcbiAgICogQGZlYXR1cmVkIHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF1dGhvcnMgd2hvc2UgcHVsbCByZXF1ZXN0cyB0aGUgbWVyZ2UgcXVldWUgbWVyZ2VzIHdpdGhvdXQgYW4gYXBwcm92YWwsIHN1Y2ggYXMgdGhlIHNpbmdsZSBtYWludGFpbmVyIG9mIGEgcmVwb3NpdG9yeSwgd2hvIGNhbm5vdCBhcHByb3ZlIHRoZWlyIG93biBwdWxsIHJlcXVlc3RzLlxuICAgKiBAZGVmYXVsdCBbXVxuICAgKi9cbiAgcmVhZG9ubHkgdHJ1c3RlZEF1dGhvcnM/OiBBcnJheTxzdHJpbmc+O1xuICAvKipcbiAgICogU2NhbiB0aGUgY29kZSB3aXRoIENvZGVRTCBvbiBwdWxsIHJlcXVlc3RzLCBwdXNoZXMgdG8gdGhlIGRlZmF1bHQgYnJhbmNoIGFuZCB3ZWVrbHkuXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVxbD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBMaXN0IG9mIHRlYW1zIHVzZWQgdG8gZ2VuZXJhdGUgdGhlIENPREVPV05FUlMgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgY29kZU93bmVyczogQXJyYXk8c3RyaW5nPjtcbiAgLyoqXG4gICAqIEluY2x1ZGUgYSBHaXRIdWIgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBwdWxsUmVxdWVzdFRlbXBsYXRlPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBjb250ZW50cyBvZiB0aGUgcHVsbCByZXF1ZXN0IHRlbXBsYXRlLlxuICAgKiBAZGVmYXVsdCBkZWZhdWx0IGNvbnRlbnRcbiAgICovXG4gIHJlYWRvbmx5IHB1bGxSZXF1ZXN0VGVtcGxhdGVDb250ZW50cz86IEFycmF5PHN0cmluZz47XG59XG4iXX0=
package/package.json CHANGED
@@ -83,7 +83,7 @@
83
83
  "publishConfig": {
84
84
  "access": "public"
85
85
  },
86
- "version": "3.2.1",
86
+ "version": "3.2.2",
87
87
  "jest": {
88
88
  "coverageProvider": "v8",
89
89
  "testMatch": [