cdk-nextjs
Version:
Deploy Next.js apps on AWS with CDK
3 lines • 23.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT3B0aW9uYWxFZGdlRnVuY3Rpb25Qcm9wcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nZW5lcmF0ZWQtc3RydWN0cy9PcHRpb25hbEVkZ2VGdW5jdGlvblByb3BzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLnRzIGFuZCBydW4gXCJwbnBtIGRseCBwcm9qZW5cIi5cbmltcG9ydCB0eXBlIHsgYXdzX2NvZGVndXJ1cHJvZmlsZXIsIGF3c19lYzIsIGF3c19pYW0sIGF3c19rbXMsIGF3c19sYW1iZGEsIGF3c19sb2dzLCBhd3Nfc25zLCBhd3Nfc3FzLCBEdXJhdGlvbiwgU2l6ZSB9IGZyb20gJ2F3cy1jZGstbGliJztcblxuLyoqXG4gKiBPcHRpb25hbEVkZ2VGdW5jdGlvblByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgT3B0aW9uYWxFZGdlRnVuY3Rpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgc3RhY2sgSUQgb2YgTGFtYmRhQEVkZ2UgZnVuY3Rpb24uXG4gICAqIEBkZWZhdWx0IC0gYGVkZ2UtbGFtYmRhLXN0YWNrLSR7cmVnaW9ufWBcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHN0YWNrSWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgcnVudGltZSBlbnZpcm9ubWVudCBmb3IgdGhlIExhbWJkYSBmdW5jdGlvbiB0aGF0IHlvdSBhcmUgdXBsb2FkaW5nLlxuICAgKiBGb3IgdmFsaWQgdmFsdWVzLCBzZWUgdGhlIFJ1bnRpbWUgcHJvcGVydHkgaW4gdGhlIEFXUyBMYW1iZGEgRGV2ZWxvcGVyXG4gICAqIEd1aWRlLlxuICAgKlxuICAgKiBVc2UgYFJ1bnRpbWUuRlJPTV9JTUFHRWAgd2hlbiBkZWZpbmluZyBhIGZ1bmN0aW9uIGZyb20gYSBEb2NrZXIgaW1hZ2UuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBydW50aW1lPzogYXdzX2xhbWJkYS5SdW50aW1lO1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIG1ldGhvZCB3aXRoaW4geW91ciBjb2RlIHRoYXQgTGFtYmRhIGNhbGxzIHRvIGV4ZWN1dGUgeW91ciBmdW5jdGlvbi5cbiAgICogVGhlIGZvcm1hdCBpbmNsdWRlcyB0aGUgZmlsZSBuYW1lLiBJdCBjYW4gYWxzbyBpbmNsdWRlXG4gICAqIG5hbWVzcGFjZXMgYW5kIG90aGVyIHF1YWxpZmllcnMsIGRlcGVuZGluZyBvbiB0aGUgcnVudGltZS5cbiAgICogRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vbGFtYmRhL2xhdGVzdC9kZy9mb3VuZGF0aW9uLXByb2dtb2RlbC5odG1sLlxuICAgKlxuICAgKiBVc2UgYEhhbmRsZXIuRlJPTV9JTUFHRWAgd2hlbiBkZWZpbmluZyBhIGZ1bmN0aW9uIGZyb20gYSBEb2NrZXIgaW1hZ2UuXG4gICAqXG4gICAqIE5PVEU6IElmIHlvdSBzcGVjaWZ5IHlvdXIgc291cmNlIGNvZGUgYXMgaW5saW5lIHRleHQgYnkgc3BlY2lmeWluZyB0aGVcbiAgICogWmlwRmlsZSBwcm9wZXJ0eSB3aXRoaW4gdGhlIENvZGUgcHJvcGVydHksIHNwZWNpZnkgaW5kZXguZnVuY3Rpb25fbmFtZSBhc1xuICAgKiB0aGUgaGFuZGxlci5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGhhbmRsZXI/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgc291cmNlIGNvZGUgb2YgeW91ciBMYW1iZGEgZnVuY3Rpb24uXG4gICAqIFlvdSBjYW4gcG9pbnQgdG8gYSBmaWxlIGluIGFuXG4gICAqIEFtYXpvbiBTaW1wbGUgU3RvcmFnZSBTZXJ2aWNlIChBbWF6b24gUzMpIGJ1Y2tldCBvciBzcGVjaWZ5IHlvdXIgc291cmNlXG4gICAqIGNvZGUgYXMgaW5saW5lIHRleHQuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBjb2RlPzogYXdzX2xhbWJkYS5Db2RlO1xuICAvKipcbiAgICogV2hlcmUgdG8gcGxhY2UgdGhlIG5ldHdvcmsgaW50ZXJmYWNlcyB3aXRoaW4gdGhlIFZQQy5cbiAgICogVGhpcyByZXF1aXJlcyBgdnBjYCB0byBiZSBzcGVjaWZpZWQgaW4gb3JkZXIgZm9yIGludGVyZmFjZXMgdG8gYWN0dWFsbHkgYmVcbiAgICogcGxhY2VkIGluIHRoZSBzdWJuZXRzLiBJZiBgdnBjYCBpcyBub3Qgc3BlY2lmeSwgdGhpcyB3aWxsIHJhaXNlIGFuIGVycm9yLlxuICAgKlxuICAgKiBOb3RlOiBJbnRlcm5ldCBhY2Nlc3MgZm9yIExhbWJkYSBGdW5jdGlvbnMgcmVxdWlyZXMgYSBOQVQgR2F0ZXdheSwgc28gcGlja2luZ1xuICAgKiBwdWJsaWMgc3VibmV0cyBpcyBub3QgYWxsb3dlZCAodW5sZXNzIGBhbGxvd1B1YmxpY1N1Ym5ldGAgaXMgc2V0IHRvIGB0cnVlYCkuXG4gICAqIEBkZWZhdWx0IC0gdGhlIFZwYyBkZWZhdWx0IHN0cmF0ZWd5IGlmIG5vdCBzcGVjaWZpZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHZwY1N1Ym5ldHM/OiBhd3NfZWMyLlN1Ym5ldFNlbGVjdGlvbjtcbiAgLyoqXG4gICAqIFZQQyBuZXR3b3JrIHRvIHBsYWNlIExhbWJkYSBuZXR3b3JrIGludGVyZmFjZXMuXG4gICAqIFNwZWNpZnkgdGhpcyBpZiB0aGUgTGFtYmRhIGZ1bmN0aW9uIG5lZWRzIHRvIGFjY2VzcyByZXNvdXJjZXMgaW4gYSBWUEMuXG4gICAqIFRoaXMgaXMgcmVxdWlyZWQgd2hlbiBgdnBjU3VibmV0c2AgaXMgc3BlY2lmaWVkLlxuICAgKiBAZGVmYXVsdCAtIEZ1bmN0aW9uIGlzIG5vdCBwbGFjZWQgd2l0aGluIGEgVlBDLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdnBjPzogYXdzX2VjMi5JVnBjO1xuICAvKipcbiAgICogRW5hYmxlIEFXUyBYLVJheSBUcmFjaW5nIGZvciBMYW1iZGEgRnVuY3Rpb24uXG4gICAqIEBkZWZhdWx0IFRyYWNpbmcuRGlzYWJsZWRcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHRyYWNpbmc/OiBhd3NfbGFtYmRhLlRyYWNpbmc7XG4gIC8qKlxuICAgKiBUaGUgZnVuY3Rpb24gZXhlY3V0aW9uIHRpbWUgKGluIHNlY29uZHMpIGFmdGVyIHdoaWNoIExhbWJkYSB0ZXJtaW5hdGVzIHRoZSBmdW5jdGlvbi5cbiAgICogQmVjYXVzZSB0aGUgZXhlY3V0aW9uIHRpbWUgYWZmZWN0cyBjb3N0LCBzZXQgdGhpcyB2YWx1ZVxuICAgKiBiYXNlZCBvbiB0aGUgZnVuY3Rpb24ncyBleHBlY3RlZCBleGVjdXRpb24gdGltZS5cbiAgICogQGRlZmF1bHQgRHVyYXRpb24uc2Vjb25kcygzKVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgdGltZW91dD86IER1cmF0aW9uO1xuICAvKipcbiAgICogU2V0cyB0aGUgc3lzdGVtIGxvZyBsZXZlbCBmb3IgdGhlIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCBTeXN0ZW1Mb2dMZXZlbC5JTkZPXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBzeXN0ZW1Mb2dMZXZlbFYyPzogYXdzX2xhbWJkYS5TeXN0ZW1Mb2dMZXZlbDtcbiAgLyoqXG4gICAqIFNldHMgdGhlIHN5c3RlbSBsb2cgbGV2ZWwgZm9yIHRoZSBmdW5jdGlvbi5cbiAgICogQGRlZmF1bHQgXCJJTkZPXCJcbiAgICogQGRlcHJlY2F0ZWQgVXNlIGBzeXN0ZW1Mb2dMZXZlbFYyYCBhcyBhIHByb3BlcnR5IGluc3RlYWQuXG4gICAqIEBzdGFiaWxpdHkgZGVwcmVjYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgc3lzdGVtTG9nTGV2ZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBFbmFibGUgU25hcFN0YXJ0IGZvciBMYW1iZGEgRnVuY3Rpb24uXG4gICAqIFNuYXBTdGFydCBpcyBjdXJyZW50bHkgc3VwcG9ydGVkIGZvciBKYXZhIDExLCBKYXZhIDE3LCBQeXRob24gMy4xMiwgUHl0aG9uIDMuMTMsIGFuZCAuTkVUIDggcnVudGltZVxuICAgKiBAZGVmYXVsdCAtIE5vIHNuYXBzdGFydFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgc25hcFN0YXJ0PzogYXdzX2xhbWJkYS5TbmFwU3RhcnRDb25mO1xuICAvKipcbiAgICogVGhlIGxpc3Qgb2Ygc2VjdXJpdHkgZ3JvdXBzIHRvIGFzc29jaWF0ZSB3aXRoIHRoZSBMYW1iZGEncyBuZXR3b3JrIGludGVyZmFjZXMuXG4gICAqIE9ubHkgdXNlZCBpZiAndnBjJyBpcyBzdXBwbGllZC5cbiAgICogQGRlZmF1bHQgLSBJZiB0aGUgZnVuY3Rpb24gaXMgcGxhY2VkIHdpdGhpbiBhIFZQQyBhbmQgYSBzZWN1cml0eSBncm91cCBpc1xubm90IHNwZWNpZmllZCwgZWl0aGVyIGJ5IHRoaXMgb3Igc2VjdXJpdHlHcm91cCBwcm9wLCBhIGRlZGljYXRlZCBzZWN1cml0eVxuZ3JvdXAgd2lsbCBiZSBjcmVhdGVkIGZvciB0aGlzIGZ1bmN0aW9uLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cHM/OiBBcnJheTxhd3NfZWMyLklTZWN1cml0eUdyb3VwPjtcbiAgLyoqXG4gICAqIFNldHMgdGhlIHJ1bnRpbWUgbWFuYWdlbWVudCBjb25maWd1cmF0aW9uIGZvciBhIGZ1bmN0aW9uJ3MgdmVyc2lvbi5cbiAgICogQGRlZmF1bHQgQXV0b1xuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcnVudGltZU1hbmFnZW1lbnRNb2RlPzogYXdzX2xhbWJkYS5SdW50aW1lTWFuYWdlbWVudE1vZGU7XG4gIC8qKlxuICAgKiBMYW1iZGEgZXhlY3V0aW9uIHJvbGUuXG4gICAqIFRoaXMgaXMgdGhlIHJvbGUgdGhhdCB3aWxsIGJlIGFzc3VtZWQgYnkgdGhlIGZ1bmN0aW9uIHVwb24gZXhlY3V0aW9uLlxuICAgKiBJdCBjb250cm9scyB0aGUgcGVybWlzc2lvbnMgdGhhdCB0aGUgZnVuY3Rpb24gd2lsbCBoYXZlLiBUaGUgUm9sZSBtdXN0XG4gICAqIGJlIGFzc3VtYWJsZSBieSB0aGUgJ2xhbWJkYS5hbWF6b25hd3MuY29tJyBzZXJ2aWNlIHByaW5jaXBhbC5cbiAgICpcbiAgICogVGhlIGRlZmF1bHQgUm9sZSBhdXRvbWF0aWNhbGx5IGhhcyBwZXJtaXNzaW9ucyBncmFudGVkIGZvciBMYW1iZGEgZXhlY3V0aW9uLiBJZiB5b3VcbiAgICogcHJvdmlkZSBhIFJvbGUsIHlvdSBtdXN0IGFkZCB0aGUgcmVsZXZhbnQgQVdTIG1hbmFnZWQgcG9saWNpZXMgeW91cnNlbGYuXG4gICAqXG4gICAqIFRoZSByZWxldmFudCBtYW5hZ2VkIHBvbGljaWVzIGFyZSBcInNlcnZpY2Utcm9sZS9BV1NMYW1iZGFCYXNpY0V4ZWN1dGlvblJvbGVcIiBhbmRcbiAgICogXCJzZXJ2aWNlLXJvbGUvQVdTTGFtYmRhVlBDQWNjZXNzRXhlY3V0aW9uUm9sZVwiLlxuICAgKiBAZGVmYXVsdCAtIEEgdW5pcXVlIHJvbGUgd2lsbCBiZSBnZW5lcmF0ZWQgZm9yIHRoaXMgbGFtYmRhIGZ1bmN0aW9uLlxuQm90aCBzdXBwbGllZCBhbmQgZ2VuZXJhdGVkIHJvbGVzIGNhbiBhbHdheXMgYmUgY2hhbmdlZCBieSBjYWxsaW5nIGBhZGRUb1JvbGVQb2xpY3lgLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZT86IGF3c19pYW0uSVJvbGU7XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBvZiBjb25jdXJyZW50IGV4ZWN1dGlvbnMgeW91IHdhbnQgdG8gcmVzZXJ2ZSBmb3IgdGhlIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCAtIE5vIHNwZWNpZmljIGxpbWl0IC0gYWNjb3VudCBsaW1pdC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHJlc2VydmVkQ29uY3VycmVudEV4ZWN1dGlvbnM/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBTZXRzIHRoZSBSZWN1cnNpdmUgTG9vcCBQcm90ZWN0aW9uIGZvciBMYW1iZGEgRnVuY3Rpb24uXG4gICAqIEl0IGxldHMgTGFtYmRhIGRldGVjdCBhbmQgdGVybWluYXRlIHVuaW50ZW5kZWQgcmVjdXJzaXZlIGxvb3BzLlxuICAgKiBAZGVmYXVsdCBSZWN1cnNpdmVMb29wLlRlcm1pbmF0ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVjdXJzaXZlTG9vcD86IGF3c19sYW1iZGEuUmVjdXJzaXZlTG9vcDtcbiAgLyoqXG4gICAqIFByb2ZpbGluZyBHcm91cC5cbiAgICogQGRlZmF1bHQgLSBBIG5ldyBwcm9maWxpbmcgZ3JvdXAgd2lsbCBiZSBjcmVhdGVkIGlmIGBwcm9maWxpbmdgIGlzIHNldC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGluZ0dyb3VwPzogYXdzX2NvZGVndXJ1cHJvZmlsZXIuSVByb2ZpbGluZ0dyb3VwO1xuICAvKipcbiAgICogRW5hYmxlIHByb2ZpbGluZy5cbiAgICogQGRlZmF1bHQgLSBObyBwcm9maWxpbmcuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxpbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmeSB0aGUgY29uZmlndXJhdGlvbiBvZiBQYXJhbWV0ZXJzIGFuZCBTZWNyZXRzIEV4dGVuc2lvbi5cbiAgICogQGRlZmF1bHQgLSBObyBQYXJhbWV0ZXJzIGFuZCBTZWNyZXRzIEV4dGVuc2lvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFyYW1zQW5kU2VjcmV0cz86IGF3c19sYW1iZGEuUGFyYW1zQW5kU2VjcmV0c0xheWVyVmVyc2lvbjtcbiAgLyoqXG4gICAqIFRoZSBhbW91bnQgb2YgbWVtb3J5LCBpbiBNQiwgdGhhdCBpcyBhbGxvY2F0ZWQgdG8geW91ciBMYW1iZGEgZnVuY3Rpb24uXG4gICAqIExhbWJkYSB1c2VzIHRoaXMgdmFsdWUgdG8gcHJvcG9ydGlvbmFsbHkgYWxsb2NhdGUgdGhlIGFtb3VudCBvZiBDUFVcbiAgICogcG93ZXIuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgUmVzb3VyY2UgTW9kZWwgaW4gdGhlIEFXUyBMYW1iZGFcbiAgICogRGV2ZWxvcGVyIEd1aWRlLlxuICAgKiBAZGVmYXVsdCAxMjhcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG1lbW9yeVNpemU/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgSUFNIHJvbGUgZm9yIHRoZSBMYW1iZGEgZnVuY3Rpb24gYXNzb2NpYXRlZCB3aXRoIHRoZSBjdXN0b20gcmVzb3VyY2UgdGhhdCBzZXRzIHRoZSByZXRlbnRpb24gcG9saWN5LlxuICAgKiBUaGlzIGlzIGEgbGVnYWN5IEFQSSBhbmQgd2Ugc3Ryb25nbHkgcmVjb21tZW5kIHlvdSBtaWdyYXRlIHRvIGBsb2dHcm91cGAgaWYgeW91IGNhbi5cbiAgICogYGxvZ0dyb3VwYCBhbGxvd3MgeW91IHRvIGNyZWF0ZSBhIGZ1bGx5IGN1c3RvbWl6YWJsZSBsb2cgZ3JvdXAgYW5kIGluc3RydWN0IHRoZSBMYW1iZGEgZnVuY3Rpb24gdG8gc2VuZCBsb2dzIHRvIGl0LlxuICAgKiBAZGVmYXVsdCAtIEEgbmV3IHJvbGUgaXMgY3JlYXRlZC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxvZ1JldGVudGlvblJvbGU/OiBhd3NfaWFtLklSb2xlO1xuICAvKipcbiAgICogV2hlbiBsb2cgcmV0ZW50aW9uIGlzIHNwZWNpZmllZCwgYSBjdXN0b20gcmVzb3VyY2UgYXR0ZW1wdHMgdG8gY3JlYXRlIHRoZSBDbG91ZFdhdGNoIGxvZyBncm91cC5cbiAgICogVGhlc2Ugb3B0aW9ucyBjb250cm9sIHRoZSByZXRyeSBwb2xpY3kgd2hlbiBpbnRlcmFjdGluZyB3aXRoIENsb3VkV2F0Y2ggQVBJcy5cbiAgICpcbiAgICogVGhpcyBpcyBhIGxlZ2FjeSBBUEkgYW5kIHdlIHN0cm9uZ2x5IHJlY29tbWVuZCB5b3UgbWlncmF0ZSB0byBgbG9nR3JvdXBgIGlmIHlvdSBjYW4uXG4gICAqIGBsb2dHcm91cGAgYWxsb3dzIHlvdSB0byBjcmVhdGUgYSBmdWxseSBjdXN0b21pemFibGUgbG9nIGdyb3VwIGFuZCBpbnN0cnVjdCB0aGUgTGFtYmRhIGZ1bmN0aW9uIHRvIHNlbmQgbG9ncyB0byBpdC5cbiAgICogQGRlZmF1bHQgLSBEZWZhdWx0IEFXUyBTREsgcmV0cnkgb3B0aW9ucy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxvZ1JldGVudGlvblJldHJ5T3B0aW9ucz86IGF3c19sYW1iZGEuTG9nUmV0ZW50aW9uUmV0cnlPcHRpb25zO1xuICAvKipcbiAgICogVGhlIG51bWJlciBvZiBkYXlzIGxvZyBldmVudHMgYXJlIGtlcHQgaW4gQ2xvdWRXYXRjaCBMb2dzLlxuICAgKiBXaGVuIHVwZGF0aW5nXG4gICAqIHRoaXMgcHJvcGVydHksIHVuc2V0dGluZyBpdCBkb2Vzbid0IHJlbW92ZSB0aGUgbG9nIHJldGVudGlvbiBwb2xpY3kuIFRvXG4gICAqIHJlbW92ZSB0aGUgcmV0ZW50aW9uIHBvbGljeSwgc2V0IHRoZSB2YWx1ZSB0byBgSU5GSU5JVEVgLlxuICAgKlxuICAgKiBUaGlzIGlzIGEgbGVnYWN5IEFQSSBhbmQgd2Ugc3Ryb25nbHkgcmVjb21tZW5kIHlvdSBtb3ZlIGF3YXkgZnJvbSBpdCBpZiB5b3UgY2FuLlxuICAgKiBJbnN0ZWFkIGNyZWF0ZSBhIGZ1bGx5IGN1c3RvbWl6YWJsZSBsb2cgZ3JvdXAgd2l0aCBgbG9ncy5Mb2dHcm91cGAgYW5kIHVzZSB0aGUgYGxvZ0dyb3VwYCBwcm9wZXJ0eVxuICAgKiB0byBpbnN0cnVjdCB0aGUgTGFtYmRhIGZ1bmN0aW9uIHRvIHNlbmQgbG9ncyB0byBpdC5cbiAgICogTWlncmF0aW5nIGZyb20gYGxvZ1JldGVudGlvbmAgdG8gYGxvZ0dyb3VwYCB3aWxsIGNhdXNlIHRoZSBuYW1lIG9mIHRoZSBsb2cgZ3JvdXAgdG8gY2hhbmdlLlxuICAgKiBVc2VycyBhbmQgY29kZSBhbmQgcmVmZXJlbmNpbmcgdGhlIG5hbWUgdmVyYmF0aW0gd2lsbCBoYXZlIHRvIGFkanVzdC5cbiAgICpcbiAgICogSW4gQVdTIENESyBjb2RlLCB5b3UgY2FuIGFjY2VzcyB0aGUgbG9nIGdyb3VwIG5hbWUgZGlyZWN0bHkgZnJvbSB0aGUgTG9nR3JvdXAgY29uc3RydWN0OlxuICAgKiBgYGB0c1xuICAgKiBpbXBvcnQgKiBhcyBsb2dzIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sb2dzJztcbiAgICpcbiAgICogZGVjbGFyZSBjb25zdCBteUxvZ0dyb3VwOiBsb2dzLkxvZ0dyb3VwO1xuICAgKiBteUxvZ0dyb3VwLmxvZ0dyb3VwTmFtZTtcbiAgICogYGBgXG4gICAqIEBkZWZhdWx0IGxvZ3MuUmV0ZW50aW9uRGF5cy5JTkZJTklURVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9nUmV0ZW50aW9uPzogYXdzX2xvZ3MuUmV0ZW50aW9uRGF5cztcbiAgLyoqXG4gICAqIFRoZSBsb2cgZ3JvdXAgdGhlIGZ1bmN0aW9uIHNlbmRzIGxvZ3MgdG8uXG4gICAqIEJ5IGRlZmF1bHQsIExhbWJkYSBmdW5jdGlvbnMgc2VuZCBsb2dzIHRvIGFuIGF1dG9tYXRpY2FsbHkgY3JlYXRlZCBkZWZhdWx0IGxvZyBncm91cCBuYW1lZCAvYXdzL2xhbWJkYS9cXDxmdW5jdGlvbiBuYW1lXFw+LlxuICAgKiBIb3dldmVyIHlvdSBjYW5ub3QgY2hhbmdlIHRoZSBwcm9wZXJ0aWVzIG9mIHRoaXMgYXV0by1jcmVhdGVkIGxvZyBncm91cCB1c2luZyB0aGUgQVdTIENESywgZS5nLiB5b3UgY2Fubm90IHNldCBhIGRpZmZlcmVudCBsb2cgcmV0ZW50aW9uLlxuICAgKlxuICAgKiBVc2UgdGhlIGBsb2dHcm91cGAgcHJvcGVydHkgdG8gY3JlYXRlIGEgZnVsbHkgY3VzdG9taXphYmxlIExvZ0dyb3VwIGFoZWFkIG9mIHRpbWUsIGFuZCBpbnN0cnVjdCB0aGUgTGFtYmRhIGZ1bmN0aW9uIHRvIHNlbmQgbG9ncyB0byBpdC5cbiAgICpcbiAgICogUHJvdmlkaW5nIGEgdXNlci1jb250cm9sbGVkIGxvZyBncm91cCB3YXMgcm9sbGVkIG91dCB0byBjb21tZXJjaWFsIHJlZ2lvbnMgb24gMjAyMy0xMS0xNi5cbiAgICogSWYgeW91IGFyZSBkZXBsb3lpbmcgdG8gYW5vdGhlciB0eXBlIG9mIHJlZ2lvbiwgcGxlYXNlIGNoZWNrIHJlZ2lvbmFsIGF2YWlsYWJpbGl0eSBmaXJzdC5cbiAgICogQGRlZmF1bHQgYC9hd3MvbGFtYmRhLyR7dGhpcy5mdW5jdGlvbk5hbWV9YCAtIGRlZmF1bHQgbG9nIGdyb3VwIGNyZWF0ZWQgYnkgTGFtYmRhXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBsb2dHcm91cD86IGF3c19sb2dzLklMb2dHcm91cDtcbiAgLyoqXG4gICAqIFNldHMgdGhlIGxvZ2dpbmdGb3JtYXQgZm9yIHRoZSBmdW5jdGlvbi5cbiAgICogQGRlZmF1bHQgTG9nZ2luZ0Zvcm1hdC5URVhUXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBsb2dnaW5nRm9ybWF0PzogYXdzX2xhbWJkYS5Mb2dnaW5nRm9ybWF0O1xuICAvKipcbiAgICogU2V0cyB0aGUgbG9nRm9ybWF0IGZvciB0aGUgZnVuY3Rpb24uXG4gICAqIEBkZWZhdWx0IFwiVGV4dFwiXG4gICAqIEBkZXByZWNhdGVkIFVzZSBgbG9nZ2luZ0Zvcm1hdGAgYXMgYSBwcm9wZXJ0eSBpbnN0ZWFkLlxuICAgKiBAc3RhYmlsaXR5IGRlcHJlY2F0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGxvZ0Zvcm1hdD86IHN0cmluZztcbiAgLyoqXG4gICAqIEEgbGlzdCBvZiBsYXllcnMgdG8gYWRkIHRvIHRoZSBmdW5jdGlvbidzIGV4ZWN1dGlvbiBlbnZpcm9ubWVudC5cbiAgICogWW91IGNhbiBjb25maWd1cmUgeW91ciBMYW1iZGEgZnVuY3Rpb24gdG8gcHVsbCBpblxuICAgKiBhZGRpdGlvbmFsIGNvZGUgZHVyaW5nIGluaXRpYWxpemF0aW9uIGluIHRoZSBmb3JtIG9mIGxheWVycy4gTGF5ZXJzIGFyZSBwYWNrYWdlcyBvZiBsaWJyYXJpZXMgb3Igb3RoZXIgZGVwZW5kZW5jaWVzXG4gICAqIHRoYXQgY2FuIGJlIHVzZWQgYnkgbXVsdGlwbGUgZnVuY3Rpb25zLlxuICAgKiBAZGVmYXVsdCAtIE5vIGxheWVycy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGxheWVycz86IEFycmF5PGF3c19sYW1iZGEuSUxheWVyVmVyc2lvbj47XG4gIC8qKlxuICAgKiBBbGxvd3Mgb3V0Ym91bmQgSVB2NiB0cmFmZmljIG9uIFZQQyBmdW5jdGlvbnMgdGhhdCBhcmUgY29ubmVjdGVkIHRvIGR1YWwtc3RhY2sgc3VibmV0cy5cbiAgICogT25seSB1c2VkIGlmICd2cGMnIGlzIHN1cHBsaWVkLlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgaXB2NkFsbG93ZWRGb3JEdWFsU3RhY2s/OiBib29sZWFuO1xuICAvKipcbiAgICogU3BlY2lmeSB0aGUgdmVyc2lvbiBvZiBDbG91ZFdhdGNoIExhbWJkYSBpbnNpZ2h0cyB0byB1c2UgZm9yIG1vbml0b3JpbmcuXG4gICAqIEBkZWZhdWx0IC0gTm8gTGFtYmRhIEluc2lnaHRzXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBpbnNpZ2h0c1ZlcnNpb24/OiBhd3NfbGFtYmRhLkxhbWJkYUluc2lnaHRzVmVyc2lvbjtcbiAgLyoqXG4gICAqIEluaXRpYWwgcG9saWN5IHN0YXRlbWVudHMgdG8gYWRkIHRvIHRoZSBjcmVhdGVkIExhbWJkYSBSb2xlLlxuICAgKiBZb3UgY2FuIGNhbGwgYGFkZFRvUm9sZVBvbGljeWAgdG8gdGhlIGNyZWF0ZWQgbGFtYmRhIHRvIGFkZCBzdGF0ZW1lbnRzIHBvc3QgY3JlYXRpb24uXG4gICAqIEBkZWZhdWx0IC0gTm8gcG9saWN5IHN0YXRlbWVudHMgYXJlIGFkZGVkIHRvIHRoZSBjcmVhdGVkIExhbWJkYSByb2xlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgaW5pdGlhbFBvbGljeT86IEFycmF5PGF3c19pYW0uUG9saWN5U3RhdGVtZW50PjtcbiAgLyoqXG4gICAqIEEgbmFtZSBmb3IgdGhlIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCAtIEFXUyBDbG91ZEZvcm1hdGlvbiBnZW5lcmF0ZXMgYSB1bmlxdWUgcGh5c2ljYWwgSUQgYW5kIHVzZXMgdGhhdFxuSUQgZm9yIHRoZSBmdW5jdGlvbidzIG5hbWUuIEZvciBtb3JlIGluZm9ybWF0aW9uLCBzZWUgTmFtZSBUeXBlLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZnVuY3Rpb25OYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGZpbGVzeXN0ZW0gY29uZmlndXJhdGlvbiBmb3IgdGhlIGxhbWJkYSBmdW5jdGlvbi5cbiAgICogQGRlZmF1bHQgLSB3aWxsIG5vdCBtb3VudCBhbnkgZmlsZXN5c3RlbVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZmlsZXN5c3RlbT86IGF3c19sYW1iZGEuRmlsZVN5c3RlbTtcbiAgLyoqXG4gICAqIEV2ZW50IHNvdXJjZXMgZm9yIHRoaXMgZnVuY3Rpb24uXG4gICAqIFlvdSBjYW4gYWxzbyBhZGQgZXZlbnQgc291cmNlcyB1c2luZyBgYWRkRXZlbnRTb3VyY2VgLlxuICAgKiBAZGVmYXVsdCAtIE5vIGV2ZW50IHNvdXJjZXMuXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBldmVudHM/OiBBcnJheTxhd3NfbGFtYmRhLklFdmVudFNvdXJjZT47XG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgZnVuY3Rpb27igJlzIC90bXAgZGlyZWN0b3J5IGluIE1pQi5cbiAgICogQGRlZmF1bHQgNTEyIE1pQlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZXBoZW1lcmFsU3RvcmFnZVNpemU/OiBTaXplO1xuICAvKipcbiAgICogVGhlIEFXUyBLTVMga2V5IHRoYXQncyB1c2VkIHRvIGVuY3J5cHQgeW91ciBmdW5jdGlvbidzIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAgICogQGRlZmF1bHQgLSBBV1MgTGFtYmRhIGNyZWF0ZXMgYW5kIHVzZXMgYW4gQVdTIG1hbmFnZWQgY3VzdG9tZXIgbWFzdGVyIGtleSAoQ01LKS5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50RW5jcnlwdGlvbj86IGF3c19rbXMuSUtleTtcbiAgLyoqXG4gICAqIEtleS12YWx1ZSBwYWlycyB0aGF0IExhbWJkYSBjYWNoZXMgYW5kIG1ha2VzIGF2YWlsYWJsZSBmb3IgeW91ciBMYW1iZGEgZnVuY3Rpb25zLlxuICAgKiBVc2UgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGFwcGx5IGNvbmZpZ3VyYXRpb24gY2hhbmdlcywgc3VjaFxuICAgKiBhcyB0ZXN0IGFuZCBwcm9kdWN0aW9uIGVudmlyb25tZW50IGNvbmZpZ3VyYXRpb25zLCB3aXRob3V0IGNoYW5naW5nIHlvdXJcbiAgICogTGFtYmRhIGZ1bmN0aW9uIHNvdXJjZSBjb2RlLlxuICAgKiBAZGVmYXVsdCAtIE5vIGVudmlyb25tZW50IHZhcmlhYmxlcy5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGVudmlyb25tZW50PzogUmVjb3JkPHN0cmluZywgc3RyaW5nPjtcbiAgLyoqXG4gICAqIEEgZGVzY3JpcHRpb24gb2YgdGhlIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCAtIE5vIGRlc2NyaXB0aW9uLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgU05TIHRvcGljIHRvIHVzZSBhcyBhIERMUS5cbiAgICogTm90ZSB0aGF0IGlmIGBkZWFkTGV0dGVyUXVldWVFbmFibGVkYCBpcyBzZXQgdG8gYHRydWVgLCBhbiBTUVMgcXVldWUgd2lsbCBiZSBjcmVhdGVkXG4gICAqIHJhdGhlciB0aGFuIGFuIFNOUyB0b3BpYy4gVXNpbmcgYW4gU05TIHRvcGljIGFzIGEgRExRIHJlcXVpcmVzIHRoaXMgcHJvcGVydHkgdG8gYmUgc2V0IGV4cGxpY2l0bHkuXG4gICAqIEBkZWZhdWx0IC0gbm8gU05TIHRvcGljXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBkZWFkTGV0dGVyVG9waWM/OiBhd3Nfc25zLklUb3BpYztcbiAgLyoqXG4gICAqIEVuYWJsZWQgRExRLlxuICAgKiBJZiBgZGVhZExldHRlclF1ZXVlYCBpcyB1bmRlZmluZWQsXG4gICAqIGFuIFNRUyBxdWV1ZSB3aXRoIGRlZmF1bHQgb3B0aW9ucyB3aWxsIGJlIGRlZmluZWQgZm9yIHlvdXIgRnVuY3Rpb24uXG4gICAqIEBkZWZhdWx0IC0gZmFsc2UgdW5sZXNzIGBkZWFkTGV0dGVyUXVldWVgIGlzIHNldCwgd2hpY2ggaW1wbGllcyBETFEgaXMgZW5hYmxlZC5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRlYWRMZXR0ZXJRdWV1ZUVuYWJsZWQ/OiBib29sZWFuO1xuICAvKipcbiAgICogVGhlIFNRUyBxdWV1ZSB0byB1c2UgaWYgRExRIGlzIGVuYWJsZWQuXG4gICAqIElmIFNOUyB0b3BpYyBpcyBkZXNpcmVkLCBzcGVjaWZ5IGBkZWFkTGV0dGVyVG9waWNgIHByb3BlcnR5IGluc3RlYWQuXG4gICAqIEBkZWZhdWx0IC0gU1FTIHF1ZXVlIHdpdGggMTQgZGF5IHJldGVudGlvbiBwZXJpb2QgaWYgYGRlYWRMZXR0ZXJRdWV1ZUVuYWJsZWRgIGlzIGB0cnVlYFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVhZExldHRlclF1ZXVlPzogYXdzX3Nxcy5JUXVldWU7XG4gIC8qKlxuICAgKiBPcHRpb25zIGZvciB0aGUgYGxhbWJkYS5WZXJzaW9uYCByZXNvdXJjZSBhdXRvbWF0aWNhbGx5IGNyZWF0ZWQgYnkgdGhlIGBmbi5jdXJyZW50VmVyc2lvbmAgbWV0aG9kLlxuICAgKiBAZGVmYXVsdCAtIGRlZmF1bHQgb3B0aW9ucyBhcyBkZXNjcmliZWQgaW4gYFZlcnNpb25PcHRpb25zYFxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY3VycmVudFZlcnNpb25PcHRpb25zPzogYXdzX2xhbWJkYS5WZXJzaW9uT3B0aW9ucztcbiAgLyoqXG4gICAqIENvZGUgc2lnbmluZyBjb25maWcgYXNzb2NpYXRlZCB3aXRoIHRoaXMgZnVuY3Rpb24uXG4gICAqIEBkZWZhdWx0IC0gTm90IFNpZ24gdGhlIENvZGVcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGNvZGVTaWduaW5nQ29uZmlnPzogYXdzX2xhbWJkYS5JQ29kZVNpZ25pbmdDb25maWc7XG4gIC8qKlxuICAgKiBUaGUgc3lzdGVtIGFyY2hpdGVjdHVyZXMgY29tcGF0aWJsZSB3aXRoIHRoaXMgbGFtYmRhIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCBBcmNoaXRlY3R1cmUuWDg2XzY0XG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhcmNoaXRlY3R1cmU/OiBhd3NfbGFtYmRhLkFyY2hpdGVjdHVyZTtcbiAgLyoqXG4gICAqIFNldHMgdGhlIGFwcGxpY2F0aW9uIGxvZyBsZXZlbCBmb3IgdGhlIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCBBcHBsaWNhdGlvbkxvZ0xldmVsLklORk9cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGFwcGxpY2F0aW9uTG9nTGV2ZWxWMj86IGF3c19sYW1iZGEuQXBwbGljYXRpb25Mb2dMZXZlbDtcbiAgLyoqXG4gICAqIFNldHMgdGhlIGFwcGxpY2F0aW9uIGxvZyBsZXZlbCBmb3IgdGhlIGZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCBcIklORk9cIlxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYGFwcGxpY2F0aW9uTG9nTGV2ZWxWMmAgYXMgYSBwcm9wZXJ0eSBpbnN0ZWFkLlxuICAgKiBAc3RhYmlsaXR5IGRlcHJlY2F0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGFwcGxpY2F0aW9uTG9nTGV2ZWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMYW1iZGEgRnVuY3Rpb25zIGluIGEgcHVibGljIHN1Ym5ldCBjYW4gTk9UIGFjY2VzcyB0aGUgaW50ZXJuZXQuXG4gICAqIFVzZSB0aGlzIHByb3BlcnR5IHRvIGFja25vd2xlZGdlIHRoaXMgbGltaXRhdGlvbiBhbmQgc3RpbGwgcGxhY2UgdGhlIGZ1bmN0aW9uIGluIGEgcHVibGljIHN1Ym5ldC5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGFsbG93UHVibGljU3VibmV0PzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gYWxsb3cgdGhlIExhbWJkYSB0byBzZW5kIGFsbCBuZXR3b3JrIHRyYWZmaWMgKGV4Y2VwdCBpcHY2KS5cbiAgICogSWYgc2V0IHRvIGZhbHNlLCB5b3UgbXVzdCBpbmRpdmlkdWFsbHkgYWRkIHRyYWZmaWMgcnVsZXMgdG8gYWxsb3cgdGhlXG4gICAqIExhbWJkYSB0byBjb25uZWN0IHRvIG5ldHdvcmsgdGFyZ2V0cy5cbiAgICpcbiAgICogRG8gbm90IHNwZWNpZnkgdGhpcyBwcm9wZXJ0eSBpZiB0aGUgYHNlY3VyaXR5R3JvdXBzYCBvciBgc2VjdXJpdHlHcm91cGAgcHJvcGVydHkgaXMgc2V0LlxuICAgKiBJbnN0ZWFkLCBjb25maWd1cmUgYGFsbG93QWxsT3V0Ym91bmRgIGRpcmVjdGx5IG9uIHRoZSBzZWN1cml0eSBncm91cC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYWxsb3dBbGxPdXRib3VuZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGFsbG93IHRoZSBMYW1iZGEgdG8gc2VuZCBhbGwgaXB2NiBuZXR3b3JrIHRyYWZmaWMuXG4gICAqIElmIHNldCB0byB0cnVlLCB0aGVyZSB3aWxsIG9ubHkgYmUgYSBzaW5nbGUgZWdyZXNzIHJ1bGUgd2hpY2ggYWxsb3dzIGFsbFxuICAgKiBvdXRib3VuZCBpcHY2IHRyYWZmaWMuIElmIHNldCB0byBmYWxzZSwgeW91IG11c3QgaW5kaXZpZHVhbGx5IGFkZCB0cmFmZmljIHJ1bGVzIHRvIGFsbG93IHRoZVxuICAgKiBMYW1iZGEgdG8gY29ubmVjdCB0byBuZXR3b3JrIHRhcmdldHMgdXNpbmcgaXB2Ni5cbiAgICpcbiAgICogRG8gbm90IHNwZWNpZnkgdGhpcyBwcm9wZXJ0eSBpZiB0aGUgYHNlY3VyaXR5R3JvdXBzYCBvciBgc2VjdXJpdHlHcm91cGAgcHJvcGVydHkgaXMgc2V0LlxuICAgKiBJbnN0ZWFkLCBjb25maWd1cmUgYGFsbG93QWxsSXB2Nk91dGJvdW5kYCBkaXJlY3RseSBvbiB0aGUgc2VjdXJpdHkgZ3JvdXAuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBhbGxvd0FsbElwdjZPdXRib3VuZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBTcGVjaWZ5IHRoZSBjb25maWd1cmF0aW9uIG9mIEFXUyBEaXN0cm8gZm9yIE9wZW5UZWxlbWV0cnkgKEFET1QpIGluc3RydW1lbnRhdGlvbi5cbiAgICogQGRlZmF1bHQgLSBObyBBRE9UIGluc3RydW1lbnRhdGlvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYWRvdEluc3RydW1lbnRhdGlvbj86IGF3c19sYW1iZGEuQWRvdEluc3RydW1lbnRhdGlvbkNvbmZpZztcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiB0aW1lcyB0byByZXRyeSB3aGVuIHRoZSBmdW5jdGlvbiByZXR1cm5zIGFuIGVycm9yLlxuICAgKiBNaW5pbXVtOiAwXG4gICAqIE1heGltdW06IDJcbiAgICogQGRlZmF1bHQgMlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmV0cnlBdHRlbXB0cz86IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSBkZXN0aW5hdGlvbiBmb3Igc3VjY2Vzc2Z1bCBpbnZvY2F0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBubyBkZXN0aW5hdGlvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgb25TdWNjZXNzPzogYXdzX2xhbWJkYS5JRGVzdGluYXRpb247XG4gIC8qKlxuICAgKiBUaGUgZGVzdGluYXRpb24gZm9yIGZhaWxlZCBpbnZvY2F0aW9ucy5cbiAgICogQGRlZmF1bHQgLSBubyBkZXN0aW5hdGlvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgb25GYWlsdXJlPzogYXdzX2xhbWJkYS5JRGVzdGluYXRpb247XG4gIC8qKlxuICAgKiBUaGUgbWF4aW11bSBhZ2Ugb2YgYSByZXF1ZXN0IHRoYXQgTGFtYmRhIHNlbmRzIHRvIGEgZnVuY3Rpb24gZm9yIHByb2Nlc3NpbmcuXG4gICAqIE1pbmltdW06IDYwIHNlY29uZHNcbiAgICogTWF4aW11bTogNiBob3Vyc1xuICAgKiBAZGVmYXVsdCBEdXJhdGlvbi5ob3Vycyg2KVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4RXZlbnRBZ2U/OiBEdXJhdGlvbjtcbn1cbiJdfQ==