cdk-nextjs 0.0.2 → 0.0.4

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.
@@ -216,5 +216,5 @@ class NextjsBuild extends constructs_1.Construct {
216
216
  }
217
217
  exports.NextjsBuild = NextjsBuild;
218
218
  _a = JSII_RTTI_SYMBOL_1;
219
- NextjsBuild[_a] = { fqn: "cdk-nextjs.NextjsBuild", version: "0.0.2" };
219
+ NextjsBuild[_a] = { fqn: "cdk-nextjs.NextjsBuild", version: "0.0.4" };
220
220
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWJ1aWxkLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL25leHRqcy1idWlsZC9uZXh0anMtYnVpbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwyREFBOEM7QUFDOUMscUNBQXdEO0FBQ3hELHlDQUFpQztBQUNqQywyQ0FBb0Q7QUFDcEQsNkNBQXlDO0FBQ3pDLCtEQUF3RTtBQUN4RSx1REFBOEU7QUFDOUUsMkNBQXVDO0FBQ3ZDLHNDQUttQjtBQWtGbkI7OztHQUdHO0FBQ0gsTUFBYSxXQUFZLFNBQVEsc0JBQVM7SUFtRHhDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBdUI7UUFDL0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQTdDbkI7Ozs7OztXQU1HO1FBQ0gsNkJBQXdCLEdBQUcsdUJBQXVCLENBQUM7UUFpQzNDLHFCQUFnQixHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQztRQU01RCxJQUFJLENBQUMsZUFBZSxHQUFHLHNCQUFzQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUN4RSxJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDLHVCQUF1QixJQUFJLEdBQUcsQ0FBQztRQUNwRSxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7UUFDakUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQ2xELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNuRCxJQUNFLEtBQUssQ0FBQyxVQUFVLEtBQUssbUJBQVUsQ0FBQyxpQkFBaUI7WUFDakQsS0FBSyxDQUFDLFVBQVUs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QUFnQixFQUFFLG9DQUFvQztZQUN0RSxJQUFJLEVBQUUsY0FBYztZQUNwQixVQUFVLEVBQUUsd0JBQVUsQ0FBQyxNQUFNO1lBQzdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsd0NBQXdDO1NBQ2xFLENBQUMsQ0FBQztRQUNILE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7O0FBclJILGtDQXNSQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGV4ZWNTeW5jIH0gZnJvbSBcIm5vZGU6Y2hpbGRfcHJvY2Vzc1wiO1xuaW1wb3J0IHsgY3BTeW5jLCBybVN5bmMsIHdyaXRlRmlsZVN5bmMgfSBmcm9tIFwibm9kZTpmc1wiO1xuaW1wb3J0IHsgam9pbiB9IGZyb20gXCJub2RlOnBhdGhcIjtcbmltcG9ydCB7IGpvaW4gYXMgam9pblBvc2l4IH0gZnJvbSBcIm5vZGU6cGF0aC9wb3NpeFwiO1xuaW1wb3J0IHsgSWdub3JlTW9kZSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgRG9ja2VySW1hZ2VBc3NldCwgUGxhdGZvcm0gfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjci1hc3NldHNcIjtcbmltcG9ydCB7IEFzc2V0SW1hZ2VDb2RlUHJvcHMsIERvY2tlckltYWdlQ29kZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHtcbiAgREFUQV9DQUNIRV9ESVIsXG4gIEZVTExfUk9VVEVfQ0FDSEVfRElSLFxuICBJTUFHRV9DQUNIRV9ESVIsXG4gIE5leHRqc1R5cGUsXG59IGZyb20gXCIuLi9jb21tb25cIjtcbmltcG9ydCB7IE9wdGlvbmFsRG9ja2VySW1hZ2VBc3NldFByb3BzIH0gZnJvbSBcIi4uL2dlbmVyYXRlZC1zdHJ1Y3RzL09wdGlvbmFsRG9ja2VySW1hZ2VBc3NldFByb3BzXCI7XG5pbXBvcnQgeyBOZXh0anNCYXNlUHJvcHMgfSBmcm9tIFwiLi4vcm9vdC1jb25zdHJ1Y3RzL25leHRqcy1iYXNlLXByb3BzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQnVpbGRlckltYWdlUHJvcHMge1xuICAvKipcbiAgICogQnVpbGQgQXJncyB0byBiZSBwYXNzZWQgdG8gYGRvY2tlciBidWlsZGAgY29tbWFuZC5cbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkQXJncz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBgZG9ja2VyIGJ1aWxkIC4uLmAgY29tbWFuZCB0byBydW4gaW4ge0BsaW5rIE5leHRCYXNlUHJvcHMuYnVpbGRDb250ZXh0fS5cbiAgICogRGVmYXVsdCBpbnRlcnBvbGF0ZXMgb3RoZXIgcHJvcHMuIElmIHlvdSBvdmVycmlkZSwgb3RoZXIgcHJvcHMgd2lsbCBoYXZlXG4gICAqIG5vIGVmZmVjdCBvbiBjb21tYW5kLlxuICAgKi9cbiAgcmVhZG9ubHkgY29tbWFuZD86IHN0cmluZztcbiAgLyoqXG4gICAqIEVudmlyb25tZW50IHZhcmlhYmxlcyBuYW1lcyB0byBwYXNzIGZyb20gaG9zdCB0byBjb250YWluZXIgZHVyaW5nIGJ1aWxkIHByb2Nlc3MuXG4gICAqXG4gICAqIE5vdGUsIGEgc2hlbGwgc2NyaXB0LCBjZGstbmV4dGpzLWxvYWQtZW52LXZhcnMuc2ggaXMgY3JlYXRlZCB3aXRoaW4gdGhlXG4gICAqIHtAbGluayBOZXh0QmFzZVByb3BzLmJ1aWxkQ29udGV4dH0gZGlyZWN0b3J5LCB3aGljaCB3aWxsIGNvbnRhaW4gYWxsIHRoZVxuICAgKiBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZGVmaW5lZCBpbiB0aGlzIHByb3AuIElmIHlvdSd2ZSBjcmVhdGVkIHlvdXIgb3duXG4gICAqIGN1c3RvbSBEb2NrZXJmaWxlIChwYXNzZWQgaW4gdmlhIHtAbGluayBCdWlsZGVySW1hZ2VQcm9wcy5jdXN0b21Eb2NrZXJmaWxlUGF0aH0pXG4gICAqIHRoZW4geW91IG5lZWQgdG8gbWFrZSBzdXJlIHlvdSdyZSBjb3B5aW5nIGl0IGludG8gdGhlIGltYWdlLlxuICAgKlxuICAgKiBAZXhhbXBsZSBbXCJNWV9BUElfS0VZXCJdXG4gICAqL1xuICByZWFkb25seSBlbnZWYXJOYW1lcz86IHN0cmluZ1tdO1xuICAvKipcbiAgICogTGluZXMgaW4gLmRvY2tlcmlnbm9yZSBmaWxlIHdoaWNoIHdpbGwgYmUgY3JlYXRlZCBpbiB5b3VyIHtAbGluayBOZXh0QmFzZVByb3BzLmJ1aWxkQ29udGV4dH1cbiAgICogQGRlZmF1bHQgW1wibm9kZV9tb2R1bGVzXCIsIFwiLmdpdFwiLCBcIi5naXRpZ25vcmVcIiwgXCIubWRcIl1cbiAgICovXG4gIHJlYWRvbmx5IGV4Y2x1ZGU/OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIE5hbWUgb2YgRG9ja2VyZmlsZVxuICAgKiBAZGVmYXVsdCBcImJ1aWxkZXIuRG9ja2VyZmlsZVwiXG4gICAqL1xuICByZWFkb25seSBmaWxlPzogc3RyaW5nO1xuICByZWFkb25seSBwbGF0Zm9ybT86IFBsYXRmb3JtO1xuICAvKipcbiAgICogU2tpcCBidWlsZGluZyB0aGUgYnVpbGRlciBpbWFnZS5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNraXBCdWlsZD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQYXRoIHRvIHlvdXIgY3VzdG9tIGJ1aWxkZXIuRG9ja2VyZmlsZSB3aGljaCB3aWxsIGJlIGNvcGllZCBpbnRvIHtAbGluayBOZXh0QmFzZVByb3BzLmJ1aWxkQ29udGV4dH0uXG4gICAqIEl0IGlzIHJlY29tbWVuZGVkIHRvIG92ZXJyaWRlIHRoaXMgcHJvcCB0byBvcHRpbWl6ZSBidWlsZCBjYWNoaW5nIGZvciB5b3VyIHNldHVwLlxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tRG9ja2VyZmlsZVBhdGg/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzQnVpbGRPdmVycmlkZXMge1xuICByZWFkb25seSBuZXh0anNDb250YWluZXJzRG9ja2VySW1hZ2VBc3NldFByb3BzPzogT3B0aW9uYWxEb2NrZXJJbWFnZUFzc2V0UHJvcHM7XG4gIHJlYWRvbmx5IG5leHRqc0Z1bmN0aW9uc0Fzc2V0SW1hZ2VDb2RlUHJvcHM/OiBBc3NldEltYWdlQ29kZVByb3BzO1xuICByZWFkb25seSBuZXh0anNBc3NldERlcGxveW1lbnRBc3NldEltYWdlQ29kZVByb3BzPzogQXNzZXRJbWFnZUNvZGVQcm9wcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNCdWlsZFByb3BzIHtcbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE5leHRqc0Jhc2VQcm9wc1tcImJ1aWxkQ29tbWFuZFwiXX1cbiAgICovXG4gIHJlYWRvbmx5IGJ1aWxkQ29tbWFuZDogTmV4dGpzQmFzZVByb3BzW1wiYnVpbGRDb21tYW5kXCJdO1xuICAvKipcbiAgICogQHNlZSB7QGxpbmsgTmV4dGpzQmFzZVByb3BzW1wiYnVpbGRDb250ZXh0XCJdfVxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRDb250ZXh0OiBOZXh0anNCYXNlUHJvcHNbXCJidWlsZENvbnRleHRcIl07XG4gIC8qKlxuICAgKlxuICAgKi9cbiAgcmVhZG9ubHkgYnVpbGRlckltYWdlUHJvcHM/OiBCdWlsZGVySW1hZ2VQcm9wcztcbiAgLyoqXG4gICAqIEBzZWUge0BsaW5rIE5leHRqc0Jhc2VQcm9wcy5yZWxhdGl2ZVBhdGhUb1dvcmtzcGFjZX1cbiAgICovXG4gIHJlYWRvbmx5IHJlbGF0aXZlUGF0aFRvV29ya3NwYWNlPzogTmV4dGpzQmFzZVByb3BzW1wicmVsYXRpdmVQYXRoVG9Xb3Jrc3BhY2VcIl07XG4gIHJlYWRvbmx5IG5leHRqc1R5cGU6IE5leHRqc1R5cGU7XG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc0J1aWxkT3ZlcnJpZGVzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFB1YmxpY0RpckVudHJ5IHtcbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuICByZWFkb25seSBpc0RpcmVjdG9yeTogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBCdWlsZHMgTmV4dC5qcyBhc3NldHMuXG4gKiBAbGluayBodHRwczovL25leHRqcy5vcmcvZG9jcy9wYWdlcy9hcGktcmVmZXJlbmNlL25leHQtY29uZmlnLWpzL291dHB1dFxuICovXG5leHBvcnQgY2xhc3MgTmV4dGpzQnVpbGQgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogSGFzaCBvZiBidWlsZGVyIGltYWdlIHdoaWNoIHdpbGwgY2hhbmdlIHdoZW5ldmVyIHRoZSBpbWFnZSBjaGFuZ2VzLiBVc2VmdWxcbiAgICogZm9yIHBhc3NpbmcgdG8gcHJvcGVydGllcyBvZiBjdXN0b20gcmVzb3VyY2VzIHRoYXQgZGVwZW5kIHVwb24gdGhlIGJ1aWxkZXJcbiAgICogaW1hZ2UgdG8gcmUtcnVuIHdoZW4gYnVpbGQgaW1hZ2UgY2hhbmdlcy5cbiAgICovXG4gIGJ1aWxkSW1hZ2VEaWdlc3Q6IHN0cmluZztcbiAgLyoqXG4gICAqIE1vdW50IHBhdGggaW4gY29udGFpbmVyIGZvciBFRlMuIE5leHQuanMgaW1hZ2Ugb3B0aW1pemF0aW9uLCBkYXRhLCBhbmQgZnVsbFxuICAgKiByb3V0ZSBjYWNoZSB3aWxsIGJlIHN5bWxpbmtlZCB0byB0aGlzIGxvY2F0aW9uLlxuICAgKlxuICAgKiBNdXN0IGNvbXBseSB3aXRoIHBhdHRlcm46IF4vbW50L1thLXpBLVowLTktXy5dKyRcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vbGFtYmRhL2xhdGVzdC9hcGkvQVBJX0ZpbGVTeXN0ZW1Db25maWcuaHRtbFxuICAgKi9cbiAgY29udGFpbmVyTW91bnRQYXRoRm9yRWZzID0gXCIvbW50L2Nkay1uZXh0anMtY2FjaGVcIjtcbiAgLyoqXG4gICAqIERvY2tlciBpbWFnZSBidWlsdCBpZiB1c2luZyBGYXJnYXRlLlxuICAgKi9cbiAgaW1hZ2VGb3JOZXh0anNDb250YWluZXJzPzogRG9ja2VySW1hZ2VBc3NldDtcbiAgLyoqXG4gICAqIERvY2tlciBpbWFnZSBidWlsdCBpZiB1c2luZyBMYW1iZGEuXG4gICAqL1xuICBpbWFnZUZvck5leHRqc0Z1bmN0aW9ucz86IERvY2tlckltYWdlQ29kZTtcbiAgLyoqXG4gICAqIERvY2tlciBpbWFnZSBidWlsdCBmb3IgYE5leHRqc0Fzc2V0c0RlcGxveW1lbnRgXG4gICAqL1xuICBpbWFnZUZvck5leHRqc0Fzc2V0c0RlcGxveW1lbnQ6IERvY2tlckltYWdlQ29kZTtcbiAgLyoqXG4gICAqIEFic29sdXRlIHBhdGggdG8gcHVibGljLiBVc2UgYnkgQ2xvdWRGcm9udC9BTEIgdG8gY3JlYXRlIGJlaGF2aW9ycy9ydWxlc1xuICAgKiBAZXhhbXBsZSBcIi9Vc2Vycy9qb2huL215YXBwL3B1YmxpY1wiXG4gICAqL1xuICBwdWJsaWNEaXJFbnRyaWVzOiBQdWJsaWNEaXJFbnRyeVtdO1xuICAvKipcbiAgICogVGhlIGVudHJ5cG9pbnQgSmF2YVNjcmlwdCBmaWxlIHVzZWQgYXMgYW4gYXJndW1lbnQgZm9yIE5vZGUuanMgdG8gcnVuIHRoZVxuICAgKiBOZXh0LmpzIHN0YW5kYWxvbmUgc2VydmVyIHJlbGF0aXZlIHRvIHRoZSBzdGFuZGFsb25lIGRpcmVjdG9yeS5cbiAgICogQGV4YW1wbGUgXCIuL3NlcnZlci5qc1wiXG4gICAqIEBleGFtcGxlIFwiLi9wYWNrYWdlcy91aS9zZXJ2ZXIuanNcIiAobW9ub3JlcG8pXG4gICAqL1xuICByZWxhdGl2ZVBhdGhUb0VudHJ5cG9pbnQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGFnIG9mIGJ1aWxkZXIgaW1hZ2UgTmV4dC5qcyBhcHAgd2hpY2ggaXMgYnVpbHQgZm9yIG90aGVyIGltYWdlcyB0byBiZVxuICAgKiBidWlsdCBgRlJPTWAuIFRoaXMgaW1hZ2UgaXNuJ3QgYnVpbHQgd2l0aCBDREsgQXNzZXRzIGNvbnN0cnVjdCBiL2MgaXRcbiAgICogZG9lc24ndCBuZWVkIHRvIGJlIHVwbG9hZGVkIHRvIEVDUi4gV2Ugc3RpbGwgbmVlZCB0byBpbmNsdWRlIHNsaWNlIG9mXG4gICAqIGBub2RlLmFkZHJgIGluIHRhZyBpbiBjYXNlIG11bHRpcGxlIGNkay1uZXh0anMgY29uc3RydWN0cyBhcmUgdXNlZC5cbiAgICovXG4gIHByaXZhdGUgYnVpbGRlckltYWdlVGFnOiBzdHJpbmc7XG4gIHByaXZhdGUgY29udGFpbmVyUnVudGltZSA9IHByb2Nlc3MuZW52LkNES19ET0NLRVIgfHwgXCJkb2NrZXJcIjtcbiAgcHJpdmF0ZSBwcm9wczogTmV4dGpzQnVpbGRQcm9wcztcbiAgcHJpdmF0ZSByZWxhdGl2ZVBhdGhUb1dvcmtzcGFjZTogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOZXh0anNCdWlsZFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLmJ1aWxkZXJJbWFnZVRhZyA9IGBjZGstbmV4dGpzL2J1aWxkZXItJHt0aGlzLm5vZGUuYWRkci5zbGljZSgzMCl9YDtcbiAgICB0aGlzLnJlbGF0aXZlUGF0aFRvV29ya3NwYWNlID0gcHJvcHMucmVsYXRpdmVQYXRoVG9Xb3Jrc3BhY2UgfHwgXCIuXCI7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgIHRoaXMucmVsYXRpdmVQYXRoVG9FbnRyeXBvaW50ID0gdGhpcy5nZXRSZWxhdGl2ZUVudHJ5cG9pbnRQYXRoKCk7XG4gICAgdGhpcy5idWlsZEltYWdlRGlnZXN0ID0gdGhpcy5jcmVhdGVCdWlsZGVySW1hZ2UoKTtcbiAgICB0aGlzLnB1YmxpY0RpckVudHJpZXMgPSB0aGlzLmdldFB1YmxpY0RpckVudHJpZXMoKTtcbiAgICBpZiAoXG4gICAgICBwcm9wcy5uZXh0anNUeXBlID09PSBOZXh0anNUeXBlLkdMT0JBTF9DT05UQUlORVJTIHx8XG4gICAgICBwcm9wcy5uZXh0anNUeXBlID09PSBOZXh0anNUeXBlLlJFR0lPTkFMX0NPTlRBSU5FUlNcbiAgICApIHtcbiAgICAgIHRoaXMuaW1hZ2VGb3JOZXh0anNDb250YWluZXJzID0gdGhpcy5jcmVhdGVJbWFnZUZvck5leHRqc0NvbnRhaW5lcnMoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbWFnZUZvck5leHRqc0Z1bmN0aW9ucyA9IHRoaXMuY3JlYXRlSW1hZ2VGb3JOZXh0anNGdW5jdGlvbnMoKTtcbiAgICB9XG4gICAgdGhpcy5pbWFnZUZvck5leHRqc0Fzc2V0c0RlcGxveW1lbnQgPVxuICAgICAgdGhpcy5jcmVhdGVJbWFnZUZvck5leHRqc0Fzc2V0c0RlcGxveW1lbnQoKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UmVsYXRpdmVFbnRyeXBvaW50UGF0aCgpIHtcbiAgICAvLyBqb2luUG9zaXggYi9jIHRoaXMgd2lsbCBiZSB1c2VkIGluIGxpbnV4IGNvbnRhaW5lclxuICAgIHJldHVybiBqb2luUG9zaXgodGhpcy5wcm9wcy5yZWxhdGl2ZVBhdGhUb1dvcmtzcGFjZSB8fCBcIlwiLCBcInNlcnZlci5qc1wiKTtcbiAgfVxuICAvKipcbiAgICogQSBidWlsZGVyIG9yIGJhc2UgaW1hZ2UgbmVlZHMgdG8gYmUgY3JlYXRlZCBzbyB0aGF0IHRoZSBzYW1lIGltYWdlIGNhbiBiZVxuICAgKiBidWlsdCBgRlJPTWAgZm9yIGBOZXh0anNGdW5jdGlvbnNgIG9yIGBOZXh0anNDb250YWluZXJzYCBhbmQgYE5leHRqc0Fzc2V0c0RlcGxveW1lbnRgLlxuICAgKiBUaGlzIGltYWdlIGRvZXNuJ3QgbmVlZCB0byBiZSB1cGxvYWRlZCB0byBFQ1Igc28gd2UncmUgXCJtYW51YWxseVwiIGNyZWF0aW5nXG4gICAqIGl0IHdpdGggYGV4ZWNTeW5jYCBhbmQgb3RoZXIgaW1hZ2VzIHdpbGwgYmUgYnVpbHQgYEZST01gIGl0LlxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVCdWlsZGVySW1hZ2UoKSB7XG4gICAgY29uc3QgYnVpbGRDb21tYW5kID0gdGhpcy5wcm9wcy5idWlsZENvbW1hbmQgfHwgXCJucG0gcnVuIGJ1aWxkXCI7XG4gICAgY29uc3Qge1xuICAgICAgYnVpbGRBcmdzID0ge1xuICAgICAgICBCVUlMRF9DT01NQU5EOiBidWlsZENvbW1hbmQsXG4gICAgICAgIFJFTEFUSVZFX1BBVEhfVE9fV09SS1NQQUNFOiB0aGlzLnJlbGF0aXZlUGF0aFRvV29ya3NwYWNlLFxuICAgICAgICAuLi50aGlzLnByb3BzLmJ1aWxkZXJJbWFnZVByb3BzPy5idWlsZEFyZ3MsXG4gICAgICB9LFxuICAgICAgZW52VmFyTmFtZXMgPSBbXSxcbiAgICAgIGV4Y2x1ZGUgPSBbXG4gICAgICAgIFwiKiovbm9kZV9tb2R1bGVzXCIsXG4gICAgICAgIFwiLmdpdFwiLFxuICAgICAgICBcIioqL2Nkay5vdXRcIixcbiAgICAgICAgXCIqKi8ubmV4dFwiLFxuICAgICAgICBcIi5naXRpZ25vcmVcIixcbiAgICAgICAgXCIqLm1kXCIsXG4gICAgICBdLFxuICAgICAgZmlsZSA9IFwiYnVpbGRlci5Eb2NrZXJmaWxlXCIsXG4gICAgICBwbGF0Zm9ybSxcbiAgICAgIHNraXBCdWlsZCA9IGZhbHNlLFxuICAgIH0gPSB0aGlzLnByb3BzLmJ1aWxkZXJJbWFnZVByb3BzIHx8IHt9O1xuICAgIGNvbnN0IHNyY0RvY2tlcmZpbGVQYXRoID1cbiAgICAgIHRoaXMucHJvcHMuYnVpbGRlckltYWdlUHJvcHM/LmN1c3RvbURvY2tlcmZpbGVQYXRoIHx8XG4gICAgICBqb2luKF9fZGlybmFtZSwgZmlsZSk7XG4gICAgY29uc3QgZGVzdERvY2tlcmZpbGVQYXRoID0gam9pbih0aGlzLnByb3BzLmJ1aWxkQ29udGV4dCwgZmlsZSk7XG4gICAgY3BTeW5jKHNyY0RvY2tlcmZpbGVQYXRoLCBkZXN0RG9ja2VyZmlsZVBhdGgpO1xuICAgIGNvbnN0IGV4Y2x1ZGVGaWxlU3RyID0gZXhjbHVkZT8uam9pbihcIlxcblwiKTtcbiAgICBjb25zdCBkb2NrZXJpZ25vcmVGaWxlUGF0aCA9IGpvaW4odGhpcy5wcm9wcy5idWlsZENvbnRleHQsIFwiLmRvY2tlcmlnbm9yZVwiKTtcbiAgICB3cml0ZUZpbGVTeW5jKGRvY2tlcmlnbm9yZUZpbGVQYXRoLCBleGNsdWRlRmlsZVN0cik7XG4gICAgY29uc3QgYnVpbGRBcmdzU3RyID0gdGhpcy5jcmVhdGVCdWlsZEFyZ1N0cihidWlsZEFyZ3MpO1xuICAgIGNvbnN0IGxvYWRFbnZWYXJzU2NyaXB0UGF0aCA9IGpvaW4oXG4gICAgICB0aGlzLnByb3BzLmJ1aWxkQ29udGV4dCxcbiAgICAgIFwiY2RrLW5leHRqcy1sb2FkLWVudi12YXJzLnNoXCIsXG4gICAgKTtcbiAgICBpZiAoZW52VmFyTmFtZXMubGVuZ3RoKSB7XG4gICAgICB0aGlzLmNyZWF0ZUxvYWRFbnZWYXJzU2NyaXB0KGVudlZhck5hbWVzLCBsb2FkRW52VmFyc1NjcmlwdFBhdGgpO1xuICAgIH1cbiAgICBjb25zdCBjb21tYW5kID1cbiAgICAgIHRoaXMucHJvcHMuYnVpbGRlckltYWdlUHJvcHM/LmNvbW1hbmQgfHxcbiAgICAgIGAke3RoaXMuY29udGFpbmVyUnVudGltZX0gYnVpbGQgJHtwbGF0Zm9ybSA/IGAtLXBsYXRmb3JtICR7cGxhdGZvcm0ucGxhdGZvcm19YCA6IFwiXCJ9IC0tZmlsZSAke2ZpbGV9IC0tdGFnICR7dGhpcy5idWlsZGVySW1hZ2VUYWd9ICR7YnVpbGRBcmdzU3RyfSAuYDtcbiAgICBsZXQgZXJyb3I6IHVua25vd247XG4gICAgdHJ5IHtcbiAgICAgIGlmICghc2tpcEJ1aWxkKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKFxuICAgICAgICAgIGBCdWlsZGluZyBpbWFnZSB3aXRoIGNvbW1hbmQ6ICR7Y29tbWFuZH0gaW4gZGlyZWN0b3J5OiAke3RoaXMucHJvcHMuYnVpbGRDb250ZXh0fWAsXG4gICAgICAgICk7XG4gICAgICAgIGV4ZWNTeW5jKGNvbW1hbmQsIHtcbiAgICAgICAgICBzdGRpbzogXCJpbmhlcml0XCIsXG4gICAgICAgICAgY3dkOiB0aGlzLnByb3BzLmJ1aWxkQ29udGV4dCxcbiAgICAgICAgICBlbnY6IHByb2Nlc3MuZW52LFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGVycm9yID0gZXJyO1xuICAgIH0gZmluYWxseSB7XG4gICAgICBybVN5bmMoZGVzdERvY2tlcmZpbGVQYXRoKTtcbiAgICAgIHJtU3luYyhkb2NrZXJpZ25vcmVGaWxlUGF0aCk7XG4gICAgICBpZiAoZW52VmFyTmFtZXMubGVuZ3RoKSB7XG4gICAgICAgIHJtU3luYyhsb2FkRW52VmFyc1NjcmlwdFBhdGgpO1xuICAgICAgfVxuICAgIH1cbiAgICBpZiAoZXJyb3IpIHRocm93IGVycm9yO1xuICAgIHJldHVybiB0aGlzLmdldEJ1aWxkZXJJbWFnZURpZ2VzdCgpO1xuICB9XG4gIHByaXZhdGUgY3JlYXRlQnVpbGRBcmdTdHIoXG4gICAgYnVpbGRBcmdzOiBSZXF1aXJlZDxCdWlsZGVySW1hZ2VQcm9wcz5bXCJidWlsZEFyZ3NcIl0sXG4gICkge1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyhidWlsZEFyZ3MpLnJlZHVjZSgoYWNjLCBba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIHJldHVybiBgJHthY2N9IC0tYnVpbGQtYXJnICR7a2V5fT1cIiR7dmFsdWV9XCJgO1xuICAgIH0sIFwiXCIpO1xuICB9XG4gIHByaXZhdGUgY3JlYXRlTG9hZEVudlZhcnNTY3JpcHQoXG4gICAgZW52VmFyTmFtZXM6IFJlcXVpcmVkPEJ1aWxkZXJJbWFnZVByb3BzPltcImVudlZhck5hbWVzXCJdID0gW10sXG4gICAgbG9hZEVudlZhcnNTY3JpcHRQYXRoOiBzdHJpbmcsXG4gICkge1xuICAgIGxldCBsb2FkRW52VmFyc1NjcmlwdCA9XG4gICAgICBcIiMgRHluYW1pY2FsbHkgZ2VuZXJhdGVkIHNjcmlwdCB0byBsb2FkIGVudiB2YXJzIGludG8gYnVpbGQgY29udGFpbmVyXCI7XG4gICAgZm9yIChjb25zdCBlbnZWYXJOYW1lIG9mIGVudlZhck5hbWVzKSB7XG4gICAgICBsb2FkRW52VmFyc1NjcmlwdCArPSBgXFxuZXhwb3J0ICR7ZW52VmFyTmFtZX09JHtwcm9jZXNzLmVudltlbnZWYXJOYW1lXSB8fCAnXCJcIid9YDtcbiAgICB9XG4gICAgd3JpdGVGaWxlU3luYyhsb2FkRW52VmFyc1NjcmlwdFBhdGgsIGxvYWRFbnZWYXJzU2NyaXB0KTtcbiAgfVxuICBwcml2YXRlIGdldEJ1aWxkZXJJbWFnZURpZ2VzdCgpIHtcbiAgICBjb25zdCBkaWdlc3QgPSBleGVjU3luYyhcbiAgICAgIGAke3RoaXMuY29udGFpbmVyUnVudGltZX0gaW1hZ2VzIC0tbm8tdHJ1bmMgLS1xdWlldCAke3RoaXMuYnVpbGRlckltYWdlVGFnfWAsXG4gICAgICB7IGVuY29kaW5nOiBcInV0Zi04XCIgfSxcbiAgICApO1xuICAgIHJldHVybiBkaWdlc3Quc2xpY2UoMCwgLTEpOyAvLyByZW1vdmUgdHJhaWxpbmcgXFxuXG4gIH1cbiAgcHJpdmF0ZSBnZXRQdWJsaWNEaXJFbnRyaWVzKCk6IFB1YmxpY0RpckVudHJ5W10ge1xuICAgIGNvbnN0IHB1YmxpY0RpclBhdGggPSBqb2luUG9zaXgoXG4gICAgICBcIi9hcHBcIixcbiAgICAgIHRoaXMucHJvcHMucmVsYXRpdmVQYXRoVG9Xb3Jrc3BhY2UgfHwgXCJcIixcbiAgICAgIFwicHVibGljXCIsXG4gICAgKTtcbiAgICBjb25zdCBwdWJsaWNEaXJFbnRyaWVzU3RyaW5nID0gZXhlY1N5bmMoXG4gICAgICBgJHt0aGlzLmNvbnRhaW5lclJ1bnRpbWV9IHJ1biAke3RoaXMuYnVpbGRlckltYWdlVGFnfSBub2RlIC1lIFwiY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoZnMucmVhZGRpclN5bmMoJyR7cHVibGljRGlyUGF0aH0nLCB7IHdpdGhGaWxlVHlwZXM6IHRydWUgfSkubWFwKChlKSA9PiAoeyBuYW1lOiBlLm5hbWUsIGlzRGlyOiBlLmlzRGlyZWN0b3J5KCl9KSkpKVwiYCxcbiAgICAgIHsgZW5jb2Rpbmc6IFwidXRmLThcIiB9LFxuICAgICk7XG4gICAgcmV0dXJuIEpTT04ucGFyc2UocHVibGljRGlyRW50cmllc1N0cmluZykgYXMgUHVibGljRGlyRW50cnlbXTtcbiAgfVxuICBwcml2YXRlIGNyZWF0ZUltYWdlRm9yTmV4dGpzQ29udGFpbmVycygpIHtcbiAgICBjb25zdCBkb2NrZXJmaWxlTmFtZVByZWZpeCA9XG4gICAgICB0aGlzLnByb3BzLm5leHRqc1R5cGUgPT09IE5leHRqc1R5cGUuR0xPQkFMX0NPTlRBSU5FUlNcbiAgICAgICAgPyBcImdsb2JhbFwiXG4gICAgICAgIDogXCJyZWdpb25hbFwiO1xuICAgIGNvbnN0IGRvY2tlcmZpbGVOYW1lID0gYCR7ZG9ja2VyZmlsZU5hbWVQcmVmaXh9LWNvbnRhaW5lcnMuRG9ja2VyZmlsZWA7XG4gICAgLy8gY2RrLW5leHRqcy9idWlsZGVyLXtoYXNofSBhbHJlYWR5IGNvbnRhaW5zIGJ1aWx0IG5leHRqcyBhcHAgd2hpY2ggd2UnbGxcbiAgICAvLyBgQ09QWSAtLWZyb209Y2RrLW5leHRqcy9idWlsZGVyLXtoYXNofWAgc28gd2UganVzdCBuZWVkIHRoZSBEb2NrZXJmaWxlXG4gICAgLy8gYW5kIHN5bWxpbmstZnVsbC1yb3V0ZS1jYWNoZSBzY3JpcHRzIHdoaWNoIGFyZSBpbiBsaWIvbmV4dGpzLWJ1aWxkIGZvbGRlci5cbiAgICBjb25zdCBidWlsZENvbnRleHQgPSBqb2luKF9fZGlybmFtZSwgXCIuLlwiLCBcIi4uXCIsIFwibGliXCIsIFwibmV4dGpzLWJ1aWxkXCIpO1xuICAgIGNvbnN0IGRvY2tlckltYWdlQXNzZXQgPSBuZXcgRG9ja2VySW1hZ2VBc3NldCh0aGlzLCBcIkltYWdlXCIsIHtcbiAgICAgIGJ1aWxkQXJnczoge1xuICAgICAgICBCVUlMREVSX0lNQUdFX1RBRzogdGhpcy5idWlsZGVySW1hZ2VUYWcsXG4gICAgICAgIERBVEFfQ0FDSEVfRElSLFxuICAgICAgICBGVUxMX1JPVVRFX0NBQ0hFX0RJUixcbiAgICAgICAgSU1BR0VfQ0FDSEVfRElSLFxuICAgICAgICBNT1VOVF9QQVRIOiB0aGlzLmNvbnRhaW5lck1vdW50UGF0aEZvckVmcyxcbiAgICAgICAgUkVMQVRJVkVfUEFUSF9UT19XT1JLU1BBQ0U6IHRoaXMucmVsYXRpdmVQYXRoVG9Xb3Jrc3BhY2UsXG4gICAgICB9LFxuICAgICAgZGlyZWN0b3J5OiBidWlsZENvbnRleHQsXG4gICAgICBleGNsdWRlOiBbXG4gICAgICAgIFwiKlwiLFxuICAgICAgICBgISR7ZG9ja2VyZmlsZU5hbWV9YCxcbiAgICAgICAgXCIhc3ltbGluay1mdWxsLXJvdXRlLWNhY2hlLm1qc1wiLFxuICAgICAgICBcIiFhZGQtY2FjaGUtaGFuZGxlci5tanNcIixcbiAgICAgIF0sXG4gICAgICBleHRyYUhhc2g6IHRoaXMuYnVpbGRJbWFnZURpZ2VzdCwgLy8gcmVidWlsZCB3aGVuIGJ1aWxkZXIgaGFzaCBjaGFuZ2VzXG4gICAgICBmaWxlOiBkb2NrZXJmaWxlTmFtZSxcbiAgICAgIGlnbm9yZU1vZGU6IElnbm9yZU1vZGUuRE9DS0VSLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0NvbnRhaW5lcnNEb2NrZXJJbWFnZUFzc2V0UHJvcHMsXG4gICAgfSk7XG4gICAgcmV0dXJuIGRvY2tlckltYWdlQXNzZXQ7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUltYWdlRm9yTmV4dGpzRnVuY3Rpb25zKCkge1xuICAgIGNvbnN0IGRvY2tlcmZpbGVOYW1lID0gXCJnbG9iYWwtZnVuY3Rpb25zLkRvY2tlcmZpbGVcIjtcbiAgICAvLyBjZGstbmV4dGpzL2J1aWxkZXIte2hhc2h9IGFscmVhZHkgY29udGFpbnMgYnVpbHQgbmV4dGpzIGFwcCB3aGljaCB3ZSdsbFxuICAgIC8vIGBDT1BZIC0tZnJvbT1jZGstbmV4dGpzL2J1aWxkZXIte2hhc2h9YCBzbyB3ZSBqdXN0IG5lZWQgdGhlIERvY2tlcmZpbGVcbiAgICAvLyBhbmQgc3ltbGluay1mdWxsLXJvdXRlLWNhY2hlIHNjcmlwdHMgd2hpY2ggYXJlIGluIGxpYi9uZXh0anMtYnVpbGQgZm9sZGVyLlxuICAgIGNvbnN0IGJ1aWxkQ29udGV4dCA9IGpvaW4oX19kaXJuYW1lLCBcIi4uXCIsIFwiLi5cIiwgXCJsaWJcIiwgXCJuZXh0anMtYnVpbGRcIik7XG4gICAgY29uc3QgZG9ja2VySW1hZ2VDb2RlID0gRG9ja2VySW1hZ2VDb2RlLmZyb21JbWFnZUFzc2V0KGJ1aWxkQ29udGV4dCwge1xuICAgICAgYnVpbGRBcmdzOiB7XG4gICAgICAgIEJVSUxERVJfSU1BR0VfVEFHOiB0aGlzLmJ1aWxkZXJJbWFnZVRhZyxcbiAgICAgICAgREFUQV9DQUNIRV9ESVIsXG4gICAgICAgIEZVTExfUk9VVEVfQ0FDSEVfRElSLFxuICAgICAgICBJTUFHRV9DQUNIRV9ESVIsXG4gICAgICAgIE1PVU5UX1BBVEg6IHRoaXMuY29udGFpbmVyTW91bnRQYXRoRm9yRWZzLFxuICAgICAgICBSRUxBVElWRV9QQVRIX1RPX1dPUktTUEFDRTogdGhpcy5yZWxhdGl2ZVBhdGhUb1dvcmtzcGFjZSxcbiAgICAgIH0sXG4gICAgICBjbWQ6IFtcIm5vZGVcIiwgdGhpcy5yZWxhdGl2ZVBhdGhUb0VudHJ5cG9pbnRdLFxuICAgICAgZXhjbHVkZTogW1xuICAgICAgICBcIipcIixcbiAgICAgICAgYCEke2RvY2tlcmZpbGVOYW1lfWAsXG4gICAgICAgIFwiIXN5bWxpbmstZnVsbC1yb3V0ZS1jYWNoZS5tanNcIixcbiAgICAgICAgXCIhYWRkLWNhY2hlLWhhbmRsZXIubWpzXCIsXG4gICAgICAgIFwiIWNhY2hlLWhhbmRsZXIuY2pzXCIsXG4gICAgICBdLFxuICAgICAgZXh0cmFIYXNoOiB0aGlzLmJ1aWxkSW1hZ2VEaWdlc3QsIC8vIHJlYnVpbGQgd2hlbiBidWlsZGVyIGhhc2ggY2hhbmdlc1xuICAgICAgZmlsZTogZG9ja2VyZmlsZU5hbWUsXG4gICAgICBpZ25vcmVNb2RlOiBJZ25vcmVNb2RlLkRPQ0tFUixcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5uZXh0anNGdW5jdGlvbnNBc3NldEltYWdlQ29kZVByb3BzLFxuICAgIH0pO1xuICAgIC8vIFRPRE86IGhvdyB0byBjbGVhbiB1cCB0ZW1wIGRpcj9cbiAgICAvLyBybVN5bmModGVtcERpciwgeyByZWN1cnNpdmU6IHRydWUgfSk7XG4gICAgcmV0dXJuIGRvY2tlckltYWdlQ29kZTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlSW1hZ2VGb3JOZXh0anNBc3NldHNEZXBsb3ltZW50KCkge1xuICAgIGNvbnN0IGRvY2tlcmZpbGVOYW1lID0gXCJhc3NldHMtZGVwbG95bWVudC5Eb2NrZXJmaWxlXCI7XG4gICAgLyoqXG4gICAgICogUGF0aCB0byBidW5kbGVkIGN1c3RvbSByZXNvdXJjZSBjb2RlXG4gICAgICovXG4gICAgY29uc3QgbGFtYmRhQnVpbGRDb250ZXh0ID0gam9pbihcbiAgICAgIF9fZGlybmFtZSxcbiAgICAgIFwiLi5cIixcbiAgICAgIFwiLi5cIixcbiAgICAgIFwiYXNzZXRzXCIsXG4gICAgICBcImxhbWJkYXNcIixcbiAgICAgIFwiYXNzZXRzLWRlcGxveW1lbnRcIixcbiAgICAgIFwiYXNzZXRzLWRlcGxveW1lbnQubGFtYmRhXCIsXG4gICAgKTtcbiAgICAvLyBjZGstbmV4dGpzL2J1aWxkZXIte2hhc2h9IGFscmVhZHkgY29udGFpbnMgTmV4dC5qcyBidWlsdCBjb2RlIHdoaWNoXG4gICAgLy8gd2UnbGwgY29weSBpbnRvIGZpbmFsIGltYWdlLiBCdXQgd2UgYWxzbyBuZWVkIGxhbWJkYSBjb2RlIHRvIHJ1blxuICAgIC8vIGFzc2V0IGRlcGxveW1lbnQgdGFza3NcbiAgICBjb25zdCBkb2NrZXJJbWFnZUNvZGUgPSBEb2NrZXJJbWFnZUNvZGUuZnJvbUltYWdlQXNzZXQobGFtYmRhQnVpbGRDb250ZXh0LCB7XG4gICAgICBidWlsZEFyZ3M6IHtcbiAgICAgICAgQlVJTERFUl9JTUFHRV9UQUc6IHRoaXMuYnVpbGRlckltYWdlVGFnLFxuICAgICAgICBSRUxBVElWRV9QQVRIX1RPX1dPUktTUEFDRTogdGhpcy5yZWxhdGl2ZVBhdGhUb1dvcmtzcGFjZSxcbiAgICAgIH0sXG4gICAgICBleHRyYUhhc2g6IHRoaXMuYnVpbGRJbWFnZURpZ2VzdCwgLy8gcmVidWlsZCB3aGVuIGJ1aWxkZXIgaGFzaCBjaGFuZ2VzXG4gICAgICBmaWxlOiBkb2NrZXJmaWxlTmFtZSxcbiAgICAgIGlnbm9yZU1vZGU6IElnbm9yZU1vZGUuRE9DS0VSLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/Lm5leHRqc0Fzc2V0RGVwbG95bWVudEFzc2V0SW1hZ2VDb2RlUHJvcHMsXG4gICAgfSk7XG4gICAgcmV0dXJuIGRvY2tlckltYWdlQ29kZTtcbiAgfVxufVxuIl19
@@ -145,5 +145,5 @@ class NextjsContainers extends constructs_1.Construct {
145
145
  }
146
146
  exports.NextjsContainers = NextjsContainers;
147
147
  _a = JSII_RTTI_SYMBOL_1;
148
- NextjsContainers[_a] = { fqn: "cdk-nextjs.NextjsContainers", version: "0.0.2" };
148
+ NextjsContainers[_a] = { fqn: "cdk-nextjs.NextjsContainers", version: "0.0.4" };
149
149
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWNvbnRhaW5lcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbmV4dGpzLWNvbXB1dGUvbmV4dGpzLWNvbnRhaW5lcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBdUM7QUFFdkMsaURBUTZCO0FBQzdCLG1FQUdzQztBQUV0Qyx1RkFBb0Y7QUFDcEYsMkNBQXVDO0FBb0J2Qzs7O0dBR0c7QUFDSCxNQUFhLGdCQUFpQixTQUFRLHNCQUFTO0lBTzdDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNEI7UUFDcEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUN2RCxJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRU8sZ0JBQWdCO1FBQ3RCLE1BQU0sT0FBTyxHQUFHLElBQUksaUJBQU8sQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFO1lBQzlDLDhCQUE4QixFQUFFLElBQUk7WUFDcEMsaUJBQWlCLEVBQUUsSUFBSTtZQUN2QixHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHO1lBQ25CLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsZUFBZTtTQUN6QyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBQ08sc0JBQXNCO1FBQzVCLElBQUksZUFBZSxHQUFnQyxTQUFTLENBQUM7UUFD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RSxPQUFPLEdBQUcsUUFBUSxNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUNwRixDQUFDOztBQTFKSCw0Q0EySkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgRG9ja2VySW1hZ2VBc3NldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWNyLWFzc2V0c1wiO1xuaW1wb3J0IHtcbiAgQXdzTG9nRHJpdmVyTW9kZSxcbiAgQ2ZuVGFza0RlZmluaXRpb24sXG4gIENsdXN0ZXIsXG4gIENvbnRhaW5lckltYWdlLFxuICBDcHVBcmNoaXRlY3R1cmUsXG4gIEhlYWx0aENoZWNrLFxuICBMb2dEcml2ZXJzLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjc1wiO1xuaW1wb3J0IHtcbiAgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZSxcbiAgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZVByb3BzLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWVjcy1wYXR0ZXJuc1wiO1xuaW1wb3J0IHsgRmlsZVN5c3RlbSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWZzXCI7XG5pbXBvcnQgeyBBcHBsaWNhdGlvblByb3RvY29sVmVyc2lvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWxhc3RpY2xvYWRiYWxhbmNpbmd2MlwiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE5leHRqc0NvbXB1dGVCYXNlUHJvcHMgfSBmcm9tIFwiLi9uZXh0anMtY29tcHV0ZS1iYXNlLXByb3BzXCI7XG5pbXBvcnQgeyBOZXh0anNUeXBlIH0gZnJvbSBcIi4uL2NvbW1vblwiO1xuaW1wb3J0IHsgT3B0aW9uYWxBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZFRhc2tJbWFnZU9wdGlvbnMgfSBmcm9tIFwiLi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZFRhc2tJbWFnZU9wdGlvbnNcIjtcbmltcG9ydCB7IE9wdGlvbmFsQ2x1c3RlclByb3BzIH0gZnJvbSBcIi4uL2dlbmVyYXRlZC1zdHJ1Y3RzL09wdGlvbmFsQ2x1c3RlclByb3BzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzQ29udGFpbmVyc092ZXJyaWRlcyB7XG4gIHJlYWRvbmx5IGVjc0NsdXN0ZXJQcm9wcz86IE9wdGlvbmFsQ2x1c3RlclByb3BzO1xuICByZWFkb25seSBhbGJGYXJnYXRlU2VydmljZVByb3BzPzogQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZVByb3BzO1xuICByZWFkb25seSB0YXNrSW1hZ2VPcHRpb25zPzogT3B0aW9uYWxBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZFRhc2tJbWFnZU9wdGlvbnM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzQ29udGFpbmVyc1Byb3BzIGV4dGVuZHMgTmV4dGpzQ29tcHV0ZUJhc2VQcm9wcyB7XG4gIHJlYWRvbmx5IGRvY2tlckltYWdlQXNzZXQ6IERvY2tlckltYWdlQXNzZXQ7XG4gIHJlYWRvbmx5IGZpbGVTeXN0ZW06IEZpbGVTeXN0ZW07XG4gIHJlYWRvbmx5IG5leHRqc1R5cGU6IE5leHRqc1R5cGU7XG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc0NvbnRhaW5lcnNPdmVycmlkZXM7XG4gIHJlYWRvbmx5IHJlbGF0aXZlRW50cnlwb2ludFBhdGg6IHN0cmluZztcbn1cblxuLyoqXG4gKiBOZXh0LmpzIGxvYWQgYmFsYW5jZWQgdmlhIEFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXIgd2l0aCBjb250YWluZXJzIHZpYSBBV1NcbiAqIEZhcmdhdGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBOZXh0anNDb250YWluZXJzIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgYWxiRmFyZ2F0ZVNlcnZpY2U6IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkRmFyZ2F0ZVNlcnZpY2U7XG4gIGVjc0NsdXN0ZXI6IENsdXN0ZXI7XG4gIHVybDogc3RyaW5nO1xuXG4gIHByaXZhdGUgcHJvcHM6IE5leHRqc0NvbnRhaW5lcnNQcm9wcztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzQ29udGFpbmVyc1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5lY3NDbHVzdGVyID0gdGhpcy5jcmVhdGVFY3NDbHVzdGVyKCk7XG4gICAgdGhpcy5hbGJGYXJnYXRlU2VydmljZSA9IHRoaXMuY3JlYXRlQWxiRmFyZ2F0ZVNldmljZSgpO1xuICAgIHRoaXMuY29uZmlndXJlSGVhbHRoQ2hlY2soKTtcbiAgICB0aGlzLmF0dGFjaEZpbGVTeXN0ZW0oKTtcbiAgICB0aGlzLnVybCA9IHRoaXMuZ2V0VXJsKCk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUVjc0NsdXN0ZXIoKTogQ2x1c3RlciB7XG4gICAgY29uc3QgY2x1c3RlciA9IG5ldyBDbHVzdGVyKHRoaXMsIFwiRWNzQ2x1c3RlclwiLCB7XG4gICAgICBlbmFibGVGYXJnYXRlQ2FwYWNpdHlQcm92aWRlcnM6IHRydWUsXG4gICAgICBjb250YWluZXJJbnNpZ2h0czogdHJ1ZSxcbiAgICAgIHZwYzogdGhpcy5wcm9wcy52cGMsXG4gICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8uZWNzQ2x1c3RlclByb3BzLFxuICAgIH0pO1xuICAgIHJldHVybiBjbHVzdGVyO1xuICB9XG4gIHByaXZhdGUgY3JlYXRlQWxiRmFyZ2F0ZVNldmljZSgpOiBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZEZhcmdhdGVTZXJ2aWNlIHtcbiAgICBsZXQgY3B1QXJjaGl0ZWN0dXJlOiBDcHVBcmNoaXRlY3R1cmUgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQ7XG4gICAgaWYgKHByb2Nlc3MuYXJjaCA9PT0gXCJ4NjRcIikge1xuICAgICAgY3B1QXJjaGl0ZWN0dXJlID0gQ3B1QXJjaGl0ZWN0dXJlLlg4Nl82NDtcbiAgICB9IGVsc2UgaWYgKHByb2Nlc3MuYXJjaCA9PT0gXCJhcm02NFwiKSB7XG4gICAgICBjcHVBcmNoaXRlY3R1cmUgPSBDcHVBcmNoaXRlY3R1cmUuQVJNNjQ7XG4gICAgfVxuICAgIGNvbnN0IGFsYkZhcmdhdGVTZXJ2aWNlID0gbmV3IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkRmFyZ2F0ZVNlcnZpY2UoXG4gICAgICB0aGlzLFxuICAgICAgXCJBbGJGYXJnYXRlU2VydmljZVwiLFxuICAgICAge1xuICAgICAgICBjaXJjdWl0QnJlYWtlcjogeyByb2xsYmFjazogdHJ1ZSwgZW5hYmxlOiB0cnVlIH0sXG4gICAgICAgIGNsdXN0ZXI6IHRoaXMuZWNzQ2x1c3RlcixcbiAgICAgICAgY3B1OiAxMDI0LFxuICAgICAgICBoZWFsdGhDaGVja0dyYWNlUGVyaW9kOiBEdXJhdGlvbi5zZWNvbmRzKDEwKSxcbiAgICAgICAgbWF4SGVhbHRoeVBlcmNlbnQ6IDIwMCxcbiAgICAgICAgbWVtb3J5TGltaXRNaUI6IDIwNDgsXG4gICAgICAgIG1pbkhlYWx0aHlQZXJjZW50OiAxMDAsIC8vIG1haW50YWluIHNlcnZpY2UgYXZhaWxhYmlsaXR5IGR1cmluZyBkZXBsb3ltZW50XG4gICAgICAgIC8qXG4gICAgICAgICAgVGhpcyBwcm90b2NvbCB2ZXJzaW9uIGlzIGZvciB0aGUgdGFyZ2V0IGdyb3VwIChGYXJnYXRlKSwgbm90IHRoZSBBTEJcbiAgICAgICAgICBMaXN0ZW5lci4gRnJvbSBkb2NzLCBcIkFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXJzIHByb3ZpZGUgbmF0aXZlIHN1cHBvcnRcbiAgICAgICAgICBmb3IgSFRUUC8yIHdpdGggSFRUUFMgbGlzdGVuZXJzXCIuIFNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vZWxhc3RpY2xvYWRiYWxhbmNpbmcvbGF0ZXN0L2FwcGxpY2F0aW9uL2xvYWQtYmFsYW5jZXItbGlzdGVuZXJzLmh0bWxcbiAgICAgICAgICBOZXh0LmpzIGRlZmF1bHQgc2VydmVyIGRvZXMgbm90IHN1cHBvcnQgSFRUUC8yIGFzIGl0J3MgcmVjb21tZW5kZWRcbiAgICAgICAgICB0byBwcm94eSB5b3VyIE5leHQuanMgc2VydmVyIHdoaWNoIHdlJ3JlIGRvaW5nIHdpdGggQUxCLlxuICAgICAgICAgIEFsc28gbm90ZSwgQ2xvdWRGcm9udCBvbmx5IHN1cHBvcnRzIEhUVFAvMS4xIG9yaWdpbnMuXG4gICAgICAgICAgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkRnJvbnQvbGF0ZXN0L0RldmVsb3Blckd1aWRlL1JlcXVlc3RBbmRSZXNwb25zZUJlaGF2aW9yQ3VzdG9tT3JpZ2luLmh0bWwjUmVxdWVzdEN1c3RvbUhUVFBWZXJzaW9uXG4gICAgICAgICovXG4gICAgICAgIHByb3RvY29sVmVyc2lvbjogQXBwbGljYXRpb25Qcm90b2NvbFZlcnNpb24uSFRUUDEsXG4gICAgICAgIHJ1bnRpbWVQbGF0Zm9ybToge1xuICAgICAgICAgIGNwdUFyY2hpdGVjdHVyZSxcbiAgICAgICAgfSxcbiAgICAgICAgdGFza0ltYWdlT3B0aW9uczoge1xuICAgICAgICAgIGNvbW1hbmQ6IFtcIm5vZGVcIiwgdGhpcy5wcm9wcy5yZWxhdGl2ZUVudHJ5cG9pbnRQYXRoXSxcbiAgICAgICAgICBjb250YWluZXJOYW1lOiBcIm5leHRqc1wiLFxuICAgICAgICAgIGNvbnRhaW5lclBvcnQ6IDMwMDAsXG4gICAgICAgICAgaW1hZ2U6IENvbnRhaW5lckltYWdlLmZyb21Eb2NrZXJJbWFnZUFzc2V0KFxuICAgICAgICAgICAgdGhpcy5wcm9wcy5kb2NrZXJJbWFnZUFzc2V0LFxuICAgICAgICAgICksXG4gICAgICAgICAgbG9nRHJpdmVyOiBMb2dEcml2ZXJzLmF3c0xvZ3Moe1xuICAgICAgICAgICAgc3RyZWFtUHJlZml4OiBcIm5leHRqc1wiLFxuICAgICAgICAgICAgbW9kZTogQXdzTG9nRHJpdmVyTW9kZS5OT05fQkxPQ0tJTkcsXG4gICAgICAgICAgfSksXG4gICAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LnRhc2tJbWFnZU9wdGlvbnMsXG4gICAgICAgIH0sXG4gICAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5hbGJGYXJnYXRlU2VydmljZVByb3BzLFxuICAgICAgfSxcbiAgICApO1xuICAgIC8vIHJlcXVpcmVkIG9yIGhlYWx0aCBjaGVja3MgZmFpbFxuICAgIGFsYkZhcmdhdGVTZXJ2aWNlLnRhc2tEZWZpbml0aW9uLmRlZmF1bHRDb250YWluZXI/LmFkZEVudmlyb25tZW50KFxuICAgICAgXCJIT1NUTkFNRVwiLFxuICAgICAgXCIwLjAuMC4wXCIsXG4gICAgKTtcbiAgICAvLyBzZWN1cml0eSBiZXN0IHByYWN0aWNlIHRvIGVuZm9yY2UgcmVhZG9ubHkgZm9yIHJvb3QgZmlsZXN5c3RlbVxuICAgIC8vIGhvcGVmdWxseSBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvaXNzdWVzLzIzOTM1IHdpbGwgcmVzdWx0IGluXG4gICAgLy8gZWFzaWVyIHdheSB0byBzZXQgdGhpcyBwcm9wZXJ0eVxuICAgIGNvbnN0IGNmblRhc2tEZWYgPSBhbGJGYXJnYXRlU2VydmljZS50YXNrRGVmaW5pdGlvbi5ub2RlXG4gICAgICAuZGVmYXVsdENoaWxkIGFzIENmblRhc2tEZWZpbml0aW9uO1xuICAgIGNmblRhc2tEZWYuYWRkUHJvcGVydHlPdmVycmlkZShcbiAgICAgIFwiQ29udGFpbmVyRGVmaW5pdGlvbnMuMC5SZWFkb25seVJvb3RGaWxlc3lzdGVtXCIsXG4gICAgICB0cnVlLCAvLyBUT0RPOiBmaWd1cmUgd2h5IHN5bWxpbmsgbm90IGJlaW5nIGNyZWF0ZWQgYmV0d2VlbiBmdWxsIHJvdXRlIGNhY2hlXG4gICAgKTtcbiAgICAvLyBzcGVlZCB1cCBkZXBsb3ltZW50cyBieSBzaG9ydGVuaW5nIGRlcmVnaXN0cmF0aW9uIGRlbGF5XG4gICAgLy8gaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkVDUy9sYXRlc3QvYmVzdHByYWN0aWNlc2d1aWRlL2xvYWQtYmFsYW5jZXItY29ubmVjdGlvbi1kcmFpbmluZy5odG1sXG4gICAgLy8gVE9ETzogZG9jdW1lbnQgdGhhdCB0aGlzIHNob3VsZCBiZSBpbmNyZWFzZWQgaWYgbG9uZyBsaXZlZCBjb25uZWN0aW9ucyBhcmUgZXhwZWN0ZWRcbiAgICBhbGJGYXJnYXRlU2VydmljZS50YXJnZXRHcm91cC5zZXRBdHRyaWJ1dGUoXG4gICAgICBcImRlcmVnaXN0cmF0aW9uX2RlbGF5LnRpbWVvdXRfc2Vjb25kc1wiLFxuICAgICAgXCIzMFwiLFxuICAgICk7XG4gICAgLy8gYmVzdCBwcmFjdGljZSB0byBlbmFibGUgY3Jvc3Mgem9uZSBsb2FkIGJhbGFuY2luZ1xuICAgIC8vIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2VsYXN0aWNsb2FkYmFsYW5jaW5nL2xhdGVzdC9hcHBsaWNhdGlvbi9kaXNhYmxlLWNyb3NzLXpvbmUuaHRtbFxuICAgIGFsYkZhcmdhdGVTZXJ2aWNlLmxvYWRCYWxhbmNlci5zZXRBdHRyaWJ1dGUoXG4gICAgICBcImxvYWRfYmFsYW5jaW5nLmNyb3NzX3pvbmUuZW5hYmxlZFwiLFxuICAgICAgXCJ0cnVlXCIsXG4gICAgKTtcbiAgICByZXR1cm4gYWxiRmFyZ2F0ZVNlcnZpY2U7XG4gIH1cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBoZWFsdGggY2hlY2tzIGZvciBjb250YWluZXJzIGF0IEFMQiBhbmQgRUNTIGxldmVsLiBUaGlzIGVuc3VyZXNcbiAgICogdW5oZWFsdGh5IGNvbnRhaW5lcnMgYXJlIHJlbW92ZWQuIEJvdGggb2YgdGhlc2UgaGVhbHRoIGNoZWNrcyBjYW4gYmVcbiAgICogb3ZlcndyaXR0ZW4gYnkgdXNlciBieSBhY2Nlc3NpbmcgYGFsYkZhcmdhdGVTZXJ2aWNlYCBwcm9wZXJ0eSwgc28gbm8gbmVlZFxuICAgKiBmb3IgYG92ZXJyaWRlc2AuXG4gICAqL1xuICBwcml2YXRlIGNvbmZpZ3VyZUhlYWx0aENoZWNrKCkge1xuICAgIC8vIHNwZWVkIHVwIGRlcGxveW1lbnRzIGJ5IHNob3J0ZW5pbmcgaGVhbHRoIGNoZWNrc1xuICAgIC8vIHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uRUNTL2xhdGVzdC9iZXN0cHJhY3RpY2VzZ3VpZGUvbG9hZC1iYWxhbmNlci1oZWFsdGhjaGVjay5odG1sXG4gICAgdGhpcy5hbGJGYXJnYXRlU2VydmljZS50YXJnZXRHcm91cC5jb25maWd1cmVIZWFsdGhDaGVjayh7XG4gICAgICBwYXRoOiB0aGlzLnByb3BzLmhlYWx0aENoZWNrUGF0aCxcbiAgICAgIGhlYWx0aHlUaHJlc2hvbGRDb3VudDogMixcbiAgICAgIGludGVydmFsOiBEdXJhdGlvbi5zZWNvbmRzKDEwKSwgLy8gdG9vIGZyZXF1ZW50PyBidXQgZW5hYmxlcyBmYXN0ZXIgcm9sbGJhY2suLi5cbiAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoNSksIC8vIG11c3QgYmUgbGVzcyB0aGFuIGludGVydmFsXG4gICAgfSk7XG4gICAgY29uc3QgaGVhbHRoQ2hlY2s6IEhlYWx0aENoZWNrID0ge1xuICAgICAgY29tbWFuZDogW1xuICAgICAgICBcIkNNRC1TSEVMTFwiLFxuICAgICAgICAvLyBjdXJsIGlzbid0IGF2YWlsYWJsZSBpbiBhbHBpbmUgbGludXhcbiAgICAgICAgYHdnZXQgLS1xdWlldCAtLXRyaWVzPTEgLS1zcGlkZXIgaHR0cDovL2xvY2FsaG9zdDozMDAwJHt0aGlzLnByb3BzLmhlYWx0aENoZWNrUGF0aH0gfHwgZXhpdCAxYCxcbiAgICAgIF0sXG4gICAgfTtcbiAgICBjb25zdCBkZWZhdWx0Q29udGFpbmVyID1cbiAgICAgIHRoaXMuYWxiRmFyZ2F0ZVNlcnZpY2UudGFza0RlZmluaXRpb24uZGVmYXVsdENvbnRhaW5lcjtcbiAgICBpZiAoZGVmYXVsdENvbnRhaW5lcikge1xuICAgICAgLy8gQHRzLWV4cGVjdC1lcnJvciBtdXN0IHVzZSBpbnRlcm5hbCBcInByb3BzXCIgYXR0cmlidXRlIGIvYyBubyBvdGhlciB3YXkgdG8gYWRkIGhlYWx0aCBjaGVja1xuICAgICAgZGVmYXVsdENvbnRhaW5lci5wcm9wcy5oZWFsdGhDaGVjayA9IGhlYWx0aENoZWNrO1xuICAgIH1cbiAgfVxuICBwcml2YXRlIGF0dGFjaEZpbGVTeXN0ZW0oKSB7XG4gICAgY29uc3QgY29udGFpbmVyID0gdGhpcy5hbGJGYXJnYXRlU2VydmljZS50YXNrRGVmaW5pdGlvbi5kZWZhdWx0Q29udGFpbmVyO1xuICAgIGNvbnN0IHZvbHVtZU5hbWUgPSBcImNkay1uZXh0anMtdm9sdW1lXCI7XG4gICAgdGhpcy5hbGJGYXJnYXRlU2VydmljZS50YXNrRGVmaW5pdGlvbi5hZGRWb2x1bWUoe1xuICAgICAgbmFtZTogdm9sdW1lTmFtZSxcbiAgICAgIGVmc1ZvbHVtZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgZmlsZVN5c3RlbUlkOiB0aGlzLnByb3BzLmZpbGVTeXN0ZW0uZmlsZVN5c3RlbUlkLFxuICAgICAgICB0cmFuc2l0RW5jcnlwdGlvbjogXCJFTkFCTEVEXCIsXG4gICAgICAgIGF1dGhvcml6YXRpb25Db25maWc6IHtcbiAgICAgICAgICBhY2Nlc3NQb2ludElkOiB0aGlzLnByb3BzLmFjY2Vzc1BvaW50LmFjY2Vzc1BvaW50SWQsXG4gICAgICAgICAgaWFtOiBcIkVOQUJMRURcIixcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgY29udGFpbmVyPy5hZGRNb3VudFBvaW50cyh7XG4gICAgICBzb3VyY2VWb2x1bWU6IHZvbHVtZU5hbWUsXG4gICAgICBjb250YWluZXJQYXRoOiB0aGlzLnByb3BzLmNvbnRhaW5lck1vdW50UGF0aEZvckVmcyxcbiAgICAgIHJlYWRPbmx5OiBmYWxzZSxcbiAgICB9KTtcbiAgfVxuICBwcml2YXRlIGdldFVybCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IHByb3RvY29sID0gdGhpcy5hbGJGYXJnYXRlU2VydmljZS5jZXJ0aWZpY2F0ZSA/IFwiaHR0cHNcIiA6IFwiaHR0cFwiO1xuICAgIHJldHVybiBgJHtwcm90b2NvbH06Ly8ke3RoaXMuYWxiRmFyZ2F0ZVNlcnZpY2UubG9hZEJhbGFuY2VyLmxvYWRCYWxhbmNlckRuc05hbWV9YDtcbiAgfVxufVxuIl19
@@ -53,5 +53,5 @@ class NextjsFunctions extends constructs_1.Construct {
53
53
  }
54
54
  exports.NextjsFunctions = NextjsFunctions;
55
55
  _a = JSII_RTTI_SYMBOL_1;
56
- NextjsFunctions[_a] = { fqn: "cdk-nextjs.NextjsFunctions", version: "0.0.2" };
56
+ NextjsFunctions[_a] = { fqn: "cdk-nextjs.NextjsFunctions", version: "0.0.4" };
57
57
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWZ1bmN0aW9ucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9uZXh0anMtY29tcHV0ZS9uZXh0anMtZnVuY3Rpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQXVDO0FBQ3ZDLHVEQVFnQztBQUNoQywyQ0FBdUM7QUFldkM7O0dBRUc7QUFDSCxNQUFhLGVBQWdCLFNBQVEsc0JBQVM7SUFNNUMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUEyQjtRQUNuRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUM7WUFDOUMsUUFBUSxFQUFFLGdDQUFtQixDQUFDLE9BQU87WUFDckMsVUFBVSxFQUFFLHVCQUFVLENBQUMsZUFBZTtZQUN0QyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLGdCQUFnQjtTQUMxQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN4QixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQztJQUNILENBQUM7SUFFTyxjQUFjO1FBQ3BCLElBQUksWUFBWSxHQUE2QixTQUFTLENBQUM7UUFDdkQsSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDO1lBQzNCLFlBQVksR0FBRyx5QkFBWSxDQUFDLE1BQU0sQ0FBQztRQUNyQyxDQUFDO2FBQU0sSUFBSSxPQUFPLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRSxDQUFDO1lBQ3BDLFlBQVksR0FBRyx5QkFBWSxDQUFDLE1BQU0sQ0FBQztRQUNyQyxDQUFDO1FBQ0QsTUFBTSxFQUFFLEdBQUcsSUFBSSxnQ0FBbUIsQ0FBQyxJQUFJLEVBQUUsV0FBVyxFQUFFO1lBQ3BELFlBQVk7WUFDWixJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlO1lBQ2hDLFVBQVUsRUFBRSx1QkFBVSxDQUFDLGtCQUFrQixDQUN2QyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFDdEIsSUFBSSxDQUFDLEtBQUssQ0FBQyx3QkFBd0IsQ0FDcEM7WUFDRCxVQUFVLEVBQUUsSUFBSTtZQUNoQixPQUFPLEVBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQzdCLEdBQUcsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUc7WUFDbkIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSx3QkFBd0I7WUFDakQsV0FBVyxFQUFFO2dCQUNYLDBCQUEwQixFQUFFLE1BQU07Z0JBQ2xDLG1CQUFtQixFQUFFLGlCQUFpQjtnQkFDdEMsNEJBQTRCLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlO2dCQUN4RCw0QkFBNEIsRUFBRSxNQUFNO2dCQUNwQyxvQkFBb0IsRUFBRSx3QkFBd0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUU7Z0JBQzFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsd0JBQXdCLEVBQUUsV0FBVzthQUMvRDtTQUNGLENBQUMsQ0FBQztRQUNILE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQzs7QUFoREgsMENBaURDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHVyYXRpb24gfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7XG4gIEFyY2hpdGVjdHVyZSxcbiAgRG9ja2VySW1hZ2VDb2RlLFxuICBEb2NrZXJJbWFnZUZ1bmN0aW9uLFxuICBGaWxlU3lzdGVtLFxuICBGdW5jdGlvblVybCxcbiAgRnVuY3Rpb25VcmxBdXRoVHlwZSxcbiAgSW52b2tlTW9kZSxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGFcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBOZXh0anNDb21wdXRlQmFzZVByb3BzIH0gZnJvbSBcIi4vbmV4dGpzLWNvbXB1dGUtYmFzZS1wcm9wc1wiO1xuaW1wb3J0IHsgT3B0aW9uYWxEb2NrZXJJbWFnZUZ1bmN0aW9uUHJvcHMgfSBmcm9tIFwiLi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxEb2NrZXJJbWFnZUZ1bmN0aW9uUHJvcHNcIjtcbmltcG9ydCB7IE9wdGlvbmFsRnVuY3Rpb25VcmxQcm9wcyB9IGZyb20gXCIuLi9nZW5lcmF0ZWQtc3RydWN0cy9PcHRpb25hbEZ1bmN0aW9uVXJsUHJvcHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNGdW5jdGlvbnNPdmVycmlkZXMge1xuICByZWFkb25seSBkb2NrZXJJbWFnZUZ1bmN0aW9uUHJvcHM/OiBPcHRpb25hbERvY2tlckltYWdlRnVuY3Rpb25Qcm9wcztcbiAgcmVhZG9ubHkgZnVuY3Rpb25VcmxQcm9wcz86IE9wdGlvbmFsRnVuY3Rpb25VcmxQcm9wcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNGdW5jdGlvbnNQcm9wcyBleHRlbmRzIE5leHRqc0NvbXB1dGVCYXNlUHJvcHMge1xuICByZWFkb25seSBkb2NrZXJJbWFnZUNvZGU6IERvY2tlckltYWdlQ29kZTtcbiAgcmVhZG9ubHkgb3ZlcnJpZGVzPzogTmV4dGpzRnVuY3Rpb25zT3ZlcnJpZGVzO1xufVxuXG4vKipcbiAqIFJ1biBOZXh0LmpzIGluIGZ1bmN0aW9ucyBvbiBBV1Mgd2l0aCBBV1MgTGFtYmRhLlxuICovXG5leHBvcnQgY2xhc3MgTmV4dGpzRnVuY3Rpb25zIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgZnVuY3Rpb246IERvY2tlckltYWdlRnVuY3Rpb247XG4gIGZ1bmN0aW9uVXJsOiBGdW5jdGlvblVybDtcblxuICBwcml2YXRlIHByb3BzOiBOZXh0anNGdW5jdGlvbnNQcm9wcztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzRnVuY3Rpb25zUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgICB0aGlzLmZ1bmN0aW9uID0gdGhpcy5jcmVhdGVGdW5jdGlvbigpO1xuICAgIHRoaXMuZnVuY3Rpb25VcmwgPSB0aGlzLmZ1bmN0aW9uLmFkZEZ1bmN0aW9uVXJsKHtcbiAgICAgIGF1dGhUeXBlOiBGdW5jdGlvblVybEF1dGhUeXBlLkFXU19JQU0sXG4gICAgICBpbnZva2VNb2RlOiBJbnZva2VNb2RlLlJFU1BPTlNFX1NUUkVBTSxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5mdW5jdGlvblVybFByb3BzLFxuICAgIH0pO1xuICAgIGlmICghdGhpcy5mdW5jdGlvbi5yb2xlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXCJGdW5jdGlvbiByb2xlIGlzIHVuZGVmaW5lZFwiKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZ1bmN0aW9uKCkge1xuICAgIGxldCBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZSB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAocHJvY2Vzcy5hcmNoID09PSBcIng2NFwiKSB7XG4gICAgICBhcmNoaXRlY3R1cmUgPSBBcmNoaXRlY3R1cmUuWDg2XzY0O1xuICAgIH0gZWxzZSBpZiAocHJvY2Vzcy5hcmNoID09PSBcImFybTY0XCIpIHtcbiAgICAgIGFyY2hpdGVjdHVyZSA9IEFyY2hpdGVjdHVyZS5BUk1fNjQ7XG4gICAgfVxuICAgIGNvbnN0IGZuID0gbmV3IERvY2tlckltYWdlRnVuY3Rpb24odGhpcywgXCJGdW5jdGlvbnNcIiwge1xuICAgICAgYXJjaGl0ZWN0dXJlLFxuICAgICAgY29kZTogdGhpcy5wcm9wcy5kb2NrZXJJbWFnZUNvZGUsXG4gICAgICBmaWxlc3lzdGVtOiBGaWxlU3lzdGVtLmZyb21FZnNBY2Nlc3NQb2ludChcbiAgICAgICAgdGhpcy5wcm9wcy5hY2Nlc3NQb2ludCxcbiAgICAgICAgdGhpcy5wcm9wcy5jb250YWluZXJNb3VudFBhdGhGb3JFZnMsXG4gICAgICApLFxuICAgICAgbWVtb3J5U2l6ZTogMjA0OCxcbiAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoMzApLFxuICAgICAgdnBjOiB0aGlzLnByb3BzLnZwYyxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5kb2NrZXJJbWFnZUZ1bmN0aW9uUHJvcHMsXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBBV1NfTFdBX0VOQUJMRV9DT01QUkVTU0lPTjogXCJ0cnVlXCIsXG4gICAgICAgIEFXU19MV0FfSU5WT0tFX01PREU6IFwicmVzcG9uc2Vfc3RyZWFtXCIsXG4gICAgICAgIEFXU19MV0FfUkVBRElORVNTX0NIRUNLX1BBVEg6IHRoaXMucHJvcHMuaGVhbHRoQ2hlY2tQYXRoLFxuICAgICAgICBBV1NfTFdBX1JFQURJTkVTU19DSEVDS19QT1JUOiBcIjMwMDBcIixcbiAgICAgICAgUkVBRElORVNTX0NIRUNLX1BBVEg6IGBodHRwOi8vMTI3LjAuMC4xOjMwMDAke3RoaXMucHJvcHMuaGVhbHRoQ2hlY2tQYXRofWAsXG4gICAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5kb2NrZXJJbWFnZUZ1bmN0aW9uUHJvcHM/LmVudmlyb25tZW50LFxuICAgICAgfSxcbiAgICB9KTtcbiAgICByZXR1cm4gZm47XG4gIH1cbn1cbiJdfQ==
@@ -6,7 +6,7 @@ import { Construct } from "constructs";
6
6
  import { NextjsType } from "./common";
7
7
  import { OptionalDistributionProps } from "./generated-structs/OptionalDistributionProps";
8
8
  import { OptionalFunctionProps } from "./generated-structs/OptionalFunctionProps";
9
- import { OptionalS3OriginProps } from "./generated-structs/OptionalS3OriginProps";
9
+ import { OptionalS3OriginBucketWithOACProps } from "./generated-structs/OptionalS3OriginBucketWithOACProps";
10
10
  import { PublicDirEntry } from "./nextjs-build/nextjs-build";
11
11
  export interface NextjsDistributionOverrides {
12
12
  readonly edgeFunctionProps?: OptionalFunctionProps;
@@ -20,7 +20,7 @@ export interface NextjsDistributionOverrides {
20
20
  readonly dynamicHttpOriginProps?: HttpOriginProps;
21
21
  readonly staticBehaviorOptions?: AddBehaviorOptions;
22
22
  readonly staticResponseHeadersPolicyProps?: ResponseHeadersPolicyProps;
23
- readonly s3OriginProps?: OptionalS3OriginProps;
23
+ readonly s3BucketOriginProps?: OptionalS3OriginBucketWithOACProps;
24
24
  }
25
25
  export interface NextjsDistributionProps {
26
26
  /**
@@ -70,11 +70,6 @@ export declare class NextjsDistribution extends Construct {
70
70
  private staticBehaviorOptions;
71
71
  private dynamicBehaviorOptions;
72
72
  private imageBehaviorOptions;
73
- /**
74
- * Given stack id: "arn:aws:cloudformation:us-east-1:905418358903:stack/lh-stickb-idp/4bf74be0-e880-11ee-aea9-0affc6185b25",
75
- * returns "4bf74be0"
76
- */
77
- private uniqueStackIdPart;
78
73
  constructor(scope: Construct, id: string, props: NextjsDistributionProps);
79
74
  private createStaticOrigin;
80
75
  private createDynamicOrigin;
@@ -109,12 +104,4 @@ export declare class NextjsDistribution extends Construct {
109
104
  * Optionally prepends base path to given path pattern.
110
105
  */
111
106
  private getPathPattern;
112
- /**
113
- * Add Origin Access Control (OAC) to CloudFront Distribution which is preferred
114
- * way to secure access from Distribution to S3. Remove legacy OAI.
115
- *
116
- * When CDK releases L2 support for this, please remove this code.
117
- * @see https://github.com/aws/aws-cdk/issues/21771#issuecomment-1567647338
118
- */
119
- private addS3OacAndRemoveOai;
120
107
  }
@@ -35,11 +35,6 @@ class NextjsDistribution extends constructs_1.Construct {
35
35
  },
36
36
  xssProtection: { override: false, protection: true, modeBlock: true },
37
37
  };
38
- /**
39
- * Given stack id: "arn:aws:cloudformation:us-east-1:905418358903:stack/lh-stickb-idp/4bf74be0-e880-11ee-aea9-0affc6185b25",
40
- * returns "4bf74be0"
41
- */
42
- this.uniqueStackIdPart = aws_cdk_lib_1.Fn.select(0, aws_cdk_lib_1.Fn.split("-", aws_cdk_lib_1.Fn.select(2, aws_cdk_lib_1.Fn.split("/", `${aws_cdk_lib_1.Aws.STACK_ID}`))));
43
38
  this.props = props;
44
39
  this.staticOrigin = this.createStaticOrigin();
45
40
  this.isFunctionCompute = props.nextjsType === common_1.NextjsType.GLOBAL_FUNCTIONS;
@@ -56,7 +51,6 @@ class NextjsDistribution extends constructs_1.Construct {
56
51
  this.distribution = this.getDistribution();
57
52
  this.addStaticBehaviors();
58
53
  this.addDynamicBehaviors();
59
- this.addS3OacAndRemoveOai();
60
54
  if (this.isFunctionCompute) {
61
55
  // this.addLambdaOac(); // TODO: wait for POST body encryption feature for Lambda OAC
62
56
  }
@@ -65,7 +59,7 @@ class NextjsDistribution extends constructs_1.Construct {
65
59
  });
66
60
  }
67
61
  createStaticOrigin() {
68
- const s3Origin = new aws_cloudfront_origins_1.S3Origin(this.props.assetsBucket, this.props.overrides?.s3OriginProps);
62
+ const s3Origin = aws_cloudfront_origins_1.S3BucketOrigin.withOriginAccessControl(this.props.assetsBucket, this.props.overrides?.s3BucketOriginProps);
69
63
  return s3Origin;
70
64
  }
71
65
  createDynamicOrigin() {
@@ -78,6 +72,35 @@ class NextjsDistribution extends constructs_1.Construct {
78
72
  ? aws_cloudfront_1.OriginProtocolPolicy.HTTPS_ONLY
79
73
  : aws_cloudfront_1.OriginProtocolPolicy.HTTP_ONLY;
80
74
  }
75
+ // WAITING FOR CLOUDFRONT FEATURE: CloudFront Lambda Function URL OAC
76
+ // doesn't support POST with body since CloudFront doesn't include sha256
77
+ // hash of body. see: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-restricting-access-to-lambda.html
78
+ // We could monkey patch `fetch` to include sha256 in request for server
79
+ // actions, but better solution is for cloudfront to support it
80
+ //
81
+ // TODO: use L2 construct when released: https://github.com/aws/aws-cdk/issues/31629
82
+ /**
83
+ * Given stack id: "arn:aws:cloudformation:us-east-1:905418358903:stack/lh-stickb-idp/4bf74be0-e880-11ee-aea9-0affc6185b25",
84
+ * returns "4bf74be0"
85
+ */
86
+ // const uniqueStackIdPart = Fn.select(
87
+ // 0,
88
+ // Fn.split("-", Fn.select(2, Fn.split("/", `${Aws.STACK_ID}`))),
89
+ // );
90
+ // const lambdaOac = new CfnOriginAccessControl(this, "OAC", {
91
+ // originAccessControlConfig: {
92
+ // name: `OAC-Lambda-${uniqueStackIdPart}`,
93
+ // originAccessControlOriginType: "lambda",
94
+ // signingBehavior: "always",
95
+ // signingProtocol: "sigv4",
96
+ // },
97
+ // });
98
+ // const cfnDistribution = this.distribution.node
99
+ // .defaultChild as CfnDistribution;
100
+ // cfnDistribution.addPropertyOverride(
101
+ // "DistributionConfig.Origins.0.OriginAccessControlId",
102
+ // lambdaOac.getAtt("Id"),
103
+ // );
81
104
  return new aws_cloudfront_origins_1.HttpOrigin(aws_cdk_lib_1.Fn.parseDomainName(this.props.dynamicUrl), {
82
105
  protocolPolicy,
83
106
  ...this.props.overrides?.dynamicHttpOriginProps,
@@ -204,6 +227,10 @@ class NextjsDistribution extends constructs_1.Construct {
204
227
  // add default cache policy if not provided
205
228
  const cachePolicy = imageBehaviorOptions?.cachePolicy ??
206
229
  new aws_cloudfront_1.CachePolicy(this, "ImageCachePolicy", {
230
+ // SECURITY NOTE: by default we don't include cookies in cache for
231
+ // images b/c it significantly improves image perf for most sites BUT
232
+ // if you have private images locked behind auth implemented with cookies
233
+ // you need to override this.
207
234
  queryStringBehavior: aws_cloudfront_1.CacheQueryStringBehavior.all(),
208
235
  headerBehavior: aws_cloudfront_1.CacheHeaderBehavior.allowList("accept"),
209
236
  cookieBehavior: aws_cloudfront_1.CacheCookieBehavior.none(),
@@ -244,7 +271,7 @@ class NextjsDistribution extends constructs_1.Construct {
244
271
  distribution = new aws_cloudfront_1.Distribution(this, "Distribution", {
245
272
  minimumProtocolVersion: aws_cloudfront_1.SecurityPolicyProtocol.TLS_V1_2_2021,
246
273
  defaultBehavior: this.dynamicBehaviorOptions,
247
- httpVersion: aws_cloudfront_1.HttpVersion.HTTP2, // HTTP2_AND_3 causes timeout issues with Lambda Function URLs!
274
+ httpVersion: aws_cloudfront_1.HttpVersion.HTTP2_AND_3,
248
275
  comment: `cdk-nextjs Distribution for ${aws_cdk_lib_1.Stack.of(this).stackName}`,
249
276
  ...this.props.overrides?.distributionProps,
250
277
  });
@@ -293,70 +320,8 @@ class NextjsDistribution extends constructs_1.Construct {
293
320
  return pathPattern;
294
321
  }
295
322
  }
296
- /**
297
- * Add Origin Access Control (OAC) to CloudFront Distribution which is preferred
298
- * way to secure access from Distribution to S3. Remove legacy OAI.
299
- *
300
- * When CDK releases L2 support for this, please remove this code.
301
- * @see https://github.com/aws/aws-cdk/issues/21771#issuecomment-1567647338
302
- */
303
- addS3OacAndRemoveOai() {
304
- const s3Oac = new aws_cloudfront_1.CfnOriginAccessControl(this, "OAC", {
305
- originAccessControlConfig: {
306
- name: `OAC-S3-${this.uniqueStackIdPart}`,
307
- originAccessControlOriginType: "s3",
308
- signingBehavior: "always",
309
- signingProtocol: "sigv4",
310
- },
311
- });
312
- // add OAC to CloudFront Distribution
313
- const cfnDistribution = this.distribution.node
314
- .defaultChild;
315
- cfnDistribution.addOverride("Properties.DistributionConfig.Origins.1.S3OriginConfig.OriginAccessIdentity", "");
316
- cfnDistribution.addPropertyOverride("DistributionConfig.Origins.1.OriginAccessControlId", s3Oac.getAtt("Id"));
317
- // add IAM Policy Statement to allow OAC access to Bucket
318
- const oacBucketStatement = new aws_iam_1.PolicyStatement({
319
- sid: "AllowS3OacAccess",
320
- principals: [new aws_iam_1.ServicePrincipal("cloudfront.amazonaws.com")],
321
- actions: ["s3:GetObject"],
322
- resources: [this.props.assetsBucket.bucketArn + "/*"],
323
- conditions: {
324
- StringEquals: {
325
- "aws:sourceArn": aws_cdk_lib_1.Stack.of(this).formatArn({
326
- service: "cloudfront",
327
- region: "",
328
- resource: "distribution",
329
- resourceName: this.distribution.distributionId,
330
- arnFormat: aws_cdk_lib_1.ArnFormat.SLASH_RESOURCE_NAME,
331
- }),
332
- },
333
- },
334
- });
335
- this.props.assetsBucket.addToResourcePolicy(oacBucketStatement);
336
- // Remove OAI IAM Policy Statement from Bucket Policy
337
- const bucketPolicyJson = this.props.assetsBucket.policy?.document.toJSON();
338
- const updatedBucketPolicyJson = {
339
- Version: "2012-10-17",
340
- Statement: [],
341
- };
342
- for (const statement of bucketPolicyJson.Statement) {
343
- if (!("CanonicalUser" in statement.Principal)) {
344
- updatedBucketPolicyJson.Statement.push(statement);
345
- }
346
- }
347
- const bucketPolicy = this.props.assetsBucket.node.findChild("Policy").node
348
- .defaultChild;
349
- bucketPolicy.addOverride("Properties.PolicyDocument", updatedBucketPolicyJson);
350
- // Remove S3 Origin Resource
351
- const distributionChildren = this.distribution.node.findAll();
352
- for (const child of distributionChildren) {
353
- if (child.node.id === "S3Origin") {
354
- child.node.tryRemoveChild("Resource");
355
- }
356
- }
357
- }
358
323
  }
359
324
  exports.NextjsDistribution = NextjsDistribution;
360
325
  _a = JSII_RTTI_SYMBOL_1;
361
- NextjsDistribution[_a] = { fqn: "cdk-nextjs.NextjsDistribution", version: "0.0.2" };
362
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWRpc3RyaWJ1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uZXh0anMtZGlzdHJpYnV0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBUXFCO0FBRXJCLCtEQTZCb0M7QUFDcEMsK0VBSTRDO0FBQzVDLGlEQUF3RTtBQUV4RSwyQ0FBdUM7QUFDdkMscUNBQXNDO0FBSXRDLHFGQUErRTtBQWtEL0UsTUFBYSxrQkFBbUIsU0FBUSxzQkFBUztJQTZDL0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBMUNuQjs7O1dBR0c7UUFDSyxrQ0FBNkIsR0FBb0M7WUFDdkUsa0JBQWtCLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO1lBQ3ZDLFlBQVksRUFBRTtnQkFDWixXQUFXLEVBQUUsbUNBQWtCLENBQUMsVUFBVTtnQkFDMUMsUUFBUSxFQUFFLEtBQUs7YUFDaEI7WUFDRCxjQUFjLEVBQUU7Z0JBQ2QsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsY0FBYyxFQUFFLHNDQUFxQixDQUFDLCtCQUErQjthQUN0RTtZQUVELHVCQUF1QixFQUFFO2dCQUN2QixtQkFBbUIsRUFBRSxzQkFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7Z0JBQ3ZDLGlCQUFpQixFQUFFLElBQUk7Z0JBQ3ZCLFFBQVEsRUFBRSxLQUFLO2dCQUNmLE9BQU8sRUFBRSxJQUFJO2FBQ2Q7WUFDRCxhQUFhLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRTtTQUN0RSxDQUFDO1FBVUY7OztXQUdHO1FBQ0ssc0JBQWlCLEdBQUcsZ0JBQUUsQ0FBQyxNQUFNLENBQ25DLENBQUMsRUFDRCxnQkFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsZ0JBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLGdCQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLGlCQUFHLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQzlELENBQUM7UUFJQSxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzlDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsVUFBVSxLQUFLLG1CQUFVLENBQUMsZ0JBQWdCLENBQUM7UUFDMUUsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNoRCxJQUFJLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxDQUFDLGdDQUFnQyxFQUFFLENBQUM7UUFDM0UsSUFBSSxDQUFDLHFDQUFxQztZQUN4QyxJQUFJLENBQUMsMkNBQTJDLEVBQUUsQ0FBQztRQUNyRCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNCLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7UUFDOUMsQ0FBQztRQUNELElBQUksQ0FBQyxxQkFBcUIsR0FBRyxJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztRQUNoRSxJQUFJLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDbEUsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQzlELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1FBQzFCLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO1FBQzNCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO1FBQzVCLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDM0IscUZBQXFGO1FBQ3ZGLENBQUM7UUFDRCxJQUFJLHVCQUFTLENBQUMsSUFBSSxFQUFFLHdCQUF3QixFQUFFO1lBQzVDLEtBQUssRUFBRSxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVU7U0FDcEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGtCQUFrQjtRQUN4QixNQUFNLFFBQVEsR0FBRyxJQUFJLGlDQUFRLENBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxhQUFhLENBQ3BDLENBQUM7UUFDRixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBQ08sbUJBQW1CO1FBQ3pCLElBQUksY0FBb0MsQ0FBQztRQUN6QyxJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1lBQzNCLGNBQWMsR0FBRyxxQ0FBb0IsQ0FBQyxVQUFVLENBQUM7UUFDbkQsQ0FBQzthQUFNLENBQUM7WUFDTixjQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO2dCQUNyQyxDQUFDLENBQUMscUNBQW9CLENBQUMsVUFBVTtnQkFDakMsQ0FBQyxDQUFDLHFDQUFvQixDQUFDLFNBQVMsQ0FBQztRQUNyQyxDQUFDO1FBQ0QsT0FBTyxJQUFJLG1DQUFVLENBQUMsZ0JBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRTtZQUMvRCxjQUFjO1lBQ2QsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxzQkFBc0I7U0FDaEQsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNEOzs7O09BSUc7SUFDSyxnQ0FBZ0M7UUFDdEMsT0FBTyxJQUFJLENBQUMsaUJBQWlCO1lBQzNCLENBQUMsQ0FBQyxvQ0FBbUIsQ0FBQyw2QkFBNkI7WUFDbkQsQ0FBQyxDQUFDLG9DQUFtQixDQUFDLFVBQVUsQ0FBQztJQUNyQyxDQUFDO0lBQ0Q7Ozs7T0FJRztJQUNLLDJDQUEyQztRQUNqRCxNQUFNLFlBQVksR0FBMEIsRUFBRSxDQUFDO1FBQy9DLElBQUksSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7WUFDM0IsTUFBTSxZQUFZLEdBQUcsSUFBSSx5QkFBa0IsQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO2dCQUNoRSxJQUFJLEVBQUUsNkJBQVksQ0FBQyxVQUFVLENBQUM7Ozs7OztXQU0zQixDQUFDO2FBQ0wsQ0FBQyxDQUFDO1lBQ0gsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDaEIsU0FBUyxFQUFFLGtDQUFpQixDQUFDLGNBQWM7Z0JBQzNDLFFBQVEsRUFBRSxZQUFZO2FBQ3ZCLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBQ0Q7Ozs7T0FJRztJQUNLLGlCQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3hFLE1BQU0sTUFBTSxHQUFHLElBQUksd0NBQWlCLENBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRTtZQUN0RCxxQkFBcUIsRUFBRTtnQkFDckIsYUFBYSxFQUFFLENBQUMsRUFBRSxvRkFBb0Y7YUFDdkc7WUFDRCxhQUFhLEVBQUU7Z0JBQ2IsSUFBSSx5QkFBZSxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztvQkFDckMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUM7aUJBQ3BDLENBQUM7YUFDSDtZQUNELEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsaUJBQWlCO1NBQzNDLENBQUMsQ0FBQztRQUNILE1BQU0sQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUMvQixJQUFJLDBCQUFnQixDQUFDLDBCQUEwQixDQUFDLENBQ2pELENBQUM7UUFDRixNQUFNLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FDL0IsSUFBSSwwQkFBZ0IsQ0FBQyxzQkFBc0IsQ0FBQyxDQUM3QyxDQUFDO1FBQ0YsK0VBQStFO1FBQy9FLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQywyQkFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELE9BQU87WUFDTDtnQkFDRSxTQUFTLEVBQUUsb0NBQW1CLENBQUMsY0FBYztnQkFDN0MsZUFBZSxFQUFFLE1BQU0sQ0FBQyxjQUFjO2dCQUN0QyxXQUFXLEVBQUUsSUFBSTthQUNsQjtTQUNGLENBQUM7SUFDSixDQUFDO0lBQ08sMkJBQTJCO1FBQ2pDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUscUJBQXFCLENBQUM7UUFDMUUsTUFBTSxxQkFBcUIsR0FDekIscUJBQXFCLEVBQUUscUJBQXFCO1lBQzVDLElBQUksc0NBQXFCLENBQUMsSUFBSSxFQUFFLDZCQUE2QixFQUFFO2dCQUM3RCx1QkFBdUIsRUFBRSxJQUFJLENBQUMsNkJBQTZCO2dCQUMzRCxPQUFPLEVBQUUsNkNBQTZDLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTtnQkFDaEYsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxnQ0FBZ0M7YUFDMUQsQ0FBQyxDQUFDO1FBQ0wsT0FBTztZQUNMLGNBQWMsRUFBRSwrQkFBYyxDQUFDLHNCQUFzQjtZQUNyRCxhQUFhLEVBQUUsOEJBQWEsQ0FBQyxzQkFBc0I7WUFDbkQsV0FBVyxFQUFFLDRCQUFXLENBQUMsaUJBQWlCO1lBQzFDLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWTtZQUN6QixxQkFBcUI7WUFDckIsb0JBQW9CLEVBQUUscUNBQW9CLENBQUMsaUJBQWlCO1lBQzVELEdBQUcscUJBQXFCO1NBQ3pCLENBQUM7SUFDSixDQUFDO0lBQ08sNEJBQTRCO1FBQ2xDLE1BQU0sc0JBQXNCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsc0JBQXNCLENBQUM7UUFDNUUsOENBQThDO1FBQzlDLE1BQU0sV0FBVyxHQUNmLHNCQUFzQixFQUFFLFdBQVc7WUFDbkMsSUFBSSw0QkFBVyxDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRTtnQkFDMUMsbUJBQW1CLEVBQUUseUNBQXdCLENBQUMsR0FBRyxFQUFFO2dCQUNuRCxjQUFjLEVBQUUsb0NBQW1CLENBQUMsU0FBUyxDQUMzQyxRQUFRLEVBQ1IsS0FBSyxFQUNMLHNCQUFzQixFQUN0Qix3QkFBd0IsRUFDeEIsVUFBVSxFQUNWLHdCQUF3QixDQUN6QjtnQkFDRCxjQUFjLEVBQUUsb0NBQW1CLENBQUMsR0FBRyxFQUFFO2dCQUN6QywwQkFBMEIsRUFBRSxJQUFJO2dCQUNoQyx3QkFBd0IsRUFBRSxJQUFJO2dCQUM5QixPQUFPLEVBQUUsbUNBQW1DLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTtnQkFDdEUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSx1QkFBdUI7YUFDakQsQ0FBQyxDQUFDO1FBQ0wsTUFBTSxxQkFBcUIsR0FDekIsc0JBQXNCLEVBQUUscUJBQXFCO1lBQzdDLElBQUksc0NBQXFCLENBQUMsSUFBSSxFQUFFLDhCQUE4QixFQUFFO2dCQUM5RCx1QkFBdUIsRUFBRSxJQUFJLENBQUMsNkJBQTZCO2dCQUMzRCxPQUFPLEVBQUUsOENBQThDLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTtnQkFDakYsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxzQkFBc0IsRUFBRSxxQkFBcUI7YUFDdkUsQ0FBQyxDQUFDO1FBQ0wsTUFBTSxlQUFlLEdBQW9CO1lBQ3ZDLGNBQWMsRUFBRSwrQkFBYyxDQUFDLFNBQVM7WUFDeEMsV0FBVztZQUNYLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixvQkFBb0IsRUFBRSxJQUFJLENBQUMscUNBQXFDO1lBQ2hFLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYTtZQUMxQixtQkFBbUIsRUFBRSxJQUFJLENBQUMsMkJBQTJCO1lBQ3JELHFCQUFxQjtZQUNyQixvQkFBb0IsRUFBRSxxQ0FBb0IsQ0FBQyxpQkFBaUI7WUFDNUQsR0FBRyxzQkFBc0I7U0FDMUIsQ0FBQztRQUNGLE9BQU8sZUFBZSxDQUFDO0lBQ3pCLENBQUM7SUFDTywwQkFBMEI7UUFDaEMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxvQkFBb0IsQ0FBQztRQUN4RSwyQ0FBMkM7UUFDM0MsTUFBTSxXQUFXLEdBQ2Ysb0JBQW9CLEVBQUUsV0FBVztZQUNqQyxJQUFJLDRCQUFXLENBQUMsSUFBSSxFQUFFLGtCQUFrQixFQUFFO2dCQUN4QyxtQkFBbUIsRUFBRSx5Q0FBd0IsQ0FBQyxHQUFHLEVBQUU7Z0JBQ25ELGNBQWMsRUFBRSxvQ0FBbUIsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDO2dCQUN2RCxjQUFjLEVBQUUsb0NBQW1CLENBQUMsSUFBSSxFQUFFO2dCQUMxQywwQkFBMEIsRUFBRSxJQUFJO2dCQUNoQyx3QkFBd0IsRUFBRSxJQUFJO2dCQUM5QixPQUFPLEVBQUUsaUNBQWlDLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTtnQkFDcEUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxxQkFBcUI7YUFDL0MsQ0FBQyxDQUFDO1FBQ0wsc0RBQXNEO1FBQ3RELE1BQU0scUJBQXFCLEdBQ3pCLG9CQUFvQixFQUFFLHFCQUFxQjtZQUMzQyxJQUFJLHNDQUFxQixDQUFDLElBQUksRUFBRSw0QkFBNEIsRUFBRTtnQkFDNUQsdUJBQXVCLEVBQUUsSUFBSSxDQUFDLDZCQUE2QjtnQkFDM0QsT0FBTyxFQUFFLDRDQUE0QyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUU7Z0JBQy9FLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsK0JBQStCO2FBQ3pELENBQUMsQ0FBQztRQUNMLE9BQU87WUFDTCxjQUFjLEVBQUUsK0JBQWMsQ0FBQyxzQkFBc0I7WUFDckQsYUFBYSxFQUFFLDhCQUFhLENBQUMsc0JBQXNCO1lBQ25ELFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixvQkFBb0IsRUFBRSxJQUFJLENBQUMscUNBQXFDO1lBQ2hFLE1BQU0sRUFBRSxJQUFJLENBQUMsYUFBYTtZQUMxQixtQkFBbUIsRUFBRSxJQUFJLENBQUMsMkJBQTJCO1lBQ3JELFdBQVc7WUFDWCxxQkFBcUI7WUFDckIsb0JBQW9CLEVBQUUscUNBQW9CLENBQUMsaUJBQWlCO1lBQzVELEdBQUcsb0JBQW9CO1NBQ3hCLENBQUM7SUFDSixDQUFDO0lBQ0Q7O09BRUc7SUFDSyxlQUFlO1FBQ3JCLElBQUksWUFBMEIsQ0FBQztRQUMvQixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7WUFDNUIsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ3pDLENBQUM7YUFBTSxDQUFDO1lBQ04sWUFBWSxHQUFHLElBQUksNkJBQVksQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO2dCQUNwRCxzQkFBc0IsRUFBRSx1Q0FBc0IsQ0FBQyxhQUFhO2dCQUM1RCxlQUFlLEVBQUUsSUFBSSxDQUFDLHNCQUFzQjtnQkFDNUMsV0FBVyxFQUFFLDRCQUFXLENBQUMsS0FBSyxFQUFFLCtEQUErRDtnQkFDL0YsT0FBTyxFQUFFLCtCQUErQixtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLEVBQUU7Z0JBQ2xFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsaUJBQWlCO2FBQzNDLENBQUMsQ0FBQztRQUNMLENBQUM7UUFDRCxPQUFPLFlBQVksQ0FBQztJQUN0QixDQUFDO0lBQ08sbUJBQW1CO1FBQ3pCLGlCQUFpQjtRQUNqQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsRUFDbkMsSUFBSSxDQUFDLG9CQUFvQixDQUFDLE1BQU0sRUFDaEMsSUFBSSxDQUFDLG9CQUFvQixDQUMxQixDQUFDO1FBQ0Ysc0JBQXNCO1FBQ3RCLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4Qiw4RUFBOEU7WUFDOUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQzNCLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUNuQixJQUFJLENBQUMsc0JBQXNCLENBQUMsTUFBTSxFQUNsQyxJQUFJLENBQUMsc0JBQXNCLENBQzVCLENBQUM7WUFDRiw2RkFBNkY7WUFDN0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLEVBQ3hCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxNQUFNLEVBQ2xDLElBQUksQ0FBQyxzQkFBc0IsQ0FDNUIsQ0FBQztRQUNKLENBQUM7YUFBTSxDQUFDO1lBQ04scUVBQXFFO1FBQ3ZFLENBQUM7SUFDSCxDQUFDO0lBQ08sa0JBQWtCO1FBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUMzQixlQUFlLEVBQ2YsSUFBSSxDQUFDLFlBQVksRUFDakIsSUFBSSxDQUFDLHFCQUFxQixDQUMzQixDQUFDO1FBQ0YsNkRBQTZEO1FBQzdELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLElBQUksRUFBRSxFQUFFLENBQUM7WUFDN0MsTUFBTSxJQUFJLEtBQUssQ0FDYiwyVEFBMlQsQ0FDNVQsQ0FBQztRQUNKLENBQUM7UUFDRCxLQUFLLE1BQU0sVUFBVSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUNyRCxNQUFNLFdBQVcsR0FBRyxVQUFVLENBQUMsV0FBVztnQkFDeEMsQ0FBQyxDQUFDLEdBQUcsVUFBVSxDQUFDLElBQUksSUFBSTtnQkFDeEIsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUM7WUFDcEIsSUFBSSxDQUFDLCtCQUErQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO2dCQUN2RCxNQUFNLElBQUksS0FBSyxDQUNiLGdFQUFnRSxXQUFXLHdLQUF3SyxDQUNwUCxDQUFDO1lBQ0osQ0FBQztZQUNELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMxRCxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FDM0IsZ0JBQWdCLEVBQ2hCLElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxxQkFBcUIsQ0FDM0IsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBQ0Q7O09BRUc7SUFDSyxjQUFjLENBQUMsV0FBbUI7UUFDeEMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNqRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sV0FBVyxDQUFDO1FBQ3JCLENBQUM7SUFDSCxDQUFDO0lBQ0Q7Ozs7OztPQU1HO0lBQ0ssb0JBQW9CO1FBQzFCLE1BQU0sS0FBSyxHQUFHLElBQUksdUNBQXNCLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUNwRCx5QkFBeUIsRUFBRTtnQkFDekIsSUFBSSxFQUFFLFVBQVUsSUFBSSxDQUFDLGlCQUFpQixFQUFFO2dCQUN4Qyw2QkFBNkIsRUFBRSxJQUFJO2dCQUNuQyxlQUFlLEVBQUUsUUFBUTtnQkFDekIsZUFBZSxFQUFFLE9BQU87YUFDekI7U0FDRixDQUFDLENBQUM7UUFDSCxxQ0FBcUM7UUFDckMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJO2FBQzNDLFlBQStCLENBQUM7UUFDbkMsZUFBZSxDQUFDLFdBQVcsQ0FDekIsNkVBQTZFLEVBQzdFLEVBQUUsQ0FDSCxDQUFDO1FBQ0YsZUFBZSxDQUFDLG1CQUFtQixDQUNqQyxvREFBb0QsRUFDcEQsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FDbkIsQ0FBQztRQUVGLHlEQUF5RDtRQUN6RCxNQUFNLGtCQUFrQixHQUFHLElBQUkseUJBQWUsQ0FBQztZQUM3QyxHQUFHLEVBQUUsa0JBQWtCO1lBQ3ZCLFVBQVUsRUFBRSxDQUFDLElBQUksMEJBQWdCLENBQUMsMEJBQTBCLENBQUMsQ0FBQztZQUM5RCxPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7WUFDekIsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUNyRCxVQUFVLEVBQUU7Z0JBQ1YsWUFBWSxFQUFFO29CQUNaLGVBQWUsRUFBRSxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7d0JBQ3hDLE9BQU8sRUFBRSxZQUFZO3dCQUNyQixNQUFNLEVBQUUsRUFBRTt3QkFDVixRQUFRLEVBQUUsY0FBYzt3QkFDeEIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYzt3QkFDOUMsU0FBUyxFQUFFLHVCQUFTLENBQUMsbUJBQW1CO3FCQUN6QyxDQUFDO2lCQUNIO2FBQ0Y7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxtQkFBbUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQ2hFLHFEQUFxRDtRQUNyRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0UsTUFBTSx1QkFBdUIsR0FBRztZQUM5QixPQUFPLEVBQUUsWUFBWTtZQUNyQixTQUFTLEVBQUUsRUFBZTtTQUMzQixDQUFDO1FBQ0YsS0FBSyxNQUFNLFNBQVMsSUFBSSxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNuRCxJQUFJLENBQUMsQ0FBQyxlQUFlLElBQUksU0FBUyxDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUM7Z0JBQzlDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDcEQsQ0FBQztRQUNILENBQUM7UUFDRCxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUk7YUFDdkUsWUFBK0IsQ0FBQztRQUNuQyxZQUFZLENBQUMsV0FBVyxDQUN0QiwyQkFBMkIsRUFDM0IsdUJBQXVCLENBQ3hCLENBQUM7UUFFRiw0QkFBNEI7UUFDNUIsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUM5RCxLQUFLLE1BQU0sS0FBSyxJQUFJLG9CQUFvQixFQUFFLENBQUM7WUFDekMsSUFBSSxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxVQUFVLEVBQUUsQ0FBQztnQkFDakMsS0FBSyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDeEMsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDOztBQTNaSCxnREE4YUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBBcm5Gb3JtYXQsXG4gIEF3cyxcbiAgQ2ZuT3V0cHV0LFxuICBEdXJhdGlvbixcbiAgRm4sXG4gIFJlbW92YWxQb2xpY3ksXG4gIFN0YWNrLFxufSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IElDZXJ0aWZpY2F0ZSB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2VydGlmaWNhdGVtYW5hZ2VyXCI7XG5pbXBvcnQge1xuICBBZGRCZWhhdmlvck9wdGlvbnMsXG4gIEFsbG93ZWRNZXRob2RzLFxuICBCZWhhdmlvck9wdGlvbnMsXG4gIENhY2hlQ29va2llQmVoYXZpb3IsXG4gIENhY2hlSGVhZGVyQmVoYXZpb3IsXG4gIENhY2hlUG9saWN5LFxuICBDYWNoZVBvbGljeVByb3BzLFxuICBDYWNoZVF1ZXJ5U3RyaW5nQmVoYXZpb3IsXG4gIENhY2hlZE1ldGhvZHMsXG4gIENmbkRpc3RyaWJ1dGlvbixcbiAgQ2ZuT3JpZ2luQWNjZXNzQ29udHJvbCxcbiAgRnVuY3Rpb24gYXMgQ2xvdWRGcm9udEZ1bmN0aW9uLFxuICBEaXN0cmlidXRpb24sXG4gIEZ1bmN0aW9uQXNzb2NpYXRpb24sXG4gIEZ1bmN0aW9uQ29kZSxcbiAgRnVuY3Rpb25FdmVudFR5cGUsXG4gIEhlYWRlcnNGcmFtZU9wdGlvbixcbiAgSGVhZGVyc1JlZmVycmVyUG9saWN5LFxuICBIdHRwVmVyc2lvbixcbiAgSU9yaWdpblJlcXVlc3RQb2xpY3ksXG4gIExhbWJkYUVkZ2VFdmVudFR5cGUsXG4gIE9yaWdpblByb3RvY29sUG9saWN5LFxuICBPcmlnaW5SZXF1ZXN0UG9saWN5LFxuICBSZXNwb25zZUhlYWRlcnNQb2xpY3ksXG4gIFJlc3BvbnNlSGVhZGVyc1BvbGljeVByb3BzLFxuICBSZXNwb25zZVNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yLFxuICBTZWN1cml0eVBvbGljeVByb3RvY29sLFxuICBWaWV3ZXJQcm90b2NvbFBvbGljeSxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZGZyb250XCI7XG5pbXBvcnQge1xuICBIdHRwT3JpZ2luLFxuICBIdHRwT3JpZ2luUHJvcHMsXG4gIFMzT3JpZ2luLFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnQtb3JpZ2luc1wiO1xuaW1wb3J0IHsgUG9saWN5U3RhdGVtZW50LCBTZXJ2aWNlUHJpbmNpcGFsIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IENmbkJ1Y2tldFBvbGljeSwgSUJ1Y2tldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBOZXh0anNUeXBlIH0gZnJvbSBcIi4vY29tbW9uXCI7XG5pbXBvcnQgeyBPcHRpb25hbERpc3RyaWJ1dGlvblByb3BzIH0gZnJvbSBcIi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxEaXN0cmlidXRpb25Qcm9wc1wiO1xuaW1wb3J0IHsgT3B0aW9uYWxGdW5jdGlvblByb3BzIH0gZnJvbSBcIi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxGdW5jdGlvblByb3BzXCI7XG5pbXBvcnQgeyBPcHRpb25hbFMzT3JpZ2luUHJvcHMgfSBmcm9tIFwiLi9nZW5lcmF0ZWQtc3RydWN0cy9PcHRpb25hbFMzT3JpZ2luUHJvcHNcIjtcbmltcG9ydCB7IFNpZ25GblVybEZ1bmN0aW9uIH0gZnJvbSBcIi4vbGFtYmRhcy9zaWduLWZuLXVybC9zaWduLWZuLXVybC1mdW5jdGlvblwiO1xuaW1wb3J0IHsgUHVibGljRGlyRW50cnkgfSBmcm9tIFwiLi9uZXh0anMtYnVpbGQvbmV4dGpzLWJ1aWxkXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzRGlzdHJpYnV0aW9uT3ZlcnJpZGVzIHtcbiAgcmVhZG9ubHkgZWRnZUZ1bmN0aW9uUHJvcHM/OiBPcHRpb25hbEZ1bmN0aW9uUHJvcHM7XG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvblByb3BzPzogT3B0aW9uYWxEaXN0cmlidXRpb25Qcm9wcztcbiAgcmVhZG9ubHkgaW1hZ2VCZWhhdmlvck9wdGlvbnM/OiBBZGRCZWhhdmlvck9wdGlvbnM7XG4gIHJlYWRvbmx5IGltYWdlQ2FjaGVQb2xpY3lQcm9wcz86IENhY2hlUG9saWN5UHJvcHM7XG4gIHJlYWRvbmx5IGltYWdlUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHM/OiBSZXNwb25zZUhlYWRlcnNQb2xpY3lQcm9wcztcbiAgcmVhZG9ubHkgZHluYW1pY0JlaGF2aW9yT3B0aW9ucz86IEFkZEJlaGF2aW9yT3B0aW9ucztcbiAgcmVhZG9ubHkgZHluYW1pY0NhY2hlUG9saWN5UHJvcHM/OiBDYWNoZVBvbGljeVByb3BzO1xuICByZWFkb25seSBkeW5hbWljUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHM/OiBSZXNwb25zZUhlYWRlcnNQb2xpY3lQcm9wcztcbiAgcmVhZG9ubHkgZHluYW1pY0h0dHBPcmlnaW5Qcm9wcz86IEh0dHBPcmlnaW5Qcm9wcztcbiAgcmVhZG9ubHkgc3RhdGljQmVoYXZpb3JPcHRpb25zPzogQWRkQmVoYXZpb3JPcHRpb25zO1xuICByZWFkb25seSBzdGF0aWNSZXNwb25zZUhlYWRlcnNQb2xpY3lQcm9wcz86IFJlc3BvbnNlSGVhZGVyc1BvbGljeVByb3BzO1xuICByZWFkb25seSBzM09yaWdpblByb3BzPzogT3B0aW9uYWxTM09yaWdpblByb3BzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc0Rpc3RyaWJ1dGlvblByb3BzIHtcbiAgLyoqXG4gICAqIEJ1Y2tldCBjb250YWluaW5nIHN0YXRpYyBhc3NldHMuXG4gICAqIE11c3QgYmUgcHJvdmlkZWQgaWYgeW91IHdhbnQgdG8gc2VydmUgc3RhdGljIGZpbGVzLlxuICAgKi9cbiAgcmVhZG9ubHkgYXNzZXRzQnVja2V0OiBJQnVja2V0O1xuICByZWFkb25seSBiYXNlUGF0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGJ1dCBvbmx5IGFwcGxpY2FibGUgZm9yIGBOZXh0anNUeXBlLkdMT0JBTF9DT05UQUlORVJTYFxuICAgKi9cbiAgcmVhZG9ubHkgY2VydGlmaWNhdGU/OiBJQ2VydGlmaWNhdGU7XG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbj86IERpc3RyaWJ1dGlvbjtcbiAgLyoqXG4gICAqIER5bmFtaWMgKE5leHQuanMgc2VydmVyKSBVUkwgdG8gYWRkIGJlaGF2aW9yIHRvIGRpc3RyaWJ1dGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZHluYW1pY1VybDogc3RyaW5nO1xuICAvKipcbiAgICogUmVxdWlyZWQgaWYgYE5leHRqc1R5cGUuR0xPQkFMX0ZVTkNUSU9OU2BcbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uQXJuPzogc3RyaW5nO1xuICByZWFkb25seSBuZXh0anNUeXBlOiBOZXh0anNUeXBlO1xuICAvKipcbiAgICogT3ZlcnJpZGUgcHJvcHMgZm9yIGV2ZXJ5IGNvbnN0cnVjdC5cbiAgICovXG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc0Rpc3RyaWJ1dGlvbk92ZXJyaWRlcztcbiAgLyoqXG4gICAqIFBhdGggdG8gZGlyZWN0b3J5IG9mIE5leHQuanMgYXBwJ3MgcHVibGljIGRpcmVjdG9yeS4gVXNlZCB0byBhZGQgc3RhdGljXG4gICAqIGJlaGF2aW9ycyB0byBkaXN0cmlidXRpb24uXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNEaXJFbnRyaWVzOiBQdWJsaWNEaXJFbnRyeVtdO1xufVxuXG5leHBvcnQgY2xhc3MgTmV4dGpzRGlzdHJpYnV0aW9uIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgZGlzdHJpYnV0aW9uOiBEaXN0cmlidXRpb247XG5cbiAgcHJpdmF0ZSBwcm9wczogTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHM7XG4gIC8qKlxuICAgKiBDb21tb24gc2VjdXJpdHkgaGVhZGVycyBhcHBsaWVkIGJ5IGRlZmF1bHQgdG8gYWxsIG9yaWdpbnNcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRGcm9udC9sYXRlc3QvRGV2ZWxvcGVyR3VpZGUvdXNpbmctbWFuYWdlZC1yZXNwb25zZS1oZWFkZXJzLXBvbGljaWVzLmh0bWwjbWFuYWdlZC1yZXNwb25zZS1oZWFkZXJzLXBvbGljaWVzLXNlY3VyaXR5XG4gICAqL1xuICBwcml2YXRlIGNvbW1vblNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yOiBSZXNwb25zZVNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yID0ge1xuICAgIGNvbnRlbnRUeXBlT3B0aW9uczogeyBvdmVycmlkZTogZmFsc2UgfSxcbiAgICBmcmFtZU9wdGlvbnM6IHtcbiAgICAgIGZyYW1lT3B0aW9uOiBIZWFkZXJzRnJhbWVPcHRpb24uU0FNRU9SSUdJTixcbiAgICAgIG92ZXJyaWRlOiBmYWxzZSxcbiAgICB9LFxuICAgIHJlZmVycmVyUG9saWN5OiB7XG4gICAgICBvdmVycmlkZTogZmFsc2UsXG4gICAgICByZWZlcnJlclBvbGljeTogSGVhZGVyc1JlZmVycmVyUG9saWN5LlNUUklDVF9PUklHSU5fV0hFTl9DUk9TU19PUklHSU4sXG4gICAgfSxcblxuICAgIHN0cmljdFRyYW5zcG9ydFNlY3VyaXR5OiB7XG4gICAgICBhY2Nlc3NDb250cm9sTWF4QWdlOiBEdXJhdGlvbi5kYXlzKDM2NSksXG4gICAgICBpbmNsdWRlU3ViZG9tYWluczogdHJ1ZSxcbiAgICAgIG92ZXJyaWRlOiBmYWxzZSxcbiAgICAgIHByZWxvYWQ6IHRydWUsXG4gICAgfSxcbiAgICB4c3NQcm90ZWN0aW9uOiB7IG92ZXJyaWRlOiBmYWxzZSwgcHJvdGVjdGlvbjogdHJ1ZSwgbW9kZUJsb2NrOiB0cnVlIH0sXG4gIH07XG4gIHByaXZhdGUgc3RhdGljT3JpZ2luOiBTM09yaWdpbjtcbiAgcHJpdmF0ZSBkeW5hbWljT3JpZ2luOiBIdHRwT3JpZ2luO1xuICBwcml2YXRlIGR5bmFtaWNPcmlnaW5SZXNwb25zZVBvbGljeTogSU9yaWdpblJlcXVlc3RQb2xpY3k7XG4gIHByaXZhdGUgZHluYW1pY0Nsb3VkRnJvbnRGdW5jdGlvbkFzc29jaWF0aW9uczogRnVuY3Rpb25Bc3NvY2lhdGlvbltdO1xuICBwcml2YXRlIGVkZ2VMYW1iZGFzPzogQWRkQmVoYXZpb3JPcHRpb25zW1wiZWRnZUxhbWJkYXNcIl07XG4gIHByaXZhdGUgaXNGdW5jdGlvbkNvbXB1dGU6IGJvb2xlYW47XG4gIHByaXZhdGUgc3RhdGljQmVoYXZpb3JPcHRpb25zOiBCZWhhdmlvck9wdGlvbnM7XG4gIHByaXZhdGUgZHluYW1pY0JlaGF2aW9yT3B0aW9uczogQmVoYXZpb3JPcHRpb25zO1xuICBwcml2YXRlIGltYWdlQmVoYXZpb3JPcHRpb25zOiBCZWhhdmlvck9wdGlvbnM7XG4gIC8qKlxuICAgKiBHaXZlbiBzdGFjayBpZDogXCJhcm46YXdzOmNsb3VkZm9ybWF0aW9uOnVzLWVhc3QtMTo5MDU0MTgzNTg5MDM6c3RhY2svbGgtc3RpY2tiLWlkcC80YmY3NGJlMC1lODgwLTExZWUtYWVhOS0wYWZmYzYxODViMjVcIixcbiAgICogcmV0dXJucyBcIjRiZjc0YmUwXCJcbiAgICovXG4gIHByaXZhdGUgdW5pcXVlU3RhY2tJZFBhcnQgPSBGbi5zZWxlY3QoXG4gICAgMCxcbiAgICBGbi5zcGxpdChcIi1cIiwgRm4uc2VsZWN0KDIsIEZuLnNwbGl0KFwiL1wiLCBgJHtBd3MuU1RBQ0tfSUR9YCkpKSxcbiAgKTtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgICB0aGlzLnN0YXRpY09yaWdpbiA9IHRoaXMuY3JlYXRlU3RhdGljT3JpZ2luKCk7XG4gICAgdGhpcy5pc0Z1bmN0aW9uQ29tcHV0ZSA9IHByb3BzLm5leHRqc1R5cGUgPT09IE5leHRqc1R5cGUuR0xPQkFMX0ZVTkNUSU9OUztcbiAgICB0aGlzLmR5bmFtaWNPcmlnaW4gPSB0aGlzLmNyZWF0ZUR5bmFtaWNPcmlnaW4oKTtcbiAgICB0aGlzLmR5bmFtaWNPcmlnaW5SZXNwb25zZVBvbGljeSA9IHRoaXMuY3JlYXRlRHluYW1pY09yaWdpblJlcXVlc3RQb2xpY3koKTtcbiAgICB0aGlzLmR5bmFtaWNDbG91ZEZyb250RnVuY3Rpb25Bc3NvY2lhdGlvbnMgPVxuICAgICAgdGhpcy5jcmVhdGVEeW5hbWljQ2xvdWRGcm9udEZ1bmN0aW9uQXNzb2NpYXRpb25zKCk7XG4gICAgaWYgKHRoaXMuaXNGdW5jdGlvbkNvbXB1dGUpIHtcbiAgICAgIHRoaXMuZWRnZUxhbWJkYXMgPSB0aGlzLmNyZWF0ZUVkZ2VMYW1iZGFzKCk7XG4gICAgfVxuICAgIHRoaXMuc3RhdGljQmVoYXZpb3JPcHRpb25zID0gdGhpcy5jcmVhdGVTdGF0aWNCZWhhdmlvck9wdGlvbnMoKTtcbiAgICB0aGlzLmR5bmFtaWNCZWhhdmlvck9wdGlvbnMgPSB0aGlzLmNyZWF0ZUR5bmFtaWNCZWhhdmlvck9wdGlvbnMoKTtcbiAgICB0aGlzLmltYWdlQmVoYXZpb3JPcHRpb25zID0gdGhpcy5jcmVhdGVJbWFnZUJlaGF2aW9yT3B0aW9ucygpO1xuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gdGhpcy5nZXREaXN0cmlidXRpb24oKTtcbiAgICB0aGlzLmFkZFN0YXRpY0JlaGF2aW9ycygpO1xuICAgIHRoaXMuYWRkRHluYW1pY0JlaGF2aW9ycygpO1xuICAgIHRoaXMuYWRkUzNPYWNBbmRSZW1vdmVPYWkoKTtcbiAgICBpZiAodGhpcy5pc0Z1bmN0aW9uQ29tcHV0ZSkge1xuICAgICAgLy8gdGhpcy5hZGRMYW1iZGFPYWMoKTsgLy8gVE9ETzogd2FpdCBmb3IgUE9TVCBib2R5IGVuY3J5cHRpb24gZmVhdHVyZSBmb3IgTGFtYmRhIE9BQ1xuICAgIH1cbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIFwiRGlzdHJpYnV0aW9uRG9tYWluTmFtZVwiLCB7XG4gICAgICB2YWx1ZTogdGhpcy5kaXN0cmlidXRpb24uZG9tYWluTmFtZSxcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlU3RhdGljT3JpZ2luKCk6IFMzT3JpZ2luIHtcbiAgICBjb25zdCBzM09yaWdpbiA9IG5ldyBTM09yaWdpbihcbiAgICAgIHRoaXMucHJvcHMuYXNzZXRzQnVja2V0LFxuICAgICAgdGhpcy5wcm9wcy5vdmVycmlkZXM/LnMzT3JpZ2luUHJvcHMsXG4gICAgKTtcbiAgICByZXR1cm4gczNPcmlnaW47XG4gIH1cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljT3JpZ2luKCk6IEh0dHBPcmlnaW4ge1xuICAgIGxldCBwcm90b2NvbFBvbGljeTogT3JpZ2luUHJvdG9jb2xQb2xpY3k7XG4gICAgaWYgKHRoaXMuaXNGdW5jdGlvbkNvbXB1dGUpIHtcbiAgICAgIHByb3RvY29sUG9saWN5ID0gT3JpZ2luUHJvdG9jb2xQb2xpY3kuSFRUUFNfT05MWTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHJvdG9jb2xQb2xpY3kgPSB0aGlzLnByb3BzLmNlcnRpZmljYXRlXG4gICAgICAgID8gT3JpZ2luUHJvdG9jb2xQb2xpY3kuSFRUUFNfT05MWVxuICAgICAgICA6IE9yaWdpblByb3RvY29sUG9saWN5LkhUVFBfT05MWTtcbiAgICB9XG4gICAgcmV0dXJuIG5ldyBIdHRwT3JpZ2luKEZuLnBhcnNlRG9tYWluTmFtZSh0aGlzLnByb3BzLmR5bmFtaWNVcmwpLCB7XG4gICAgICBwcm90b2NvbFBvbGljeSxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5keW5hbWljSHR0cE9yaWdpblByb3BzLFxuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiBMYW1iZGEgRnVuY3Rpb24gVVJMcyBcImV4cGVjdCB0aGUgYEhvc3RgIGhlYWRlciB0byBjb250YWluIHRoZSBvcmlnaW4gZG9tYWluXG4gICAqIG5hbWUsIG5vdCB0aGUgZG9tYWluIG5hbWUgb2YgdGhlIENsb3VkRnJvbnQgZGlzdHJpYnV0aW9uLlwiXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkRnJvbnQvbGF0ZXN0L0RldmVsb3Blckd1aWRlL3VzaW5nLW1hbmFnZWQtb3JpZ2luLXJlcXVlc3QtcG9saWNpZXMuaHRtbCNtYW5hZ2VkLW9yaWdpbi1yZXF1ZXN0LXBvbGljeS1hbGwtdmlld2VyLWV4Y2VwdC1ob3N0LWhlYWRlclxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljT3JpZ2luUmVxdWVzdFBvbGljeSgpOiBJT3JpZ2luUmVxdWVzdFBvbGljeSB7XG4gICAgcmV0dXJuIHRoaXMuaXNGdW5jdGlvbkNvbXB1dGVcbiAgICAgID8gT3JpZ2luUmVxdWVzdFBvbGljeS5BTExfVklFV0VSX0VYQ0VQVF9IT1NUX0hFQURFUlxuICAgICAgOiBPcmlnaW5SZXF1ZXN0UG9saWN5LkFMTF9WSUVXRVI7XG4gIH1cbiAgLyoqXG4gICAqIEVuc3VyZXMgTmV4dC5qcyBgcmVxdWVzdC51cmxgIHdpbGwgYmUgY29ycmVjdCBkb21haW4gaW5zdGVhZCBvZiBVUkwgb2ZcbiAgICogY29tcHV0ZSBvcHRpb24gKEFwcCBSdW5uZXIsIEZhcmdhdGUsIG9yIExhbWJkYSlcbiAgICogQHNlZSBodHRwczovL29wZW4tbmV4dC5qcy5vcmcvYWR2YW5jZWQvd29ya2Fyb3VuZCN3b3JrYXJvdW5kLXNldC14LWZvcndhcmRlZC1ob3N0LWhlYWRlci1hd3Mtc3BlY2lmaWNcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlRHluYW1pY0Nsb3VkRnJvbnRGdW5jdGlvbkFzc29jaWF0aW9ucygpOiBGdW5jdGlvbkFzc29jaWF0aW9uW10ge1xuICAgIGNvbnN0IGFzc29jaWF0aW9uczogRnVuY3Rpb25Bc3NvY2lhdGlvbltdID0gW107XG4gICAgaWYgKHRoaXMuaXNGdW5jdGlvbkNvbXB1dGUpIHtcbiAgICAgIGNvbnN0IGNsb3VkRnJvbnRGbiA9IG5ldyBDbG91ZEZyb250RnVuY3Rpb24odGhpcywgXCJDbG91ZEZyb250Rm5cIiwge1xuICAgICAgICBjb2RlOiBGdW5jdGlvbkNvZGUuZnJvbUlubGluZShgXG4gICAgICAgICAgZnVuY3Rpb24gaGFuZGxlcihldmVudCkge1xuICAgICAgICAgICAgdmFyIHJlcXVlc3QgPSBldmVudC5yZXF1ZXN0O1xuICAgICAgICAgICAgcmVxdWVzdC5oZWFkZXJzW1wieC1mb3J3YXJkZWQtaG9zdFwiXSA9IHJlcXVlc3QuaGVhZGVycy5ob3N0O1xuICAgICAgICAgICAgcmV0dXJuIHJlcXVlc3Q7XG4gICAgICAgICAgfVxuICAgICAgICAgIGApLFxuICAgICAgfSk7XG4gICAgICBhc3NvY2lhdGlvbnMucHVzaCh7XG4gICAgICAgIGV2ZW50VHlwZTogRnVuY3Rpb25FdmVudFR5cGUuVklFV0VSX1JFUVVFU1QsXG4gICAgICAgIGZ1bmN0aW9uOiBjbG91ZEZyb250Rm4sXG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIGFzc29jaWF0aW9ucztcbiAgfVxuICAvKipcbiAgICogUmVxdWlyZWQgdG8gc2lnbiByZXF1ZXN0cyBzbyB0aGF0IHdlIGNhbiB1c2UgSUFNX0FVVEggZm9yIExhbWJkYSBGdW5jdGlvbiBVUkxcbiAgICogdG8gcHJldmVudCBwdWJsaWMgYWNjZXNzLiBPbmNlIENsb3VkRnJvbnQgTGFtYmRhIE9BQyBpcyByZWxlYXNlZCwgd2UgY2FuXG4gICAqIHVzZSBpbmZyYSBjb25maWd1cmF0aW9uIGZvciB0aGlzIGluc3RlYWQgb2YgY3VzdG9tIGNvZGUuXG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZUVkZ2VMYW1iZGFzKCk6IEFkZEJlaGF2aW9yT3B0aW9uc1tcImVkZ2VMYW1iZGFzXCJdIHtcbiAgICBpZiAoIXRoaXMucHJvcHMuZnVuY3Rpb25Bcm4pIHRocm93IG5ldyBFcnJvcihcImZ1bmN0aW9uQXJuIGlzIHJlcXVpcmVkXCIpO1xuICAgIGNvbnN0IGVkZ2VGbiA9IG5ldyBTaWduRm5VcmxGdW5jdGlvbih0aGlzLCBcIlNpZ25GblVybFwiLCB7XG4gICAgICBjdXJyZW50VmVyc2lvbk9wdGlvbnM6IHtcbiAgICAgICAgcmV0cnlBdHRlbXB0czogMCwgLy8gZmFpbCBmYXN0IHdoZW4gdHJ5aW5nIHRvIGRlbGV0ZSBiL2MgcmVwbGljYXRlZCBmdW5jdGlvbnMgdGFrZSBsb25nIHRpbWUgdG8gZGVsZXRlXG4gICAgICB9LFxuICAgICAgaW5pdGlhbFBvbGljeTogW1xuICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICBhY3Rpb25zOiBbXCJsYW1iZGE6SW52b2tlRnVuY3Rpb25VcmxcIl0sXG4gICAgICAgICAgcmVzb3VyY2VzOiBbdGhpcy5wcm9wcy5mdW5jdGlvbkFybl0sXG4gICAgICAgIH0pLFxuICAgICAgXSxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5lZGdlRnVuY3Rpb25Qcm9wcyxcbiAgICB9KTtcbiAgICBlZGdlRm4uY3VycmVudFZlcnNpb24uZ3JhbnRJbnZva2UoXG4gICAgICBuZXcgU2VydmljZVByaW5jaXBhbChcImVkZ2VsYW1iZGEuYW1hem9uYXdzLmNvbVwiKSxcbiAgICApO1xuICAgIGVkZ2VGbi5jdXJyZW50VmVyc2lvbi5ncmFudEludm9rZShcbiAgICAgIG5ldyBTZXJ2aWNlUHJpbmNpcGFsKFwibGFtYmRhLmFtYXpvbmF3cy5jb21cIiksXG4gICAgKTtcbiAgICAvLyByZXRhaW4gb24gZGVsZXRlIGIvYyB0aGV5IHRha2UgdG9vIGxvbmcgdG8gZGVsZXRlIHJlc3VsdGluZyBpbiBzdGFjayBmYWlsdXJlXG4gICAgZWRnZUZuLmFwcGx5UmVtb3ZhbFBvbGljeShSZW1vdmFsUG9saWN5LlJFVEFJTik7XG4gICAgcmV0dXJuIFtcbiAgICAgIHtcbiAgICAgICAgZXZlbnRUeXBlOiBMYW1iZGFFZGdlRXZlbnRUeXBlLk9SSUdJTl9SRVFVRVNULFxuICAgICAgICBmdW5jdGlvblZlcnNpb246IGVkZ2VGbi5jdXJyZW50VmVyc2lvbixcbiAgICAgICAgaW5jbHVkZUJvZHk6IHRydWUsXG4gICAgICB9LFxuICAgIF07XG4gIH1cbiAgcHJpdmF0ZSBjcmVhdGVTdGF0aWNCZWhhdmlvck9wdGlvbnMoKTogQmVoYXZpb3JPcHRpb25zIHtcbiAgICBjb25zdCBzdGF0aWNCZWhhdmlvck9wdGlvbnMgPSB0aGlzLnByb3BzLm92ZXJyaWRlcz8uc3RhdGljQmVoYXZpb3JPcHRpb25zO1xuICAgIGNvbnN0IHJlc3BvbnNlSGVhZGVyc1BvbGljeSA9XG4gICAgICBzdGF0aWNCZWhhdmlvck9wdGlvbnM/LnJlc3BvbnNlSGVhZGVyc1BvbGljeSA/P1xuICAgICAgbmV3IFJlc3BvbnNlSGVhZGVyc1BvbGljeSh0aGlzLCBcIlN0YXRpY1Jlc3BvbnNlSGVhZGVyc1BvbGljeVwiLCB7XG4gICAgICAgIHNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yOiB0aGlzLmNvbW1vblNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yLFxuICAgICAgICBjb21tZW50OiBgTmV4dGpzIFN0YXRpYyBSZXNwb25zZSBIZWFkZXJzIFBvbGljeSBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LnN0YXRpY1Jlc3BvbnNlSGVhZGVyc1BvbGljeVByb3BzLFxuICAgICAgfSk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGFsbG93ZWRNZXRob2RzOiBBbGxvd2VkTWV0aG9kcy5BTExPV19HRVRfSEVBRF9PUFRJT05TLFxuICAgICAgY2FjaGVkTWV0aG9kczogQ2FjaGVkTWV0aG9kcy5DQUNIRV9HRVRfSEVBRF9PUFRJT05TLFxuICAgICAgY2FjaGVQb2xpY3k6IENhY2hlUG9saWN5LkNBQ0hJTkdfT1BUSU1JWkVELFxuICAgICAgb3JpZ2luOiB0aGlzLnN0YXRpY09yaWdpbixcbiAgICAgIHJlc3BvbnNlSGVhZGVyc1BvbGljeSxcbiAgICAgIHZpZXdlclByb3RvY29sUG9saWN5OiBWaWV3ZXJQcm90b2NvbFBvbGljeS5SRURJUkVDVF9UT19IVFRQUyxcbiAgICAgIC4uLnN0YXRpY0JlaGF2aW9yT3B0aW9ucyxcbiAgICB9O1xuICB9XG4gIHByaXZhdGUgY3JlYXRlRHluYW1pY0JlaGF2aW9yT3B0aW9ucygpOiBCZWhhdmlvck9wdGlvbnMge1xuICAgIGNvbnN0IGR5bmFtaWNCZWhhdmlvck9wdGlvbnMgPSB0aGlzLnByb3BzLm92ZXJyaWRlcz8uZHluYW1pY0JlaGF2aW9yT3B0aW9ucztcbiAgICAvLyBjcmVhdGUgZGVmYXVsdCBjYWNoZSBwb2xpY3kgaWYgbm90IHByb3ZpZGVkXG4gICAgY29uc3QgY2FjaGVQb2xpY3kgPVxuICAgICAgZHluYW1pY0JlaGF2aW9yT3B0aW9ucz8uY2FjaGVQb2xpY3kgPz9cbiAgICAgIG5ldyBDYWNoZVBvbGljeSh0aGlzLCBcIkR5bmFtaWNDYWNoZVBvbGljeVwiLCB7XG4gICAgICAgIHF1ZXJ5U3RyaW5nQmVoYXZpb3I6IENhY2hlUXVlcnlTdHJpbmdCZWhhdmlvci5hbGwoKSxcbiAgICAgICAgaGVhZGVyQmVoYXZpb3I6IENhY2hlSGVhZGVyQmVoYXZpb3IuYWxsb3dMaXN0KFxuICAgICAgICAgIFwiYWNjZXB0XCIsXG4gICAgICAgICAgXCJyc2NcIixcbiAgICAgICAgICBcIm5leHQtcm91dGVyLXByZWZldGNoXCIsXG4gICAgICAgICAgXCJuZXh0LXJvdXRlci1zdGF0ZS10cmVlXCIsXG4gICAgICAgICAgXCJuZXh0LXVybFwiLFxuICAgICAgICAgIFwieC1wcmVyZW5kZXItcmV2YWxpZGF0ZVwiLFxuICAgICAgICApLFxuICAgICAgICBjb29raWVCZWhhdmlvcjogQ2FjaGVDb29raWVCZWhhdmlvci5hbGwoKSxcbiAgICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdCcm90bGk6IHRydWUsXG4gICAgICAgIGVuYWJsZUFjY2VwdEVuY29kaW5nR3ppcDogdHJ1ZSxcbiAgICAgICAgY29tbWVudDogYE5leHRqcyBEeW5hbWljIENhY2hlIFBvbGljeSBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmR5bmFtaWNDYWNoZVBvbGljeVByb3BzLFxuICAgICAgfSk7XG4gICAgY29uc3QgcmVzcG9uc2VIZWFkZXJzUG9saWN5ID1cbiAgICAgIGR5bmFtaWNCZWhhdmlvck9wdGlvbnM/LnJlc3BvbnNlSGVhZGVyc1BvbGljeSA/P1xuICAgICAgbmV3IFJlc3BvbnNlSGVhZGVyc1BvbGljeSh0aGlzLCBcIkR5bmFtaWNSZXNwb25zZUhlYWRlcnNQb2xpY3lcIiwge1xuICAgICAgICBzZWN1cml0eUhlYWRlcnNCZWhhdmlvcjogdGhpcy5jb21tb25TZWN1cml0eUhlYWRlcnNCZWhhdmlvcixcbiAgICAgICAgY29tbWVudDogYE5leHRqcyBEeW5hbWljIFJlc3BvbnNlIEhlYWRlcnMgUG9saWN5IGZvciAke1N0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZX1gLFxuICAgICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8uZHluYW1pY0JlaGF2aW9yT3B0aW9ucz8ucmVzcG9uc2VIZWFkZXJzUG9saWN5LFxuICAgICAgfSk7XG4gICAgY29uc3QgYmVoYXZpb3JPcHRpb25zOiBCZWhhdmlvck9wdGlvbnMgPSB7XG4gICAgICBhbGxvd2VkTWV0aG9kczogQWxsb3dlZE1ldGhvZHMuQUxMT1dfQUxMLFxuICAgICAgY2FjaGVQb2xpY3ksXG4gICAgICBlZGdlTGFtYmRhczogdGhpcy5lZGdlTGFtYmRhcyxcbiAgICAgIGZ1bmN0aW9uQXNzb2NpYXRpb25zOiB0aGlzLmR5bmFtaWNDbG91ZEZyb250RnVuY3Rpb25Bc3NvY2lhdGlvbnMsXG4gICAgICBvcmlnaW46IHRoaXMuZHluYW1pY09yaWdpbixcbiAgICAgIG9yaWdpblJlcXVlc3RQb2xpY3k6IHRoaXMuZHluYW1pY09yaWdpblJlc3BvbnNlUG9saWN5LFxuICAgICAgcmVzcG9uc2VIZWFkZXJzUG9saWN5LFxuICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgLi4uZHluYW1pY0JlaGF2aW9yT3B0aW9ucyxcbiAgICB9O1xuICAgIHJldHVybiBiZWhhdmlvck9wdGlvbnM7XG4gIH1cbiAgcHJpdmF0ZSBjcmVhdGVJbWFnZUJlaGF2aW9yT3B0aW9ucygpOiBCZWhhdmlvck9wdGlvbnMge1xuICAgIGNvbnN0IGltYWdlQmVoYXZpb3JPcHRpb25zID0gdGhpcy5wcm9wcy5vdmVycmlkZXM/LmltYWdlQmVoYXZpb3JPcHRpb25zO1xuICAgIC8vIGFkZCBkZWZhdWx0IGNhY2hlIHBvbGljeSBpZiBub3QgcHJvdmlkZWRcbiAgICBjb25zdCBjYWNoZVBvbGljeSA9XG4gICAgICBpbWFnZUJlaGF2aW9yT3B0aW9ucz8uY2FjaGVQb2xpY3kgPz9cbiAgICAgIG5ldyBDYWNoZVBvbGljeSh0aGlzLCBcIkltYWdlQ2FjaGVQb2xpY3lcIiwge1xuICAgICAgICBxdWVyeVN0cmluZ0JlaGF2aW9yOiBDYWNoZVF1ZXJ5U3RyaW5nQmVoYXZpb3IuYWxsKCksXG4gICAgICAgIGhlYWRlckJlaGF2aW9yOiBDYWNoZUhlYWRlckJlaGF2aW9yLmFsbG93TGlzdChcImFjY2VwdFwiKSxcbiAgICAgICAgY29va2llQmVoYXZpb3I6IENhY2hlQ29va2llQmVoYXZpb3Iubm9uZSgpLFxuICAgICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0Jyb3RsaTogdHJ1ZSxcbiAgICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdHemlwOiB0cnVlLFxuICAgICAgICBjb21tZW50OiBgTmV4dGpzIEltYWdlIENhY2hlIFBvbGljeSBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmltYWdlQ2FjaGVQb2xpY3lQcm9wcyxcbiAgICAgIH0pO1xuICAgIC8vIGFkZCBkZWZhdWx0IHJlc3BvbnNlIGhlYWRlcnMgcG9saWN5IGlmIG5vdCBwcm92aWRlZFxuICAgIGNvbnN0IHJlc3BvbnNlSGVhZGVyc1BvbGljeSA9XG4gICAgICBpbWFnZUJlaGF2aW9yT3B0aW9ucz8ucmVzcG9uc2VIZWFkZXJzUG9saWN5ID8/XG4gICAgICBuZXcgUmVzcG9uc2VIZWFkZXJzUG9saWN5KHRoaXMsIFwiSW1hZ2VSZXNwb25zZUhlYWRlcnNQb2xpY3lcIiwge1xuICAgICAgICBzZWN1cml0eUhlYWRlcnNCZWhhdmlvcjogdGhpcy5jb21tb25TZWN1cml0eUhlYWRlcnNCZWhhdmlvcixcbiAgICAgICAgY29tbWVudDogYE5leHRqcyBJbWFnZSBSZXNwb25zZSBIZWFkZXJzIFBvbGljeSBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmltYWdlUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHMsXG4gICAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgYWxsb3dlZE1ldGhvZHM6IEFsbG93ZWRNZXRob2RzLkFMTE9XX0dFVF9IRUFEX09QVElPTlMsXG4gICAgICBjYWNoZWRNZXRob2RzOiBDYWNoZWRNZXRob2RzLkNBQ0hFX0dFVF9IRUFEX09QVElPTlMsXG4gICAgICBlZGdlTGFtYmRhczogdGhpcy5lZGdlTGFtYmRhcyxcbiAgICAgIGZ1bmN0aW9uQXNzb2NpYXRpb25zOiB0aGlzLmR5bmFtaWNDbG91ZEZyb250RnVuY3Rpb25Bc3NvY2lhdGlvbnMsXG4gICAgICBvcmlnaW46IHRoaXMuZHluYW1pY09yaWdpbixcbiAgICAgIG9yaWdpblJlcXVlc3RQb2xpY3k6IHRoaXMuZHluYW1pY09yaWdpblJlc3BvbnNlUG9saWN5LFxuICAgICAgY2FjaGVQb2xpY3ksXG4gICAgICByZXNwb25zZUhlYWRlcnNQb2xpY3ksXG4gICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAuLi5pbWFnZUJlaGF2aW9yT3B0aW9ucyxcbiAgICB9O1xuICB9XG4gIC8qKlxuICAgKiBDcmVhdGVzIG9yIHVzZXMgdXNlciBzcGVjaWZpZWQgQ2xvdWRGcm9udCBEaXN0cmlidXRpb25cbiAgICovXG4gIHByaXZhdGUgZ2V0RGlzdHJpYnV0aW9uKCk6IERpc3RyaWJ1dGlvbiB7XG4gICAgbGV0IGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICAgIGlmICh0aGlzLnByb3BzLmRpc3RyaWJ1dGlvbikge1xuICAgICAgZGlzdHJpYnV0aW9uID0gdGhpcy5wcm9wcy5kaXN0cmlidXRpb247XG4gICAgfSBlbHNlIHtcbiAgICAgIGRpc3RyaWJ1dGlvbiA9IG5ldyBEaXN0cmlidXRpb24odGhpcywgXCJEaXN0cmlidXRpb25cIiwge1xuICAgICAgICBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uOiBTZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMjEsXG4gICAgICAgIGRlZmF1bHRCZWhhdmlvcjogdGhpcy5keW5hbWljQmVoYXZpb3JPcHRpb25zLFxuICAgICAgICBodHRwVmVyc2lvbjogSHR0cFZlcnNpb24uSFRUUDIsIC8vIEhUVFAyX0FORF8zIGNhdXNlcyB0aW1lb3V0IGlzc3VlcyB3aXRoIExhbWJkYSBGdW5jdGlvbiBVUkxzIVxuICAgICAgICBjb21tZW50OiBgY2RrLW5leHRqcyBEaXN0cmlidXRpb24gZm9yICR7U3RhY2sub2YodGhpcykuc3RhY2tOYW1lfWAsXG4gICAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5kaXN0cmlidXRpb25Qcm9wcyxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gZGlzdHJpYnV0aW9uO1xuICB9XG4gIHByaXZhdGUgYWRkRHluYW1pY0JlaGF2aW9ycygpIHtcbiAgICAvLyBJbWFnZSBCZWhhdmlvclxuICAgIHRoaXMuZGlzdHJpYnV0aW9uLmFkZEJlaGF2aW9yKFxuICAgICAgdGhpcy5nZXRQYXRoUGF0dGVybihcIl9uZXh0L2ltYWdlKlwiKSxcbiAgICAgIHRoaXMuaW1hZ2VCZWhhdmlvck9wdGlvbnMub3JpZ2luLFxuICAgICAgdGhpcy5pbWFnZUJlaGF2aW9yT3B0aW9ucyxcbiAgICApO1xuICAgIC8vIFJvb3QgUGF0aCBCZWhhdmlvcnNcbiAgICBpZiAodGhpcy5wcm9wcy5iYXNlUGF0aCkge1xuICAgICAgLy8gYmVjYXVzZSB3ZSBhbHJlYWR5IGhhdmUgYSBiYXNlUGF0aCB3ZSBkb24ndCB1c2UgLyBpbnN0ZWFkIHdlIHVzZSAvYmFzZS1wYXRoXG4gICAgICB0aGlzLmRpc3RyaWJ1dGlvbi5hZGRCZWhhdmlvcihcbiAgICAgICAgdGhpcy5wcm9wcy5iYXNlUGF0aCxcbiAgICAgICAgdGhpcy5keW5hbWljQmVoYXZpb3JPcHRpb25zLm9yaWdpbixcbiAgICAgICAgdGhpcy5keW5hbWljQmVoYXZpb3JPcHRpb25zLFxuICAgICAgKTtcbiAgICAgIC8vIHdoZW4gYmFzZVBhdGggaXMgc2V0LCB3ZSBlbXVsYXRlIHRoZSBcImRlZmF1bHQgYmVoYXZpb3JcIiAoKikgZm9yIHRoZSBzaXRlIGFzIGAvYmFzZS1wYXRoLypgXG4gICAgICB0aGlzLmRpc3RyaWJ1dGlvbi5hZGRCZWhhdmlvcihcbiAgICAgICAgdGhpcy5nZXRQYXRoUGF0dGVybihcIipcIiksXG4gICAgICAgIHRoaXMuZHluYW1pY0JlaGF2aW9yT3B0aW9ucy5vcmlnaW4sXG4gICAgICAgIHRoaXMuZHluYW1pY0JlaGF2aW9yT3B0aW9ucyxcbiAgICAgICk7XG4gICAgfSBlbHNlIHtcbiAgICAgIC8vIGlmIG5vIGJhc2UgcGF0aCwgdGhlbiBkZWZhdWx0IGJlaGF2aW9yIHdpbGwgaGFuZGxlIGFsbCBvdGhlciBwYXRoc1xuICAgIH1cbiAgfVxuICBwcml2YXRlIGFkZFN0YXRpY0JlaGF2aW9ycygpIHtcbiAgICB0aGlzLmRpc3RyaWJ1dGlvbi5hZGRCZWhhdmlvcihcbiAgICAgIFwiX25leHQvc3RhdGljKlwiLFxuICAgICAgdGhpcy5zdGF0aWNPcmlnaW4sXG4gICAgICB0aGlzLnN0YXRpY0JlaGF2aW9yT3B0aW9ucyxcbiAgICApO1xuICAgIC8vIDIyID0gMjUgKG1heCkgLSAxIChfbmV4dC9pbWFnZSkgLSAxIChfbmV4dC9zdGF0aWMpIC0gMSAoKilcbiAgICBpZiAodGhpcy5wcm9wcy5wdWJsaWNEaXJFbnRyaWVzLmxlbmd0aCA+PSAyMikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgVG9vIG1hbnkgcHVibGljLyBmaWxlcyBpbiBOZXh0LmpzIGJ1aWxkLiBDbG91ZEZyb250IGxpbWl0cyBEaXN0cmlidXRpb25zIHRvIDI1IENhY2hlIEJlaGF2aW9ycy4gU2VlIGRvY3VtZW50ZWQgbGltaXQgaGVyZTogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkNsb3VkRnJvbnQvbGF0ZXN0L0RldmVsb3Blckd1aWRlL2Nsb3VkZnJvbnQtbGltaXRzLmh0bWwjbGltaXRzLXdlYi1kaXN0cmlidXRpb25zLiBUcnkgaW5jbHVkaW5nIGFsbCBwdWJsaWMgZmlsZXMgaW50byAxIHRvcCBsZXZlbCBkaXJlY3RvcnkgKGkuZS4gc3RhdGljLyopLmAsXG4gICAgICApO1xuICAgIH1cbiAgICBmb3IgKGNvbnN0IHB1YmxpY0ZpbGUgb2YgdGhpcy5wcm9wcy5wdWJsaWNEaXJFbnRyaWVzKSB7XG4gICAgICBjb25zdCBwYXRoUGF0dGVybiA9IHB1YmxpY0ZpbGUuaXNEaXJlY3RvcnlcbiAgICAgICAgPyBgJHtwdWJsaWNGaWxlLm5hbWV9LypgXG4gICAgICAgIDogcHVibGljRmlsZS5uYW1lO1xuICAgICAgaWYgKCEvXlthLXpBLVowLTlfXFwtLiokL35cIidAOis/Jl0rJC8udGVzdChwYXRoUGF0dGVybikpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBJbnZhbGlkIENsb3VkRnJvbnQgRGlzdHJpYnV0aW9uIENhY2hlIEJlaGF2aW9yIFBhdGggUGF0dGVybjogJHtwYXRoUGF0dGVybn0uIFBsZWFzZSBzZWUgZG9jdW1lbnRhdGlvbiBoZXJlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRGcm9udC9sYXRlc3QvRGV2ZWxvcGVyR3VpZGUvZGlzdHJpYnV0aW9uLXdlYi12YWx1ZXMtc3BlY2lmeS5odG1sI0Rvd25sb2FkRGlzdFZhbHVlc1BhdGhQYXR0ZXJuYCxcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICAgIGNvbnN0IGZpbmFsUGF0aFBhdHRlcm4gPSB0aGlzLmdldFBhdGhQYXR0ZXJuKHBhdGhQYXR0ZXJuKTtcbiAgICAgIHRoaXMuZGlzdHJpYnV0aW9uLmFkZEJlaGF2aW9yKFxuICAgICAgICBmaW5hbFBhdGhQYXR0ZXJuLFxuICAgICAgICB0aGlzLnN0YXRpY09yaWdpbixcbiAgICAgICAgdGhpcy5zdGF0aWNCZWhhdmlvck9wdGlvbnMsXG4gICAgICApO1xuICAgIH1cbiAgfVxuICAvKipcbiAgICogT3B0aW9uYWxseSBwcmVwZW5kcyBiYXNlIHBhdGggdG8gZ2l2ZW4gcGF0aCBwYXR0ZXJuLlxuICAgKi9cbiAgcHJpdmF0ZSBnZXRQYXRoUGF0dGVybihwYXRoUGF0dGVybjogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMucHJvcHMuYmFzZVBhdGgpIHtcbiAgICAgIHJldHVybiBgJHt0aGlzLnByb3BzLmJhc2VQYXRofS8ke3BhdGhQYXR0ZXJufWA7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBwYXRoUGF0dGVybjtcbiAgICB9XG4gIH1cbiAgLyoqXG4gICAqIEFkZCBPcmlnaW4gQWNjZXNzIENvbnRyb2wgKE9BQykgdG8gQ2xvdWRGcm9udCBEaXN0cmlidXRpb24gd2hpY2ggaXMgcHJlZmVycmVkXG4gICAqIHdheSB0byBzZWN1cmUgYWNjZXNzIGZyb20gRGlzdHJpYnV0aW9uIHRvIFMzLiBSZW1vdmUgbGVnYWN5IE9BSS5cbiAgICpcbiAgICogV2hlbiBDREsgcmVsZWFzZXMgTDIgc3VwcG9ydCBmb3IgdGhpcywgcGxlYXNlIHJlbW92ZSB0aGlzIGNvZGUuXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL2F3cy9hd3MtY2RrL2lzc3Vlcy8yMTc3MSNpc3N1ZWNvbW1lbnQtMTU2NzY0NzMzOFxuICAgKi9cbiAgcHJpdmF0ZSBhZGRTM09hY0FuZFJlbW92ZU9haSgpIHtcbiAgICBjb25zdCBzM09hYyA9IG5ldyBDZm5PcmlnaW5BY2Nlc3NDb250cm9sKHRoaXMsIFwiT0FDXCIsIHtcbiAgICAgIG9yaWdpbkFjY2Vzc0NvbnRyb2xDb25maWc6IHtcbiAgICAgICAgbmFtZTogYE9BQy1TMy0ke3RoaXMudW5pcXVlU3RhY2tJZFBhcnR9YCxcbiAgICAgICAgb3JpZ2luQWNjZXNzQ29udHJvbE9yaWdpblR5cGU6IFwiczNcIixcbiAgICAgICAgc2lnbmluZ0JlaGF2aW9yOiBcImFsd2F5c1wiLFxuICAgICAgICBzaWduaW5nUHJvdG9jb2w6IFwic2lndjRcIixcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgLy8gYWRkIE9BQyB0byBDbG91ZEZyb250IERpc3RyaWJ1dGlvblxuICAgIGNvbnN0IGNmbkRpc3RyaWJ1dGlvbiA9IHRoaXMuZGlzdHJpYnV0aW9uLm5vZGVcbiAgICAgIC5kZWZhdWx0Q2hpbGQgYXMgQ2ZuRGlzdHJpYnV0aW9uO1xuICAgIGNmbkRpc3RyaWJ1dGlvbi5hZGRPdmVycmlkZShcbiAgICAgIFwiUHJvcGVydGllcy5EaXN0cmlidXRpb25Db25maWcuT3JpZ2lucy4xLlMzT3JpZ2luQ29uZmlnLk9yaWdpbkFjY2Vzc0lkZW50aXR5XCIsXG4gICAgICBcIlwiLFxuICAgICk7XG4gICAgY2ZuRGlzdHJpYnV0aW9uLmFkZFByb3BlcnR5T3ZlcnJpZGUoXG4gICAgICBcIkRpc3RyaWJ1dGlvbkNvbmZpZy5PcmlnaW5zLjEuT3JpZ2luQWNjZXNzQ29udHJvbElkXCIsXG4gICAgICBzM09hYy5nZXRBdHQoXCJJZFwiKSxcbiAgICApO1xuXG4gICAgLy8gYWRkIElBTSBQb2xpY3kgU3RhdGVtZW50IHRvIGFsbG93IE9BQyBhY2Nlc3MgdG8gQnVja2V0XG4gICAgY29uc3Qgb2FjQnVja2V0U3RhdGVtZW50ID0gbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICBzaWQ6IFwiQWxsb3dTM09hY0FjY2Vzc1wiLFxuICAgICAgcHJpbmNpcGFsczogW25ldyBTZXJ2aWNlUHJpbmNpcGFsKFwiY2xvdWRmcm9udC5hbWF6b25hd3MuY29tXCIpXSxcbiAgICAgIGFjdGlvbnM6IFtcInMzOkdldE9iamVjdFwiXSxcbiAgICAgIHJlc291cmNlczogW3RoaXMucHJvcHMuYXNzZXRzQnVja2V0LmJ1Y2tldEFybiArIFwiLypcIl0sXG4gICAgICBjb25kaXRpb25zOiB7XG4gICAgICAgIFN0cmluZ0VxdWFsczoge1xuICAgICAgICAgIFwiYXdzOnNvdXJjZUFyblwiOiBTdGFjay5vZih0aGlzKS5mb3JtYXRBcm4oe1xuICAgICAgICAgICAgc2VydmljZTogXCJjbG91ZGZyb250XCIsXG4gICAgICAgICAgICByZWdpb246IFwiXCIsXG4gICAgICAgICAgICByZXNvdXJjZTogXCJkaXN0cmlidXRpb25cIixcbiAgICAgICAgICAgIHJlc291cmNlTmFtZTogdGhpcy5kaXN0cmlidXRpb24uZGlzdHJpYnV0aW9uSWQsXG4gICAgICAgICAgICBhcm5Gb3JtYXQ6IEFybkZvcm1hdC5TTEFTSF9SRVNPVVJDRV9OQU1FLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcbiAgICB0aGlzLnByb3BzLmFzc2V0c0J1Y2tldC5hZGRUb1Jlc291cmNlUG9saWN5KG9hY0J1Y2tldFN0YXRlbWVudCk7XG4gICAgLy8gUmVtb3ZlIE9BSSBJQU0gUG9saWN5IFN0YXRlbWVudCBmcm9tIEJ1Y2tldCBQb2xpY3lcbiAgICBjb25zdCBidWNrZXRQb2xpY3lKc29uID0gdGhpcy5wcm9wcy5hc3NldHNCdWNrZXQucG9saWN5Py5kb2N1bWVudC50b0pTT04oKTtcbiAgICBjb25zdCB1cGRhdGVkQnVja2V0UG9saWN5SnNvbiA9IHtcbiAgICAgIFZlcnNpb246IFwiMjAxMi0xMC0xN1wiLFxuICAgICAgU3RhdGVtZW50OiBbXSBhcyB1bmtub3duW10sXG4gICAgfTtcbiAgICBmb3IgKGNvbnN0IHN0YXRlbWVudCBvZiBidWNrZXRQb2xpY3lKc29uLlN0YXRlbWVudCkge1xuICAgICAgaWYgKCEoXCJDYW5vbmljYWxVc2VyXCIgaW4gc3RhdGVtZW50LlByaW5jaXBhbCkpIHtcbiAgICAgICAgdXBkYXRlZEJ1Y2tldFBvbGljeUpzb24uU3RhdGVtZW50LnB1c2goc3RhdGVtZW50KTtcbiAgICAgIH1cbiAgICB9XG4gICAgY29uc3QgYnVja2V0UG9saWN5ID0gdGhpcy5wcm9wcy5hc3NldHNCdWNrZXQubm9kZS5maW5kQ2hpbGQoXCJQb2xpY3lcIikubm9kZVxuICAgICAgLmRlZmF1bHRDaGlsZCBhcyBDZm5CdWNrZXRQb2xpY3k7XG4gICAgYnVja2V0UG9saWN5LmFkZE92ZXJyaWRlKFxuICAgICAgXCJQcm9wZXJ0aWVzLlBvbGljeURvY3VtZW50XCIsXG4gICAgICB1cGRhdGVkQnVja2V0UG9saWN5SnNvbixcbiAgICApO1xuXG4gICAgLy8gUmVtb3ZlIFMzIE9yaWdpbiBSZXNvdXJjZVxuICAgIGNvbnN0IGRpc3RyaWJ1dGlvbkNoaWxkcmVuID0gdGhpcy5kaXN0cmlidXRpb24ubm9kZS5maW5kQWxsKCk7XG4gICAgZm9yIChjb25zdCBjaGlsZCBvZiBkaXN0cmlidXRpb25DaGlsZHJlbikge1xuICAgICAgaWYgKGNoaWxkLm5vZGUuaWQgPT09IFwiUzNPcmlnaW5cIikge1xuICAgICAgICBjaGlsZC5ub2RlLnRyeVJlbW92ZUNoaWxkKFwiUmVzb3VyY2VcIik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVE9ETzogdXNlIHdoZW4gUE9TVCBib2R5IGVuY3J5cHRpb24gZmVhdHVyZSBpcyBhZGRlZCBmb3IgTGFtYmRhIE9BQ1xuICAvLyBwcml2YXRlIGFkZExhbWJkYU9hYygpIHtcbiAgLy8gICBjb25zdCBsYW1iZGFPYWMgPSBuZXcgQ2ZuT3JpZ2luQWNjZXNzQ29udHJvbCh0aGlzLCBcIk9BQ1wiLCB7XG4gIC8vICAgICBvcmlnaW5BY2Nlc3NDb250cm9sQ29uZmlnOiB7XG4gIC8vICAgICAgIG5hbWU6IGBPQUMtTGFtYmRhLSR7dGhpcy51bmlxdWVTdGFja0lkUGFydH1gLFxuICAvLyAgICAgICBvcmlnaW5BY2Nlc3NDb250cm9sT3JpZ2luVHlwZTogXCJsYW1iZGFcIixcbiAgLy8gICAgICAgc2lnbmluZ0JlaGF2aW9yOiBcImFsd2F5c1wiLFxuICAvLyAgICAgICBzaWduaW5nUHJvdG9jb2w6IFwic2lndjRcIixcbiAgLy8gICAgIH0sXG4gIC8vICAgfSk7XG4gIC8vICAgY29uc3QgY2ZuRGlzdHJpYnV0aW9uID0gdGhpcy5kaXN0cmlidXRpb24ubm9kZVxuICAvLyAgICAgLmRlZmF1bHRDaGlsZCBhcyBDZm5EaXN0cmlidXRpb247XG4gIC8vICAgY2ZuRGlzdHJpYnV0aW9uLmFkZFByb3BlcnR5T3ZlcnJpZGUoXG4gIC8vICAgICBcIkRpc3RyaWJ1dGlvbkNvbmZpZy5PcmlnaW5zLjAuT3JpZ2luQWNjZXNzQ29udHJvbElkXCIsXG4gIC8vICAgICBsYW1iZGFPYWMuZ2V0QXR0KFwiSWRcIiksXG4gIC8vICAgKTtcbiAgLy8gfVxufVxuIl19
326
+ NextjsDistribution[_a] = { fqn: "cdk-nextjs.NextjsDistribution", version: "0.0.4" };
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWRpc3RyaWJ1dGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uZXh0anMtZGlzdHJpYnV0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQTRFO0FBRTVFLCtEQTRCb0M7QUFDcEMsK0VBSTRDO0FBQzVDLGlEQUF3RTtBQUV4RSwyQ0FBdUM7QUFDdkMscUNBQXNDO0FBSXRDLHFGQUErRTtBQWtEL0UsTUFBYSxrQkFBbUIsU0FBUSxzQkFBUztJQXFDL0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBbENuQjs7O1dBR0c7UUFDSyxrQ0FBNkIsR0FBb0M7WUFDdkUsa0JBQWtCLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFO1lBQ3ZDLFlBQVksRUFBRTtnQkFDWixXQUFXLEVBQUUsbUNBQWtCLENBQUMsVUFBVTtnQkFDMUMsUUFBUSxFQUFFLEtBQUs7YUFDaEI7WUFDRCxjQUFjLEVBQUU7Z0JBQ2QsUUFBUSxFQUFFLEtBQUs7Z0JBQ2YsY0FBYyxFQUFFLHNDQUFxQixDQUFDLCtCQUErQjthQUN0RTtZQUVELHVCQUF1QixFQUFFO2dCQUN2QixtQkFBbUIsRUFBRSxzQkFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUM7Z0JBQ3ZDLGlCQUFpQixFQUFFLElBQUk7Z0JBQ3ZCLFFBQVEsRUFBRSxLQUFLO2dCQUNmLE9BQU8sRUFBRSxJQUFJO2FBQ2Q7WUFDRCxhQUFhLEVBQUUsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRTtTQUN0RSxDQUFDO1FBYUEsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUM5QyxJQUFJLENBQUMsaUJB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LENBQUMsSUFBSSxDQUFDO1lBQ3BCLElBQUksQ0FBQywrQkFBK0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsQ0FBQztnQkFDdkQsTUFBTSxJQUFJLEtBQUssQ0FDYixnRUFBZ0UsV0FBVyx3S0FBd0ssQ0FDcFAsQ0FBQztZQUNKLENBQUM7WUFDRCxNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDMUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQzNCLGdCQUFnQixFQUNoQixJQUFJLENBQUMsWUFBWSxFQUNqQixJQUFJLENBQUMscUJBQXFCLENBQzNCLENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUNEOztPQUVHO0lBQ0ssY0FBYyxDQUFDLFdBQW1CO1FBQ3hDLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN4QixPQUFPLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLElBQUksV0FBVyxFQUFFLENBQUM7UUFDakQsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLFdBQVcsQ0FBQztRQUNyQixDQUFDO0lBQ0gsQ0FBQzs7QUExV0gsZ0RBMldDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2ZuT3V0cHV0LCBEdXJhdGlvbiwgRm4sIFJlbW92YWxQb2xpY3ksIFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBJQ2VydGlmaWNhdGUgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNlcnRpZmljYXRlbWFuYWdlclwiO1xuaW1wb3J0IHtcbiAgQWRkQmVoYXZpb3JPcHRpb25zLFxuICBBbGxvd2VkTWV0aG9kcyxcbiAgQmVoYXZpb3JPcHRpb25zLFxuICBDYWNoZUNvb2tpZUJlaGF2aW9yLFxuICBDYWNoZUhlYWRlckJlaGF2aW9yLFxuICBDYWNoZVBvbGljeSxcbiAgQ2FjaGVQb2xpY3lQcm9wcyxcbiAgQ2FjaGVRdWVyeVN0cmluZ0JlaGF2aW9yLFxuICBDYWNoZWRNZXRob2RzLFxuICBGdW5jdGlvbiBhcyBDbG91ZEZyb250RnVuY3Rpb24sXG4gIERpc3RyaWJ1dGlvbixcbiAgRnVuY3Rpb25Bc3NvY2lhdGlvbixcbiAgRnVuY3Rpb25Db2RlLFxuICBGdW5jdGlvbkV2ZW50VHlwZSxcbiAgSGVhZGVyc0ZyYW1lT3B0aW9uLFxuICBIZWFkZXJzUmVmZXJyZXJQb2xpY3ksXG4gIEh0dHBWZXJzaW9uLFxuICBJT3JpZ2luLFxuICBJT3JpZ2luUmVxdWVzdFBvbGljeSxcbiAgTGFtYmRhRWRnZUV2ZW50VHlwZSxcbiAgT3JpZ2luUHJvdG9jb2xQb2xpY3ksXG4gIE9yaWdpblJlcXVlc3RQb2xpY3ksXG4gIFJlc3BvbnNlSGVhZGVyc1BvbGljeSxcbiAgUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHMsXG4gIFJlc3BvbnNlU2VjdXJpdHlIZWFkZXJzQmVoYXZpb3IsXG4gIFNlY3VyaXR5UG9saWN5UHJvdG9jb2wsXG4gIFZpZXdlclByb3RvY29sUG9saWN5LFxufSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWNsb3VkZnJvbnRcIjtcbmltcG9ydCB7XG4gIEh0dHBPcmlnaW4sXG4gIEh0dHBPcmlnaW5Qcm9wcyxcbiAgUzNCdWNrZXRPcmlnaW4sXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtY2xvdWRmcm9udC1vcmlnaW5zXCI7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQsIFNlcnZpY2VQcmluY2lwYWwgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuaW1wb3J0IHsgSUJ1Y2tldCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBOZXh0anNUeXBlIH0gZnJvbSBcIi4vY29tbW9uXCI7XG5pbXBvcnQgeyBPcHRpb25hbERpc3RyaWJ1dGlvblByb3BzIH0gZnJvbSBcIi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxEaXN0cmlidXRpb25Qcm9wc1wiO1xuaW1wb3J0IHsgT3B0aW9uYWxGdW5jdGlvblByb3BzIH0gZnJvbSBcIi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxGdW5jdGlvblByb3BzXCI7XG5pbXBvcnQgeyBPcHRpb25hbFMzT3JpZ2luQnVja2V0V2l0aE9BQ1Byb3BzIH0gZnJvbSBcIi4vZ2VuZXJhdGVkLXN0cnVjdHMvT3B0aW9uYWxTM09yaWdpbkJ1Y2tldFdpdGhPQUNQcm9wc1wiO1xuaW1wb3J0IHsgU2lnbkZuVXJsRnVuY3Rpb24gfSBmcm9tIFwiLi9sYW1iZGFzL3NpZ24tZm4tdXJsL3NpZ24tZm4tdXJsLWZ1bmN0aW9uXCI7XG5pbXBvcnQgeyBQdWJsaWNEaXJFbnRyeSB9IGZyb20gXCIuL25leHRqcy1idWlsZC9uZXh0anMtYnVpbGRcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNEaXN0cmlidXRpb25PdmVycmlkZXMge1xuICByZWFkb25seSBlZGdlRnVuY3Rpb25Qcm9wcz86IE9wdGlvbmFsRnVuY3Rpb25Qcm9wcztcbiAgcmVhZG9ubHkgZGlzdHJpYnV0aW9uUHJvcHM/OiBPcHRpb25hbERpc3RyaWJ1dGlvblByb3BzO1xuICByZWFkb25seSBpbWFnZUJlaGF2aW9yT3B0aW9ucz86IEFkZEJlaGF2aW9yT3B0aW9ucztcbiAgcmVhZG9ubHkgaW1hZ2VDYWNoZVBvbGljeVByb3BzPzogQ2FjaGVQb2xpY3lQcm9wcztcbiAgcmVhZG9ubHkgaW1hZ2VSZXNwb25zZUhlYWRlcnNQb2xpY3lQcm9wcz86IFJlc3BvbnNlSGVhZGVyc1BvbGljeVByb3BzO1xuICByZWFkb25seSBkeW5hbWljQmVoYXZpb3JPcHRpb25zPzogQWRkQmVoYXZpb3JPcHRpb25zO1xuICByZWFkb25seSBkeW5hbWljQ2FjaGVQb2xpY3lQcm9wcz86IENhY2hlUG9saWN5UHJvcHM7XG4gIHJlYWRvbmx5IGR5bmFtaWNSZXNwb25zZUhlYWRlcnNQb2xpY3lQcm9wcz86IFJlc3BvbnNlSGVhZGVyc1BvbGljeVByb3BzO1xuICByZWFkb25seSBkeW5hbWljSHR0cE9yaWdpblByb3BzPzogSHR0cE9yaWdpblByb3BzO1xuICByZWFkb25seSBzdGF0aWNCZWhhdmlvck9wdGlvbnM/OiBBZGRCZWhhdmlvck9wdGlvbnM7XG4gIHJlYWRvbmx5IHN0YXRpY1Jlc3BvbnNlSGVhZGVyc1BvbGljeVByb3BzPzogUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHM7XG4gIHJlYWRvbmx5IHMzQnVja2V0T3JpZ2luUHJvcHM/OiBPcHRpb25hbFMzT3JpZ2luQnVja2V0V2l0aE9BQ1Byb3BzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc0Rpc3RyaWJ1dGlvblByb3BzIHtcbiAgLyoqXG4gICAqIEJ1Y2tldCBjb250YWluaW5nIHN0YXRpYyBhc3NldHMuXG4gICAqIE11c3QgYmUgcHJvdmlkZWQgaWYgeW91IHdhbnQgdG8gc2VydmUgc3RhdGljIGZpbGVzLlxuICAgKi9cbiAgcmVhZG9ubHkgYXNzZXRzQnVja2V0OiBJQnVja2V0O1xuICByZWFkb25seSBiYXNlUGF0aD86IHN0cmluZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIGJ1dCBvbmx5IGFwcGxpY2FibGUgZm9yIGBOZXh0anNUeXBlLkdMT0JBTF9DT05UQUlORVJTYFxuICAgKi9cbiAgcmVhZG9ubHkgY2VydGlmaWNhdGU/OiBJQ2VydGlmaWNhdGU7XG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbj86IERpc3RyaWJ1dGlvbjtcbiAgLyoqXG4gICAqIER5bmFtaWMgKE5leHQuanMgc2VydmVyKSBVUkwgdG8gYWRkIGJlaGF2aW9yIHRvIGRpc3RyaWJ1dGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZHluYW1pY1VybDogc3RyaW5nO1xuICAvKipcbiAgICogUmVxdWlyZWQgaWYgYE5leHRqc1R5cGUuR0xPQkFMX0ZVTkNUSU9OU2BcbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uQXJuPzogc3RyaW5nO1xuICByZWFkb25seSBuZXh0anNUeXBlOiBOZXh0anNUeXBlO1xuICAvKipcbiAgICogT3ZlcnJpZGUgcHJvcHMgZm9yIGV2ZXJ5IGNvbnN0cnVjdC5cbiAgICovXG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc0Rpc3RyaWJ1dGlvbk92ZXJyaWRlcztcbiAgLyoqXG4gICAqIFBhdGggdG8gZGlyZWN0b3J5IG9mIE5leHQuanMgYXBwJ3MgcHVibGljIGRpcmVjdG9yeS4gVXNlZCB0byBhZGQgc3RhdGljXG4gICAqIGJlaGF2aW9ycyB0byBkaXN0cmlidXRpb24uXG4gICAqL1xuICByZWFkb25seSBwdWJsaWNEaXJFbnRyaWVzOiBQdWJsaWNEaXJFbnRyeVtdO1xufVxuXG5leHBvcnQgY2xhc3MgTmV4dGpzRGlzdHJpYnV0aW9uIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgZGlzdHJpYnV0aW9uOiBEaXN0cmlidXRpb247XG5cbiAgcHJpdmF0ZSBwcm9wczogTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHM7XG4gIC8qKlxuICAgKiBDb21tb24gc2VjdXJpdHkgaGVhZGVycyBhcHBsaWVkIGJ5IGRlZmF1bHQgdG8gYWxsIG9yaWdpbnNcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRGcm9udC9sYXRlc3QvRGV2ZWxvcGVyR3VpZGUvdXNpbmctbWFuYWdlZC1yZXNwb25zZS1oZWFkZXJzLXBvbGljaWVzLmh0bWwjbWFuYWdlZC1yZXNwb25zZS1oZWFkZXJzLXBvbGljaWVzLXNlY3VyaXR5XG4gICAqL1xuICBwcml2YXRlIGNvbW1vblNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yOiBSZXNwb25zZVNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yID0ge1xuICAgIGNvbnRlbnRUeXBlT3B0aW9uczogeyBvdmVycmlkZTogZmFsc2UgfSxcbiAgICBmcmFtZU9wdGlvbnM6IHtcbiAgICAgIGZyYW1lT3B0aW9uOiBIZWFkZXJzRnJhbWVPcHRpb24uU0FNRU9SSUdJTixcbiAgICAgIG92ZXJyaWRlOiBmYWxzZSxcbiAgICB9LFxuICAgIHJlZmVycmVyUG9saWN5OiB7XG4gICAgICBvdmVycmlkZTogZmFsc2UsXG4gICAgICByZWZlcnJlclBvbGljeTogSGVhZGVyc1JlZmVycmVyUG9saWN5LlNUUklDVF9PUklHSU5fV0hFTl9DUk9TU19PUklHSU4sXG4gICAgfSxcblxuICAgIHN0cmljdFRyYW5zcG9ydFNlY3VyaXR5OiB7XG4gICAgICBhY2Nlc3NDb250cm9sTWF4QWdlOiBEdXJhdGlvbi5kYXlzKDM2NSksXG4gICAgICBpbmNsdWRlU3ViZG9tYWluczogdHJ1ZSxcbiAgICAgIG92ZXJyaWRlOiBmYWxzZSxcbiAgICAgIHByZWxvYWQ6IHRydWUsXG4gICAgfSxcbiAgICB4c3NQcm90ZWN0aW9uOiB7IG92ZXJyaWRlOiBmYWxzZSwgcHJvdGVjdGlvbjogdHJ1ZSwgbW9kZUJsb2NrOiB0cnVlIH0sXG4gIH07XG4gIHByaXZhdGUgc3RhdGljT3JpZ2luOiBJT3JpZ2luO1xuICBwcml2YXRlIGR5bmFtaWNPcmlnaW46IElPcmlnaW47XG4gIHByaXZhdGUgZHluYW1pY09yaWdpblJlc3BvbnNlUG9saWN5OiBJT3JpZ2luUmVxdWVzdFBvbGljeTtcbiAgcHJpdmF0ZSBkeW5hbWljQ2xvdWRGcm9udEZ1bmN0aW9uQXNzb2NpYXRpb25zOiBGdW5jdGlvbkFzc29jaWF0aW9uW107XG4gIHByaXZhdGUgZWRnZUxhbWJkYXM/OiBBZGRCZWhhdmlvck9wdGlvbnNbXCJlZGdlTGFtYmRhc1wiXTtcbiAgcHJpdmF0ZSBpc0Z1bmN0aW9uQ29tcHV0ZTogYm9vbGVhbjtcbiAgcHJpdmF0ZSBzdGF0aWNCZWhhdmlvck9wdGlvbnM6IEJlaGF2aW9yT3B0aW9ucztcbiAgcHJpdmF0ZSBkeW5hbWljQmVoYXZpb3JPcHRpb25zOiBCZWhhdmlvck9wdGlvbnM7XG4gIHByaXZhdGUgaW1hZ2VCZWhhdmlvck9wdGlvbnM6IEJlaGF2aW9yT3B0aW9ucztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzRGlzdHJpYnV0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgICB0aGlzLnN0YXRpY09yaWdpbiA9IHRoaXMuY3JlYXRlU3RhdGljT3JpZ2luKCk7XG4gICAgdGhpcy5pc0Z1bmN0aW9uQ29tcHV0ZSA9IHByb3BzLm5leHRqc1R5cGUgPT09IE5leHRqc1R5cGUuR0xPQkFMX0ZVTkNUSU9OUztcbiAgICB0aGlzLmR5bmFtaWNPcmlnaW4gPSB0aGlzLmNyZWF0ZUR5bmFtaWNPcmlnaW4oKTtcbiAgICB0aGlzLmR5bmFtaWNPcmlnaW5SZXNwb25zZVBvbGljeSA9IHRoaXMuY3JlYXRlRHluYW1pY09yaWdpblJlcXVlc3RQb2xpY3koKTtcbiAgICB0aGlzLmR5bmFtaWNDbG91ZEZyb250RnVuY3Rpb25Bc3NvY2lhdGlvbnMgPVxuICAgICAgdGhpcy5jcmVhdGVEeW5hbWljQ2xvdWRGcm9udEZ1bmN0aW9uQXNzb2NpYXRpb25zKCk7XG4gICAgaWYgKHRoaXMuaXNGdW5jdGlvbkNvbXB1dGUpIHtcbiAgICAgIHRoaXMuZWRnZUxhbWJkYXMgPSB0aGlzLmNyZWF0ZUVkZ2VMYW1iZGFzKCk7XG4gICAgfVxuICAgIHRoaXMuc3RhdGljQmVoYXZpb3JPcHRpb25zID0gdGhpcy5jcmVhdGVTdGF0aWNCZWhhdmlvck9wdGlvbnMoKTtcbiAgICB0aGlzLmR5bmFtaWNCZWhhdmlvck9wdGlvbnMgPSB0aGlzLmNyZWF0ZUR5bmFtaWNCZWhhdmlvck9wdGlvbnMoKTtcbiAgICB0aGlzLmltYWdlQmVoYXZpb3JPcHRpb25zID0gdGhpcy5jcmVhdGVJbWFnZUJlaGF2aW9yT3B0aW9ucygpO1xuICAgIHRoaXMuZGlzdHJpYnV0aW9uID0gdGhpcy5nZXREaXN0cmlidXRpb24oKTtcbiAgICB0aGlzLmFkZFN0YXRpY0JlaGF2aW9ycygpO1xuICAgIHRoaXMuYWRkRHluYW1pY0JlaGF2aW9ycygpO1xuICAgIGlmICh0aGlzLmlzRnVuY3Rpb25Db21wdXRlKSB7XG4gICAgICAvLyB0aGlzLmFkZExhbWJkYU9hYygpOyAvLyBUT0RPOiB3YWl0IGZvciBQT1NUIGJvZHkgZW5jcnlwdGlvbiBmZWF0dXJlIGZvciBMYW1iZGEgT0FDXG4gICAgfVxuICAgIG5ldyBDZm5PdXRwdXQodGhpcywgXCJEaXN0cmlidXRpb25Eb21haW5OYW1lXCIsIHtcbiAgICAgIHZhbHVlOiB0aGlzLmRpc3RyaWJ1dGlvbi5kb21haW5OYW1lLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVTdGF0aWNPcmlnaW4oKTogSU9yaWdpbiB7XG4gICAgY29uc3QgczNPcmlnaW4gPSBTM0J1Y2tldE9yaWdpbi53aXRoT3JpZ2luQWNjZXNzQ29udHJvbChcbiAgICAgIHRoaXMucHJvcHMuYXNzZXRzQnVja2V0LFxuICAgICAgdGhpcy5wcm9wcy5vdmVycmlkZXM/LnMzQnVja2V0T3JpZ2luUHJvcHMsXG4gICAgKTtcbiAgICByZXR1cm4gczNPcmlnaW47XG4gIH1cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljT3JpZ2luKCk6IEh0dHBPcmlnaW4ge1xuICAgIGxldCBwcm90b2NvbFBvbGljeTogT3JpZ2luUHJvdG9jb2xQb2xpY3k7XG4gICAgaWYgKHRoaXMuaXNGdW5jdGlvbkNvbXB1dGUpIHtcbiAgICAgIHByb3RvY29sUG9saWN5ID0gT3JpZ2luUHJvdG9jb2xQb2xpY3kuSFRUUFNfT05MWTtcbiAgICB9IGVsc2Uge1xuICAgICAgcHJvdG9jb2xQb2xpY3kgPSB0aGlzLnByb3BzLmNlcnRpZmljYXRlXG4gICAgICAgID8gT3JpZ2luUHJvdG9jb2xQb2xpY3kuSFRUUFNfT05MWVxuICAgICAgICA6IE9yaWdpblByb3RvY29sUG9saWN5LkhUVFBfT05MWTtcbiAgICB9XG4gICAgLy8gV0FJVElORyBGT1IgQ0xPVURGUk9OVCBGRUFUVVJFOiBDbG91ZEZyb250IExhbWJkYSBGdW5jdGlvbiBVUkwgT0FDXG4gICAgLy8gZG9lc24ndCBzdXBwb3J0IFBPU1Qgd2l0aCBib2R5IHNpbmNlIENsb3VkRnJvbnQgZG9lc24ndCBpbmNsdWRlIHNoYTI1NlxuICAgIC8vIGhhc2ggb2YgYm9keS4gc2VlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRGcm9udC9sYXRlc3QvRGV2ZWxvcGVyR3VpZGUvcHJpdmF0ZS1jb250ZW50LXJlc3RyaWN0aW5nLWFjY2Vzcy10by1sYW1iZGEuaHRtbFxuICAgIC8vIFdlIGNvdWxkIG1vbmtleSBwYXRjaCBgZmV0Y2hgIHRvIGluY2x1ZGUgc2hhMjU2IGluIHJlcXVlc3QgZm9yIHNlcnZlclxuICAgIC8vIGFjdGlvbnMsIGJ1dCBiZXR0ZXIgc29sdXRpb24gaXMgZm9yIGNsb3VkZnJvbnQgdG8gc3VwcG9ydCBpdFxuICAgIC8vXG4gICAgLy8gVE9ETzogdXNlIEwyIGNvbnN0cnVjdCB3aGVuIHJlbGVhc2VkOiBodHRwczovL2dpdGh1Yi5jb20vYXdzL2F3cy1jZGsvaXNzdWVzLzMxNjI5XG4gICAgLyoqXG4gICAgICogR2l2ZW4gc3RhY2sgaWQ6IFwiYXJuOmF3czpjbG91ZGZvcm1hdGlvbjp1cy1lYXN0LTE6OTA1NDE4MzU4OTAzOnN0YWNrL2xoLXN0aWNrYi1pZHAvNGJmNzRiZTAtZTg4MC0xMWVlLWFlYTktMGFmZmM2MTg1YjI1XCIsXG4gICAgICogcmV0dXJucyBcIjRiZjc0YmUwXCJcbiAgICAgKi9cbiAgICAvLyBjb25zdCB1bmlxdWVTdGFja0lkUGFydCA9IEZuLnNlbGVjdChcbiAgICAvLyAgIDAsXG4gICAgLy8gICBGbi5zcGxpdChcIi1cIiwgRm4uc2VsZWN0KDIsIEZuLnNwbGl0KFwiL1wiLCBgJHtBd3MuU1RBQ0tfSUR9YCkpKSxcbiAgICAvLyApO1xuICAgIC8vIGNvbnN0IGxhbWJkYU9hYyA9IG5ldyBDZm5PcmlnaW5BY2Nlc3NDb250cm9sKHRoaXMsIFwiT0FDXCIsIHtcbiAgICAvLyAgIG9yaWdpbkFjY2Vzc0NvbnRyb2xDb25maWc6IHtcbiAgICAvLyAgICAgbmFtZTogYE9BQy1MYW1iZGEtJHt1bmlxdWVTdGFja0lkUGFydH1gLFxuICAgIC8vICAgICBvcmlnaW5BY2Nlc3NDb250cm9sT3JpZ2luVHlwZTogXCJsYW1iZGFcIixcbiAgICAvLyAgICAgc2lnbmluZ0JlaGF2aW9yOiBcImFsd2F5c1wiLFxuICAgIC8vICAgICBzaWduaW5nUHJvdG9jb2w6IFwic2lndjRcIixcbiAgICAvLyAgIH0sXG4gICAgLy8gfSk7XG4gICAgLy8gY29uc3QgY2ZuRGlzdHJpYnV0aW9uID0gdGhpcy5kaXN0cmlidXRpb24ubm9kZVxuICAgIC8vICAgLmRlZmF1bHRDaGlsZCBhcyBDZm5EaXN0cmlidXRpb247XG4gICAgLy8gY2ZuRGlzdHJpYnV0aW9uLmFkZFByb3BlcnR5T3ZlcnJpZGUoXG4gICAgLy8gICBcIkRpc3RyaWJ1dGlvbkNvbmZpZy5PcmlnaW5zLjAuT3JpZ2luQWNjZXNzQ29udHJvbElkXCIsXG4gICAgLy8gICBsYW1iZGFPYWMuZ2V0QXR0KFwiSWRcIiksXG4gICAgLy8gKTtcbiAgICByZXR1cm4gbmV3IEh0dHBPcmlnaW4oRm4ucGFyc2VEb21haW5OYW1lKHRoaXMucHJvcHMuZHluYW1pY1VybCksIHtcbiAgICAgIHByb3RvY29sUG9saWN5LFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmR5bmFtaWNIdHRwT3JpZ2luUHJvcHMsXG4gICAgfSk7XG4gIH1cbiAgLyoqXG4gICAqIExhbWJkYSBGdW5jdGlvbiBVUkxzIFwiZXhwZWN0IHRoZSBgSG9zdGAgaGVhZGVyIHRvIGNvbnRhaW4gdGhlIG9yaWdpbiBkb21haW5cbiAgICogbmFtZSwgbm90IHRoZSBkb21haW4gbmFtZSBvZiB0aGUgQ2xvdWRGcm9udCBkaXN0cmlidXRpb24uXCJcbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRGcm9udC9sYXRlc3QvRGV2ZWxvcGVyR3VpZGUvdXNpbmctbWFuYWdlZC1vcmlnaW4tcmVxdWVzdC1wb2xpY2llcy5odG1sI21hbmFnZWQtb3JpZ2luLXJlcXVlc3QtcG9saWN5LWFsbC12aWV3ZXItZXhjZXB0LWhvc3QtaGVhZGVyXG4gICAqL1xuICBwcml2YXRlIGNyZWF0ZUR5bmFtaWNPcmlnaW5SZXF1ZXN0UG9saWN5KCk6IElPcmlnaW5SZXF1ZXN0UG9saWN5IHtcbiAgICByZXR1cm4gdGhpcy5pc0Z1bmN0aW9uQ29tcHV0ZVxuICAgICAgPyBPcmlnaW5SZXF1ZXN0UG9saWN5LkFMTF9WSUVXRVJfRVhDRVBUX0hPU1RfSEVBREVSXG4gICAgICA6IE9yaWdpblJlcXVlc3RQb2xpY3kuQUxMX1ZJRVdFUjtcbiAgfVxuICAvKipcbiAgICogRW5zdXJlcyBOZXh0LmpzIGByZXF1ZXN0LnVybGAgd2lsbCBiZSBjb3JyZWN0IGRvbWFpbiBpbnN0ZWFkIG9mIFVSTCBvZlxuICAgKiBjb21wdXRlIG9wdGlvbiAoQXBwIFJ1bm5lciwgRmFyZ2F0ZSwgb3IgTGFtYmRhKVxuICAgKiBAc2VlIGh0dHBzOi8vb3Blbi1uZXh0LmpzLm9yZy9hZHZhbmNlZC93b3JrYXJvdW5kI3dvcmthcm91bmQtc2V0LXgtZm9yd2FyZGVkLWhvc3QtaGVhZGVyLWF3cy1zcGVjaWZpY1xuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljQ2xvdWRGcm9udEZ1bmN0aW9uQXNzb2NpYXRpb25zKCk6IEZ1bmN0aW9uQXNzb2NpYXRpb25bXSB7XG4gICAgY29uc3QgYXNzb2NpYXRpb25zOiBGdW5jdGlvbkFzc29jaWF0aW9uW10gPSBbXTtcbiAgICBpZiAodGhpcy5pc0Z1bmN0aW9uQ29tcHV0ZSkge1xuICAgICAgY29uc3QgY2xvdWRGcm9udEZuID0gbmV3IENsb3VkRnJvbnRGdW5jdGlvbih0aGlzLCBcIkNsb3VkRnJvbnRGblwiLCB7XG4gICAgICAgIGNvZGU6IEZ1bmN0aW9uQ29kZS5mcm9tSW5saW5lKGBcbiAgICAgICAgICBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50KSB7XG4gICAgICAgICAgICB2YXIgcmVxdWVzdCA9IGV2ZW50LnJlcXVlc3Q7XG4gICAgICAgICAgICByZXF1ZXN0LmhlYWRlcnNbXCJ4LWZvcndhcmRlZC1ob3N0XCJdID0gcmVxdWVzdC5oZWFkZXJzLmhvc3Q7XG4gICAgICAgICAgICByZXR1cm4gcmVxdWVzdDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYCksXG4gICAgICB9KTtcbiAgICAgIGFzc29jaWF0aW9ucy5wdXNoKHtcbiAgICAgICAgZXZlbnRUeXBlOiBGdW5jdGlvbkV2ZW50VHlwZS5WSUVXRVJfUkVRVUVTVCxcbiAgICAgICAgZnVuY3Rpb246IGNsb3VkRnJvbnRGbixcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gYXNzb2NpYXRpb25zO1xuICB9XG4gIC8qKlxuICAgKiBSZXF1aXJlZCB0byBzaWduIHJlcXVlc3RzIHNvIHRoYXQgd2UgY2FuIHVzZSBJQU1fQVVUSCBmb3IgTGFtYmRhIEZ1bmN0aW9uIFVSTFxuICAgKiB0byBwcmV2ZW50IHB1YmxpYyBhY2Nlc3MuIE9uY2UgQ2xvdWRGcm9udCBMYW1iZGEgT0FDIGlzIHJlbGVhc2VkLCB3ZSBjYW5cbiAgICogdXNlIGluZnJhIGNvbmZpZ3VyYXRpb24gZm9yIHRoaXMgaW5zdGVhZCBvZiBjdXN0b20gY29kZS5cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlRWRnZUxhbWJkYXMoKTogQWRkQmVoYXZpb3JPcHRpb25zW1wiZWRnZUxhbWJkYXNcIl0ge1xuICAgIGlmICghdGhpcy5wcm9wcy5mdW5jdGlvbkFybikgdGhyb3cgbmV3IEVycm9yKFwiZnVuY3Rpb25Bcm4gaXMgcmVxdWlyZWRcIik7XG4gICAgY29uc3QgZWRnZUZuID0gbmV3IFNpZ25GblVybEZ1bmN0aW9uKHRoaXMsIFwiU2lnbkZuVXJsXCIsIHtcbiAgICAgIGN1cnJlbnRWZXJzaW9uT3B0aW9uczoge1xuICAgICAgICByZXRyeUF0dGVtcHRzOiAwLCAvLyBmYWlsIGZhc3Qgd2hlbiB0cnlpbmcgdG8gZGVsZXRlIGIvYyByZXBsaWNhdGVkIGZ1bmN0aW9ucyB0YWtlIGxvbmcgdGltZSB0byBkZWxldGVcbiAgICAgIH0sXG4gICAgICBpbml0aWFsUG9saWN5OiBbXG4gICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgIGFjdGlvbnM6IFtcImxhbWJkYTpJbnZva2VGdW5jdGlvblVybFwiXSxcbiAgICAgICAgICByZXNvdXJjZXM6IFt0aGlzLnByb3BzLmZ1bmN0aW9uQXJuXSxcbiAgICAgICAgfSksXG4gICAgICBdLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmVkZ2VGdW5jdGlvblByb3BzLFxuICAgIH0pO1xuICAgIGVkZ2VGbi5jdXJyZW50VmVyc2lvbi5ncmFudEludm9rZShcbiAgICAgIG5ldyBTZXJ2aWNlUHJpbmNpcGFsKFwiZWRnZWxhbWJkYS5hbWF6b25hd3MuY29tXCIpLFxuICAgICk7XG4gICAgZWRnZUZuLmN1cnJlbnRWZXJzaW9uLmdyYW50SW52b2tlKFxuICAgICAgbmV3IFNlcnZpY2VQcmluY2lwYWwoXCJsYW1iZGEuYW1hem9uYXdzLmNvbVwiKSxcbiAgICApO1xuICAgIC8vIHJldGFpbiBvbiBkZWxldGUgYi9jIHRoZXkgdGFrZSB0b28gbG9uZyB0byBkZWxldGUgcmVzdWx0aW5nIGluIHN0YWNrIGZhaWx1cmVcbiAgICBlZGdlRm4uYXBwbHlSZW1vdmFsUG9saWN5KFJlbW92YWxQb2xpY3kuUkVUQUlOKTtcbiAgICByZXR1cm4gW1xuICAgICAge1xuICAgICAgICBldmVudFR5cGU6IExhbWJkYUVkZ2VFdmVudFR5cGUuT1JJR0lOX1JFUVVFU1QsXG4gICAgICAgIGZ1bmN0aW9uVmVyc2lvbjogZWRnZUZuLmN1cnJlbnRWZXJzaW9uLFxuICAgICAgICBpbmNsdWRlQm9keTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgXTtcbiAgfVxuICBwcml2YXRlIGNyZWF0ZVN0YXRpY0JlaGF2aW9yT3B0aW9ucygpOiBCZWhhdmlvck9wdGlvbnMge1xuICAgIGNvbnN0IHN0YXRpY0JlaGF2aW9yT3B0aW9ucyA9IHRoaXMucHJvcHMub3ZlcnJpZGVzPy5zdGF0aWNCZWhhdmlvck9wdGlvbnM7XG4gICAgY29uc3QgcmVzcG9uc2VIZWFkZXJzUG9saWN5ID1cbiAgICAgIHN0YXRpY0JlaGF2aW9yT3B0aW9ucz8ucmVzcG9uc2VIZWFkZXJzUG9saWN5ID8/XG4gICAgICBuZXcgUmVzcG9uc2VIZWFkZXJzUG9saWN5KHRoaXMsIFwiU3RhdGljUmVzcG9uc2VIZWFkZXJzUG9saWN5XCIsIHtcbiAgICAgICAgc2VjdXJpdHlIZWFkZXJzQmVoYXZpb3I6IHRoaXMuY29tbW9uU2VjdXJpdHlIZWFkZXJzQmVoYXZpb3IsXG4gICAgICAgIGNvbW1lbnQ6IGBOZXh0anMgU3RhdGljIFJlc3BvbnNlIEhlYWRlcnMgUG9saWN5IGZvciAke1N0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZX1gLFxuICAgICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8uc3RhdGljUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHMsXG4gICAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgYWxsb3dlZE1ldGhvZHM6IEFsbG93ZWRNZXRob2RzLkFMTE9XX0dFVF9IRUFEX09QVElPTlMsXG4gICAgICBjYWNoZWRNZXRob2RzOiBDYWNoZWRNZXRob2RzLkNBQ0hFX0dFVF9IRUFEX09QVElPTlMsXG4gICAgICBjYWNoZVBvbGljeTogQ2FjaGVQb2xpY3kuQ0FDSElOR19PUFRJTUlaRUQsXG4gICAgICBvcmlnaW46IHRoaXMuc3RhdGljT3JpZ2luLFxuICAgICAgcmVzcG9uc2VIZWFkZXJzUG9saWN5LFxuICAgICAgdmlld2VyUHJvdG9jb2xQb2xpY3k6IFZpZXdlclByb3RvY29sUG9saWN5LlJFRElSRUNUX1RPX0hUVFBTLFxuICAgICAgLi4uc3RhdGljQmVoYXZpb3JPcHRpb25zLFxuICAgIH07XG4gIH1cbiAgcHJpdmF0ZSBjcmVhdGVEeW5hbWljQmVoYXZpb3JPcHRpb25zKCk6IEJlaGF2aW9yT3B0aW9ucyB7XG4gICAgY29uc3QgZHluYW1pY0JlaGF2aW9yT3B0aW9ucyA9IHRoaXMucHJvcHMub3ZlcnJpZGVzPy5keW5hbWljQmVoYXZpb3JPcHRpb25zO1xuICAgIC8vIGNyZWF0ZSBkZWZhdWx0IGNhY2hlIHBvbGljeSBpZiBub3QgcHJvdmlkZWRcbiAgICBjb25zdCBjYWNoZVBvbGljeSA9XG4gICAgICBkeW5hbWljQmVoYXZpb3JPcHRpb25zPy5jYWNoZVBvbGljeSA/P1xuICAgICAgbmV3IENhY2hlUG9saWN5KHRoaXMsIFwiRHluYW1pY0NhY2hlUG9saWN5XCIsIHtcbiAgICAgICAgcXVlcnlTdHJpbmdCZWhhdmlvcjogQ2FjaGVRdWVyeVN0cmluZ0JlaGF2aW9yLmFsbCgpLFxuICAgICAgICBoZWFkZXJCZWhhdmlvcjogQ2FjaGVIZWFkZXJCZWhhdmlvci5hbGxvd0xpc3QoXG4gICAgICAgICAgXCJhY2NlcHRcIixcbiAgICAgICAgICBcInJzY1wiLFxuICAgICAgICAgIFwibmV4dC1yb3V0ZXItcHJlZmV0Y2hcIixcbiAgICAgICAgICBcIm5leHQtcm91dGVyLXN0YXRlLXRyZWVcIixcbiAgICAgICAgICBcIm5leHQtdXJsXCIsXG4gICAgICAgICAgXCJ4LXByZXJlbmRlci1yZXZhbGlkYXRlXCIsXG4gICAgICAgICksXG4gICAgICAgIGNvb2tpZUJlaGF2aW9yOiBDYWNoZUNvb2tpZUJlaGF2aW9yLmFsbCgpLFxuICAgICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0Jyb3RsaTogdHJ1ZSxcbiAgICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdHemlwOiB0cnVlLFxuICAgICAgICBjb21tZW50OiBgTmV4dGpzIER5bmFtaWMgQ2FjaGUgUG9saWN5IGZvciAke1N0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZX1gLFxuICAgICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8uZHluYW1pY0NhY2hlUG9saWN5UHJvcHMsXG4gICAgICB9KTtcbiAgICBjb25zdCByZXNwb25zZUhlYWRlcnNQb2xpY3kgPVxuICAgICAgZHluYW1pY0JlaGF2aW9yT3B0aW9ucz8ucmVzcG9uc2VIZWFkZXJzUG9saWN5ID8/XG4gICAgICBuZXcgUmVzcG9uc2VIZWFkZXJzUG9saWN5KHRoaXMsIFwiRHluYW1pY1Jlc3BvbnNlSGVhZGVyc1BvbGljeVwiLCB7XG4gICAgICAgIHNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yOiB0aGlzLmNvbW1vblNlY3VyaXR5SGVhZGVyc0JlaGF2aW9yLFxuICAgICAgICBjb21tZW50OiBgTmV4dGpzIER5bmFtaWMgUmVzcG9uc2UgSGVhZGVycyBQb2xpY3kgZm9yICR7U3RhY2sub2YodGhpcykuc3RhY2tOYW1lfWAsXG4gICAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5keW5hbWljQmVoYXZpb3JPcHRpb25zPy5yZXNwb25zZUhlYWRlcnNQb2xpY3ksXG4gICAgICB9KTtcbiAgICBjb25zdCBiZWhhdmlvck9wdGlvbnM6IEJlaGF2aW9yT3B0aW9ucyA9IHtcbiAgICAgIGFsbG93ZWRNZXRob2RzOiBBbGxvd2VkTWV0aG9kcy5BTExPV19BTEwsXG4gICAgICBjYWNoZVBvbGljeSxcbiAgICAgIGVkZ2VMYW1iZGFzOiB0aGlzLmVkZ2VMYW1iZGFzLFxuICAgICAgZnVuY3Rpb25Bc3NvY2lhdGlvbnM6IHRoaXMuZHluYW1pY0Nsb3VkRnJvbnRGdW5jdGlvbkFzc29jaWF0aW9ucyxcbiAgICAgIG9yaWdpbjogdGhpcy5keW5hbWljT3JpZ2luLFxuICAgICAgb3JpZ2luUmVxdWVzdFBvbGljeTogdGhpcy5keW5hbWljT3JpZ2luUmVzcG9uc2VQb2xpY3ksXG4gICAgICByZXNwb25zZUhlYWRlcnNQb2xpY3ksXG4gICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAuLi5keW5hbWljQmVoYXZpb3JPcHRpb25zLFxuICAgIH07XG4gICAgcmV0dXJuIGJlaGF2aW9yT3B0aW9ucztcbiAgfVxuICBwcml2YXRlIGNyZWF0ZUltYWdlQmVoYXZpb3JPcHRpb25zKCk6IEJlaGF2aW9yT3B0aW9ucyB7XG4gICAgY29uc3QgaW1hZ2VCZWhhdmlvck9wdGlvbnMgPSB0aGlzLnByb3BzLm92ZXJyaWRlcz8uaW1hZ2VCZWhhdmlvck9wdGlvbnM7XG4gICAgLy8gYWRkIGRlZmF1bHQgY2FjaGUgcG9saWN5IGlmIG5vdCBwcm92aWRlZFxuICAgIGNvbnN0IGNhY2hlUG9saWN5ID1cbiAgICAgIGltYWdlQmVoYXZpb3JPcHRpb25zPy5jYWNoZVBvbGljeSA/P1xuICAgICAgbmV3IENhY2hlUG9saWN5KHRoaXMsIFwiSW1hZ2VDYWNoZVBvbGljeVwiLCB7XG4gICAgICAgIC8vIFNFQ1VSSVRZIE5PVEU6IGJ5IGRlZmF1bHQgd2UgZG9uJ3QgaW5jbHVkZSBjb29raWVzIGluIGNhY2hlIGZvclxuICAgICAgICAvLyBpbWFnZXMgYi9jIGl0IHNpZ25pZmljYW50bHkgaW1wcm92ZXMgaW1hZ2UgcGVyZiBmb3IgbW9zdCBzaXRlcyBCVVRcbiAgICAgICAgLy8gaWYgeW91IGhhdmUgcHJpdmF0ZSBpbWFnZXMgbG9ja2VkIGJlaGluZCBhdXRoIGltcGxlbWVudGVkIHdpdGggY29va2llc1xuICAgICAgICAvLyB5b3UgbmVlZCB0byBvdmVycmlkZSB0aGlzLlxuICAgICAgICBxdWVyeVN0cmluZ0JlaGF2aW9yOiBDYWNoZVF1ZXJ5U3RyaW5nQmVoYXZpb3IuYWxsKCksXG4gICAgICAgIGhlYWRlckJlaGF2aW9yOiBDYWNoZUhlYWRlckJlaGF2aW9yLmFsbG93TGlzdChcImFjY2VwdFwiKSxcbiAgICAgICAgY29va2llQmVoYXZpb3I6IENhY2hlQ29va2llQmVoYXZpb3Iubm9uZSgpLFxuICAgICAgICBlbmFibGVBY2NlcHRFbmNvZGluZ0Jyb3RsaTogdHJ1ZSxcbiAgICAgICAgZW5hYmxlQWNjZXB0RW5jb2RpbmdHemlwOiB0cnVlLFxuICAgICAgICBjb21tZW50OiBgTmV4dGpzIEltYWdlIENhY2hlIFBvbGljeSBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmltYWdlQ2FjaGVQb2xpY3lQcm9wcyxcbiAgICAgIH0pO1xuICAgIC8vIGFkZCBkZWZhdWx0IHJlc3BvbnNlIGhlYWRlcnMgcG9saWN5IGlmIG5vdCBwcm92aWRlZFxuICAgIGNvbnN0IHJlc3BvbnNlSGVhZGVyc1BvbGljeSA9XG4gICAgICBpbWFnZUJlaGF2aW9yT3B0aW9ucz8ucmVzcG9uc2VIZWFkZXJzUG9saWN5ID8/XG4gICAgICBuZXcgUmVzcG9uc2VIZWFkZXJzUG9saWN5KHRoaXMsIFwiSW1hZ2VSZXNwb25zZUhlYWRlcnNQb2xpY3lcIiwge1xuICAgICAgICBzZWN1cml0eUhlYWRlcnNCZWhhdmlvcjogdGhpcy5jb21tb25TZWN1cml0eUhlYWRlcnNCZWhhdmlvcixcbiAgICAgICAgY29tbWVudDogYE5leHRqcyBJbWFnZSBSZXNwb25zZSBIZWFkZXJzIFBvbGljeSBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmltYWdlUmVzcG9uc2VIZWFkZXJzUG9saWN5UHJvcHMsXG4gICAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgYWxsb3dlZE1ldGhvZHM6IEFsbG93ZWRNZXRob2RzLkFMTE9XX0dFVF9IRUFEX09QVElPTlMsXG4gICAgICBjYWNoZWRNZXRob2RzOiBDYWNoZWRNZXRob2RzLkNBQ0hFX0dFVF9IRUFEX09QVElPTlMsXG4gICAgICBlZGdlTGFtYmRhczogdGhpcy5lZGdlTGFtYmRhcyxcbiAgICAgIGZ1bmN0aW9uQXNzb2NpYXRpb25zOiB0aGlzLmR5bmFtaWNDbG91ZEZyb250RnVuY3Rpb25Bc3NvY2lhdGlvbnMsXG4gICAgICBvcmlnaW46IHRoaXMuZHluYW1pY09yaWdpbixcbiAgICAgIG9yaWdpblJlcXVlc3RQb2xpY3k6IHRoaXMuZHluYW1pY09yaWdpblJlc3BvbnNlUG9saWN5LFxuICAgICAgY2FjaGVQb2xpY3ksXG4gICAgICByZXNwb25zZUhlYWRlcnNQb2xpY3ksXG4gICAgICB2aWV3ZXJQcm90b2NvbFBvbGljeTogVmlld2VyUHJvdG9jb2xQb2xpY3kuUkVESVJFQ1RfVE9fSFRUUFMsXG4gICAgICAuLi5pbWFnZUJlaGF2aW9yT3B0aW9ucyxcbiAgICB9O1xuICB9XG4gIC8qKlxuICAgKiBDcmVhdGVzIG9yIHVzZXMgdXNlciBzcGVjaWZpZWQgQ2xvdWRGcm9udCBEaXN0cmlidXRpb25cbiAgICovXG4gIHByaXZhdGUgZ2V0RGlzdHJpYnV0aW9uKCk6IERpc3RyaWJ1dGlvbiB7XG4gICAgbGV0IGRpc3RyaWJ1dGlvbjogRGlzdHJpYnV0aW9uO1xuICAgIGlmICh0aGlzLnByb3BzLmRpc3RyaWJ1dGlvbikge1xuICAgICAgZGlzdHJpYnV0aW9uID0gdGhpcy5wcm9wcy5kaXN0cmlidXRpb247XG4gICAgfSBlbHNlIHtcbiAgICAgIGRpc3RyaWJ1dGlvbiA9IG5ldyBEaXN0cmlidXRpb24odGhpcywgXCJEaXN0cmlidXRpb25cIiwge1xuICAgICAgICBtaW5pbXVtUHJvdG9jb2xWZXJzaW9uOiBTZWN1cml0eVBvbGljeVByb3RvY29sLlRMU19WMV8yXzIwMjEsXG4gICAgICAgIGRlZmF1bHRCZWhhdmlvcjogdGhpcy5keW5hbWljQmVoYXZpb3JPcHRpb25zLFxuICAgICAgICBodHRwVmVyc2lvbjogSHR0cFZlcnNpb24uSFRUUDJfQU5EXzMsXG4gICAgICAgIGNvbW1lbnQ6IGBjZGstbmV4dGpzIERpc3RyaWJ1dGlvbiBmb3IgJHtTdGFjay5vZih0aGlzKS5zdGFja05hbWV9YCxcbiAgICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmRpc3RyaWJ1dGlvblByb3BzLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBkaXN0cmlidXRpb247XG4gIH1cbiAgcHJpdmF0ZSBhZGREeW5hbWljQmVoYXZpb3JzKCkge1xuICAgIC8vIEltYWdlIEJlaGF2aW9yXG4gICAgdGhpcy5kaXN0cmlidXRpb24uYWRkQmVoYXZpb3IoXG4gICAgICB0aGlzLmdldFBhdGhQYXR0ZXJuKFwiX25leHQvaW1hZ2UqXCIpLFxuICAgICAgdGhpcy5pbWFnZUJlaGF2aW9yT3B0aW9ucy5vcmlnaW4sXG4gICAgICB0aGlzLmltYWdlQmVoYXZpb3JPcHRpb25zLFxuICAgICk7XG4gICAgLy8gUm9vdCBQYXRoIEJlaGF2aW9yc1xuICAgIGlmICh0aGlzLnByb3BzLmJhc2VQYXRoKSB7XG4gICAgICAvLyBiZWNhdXNlIHdlIGFscmVhZHkgaGF2ZSBhIGJhc2VQYXRoIHdlIGRvbid0IHVzZSAvIGluc3RlYWQgd2UgdXNlIC9iYXNlLXBhdGhcbiAgICAgIHRoaXMuZGlzdHJpYnV0aW9uLmFkZEJlaGF2aW9yKFxuICAgICAgICB0aGlzLnByb3BzLmJhc2VQYXRoLFxuICAgICAgICB0aGlzLmR5bmFtaWNCZWhhdmlvck9wdGlvbnMub3JpZ2luLFxuICAgICAgICB0aGlzLmR5bmFtaWNCZWhhdmlvck9wdGlvbnMsXG4gICAgICApO1xuICAgICAgLy8gd2hlbiBiYXNlUGF0aCBpcyBzZXQsIHdlIGVtdWxhdGUgdGhlIFwiZGVmYXVsdCBiZWhhdmlvclwiICgqKSBmb3IgdGhlIHNpdGUgYXMgYC9iYXNlLXBhdGgvKmBcbiAgICAgIHRoaXMuZGlzdHJpYnV0aW9uLmFkZEJlaGF2aW9yKFxuICAgICAgICB0aGlzLmdldFBhdGhQYXR0ZXJuKFwiKlwiKSxcbiAgICAgICAgdGhpcy5keW5hbWljQmVoYXZpb3JPcHRpb25zLm9yaWdpbixcbiAgICAgICAgdGhpcy5keW5hbWljQmVoYXZpb3JPcHRpb25zLFxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgLy8gaWYgbm8gYmFzZSBwYXRoLCB0aGVuIGRlZmF1bHQgYmVoYXZpb3Igd2lsbCBoYW5kbGUgYWxsIG90aGVyIHBhdGhzXG4gICAgfVxuICB9XG4gIHByaXZhdGUgYWRkU3RhdGljQmVoYXZpb3JzKCkge1xuICAgIHRoaXMuZGlzdHJpYnV0aW9uLmFkZEJlaGF2aW9yKFxuICAgICAgXCJfbmV4dC9zdGF0aWMqXCIsXG4gICAgICB0aGlzLnN0YXRpY09yaWdpbixcbiAgICAgIHRoaXMuc3RhdGljQmVoYXZpb3JPcHRpb25zLFxuICAgICk7XG4gICAgLy8gMjIgPSAyNSAobWF4KSAtIDEgKF9uZXh0L2ltYWdlKSAtIDEgKF9uZXh0L3N0YXRpYykgLSAxICgqKVxuICAgIGlmICh0aGlzLnByb3BzLnB1YmxpY0RpckVudHJpZXMubGVuZ3RoID49IDIyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBUb28gbWFueSBwdWJsaWMvIGZpbGVzIGluIE5leHQuanMgYnVpbGQuIENsb3VkRnJvbnQgbGltaXRzIERpc3RyaWJ1dGlvbnMgdG8gMjUgQ2FjaGUgQmVoYXZpb3JzLiBTZWUgZG9jdW1lbnRlZCBsaW1pdCBoZXJlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRGcm9udC9sYXRlc3QvRGV2ZWxvcGVyR3VpZGUvY2xvdWRmcm9udC1saW1pdHMuaHRtbCNsaW1pdHMtd2ViLWRpc3RyaWJ1dGlvbnMuIFRyeSBpbmNsdWRpbmcgYWxsIHB1YmxpYyBmaWxlcyBpbnRvIDEgdG9wIGxldmVsIGRpcmVjdG9yeSAoaS5lLiBzdGF0aWMvKikuYCxcbiAgICAgICk7XG4gICAgfVxuICAgIGZvciAoY29uc3QgcHVibGljRmlsZSBvZiB0aGlzLnByb3BzLnB1YmxpY0RpckVudHJpZXMpIHtcbiAgICAgIGNvbnN0IHBhdGhQYXR0ZXJuID0gcHVibGljRmlsZS5pc0RpcmVjdG9yeVxuICAgICAgICA/IGAke3B1YmxpY0ZpbGUubmFtZX0vKmBcbiAgICAgICAgOiBwdWJsaWNGaWxlLm5hbWU7XG4gICAgICBpZiAoIS9eW2EtekEtWjAtOV9cXC0uKiQvflwiJ0A6Kz8mXSskLy50ZXN0KHBhdGhQYXR0ZXJuKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYEludmFsaWQgQ2xvdWRGcm9udCBEaXN0cmlidXRpb24gQ2FjaGUgQmVoYXZpb3IgUGF0aCBQYXR0ZXJuOiAke3BhdGhQYXR0ZXJufS4gUGxlYXNlIHNlZSBkb2N1bWVudGF0aW9uIGhlcmU6IGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BbWF6b25DbG91ZEZyb250L2xhdGVzdC9EZXZlbG9wZXJHdWlkZS9kaXN0cmlidXRpb24td2ViLXZhbHVlcy1zcGVjaWZ5Lmh0bWwjRG93bmxvYWREaXN0VmFsdWVzUGF0aFBhdHRlcm5gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgZmluYWxQYXRoUGF0dGVybiA9IHRoaXMuZ2V0UGF0aFBhdHRlcm4ocGF0aFBhdHRlcm4pO1xuICAgICAgdGhpcy5kaXN0cmlidXRpb24uYWRkQmVoYXZpb3IoXG4gICAgICAgIGZpbmFsUGF0aFBhdHRlcm4sXG4gICAgICAgIHRoaXMuc3RhdGljT3JpZ2luLFxuICAgICAgICB0aGlzLnN0YXRpY0JlaGF2aW9yT3B0aW9ucyxcbiAgICAgICk7XG4gICAgfVxuICB9XG4gIC8qKlxuICAgKiBPcHRpb25hbGx5IHByZXBlbmRzIGJhc2UgcGF0aCB0byBnaXZlbiBwYXRoIHBhdHRlcm4uXG4gICAqL1xuICBwcml2YXRlIGdldFBhdGhQYXR0ZXJuKHBhdGhQYXR0ZXJuOiBzdHJpbmcpIHtcbiAgICBpZiAodGhpcy5wcm9wcy5iYXNlUGF0aCkge1xuICAgICAgcmV0dXJuIGAke3RoaXMucHJvcHMuYmFzZVBhdGh9LyR7cGF0aFBhdHRlcm59YDtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHBhdGhQYXR0ZXJuO1xuICAgIH1cbiAgfVxufVxuIl19
@@ -70,5 +70,5 @@ class NextjsFileSystem extends constructs_1.Construct {
70
70
  }
71
71
  exports.NextjsFileSystem = NextjsFileSystem;
72
72
  _a = JSII_RTTI_SYMBOL_1;
73
- NextjsFileSystem[_a] = { fqn: "cdk-nextjs.NextjsFileSystem", version: "0.0.2" };
73
+ NextjsFileSystem[_a] = { fqn: "cdk-nextjs.NextjsFileSystem", version: "0.0.4" };
74
74
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWZpbGUtc3lzdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL25leHRqcy1maWxlLXN5c3RlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQUE0QztBQUU1QyxpREFNNkI7QUFFN0IsMkNBQXVDO0FBaUJ2Qzs7O0dBR0c7QUFDSCxNQUFhLGdCQUFpQixTQUFRLHNCQUFTO0lBSzdDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBNEI7UUFDcEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUNEOzs7Ozs7Ozs7Ozs7T0FZRztJQUNLLGdCQUFnQjtRQUN0QixNQUFNLFVBQVUsR0FBRyxJQUFJLG9CQUFVLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRTtZQUNwRCxTQUFTLEVBQUUsSUFBSTtZQUNmLGVBQWUsRUFBRSx5QkFBZSxDQUFDLGFBQWE7WUFDOUMsYUFBYSxFQUFFLDJCQUFhLENBQUMsT0FBTztZQUNwQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHO1lBQ25CLG9CQUFvQixFQUFFLEtBQUs7WUFDM0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxlQUFlO1NBQ3pDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFDTyxpQkFBaUI7UUFDdkIsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDO1FBQ25CLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQztRQUNuQixNQUFNLFdBQVcsR0FBRyxJQUFJLHFCQUFXLENBQUMsSUFBSSxFQUFFLGFBQWEsRUFBRTtZQUN2RCxxRUFBcUU7WUFDckUsa0RBQWtEO1lBQ2xELFNBQVMsRUFBRTtnQkFDVCxRQUFRLEVBQUUsR0FBRztnQkFDYixRQUFRLEVBQUUsR0FBRztnQkFDYixXQUFXLEVBQUUsS0FBSzthQUNuQjtZQUNELFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixJQUFJLEVBQUUsYUFBYTtZQUNuQixnRkFBZ0Y7WUFDaEYsU0FBUyxFQUFFO2dCQUNULEdBQUc7Z0JBQ0gsR0FBRzthQUNKO1lBQ0QsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxnQkFBZ0I7U0FDMUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUNELFlBQVksQ0FBQyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQXFCO1FBQ25ELElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7O0FBNURILDRDQTZEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlbW92YWxQb2xpY3kgfSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbm5lY3Rpb25zLCBJVnBjIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lYzJcIjtcbmltcG9ydCB7XG4gIEFjY2Vzc1BvaW50LFxuICBBY2Nlc3NQb2ludFByb3BzLFxuICBGaWxlU3lzdGVtLFxuICBGaWxlU3lzdGVtUHJvcHMsXG4gIExpZmVjeWNsZVBvbGljeSxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1lZnNcIjtcbmltcG9ydCB7IElSb2xlIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1pYW1cIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzRmlsZVN5c3RlbU92ZXJyaWRlcyB7XG4gIHJlYWRvbmx5IGZpbGVTeXN0ZW1Qcm9wcz86IEZpbGVTeXN0ZW1Qcm9wcztcbiAgcmVhZG9ubHkgYWNjZXNzUG9pbnRQcm9wcz86IEFjY2Vzc1BvaW50UHJvcHM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzRmlsZVN5c3RlbVByb3BzIHtcbiAgcmVhZG9ubHkgb3ZlcnJpZGVzPzogTmV4dGpzRmlsZVN5c3RlbU92ZXJyaWRlcztcbiAgcmVhZG9ubHkgdnBjOiBJVnBjO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFsbG93Q29tcHV0ZVByb3BzIHtcbiAgcmVhZG9ubHkgY29ubmVjdGlvbnM6IENvbm5lY3Rpb25zO1xuICByZWFkb25seSByb2xlOiBJUm9sZTtcbn1cblxuLyoqXG4gKiBOZXh0LmpzIE5ldHdvcmsgRmlsZSBTeXN0ZW0gZW5hYmxpbmcgc2hhcmluZyBvZiBpbWFnZSBvcHRpbWl6YXRpb24gY2FjaGUsXG4gKiBkYXRhIGNhY2gsIGFuZCBwYWdlcyBjYWNoZS5cbiAqL1xuZXhwb3J0IGNsYXNzIE5leHRqc0ZpbGVTeXN0ZW0gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBmaWxlU3lzdGVtOiBGaWxlU3lzdGVtO1xuICBhY2Nlc3NQb2ludDogQWNjZXNzUG9pbnQ7XG4gIHByaXZhdGUgcHJvcHM6IE5leHRqc0ZpbGVTeXN0ZW1Qcm9wcztcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzRmlsZVN5c3RlbVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5maWxlU3lzdGVtID0gdGhpcy5jcmVhdGVGaWxlU3lzdGVtKCk7XG4gICAgdGhpcy5hY2Nlc3NQb2ludCA9IHRoaXMuY3JlYXRlQWNjZXNzUG9pbnQoKTtcbiAgfVxuICAvKipcbiAgICogQ3JlYXRlcyBFRlMgRmlsZSBTeXN0ZW1cbiAgICpcbiAgICogTm90ZSwgdGhlIHJlc291cmNlIHBvbGljeSBmb3IgdGhlIEZpbGUgU3lzdGVtIHdpbGwgaW5jbHVkZSB0aGUgYm9vbGVhblxuICAgKiBjb25kaXRpb24sIGBcImVsYXN0aWNmaWxlc3lzdGVtOkFjY2Vzc2VkVmlhTW91bnRUYXJnZXRcIjogXCJ0cnVlXCJgIHdoaWNoIGZyb21cbiAgICogQ0RLIFtkb2NzXShodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vY2RrL2FwaS92Mi9kb2NzL2F3cy1jZGstbGliLmF3c19lZnMtcmVhZG1lLmh0bWwjcGVybWlzc2lvbnMpXG4gICAqIHNheXMsIFwib25seSBhbGxvdyBhY2Nlc3MgdG8gY2xpZW50cyB1c2luZyBJQU0gYXV0aGVudGljYXRpb24gYW5kIGRlbnkgYWNjZXNzXG4gICAqIHRvIGFub255bW91cyBjbGllbnRzXCIuXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Vmcy9sYXRlc3QvdWcvYWNjZXNzLWNvbnRyb2wtYmxvY2stcHVibGljLWFjY2Vzcy5odG1sXG4gICAqXG4gICAqIElkZWFsbHkgd2UgY291bGQgYWRkIElBTSBzdHJpbmcgY29uZGl0aW9uIGBlbGFzdGljZmlsZXN5c3RlbTpBY2Nlc3NQb2ludEFybmBcbiAgICogdG8gdGhlIHJlc291cmNlIHBvbGljeSBidXQgdGhpcyBjYXVzZXMgY2lyY3VsYXIgZGVwZW5kZW5jeS5cbiAgICovXG4gIHByaXZhdGUgY3JlYXRlRmlsZVN5c3RlbSgpIHtcbiAgICBjb25zdCBmaWxlU3lzdGVtID0gbmV3IEZpbGVTeXN0ZW0odGhpcywgXCJGaWxlU3lzdGVtXCIsIHtcbiAgICAgIGVuY3J5cHRlZDogdHJ1ZSxcbiAgICAgIGxpZmVjeWNsZVBvbGljeTogTGlmZWN5Y2xlUG9saWN5LkFGVEVSXzMwX0RBWVMsXG4gICAgICByZW1vdmFsUG9saWN5OiBSZW1vdmFsUG9saWN5LkRFU1RST1ksXG4gICAgICB2cGM6IHRoaXMucHJvcHMudnBjLFxuICAgICAgYWxsb3dBbm9ueW1vdXNBY2Nlc3M6IGZhbHNlLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmZpbGVTeXN0ZW1Qcm9wcyxcbiAgICB9KTtcbiAgICByZXR1cm4gZmlsZVN5c3RlbTtcbiAgfVxuICBwcml2YXRlIGNyZWF0ZUFjY2Vzc1BvaW50KCkge1xuICAgIGNvbnN0IHVpZCA9IFwiMTAwMVwiO1xuICAgIGNvbnN0IGdpZCA9IFwiMTAwMVwiO1xuICAgIGNvbnN0IGFjY2Vzc1BvaW50ID0gbmV3IEFjY2Vzc1BvaW50KHRoaXMsIFwiQWNjZXNzUG9pbnRcIiwge1xuICAgICAgLy8gYXMgL25leHQvY2FjaGUgZG9lc24ndCBleGlzdCBpbiBhIG5ldyBlZnMgZmlsZXN5c3RlbSwgdGhlIGVmcyB3aWxsXG4gICAgICAvLyBjcmVhdGUgdGhlIGRpcmVjdG9yeSB3aXRoIHRoZSBmb2xsb3dpbmcgb3B0aW9uc1xuICAgICAgY3JlYXRlQWNsOiB7XG4gICAgICAgIG93bmVyR2lkOiBnaWQsXG4gICAgICAgIG93bmVyVWlkOiB1aWQsXG4gICAgICAgIHBlcm1pc3Npb25zOiBcIjc1NVwiLFxuICAgICAgfSxcbiAgICAgIGZpbGVTeXN0ZW06IHRoaXMuZmlsZVN5c3RlbSxcbiAgICAgIHBhdGg6IFwiL25leHQvY2FjaGVcIixcbiAgICAgIC8vIGVuZm9yY2UgUE9TSVggaWRlbnRpdHkgc28gY29udGFpbmVyIHdpbCBhY2Nlc3MgZmlsZSBzeXN0ZW0gd2l0aCB0aGlzIGlkZW50aXR5XG4gICAgICBwb3NpeFVzZXI6IHtcbiAgICAgICAgZ2lkLFxuICAgICAgICB1aWQsXG4gICAgICB9LFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmFjY2Vzc1BvaW50UHJvcHMsXG4gICAgfSk7XG4gICAgcmV0dXJuIGFjY2Vzc1BvaW50O1xuICB9XG4gIGFsbG93Q29tcHV0ZSh7IGNvbm5lY3Rpb25zLCByb2xlIH06IEFsbG93Q29tcHV0ZVByb3BzKSB7XG4gICAgdGhpcy5maWxlU3lzdGVtLmNvbm5lY3Rpb25zLmFsbG93RGVmYXVsdFBvcnRGcm9tKGNvbm5lY3Rpb25zKTtcbiAgICB0aGlzLmZpbGVTeXN0ZW0uZ3JhbnRSZWFkV3JpdGUocm9sZSk7XG4gIH1cbn1cbiJdfQ==
@@ -48,5 +48,5 @@ class NextjsInvalidation extends constructs_1.Construct {
48
48
  }
49
49
  exports.NextjsInvalidation = NextjsInvalidation;
50
50
  _a = JSII_RTTI_SYMBOL_1;
51
- NextjsInvalidation[_a] = { fqn: "cdk-nextjs.NextjsInvalidation", version: "0.0.2" };
51
+ NextjsInvalidation[_a] = { fqn: "cdk-nextjs.NextjsInvalidation", version: "0.0.4" };
52
52
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLWludmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uZXh0anMtaW52YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQW9DO0FBRXBDLGlEQUFzRDtBQUN0RCxtRUFNc0M7QUFDdEMsMkNBQXVDO0FBaUJ2QyxNQUFhLGtCQUFtQixTQUFRLHNCQUFTO0lBQy9DLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBOEI7UUFDdEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixNQUFNLFVBQVUsR0FBZTtZQUM3QixzRUFBc0U7WUFDdEUsOEJBQThCO1lBQzlCLGtCQUFrQixFQUFFLHFDQUFrQixDQUFDLEVBQUUsQ0FDdkMsR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDckQ7WUFDRCxNQUFNLEVBQUUsMkJBQTJCO1lBQ25DLE9BQU8sRUFBRSw0QkFBNEI7WUFDckMsVUFBVSxFQUFFO2dCQUNWLGNBQWMsRUFBRSxLQUFLLENBQUMsWUFBWSxDQUFDLGNBQWM7Z0JBQ2pELGlCQUFpQixFQUFFO29CQUNqQixlQUFlLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxXQUFXLEVBQUU7b0JBQ3pDLEtBQUssRUFBRTt3QkFDTCxRQUFRLEVBQUUsQ0FBQzt3QkFDWCxLQUFLLEVBQUUsQ0FBQyxJQUFJLENBQUM7cUJBQ2Q7aUJBQ0Y7YUFDRjtTQUNGLENBQUM7UUFDRixJQUFJLG9DQUFpQixDQUFDLElBQUksRUFBRSxPQUFPLEVBQUU7WUFDbkMsUUFBUSxFQUFFLFVBQVU7WUFDcEIsUUFBUSxFQUFFLFVBQVU7WUFDcEIsTUFBTSxFQUFFLDBDQUF1QixDQUFDLGNBQWMsQ0FBQztnQkFDN0MsSUFBSSx5QkFBZSxDQUFDO29CQUNsQixPQUFPLEVBQUUsQ0FBQywrQkFBK0IsQ0FBQztvQkFDMUMsU0FBUyxFQUFFO3dCQUNULG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQzs0QkFDdkIsUUFBUSxFQUFFLGdCQUFnQixLQUFLLENBQUMsWUFBWSxDQUFDLGNBQWMsRUFBRTs0QkFDN0QsT0FBTyxFQUFFLFlBQVk7NEJBQ3JCLE1BQU0sRUFBRSxFQUFFO3lCQUNYLENBQUM7cUJBQ0g7aUJBQ0YsQ0FBQzthQUNILENBQUM7WUFDRixHQUFHLEtBQUssQ0FBQyxTQUFTLEVBQUUsc0JBQXNCO1NBQzNDLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBdkNILGdEQXdDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN0YWNrIH0gZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBJRGlzdHJpYnV0aW9uIH0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1jbG91ZGZyb250XCI7XG5pbXBvcnQgeyBQb2xpY3lTdGF0ZW1lbnQgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLWlhbVwiO1xuaW1wb3J0IHtcbiAgQXdzQ3VzdG9tUmVzb3VyY2UsXG4gIEF3c1Nka0NhbGwsXG4gIEF3c0N1c3RvbVJlc291cmNlUG9saWN5LFxuICBQaHlzaWNhbFJlc291cmNlSWQsXG4gIEF3c0N1c3RvbVJlc291cmNlUHJvcHMsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9jdXN0b20tcmVzb3VyY2VzXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc0ludmFsaWRhdGlvbk92ZXJyaWRlcyB7XG4gIHJlYWRvbmx5IGF3c0N1c3RvbVJlc291cmNlUHJvcHM/OiBBd3NDdXN0b21SZXNvdXJjZVByb3BzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5leHRqc0ludmFsaWRhdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIENsb3VkRnJvbnQgRGlzdHJpYnV0aW9uIHRvIGludmFsaWRhdGVcbiAgICovXG4gIHJlYWRvbmx5IGRpc3RyaWJ1dGlvbjogSURpc3RyaWJ1dGlvbjtcbiAgLyoqXG4gICAqIE92ZXJyaWRlIHByb3BzIGZvciBldmVyeSBjb25zdHJ1Y3QuXG4gICAqL1xuICByZWFkb25seSBvdmVycmlkZXM/OiBOZXh0anNJbnZhbGlkYXRpb25PdmVycmlkZXM7XG59XG5cbmV4cG9ydCBjbGFzcyBOZXh0anNJbnZhbGlkYXRpb24gZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogTmV4dGpzSW52YWxpZGF0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIGNvbnN0IGF3c1Nka0NhbGw6IEF3c1Nka0NhbGwgPSB7XG4gICAgICAvLyBtYWtlIGBwaHlzaWNhbFJlc291cmNlSWRgIGNoYW5nZSBlYWNoIHRpbWUgdG8gaW52YWxpZGF0ZSBDbG91ZEZyb250XG4gICAgICAvLyBkaXN0cmlidXRpb24gb24gZWFjaCBjaGFuZ2VcbiAgICAgIHBoeXNpY2FsUmVzb3VyY2VJZDogUGh5c2ljYWxSZXNvdXJjZUlkLm9mKFxuICAgICAgICBgJHtwcm9wcy5kaXN0cmlidXRpb24uZGlzdHJpYnV0aW9uSWR9LSR7RGF0ZS5ub3coKX1gLFxuICAgICAgKSxcbiAgICAgIGFjdGlvbjogXCJDcmVhdGVJbnZhbGlkYXRpb25Db21tYW5kXCIsXG4gICAgICBzZXJ2aWNlOiBcIkBhd3Mtc2RrL2NsaWVudC1jbG91ZGZyb250XCIsXG4gICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgIERpc3RyaWJ1dGlvbklkOiBwcm9wcy5kaXN0cmlidXRpb24uZGlzdHJpYnV0aW9uSWQsXG4gICAgICAgIEludmFsaWRhdGlvbkJhdGNoOiB7XG4gICAgICAgICAgQ2FsbGVyUmVmZXJlbmNlOiBuZXcgRGF0ZSgpLnRvSVNPU3RyaW5nKCksXG4gICAgICAgICAgUGF0aHM6IHtcbiAgICAgICAgICAgIFF1YW50aXR5OiAxLFxuICAgICAgICAgICAgSXRlbXM6IFtcIi8qXCJdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH07XG4gICAgbmV3IEF3c0N1c3RvbVJlc291cmNlKHRoaXMsIFwiQXdzQ1JcIiwge1xuICAgICAgb25DcmVhdGU6IGF3c1Nka0NhbGwsXG4gICAgICBvblVwZGF0ZTogYXdzU2RrQ2FsbCxcbiAgICAgIHBvbGljeTogQXdzQ3VzdG9tUmVzb3VyY2VQb2xpY3kuZnJvbVN0YXRlbWVudHMoW1xuICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICBhY3Rpb25zOiBbXCJjbG91ZGZyb250OkNyZWF0ZUludmFsaWRhdGlvblwiXSxcbiAgICAgICAgICByZXNvdXJjZXM6IFtcbiAgICAgICAgICAgIFN0YWNrLm9mKHRoaXMpLmZvcm1hdEFybih7XG4gICAgICAgICAgICAgIHJlc291cmNlOiBgZGlzdHJpYnV0aW9uLyR7cHJvcHMuZGlzdHJpYnV0aW9uLmRpc3RyaWJ1dGlvbklkfWAsXG4gICAgICAgICAgICAgIHNlcnZpY2U6IFwiY2xvdWRmcm9udFwiLFxuICAgICAgICAgICAgICByZWdpb246IFwiXCIsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICBdLFxuICAgICAgICB9KSxcbiAgICAgIF0pLFxuICAgICAgLi4ucHJvcHMub3ZlcnJpZGVzPy5hd3NDdXN0b21SZXNvdXJjZVByb3BzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -61,5 +61,5 @@ class NextjsRevalidation extends constructs_1.Construct {
61
61
  }
62
62
  exports.NextjsRevalidation = NextjsRevalidation;
63
63
  _a = JSII_RTTI_SYMBOL_1;
64
- NextjsRevalidation[_a] = { fqn: "cdk-nextjs.NextjsRevalidation", version: "0.0.2" };
64
+ NextjsRevalidation[_a] = { fqn: "cdk-nextjs.NextjsRevalidation", version: "0.0.4" };
65
65
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLXJldmFsaWRhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uZXh0anMtcmV2YWxpZGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkNBQXVDO0FBQ3ZDLGlEQUE0RTtBQUU1RSxtRkFHOEM7QUFDOUMsaURBQXdEO0FBQ3hELDJDQUF1QztBQUV2QyxrRkFBOEU7QUFjOUU7Ozs7OztHQU1HO0FBQ0gsTUFBYSxrQkFBbUIsU0FBUSxzQkFBUztJQU0vQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQThCO1FBQ3RFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDbkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDaEMsSUFBSSxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVPLFdBQVc7UUFDakIsTUFBTSxLQUFLLEdBQUcsSUFBSSxlQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRTtZQUNyQyxJQUFJLEVBQUUsSUFBSTtZQUNWLHlCQUF5QixFQUFFLElBQUk7WUFDL0IsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxVQUFVO1NBQ3BDLENBQUMsQ0FBQztRQUNILDZHQUE2RztRQUM3RyxLQUFLLENBQUMsbUJBQW1CLENBQ3ZCLElBQUkseUJBQWUsQ0FBQztZQUNsQixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztZQUNsQixNQUFNLEVBQUUsZ0JBQU0sQ0FBQyxJQUFJO1lBQ25CLFVBQVUsRUFBRSxDQUFDLElBQUksc0JBQVksRUFBRSxDQUFDO1lBQ2hDLFNBQVMsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7WUFDM0IsVUFBVSxFQUFFO2dCQUNWLElBQUksRUFBRSxFQUFFLHFCQUFxQixFQUFFLE9BQU8sRUFBRTthQUN6QztTQUNGLENBQUMsQ0FDSCxDQUFDO1FBQ0YsNkNBQTZDO1FBQzdDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLGNBQWMsQ0FBQyxzQkFBc0IsRUFBRSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckUsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRU8sY0FBYztRQUNwQixNQUFNLEVBQUUsR0FBRyxJQUFJLHdDQUFrQixDQUFDLElBQUksRUFBRSxJQUFJLEVBQUU7WUFDNUMsV0FBVyxFQUFFO2dCQUNYLGVBQWUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWE7YUFDMUM7WUFDRCxPQUFPLEVBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQzdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsYUFBYTtTQUN2QyxDQUFDLENBQUM7UUFDSCxFQUFFLENBQUMsY0FBYyxDQUNmLElBQUkseUNBQWMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQzdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsbUJBQW1CO1NBQzdDLENBQUMsQ0FDSCxDQUFDO1FBQ0YsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDOztBQXBESCxnREFxREMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHsgQW55UHJpbmNpcGFsLCBFZmZlY3QsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtaWFtXCI7XG5pbXBvcnQgeyBGdW5jdGlvbiBhcyBMYW1iZGFGdW5jdGlvbiB9IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtbGFtYmRhXCI7XG5pbXBvcnQge1xuICBTcXNFdmVudFNvdXJjZSxcbiAgU3FzRXZlbnRTb3VyY2VQcm9wcyxcbn0gZnJvbSBcImF3cy1jZGstbGliL2F3cy1sYW1iZGEtZXZlbnQtc291cmNlc1wiO1xuaW1wb3J0IHsgUXVldWUsIFF1ZXVlUHJvcHMgfSBmcm9tIFwiYXdzLWNkay1saWIvYXdzLXNxc1wiO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IE9wdGlvbmFsRnVuY3Rpb25Qcm9wcyB9IGZyb20gXCIuL2dlbmVyYXRlZC1zdHJ1Y3RzL09wdGlvbmFsRnVuY3Rpb25Qcm9wc1wiO1xuaW1wb3J0IHsgUmV2YWxpZGF0ZUZ1bmN0aW9uIH0gZnJvbSBcIi4vbGFtYmRhcy9yZXZhbGlkYXRlL3JldmFsaWRhdGUtZnVuY3Rpb25cIjtcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNSZXZhbGlkYXRpb25PdmVycmlkZXMge1xuICByZWFkb25seSBxdWV1ZVByb3BzPzogUXVldWVQcm9wcztcbiAgcmVhZG9ubHkgZnVuY3Rpb25Qcm9wcz86IE9wdGlvbmFsRnVuY3Rpb25Qcm9wcztcbiAgcmVhZG9ubHkgc3FzRXZlbnRTb3VyY2VQcm9wcz86IFNxc0V2ZW50U291cmNlUHJvcHM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzUmV2YWxpZGF0aW9uUHJvcHMge1xuICByZWFkb25seSBmbjogTGFtYmRhRnVuY3Rpb247XG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc1JldmFsaWRhdGlvbk92ZXJyaWRlcztcbiAgcmVhZG9ubHkgcHJldmlld01vZGVJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFtPbi1EZW1hbmQgUmV2YWxpZGF0aW9uXShodHRwczovL25leHRqcy5vcmcvZG9jcy9hcHAvYnVpbGRpbmcteW91ci1hcHBsaWNhdGlvbi9jYWNoaW5nI29uLWRlbWFuZC1yZXZhbGlkYXRpb24pXG4gKiAoaS5lLiBgcmV2YWxpZGF0ZVRhZ2AsIGByZXZsaWRhdGVQYXRoYCkgZG9lc24ndCB3b3JrIGJ5IGRlZmF1bHQgaW4gTGFtYmRhXG4gKiBlbnZpcm9ubWVudCBiZWNhdXNlIGl0IHRyaWVzIHRvIHJ1biBldmVyeSByZXF1ZXN0IGNvbXBsZXRlcyB3aGVuIExhbWJkYVxuICogc3BpbnMgZG93bi4gVGhlcmVmb3JlLCB3ZSB1c2UgYSBTUVMgUXVldWUgYW5kIExhbWJkYSBmdW5jdGlvbiB0byBydW5cbiAqIHJldmFsaWRhdGlvbiBhc3luYy5cbiAqL1xuZXhwb3J0IGNsYXNzIE5leHRqc1JldmFsaWRhdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHF1ZXVlOiBRdWV1ZTtcbiAgZm46IExhbWJkYUZ1bmN0aW9uO1xuXG4gIHByaXZhdGUgcHJvcHM6IE5leHRqc1JldmFsaWRhdGlvblByb3BzO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBOZXh0anNSZXZhbGlkYXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICAgIHRoaXMucXVldWUgPSB0aGlzLmNyZWF0ZVF1ZXVlKCk7XG4gICAgdGhpcy5mbiA9IHRoaXMuY3JlYXRlRnVuY3Rpb24oKTtcbiAgfVxuXG4gIHByaXZhdGUgY3JlYXRlUXVldWUoKSB7XG4gICAgY29uc3QgcXVldWUgPSBuZXcgUXVldWUodGhpcywgXCJRdWV1ZVwiLCB7XG4gICAgICBmaWZvOiB0cnVlLFxuICAgICAgY29udGVudEJhc2VkRGVkdXBsaWNhdGlvbjogdHJ1ZSxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5xdWV1ZVByb3BzLFxuICAgIH0pO1xuICAgIC8vIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NTaW1wbGVRdWV1ZVNlcnZpY2UvbGF0ZXN0L1NRU0RldmVsb3Blckd1aWRlL3Nxcy1sZWFzdC1wcml2aWxlZ2UtcG9saWN5Lmh0bWxcbiAgICBxdWV1ZS5hZGRUb1Jlc291cmNlUG9saWN5KFxuICAgICAgbmV3IFBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgIHNpZDogXCJEZW55VW5zZWN1cmVUcmFuc3BvcnRcIixcbiAgICAgICAgYWN0aW9uczogW1wic3FzOipcIl0sXG4gICAgICAgIGVmZmVjdDogRWZmZWN0LkRFTlksXG4gICAgICAgIHByaW5jaXBhbHM6IFtuZXcgQW55UHJpbmNpcGFsKCldLFxuICAgICAgICByZXNvdXJjZXM6IFtxdWV1ZS5xdWV1ZUFybl0sXG4gICAgICAgIGNvbmRpdGlvbnM6IHtcbiAgICAgICAgICBCb29sOiB7IFwiYXdzOlNlY3VyZVRyYW5zcG9ydFwiOiBcImZhbHNlXCIgfSxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgICk7XG4gICAgLy8gQWxsb3cgc2VydmVyIHRvIHNlbmQgbWVzc2FnZXMgdG8gdGhlIHF1ZXVlXG4gICAgcXVldWUuZ3JhbnRTZW5kTWVzc2FnZXModGhpcy5wcm9wcy5mbik7XG4gICAgdGhpcy5wcm9wcy5mbi5hZGRFbnZpcm9ubWVudChcIkNES19ORVhUSlNfUVVFVUVfVVJMXCIsIHF1ZXVlLnF1ZXVlVXJsKTtcbiAgICByZXR1cm4gcXVldWU7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUZ1bmN0aW9uKCkge1xuICAgIGNvbnN0IGZuID0gbmV3IFJldmFsaWRhdGVGdW5jdGlvbih0aGlzLCBcIkZuXCIsIHtcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIFBSRVZJRVdfTU9ERV9JRDogdGhpcy5wcm9wcy5wcmV2aWV3TW9kZUlkLFxuICAgICAgfSxcbiAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoMjApLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LmZ1bmN0aW9uUHJvcHMsXG4gICAgfSk7XG4gICAgZm4uYWRkRXZlbnRTb3VyY2UoXG4gICAgICBuZXcgU3FzRXZlbnRTb3VyY2UodGhpcy5xdWV1ZSwge1xuICAgICAgICAuLi50aGlzLnByb3BzLm92ZXJyaWRlcz8uc3FzRXZlbnRTb3VyY2VQcm9wcyxcbiAgICAgIH0pLFxuICAgICk7XG4gICAgcmV0dXJuIGZuO1xuICB9XG59XG4iXX0=
@@ -28,5 +28,5 @@ class NextjsStaticAssets extends constructs_1.Construct {
28
28
  }
29
29
  exports.NextjsStaticAssets = NextjsStaticAssets;
30
30
  _a = JSII_RTTI_SYMBOL_1;
31
- NextjsStaticAssets[_a] = { fqn: "cdk-nextjs.NextjsStaticAssets", version: "0.0.2" };
31
+ NextjsStaticAssets[_a] = { fqn: "cdk-nextjs.NextjsStaticAssets", version: "0.0.4" };
32
32
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLXN0YXRpYy1hc3NldHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvbmV4dGpzLXN0YXRpYy1hc3NldHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2Q0FBNEM7QUFDNUMsK0NBSzRCO0FBQzVCLDJDQUF1QztBQWN2Qzs7R0FFRztBQUNILE1BQWEsa0JBQW1CLFNBQVEsc0JBQVM7SUFLL0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE4QjtRQUN0RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFTyxZQUFZO1FBQ2xCLE9BQU8sSUFBSSxlQUFNLENBQUMsSUFBSSxFQUFFLFFBQVEsRUFBRTtZQUNoQyxhQUFhLEVBQUUsMkJBQWEsQ0FBQyxPQUFPO1lBQ3BDLGlCQUFpQixFQUFFLElBQUk7WUFDdkIsVUFBVSxFQUFFLElBQUk7WUFDaEIsaUJBQWlCLEVBQUUsMEJBQWlCLENBQUMsU0FBUztZQUM5QyxVQUFVLEVBQUUseUJBQWdCLENBQUMsVUFBVTtZQUN2QyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxFQUFFLFdBQVc7U0FDckMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFwQkgsZ0RBcUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVtb3ZhbFBvbGljeSB9IGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0IHtcbiAgQmxvY2tQdWJsaWNBY2Nlc3MsXG4gIEJ1Y2tldCxcbiAgQnVja2V0RW5jcnlwdGlvbixcbiAgQnVja2V0UHJvcHMsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtczNcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzU3RhdGljQXNzZXRzT3ZlcnJpZGVzIHtcbiAgcmVhZG9ubHkgYnVja2V0UHJvcHM/OiBCdWNrZXRQcm9wcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNTdGF0aWNBc3NldHNQcm9wcyB7XG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc1N0YXRpY0Fzc2V0c092ZXJyaWRlcztcbiAgLyoqXG4gICAqIFJlcXVpcmVkIGlmIGBOZXh0anNUeXBlLlJFR0lPTkFMX0NPTlRBSU5FUlNgXG4gICAqL1xuICByZWFkb25seSB2cGNJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDcmVhdGVzIFMzIEJ1Y2tldCBmb3IgcHVibGljIGFuZCBfbmV4dC9zdGF0aWMgYXNzZXRzLlxuICovXG5leHBvcnQgY2xhc3MgTmV4dGpzU3RhdGljQXNzZXRzIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgYnVja2V0OiBCdWNrZXQ7XG5cbiAgcHJpdmF0ZSBwcm9wczogTmV4dGpzU3RhdGljQXNzZXRzUHJvcHM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE5leHRqc1N0YXRpY0Fzc2V0c1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgdGhpcy5idWNrZXQgPSB0aGlzLmNyZWF0ZUJ1Y2tldCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBjcmVhdGVCdWNrZXQoKSB7XG4gICAgcmV0dXJuIG5ldyBCdWNrZXQodGhpcywgXCJCdWNrZXRcIiwge1xuICAgICAgcmVtb3ZhbFBvbGljeTogUmVtb3ZhbFBvbGljeS5ERVNUUk9ZLFxuICAgICAgYXV0b0RlbGV0ZU9iamVjdHM6IHRydWUsXG4gICAgICBlbmZvcmNlU1NMOiB0cnVlLFxuICAgICAgYmxvY2tQdWJsaWNBY2Nlc3M6IEJsb2NrUHVibGljQWNjZXNzLkJMT0NLX0FMTCxcbiAgICAgIGVuY3J5cHRpb246IEJ1Y2tldEVuY3J5cHRpb24uUzNfTUFOQUdFRCxcbiAgICAgIC4uLnRoaXMucHJvcHMub3ZlcnJpZGVzPy5idWNrZXRQcm9wcyxcbiAgICB9KTtcbiAgfVxufVxuIl19
package/lib/nextjs-vpc.js CHANGED
@@ -60,5 +60,5 @@ class NextjsVpc extends constructs_1.Construct {
60
60
  }
61
61
  exports.NextjsVpc = NextjsVpc;
62
62
  _a = JSII_RTTI_SYMBOL_1;
63
- NextjsVpc[_a] = { fqn: "cdk-nextjs.NextjsVpc", version: "0.0.2" };
63
+ NextjsVpc[_a] = { fqn: "cdk-nextjs.NextjsVpc", version: "0.0.4" };
64
64
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dGpzLXZwYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9uZXh0anMtdnBjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsaURBSzZCO0FBQzdCLDJDQUF1QztBQUN2QyxxQ0FBc0M7QUFtQnRDLE1BQWEsU0FBVSxTQUFRLHNCQUFTO0lBS3RDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBcUI7UUFDN0QsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQztRQUN2QixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxHQUFHLEdBQUcsS0FBSyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDekMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ssU0FBUztRQUNmLE9BQU8sSUFBSSxhQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRTtZQUMxQixNQUFNLEVBQUUsQ0FBQyxFQUFFLDZCQUE2QjtZQUN4QyxtQkFBbUIsRUFBRTtnQkFDbkIsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxvQkFBVSxDQUFDLE1BQU0sRUFBRTtnQkFDakQscUVBQXFFO2dCQUNyRTtvQkFDRSxJQUFJLEVBQUUsbUJBQW1CO29CQUN6QixVQUFVLEVBQUUsb0JBQVUsQ0FBQyxtQkFBbUI7aUJBQzNDO2dCQUNELEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLFVBQVUsRUFBRSxvQkFBVSxDQUFDLGdCQUFnQixFQUFFO2FBQ3JFO1lBQ0QsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxRQUFRO1NBQ2xDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNLLGtCQUFrQjtRQUN4QixJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxLQUFLLG1CQUFVLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztZQUMxRCxJQUFJLENBQUMsR0FBRyxDQUFDLG9CQUFvQixDQUFDLHNCQUFzQixFQUFFO2dCQUNwRCxPQUFPLEVBQUUsd0NBQThCLENBQUMsR0FBRzthQUM1QyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQzs7QUF2REgsOEJBd0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSW50ZXJmYWNlVnBjRW5kcG9pbnRBd3NTZXJ2aWNlLFxuICBJVnBjLFxuICBTdWJuZXRUeXBlLFxuICBWcGMsXG59IGZyb20gXCJhd3MtY2RrLWxpYi9hd3MtZWMyXCI7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgTmV4dGpzVHlwZSB9IGZyb20gXCIuL2NvbW1vblwiO1xuaW1wb3J0IHsgT3B0aW9uYWxWcGNQcm9wcyB9IGZyb20gXCIuL2dlbmVyYXRlZC1zdHJ1Y3RzL09wdGlvbmFsVnBjUHJvcHNcIjtcblxuZXhwb3J0IGludGVyZmFjZSBOZXh0anNWcGNPdmVycmlkZXMge1xuICByZWFkb25seSB2cGNQcm9wcz86IE9wdGlvbmFsVnBjUHJvcHM7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmV4dGpzVnBjUHJvcHMge1xuICByZWFkb25seSBuZXh0anNUeXBlOiBOZXh0anNUeXBlO1xuICAvKipcbiAgICogT3ZlcnJpZGUgYW55IGNvbnN0cnVjdC5cbiAgICovXG4gIHJlYWRvbmx5IG92ZXJyaWRlcz86IE5leHRqc1ZwY092ZXJyaWRlcztcbiAgLyoqXG4gICAqIEJyaW5nIHlvdXIgb3duIFZQQy5cbiAgICovXG4gIHJlYWRvbmx5IHZwYz86IElWcGM7XG59XG5cbmV4cG9ydCBjbGFzcyBOZXh0anNWcGMgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICB2cGM6IElWcGM7XG5cbiAgcHJpdmF0ZSBwcm9wczogTmV4dGpzVnBjUHJvcHM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IE5leHRqc1ZwY1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG4gICAgaWYgKHByb3BzLnZwYykge1xuICAgICAgdGhpcy52cGMgPSBwcm9wcy52cGM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudnBjID0gcHJvcHMudnBjID8/IHRoaXMuY3JlYXRlVnBjKCk7XG4gICAgICB0aGlzLmNyZWF0ZVZwY0VuZHBvaW50cygpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBjZGstbmV4dGpzIHJlcXVpcmVzIGEgVlBDIGJlY2F1c2Ugb2YgdGhlIHVzZSBvZiBFRlMuIFRoZSBOZXh0LmpzIGNvbnRhaW5lcnNcbiAgICogb3IgZnVuY3Rpb25zIGNhbiBiZSBwbGFjZWQgaW4gXCJwcml2YXRlIHdpdGggZWdyZXNzXCIgc3VibmV0cyBvciBcInByaXZhdGUgaXNvbGF0ZWRcIlxuICAgKiBzdWJuZXRzLiBcIlByaXZhdGUgd2l0aCBlZ3Jlc3NcIiBzdWJuZXRzIGFsbG93IGZvciBvdXRib3VuZCB0cmFmZmljIHRvIHRoZSBpbnRlcm5ldFxuICAgKiBidXQgcmVxdWlyZSBhIE5BVCBHYXRld2F5IHdoaWNoIGNvc3RzICQ2NS9tb250aCBmb3IgMiBBWnMuIFwiUHJpdmF0ZSBpc29sYXRlZFwiXG4gICAqIHN1Ym5ldHMgZG8gbm90IHJlcXVpcmUgYSBOQVQgR2F0ZXdheSB0aGVyZWZvcmUgdGhleSBhcmUgdXNlZCBieSBkZWZhdWx0LlxuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9jZGsvYXBpL3YyL2RvY3MvYXdzLWNkay1saWIuYXdzX2VjMi1yZWFkbWUuaHRtbCNzdWJuZXQtdHlwZXNcbiAgICovXG4gIHByaXZhdGUgY3JlYXRlVnBjKCkge1xuICAgIHJldHVybiBuZXcgVnBjKHRoaXMsIFwiVnBjXCIsIHtcbiAgICAgIG1heEF6czogMiwgLy8gbWlnaHQgd2FudCAzIGluIHByb2R1Y3Rpb25cbiAgICAgIHN1Ym5ldENvbmZpZ3VyYXRpb246IFtcbiAgICAgICAgeyBuYW1lOiBcIlB1YmxpY1wiLCBzdWJuZXRUeXBlOiBTdWJuZXRUeXBlLlBVQkxJQyB9LFxuICAgICAgICAvLyBQcml2YXRlV2l0aEVncmVzcyBzdWJuZXQgdXNlcyBOQVQgR2F0ZXdheSB3aGljaCBjb3N0cyAkMzIvYXovbW9udGhcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6IFwiUHJpdmF0ZVdpdGhFZ3Jlc3NcIixcbiAgICAgICAgICBzdWJuZXRUeXBlOiBTdWJuZXRUeXBlLlBSSVZBVEVfV0lUSF9FR1JFU1MsXG4gICAgICAgIH0sXG4gICAgICAgIHsgbmFtZTogXCJQcml2YXRlSXNvbGF0ZWRcIiwgc3VibmV0VHlwZTogU3VibmV0VHlwZS5QUklWQVRFX0lTT0xBVEVEIH0sXG4gICAgICBdLFxuICAgICAgLi4udGhpcy5wcm9wcy5vdmVycmlkZXM/LnZwY1Byb3BzLFxuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEJlc3QgcHJhY3RpY2UgaXMgdG8gdXNlIFZQQyBlbmRwb2ludHMgYmV0d2VlbiBWUEMgYW5kIHNlcnZlcmxlc3MgcmVzb3VyY2VzXG4gICAqIHNvIHRoYXQgdHJhZmZpYyBkb2VzIG5vdCBnbyBvdmVyIHB1YmxpYyBpbnRlcm5ldC5cbiAgICpcbiAgICogV2hpbGUgZ2F0ZXdheSBlbmRwb2ludHMgYXJlIGZyZWUsIGludGVyZmFjZSBlbmRwb2ludHMgKHVzZSBQcml2YXRlTGluaylcbiAgICogY29zdCB+JDcvbW9udGgvYXouXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly93d3cuYWxleGRlYnJpZS5jb20vcG9zdHMvYXdzLWxhbWJkYS12cGMvI3NldC11cC1hLXZwYy1lbmRwb2ludC1mb3IteW91ci1hd3Mtc2VydmljZVxuICAgKi9cbiAgcHJpdmF0ZSBjcmVhdGVWcGNFbmRwb2ludHMoKSB7XG4gICAgaWYgKHRoaXMucHJvcHMubmV4dGpzVHlwZSA9PT0gTmV4dGpzVHlwZS5HTE9CQUxfRlVOQ1RJT05TKSB7XG4gICAgICB0aGlzLnZwYy5hZGRJbnRlcmZhY2VFbmRwb2ludChcIlNxc0ludGVyZmFjZUVuZHBvaW50XCIsIHtcbiAgICAgICAgc2VydmljZTogSW50ZXJmYWNlVnBjRW5kcG9pbnRBd3NTZXJ2aWNlLlNRUyxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIl19