@discordeno/types 21.0.1-next.936a09e → 21.0.1-next.aa5982a

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.
@@ -78,4 +78,4 @@ var AuditLogEvents = /*#__PURE__*/ function(AuditLogEvents) {
78
78
  return AuditLogEvents;
79
79
  }({});
80
80
 
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kaXNjb3JkL2F1ZGl0TG9nLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBUeXBlcyBmb3I6IGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cgKi9cblxuaW1wb3J0IHR5cGUgeyBEaXNjb3JkQXV0b01vZGVyYXRpb25SdWxlIH0gZnJvbSAnLi9hdXRvTW9kZXJhdGlvbi5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZENoYW5uZWwsIERpc2NvcmRPdmVyd3JpdGUsIERpc2NvcmRUaHJlYWRNZXRhZGF0YSB9IGZyb20gJy4vY2hhbm5lbC5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZEVtb2ppIH0gZnJvbSAnLi9lbW9qaS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZEd1aWxkLCBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nLCBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0LCBEaXNjb3JkSW50ZWdyYXRpb24sIERpc2NvcmRNZW1iZXIgfSBmcm9tICcuL2d1aWxkLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkU2NoZWR1bGVkRXZlbnQgfSBmcm9tICcuL2d1aWxkU2NoZWR1bGVkRXZlbnQuanMnXG5pbXBvcnQgdHlwZSB7IERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmQsIERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucyB9IGZyb20gJy4vaW50ZXJhY3Rpb25zLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkSW52aXRlLCBEaXNjb3JkSW52aXRlTWV0YWRhdGEgfSBmcm9tICcuL2ludml0ZS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZFJvbGUgfSBmcm9tICcuL3Blcm1pc3Npb25zLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkU291bmRib2FyZFNvdW5kIH0gZnJvbSAnLi9zb3VuZGJvYXJkLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkU3RhZ2VJbnN0YW5jZSB9IGZyb20gJy4vc3RhZ2VJbnN0YW5jZS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZFN0aWNrZXIgfSBmcm9tICcuL3N0aWNrZXIuanMnXG5pbXBvcnQgdHlwZSB7IERpc2NvcmRVc2VyIH0gZnJvbSAnLi91c2VyLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkV2ViaG9vayB9IGZyb20gJy4vd2ViaG9vay5qcydcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLW9iamVjdC1hdWRpdC1sb2ctc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvcmRBdWRpdExvZyB7XG4gIC8qKiBMaXN0IG9mIGFwcGxpY2F0aW9uIGNvbW1hbmRzIHJlZmVyZW5jZWQgaW4gdGhlIGF1ZGl0IGxvZyAqL1xuICBhcHBsaWNhdGlvbl9jb21tYW5kczogRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZFtdXG4gIC8qKiBMaXN0IG9mIGF1ZGl0IGxvZyBlbnRyaWVzLCBzb3J0ZWQgZnJvbSBtb3N0IHRvIGxlYXN0IHJlY2VudCAqL1xuICBhdWRpdF9sb2dfZW50cmllczogRGlzY29yZEF1ZGl0TG9nRW50cnlbXVxuICAvKiogTGlzdCBvZiBhdXRvIG1vZGVyYXRpb24gcnVsZXMgcmVmZXJlbmNlZCBpbiB0aGUgYXVkaXQgbG9nICovXG4gIGF1dG9fbW9kZXJhdGlvbl9ydWxlczogRGlzY29yZEF1dG9Nb2RlcmF0aW9uUnVsZVtdXG4gIC8qKiBMaXN0IG9mIGd1aWxkIHNjaGVkdWxlZCBldmVudHMgZm91bmQgaW4gdGhlIGF1ZGl0IGxvZyAqL1xuICBndWlsZF9zY2hlZHVsZWRfZXZlbnRzOiBEaXNjb3JkU2NoZWR1bGVkRXZlbnRbXVxuICAvKiogTGlzdCBvZiBwYXJ0aWFsIGludGVncmF0aW9uIG9iamVjdHMgKi9cbiAgaW50ZWdyYXRpb25zOiBQYXJ0aWFsPERpc2NvcmRJbnRlZ3JhdGlvbj5bXVxuICAvKipcbiAgICogTGlzdCBvZiB0aHJlYWRzIGZvdW5kIGluIHRoZSBhdWRpdCBsb2cuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRocmVhZHMgcmVmZXJlbmNlZCBpbiBgVEhSRUFEX0NSRUFURWAgYW5kIGBUSFJFQURfVVBEQVRFYCBldmVudHMgYXJlIGluY2x1ZGVkIGluIHRoZSB0aHJlYWRzIG1hcCBzaW5jZSBhcmNoaXZlZCB0aHJlYWRzIG1pZ2h0IG5vdCBiZSBrZXB0IGluIG1lbW9yeSBieSBjbGllbnRzLlxuICAgKi9cbiAgdGhyZWFkczogRGlzY29yZENoYW5uZWxbXVxuICAvKiogTGlzdCBvZiB1c2VycyBmb3VuZCBpbiB0aGUgYXVkaXQgbG9nICovXG4gIHVzZXJzOiBEaXNjb3JkVXNlcltdXG4gIC8qKiBMaXN0IG9mIHdlYmhvb2tzIGZvdW5kIGluIHRoZSBhdWRpdCBsb2cgKi9cbiAgd2ViaG9va3M6IERpc2NvcmRXZWJob29rW11cbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLWVudHJ5LW9iamVjdC1hdWRpdC1sb2ctZW50cnktc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvcmRBdWRpdExvZ0VudHJ5IHtcbiAgLyoqIElEIG9mIHRoZSBhZmZlY3RlZCBlbnRpdHkgKHdlYmhvb2ssIHVzZXIsIHJvbGUsIGV0Yy4pICovXG4gIHRhcmdldF9pZDogc3RyaW5nIHwgbnVsbFxuICAvKiogQ2hhbmdlcyBtYWRlIHRvIHRoZSBgdGFyZ2V0X2lkYCAqL1xuICBjaGFuZ2VzPzogRGlzY29yZEF1ZGl0TG9nQ2hhbmdlW11cbiAgLyoqIFVzZXIgb3IgYXBwIHRoYXQgbWFkZSB0aGUgY2hhbmdlcyAqL1xuICB1c2VyX2lkOiBzdHJpbmcgfCBudWxsXG4gIC8qKiBJRCBvZiB0aGUgZW50cnkgKi9cbiAgaWQ6IHN0cmluZ1xuICAvKiogVHlwZSBvZiBhY3Rpb24gdGhhdCBvY2N1cnJlZCAqL1xuICBhY3Rpb25fdHlwZTogQXVkaXRMb2dFdmVudHNcbiAgLyoqIEFkZGl0aW9uYWwgaW5mbyBmb3IgY2VydGFpbiBldmVudCB0eXBlcyAqL1xuICBvcHRpb25zPzogRGlzY29yZE9wdGlvbmFsQXVkaXRFbnRyeUluZm9cbiAgLyoqIFJlYXNvbiBmb3IgdGhlIGNoYW5nZSAoMS01MTIgY2hhcmFjdGVycykgKi9cbiAgcmVhc29uPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvYXVkaXQtbG9nI2F1ZGl0LWxvZy1lbnRyeS1vYmplY3QtYXVkaXQtbG9nLWV2ZW50cyAqL1xuZXhwb3J0IGVudW0gQXVkaXRMb2dFdmVudHMge1xuICAvKiogU2VydmVyIHNldHRpbmdzIHdlcmUgdXBkYXRlZCAqL1xuICBHdWlsZFVwZGF0ZSA9IDEsXG4gIC8qKiBDaGFubmVsIHdhcyBjcmVhdGVkICovXG4gIENoYW5uZWxDcmVhdGUgPSAxMCxcbiAgLyoqIENoYW5uZWwgc2V0dGluZ3Mgd2VyZSB1cGRhdGVkICovXG4gIENoYW5uZWxVcGRhdGUsXG4gIC8qKiBDaGFubmVsIHdhcyBkZWxldGVkICovXG4gIENoYW5uZWxEZWxldGUsXG4gIC8qKiBQZXJtaXNzaW9uIG92ZXJ3cml0ZSB3YXMgYWRkZWQgdG8gYSBjaGFubmVsICovXG4gIENoYW5uZWxPdmVyd3JpdGVDcmVhdGUsXG4gIC8qKiBQZXJtaXNzaW9uIG92ZXJ3cml0ZSB3YXMgdXBkYXRlZCBmb3IgYSBjaGFubmVsICovXG4gIENoYW5uZWxPdmVyd3JpdGVVcGRhdGUsXG4gIC8qKiBQZXJtaXNzaW9uIG92ZXJ3cml0ZSB3YXMgZGVsZXRlZCBmcm9tIGEgY2hhbm5lbCAqL1xuICBDaGFubmVsT3ZlcndyaXRlRGVsZXRlLFxuICAvKiogTWVtYmVyIHdhcyByZW1vdmVkIGZyb20gc2VydmVyICovXG4gIE1lbWJlcktpY2sgPSAyMCxcbiAgLyoqIE1lbWJlcnMgd2VyZSBwcnVuZWQgZnJvbSBzZXJ2ZXIgKi9cbiAgTWVtYmVyUHJ1bmUsXG4gIC8qKiBNZW1iZXIgd2FzIGJhbm5lZCBmcm9tIHNlcnZlciAqL1xuICBNZW1iZXJCYW5BZGQsXG4gIC8qKiBTZXJ2ZXIgYmFuIHdhcyBsaWZ0ZWQgZm9yIGEgbWVtYmVyICovXG4gIE1lbWJlckJhblJlbW92ZSxcbiAgLyoqIE1lbWJlciB3YXMgdXBkYXRlZCBpbiBzZXJ2ZXIgKi9cbiAgTWVtYmVyVXBkYXRlLFxuICAvKiogTWVtYmVyIHdhcyBhZGRlZCBvciByZW1vdmVkIGZyb20gYSByb2xlICovXG4gIE1lbWJlclJvbGVVcGRhdGUsXG4gIC8qKiBNZW1iZXIgd2FzIG1vdmVkIHRvIGEgZGlmZmVyZW50IHZvaWNlIGNoYW5uZWwgKi9cbiAgTWVtYmVyTW92ZSxcbiAgLyoqIE1lbWJlciB3YXMgZGlzY29ubmVjdGVkIGZyb20gYSB2b2ljZSBjaGFubmVsICovXG4gIE1lbWJlckRpc2Nvbm5lY3QsXG4gIC8qKiBCb3QgdXNlciB3YXMgYWRkZWQgdG8gc2VydmVyICovXG4gIEJvdEFkZCxcbiAgLyoqIFJvbGUgd2FzIGNyZWF0ZWQgKi9cbiAgUm9sZUNyZWF0ZSA9IDMwLFxuICAvKiogUm9sZSB3YXMgZWRpdGVkICovXG4gIFJvbGVVcGRhdGUsXG4gIC8qKiBSb2xlIHdhcyBkZWxldGVkICovXG4gIFJvbGVEZWxldGUsXG4gIC8qKiBTZXJ2ZXIgaW52aXRlIHdhcyBjcmVhdGVkICovXG4gIEludml0ZUNyZWF0ZSA9IDQwLFxuICAvKiogU2VydmVyIGludml0ZSB3YXMgdXBkYXRlZCAqL1xuICBJbnZpdGVVcGRhdGUsXG4gIC8qKiBTZXJ2ZXIgaW52aXRlIHdhcyBkZWxldGVkICovXG4gIEludml0ZURlbGV0ZSxcbiAgLyoqIFdlYmhvb2sgd2FzIGNyZWF0ZWQgKi9cbiAgV2ViaG9va0NyZWF0ZSA9IDUwLFxuICAvKiogV2ViaG9vayBwcm9wZXJ0aWVzIG9yIGNoYW5uZWwgd2VyZSB1cGRhdGVkICovXG4gIFdlYmhvb2tVcGRhdGUsXG4gIC8qKiBXZWJob29rIHdhcyBkZWxldGVkICovXG4gIFdlYmhvb2tEZWxldGUsXG4gIC8qKiBFbW9qaSB3YXMgY3JlYXRlZCAqL1xuICBFbW9qaUNyZWF0ZSA9IDYwLFxuICAvKiogRW1vamkgbmFtZSB3YXMgdXBkYXRlZCAqL1xuICBFbW9qaVVwZGF0ZSxcbiAgLyoqIEVtb2ppIHdhcyBkZWxldGVkICovXG4gIEVtb2ppRGVsZXRlLFxuICAvKiogU2luZ2xlIG1lc3NhZ2Ugd2FzIGRlbGV0ZWQgKi9cbiAgTWVzc2FnZURlbGV0ZSA9IDcyLFxuICAvKiogTXVsdGlwbGUgbWVzc2FnZXMgd2VyZSBkZWxldGVkICovXG4gIE1lc3NhZ2VCdWxrRGVsZXRlLFxuICAvKiogTWVzc2FnZWQgd2FzIHBpbm5lZCB0byBhIGNoYW5uZWwgKi9cbiAgTWVzc2FnZVBpbixcbiAgLyoqIE1lc3NhZ2Ugd2FzIHVucGlubmVkIGZyb20gYSBjaGFubmVsICovXG4gIE1lc3NhZ2VVbnBpbixcbiAgLyoqIEFwcCB3YXMgYWRkZWQgdG8gc2VydmVyICovXG4gIEludGVncmF0aW9uQ3JlYXRlID0gODAsXG4gIC8qKiBBcHAgd2FzIHVwZGF0ZWQgKGFzIGFuIGV4YW1wbGUsIGl0cyBzY29wZXMgd2VyZSB1cGRhdGVkKSAqL1xuICBJbnRlZ3JhdGlvblVwZGF0ZSxcbiAgLyoqIEFwcCB3YXMgcmVtb3ZlZCBmcm9tIHNlcnZlciAqL1xuICBJbnRlZ3JhdGlvbkRlbGV0ZSxcbiAgLyoqIFN0YWdlIGluc3RhbmNlIHdhcyBjcmVhdGVkIChzdGFnZSBjaGFubmVsIGJlY29tZXMgbGl2ZSkgKi9cbiAgU3RhZ2VJbnN0YW5jZUNyZWF0ZSxcbiAgLyoqIFN0YWdlIGluc3RhY2UgZGV0YWlscyB3ZXJlIHVwZGF0ZWQgKi9cbiAgU3RhZ2VJbnN0YW5jZVVwZGF0ZSxcbiAgLyoqIFN0YWdlIGluc3RhbmNlIHdhcyBkZWxldGVkIChzdGFnZSBjaGFubmVsIG5vIGxvbmdlciBsaXZlKSAqL1xuICBTdGFnZUluc3RhbmNlRGVsZXRlLFxuICAvKiogU3RpY2tlciB3YXMgY3JlYXRlZCAqL1xuICBTdGlja2VyQ3JlYXRlID0gOTAsXG4gIC8qKiBTdGlja2VyIGRldGFpbHMgd2VyZSB1cGRhdGVkICovXG4gIFN0aWNrZXJVcGRhdGUsXG4gIC8qKiBTdGlja2VyIHdhcyBkZWxldGVkICovXG4gIFN0aWNrZXJEZWxldGUsXG4gIC8qKiBFdmVudCB3YXMgY3JlYXRlZCAqL1xuICBHdWlsZFNjaGVkdWxlZEV2ZW50Q3JlYXRlID0gMTAwLFxuICAvKiogRXZlbnQgd2FzIHVwZGF0ZWQgKi9cbiAgR3VpbGRTY2hlZHVsZWRFdmVudFVwZGF0ZSxcbiAgLyoqIEV2ZW50IHdhcyBjYW5jZWxsZWQgKi9cbiAgR3VpbGRTY2hlZHVsZWRFdmVudERlbGV0ZSxcbiAgLyoqIFRocmVhZCB3YXMgY3JlYXRlZCBpbiBhIGNoYW5uZWwgKi9cbiAgVGhyZWFkQ3JlYXRlID0gMTEwLFxuICAvKiogVGhyZWFkIHdhcyB1cGRhdGVkICovXG4gIFRocmVhZFVwZGF0ZSxcbiAgLyoqIFRocmVhZCB3YXMgZGVsZXRlZCAqL1xuICBUaHJlYWREZWxldGUsXG4gIC8qKiBQZXJtaXNzaW9ucyB3ZXJlIHVwZGF0ZWQgZm9yIGEgY29tbWFuZCAqL1xuICBBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uVXBkYXRlID0gMTIxLFxuICAvKiogU291bmRib2FyZCBzb3VuZCB3YXMgY3JlYXRlZCAqL1xuICBTb3VuZGJvYXJkU291bmRDcmVhdGUgPSAxMzAsXG4gIC8qKiBTb3VuZGJvYXJkIHNvdW5kIHdhcyB1cGRhdGVkICovXG4gIFNvdW5kYm9hcmRTb3VuZFVwZGF0ZSxcbiAgLyoqIFNvdW5kYm9hcmQgc291bmQgd2FzIGRlbGV0ZWQgKi9cbiAgU291bmRib2FyZFNvdW5kRGVsZXRlLFxuICAvKiogQXV0byBtb2RlcmF0aW9uIHJ1bGUgd2FzIGNyZWF0ZWQgKi9cbiAgQXV0b01vZGVyYXRpb25SdWxlQ3JlYXRlID0gMTQwLFxuICAvKiogQXV0byBtb2RlcmF0aW9uIHJ1bGUgd2FzIHVwZGF0ZWQgKi9cbiAgQXV0b01vZGVyYXRpb25SdWxlVXBkYXRlLFxuICAvKiogQXV0byBtb2RlcmF0aW9uIHJ1bGUgd2FzIGRlbGV0ZWQgKi9cbiAgQXV0b01vZGVyYXRpb25SdWxlRGVsZXRlLFxuICAvKiogTWVzc2FnZSB3YXMgYmxvY2tlZCBieSBBdXRvTW9kIGFjY29yZGluZyB0byBhIHJ1bGUuICovXG4gIEF1dG9Nb2RlcmF0aW9uQmxvY2tNZXNzYWdlLFxuICAvKiogTWVzc2FnZSB3YXMgZmxhZ2dlZCBieSBBdXRvTW9kICovXG4gIEF1ZG9Nb2RlcmF0aW9uRmxhZ01lc3NhZ2UsXG4gIC8qKiBNZW1iZXIgd2FzIHRpbWVkIG91dCBieSBBdXRvTW9kICovXG4gIEF1dG9Nb2RlcmF0aW9uTWVtYmVyVGltZWRPdXQsXG4gIC8qKiBDcmVhdG9yIG1vbmV0aXphdGlvbiByZXF1ZXN0IHdhcyBjcmVhdGVkICovXG4gIENyZWF0b3JNb25ldGl6YXRpb25SZXF1ZXN0Q3JlYXRlZCA9IDE1MCxcbiAgLyoqIENyZWF0b3IgbW9uZXRpemF0aW9uIHRlcm1zIHdlcmUgYWNjZXB0ZWQgKi9cbiAgQ3JlYXRvck1vbmV0aXphdGlvblRlcm1zQWNjZXB0ZWQsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIFF1ZXN0aW9uIHdhcyBjcmVhdGVkICovXG4gIE9uQm9hcmRpbmdQcm9tcHRDcmVhdGUgPSAxNjMsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIFF1ZXN0aW9uIHdhcyB1cGRhdGVkICovXG4gIE9uQm9hcmRpbmdQcm9tcHRVcGRhdGUsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIFF1ZXN0aW9uIHdhcyBkZWxldGVkICovXG4gIE9uQm9hcmRpbmdQcm9tcHREZWxldGUsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIHdhcyBjcmVhdGVkICovXG4gIE9uQm9hcmRpbmdDcmVhdGUsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIHdhcyB1cGRhdGVkICovXG4gIE9uQm9hcmRpbmdVcGRhdGUsXG4gIC8qKiBHdWlsZCBTZXJ2ZXIgR3VpZGUgd2FzIGNyZWF0ZWQgKi9cbiAgSG9tZVNldHRpbmdzQ3JlYXRlID0gMTkwLFxuICAvKiogR3VpbGQgU2VydmVyIEd1aWRlIHdhcyB1cGRhdGVkICovXG4gIEhvbWVTZXR0aW5nc1VwZGF0ZSxcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLWVudHJ5LW9iamVjdC1hdWRpdC1sb2ctZXZlbnRzICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2UgPVxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkR3VpbGQ+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRDaGFubmVsPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkT3ZlcndyaXRlPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkTWVtYmVyPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZVBhcnRpYWxSb2xlXG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRSb2xlPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZUludml0ZVxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZUludml0ZU1ldGFkYXRhXG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlV2ViaG9va1xuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkRW1vamk+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRJbnRlZ3JhdGlvbj5cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZFN0YWdlSW5zdGFuY2U+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRTdGlja2VyPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkVGhyZWFkTWV0YWRhdGE+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlQXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbnNcbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZFNvdW5kYm9hcmRTb3VuZD5cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZEF1dG9Nb2RlcmF0aW9uUnVsZT5cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZEd1aWxkT25ib2FyZGluZ1Byb21wdD5cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZEd1aWxkT25ib2FyZGluZz5cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLWVudHJ5LW9iamVjdC1vcHRpb25hbC1hdWRpdC1lbnRyeS1pbmZvICovXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvcmRPcHRpb25hbEF1ZGl0RW50cnlJbmZvIHtcbiAgLyoqXG4gICAqIElEIG9mIHRoZSBhcHAgd2hvc2UgcGVybWlzc2lvbnMgd2VyZSB0YXJnZXRlZC5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT2x5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZTogYEFQUExJQ0FUSU9OX0NPTU1BTkRfUEVSTUlTU0lPTl9VUERBVEVgXG4gICAqL1xuICBhcHBsaWNhdGlvbl9pZD86IHN0cmluZ1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgQXV0byBNb2RlcmF0aW9uIHJ1bGUgdGhhdCB3YXMgdHJpZ2dlcmVkLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBBVVRPX01PREVSQVRJT05fQkxPQ0tfTUVTU0FHRWAsIGBBVVRPX01PREVSQVRJT05fRkxBR19UT19DSEFOTkVMYCwgYEFVVE9fTU9ERVJBVElPTl9VU0VSX0NPTU1VTklDQVRJT05fRElTQUJMRURgXG4gICAqL1xuICBhdXRvX21vZGVyYXRpb25fcnVsZV9uYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiBUcmlnZ2VyIHR5cGUgb2YgdGhlIEF1dG8gTW9kZXJhdGlvbiBydWxlIHRoYXQgd2FzIHRyaWdnZXJlZC5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBwcmVzZW50IG9uIGV2ZW50IG9mIHR5cGVzOiBgQVVUT19NT0RFUkFUSU9OX0JMT0NLX01FU1NBR0VgLCBgQVVUT19NT0RFUkFUSU9OX0ZMQUdfVE9fQ0hBTk5FTGAsIGBBVVRPX01PREVSQVRJT05fVVNFUl9DT01NVU5JQ0FUSU9OX0RJU0FCTEVEYFxuICAgKi9cbiAgYXV0b19tb2RlcmF0aW9uX3J1bGVfdHJpZ2dlcl90eXBlPzogc3RyaW5nXG4gIC8qKlxuICAgKiBDaGFubmVsIGluIHdoaWNoIHRoZSBlbnRpdGllcyB3ZXJlIHRhcmdldGVkLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBNRU1CRVJfTU9WRWAsIGBNRVNTQUdFX1BJTmAsIGBNRVNTQUdFX1VOUElOYCwgYE1FU1NBR0VfREVMRVRFYCwgYFNUQUdFX0lOU1RBTkNFX0NSRUFURWAsIGBTVEFHRV9JTlNUQU5DRV9VUERBVEVgLCBgU1RBR0VfSU5TVEFOQ0VfREVMRVRFYFxuICAgKi9cbiAgY2hhbm5lbF9pZD86IHN0cmluZ1xuICAvKipcbiAgICogTnVtYmVyIG9mIGVudGl0aWVzIHRoYXQgd2VyZSB0YXJnZXRlZC5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBwcmVzZW50IG9uIGV2ZW50IG9mIHR5cGVzOiBgTUVTU0FHRV9ERUxFVEVgLCBgTUVTU0FHRV9CVUxLX0RFTEVURWAsIGBNRU1CRVJfRElTQ09OTkVDVGAsIGBNRU1CRVJfTU9WRWBcbiAgICovXG4gIGNvdW50Pzogc3RyaW5nXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZGF5cyBhZnRlciB3aGljaCBpbmFjdGl2ZSBtZW1iZXJzIHdlcmUga2lja2VkLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZTogYE1FTUJFUl9QUlVORWBcbiAgICovXG4gIGRlbGV0ZV9tZW1iZXJfZGF5cz86IHN0cmluZ1xuICAvKipcbiAgICogSUQgb2YgdGhlIG92ZXJ3cml0dGVuIGVudGl0eS5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBwcmVzZW50IG9uIGV2ZW50IG9mIHR5cGVzOiBgQ0hBTk5FTF9PVkVSV1JJVEVfQ1JFQVRFYCwgYENIQU5ORUxfT1ZFUldSSVRFX1VQREFURWAsIGBDSEFOTkVMX09WRVJXUklURV9ERUxFVEVgXG4gICAqL1xuICBpZD86IHN0cmluZ1xuICAvKipcbiAgICogTnVtYmVyIG9mIG1lbWJlcnMgcmVtb3ZlZCBieSB0aGUgcHJ1bmUuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlczogYE1FTUJFUl9QUlVORWBcbiAgICovXG4gIG1lbWJlcnNfcmVtb3ZlZD86IHN0cmluZ1xuICAvKipcbiAgICogSUQgb2YgdGhlIG1lc3NhZ2UgdGhhdCB3YXMgdGFyZ2V0ZWQuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlczogYE1FU1NBR0VfUElOYCwgYE1FU1NBR0VfVU5QSU5gLCBgU1RBR0VfSU5TVEFOQ0VfQ1JFQVRFYCwgYFNUQUdFX0lOU1RBTkNFX1VQREFURWAsIGBTVEFHRV9JTlNUQU5DRV9ERUxFVEVgXG4gICAqL1xuICBtZXNzYWdlX2lkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSByb2xlIGlmIHR5cGUgaXMgXCIwXCIgKG5vdCBwcmVzZW50IGlmIHR5cGUgaXMgXCIxXCIpLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBDSEFOTkVMX09WRVJXUklURV9DUkVBVEVgLCBgQ0hBTk5FTF9PVkVSV1JJVEVfVVBEQVRFYCwgYENIQU5ORUxfT1ZFUldSSVRFX0RFTEVURWBcbiAgICovXG4gIHJvbGVfbmFtZT86IHN0cmluZ1xuICAvKipcbiAgICogVHlwZSBvZiBvdmVyd3JpdHRlbiBlbnRpdHkgLSBcIjBcIiwgZm9yIFwicm9sZVwiLCBvciBcIjFcIiBmb3IgXCJtZW1iZXJcIi5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBwcmVzZW50IG9uIGV2ZW50IG9mIHR5cGVzOiBgQ0hBTk5FTF9PVkVSV1JJVEVfQ1JFQVRFYCwgYENIQU5ORUxfT1ZFUldSSVRFX1VQREFURWAsIGBDSEFOTkVMX09WRVJXUklURV9ERUxFVEVgXG4gICAqL1xuICB0eXBlPzogc3RyaW5nXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBpbnRlZ3JhdGlvbiB3aGljaCBwZXJmb3JtZWQgdGhlIGFjdGlvblxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBNRU1CRVJfS0lDS2AsIGBNRU1CRVJfUk9MRV9VUERBVEVgXG4gICAqL1xuICBpbnRlZ3JhdGlvbl90eXBlPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvYXVkaXQtbG9nI2F1ZGl0LWxvZy1jaGFuZ2Utb2JqZWN0LWF1ZGl0LWxvZy1jaGFuZ2Utc3RydWN0dXJlICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8VD4gPSB7XG4gIFtLIGluIGtleW9mIFRdOiB7XG4gICAgbmV3X3ZhbHVlPzogVFtLXVxuICAgIG9sZF92YWx1ZT86IFRbS11cbiAgICBrZXk6IEtcbiAgfVxufVtrZXlvZiBUXVxuXG4vLyBEb25lIG1hbnVhbGx5IGFzIGl0IGlzIGNsZWFyZXIgaW4gdGhpcyB3YXlcbi8qKiBQYXJ0aWFsIHJvbGUgYXVkaXQgbG9nIGVudHJ5IGNoYW5nZSBleGNlcHRpb24gKi9cbmV4cG9ydCB0eXBlIERpc2NvcmRBdWRpdExvZ0NoYW5nZVBhcnRpYWxSb2xlID0geyBuZXdfdmFsdWU6IHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH1bXTsga2V5OiAnJGFkZCcgfCAnJHJlbW92ZScgfVxuXG4vKipcbiAqIEludml0ZSBhdWRpdCBsb2cgZW50cnkgY2hhbmdlIGV4Y2VwdGlvblxuICpcbiAqIEByZW1hcmtzXG4gKiBXaGlsZSB0aGUgZG9jcyBzYXkgdGhhdCAnY2hhbm5lbC5pZCcgd2lsbCBuZXZlciBleGlzdCwgd2Uga2VlcCBpdCBhcyBpdCBpcyB2ZXJ5IGNvbXBsZXggdG8gcmVtb3ZlLCB0aGUgdXNlciBzaG91bGQgbm90IHVzZSBpdCBhbmQgdXNlIHRoZSBwcm92aWRlZCAnY2hhbm5lbF9pZCcgdmFsdWUgaW5zdGVhZFxuICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VJbnZpdGUgPSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZEludml0ZT4gfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8eyBjaGFubmVsX2lkOiBzdHJpbmcgfT5cblxuLyoqXG4gKiBJbnZpdGUgTWV0YWRhdGEgYXVkaXQgbG9nIGVudHJ5IGNoYW5nZSBleGNlcHRpb25cbiAqXG4gKiBAcmVtYXJrc1xuICogV2hpbGUgdGhlIGRvY3Mgc2F5IHRoYXQgJ2NoYW5uZWwuaWQnIHdpbGwgbmV2ZXIgZXhpc3QsIHdlIGtlZXAgaXQgYXMgaXQgaXMgdmVyeSBjb21wbGV4IHRvIHJlbW92ZSwgdGhlIHVzZXIgc2hvdWxkIG5vdCB1c2UgaXQgYW5kIHVzZSB0aGUgcHJvdmlkZWQgJ2NoYW5uZWxfaWQnIHZhbHVlIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlSW52aXRlTWV0YWRhdGEgPVxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkSW52aXRlTWV0YWRhdGE+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PHsgY2hhbm5lbF9pZDogc3RyaW5nIH0+XG5cbi8qKiBXZWJob29rIGF1ZGl0IGxvZyBlbnRyeSBjaGFuZ2UgZXhjZXB0aW9uICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VXZWJob29rID1cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8T21pdDxEaXNjb3JkV2ViaG9vaywgJ2F2YXRhcic+PlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDx7IGF2YXRhcl9oYXNoOiBEaXNjb3JkV2ViaG9va1snYXZhdGFyJ10gfT5cblxuLy8gRG9uZSBtYW51YWxseSBhcyBpdCBpcyBjbGVhcmVyIGluIHRoaXMgd2F5XG4vKiogQ29tbWFuZCBQZXJtaXNzaW9uIGF1ZGl0IGxvZyBlbnRyeSBjaGFuZ2UgZXhjZXB0aW9uICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucyA9IHtcbiAgbmV3X3ZhbHVlPzogRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb25zXG4gIG9sZF92YWx1ZT86IERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uc1xuICBrZXk6IGAke251bWJlcn1gXG59XG4iXSwibmFtZXMiOlsiQXVkaXRMb2dFdmVudHMiXSwibWFwcGluZ3MiOiJBQUFBLHVFQUF1RTs7OzsrQkE0RDNEQTs7O2VBQUFBOzs7QUFBTCxJQUFBLEFBQUtBLHdDQUFBQTtJQUNWLGlDQUFpQztJQUVqQyx3QkFBd0I7SUFFeEIsa0NBQWtDO0lBRWxDLHdCQUF3QjtJQUV4QixnREFBZ0Q7SUFFaEQsbURBQW1EO0lBRW5ELG9EQUFvRDtJQUVwRCxtQ0FBbUM7SUFFbkMsb0NBQW9DO0lBRXBDLGtDQUFrQztJQUVsQyx1Q0FBdUM7SUFFdkMsaUNBQWlDO0lBRWpDLDRDQUE0QztJQUU1QyxrREFBa0Q7SUFFbEQsaURBQWlEO0lBRWpELGlDQUFpQztJQUVqQyxxQkFBcUI7SUFFckIsb0JBQW9CO0lBRXBCLHFCQUFxQjtJQUVyQiw4QkFBOEI7SUFFOUIsOEJBQThCO0lBRTlCLDhCQUE4QjtJQUU5Qix3QkFBd0I7SUFFeEIsK0NBQStDO0lBRS9DLHdCQUF3QjtJQUV4QixzQkFBc0I7SUFFdEIsMkJBQTJCO0lBRTNCLHNCQUFzQjtJQUV0QiwrQkFBK0I7SUFFL0IsbUNBQW1DO0lBRW5DLHFDQUFxQztJQUVyQyx3Q0FBd0M7SUFFeEMsNEJBQTRCO0lBRTVCLDZEQUE2RDtJQUU3RCxnQ0FBZ0M7SUFFaEMsNERBQTREO0lBRTVELHVDQUF1QztJQUV2Qyw4REFBOEQ7SUFFOUQsd0JBQXdCO0lBRXhCLGlDQUFpQztJQUVqQyx3QkFBd0I7SUFFeEIsc0JBQXNCO0lBRXRCLHNCQUFzQjtJQUV0Qix3QkFBd0I7SUFFeEIsb0NBQW9DO0lBRXBDLHVCQUF1QjtJQUV2Qix1QkFBdUI7SUFFdkIsMkNBQTJDO0lBRTNDLGlDQUFpQztJQUVqQyxpQ0FBaUM7SUFFakMsaUNBQWlDO0lBRWpDLHFDQUFxQztJQUVyQyxxQ0FBcUM7SUFFckMscUNBQXFDO0lBRXJDLHdEQUF3RDtJQUV4RCxtQ0FBbUM7SUFFbkMsb0NBQW9DO0lBRXBDLDZDQUE2QztJQUU3Qyw2Q0FBNkM7SUFFN0MsMENBQTBDO0lBRTFDLDBDQUEwQztJQUUxQywwQ0FBMEM7SUFFMUMsaUNBQWlDO0lBRWpDLGlDQUFpQztJQUVqQyxtQ0FBbUM7SUFFbkMsbUNBQW1DO1dBbkl6QkEifQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9kaXNjb3JkL2F1ZGl0TG9nLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKiBUeXBlcyBmb3I6IGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cgKi9cblxuaW1wb3J0IHR5cGUgeyBEaXNjb3JkQXV0b01vZGVyYXRpb25SdWxlIH0gZnJvbSAnLi9hdXRvTW9kZXJhdGlvbi5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZENoYW5uZWwsIERpc2NvcmRPdmVyd3JpdGUsIERpc2NvcmRUaHJlYWRNZXRhZGF0YSB9IGZyb20gJy4vY2hhbm5lbC5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZEVtb2ppIH0gZnJvbSAnLi9lbW9qaS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZEd1aWxkLCBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nLCBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0LCBEaXNjb3JkSW50ZWdyYXRpb24sIERpc2NvcmRNZW1iZXIgfSBmcm9tICcuL2d1aWxkLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkU2NoZWR1bGVkRXZlbnQgfSBmcm9tICcuL2d1aWxkU2NoZWR1bGVkRXZlbnQuanMnXG5pbXBvcnQgdHlwZSB7IERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmQsIERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucyB9IGZyb20gJy4vaW50ZXJhY3Rpb25zLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkSW52aXRlLCBEaXNjb3JkSW52aXRlTWV0YWRhdGEgfSBmcm9tICcuL2ludml0ZS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZFJvbGUgfSBmcm9tICcuL3Blcm1pc3Npb25zLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkU291bmRib2FyZFNvdW5kIH0gZnJvbSAnLi9zb3VuZGJvYXJkLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkU3RhZ2VJbnN0YW5jZSB9IGZyb20gJy4vc3RhZ2VJbnN0YW5jZS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZFN0aWNrZXIgfSBmcm9tICcuL3N0aWNrZXIuanMnXG5pbXBvcnQgdHlwZSB7IERpc2NvcmRVc2VyIH0gZnJvbSAnLi91c2VyLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkV2ViaG9vayB9IGZyb20gJy4vd2ViaG9vay5qcydcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLW9iamVjdC1hdWRpdC1sb2ctc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvcmRBdWRpdExvZyB7XG4gIC8qKiBMaXN0IG9mIGFwcGxpY2F0aW9uIGNvbW1hbmRzIHJlZmVyZW5jZWQgaW4gdGhlIGF1ZGl0IGxvZyAqL1xuICBhcHBsaWNhdGlvbl9jb21tYW5kczogRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZFtdXG4gIC8qKiBMaXN0IG9mIGF1ZGl0IGxvZyBlbnRyaWVzLCBzb3J0ZWQgZnJvbSBtb3N0IHRvIGxlYXN0IHJlY2VudCAqL1xuICBhdWRpdF9sb2dfZW50cmllczogRGlzY29yZEF1ZGl0TG9nRW50cnlbXVxuICAvKiogTGlzdCBvZiBhdXRvIG1vZGVyYXRpb24gcnVsZXMgcmVmZXJlbmNlZCBpbiB0aGUgYXVkaXQgbG9nICovXG4gIGF1dG9fbW9kZXJhdGlvbl9ydWxlczogRGlzY29yZEF1dG9Nb2RlcmF0aW9uUnVsZVtdXG4gIC8qKiBMaXN0IG9mIGd1aWxkIHNjaGVkdWxlZCBldmVudHMgZm91bmQgaW4gdGhlIGF1ZGl0IGxvZyAqL1xuICBndWlsZF9zY2hlZHVsZWRfZXZlbnRzOiBEaXNjb3JkU2NoZWR1bGVkRXZlbnRbXVxuICAvKiogTGlzdCBvZiBwYXJ0aWFsIGludGVncmF0aW9uIG9iamVjdHMgKi9cbiAgaW50ZWdyYXRpb25zOiBQYXJ0aWFsPERpc2NvcmRJbnRlZ3JhdGlvbj5bXVxuICAvKipcbiAgICogTGlzdCBvZiB0aHJlYWRzIGZvdW5kIGluIHRoZSBhdWRpdCBsb2cuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRocmVhZHMgcmVmZXJlbmNlZCBpbiBgVEhSRUFEX0NSRUFURWAgYW5kIGBUSFJFQURfVVBEQVRFYCBldmVudHMgYXJlIGluY2x1ZGVkIGluIHRoZSB0aHJlYWRzIG1hcCBzaW5jZSBhcmNoaXZlZCB0aHJlYWRzIG1pZ2h0IG5vdCBiZSBrZXB0IGluIG1lbW9yeSBieSBjbGllbnRzLlxuICAgKi9cbiAgdGhyZWFkczogRGlzY29yZENoYW5uZWxbXVxuICAvKiogTGlzdCBvZiB1c2VycyBmb3VuZCBpbiB0aGUgYXVkaXQgbG9nICovXG4gIHVzZXJzOiBEaXNjb3JkVXNlcltdXG4gIC8qKiBMaXN0IG9mIHdlYmhvb2tzIGZvdW5kIGluIHRoZSBhdWRpdCBsb2cgKi9cbiAgd2ViaG9va3M6IERpc2NvcmRXZWJob29rW11cbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLWVudHJ5LW9iamVjdC1hdWRpdC1sb2ctZW50cnktc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIERpc2NvcmRBdWRpdExvZ0VudHJ5IHtcbiAgLyoqIElEIG9mIHRoZSBhZmZlY3RlZCBlbnRpdHkgKHdlYmhvb2ssIHVzZXIsIHJvbGUsIGV0Yy4pICovXG4gIHRhcmdldF9pZDogc3RyaW5nIHwgbnVsbFxuICAvKiogQ2hhbmdlcyBtYWRlIHRvIHRoZSBgdGFyZ2V0X2lkYCAqL1xuICBjaGFuZ2VzPzogRGlzY29yZEF1ZGl0TG9nQ2hhbmdlW11cbiAgLyoqIFVzZXIgb3IgYXBwIHRoYXQgbWFkZSB0aGUgY2hhbmdlcyAqL1xuICB1c2VyX2lkOiBzdHJpbmcgfCBudWxsXG4gIC8qKiBJRCBvZiB0aGUgZW50cnkgKi9cbiAgaWQ6IHN0cmluZ1xuICAvKiogVHlwZSBvZiBhY3Rpb24gdGhhdCBvY2N1cnJlZCAqL1xuICBhY3Rpb25fdHlwZTogQXVkaXRMb2dFdmVudHNcbiAgLyoqIEFkZGl0aW9uYWwgaW5mbyBmb3IgY2VydGFpbiBldmVudCB0eXBlcyAqL1xuICBvcHRpb25zPzogRGlzY29yZE9wdGlvbmFsQXVkaXRFbnRyeUluZm9cbiAgLyoqIFJlYXNvbiBmb3IgdGhlIGNoYW5nZSAoMS01MTIgY2hhcmFjdGVycykgKi9cbiAgcmVhc29uPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvYXVkaXQtbG9nI2F1ZGl0LWxvZy1lbnRyeS1vYmplY3QtYXVkaXQtbG9nLWV2ZW50cyAqL1xuZXhwb3J0IGVudW0gQXVkaXRMb2dFdmVudHMge1xuICAvKiogU2VydmVyIHNldHRpbmdzIHdlcmUgdXBkYXRlZCAqL1xuICBHdWlsZFVwZGF0ZSA9IDEsXG4gIC8qKiBDaGFubmVsIHdhcyBjcmVhdGVkICovXG4gIENoYW5uZWxDcmVhdGUgPSAxMCxcbiAgLyoqIENoYW5uZWwgc2V0dGluZ3Mgd2VyZSB1cGRhdGVkICovXG4gIENoYW5uZWxVcGRhdGUsXG4gIC8qKiBDaGFubmVsIHdhcyBkZWxldGVkICovXG4gIENoYW5uZWxEZWxldGUsXG4gIC8qKiBQZXJtaXNzaW9uIG92ZXJ3cml0ZSB3YXMgYWRkZWQgdG8gYSBjaGFubmVsICovXG4gIENoYW5uZWxPdmVyd3JpdGVDcmVhdGUsXG4gIC8qKiBQZXJtaXNzaW9uIG92ZXJ3cml0ZSB3YXMgdXBkYXRlZCBmb3IgYSBjaGFubmVsICovXG4gIENoYW5uZWxPdmVyd3JpdGVVcGRhdGUsXG4gIC8qKiBQZXJtaXNzaW9uIG92ZXJ3cml0ZSB3YXMgZGVsZXRlZCBmcm9tIGEgY2hhbm5lbCAqL1xuICBDaGFubmVsT3ZlcndyaXRlRGVsZXRlLFxuICAvKiogTWVtYmVyIHdhcyByZW1vdmVkIGZyb20gc2VydmVyICovXG4gIE1lbWJlcktpY2sgPSAyMCxcbiAgLyoqIE1lbWJlcnMgd2VyZSBwcnVuZWQgZnJvbSBzZXJ2ZXIgKi9cbiAgTWVtYmVyUHJ1bmUsXG4gIC8qKiBNZW1iZXIgd2FzIGJhbm5lZCBmcm9tIHNlcnZlciAqL1xuICBNZW1iZXJCYW5BZGQsXG4gIC8qKiBTZXJ2ZXIgYmFuIHdhcyBsaWZ0ZWQgZm9yIGEgbWVtYmVyICovXG4gIE1lbWJlckJhblJlbW92ZSxcbiAgLyoqIE1lbWJlciB3YXMgdXBkYXRlZCBpbiBzZXJ2ZXIgKi9cbiAgTWVtYmVyVXBkYXRlLFxuICAvKiogTWVtYmVyIHdhcyBhZGRlZCBvciByZW1vdmVkIGZyb20gYSByb2xlICovXG4gIE1lbWJlclJvbGVVcGRhdGUsXG4gIC8qKiBNZW1iZXIgd2FzIG1vdmVkIHRvIGEgZGlmZmVyZW50IHZvaWNlIGNoYW5uZWwgKi9cbiAgTWVtYmVyTW92ZSxcbiAgLyoqIE1lbWJlciB3YXMgZGlzY29ubmVjdGVkIGZyb20gYSB2b2ljZSBjaGFubmVsICovXG4gIE1lbWJlckRpc2Nvbm5lY3QsXG4gIC8qKiBCb3QgdXNlciB3YXMgYWRkZWQgdG8gc2VydmVyICovXG4gIEJvdEFkZCxcbiAgLyoqIFJvbGUgd2FzIGNyZWF0ZWQgKi9cbiAgUm9sZUNyZWF0ZSA9IDMwLFxuICAvKiogUm9sZSB3YXMgZWRpdGVkICovXG4gIFJvbGVVcGRhdGUsXG4gIC8qKiBSb2xlIHdhcyBkZWxldGVkICovXG4gIFJvbGVEZWxldGUsXG4gIC8qKiBTZXJ2ZXIgaW52aXRlIHdhcyBjcmVhdGVkICovXG4gIEludml0ZUNyZWF0ZSA9IDQwLFxuICAvKiogU2VydmVyIGludml0ZSB3YXMgdXBkYXRlZCAqL1xuICBJbnZpdGVVcGRhdGUsXG4gIC8qKiBTZXJ2ZXIgaW52aXRlIHdhcyBkZWxldGVkICovXG4gIEludml0ZURlbGV0ZSxcbiAgLyoqIFdlYmhvb2sgd2FzIGNyZWF0ZWQgKi9cbiAgV2ViaG9va0NyZWF0ZSA9IDUwLFxuICAvKiogV2ViaG9vayBwcm9wZXJ0aWVzIG9yIGNoYW5uZWwgd2VyZSB1cGRhdGVkICovXG4gIFdlYmhvb2tVcGRhdGUsXG4gIC8qKiBXZWJob29rIHdhcyBkZWxldGVkICovXG4gIFdlYmhvb2tEZWxldGUsXG4gIC8qKiBFbW9qaSB3YXMgY3JlYXRlZCAqL1xuICBFbW9qaUNyZWF0ZSA9IDYwLFxuICAvKiogRW1vamkgbmFtZSB3YXMgdXBkYXRlZCAqL1xuICBFbW9qaVVwZGF0ZSxcbiAgLyoqIEVtb2ppIHdhcyBkZWxldGVkICovXG4gIEVtb2ppRGVsZXRlLFxuICAvKiogU2luZ2xlIG1lc3NhZ2Ugd2FzIGRlbGV0ZWQgKi9cbiAgTWVzc2FnZURlbGV0ZSA9IDcyLFxuICAvKiogTXVsdGlwbGUgbWVzc2FnZXMgd2VyZSBkZWxldGVkICovXG4gIE1lc3NhZ2VCdWxrRGVsZXRlLFxuICAvKiogTWVzc2FnZWQgd2FzIHBpbm5lZCB0byBhIGNoYW5uZWwgKi9cbiAgTWVzc2FnZVBpbixcbiAgLyoqIE1lc3NhZ2Ugd2FzIHVucGlubmVkIGZyb20gYSBjaGFubmVsICovXG4gIE1lc3NhZ2VVbnBpbixcbiAgLyoqIEFwcCB3YXMgYWRkZWQgdG8gc2VydmVyICovXG4gIEludGVncmF0aW9uQ3JlYXRlID0gODAsXG4gIC8qKiBBcHAgd2FzIHVwZGF0ZWQgKGFzIGFuIGV4YW1wbGUsIGl0cyBzY29wZXMgd2VyZSB1cGRhdGVkKSAqL1xuICBJbnRlZ3JhdGlvblVwZGF0ZSxcbiAgLyoqIEFwcCB3YXMgcmVtb3ZlZCBmcm9tIHNlcnZlciAqL1xuICBJbnRlZ3JhdGlvbkRlbGV0ZSxcbiAgLyoqIFN0YWdlIGluc3RhbmNlIHdhcyBjcmVhdGVkIChzdGFnZSBjaGFubmVsIGJlY29tZXMgbGl2ZSkgKi9cbiAgU3RhZ2VJbnN0YW5jZUNyZWF0ZSxcbiAgLyoqIFN0YWdlIGluc3RhY2UgZGV0YWlscyB3ZXJlIHVwZGF0ZWQgKi9cbiAgU3RhZ2VJbnN0YW5jZVVwZGF0ZSxcbiAgLyoqIFN0YWdlIGluc3RhbmNlIHdhcyBkZWxldGVkIChzdGFnZSBjaGFubmVsIG5vIGxvbmdlciBsaXZlKSAqL1xuICBTdGFnZUluc3RhbmNlRGVsZXRlLFxuICAvKiogU3RpY2tlciB3YXMgY3JlYXRlZCAqL1xuICBTdGlja2VyQ3JlYXRlID0gOTAsXG4gIC8qKiBTdGlja2VyIGRldGFpbHMgd2VyZSB1cGRhdGVkICovXG4gIFN0aWNrZXJVcGRhdGUsXG4gIC8qKiBTdGlja2VyIHdhcyBkZWxldGVkICovXG4gIFN0aWNrZXJEZWxldGUsXG4gIC8qKiBFdmVudCB3YXMgY3JlYXRlZCAqL1xuICBHdWlsZFNjaGVkdWxlZEV2ZW50Q3JlYXRlID0gMTAwLFxuICAvKiogRXZlbnQgd2FzIHVwZGF0ZWQgKi9cbiAgR3VpbGRTY2hlZHVsZWRFdmVudFVwZGF0ZSxcbiAgLyoqIEV2ZW50IHdhcyBjYW5jZWxsZWQgKi9cbiAgR3VpbGRTY2hlZHVsZWRFdmVudERlbGV0ZSxcbiAgLyoqIFRocmVhZCB3YXMgY3JlYXRlZCBpbiBhIGNoYW5uZWwgKi9cbiAgVGhyZWFkQ3JlYXRlID0gMTEwLFxuICAvKiogVGhyZWFkIHdhcyB1cGRhdGVkICovXG4gIFRocmVhZFVwZGF0ZSxcbiAgLyoqIFRocmVhZCB3YXMgZGVsZXRlZCAqL1xuICBUaHJlYWREZWxldGUsXG4gIC8qKiBQZXJtaXNzaW9ucyB3ZXJlIHVwZGF0ZWQgZm9yIGEgY29tbWFuZCAqL1xuICBBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uVXBkYXRlID0gMTIxLFxuICAvKiogU291bmRib2FyZCBzb3VuZCB3YXMgY3JlYXRlZCAqL1xuICBTb3VuZGJvYXJkU291bmRDcmVhdGUgPSAxMzAsXG4gIC8qKiBTb3VuZGJvYXJkIHNvdW5kIHdhcyB1cGRhdGVkICovXG4gIFNvdW5kYm9hcmRTb3VuZFVwZGF0ZSxcbiAgLyoqIFNvdW5kYm9hcmQgc291bmQgd2FzIGRlbGV0ZWQgKi9cbiAgU291bmRib2FyZFNvdW5kRGVsZXRlLFxuICAvKiogQXV0byBtb2RlcmF0aW9uIHJ1bGUgd2FzIGNyZWF0ZWQgKi9cbiAgQXV0b01vZGVyYXRpb25SdWxlQ3JlYXRlID0gMTQwLFxuICAvKiogQXV0byBtb2RlcmF0aW9uIHJ1bGUgd2FzIHVwZGF0ZWQgKi9cbiAgQXV0b01vZGVyYXRpb25SdWxlVXBkYXRlLFxuICAvKiogQXV0byBtb2RlcmF0aW9uIHJ1bGUgd2FzIGRlbGV0ZWQgKi9cbiAgQXV0b01vZGVyYXRpb25SdWxlRGVsZXRlLFxuICAvKiogTWVzc2FnZSB3YXMgYmxvY2tlZCBieSBBdXRvTW9kIGFjY29yZGluZyB0byBhIHJ1bGUuICovXG4gIEF1dG9Nb2RlcmF0aW9uQmxvY2tNZXNzYWdlLFxuICAvKiogTWVzc2FnZSB3YXMgZmxhZ2dlZCBieSBBdXRvTW9kICovXG4gIEF1ZG9Nb2RlcmF0aW9uRmxhZ01lc3NhZ2UsXG4gIC8qKiBNZW1iZXIgd2FzIHRpbWVkIG91dCBieSBBdXRvTW9kICovXG4gIEF1dG9Nb2RlcmF0aW9uTWVtYmVyVGltZWRPdXQsXG4gIC8qKiBDcmVhdG9yIG1vbmV0aXphdGlvbiByZXF1ZXN0IHdhcyBjcmVhdGVkICovXG4gIENyZWF0b3JNb25ldGl6YXRpb25SZXF1ZXN0Q3JlYXRlZCA9IDE1MCxcbiAgLyoqIENyZWF0b3IgbW9uZXRpemF0aW9uIHRlcm1zIHdlcmUgYWNjZXB0ZWQgKi9cbiAgQ3JlYXRvck1vbmV0aXphdGlvblRlcm1zQWNjZXB0ZWQsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIFF1ZXN0aW9uIHdhcyBjcmVhdGVkICovXG4gIE9uQm9hcmRpbmdQcm9tcHRDcmVhdGUgPSAxNjMsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIFF1ZXN0aW9uIHdhcyB1cGRhdGVkICovXG4gIE9uQm9hcmRpbmdQcm9tcHRVcGRhdGUsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIFF1ZXN0aW9uIHdhcyBkZWxldGVkICovXG4gIE9uQm9hcmRpbmdQcm9tcHREZWxldGUsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIHdhcyBjcmVhdGVkICovXG4gIE9uQm9hcmRpbmdDcmVhdGUsXG4gIC8qKiBHdWlsZCBPbmJvYXJkaW5nIHdhcyB1cGRhdGVkICovXG4gIE9uQm9hcmRpbmdVcGRhdGUsXG4gIC8qKiBHdWlsZCBTZXJ2ZXIgR3VpZGUgd2FzIGNyZWF0ZWQgKi9cbiAgSG9tZVNldHRpbmdzQ3JlYXRlID0gMTkwLFxuICAvKiogR3VpbGQgU2VydmVyIEd1aWRlIHdhcyB1cGRhdGVkICovXG4gIEhvbWVTZXR0aW5nc1VwZGF0ZSxcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLWVudHJ5LW9iamVjdC1hdWRpdC1sb2ctZXZlbnRzICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2UgPVxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkR3VpbGQ+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRDaGFubmVsPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkT3ZlcndyaXRlPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkTWVtYmVyPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZVBhcnRpYWxSb2xlXG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRSb2xlPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZUludml0ZVxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZUludml0ZU1ldGFkYXRhXG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlV2ViaG9va1xuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkRW1vamk+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRJbnRlZ3JhdGlvbj5cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZFN0YWdlSW5zdGFuY2U+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRTdGlja2VyPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkU2NoZWR1bGVkRXZlbnQ+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PERpc2NvcmRUaHJlYWRNZXRhZGF0YT5cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uc1xuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkU291bmRib2FyZFNvdW5kPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkQXV0b01vZGVyYXRpb25SdWxlPlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0PlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkR3VpbGRPbmJvYXJkaW5nPlxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2F1ZGl0LWxvZyNhdWRpdC1sb2ctZW50cnktb2JqZWN0LW9wdGlvbmFsLWF1ZGl0LWVudHJ5LWluZm8gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGlzY29yZE9wdGlvbmFsQXVkaXRFbnRyeUluZm8ge1xuICAvKipcbiAgICogSUQgb2YgdGhlIGFwcCB3aG9zZSBwZXJtaXNzaW9ucyB3ZXJlIHRhcmdldGVkLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlOiBgQVBQTElDQVRJT05fQ09NTUFORF9QRVJNSVNTSU9OX1VQREFURWBcbiAgICovXG4gIGFwcGxpY2F0aW9uX2lkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBBdXRvIE1vZGVyYXRpb24gcnVsZSB0aGF0IHdhcyB0cmlnZ2VyZWQuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlczogYEFVVE9fTU9ERVJBVElPTl9CTE9DS19NRVNTQUdFYCwgYEFVVE9fTU9ERVJBVElPTl9GTEFHX1RPX0NIQU5ORUxgLCBgQVVUT19NT0RFUkFUSU9OX1VTRVJfQ09NTVVOSUNBVElPTl9ESVNBQkxFRGBcbiAgICovXG4gIGF1dG9fbW9kZXJhdGlvbl9ydWxlX25hbWU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFRyaWdnZXIgdHlwZSBvZiB0aGUgQXV0byBNb2RlcmF0aW9uIHJ1bGUgdGhhdCB3YXMgdHJpZ2dlcmVkLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBBVVRPX01PREVSQVRJT05fQkxPQ0tfTUVTU0FHRWAsIGBBVVRPX01PREVSQVRJT05fRkxBR19UT19DSEFOTkVMYCwgYEFVVE9fTU9ERVJBVElPTl9VU0VSX0NPTU1VTklDQVRJT05fRElTQUJMRURgXG4gICAqL1xuICBhdXRvX21vZGVyYXRpb25fcnVsZV90cmlnZ2VyX3R5cGU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIENoYW5uZWwgaW4gd2hpY2ggdGhlIGVudGl0aWVzIHdlcmUgdGFyZ2V0ZWQuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlczogYE1FTUJFUl9NT1ZFYCwgYE1FU1NBR0VfUElOYCwgYE1FU1NBR0VfVU5QSU5gLCBgTUVTU0FHRV9ERUxFVEVgLCBgU1RBR0VfSU5TVEFOQ0VfQ1JFQVRFYCwgYFNUQUdFX0lOU1RBTkNFX1VQREFURWAsIGBTVEFHRV9JTlNUQU5DRV9ERUxFVEVgXG4gICAqL1xuICBjaGFubmVsX2lkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZW50aXRpZXMgdGhhdCB3ZXJlIHRhcmdldGVkLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBNRVNTQUdFX0RFTEVURWAsIGBNRVNTQUdFX0JVTEtfREVMRVRFYCwgYE1FTUJFUl9ESVNDT05ORUNUYCwgYE1FTUJFUl9NT1ZFYFxuICAgKi9cbiAgY291bnQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIE51bWJlciBvZiBkYXlzIGFmdGVyIHdoaWNoIGluYWN0aXZlIG1lbWJlcnMgd2VyZSBraWNrZWQuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlOiBgTUVNQkVSX1BSVU5FYFxuICAgKi9cbiAgZGVsZXRlX21lbWJlcl9kYXlzPzogc3RyaW5nXG4gIC8qKlxuICAgKiBJRCBvZiB0aGUgb3ZlcndyaXR0ZW4gZW50aXR5LlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBDSEFOTkVMX09WRVJXUklURV9DUkVBVEVgLCBgQ0hBTk5FTF9PVkVSV1JJVEVfVVBEQVRFYCwgYENIQU5ORUxfT1ZFUldSSVRFX0RFTEVURWBcbiAgICovXG4gIGlkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbWVtYmVycyByZW1vdmVkIGJ5IHRoZSBwcnVuZS5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBwcmVzZW50IG9uIGV2ZW50IG9mIHR5cGVzOiBgTUVNQkVSX1BSVU5FYFxuICAgKi9cbiAgbWVtYmVyc19yZW1vdmVkPzogc3RyaW5nXG4gIC8qKlxuICAgKiBJRCBvZiB0aGUgbWVzc2FnZSB0aGF0IHdhcyB0YXJnZXRlZC5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBwcmVzZW50IG9uIGV2ZW50IG9mIHR5cGVzOiBgTUVTU0FHRV9QSU5gLCBgTUVTU0FHRV9VTlBJTmAsIGBTVEFHRV9JTlNUQU5DRV9DUkVBVEVgLCBgU1RBR0VfSU5TVEFOQ0VfVVBEQVRFYCwgYFNUQUdFX0lOU1RBTkNFX0RFTEVURWBcbiAgICovXG4gIG1lc3NhZ2VfaWQ/OiBzdHJpbmdcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHJvbGUgaWYgdHlwZSBpcyBcIjBcIiAobm90IHByZXNlbnQgaWYgdHlwZSBpcyBcIjFcIikuXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlczogYENIQU5ORUxfT1ZFUldSSVRFX0NSRUFURWAsIGBDSEFOTkVMX09WRVJXUklURV9VUERBVEVgLCBgQ0hBTk5FTF9PVkVSV1JJVEVfREVMRVRFYFxuICAgKi9cbiAgcm9sZV9uYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiBUeXBlIG9mIG92ZXJ3cml0dGVuIGVudGl0eSAtIFwiMFwiLCBmb3IgXCJyb2xlXCIsIG9yIFwiMVwiIGZvciBcIm1lbWJlclwiLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IHByZXNlbnQgb24gZXZlbnQgb2YgdHlwZXM6IGBDSEFOTkVMX09WRVJXUklURV9DUkVBVEVgLCBgQ0hBTk5FTF9PVkVSV1JJVEVfVVBEQVRFYCwgYENIQU5ORUxfT1ZFUldSSVRFX0RFTEVURWBcbiAgICovXG4gIHR5cGU/OiBzdHJpbmdcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIGludGVncmF0aW9uIHdoaWNoIHBlcmZvcm1lZCB0aGUgYWN0aW9uXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgcHJlc2VudCBvbiBldmVudCBvZiB0eXBlczogYE1FTUJFUl9LSUNLYCwgYE1FTUJFUl9ST0xFX1VQREFURWBcbiAgICovXG4gIGludGVncmF0aW9uX3R5cGU/OiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjYXVkaXQtbG9nLWNoYW5nZS1vYmplY3QtYXVkaXQtbG9nLWNoYW5nZS1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCB0eXBlIERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxUPiA9IE5vbk51bGxhYmxlPFxuICB7XG4gICAgW0sgaW4ga2V5b2YgVF06IHtcbiAgICAgIG5ld192YWx1ZT86IFRbS11cbiAgICAgIG9sZF92YWx1ZT86IFRbS11cbiAgICAgIGtleTogS1xuICAgIH1cbiAgfVtrZXlvZiBUXVxuPlxuXG4vLyBEb25lIG1hbnVhbGx5IGFzIGl0IGlzIGNsZWFyZXIgaW4gdGhpcyB3YXlcbi8qKiBQYXJ0aWFsIHJvbGUgYXVkaXQgbG9nIGVudHJ5IGNoYW5nZSBleGNlcHRpb24gKi9cbmV4cG9ydCB0eXBlIERpc2NvcmRBdWRpdExvZ0NoYW5nZVBhcnRpYWxSb2xlID0geyBuZXdfdmFsdWU6IHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH1bXTsga2V5OiAnJGFkZCcgfCAnJHJlbW92ZScgfVxuXG4vKipcbiAqIEludml0ZSBhdWRpdCBsb2cgZW50cnkgY2hhbmdlIGV4Y2VwdGlvblxuICpcbiAqIEByZW1hcmtzXG4gKiBXaGlsZSB0aGUgZG9jcyBzYXkgdGhhdCAnY2hhbm5lbC5pZCcgd2lsbCBuZXZlciBleGlzdCwgd2Uga2VlcCBpdCBhcyBpdCBpcyB2ZXJ5IGNvbXBsZXggdG8gcmVtb3ZlLCB0aGUgdXNlciBzaG91bGQgbm90IHVzZSBpdCBhbmQgdXNlIHRoZSBwcm92aWRlZCAnY2hhbm5lbF9pZCcgdmFsdWUgaW5zdGVhZFxuICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VJbnZpdGUgPSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8RGlzY29yZEludml0ZT4gfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8eyBjaGFubmVsX2lkOiBzdHJpbmcgfT5cblxuLyoqXG4gKiBJbnZpdGUgTWV0YWRhdGEgYXVkaXQgbG9nIGVudHJ5IGNoYW5nZSBleGNlcHRpb25cbiAqXG4gKiBAcmVtYXJrc1xuICogV2hpbGUgdGhlIGRvY3Mgc2F5IHRoYXQgJ2NoYW5uZWwuaWQnIHdpbGwgbmV2ZXIgZXhpc3QsIHdlIGtlZXAgaXQgYXMgaXQgaXMgdmVyeSBjb21wbGV4IHRvIHJlbW92ZSwgdGhlIHVzZXIgc2hvdWxkIG5vdCB1c2UgaXQgYW5kIHVzZSB0aGUgcHJvdmlkZWQgJ2NoYW5uZWxfaWQnIHZhbHVlIGluc3RlYWRcbiAqL1xuZXhwb3J0IHR5cGUgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlSW52aXRlTWV0YWRhdGEgPVxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDxEaXNjb3JkSW52aXRlTWV0YWRhdGE+XG4gIHwgRGlzY29yZEF1ZGl0TG9nQ2hhbmdlT2JqZWN0PHsgY2hhbm5lbF9pZDogc3RyaW5nIH0+XG5cbi8qKiBXZWJob29rIGF1ZGl0IGxvZyBlbnRyeSBjaGFuZ2UgZXhjZXB0aW9uICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VXZWJob29rID1cbiAgfCBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VPYmplY3Q8T21pdDxEaXNjb3JkV2ViaG9vaywgJ2F2YXRhcic+PlxuICB8IERpc2NvcmRBdWRpdExvZ0NoYW5nZU9iamVjdDx7IGF2YXRhcl9oYXNoOiBEaXNjb3JkV2ViaG9va1snYXZhdGFyJ10gfT5cblxuLy8gRG9uZSBtYW51YWxseSBhcyBpdCBpcyBjbGVhcmVyIGluIHRoaXMgd2F5XG4vKiogQ29tbWFuZCBQZXJtaXNzaW9uIGF1ZGl0IGxvZyBlbnRyeSBjaGFuZ2UgZXhjZXB0aW9uICovXG5leHBvcnQgdHlwZSBEaXNjb3JkQXVkaXRMb2dDaGFuZ2VBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9ucyA9IHtcbiAgbmV3X3ZhbHVlPzogRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZFBlcm1pc3Npb25zXG4gIG9sZF92YWx1ZT86IERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uc1xuICBrZXk6IGAke251bWJlcn1gXG59XG4iXSwibmFtZXMiOlsiQXVkaXRMb2dFdmVudHMiXSwibWFwcGluZ3MiOiJBQUFBLHVFQUF1RTs7OzsrQkE0RDNEQTs7O2VBQUFBOzs7QUFBTCxJQUFBLEFBQUtBLHdDQUFBQTtJQUNWLGlDQUFpQztJQUVqQyx3QkFBd0I7SUFFeEIsa0NBQWtDO0lBRWxDLHdCQUF3QjtJQUV4QixnREFBZ0Q7SUFFaEQsbURBQW1EO0lBRW5ELG9EQUFvRDtJQUVwRCxtQ0FBbUM7SUFFbkMsb0NBQW9DO0lBRXBDLGtDQUFrQztJQUVsQyx1Q0FBdUM7SUFFdkMsaUNBQWlDO0lBRWpDLDRDQUE0QztJQUU1QyxrREFBa0Q7SUFFbEQsaURBQWlEO0lBRWpELGlDQUFpQztJQUVqQyxxQkFBcUI7SUFFckIsb0JBQW9CO0lBRXBCLHFCQUFxQjtJQUVyQiw4QkFBOEI7SUFFOUIsOEJBQThCO0lBRTlCLDhCQUE4QjtJQUU5Qix3QkFBd0I7SUFFeEIsK0NBQStDO0lBRS9DLHdCQUF3QjtJQUV4QixzQkFBc0I7SUFFdEIsMkJBQTJCO0lBRTNCLHNCQUFzQjtJQUV0QiwrQkFBK0I7SUFFL0IsbUNBQW1DO0lBRW5DLHFDQUFxQztJQUVyQyx3Q0FBd0M7SUFFeEMsNEJBQTRCO0lBRTVCLDZEQUE2RDtJQUU3RCxnQ0FBZ0M7SUFFaEMsNERBQTREO0lBRTVELHVDQUF1QztJQUV2Qyw4REFBOEQ7SUFFOUQsd0JBQXdCO0lBRXhCLGlDQUFpQztJQUVqQyx3QkFBd0I7SUFFeEIsc0JBQXNCO0lBRXRCLHNCQUFzQjtJQUV0Qix3QkFBd0I7SUFFeEIsb0NBQW9DO0lBRXBDLHVCQUF1QjtJQUV2Qix1QkFBdUI7SUFFdkIsMkNBQTJDO0lBRTNDLGlDQUFpQztJQUVqQyxpQ0FBaUM7SUFFakMsaUNBQWlDO0lBRWpDLHFDQUFxQztJQUVyQyxxQ0FBcUM7SUFFckMscUNBQXFDO0lBRXJDLHdEQUF3RDtJQUV4RCxtQ0FBbUM7SUFFbkMsb0NBQW9DO0lBRXBDLDZDQUE2QztJQUU3Qyw2Q0FBNkM7SUFFN0MsMENBQTBDO0lBRTFDLDBDQUEwQztJQUUxQywwQ0FBMEM7SUFFMUMsaUNBQWlDO0lBRWpDLGlDQUFpQztJQUVqQyxtQ0FBbUM7SUFFbkMsbUNBQW1DO1dBbkl6QkEifQ==
@@ -14,4 +14,4 @@ var CreateEntitlementOwnerType = /*#__PURE__*/ function(CreateEntitlementOwnerTy
14
14
  return CreateEntitlementOwnerType;
15
15
  }({});
16
16
 
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaXNjb3JkZW5vLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQXBwbGljYXRpb25GbGFncyxcbiAgRGlzY29yZEFwcGxpY2F0aW9uRXZlbnRXZWJob29rU3RhdHVzLFxuICBEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUsXG4gIERpc2NvcmRJbnN0YWxsUGFyYW1zLFxufSBmcm9tICcuL2Rpc2NvcmQvYXBwbGljYXRpb24uanMnXG5pbXBvcnQgdHlwZSB7IEF1ZGl0TG9nRXZlbnRzIH0gZnJvbSAnLi9kaXNjb3JkL2F1ZGl0TG9nLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBdXRvTW9kZXJhdGlvbkFjdGlvblR5cGUsXG4gIEF1dG9Nb2RlcmF0aW9uRXZlbnRUeXBlcyxcbiAgQXV0b01vZGVyYXRpb25UcmlnZ2VyVHlwZXMsXG4gIERpc2NvcmRBdXRvTW9kZXJhdGlvblJ1bGVUcmlnZ2VyTWV0YWRhdGFQcmVzZXRzLFxufSBmcm9tICcuL2Rpc2NvcmQvYXV0b01vZGVyYXRpb24uanMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5uZWxUeXBlcyxcbiAgRGlzY29yZENoYW5uZWwsXG4gIERpc2NvcmREZWZhdWx0UmVhY3Rpb25FbW9qaSxcbiAgRGlzY29yZEZvcnVtVGFnLFxuICBGb3J1bUxheW91dCxcbiAgT3ZlcndyaXRlVHlwZXMsXG4gIFNvcnRPcmRlclR5cGVzLFxuICBWaWRlb1F1YWxpdHlNb2Rlcyxcbn0gZnJvbSAnLi9kaXNjb3JkL2NoYW5uZWwuanMnXG5pbXBvcnQgdHlwZSB7XG4gIEJ1dHRvblN0eWxlcyxcbiAgRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0sXG4gIERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbSxcbiAgTWVzc2FnZUNvbXBvbmVudFR5cGVzLFxuICBTZXBhcmF0b3JTcGFjaW5nU2l6ZSxcbiAgVGV4dFN0eWxlcyxcbn0gZnJvbSAnLi9kaXNjb3JkL2NvbXBvbmVudHMuanMnXG5pbXBvcnQgdHlwZSB7XG4gIERlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9uTGV2ZWxzLFxuICBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nTW9kZSxcbiAgRGlzY29yZEd1aWxkT25ib2FyZGluZ1Byb21wdCxcbiAgRXhwbGljaXRDb250ZW50RmlsdGVyTGV2ZWxzLFxuICBHdWlsZEZlYXR1cmVzLFxuICBTeXN0ZW1DaGFubmVsRmxhZ3MsXG4gIFZlcmlmaWNhdGlvbkxldmVscyxcbn0gZnJvbSAnLi9kaXNjb3JkL2d1aWxkLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkU2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZSxcbiAgU2NoZWR1bGVkRXZlbnRFbnRpdHlUeXBlLFxuICBTY2hlZHVsZWRFdmVudFByaXZhY3lMZXZlbCxcbiAgU2NoZWR1bGVkRXZlbnRTdGF0dXMsXG59IGZyb20gJy4vZGlzY29yZC9ndWlsZFNjaGVkdWxlZEV2ZW50LmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcyxcbiAgRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbixcbiAgRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbkNob2ljZSxcbiAgRGlzY29yZEludGVyYWN0aW9uQ29udGV4dFR5cGUsXG4gIERpc2NvcmRJbnRlcmFjdGlvbkVudHJ5UG9pbnRDb21tYW5kSGFuZGxlclR5cGUsXG4gIEludGVyYWN0aW9uUmVzcG9uc2VUeXBlcyxcbn0gZnJvbSAnLi9kaXNjb3JkL2ludGVyYWN0aW9ucy5qcydcbmltcG9ydCB0eXBlIHsgVGFyZ2V0VHlwZXMgfSBmcm9tICcuL2Rpc2NvcmQvaW52aXRlLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBbGxvd2VkTWVudGlvbnNUeXBlcyxcbiAgRGlzY29yZEF0dGFjaG1lbnQsXG4gIERpc2NvcmRFbWJlZCxcbiAgRGlzY29yZE1lc3NhZ2VSZWZlcmVuY2VUeXBlLFxuICBEaXNjb3JkUmVhY3Rpb25UeXBlLFxuICBNZXNzYWdlRmxhZ3MsXG59IGZyb20gJy4vZGlzY29yZC9tZXNzYWdlLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkUm9sZSwgUGVybWlzc2lvblN0cmluZ3MgfSBmcm9tICcuL2Rpc2NvcmQvcGVybWlzc2lvbnMuanMnXG5pbXBvcnQgdHlwZSB7IERpc2NvcmRQb2xsQW5zd2VyLCBEaXNjb3JkUG9sbExheW91dFR5cGUsIERpc2NvcmRQb2xsTWVkaWEgfSBmcm9tICcuL2Rpc2NvcmQvcG9sbC5qcydcbmltcG9ydCB0eXBlIHsgTG9jYWxpemF0aW9uIH0gZnJvbSAnLi9kaXNjb3JkL3JlZmVyZW5jZS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZFdlYmhvb2tFdmVudFR5cGUgfSBmcm9tICcuL2Rpc2NvcmQvd2ViaG9va0V2ZW50cy5qcydcbmltcG9ydCB0eXBlIHsgQmlnU3RyaW5nLCBDYW1lbGl6ZSB9IGZyb20gJy4vc2hhcmVkLmpzJ1xuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjY3JlYXRlLW1lc3NhZ2UtanNvbmZvcm0tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZU1lc3NhZ2VPcHRpb25zIHtcbiAgLyoqIFRoZSBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gIGNvbnRlbnQ/OiBzdHJpbmdcbiAgLyoqIENhbiBiZSB1c2VkIHRvIHZlcmlmeSBhIG1lc3NhZ2Ugd2FzIHNlbnQgKHVwIHRvIDI1IGNoYXJhY3RlcnMpLiBWYWx1ZSB3aWxsIGFwcGVhciBpbiB0aGUgTWVzc2FnZSBDcmVhdGUgZXZlbnQuICovXG4gIG5vbmNlPzogc3RyaW5nIHwgbnVtYmVyXG4gIC8qKiB0cnVlIGlmIHRoaXMgaXMgYSBUVFMgbWVzc2FnZSAqL1xuICB0dHM/OiBib29sZWFuXG4gIC8qKiBFbWJlZGRlZCBgcmljaGAgY29udGVudCAodXAgdG8gNjAwMCBjaGFyYWN0ZXJzKSAqL1xuICBlbWJlZHM/OiBDYW1lbGl6ZTxEaXNjb3JkRW1iZWQ+W11cbiAgLyoqIEFsbG93ZWQgbWVudGlvbnMgZm9yIHRoZSBtZXNzYWdlICovXG4gIGFsbG93ZWRNZW50aW9ucz86IEFsbG93ZWRNZW50aW9uc1xuICAvKiogSW5jbHVkZSB0byBtYWtlIHlvdXIgbWVzc2FnZSBhIHJlcGx5IG9yIGEgZm9yd2FyZCAqL1xuICBtZXNzYWdlUmVmZXJlbmNlPzoge1xuICAgIC8qKiBUeXBlIG9mIHJlZmVyZW5jZSAqL1xuICAgIHR5cGU/OiBEaXNjb3JkTWVzc2FnZVJlZmVyZW5jZVR5cGVcbiAgICAvKiogaWQgb2YgdGhlIG9yaWdpbmF0aW5nIG1lc3NhZ2UgKi9cbiAgICBtZXNzYWdlSWQ/OiBCaWdTdHJpbmdcbiAgICAvKipcbiAgICAgKiBpZCBvZiB0aGUgb3JpZ2luYXRpbmcgbWVzc2FnZSdzIGNoYW5uZWxcbiAgICAgKiBOb3RlOiBgY2hhbm5lbF9pZGAgaXMgb3B0aW9uYWwgd2hlbiBjcmVhdGluZyBhIHJlcGx5LCBidXQgd2lsbCBhbHdheXMgYmUgcHJlc2VudCB3aGVuIHJlY2VpdmluZyBhbiBldmVudC9yZXNwb25zZSB0aGF0IGluY2x1ZGVzIHRoaXMgZGF0YSBtb2RlbC5cbiAgICAgKi9cbiAgICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbiAgICAvKiogaWQgb2YgdGhlIG9yaWdpbmF0aW5nIG1lc3NhZ2UncyBndWlsZCAqL1xuICAgIGd1aWxkSWQ/OiBCaWdTdHJpbmdcbiAgICAvKiogV2hlbiBzZW5kaW5nLCB3aGV0aGVyIHRvIGVycm9yIGlmIHRoZSByZWZlcmVuY2VkIG1lc3NhZ2UgZG9lc24ndCBleGlzdCBpbnN0ZWFkIG9mIHNlbmRpbmcgYXMgYSBub3JtYWwgKG5vbi1yZXBseSkgbWVzc2FnZSwgZGVmYXVsdCB0cnVlICovXG4gICAgZmFpbElmTm90RXhpc3RzPzogYm9vbGVhblxuICB9XG4gIGF0dGFjaG1lbnRzPzogKFBpY2s8Q2FtZWxpemU8RGlzY29yZEF0dGFjaG1lbnQ+LCAnaWQnPiAmIE9taXQ8UGFydGlhbDxDYW1lbGl6ZTxEaXNjb3JkQXR0YWNobWVudD4+LCAnaWQnPilbXVxuICAvKiogVGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlcyBiZWluZyBzZW50ICovXG4gIGZpbGVzPzogRmlsZUNvbnRlbnRbXVxuICAvKiogVGhlIGNvbXBvbmVudHMgeW91IHdvdWxkIGxpa2UgdG8gaGF2ZSBzZW50IGluIHRoaXMgbWVzc2FnZSAqL1xuICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbiAgLyoqIElEcyBvZiB1cCB0byAzIHN0aWNrZXJzIGluIHRoZSBzZXJ2ZXIgdG8gc2VuZCBpbiB0aGUgbWVzc2FnZSAqL1xuICBzdGlja2VySWRzPzogW0JpZ1N0cmluZ10gfCBbQmlnU3RyaW5nLCBCaWdTdHJpbmddIHwgW0JpZ1N0cmluZywgQmlnU3RyaW5nLCBCaWdTdHJpbmddXG4gIC8qKiBNZXNzYWdlIGZsYWdzIGNvbWJpbmVkIGFzIGEgYml0ZmllbGQsIG9ubHkgU1VQUFJFU1NfRU1CRURTLCBTVVBQUkVTU19OT1RJRklDQVRJT05TLCBJU19DT01QT05FTlRTX1YyIGNhbiBiZSBzZXQgKi9cbiAgZmxhZ3M/OiBNZXNzYWdlRmxhZ3NcbiAgLyoqIElmIHRydWUgYW5kIG5vbmNlIGlzIHByZXNlbnQsIGl0IHdpbGwgYmUgY2hlY2tlZCBmb3IgdW5pcXVlbmVzcyBpbiB0aGUgcGFzdCBmZXcgbWludXRlcy4gSWYgYW5vdGhlciBtZXNzYWdlIHdhcyBjcmVhdGVkIGJ5IHRoZSBzYW1lIGF1dGhvciB3aXRoIHRoZSBzYW1lIG5vbmNlLCB0aGF0IG1lc3NhZ2Ugd2lsbCBiZSByZXR1cm5lZCBhbmQgbm8gbmV3IG1lc3NhZ2Ugd2lsbCBiZSBjcmVhdGVkLiAqL1xuICBlbmZvcmNlTm9uY2U/OiBib29sZWFuXG4gIC8qKiBBIHBvbGwgb2JqZWN0ICovXG4gIHBvbGw/OiBDcmVhdGVQb2xsXG59XG5cbmV4cG9ydCB0eXBlIE1lc3NhZ2VDb21wb25lbnRzID0gTWVzc2FnZUNvbXBvbmVudFtdXG5leHBvcnQgdHlwZSBNZXNzYWdlQ29tcG9uZW50ID1cbiAgfCBBY3Rpb25Sb3dcbiAgfCBCdXR0b25Db21wb25lbnRcbiAgfCBUZXh0SW5wdXRDb21wb25lbnRcbiAgfCBTdHJpbmdTZWxlY3RDb21wb25lbnRcbiAgfCBDaGFubmVsU2VsZWN0Q29tcG9uZW50XG4gIHwgUm9sZVNlbGVjdENvbXBvbmVudFxuICB8IFVzZXJTZWxlY3RDb21wb25lbnRcbiAgfCBNZW50aW9uYWJsZVNlbGVjdENvbXBvbmVudFxuICB8IFNlY3Rpb25Db21wb25lbnRcbiAgfCBUZXh0RGlzcGxheUNvbXBvbmVudFxuICB8IFRodW1ibmFpbENvbXBvbmVudFxuICB8IE1lZGlhR2FsbGVyeUNvbXBvbmVudFxuICB8IFNlcGFyYXRvckNvbXBvbmVudFxuICB8IENvbnRhaW5lckNvbXBvbmVudFxuICB8IEZpbGVDb21wb25lbnRcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2NvbXBvbmVudHMvcmVmZXJlbmNlI2FuYXRvbXktb2YtYS1jb21wb25lbnQgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUNvbXBvbmVudCB7XG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgY29tcG9uZW50ICovXG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlc1xuICAvKiogMzIgYml0IGludGVnZXIgdXNlZCBhcyBhbiBvcHRpb25hbCBpZGVudGlmaWVyIGZvciBjb21wb25lbnQgKi9cbiAgaWQ/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2NvbXBvbmVudHMvcmVmZXJlbmNlI2FjdGlvbi1yb3ctYWN0aW9uLXJvdy1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uUm93IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3dcblxuICAvKipcbiAgICogVGhlIGNvbXBvbmVudHMgaW4gdGhpcyByb3dcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVXAgdG8gNSBidXR0b24gY29tcG9uZW50cywgYSBzaW5nbGUgc2VsZWN0IGNvbXBvbmVudCBvciBhIHNpbmdsZSB0ZXh0IGlucHV0IGNvbXBvbmVudFxuICAgKi9cbiAgY29tcG9uZW50czogKFxuICAgIHwgQnV0dG9uQ29tcG9uZW50XG4gICAgfCBTdHJpbmdTZWxlY3RDb21wb25lbnRcbiAgICB8IFVzZXJTZWxlY3RDb21wb25lbnRcbiAgICB8IFJvbGVTZWxlY3RDb21wb25lbnRcbiAgICB8IE1lbnRpb25hYmxlU2VsZWN0Q29tcG9uZW50XG4gICAgfCBDaGFubmVsU2VsZWN0Q29tcG9uZW50XG4gICAgfCBUZXh0SW5wdXRDb21wb25lbnRcbiAgKVtdXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNidXR0b24tYnV0dG9uLXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkJ1dHRvblxuXG4gIC8qKiBmb3Igd2hhdCB0aGUgYnV0dG9uIHNheXMgKG1heCA4MCBjaGFyYWN0ZXJzKSAqL1xuICBsYWJlbD86IHN0cmluZ1xuICAvKiogYSBkZXYtZGVmaW5lZCB1bmlxdWUgc3RyaW5nIHNlbnQgb24gY2xpY2sgKG1heCAxMDAgY2hhcmFjdGVycykuIHR5cGUgNSBMaW5rIGJ1dHRvbnMgY2FuIG5vdCBoYXZlIGEgY3VzdG9tX2lkICovXG4gIGN1c3RvbUlkPzogc3RyaW5nXG4gIC8qKiBGb3IgZGlmZmVyZW50IHN0eWxlcy9jb2xvcnMgb2YgdGhlIGJ1dHRvbnMgKi9cbiAgc3R5bGU6IEJ1dHRvblN0eWxlc1xuICAvKiogRW1vamkgb2JqZWN0IHRoYXQgaW5jbHVkZXMgZmllbGRzIG9mIG5hbWUsIGlkLCBhbmQgYW5pbWF0ZWQgc3VwcG9ydGluZyB1bmljb2RlIGFuZCBjdXN0b20gZW1vamlzLiAqL1xuICBlbW9qaT86IHtcbiAgICAvKiogRW1vamkgaWQgKi9cbiAgICBpZD86IGJpZ2ludFxuICAgIC8qKiBFbW9qaSBuYW1lICovXG4gICAgbmFtZT86IHN0cmluZ1xuICAgIC8qKiBXaGV0aGVyIHRoaXMgZW1vamkgaXMgYW5pbWF0ZWQgKi9cbiAgICBhbmltYXRlZD86IGJvb2xlYW5cbiAgfVxuICAvKiogSWRlbnRpZmllciBmb3IgYSBwdXJjaGFzYWJsZSBTS1UsIG9ubHkgYXZhaWxhYmxlIHdoZW4gdXNpbmcgcHJlbWl1bS1zdHlsZSBidXR0b25zICovXG4gIHNrdUlkPzogQmlnU3RyaW5nXG4gIC8qKiBvcHRpb25hbCB1cmwgZm9yIGxpbmstc3R5bGUgYnV0dG9ucyB0aGF0IGNhbiBuYXZpZ2F0ZSBhIHVzZXIgdG8gdGhlIHdlYi4gT25seSB0eXBlIDUgTGluayBidXR0b25zIGNhbiBoYXZlIGEgdXJsICovXG4gIHVybD86IHN0cmluZ1xuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBidXR0b24gaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNzdHJpbmctc2VsZWN0LXN0cmluZy1zZWxlY3Qtc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ1NlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU3RyaW5nU2VsZWN0XG5cbiAgLyoqIEEgY3VzdG9tIGlkZW50aWZpZXIgZm9yIHRoaXMgY29tcG9uZW50LiBNYXhpbXVtIDEwMCBjaGFyYWN0ZXJzLiAqL1xuICBjdXN0b21JZDogc3RyaW5nXG4gIC8qKiBBIGN1c3RvbSBwbGFjZWhvbGRlciB0ZXh0IGlmIG5vdGhpbmcgaXMgc2VsZWN0ZWQuIE1heGltdW0gMTUwIGNoYXJhY3RlcnMuICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIC8qKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBtdXN0IGJlIHNlbGVjdGVkLiBEZWZhdWx0IDEuIEJldHdlZW4gMS0yNS4gKi9cbiAgbWluVmFsdWVzPzogbnVtYmVyXG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtYXhWYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFRoZSBjaG9pY2VzISBNYXhpbXVtIG9mIDI1IGl0ZW1zLiAqL1xuICBvcHRpb25zOiBTZWxlY3RPcHRpb25bXVxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBzZWxlY3QgaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSN1c2VyLXNlbGVjdC11c2VyLXNlbGVjdC1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVXNlclNlbGVjdFxuXG4gIC8qKiBBIGN1c3RvbSBpZGVudGlmaWVyIGZvciB0aGlzIGNvbXBvbmVudC4gTWF4aW11bSAxMDAgY2hhcmFjdGVycy4gKi9cbiAgY3VzdG9tSWQ6IHN0cmluZ1xuICAvKiogQSBjdXN0b20gcGxhY2Vob2xkZXIgdGV4dCBpZiBub3RoaW5nIGlzIHNlbGVjdGVkLiBNYXhpbXVtIDE1MCBjaGFyYWN0ZXJzLiAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKipcbiAgICogTGlzdCBvZiBkZWZhdWx0IHZhbHVlcyBmb3IgYXV0by1wb3B1bGF0ZWQgc2VsZWN0IG1lbnUgY29tcG9uZW50c1xuICAgKiBUaGUgbnVtYmVyIG9mIGRlZmF1bHQgdmFsdWVzIG11c3QgYmUgaW4gdGhlIHJhbmdlIGRlZmluZWQgYnkgbWluVmFsdWVzIGFuZCBtYXhWYWx1ZXNcbiAgICovXG4gIGRlZmF1bHRWYWx1ZXM/OiBTZWxlY3RNZW51RGVmYXVsdFZhbHVlW11cbiAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IG11c3QgYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtaW5WYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IGNhbiBiZSBzZWxlY3RlZC4gRGVmYXVsdCAxLiBCZXR3ZWVuIDEtMjUuICovXG4gIG1heFZhbHVlcz86IG51bWJlclxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBzZWxlY3QgaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNyb2xlLXNlbGVjdC1yb2xlLXNlbGVjdC1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuUm9sZVNlbGVjdFxuXG4gIC8qKiBBIGN1c3RvbSBpZGVudGlmaWVyIGZvciB0aGlzIGNvbXBvbmVudC4gTWF4aW11bSAxMDAgY2hhcmFjdGVycy4gKi9cbiAgY3VzdG9tSWQ6IHN0cmluZ1xuICAvKiogQSBjdXN0b20gcGxhY2Vob2xkZXIgdGV4dCBpZiBub3RoaW5nIGlzIHNlbGVjdGVkLiBNYXhpbXVtIDE1MCBjaGFyYWN0ZXJzLiAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKipcbiAgICogTGlzdCBvZiBkZWZhdWx0IHZhbHVlcyBmb3IgYXV0by1wb3B1bGF0ZWQgc2VsZWN0IG1lbnUgY29tcG9uZW50c1xuICAgKiBUaGUgbnVtYmVyIG9mIGRlZmF1bHQgdmFsdWVzIG11c3QgYmUgaW4gdGhlIHJhbmdlIGRlZmluZWQgYnkgbWluVmFsdWVzIGFuZCBtYXhWYWx1ZXNcbiAgICovXG4gIGRlZmF1bHRWYWx1ZXM/OiBTZWxlY3RNZW51RGVmYXVsdFZhbHVlW11cbiAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IG11c3QgYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtaW5WYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IGNhbiBiZSBzZWxlY3RlZC4gRGVmYXVsdCAxLiBCZXR3ZWVuIDEtMjUuICovXG4gIG1heFZhbHVlcz86IG51bWJlclxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBzZWxlY3QgaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNtZW50aW9uYWJsZS1zZWxlY3QtbWVudGlvbmFibGUtc2VsZWN0LXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBNZW50aW9uYWJsZVNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVudGlvbmFibGVTZWxlY3RcblxuICAvKiogQSBjdXN0b20gaWRlbnRpZmllciBmb3IgdGhpcyBjb21wb25lbnQuIE1heGltdW0gMTAwIGNoYXJhY3RlcnMuICovXG4gIGN1c3RvbUlkOiBzdHJpbmdcbiAgLyoqIEEgY3VzdG9tIHBsYWNlaG9sZGVyIHRleHQgaWYgbm90aGluZyBpcyBzZWxlY3RlZC4gTWF4aW11bSAxNTAgY2hhcmFjdGVycy4gKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVmYXVsdCB2YWx1ZXMgZm9yIGF1dG8tcG9wdWxhdGVkIHNlbGVjdCBtZW51IGNvbXBvbmVudHNcbiAgICogVGhlIG51bWJlciBvZiBkZWZhdWx0IHZhbHVlcyBtdXN0IGJlIGluIHRoZSByYW5nZSBkZWZpbmVkIGJ5IG1pblZhbHVlcyBhbmQgbWF4VmFsdWVzXG4gICAqL1xuICBkZWZhdWx0VmFsdWVzPzogU2VsZWN0TWVudURlZmF1bHRWYWx1ZVtdXG4gIC8qKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBtdXN0IGJlIHNlbGVjdGVkLiBEZWZhdWx0IDEuIEJldHdlZW4gMS0yNS4gKi9cbiAgbWluVmFsdWVzPzogbnVtYmVyXG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtYXhWYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFdoZXRoZXIgb3Igbm90IHRoaXMgc2VsZWN0IGlzIGRpc2FibGVkICovXG4gIGRpc2FibGVkPzogYm9vbGVhblxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjY2hhbm5lbC1zZWxlY3QtY2hhbm5lbC1zZWxlY3Qtc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIENoYW5uZWxTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkNoYW5uZWxTZWxlY3RcblxuICAvKiogQSBjdXN0b20gaWRlbnRpZmllciBmb3IgdGhpcyBjb21wb25lbnQuIE1heGltdW0gMTAwIGNoYXJhY3RlcnMuICovXG4gIGN1c3RvbUlkOiBzdHJpbmdcbiAgLyoqIEEgY3VzdG9tIHBsYWNlaG9sZGVyIHRleHQgaWYgbm90aGluZyBpcyBzZWxlY3RlZC4gTWF4aW11bSAxNTAgY2hhcmFjdGVycy4gKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVmYXVsdCB2YWx1ZXMgZm9yIGF1dG8tcG9wdWxhdGVkIHNlbGVjdCBtZW51IGNvbXBvbmVudHNcbiAgICogVGhlIG51bWJlciBvZiBkZWZhdWx0IHZhbHVlcyBtdXN0IGJlIGluIHRoZSByYW5nZSBkZWZpbmVkIGJ5IG1pblZhbHVlcyBhbmQgbWF4VmFsdWVzXG4gICAqL1xuICBkZWZhdWx0VmFsdWVzPzogU2VsZWN0TWVudURlZmF1bHRWYWx1ZVtdXG4gIC8qKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBtdXN0IGJlIHNlbGVjdGVkLiBEZWZhdWx0IDEuIEJldHdlZW4gMS0yNS4gKi9cbiAgbWluVmFsdWVzPzogbnVtYmVyXG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtYXhWYWx1ZXM/OiBudW1iZXJcbiAgLyoqIExpc3Qgb2YgY2hhbm5lbCB0eXBlcyB0byBpbmNsdWRlIGluIHRoZSBvcHRpb25zIGxpc3QgKi9cbiAgY2hhbm5lbFR5cGVzPzogQ2hhbm5lbFR5cGVzW11cbiAgLyoqIFdoZXRoZXIgb3Igbm90IHRoaXMgc2VsZWN0IGlzIGRpc2FibGVkICovXG4gIGRpc2FibGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdE9wdGlvbiB7XG4gIC8qKiBUaGUgdXNlci1mYWNpbmcgbmFtZSBvZiB0aGUgb3B0aW9uLiBNYXhpbXVtIDI1IGNoYXJhY3RlcnMuICovXG4gIGxhYmVsOiBzdHJpbmdcbiAgLyoqIFRoZSBkZXYtZGVmaW5lZCB2YWx1ZSBvZiB0aGUgb3B0aW9uLiBNYXhpbXVtIDEwMCBjaGFyYWN0ZXJzLiAqL1xuICB2YWx1ZTogc3RyaW5nXG4gIC8qKiBBbiBhZGRpdGlvbmFsIGRlc2NyaXB0aW9uIG9mIHRoZSBvcHRpb24uIE1heGltdW0gNTAgY2hhcmFjdGVycy4gKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgLyoqIFRoZSBpZCwgbmFtZSwgYW5kIGFuaW1hdGVkIHByb3BlcnRpZXMgb2YgYW4gZW1vamkuICovXG4gIGVtb2ppPzoge1xuICAgIC8qKiBFbW9qaSBpZCAqL1xuICAgIGlkPzogYmlnaW50XG4gICAgLyoqIEVtb2ppIG5hbWUgKi9cbiAgICBuYW1lPzogc3RyaW5nXG4gICAgLyoqIFdoZXRoZXIgdGhpcyBlbW9qaSBpcyBhbmltYXRlZCAqL1xuICAgIGFuaW1hdGVkPzogYm9vbGVhblxuICB9XG4gIC8qKiBXaWxsIHJlbmRlciB0aGlzIG9wdGlvbiBhcyBhbHJlYWR5LXNlbGVjdGVkIGJ5IGRlZmF1bHQuICovXG4gIGRlZmF1bHQ/OiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0TWVudURlZmF1bHRWYWx1ZSB7XG4gIC8qKiBJRCBvZiBhIHVzZXIsIHJvbGUsIG9yIGNoYW5uZWwgKi9cbiAgaWQ6IGJpZ2ludFxuICAvKiogVHlwZSBvZiB2YWx1ZSB0aGF0IGlkIHJlcHJlc2VudHMuICovXG4gIHR5cGU6ICd1c2VyJyB8ICdyb2xlJyB8ICdjaGFubmVsJ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjdGV4dC1pbnB1dC10ZXh0LWlucHV0LXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXh0SW5wdXRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRleHRJbnB1dFxuXG4gIC8qKiBUaGUgc3R5bGUgb2YgdGhlIElucHV0VGV4dCAqL1xuICBzdHlsZTogVGV4dFN0eWxlc1xuICAvKiogVGhlIGN1c3RvbUlkIG9mIHRoZSBJbnB1dFRleHQgKi9cbiAgY3VzdG9tSWQ6IHN0cmluZ1xuICAvKiogVGhlIGxhYmVsIG9mIHRoZSBJbnB1dFRleHQuIE1heGltdW0gNDUgY2hhcmFjdGVycyAqL1xuICBsYWJlbDogc3RyaW5nXG4gIC8qKiBUaGUgcGxhY2Vob2xkZXIgb2YgdGhlIElucHV0VGV4dCAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKiogVGhlIG1pbmltdW0gbGVuZ3RoIG9mIHRoZSB0ZXh0IHRoZSB1c2VyIGhhcyB0byBwcm92aWRlICovXG4gIG1pbkxlbmd0aD86IG51bWJlclxuICAvKiogVGhlIG1heGltdW0gbGVuZ3RoIG9mIHRoZSB0ZXh0IHRoZSB1c2VyIGhhcyB0byBwcm92aWRlICovXG4gIG1heExlbmd0aD86IG51bWJlclxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBpbnB1dCBpcyByZXF1aXJlZC4gKi9cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIC8qKiBQcmUtZmlsbGVkIHZhbHVlIGZvciBpbnB1dCB0ZXh0LiAqL1xuICB2YWx1ZT86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2Ujc2VjdGlvbi1zZWN0aW9uLXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN0aW9uQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZWN0aW9uXG5cbiAgLyoqIE9uZSB0byB0aHJlZSB0ZXh0IGNvbXBvbmVudHMgKi9cbiAgY29tcG9uZW50czogVGV4dERpc3BsYXlDb21wb25lbnRbXVxuICAvKiogQSB0aHVtYm5haWwgb3IgYSBidXR0b24gY29tcG9uZW50LCB3aXRoIGEgZnV0dXJlIHBvc3NpYmlsaXR5IG9mIGFkZGluZyBtb3JlIGNvbXBhdGlibGUgY29tcG9uZW50cyAqL1xuICBhY2Nlc3Nvcnk6IEJ1dHRvbkNvbXBvbmVudCB8IFRodW1ibmFpbENvbXBvbmVudFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjdGV4dC1kaXNwbGF5ICovXG5leHBvcnQgaW50ZXJmYWNlIFRleHREaXNwbGF5Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0RGlzcGxheVxuXG4gIC8qKiBUZXh0IHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgc2ltaWxhciB0byBhIG1lc3NhZ2UgKi9cbiAgY29udGVudDogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSN0aHVtYm5haWwgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGh1bWJuYWlsQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UaHVtYm5haWxcblxuICAvKiogQSB1cmwgb3IgYXR0YWNobWVudCAqL1xuICBtZWRpYTogRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtXG4gIC8qKiBBbHQgdGV4dCBmb3IgdGhlIG1lZGlhICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4gIC8qKiBXaGV0aGVyIHRoZSB0aHVtYm5haWwgc2hvdWxkIGJlIGEgc3BvaWxlciAob3IgYmx1cnJlZCBvdXQpLiBEZWZhdWx0cyB0byBgZmFsc2VgICovXG4gIHNwb2lsZXI/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNtZWRpYS1nYWxsZXJ5ICovXG5leHBvcnQgaW50ZXJmYWNlIE1lZGlhR2FsbGVyeUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVkaWFHYWxsZXJ5XG5cbiAgLyoqIDEgdG8gMTAgbWVkaWEgZ2FsbGVyeSBpdGVtcyAqL1xuICBpdGVtczogRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW1bXVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjZmlsZSAqL1xuZXhwb3J0IGludGVyZmFjZSBGaWxlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlXG5cbiAgLyoqIFRoaXMgdW5mdXJsZWQgbWVkaWEgaXRlbSBpcyB1bmlxdWUgaW4gdGhhdCBpdCBvbmx5IHN1cHBvcnRzIGF0dGFjaG1lbnQgcmVmZXJlbmNlcyB1c2luZyB0aGUgYXR0YWNobWVudDovLzxmaWxlbmFtZT4gc3ludGF4ICovXG4gIGZpbGU6IERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbVxuICAvKiogV2hldGhlciB0aGUgbWVkaWEgc2hvdWxkIGJlIGEgc3BvaWxlciAob3IgYmx1cnJlZCBvdXQpLiBEZWZhdWx0cyB0byBgZmFsc2VgICovXG4gIHNwb2lsZXI/OiBib29sZWFuXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgZmlsZS4gVGhpcyBmaWVsZCBpcyBpZ25vcmVkIGFuZCBwcm92aWRlZCBieSB0aGUgQVBJIGFzIHBhcnQgb2YgdGhlIHJlc3BvbnNlICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIHNpemUgb2YgdGhlIGZpbGUgaW4gYnl0ZXMuIFRoaXMgZmllbGQgaXMgaWdub3JlZCBhbmQgcHJvdmlkZWQgYnkgdGhlIEFQSSBhcyBwYXJ0IG9mIHRoZSByZXNwb25zZSAqL1xuICBzaXplOiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2NvbXBvbmVudHMvcmVmZXJlbmNlI3NlcGFyYXRvciAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXBhcmF0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlcGFyYXRvclxuXG4gIC8qKiBXaGV0aGVyIGEgdmlzdWFsIGRpdmlkZXIgc2hvdWxkIGJlIGRpc3BsYXllZCBpbiB0aGUgY29tcG9uZW50LiBEZWZhdWx0cyB0byBgdHJ1ZWAgKi9cbiAgZGl2aWRlcj86IGJvb2xlYW5cbiAgLyoqIFNpemUgb2Ygc2VwYXJhdG9yIHBhZGRpbmcg4oCUIGAxYCBmb3Igc21hbGwgcGFkZGluZywgYDJgIGZvciBsYXJnZSBwYWRkaW5nLiBEZWZhdWx0cyB0byBgMWAgKi9cbiAgc3BhY2luZz86IFNlcGFyYXRvclNwYWNpbmdTaXplXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNjb250YWluZXIgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXJcblxuICAvKiogQ29tcG9uZW50cyBvZiB0aGUgdHlwZSBhY3Rpb24gcm93LCB0ZXh0IGRpc3BsYXksIHNlY3Rpb24sIG1lZGlhIGdhbGxlcnksIHNlcGFyYXRvciwgb3IgZmlsZSAqL1xuICBjb21wb25lbnRzOiBBcnJheTxBY3Rpb25Sb3cgfCBUZXh0RGlzcGxheUNvbXBvbmVudCB8IFNlY3Rpb25Db21wb25lbnQgfCBNZWRpYUdhbGxlcnlDb21wb25lbnQgfCBTZXBhcmF0b3JDb21wb25lbnQgfCBGaWxlQ29tcG9uZW50PlxuICAvKiogQ29sb3IgZm9yIHRoZSBhY2NlbnQgb24gdGhlIGNvbnRhaW5lciBhcyBSR0IgZnJvbSAweDAwMDAwMCB0byAweEZGRkZGRiAqL1xuICBhY2NlbnRDb2xvcj86IG51bWJlclxuICAvKiogV2hldGhlciB0aGUgY29udGFpbmVyIHNob3VsZCBiZSBhIHNwb2lsZXIgKG9yIGJsdXJyZWQgb3V0KS4gRGVmYXVsdHMgdG8gYGZhbHNlYCAqL1xuICBzcG9pbGVyPzogYm9vbGVhblxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjYWxsb3dlZC1tZW50aW9ucy1vYmplY3QgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxsb3dlZE1lbnRpb25zIHtcbiAgLyoqIEFuIGFycmF5IG9mIGFsbG93ZWQgbWVudGlvbiB0eXBlcyB0byBwYXJzZSBmcm9tIHRoZSBjb250ZW50LiAqL1xuICBwYXJzZT86IEFsbG93ZWRNZW50aW9uc1R5cGVzW11cbiAgLyoqIEZvciByZXBsaWVzLCB3aGV0aGVyIHRvIG1lbnRpb24gdGhlIGF1dGhvciBvZiB0aGUgbWVzc2FnZSBiZWluZyByZXBsaWVkIHRvIChkZWZhdWx0IGZhbHNlKSAqL1xuICByZXBsaWVkVXNlcj86IGJvb2xlYW5cbiAgLyoqIEFycmF5IG9mIHJvbGVfaWRzIHRvIG1lbnRpb24gKE1heCBzaXplIG9mIDEwMCkgKi9cbiAgcm9sZXM/OiBiaWdpbnRbXVxuICAvKiogQXJyYXkgb2YgdXNlcl9pZHMgdG8gbWVudGlvbiAoTWF4IHNpemUgb2YgMTAwKSAqL1xuICB1c2Vycz86IGJpZ2ludFtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZUNvbnRlbnQge1xuICAvKiogVGhlIGZpbGUgYmxvYiAqL1xuICBibG9iOiBCbG9iXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgZmlsZSAqL1xuICBuYW1lOiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNzZWFyY2gtZ3VpbGQtbWVtYmVycy1xdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE1lbWJlcnMge1xuICAvKiogUXVlcnkgc3RyaW5nIHRvIG1hdGNoIHVzZXJuYW1lKHMpIGFuZCBuaWNrbmFtZShzKSBhZ2FpbnN0ICovXG4gIHF1ZXJ5OiBzdHJpbmdcbiAgLyoqIE1heCBudW1iZXIgb2YgbWVtYmVycyB0byByZXR1cm4gKDEtMTAwMCkuIERlZmF1bHQ6IDEgKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVyd3JpdGVSZWFkYWJsZSB7XG4gIC8qKiBSb2xlIG9yIHVzZXIgaWQgKi9cbiAgaWQ6IGJpZ2ludFxuICAvKiogRWl0aGVyIDAgKHJvbGUpIG9yIDEgKG1lbWJlcikgKi9cbiAgdHlwZTogT3ZlcndyaXRlVHlwZXNcbiAgLyoqIFBlcm1pc3Npb24gYml0IHNldCAqL1xuICBhbGxvdz86IFBlcm1pc3Npb25TdHJpbmdzW11cbiAgLyoqIFBlcm1pc3Npb24gYml0IHNldCAqL1xuICBkZW55PzogUGVybWlzc2lvblN0cmluZ3NbXVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjZ2V0LWNoYW5uZWwtbWVzc2FnZXMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRNZXNzYWdlc0xpbWl0IHtcbiAgLyoqIE1heCBudW1iZXIgb2YgbWVzc2FnZXMgdG8gcmV0dXJuICgxLTEwMCkgZGVmYXVsdCA1MCAqL1xuICBsaW1pdD86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjZ2V0LWNoYW5uZWwtbWVzc2FnZXMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRNZXNzYWdlc0Fyb3VuZCBleHRlbmRzIEdldE1lc3NhZ2VzTGltaXQge1xuICAvKiogR2V0IG1lc3NhZ2VzIGFyb3VuZCB0aGlzIG1lc3NhZ2UgaWQgKi9cbiAgYXJvdW5kPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNnZXQtY2hhbm5lbC1tZXNzYWdlcy1xdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEdldE1lc3NhZ2VzQmVmb3JlIGV4dGVuZHMgR2V0TWVzc2FnZXNMaW1pdCB7XG4gIC8qKiBHZXQgbWVzc2FnZXMgYmVmb3JlIHRoaXMgbWVzc2FnZSBpZCAqL1xuICBiZWZvcmU/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9jaGFubmVsI2dldC1jaGFubmVsLW1lc3NhZ2VzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0TWVzc2FnZXNBZnRlciBleHRlbmRzIEdldE1lc3NhZ2VzTGltaXQge1xuICAvKiogR2V0IG1lc3NhZ2VzIGFmdGVyIHRoaXMgbWVzc2FnZSBpZCAqL1xuICBhZnRlcj86IEJpZ1N0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBHZXRNZXNzYWdlc09wdGlvbnMgPSBHZXRNZXNzYWdlc0FmdGVyIHwgR2V0TWVzc2FnZXNCZWZvcmUgfCBHZXRNZXNzYWdlc0Fyb3VuZCB8IEdldE1lc3NhZ2VzTGltaXRcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9jaGFubmVsI2dldC1yZWFjdGlvbnMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRSZWFjdGlvbnMge1xuICB0eXBlOiBEaXNjb3JkUmVhY3Rpb25UeXBlXG4gIC8qKiBHZXQgdXNlcnMgYWZ0ZXIgdGhpcyB1c2VyIElkICovXG4gIGFmdGVyPzogc3RyaW5nXG4gIC8qKiBNYXggbnVtYmVyIG9mIHVzZXJzIHRvIHJldHVybiAoMS0xMDApICovXG4gIGxpbWl0PzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNsaXN0LXB1YmxpYy1hcmNoaXZlZC10aHJlYWRzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEFyY2hpdmVkVGhyZWFkcyB7XG4gIC8qKiBSZXR1cm5zIHRocmVhZHMgYmVmb3JlIHRoaXMgdGltZXN0YW1wICovXG4gIGJlZm9yZT86IG51bWJlclxuICAvKiogT3B0aW9uYWwgbWF4aW11bSBudW1iZXIgb2YgdGhyZWFkcyB0byByZXR1cm4gKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9jaGFubmVsI2dldC10aHJlYWQtbWVtYmVyLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VGhyZWFkTWVtYmVyIHtcbiAgLyoqIFdoZXRoZXIgdG8gaW5jbHVkZSBhIGd1aWxkIG1lbWJlciBvYmplY3QgZm9yIHRoZSB0aHJlYWQgbWVtYmVyICovXG4gIHdpdGhNZW1iZXI/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNsaXN0LXRocmVhZC1tZW1iZXJzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdFRocmVhZE1lbWJlcnMge1xuICAvKiogV2hldGhlciB0byBpbmNsdWRlIGEgZ3VpbGQgbWVtYmVyIG9iamVjdCBmb3IgdGhlIHRocmVhZCBtZW1iZXIgKi9cbiAgd2l0aE1lbWJlcj86IGJvb2xlYW5cbiAgLyoqIEdldCB0aHJlYWQgbWVtYmVycyBhZnRlciB0aGlzIHVzZXIgSUQgKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbiAgLyoqIE1heCBudW1iZXIgb2YgdGhyZWFkIG1lbWJlcnMgdG8gcmV0dXJuICgxLTEwMCkuIERlZmF1bHRzIHRvIDEwMC4gKi9cbiAgbGltaXQ/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjZ2V0LWd1aWxkLWF1ZGl0LWxvZy1xdWVyeS1zdHJpbmctcGFyYW1ldGVycyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRHdWlsZEF1ZGl0TG9nIHtcbiAgLyoqIEVudHJpZXMgZnJvbSBhIHNwZWNpZmljIHVzZXIgSUQgKi9cbiAgdXNlcklkPzogQmlnU3RyaW5nXG4gIC8qKiBFbnRyaWVzIGZvciBhIHNwZWNpZmljIGF1ZGl0IGxvZyBldmVudCAqL1xuICBhY3Rpb25UeXBlPzogQXVkaXRMb2dFdmVudHNcbiAgLyoqIEVudHJpZXMgd2l0aCBJRCBsZXNzIHRoYW4gYSBzcGVjaWZpYyBhdWRpdCBsb2cgZW50cnkgSUQuICovXG4gIGJlZm9yZT86IEJpZ1N0cmluZ1xuICAvKiogRW50cmllcyB3aXRoIElEIGdyZWF0ZXIgdGhhbiBhIHNwZWNpZmljIGF1ZGl0IGxvZyBlbnRyeSBJRC4gKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbiAgLyoqIE1heGltdW0gbnVtYmVyIG9mIGVudHJpZXMgKGJldHdlZW4gMS0xMDApIHRvIHJldHVybiwgZGVmYXVsdHMgdG8gNTAgKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy91c2VyI2dldC1jdXJyZW50LXVzZXItZ3VpbGRzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VXNlckd1aWxkcyB7XG4gIC8qKiBHZXQgZ3VpbGRzIGJlZm9yZSB0aGlzIGd1aWxkIElEICovXG4gIGJlZm9yZT86IEJpZ1N0cmluZ1xuICAvKiogR2V0IGd1aWxkcyBhZnRlciB0aGlzIGd1aWxkIElEICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBlbnRyaWVzIChiZXR3ZWVuIDEtMjAwKSB0byByZXR1cm4sIGRlZmF1bHRzIHRvIDIwMCAqL1xuICBsaW1pdD86IG51bWJlclxuICAvKiogSW5jbHVkZSBhcHByb3hpbWF0ZSBtZW1iZXIgYW5kIHByZXNlbmNlIGNvdW50cyBpbiByZXNwb25zZSwgZGVmYXVsdHMgdG8gZmFsc2UgKi9cbiAgd2l0aENvdW50cz86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRCYW5zIHtcbiAgLyoqIE51bWJlciBvZiB1c2VycyB0byByZXR1cm4gKHVwIHRvIG1heGltdW0gMTAwMCkuIERlZmF1bHQ6IDEwMDAgKi9cbiAgbGltaXQ/OiBudW1iZXJcbiAgLyoqIENvbnNpZGVyIG9ubHkgdXNlcnMgYmVmb3JlIGdpdmVuIHVzZXIgaWQgKi9cbiAgYmVmb3JlPzogQmlnU3RyaW5nXG4gIC8qKiBDb25zaWRlciBvbmx5IHVzZXJzIGFmdGVyIGdpdmVuIHVzZXIgaWQgKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNsaXN0LWd1aWxkLW1lbWJlcnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEd1aWxkTWVtYmVycyB7XG4gIC8qKiBNYXggbnVtYmVyIG9mIG1lbWJlcnMgdG8gcmV0dXJuICgxLTEwMDApLiBEZWZhdWx0OiAxICovXG4gIGxpbWl0PzogbnVtYmVyXG4gIC8qKiBUaGUgaGlnaGVzdCB1c2VyIGlkIGluIHRoZSBwcmV2aW91cyBwYWdlLiBEZWZhdWx0OiAwICovXG4gIGFmdGVyPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjZ2V0LWd1aWxkLXBydW5lLWNvdW50ICovXG5leHBvcnQgaW50ZXJmYWNlIEdldEd1aWxkUHJ1bmVDb3VudFF1ZXJ5IHtcbiAgLyoqIE51bWJlciBvZiBkYXlzIHRvIGNvdW50IHBydW5lIGZvciAoMSBvciBtb3JlKSwgZGVmYXVsdDogNyAqL1xuICBkYXlzPzogbnVtYmVyXG4gIC8qKiBSb2xlKHMpIHRvIGluY2x1ZGUsIGRlZmF1bHQ6IG5vbmUgKi9cbiAgaW5jbHVkZVJvbGVzPzogc3RyaW5nIHwgc3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRTY2hlZHVsZWRFdmVudFVzZXJzIHtcbiAgLyoqIG51bWJlciBvZiB1c2VycyB0byByZXR1cm4gKHVwIHRvIG1heGltdW0gMTAwKSwgZGVmYXVsdHMgdG8gMTAwICovXG4gIGxpbWl0PzogbnVtYmVyXG4gIC8qKiB3aGV0aGVyIHRvIGFsc28gaGF2ZSBtZW1iZXIgb2JqZWN0cyBwcm92aWRlZCwgZGVmYXVsdHMgdG8gZmFsc2UgKi9cbiAgd2l0aE1lbWJlcj86IGJvb2xlYW5cbiAgLyoqIGNvbnNpZGVyIG9ubHkgdXNlcnMgYmVmb3JlIGdpdmVuIHVzZXIgaWQgKi9cbiAgYmVmb3JlPzogQmlnU3RyaW5nXG4gIC8qKiBjb25zaWRlciBvbmx5IHVzZXJzIGFmdGVyIGdpdmVuIHVzZXIgaWQuIElmIGJvdGggYmVmb3JlIGFuZCBhZnRlciBhcmUgcHJvdmlkZWQsIG9ubHkgYmVmb3JlIGlzIHJlc3BlY3RlZC4gRmV0Y2hpbmcgdXNlcnMgaW4tYmV0d2VlbiBiZWZvcmUgYW5kIGFmdGVyIGlzIG5vdCBzdXBwb3J0ZWQuICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvaW52aXRlI2dldC1pbnZpdGUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0SW52aXRlIHtcbiAgLyoqIFdoZXRoZXIgdGhlIGludml0ZSBzaG91bGQgY29udGFpbiBhcHByb3hpbWF0ZSBtZW1iZXIgY291bnRzICovXG4gIHdpdGhDb3VudHM/OiBib29sZWFuXG4gIC8qKiBXaGV0aGVyIHRoZSBpbnZpdGUgc2hvdWxkIGNvbnRhaW4gdGhlIGV4cGlyYXRpb24gZGF0ZSAqL1xuICB3aXRoRXhwaXJhdGlvbj86IGJvb2xlYW5cbiAgLyoqIHRoZSBndWlsZCBzY2hlZHVsZWQgZXZlbnQgdG8gaW5jbHVkZSB3aXRoIHRoZSBpbnZpdGUgKi9cbiAgc2NoZWR1bGVkRXZlbnRJZD86IEJpZ1N0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDcmVhdGVBcHBsaWNhdGlvbkNvbW1hbmQgPSBDcmVhdGVTbGFzaEFwcGxpY2F0aW9uQ29tbWFuZCB8IENyZWF0ZUNvbnRleHRBcHBsaWNhdGlvbkNvbW1hbmRcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2ludGVyYWN0aW9ucy9hcHBsaWNhdGlvbi1jb21tYW5kcyNlbmRwb2ludHMtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU2xhc2hBcHBsaWNhdGlvbkNvbW1hbmQge1xuICAvKipcbiAgICogTmFtZSBvZiBjb21tYW5kLCAxLTMyIGNoYXJhY3RlcnMuXG4gICAqIGBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcy5DaGF0SW5wdXRgIGNvbW1hbmQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgZm9sbG93aW5nIHJlZ2V4IGBeWy1fyrxcXHB7TH1cXHB7Tn1cXHB7c2M9RGV2YX1cXHB7c2M9VGhhaX1dezEsMzJ9JGAgd2l0aCB0aGUgdW5pY29kZSBmbGFnIHNldC5cbiAgICogSWYgdGhlcmUgaXMgYSBsb3dlcmNhc2UgdmFyaWFudCBvZiBhbnkgbGV0dGVycyB1c2VkLCB5b3UgbXVzdCB1c2UgdGhvc2UuXG4gICAqIENoYXJhY3RlcnMgd2l0aCBubyBsb3dlcmNhc2UgdmFyaWFudHMgYW5kL29yIHVuY2FzZWQgbGV0dGVycyBhcmUgc3RpbGwgYWxsb3dlZC5cbiAgICogQXBwbGljYXRpb25Db21tYW5kVHlwZXMuVXNlcmAgYW5kIGBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcy5NZXNzYWdlYCBjb21tYW5kcyBtYXkgYmUgbWl4ZWQgY2FzZSBhbmQgY2FuIGluY2x1ZGUgc3BhY2VzLlxuICAgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBMb2NhbGl6YXRpb24gb2JqZWN0IGZvciB0aGUgYG5hbWVgIGZpZWxkLiBWYWx1ZXMgZm9sbG93IHRoZSBzYW1lIHJlc3RyaWN0aW9ucyBhcyBgbmFtZWAgKi9cbiAgbmFtZUxvY2FsaXphdGlvbnM/OiBMb2NhbGl6YXRpb25cbiAgLyoqIDEtMTAwIGNoYXJhY3RlciBkZXNjcmlwdGlvbiAqL1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIC8qKiBMb2NhbGl6YXRpb24gb2JqZWN0IGZvciB0aGUgYGRlc2NyaXB0aW9uYCBmaWVsZC4gVmFsdWVzIGZvbGxvdyB0aGUgc2FtZSByZXN0cmljdGlvbnMgYXMgYGRlc2NyaXB0aW9uYCAqL1xuICBkZXNjcmlwdGlvbkxvY2FsaXphdGlvbnM/OiBMb2NhbGl6YXRpb25cbiAgLyoqIFR5cGUgb2YgY29tbWFuZCwgZGVmYXVsdHMgYEFwcGxpY2F0aW9uQ29tbWFuZFR5cGVzLkNoYXRJbnB1dGAgaWYgbm90IHNldCAgKi9cbiAgdHlwZT86IEFwcGxpY2F0aW9uQ29tbWFuZFR5cGVzXG4gIC8qKlxuICAgKiBQYXJhbWV0ZXJzIGZvciB0aGUgY29tbWFuZFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgaW4gY29tbWFuZHMgb2YgdHlwZSB7QGxpbmsgQXBwbGljYXRpb25Db21tYW5kVHlwZXMuQ2hhdElucHV0IHwgQ2hhdElucHV0fVxuICAgKi9cbiAgb3B0aW9ucz86IENhbWVsaXplPERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25bXT5cbiAgLyoqIFNldCBvZiBwZXJtaXNzaW9ucyByZXByZXNlbnRlZCBhcyBhIGJpdCBzZXQgKi9cbiAgZGVmYXVsdE1lbWJlclBlcm1pc3Npb25zPzogUGVybWlzc2lvblN0cmluZ3NbXVxuICAvKipcbiAgICogSW50ZWdyYXRpb24gdHlwZXMgd2hlcmUgdGhlIGNvbW1hbmQgaXMgYXZhaWxhYmxlXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgdmFsdWUgaXMgYXZhaWxhYmxlIG9ubHkgZm9yIGdsb2JhbGx5LXNjb3BlZCBjb21tYW5kc1xuICAgKiBEZWZhdWx0cyB0byB0aGUgYXBwbGljYXRpb24gY29uZmlndXJlZCBjb250ZXh0c1xuICAgKi9cbiAgaW50ZWdyYXRpb25UeXBlcz86IERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZVtdXG4gIC8qKlxuICAgKiBJbnRlcmFjdGlvbiBjb250ZXh0IHR5cGVzIHdoZXJlIHRoZSBjb21tYW5kIGlzIGF2YWlsYWJsZS5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyB2YWx1ZSBpcyBhdmFpbGFibGUgb25seSBmb3IgZ2xvYmFsbHktc2NvcGVkIGNvbW1hbmRzLlxuICAgKi9cbiAgY29udGV4dHM/OiBEaXNjb3JkSW50ZXJhY3Rpb25Db250ZXh0VHlwZVtdXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgY29tbWFuZCBpcyBhdmFpbGFibGUgaW4gRE1zIHdpdGggdGhlIGFwcCwgb25seSBmb3IgZ2xvYmFsbHktc2NvcGVkIGNvbW1hbmRzLiBCeSBkZWZhdWx0LCBjb21tYW5kcyBhcmUgdmlzaWJsZS5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgdXNlIHtAbGluayBjb250ZXh0c30gaW5zdGVhZFxuICAgKi9cbiAgZG1QZXJtaXNzaW9uPzogYm9vbGVhblxuICAvKiogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGNvbW1hbmQgaXMgYWdlLXJlc3RyaWN0ZWQsIGRlZmF1bHRzIHRvIGBmYWxzZWAgKi9cbiAgbnNmdz86IGJvb2xlYW5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgaW50ZXJhY3Rpb24gaXMgaGFuZGxlZCBieSB0aGUgYXBwJ3MgaW50ZXJhY3Rpb25zIGhhbmRsZXIgb3IgYnkgRGlzY29yZFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGNhbiBvbmx5IGJlIHNldCBmb3IgYXBwbGljYXRpb24gY29tbWFuZHMgb2YgdHlwZSBgUFJJTUFSWV9FTlRSWV9QT0lOVGAgZm9yIGFwcGxpY2F0aW9ucyB3aXRoIHRoZSBgRU1CRURERURgIGZsYWcgKGkuZS4gYXBwbGljYXRpb25zIHRoYXQgaGF2ZSBhbiBBY3Rpdml0eSkuXG4gICAqL1xuICBoYW5kbGVyPzogRGlzY29yZEludGVyYWN0aW9uRW50cnlQb2ludENvbW1hbmRIYW5kbGVyVHlwZVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL2FwcGxpY2F0aW9uLWNvbW1hbmRzI2VuZHBvaW50cy1qc29uLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVDb250ZXh0QXBwbGljYXRpb25Db21tYW5kIGV4dGVuZHMgT21pdDxDcmVhdGVTbGFzaEFwcGxpY2F0aW9uQ29tbWFuZCwgJ29wdGlvbnMnIHwgJ2Rlc2NyaXB0aW9uJyB8ICdkZXNjcmlwdGlvbkxvY2FsaXphdGlvbnMnPiB7XG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgY29tbWFuZCAqL1xuICB0eXBlOiBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcy5NZXNzYWdlIHwgQXBwbGljYXRpb25Db21tYW5kVHlwZXMuVXNlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL3NsYXNoLWNvbW1hbmRzI2ludGVyYWN0aW9uLXJlc3BvbnNlLWludGVyYWN0aW9uYXBwbGljYXRpb25jb21tYW5kY2FsbGJhY2tkYXRhICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVyYWN0aW9uQ2FsbGJhY2tEYXRhIHtcbiAgLyoqIFRoZSBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gIGNvbnRlbnQ/OiBzdHJpbmdcbiAgLyoqIFRydWUgaWYgdGhpcyBpcyBhIFRUUyBtZXNzYWdlICovXG4gIHR0cz86IGJvb2xlYW5cbiAgLyoqIEVtYmVkZGVkIGByaWNoYCBjb250ZW50ICh1cCB0byA2MDAwIGNoYXJhY3RlcnMpICovXG4gIGVtYmVkcz86IENhbWVsaXplPERpc2NvcmRFbWJlZD5bXVxuICAvKiogQWxsb3dlZCBtZW50aW9ucyBmb3IgdGhlIG1lc3NhZ2UgKi9cbiAgYWxsb3dlZE1lbnRpb25zPzogQWxsb3dlZE1lbnRpb25zXG4gIC8qKiBUaGUgY29udGVudHMgb2YgdGhlIGZpbGVzIGJlaW5nIHNlbnQgKi9cbiAgZmlsZXM/OiBGaWxlQ29udGVudFtdXG4gIC8qKiBUaGUgY3VzdG9tSWQgeW91IHdhbnQgdG8gdXNlIGZvciB0aGlzIG1vZGFsIHJlc3BvbnNlLiAqL1xuICBjdXN0b21JZD86IHN0cmluZ1xuICAvKiogVGhlIHRpdGxlIHlvdSB3YW50IHRvIHVzZSBmb3IgdGhpcyBtb2RhbCByZXNwb25zZS4gKi9cbiAgdGl0bGU/OiBzdHJpbmdcbiAgLyoqIFRoZSBjb21wb25lbnRzIHlvdSB3b3VsZCBsaWtlIHRvIGhhdmUgc2VudCBpbiB0aGlzIG1lc3NhZ2UgKi9cbiAgY29tcG9uZW50cz86IE1lc3NhZ2VDb21wb25lbnRzXG4gIC8qKiBNZXNzYWdlIGZsYWdzIGNvbWJpbmVkIGFzIGEgYml0IGZpZWxkIChvbmx5IGBTVVBQUkVTU19FTUJFRFNgLCBgRVBIRU1FUkFMYCwgYElTX0NPTVBPTkVOVFNfVjJgLCBgSVNfVk9JQ0VfTUVTU0FHRWAgYW5kIGBTVVBQUkVTU19OT1RJRklDQVRJT05TYCBjYW4gYmUgc2V0KSAqL1xuICBmbGFncz86IG51bWJlclxuICAvKiogQXV0b2NvbXBsZXRlIGNob2ljZXMgKG1heCBvZiAyNSBjaG9pY2VzKSAqL1xuICBjaG9pY2VzPzogQ2FtZWxpemU8RGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbkNob2ljZVtdPlxuICAvKiogRGV0YWlscyBhYm91dCB0aGUgcG9sbCAqL1xuICBwb2xsPzogQ3JlYXRlUG9sbFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL3NsYXNoLWNvbW1hbmRzI2ludGVyYWN0aW9uLXJlc3BvbnNlICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVyYWN0aW9uUmVzcG9uc2Uge1xuICAvKiogVGhlIHR5cGUgb2YgcmVzcG9uc2UgKi9cbiAgdHlwZTogSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzXG4gIC8qKiBBbiBvcHRpb25hbCByZXNwb25zZSBtZXNzYWdlICovXG4gIGRhdGE/OiBJbnRlcmFjdGlvbkNhbGxiYWNrRGF0YVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL3JlY2VpdmluZy1hbmQtcmVzcG9uZGluZyNjcmVhdGUtaW50ZXJhY3Rpb24tcmVzcG9uc2UtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlcmFjdGlvbkNhbGxiYWNrT3B0aW9ucyB7XG4gIHdpdGhSZXNwb25zZT86IGJvb2xlYW5cbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9lbW9qaSNjcmVhdGUtZ3VpbGQtZW1vamkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRFbW9qaSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbW9qaSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIFRoZSAxMjh4MTI4IGVtb2ppIGltYWdlLiBFbW9qaXMgYW5kIGFuaW1hdGVkIGVtb2ppcyBoYXZlIGEgbWF4aW11bSBmaWxlIHNpemUgb2YgMjU2a2IuIEF0dGVtcHRpbmcgdG8gdXBsb2FkIGFuIGVtb2ppIGxhcmdlciB0aGFuIHRoaXMgbGltaXQgd2lsbCBmYWlsIGFuZCByZXR1cm4gNDAwIEJhZCBSZXF1ZXN0IGFuZCBhbiBlcnJvciBtZXNzYWdlLCBidXQgbm90IGEgSlNPTiBzdGF0dXMgY29kZS4gSWYgYSBVUkwgaXMgcHJvdmlkZWQgdG8gdGhlIGltYWdlIHBhcmFtZXRlciwgRGlzY29yZGVubyB3aWxsIGF1dG9tYXRpY2FsbHkgY29udmVydCBpdCB0byBhIGJhc2U2NCBzdHJpbmcgaW50ZXJuYWxseS4gKi9cbiAgaW1hZ2U6IHN0cmluZ1xuICAvKiogUm9sZXMgYWxsb3dlZCB0byB1c2UgdGhpcyBlbW9qaSAqL1xuICByb2xlcz86IEJpZ1N0cmluZ1tdXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZW1vamkjY3JlYXRlLWFwcGxpY2F0aW9uLWVtb2ppICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUFwcGxpY2F0aW9uRW1vamkge1xuICAvKiogTmFtZSBvZiB0aGUgZW1vamkgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBUaGUgMTI4eDEyOCBlbW9qaSBpbWFnZS4gRW1vamlzIGFuZCBhbmltYXRlZCBlbW9qaXMgaGF2ZSBhIG1heGltdW0gZmlsZSBzaXplIG9mIDI1NmtiLiBBdHRlbXB0aW5nIHRvIHVwbG9hZCBhbiBlbW9qaSBsYXJnZXIgdGhhbiB0aGlzIGxpbWl0IHdpbGwgZmFpbCBhbmQgcmV0dXJuIDQwMCBCYWQgUmVxdWVzdCBhbmQgYW4gZXJyb3IgbWVzc2FnZSwgYnV0IG5vdCBhIEpTT04gc3RhdHVzIGNvZGUuIElmIGEgVVJMIGlzIHByb3ZpZGVkIHRvIHRoZSBpbWFnZSBwYXJhbWV0ZXIsIERpc2NvcmRlbm8gd2lsbCBhdXRvbWF0aWNhbGx5IGNvbnZlcnQgaXQgdG8gYSBiYXNlNjQgc3RyaW5nIGludGVybmFsbHkuICovXG4gIGltYWdlOiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9lbW9qaSNtb2RpZnktZ3VpbGQtZW1vamkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRFbW9qaSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbW9qaSAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKiBSb2xlcyBhbGxvd2VkIHRvIHVzZSB0aGlzIGVtb2ppICovXG4gIHJvbGVzPzogQmlnU3RyaW5nW10gfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZW1vamkjbW9kaWZ5LWFwcGxpY2F0aW9uLWVtb2ppICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeUFwcGxpY2F0aW9uRW1vamkge1xuICAvKiogTmFtZSBvZiB0aGUgZW1vamkgKi9cbiAgbmFtZT86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvdG9waWNzL2dhdGV3YXkjcmVxdWVzdC1ndWlsZC1tZW1iZXJzICovXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RHdWlsZE1lbWJlcnMge1xuICAvKiogaWQgb2YgdGhlIGd1aWxkIHRvIGdldCBtZW1iZXJzIGZvciAqL1xuICBndWlsZElkOiBCaWdTdHJpbmdcbiAgLyoqIFN0cmluZyB0aGF0IHVzZXJuYW1lIHN0YXJ0cyB3aXRoLCBvciBhbiBlbXB0eSBzdHJpbmcgdG8gcmV0dXJuIGFsbCBtZW1iZXJzICovXG4gIHF1ZXJ5Pzogc3RyaW5nXG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBtZW1iZXJzIHRvIHNlbmQgbWF0Y2hpbmcgdGhlIHF1ZXJ5OyBhIGxpbWl0IG9mIDAgY2FuIGJlIHVzZWQgd2l0aCBhbiBlbXB0eSBzdHJpbmcgcXVlcnkgdG8gcmV0dXJuIGFsbCBtZW1iZXJzICovXG4gIGxpbWl0OiBudW1iZXJcbiAgLyoqIFVzZWQgdG8gc3BlY2lmeSBpZiB3ZSB3YW50IHRoZSBwcmVzZW5jZXMgb2YgdGhlIG1hdGNoZWQgbWVtYmVycyAqL1xuICBwcmVzZW5jZXM/OiBib29sZWFuXG4gIC8qKiBVc2VkIHRvIHNwZWNpZnkgd2hpY2ggdXNlcnMgeW91IHdpc2ggdG8gZmV0Y2ggKi9cbiAgdXNlcklkcz86IEJpZ1N0cmluZ1tdXG4gIC8qKiBOb25jZSB0byBpZGVudGlmeSB0aGUgR3VpbGQgTWVtYmVycyBDaHVuayByZXNwb25zZSAqL1xuICBub25jZT86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2NyZWF0ZS1ndWlsZC1jaGFubmVsICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUd1aWxkQ2hhbm5lbCB7XG4gIC8qKiBDaGFubmVsIG5hbWUgKDEtMTAwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIHR5cGUgb2YgY2hhbm5lbCAqL1xuICB0eXBlPzogQ2hhbm5lbFR5cGVzXG4gIC8qKiBDaGFubmVsIHRvcGljICgwLTEwMjQgY2hhcmFjdGVycykgKi9cbiAgdG9waWM/OiBzdHJpbmdcbiAgLyoqIFRoZSBiaXRyYXRlIChpbiBiaXRzKSBvZiB0aGUgdm9pY2UgY2hhbm5lbCAodm9pY2Ugb25seSkgKi9cbiAgYml0cmF0ZT86IG51bWJlclxuICAvKiogVGhlIHVzZXIgbGltaXQgb2YgdGhlIHZvaWNlIGNoYW5uZWwgKHZvaWNlIG9ubHkpICovXG4gIHVzZXJMaW1pdD86IG51bWJlclxuICAvKiogQW1vdW50IG9mIHNlY29uZHMgYSB1c2VyIGhhcyB0byB3YWl0IGJlZm9yZSBzZW5kaW5nIGFub3RoZXIgbWVzc2FnZSAoMC0yMTYwMCk7IGJvdHMsIGFzIHdlbGwgYXMgdXNlcnMgd2l0aCB0aGUgcGVybWlzc2lvbiBgbWFuYWdlX21lc3NhZ2VzYCBvciBgbWFuYWdlX2NoYW5uZWxgLCBhcmUgdW5hZmZlY3RlZCAqL1xuICByYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyXG4gIC8qKiBTb3J0aW5nIHBvc2l0aW9uIG9mIHRoZSBjaGFubmVsIChjaGFubmVscyB3aXRoIHRoZSBzYW1lIHBvc2l0aW9uIGFyZSBzb3J0ZWQgYnkgaWQpICovXG4gIHBvc2l0aW9uPzogbnVtYmVyXG4gIC8qKiBUaGUgY2hhbm5lbCdzIHBlcm1pc3Npb24gb3ZlcndyaXRlcyAqL1xuICBwZXJtaXNzaW9uT3ZlcndyaXRlcz86IE92ZXJ3cml0ZVJlYWRhYmxlW11cbiAgLyoqIElkIG9mIHRoZSBwYXJlbnQgY2F0ZWdvcnkgZm9yIGEgY2hhbm5lbCAqL1xuICBwYXJlbnRJZD86IEJpZ1N0cmluZ1xuICAvKiogV2hldGhlciB0aGUgY2hhbm5lbCBpcyBuc2Z3ICovXG4gIG5zZnc/OiBib29sZWFuXG4gIC8qKiBEZWZhdWx0IGR1cmF0aW9uIChpbiBtaW51dGVzKSB0aGF0IGNsaWVudHMgKG5vdCB0aGUgQVBJKSB1c2UgZm9yIG5ld2x5IGNyZWF0ZWQgdGhyZWFkcyBpbiB0aGlzIGNoYW5uZWwsIHRvIGRldGVybWluZSB3aGVuIHRvIGF1dG9tYXRpY2FsbHkgYXJjaGl2ZSB0aGUgdGhyZWFkIGFmdGVyIHRoZSBsYXN0IGFjdGl2aXR5ICovXG4gIGRlZmF1bHRBdXRvQXJjaGl2ZUR1cmF0aW9uPzogbnVtYmVyXG4gIC8qKiBFbW9qaSB0byBzaG93IGluIHRoZSBhZGQgcmVhY3Rpb24gYnV0dG9uIG9uIGEgdGhyZWFkIGluIGEgZm9ydW0gY2hhbm5lbCAqL1xuICBkZWZhdWx0UmVhY3Rpb25FbW9qaT86IHtcbiAgICAvKiogVGhlIGlkIG9mIGEgZ3VpbGQncyBjdXN0b20gZW1vamkuIEV4YWN0bHkgb25lIG9mIGBlbW9qaUlkYCBhbmQgYGVtb2ppTmFtZWAgbXVzdCBiZSBzZXQuICovXG4gICAgZW1vamlJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgICAvKiogVGhlIHVuaWNvZGUgY2hhcmFjdGVyIG9mIHRoZSBlbW9qaS4gRXhhY3RseSBvbmUgb2YgYGVtb2ppSWRgIGFuZCBgZW1vamlOYW1lYCBtdXN0IGJlIHNldC4gKi9cbiAgICBlbW9qaU5hbWU/OiBzdHJpbmcgfCBudWxsXG4gIH1cbiAgLyoqIFNldCBvZiB0YWdzIHRoYXQgY2FuIGJlIHVzZWQgaW4gYSBmb3J1bSBjaGFubmVsICovXG4gIGF2YWlsYWJsZVRhZ3M/OiBBcnJheTx7XG4gICAgLyoqIFRoZSBpZCBvZiB0aGUgdGFnICovXG4gICAgaWQ6IEJpZ1N0cmluZ1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgdGFnICgwLTIwIGNoYXJhY3RlcnMpICovXG4gICAgbmFtZTogc3RyaW5nXG4gICAgLyoqIHdoZXRoZXIgdGhpcyB0YWcgY2FuIG9ubHkgYmUgYWRkZWQgdG8gb3IgcmVtb3ZlZCBmcm9tIHRocmVhZHMgYnkgYSBtZW1iZXIgd2l0aCB0aGUgTUFOQUdFX1RIUkVBRFMgcGVybWlzc2lvbiAqL1xuICAgIG1vZGVyYXRlZDogYm9vbGVhblxuICAgIC8qKiBUaGUgaWQgb2YgYSBndWlsZCdzIGN1c3RvbSBlbW9qaSAqL1xuICAgIGVtb2ppSWQ6IEJpZ1N0cmluZ1xuICAgIC8qKiBUaGUgdW5pY29kZSBjaGFyYWN0ZXIgb2YgdGhlIGVtb2ppICovXG4gICAgZW1vamlOYW1lPzogc3RyaW5nXG4gIH0+XG4gIC8qKiBUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIHR5cGUgdXNlZCB0byBvcmRlciBwb3N0cyBpbiBmb3J1bSBjaGFubmVscyAqL1xuICBkZWZhdWx0U29ydE9yZGVyPzogU29ydE9yZGVyVHlwZXMgfCBudWxsXG4gIC8qKiBUaGUgaW5pdGlhbCByYXRlbGltaXQgdG8gc2V0IG9uIG5ld2x5IGNyZWF0ZWQgdGhyZWFkcyBpbiBhIGNoYW5uZWwuICovXG4gIGRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR2xvYmFsQXBwbGljYXRpb25Db21tYW5kT3B0aW9ucyB7XG4gIC8qKiBUaGUgYmVhcmVyIHRva2VuIG9mIHRoZSBkZXZlbG9wZXIgb2YgdGhlIGFwcGxpY2F0aW9uICovXG4gIGJlYXJlclRva2VuOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMge1xuICAvKiogVGhlIGJlYXJlciB0b2tlbiBvZiB0aGUgZGV2ZWxvcGVyIG9mIHRoZSBhcHBsaWNhdGlvbiAqL1xuICBiZWFyZXJUb2tlbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXBzZXJ0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kT3B0aW9ucyB7XG4gIC8qKiBUaGUgYmVhcmVyIHRva2VuIG9mIHRoZSBkZXZlbG9wZXIgb2YgdGhlIGFwcGxpY2F0aW9uICovXG4gIGJlYXJlclRva2VuOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcHNlcnRHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMge1xuICAvKiogVGhlIGJlYXJlciB0b2tlbiBvZiB0aGUgZGV2ZWxvcGVyIG9mIHRoZSBhcHBsaWNhdGlvbiAqL1xuICBiZWFyZXJUb2tlbjogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvdXNlciNjcmVhdGUtZ3JvdXAtZG0tanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0R3JvdXBEbU9wdGlvbnMge1xuICAvKiogQWNjZXNzIHRva2VucyBvZiB1c2VycyB0aGF0IGhhdmUgZ3JhbnRlZCB5b3VyIGFwcCB0aGUgYGdkbS5qb2luYCBzY29wZSAqL1xuICBhY2Nlc3NUb2tlbnM6IHN0cmluZ1tdXG4gIC8qKiBBIG1hcHBpbmcgb2YgdXNlciBpZHMgdG8gdGhlaXIgcmVzcGVjdGl2ZSBuaWNrbmFtZXMgKi9cbiAgbmlja3M/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNncm91cC1kbS1hZGQtcmVjaXBpZW50LWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEFkZERtUmVjaXBpZW50T3B0aW9ucyB7XG4gIC8qKiBhY2Nlc3MgdG9rZW4gb2YgYSB1c2VyIHRoYXQgaGFzIGdyYW50ZWQgeW91ciBhcHAgdGhlIGBnZG0uam9pbmAgc2NvcGUgKi9cbiAgYWNjZXNzVG9rZW46IHN0cmluZ1xuICAvKiogbmlja25hbWUgb2YgdGhlIHVzZXIgYmVpbmcgYWRkZWQgKi9cbiAgbmljaz86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2FkZC1ndWlsZC1tZW1iZXItanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRkR3VpbGRNZW1iZXJPcHRpb25zIHtcbiAgLyoqIGFjY2VzcyB0b2tlbiBvZiBhIHVzZXIgdGhhdCBoYXMgZ3JhbnRlZCB5b3VyIGFwcCB0aGUgYGd1aWxkcy5qb2luYCBzY29wZSAqL1xuICBhY2Nlc3NUb2tlbjogc3RyaW5nXG4gIC8qKiBWYWx1ZSB0byBzZXQgdXNlcidzIG5pY2tuYW1lIHRvLiBSZXF1aXJlcyBNQU5BR0VfTklDS05BTUVTIHBlcm1pc3Npb24gb24gdGhlIGJvdCAqL1xuICBuaWNrPzogc3RyaW5nXG4gIC8qKiBBcnJheSBvZiByb2xlIGlkcyB0aGUgbWVtYmVyIGlzIGFzc2lnbmVkLiBSZXF1aXJlcyBNQU5BR0VfUk9MRVMgcGVybWlzc2lvbiBvbiB0aGUgYm90ICovXG4gIHJvbGVzPzogc3RyaW5nW11cbiAgLyoqIFdoZXRoZXIgdGhlIHVzZXIgaXMgbXV0ZWQgaW4gdm9pY2UgY2hhbm5lbHMuIFJlcXVpcmVzIE1VVEVfTUVNQkVSUyBwZXJtaXNzaW9uIG9uIHRoZSBib3QgKi9cbiAgbXV0ZT86IGJvb2xlYW5cbiAgLyoqIFdoZXRoZXIgdGhlIHVzZXIgaXMgZGVhZmVuZWQgaW4gdm9pY2UgY2hhbm5lbHMuIFJlcXVpcmVzIERFQUZFTl9NRU1CRVJTIHBlcm1pc3Npb24gb24gdGhlIGJvdCAqL1xuICBkZWFmPzogYm9vbGVhblxufVxuXG4vKipcbiAqIC0gaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjbW9kaWZ5LWNoYW5uZWwtanNvbi1wYXJhbXMtZ3JvdXAtZG1cbiAqIC0gaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjbW9kaWZ5LWNoYW5uZWwtanNvbi1wYXJhbXMtZ3VpbGQtY2hhbm5lbFxuICogLSBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNtb2RpZnktY2hhbm5lbC1qc29uLXBhcmFtcy10aHJlYWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlDaGFubmVsIHtcbiAgLyoqXG4gICAqIDEtMTAwIGNoYXJhY3RlciBjaGFubmVsIG5hbWVcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyB2YWxpZCBvbmx5IHdoZW4gZWRpdGluZyBncm91cCBkbXMsIGFueSBndWlsZCBjaGFubmVsIHR5cGUsIG9yIGEgdGhyZWFkXG4gICAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiBCYXNlNjQgZW5jb2RlZCBpY29uXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgdmFsaWQgb25seSB3aGVuIGVkaXRpbmcgZ3JvdXAgZG1zXG4gICAqL1xuICBpY29uPzogc3RyaW5nXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBjaGFubmVsXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFlvdSBjYW4gb25seSBjb252ZXJ0IGJldHdlZW4ge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9IGNoYW5uZWxzIGFuZCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkQW5ub3VuY2VtZW50fSBjaGFubmVscyB3aGVuIHRoZSBndWlsZCBoYXMgdGhlIGBORVdTYCBmZWF0dXJlXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRBbm5vdW5jZW1lbnR9LlxuICAgKi9cbiAgdHlwZT86IENoYW5uZWxUeXBlc1xuICAvKipcbiAgICogVGhlIHBvc2l0aW9uIG9mIHRoZSBjaGFubmVsIGluIHRoZSBsZWZ0LWhhbmQgbGlzdGluZyAoY2hhbm5lbHMgd2l0aCB0aGUgc2FtZSBwb3NpdGlvbiBhcmUgc29ydGVkIGJ5IGlkKVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiBhbnkgdHlwZVxuICAgKi9cbiAgcG9zaXRpb24/OiBudW1iZXIgfCBudWxsXG4gIC8qKlxuICAgKiBDaGFubmVsIHRvcGljXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIDAtMTAyNCBjaGFyYWN0ZXIgY2hhbm5lbCB0b3BpYywgb3IgZm9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gYW5kIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0gMC00MDk2XG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkQW5ub3VuY2VtZW50fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgdG9waWM/OiBzdHJpbmcgfCBudWxsXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjaGFubmVsIGlzIG5zZndcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkVGV4dH0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRWb2ljZX0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRBbm5vdW5jZW1lbnR9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkU3RhZ2VWb2ljZX0ge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgbnNmdz86IGJvb2xlYW4gfCBudWxsXG4gIC8qKlxuICAgKiBBbW91bnQgb2Ygc2Vjb25kcyBhIHVzZXIgaGFzIHRvIHdhaXQgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlIGluIHNlY29uZHMgKDAtMjE2MDApXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIEJvdHMgYW5kIHVzZXJzIHdpdGggdGhlIHBlcm1pc3Npb24gYE1BTkFHRV9NRVNTQUdFU2Agb3IgYE1BTkFHRV9DSEFOTkVMYCwgYXJlIHVuYWZmZWN0ZWRcbiAgICpcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkVGV4dH0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRWb2ljZX0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRTdGFnZVZvaWNlfSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0sIG9yIGEgdGhyZWFkLlxuICAgKi9cbiAgcmF0ZUxpbWl0UGVyVXNlcj86IG51bWJlciB8IG51bGxcbiAgLyoqXG4gICAqIFRoZSBiaXRyYXRlIChpbiBiaXRzKSBvZiB0aGUgdm9pY2Ugb3Igc3RhZ2UgY2hhbm5lbFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBNaW5pbXVtIG9mIDgwMDAgYml0c1xuICAgKlxuICAgKiBGb3Igdm9pY2UgY2hhbm5lbHM6XG4gICAqIC0gbm9ybWFsIHNlcnZlcnMgY2FuIHNldCBiaXRyYXRlIHVwIHRvIDk2MDAwXG4gICAqIC0gc2VydmVycyB3aXRoIEJvb3N0IGxldmVsIDEgY2FuIHNldCB1cCB0byAxMjgwMDBcbiAgICogLSBzZXJ2ZXJzIHdpdGggQm9vc3QgbGV2ZWwgMiBjYW4gc2V0IHVwIHRvIDI1NjAwMFxuICAgKiAtIHNlcnZlcnMgd2l0aCBCb29zdCBsZXZlbCAzIG9yIHRoZSBgVklQX1JFR0lPTlNgIGd1aWxkIGZlYXR1cmUgY2FuIHNldCB1cCB0byAzODQwMDAuXG4gICAqXG4gICAqIEZvciBzdGFnZSBjaGFubmVscywgYml0cmF0ZSBjYW4gYmUgc2V0IHVwIHRvIDY0MDAwLlxuICAgKlxuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRWb2ljZX0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRTdGFnZVZvaWNlfS5cbiAgICovXG4gIGJpdHJhdGU/OiBudW1iZXIgfCBudWxsXG4gIC8qKlxuICAgKiBUaGUgdXNlciBsaW1pdCBvZiB0aGUgdm9pY2Ugb3Igc3RhZ2UgY2hhbm5lbCAoMCByZWZlcnMgdG8gbm8gbGltaXQpXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIC0gRm9yIHZvaWNlIGNoYW5uZWxzLCB0aGUgbWF4IGlzIHNldCB0byA5OVxuICAgKiAtIEZvciBzdGFnZSBjaGFubmVscywgdGhlIG1heCBpcyBzZXQgdG8gMTAsMDAwXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFZvaWNlfSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFN0YWdlVm9pY2V9LlxuICAgKi9cbiAgdXNlckxpbWl0PzogbnVtYmVyIHwgbnVsbFxuICAvKipcbiAgICogQ2hhbm5lbCBvciBjYXRlZ29yeS1zcGVjaWZpYyBwZXJtaXNzaW9uc1xuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiBhbnkgdHlwZVxuICAgKi9cbiAgcGVybWlzc2lvbk92ZXJ3cml0ZXM/OiBPdmVyd3JpdGVSZWFkYWJsZVtdIHwgbnVsbFxuICAvKipcbiAgICogSWQgb2YgdGhlIG5ldyBwYXJlbnQgY2F0ZWdvcnkgZm9yIGEgY2hhbm5lbFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRUZXh0fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFZvaWNlfSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEFubm91bmNlbWVudH0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRTdGFnZVZvaWNlfSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0uXG4gICAqL1xuICBwYXJlbnRJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqXG4gICAqIFZvaWNlIHJlZ2lvbiBpZCBmb3IgdGhlIHZvaWNlIGNoYW5uZWwsIGF1dG9tYXRpYyB3aGVuIHNldCB0byBudWxsXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFZvaWNlfSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFN0YWdlVm9pY2V9LlxuICAgKi9cbiAgcnRjUmVnaW9uPzogc3RyaW5nIHwgbnVsbFxuICAvKipcbiAgICogVGhlIGNhbWVyYSB2aWRlbyBxdWFsaXR5IG1vZGUgb2YgdGhlIHZvaWNlIGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkVm9pY2V9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkU3RhZ2VWb2ljZX0uXG4gICAqL1xuICB2aWRlb1F1YWxpdHlNb2RlPzogVmlkZW9RdWFsaXR5TW9kZXNcbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGR1cmF0aW9uIHRoYXQgdGhlIGNsaWVudHMgdXNlIChub3QgdGhlIEFQSSkgZm9yIG5ld2x5IGNyZWF0ZWQgdGhyZWFkcyBpbiB0aGUgY2hhbm5lbCwgaW4gbWludXRlcywgdG8gYXV0b21hdGljYWxseSBhcmNoaXZlIHRoZSB0aHJlYWQgYWZ0ZXIgcmVjZW50IGFjdGl2aXR5XG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkQW5ub3VuY2VtZW50fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgZGVmYXVsdEF1dG9BcmNoaXZlRHVyYXRpb24/OiA2MCB8IDE0NDAgfCA0MzIwIHwgMTAwODBcbiAgLyoqXG4gICAqIENoYW5uZWwgZmxhZ3MgY29tYmluZWQgYXMgYSBiaXRmaWVsZC5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogLSBgUkVRVUlSRV9UQUdgIGlzIHN1cHBvcnRlZCBvbmx5IGJ5IHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gYW5kIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0gY2hhbm5lbHMuXG4gICAqIC0gYEhJREVfTUVESUFfRE9XTkxPQURfT1BUSU9OU2AgaXMgc3VwcG9ydGVkIG9ubHkgYnkge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZE1lZGlhfSBjaGFubmVsc1xuICAgKiAtIGBQSU5ORURgIGNhbiBvbmx5IGJlIHNldCBmb3IgdGhyZWFkcyBpbiB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IGFuZCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxzXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LCBvciBhIHRocmVhZC5cbiAgICovXG4gIGZsYWdzPzogbnVtYmVyXG4gIC8qKlxuICAgKiBUaGUgc2V0IG9mIHRhZ3MgdGhhdCBjYW4gYmUgdXNlZCBpbiBhIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gb3IgYSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogTGltaXRlZCB0byAyMCB0YWdzXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgYXZhaWxhYmxlVGFncz86IERpc2NvcmRGb3J1bVRhZ1tdXG4gIC8qKlxuICAgKiBUaGUgZW1vamkgdG8gc2hvdyBpbiB0aGUgYWRkIHJlYWN0aW9uIGJ1dHRvbiBvbiBhIHRocmVhZCBpbiBhIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gb3IgYSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0uXG4gICAqL1xuICBkZWZhdWx0UmVhY3Rpb25FbW9qaT86IERpc2NvcmREZWZhdWx0UmVhY3Rpb25FbW9qaVxuICAvKipcbiAgICogVGhlIGluaXRpYWwgYHJhdGVfbGltaXRfcGVyX3VzZXJgIHRvIHNldCBvbiBuZXdseSBjcmVhdGVkIHRocmVhZHMgaW4gYSBjaGFubmVsLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGZpZWxkIGlzIGNvcGllZCB0byB0aGUgdGhyZWFkIGF0IGNyZWF0aW9uIHRpbWUgYW5kIGRvZXMgbm90IGxpdmUgdXBkYXRlLlxuICAgKlxuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRUZXh0fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgZGVmYXVsdFRocmVhZFJhdGVMaW1pdFBlclVzZXI/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHNvcnQgb3JkZXIgdHlwZSB1c2VkIHRvIG9yZGVyIHBvc3RzIGluIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gYW5kIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0gY2hhbm5lbHNcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0uXG4gICAqL1xuICBkZWZhdWx0U29ydE9yZGVyPzogU29ydE9yZGVyVHlwZXMgfCBudWxsXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBmb3J1bSBsYXlvdXQgdHlwZSB1c2VkIHRvIGRpc3BsYXkgcG9zdHMgaW4ge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBjaGFubmVsc1xuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0uXG4gICAqL1xuICBkZWZhdWx0Rm9ybUxheW91dD86IEZvcnVtTGF5b3V0XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSB0aHJlYWQgaXMgYXJjaGl2ZWRcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIHRocmVhZFxuICAgKi9cbiAgYXJjaGl2ZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBUaGUgdGhyZWFkIHdpbGwgc3RvcCBzaG93aW5nIGluIHRoZSBjaGFubmVsIGxpc3QgYWZ0ZXIgYGF1dG9fYXJjaGl2ZV9kdXJhdGlvbmAgbWludXRlcyBvZiBpbmFjdGl2aXR5XG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSB0aHJlYWRcbiAgICovXG4gIGF1dG9BcmNoaXZlRHVyYXRpb24/OiA2MCB8IDE0NDAgfCA0MzIwIHwgMTAwODBcbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHRocmVhZCBpcyBsb2NrZWQuIFdoZW4gYSB0aHJlYWQgaXMgbG9ja2VkLCBvbmx5IHVzZXJzIHdpdGggYE1BTkFHRV9USFJFQURTYCBjYW4gdW5hcmNoaXZlIGl0XG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSB0aHJlYWRcbiAgICovXG4gIGxvY2tlZD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIFdoZXRoZXIgbm9uLW1vZGVyYXRvcnMgY2FuIGFkZCBvdGhlciBub24tbW9kZXJhdG9ycyB0byBhIHRocmVhZFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IGF2YWlsYWJsZSBvbiBwcml2YXRlIHRocmVhZHNcbiAgICpcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIHRocmVhZFxuICAgKi9cbiAgaW52aXRhYmxlPzogYm9vbGVhblxuICAvKipcbiAgICogVGhlIElEcyBvZiB0aGUgc2V0IG9mIHRhZ3MgdGhhdCBoYXZlIGJlZW4gYXBwbGllZCB0byBhIHRocmVhZCBpbiBhIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gb3IgYSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogTGltaXRlZCB0byA1XG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSB0aHJlYWRcbiAgICovXG4gIGFwcGxpZWRUYWdzPzogQmlnU3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0Q2hhbm5lbFBlcm1pc3Npb25PdmVycmlkZXNPcHRpb25zIGV4dGVuZHMgT3ZlcndyaXRlUmVhZGFibGUge31cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNtb2RpZnktZ3VpbGQtY2hhbm5lbC1wb3NpdGlvbnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRDaGFubmVsUG9zaXRpb25zIHtcbiAgLyoqIENoYW5uZWwgaWQgKi9cbiAgaWQ6IEJpZ1N0cmluZ1xuICAvKiogU29ydGluZyBwb3NpdGlvbiBvZiB0aGUgY2hhbm5lbCAoY2hhbm5lbHMgd2l0aCB0aGUgc2FtZSBwb3NpdGlvbiBhcmUgc29ydGVkIGJ5IGlkKSAqL1xuICBwb3NpdGlvbj86IG51bWJlciB8IG51bGxcbiAgLyoqIFN5bmNzIHRoZSBwZXJtaXNzaW9uIG92ZXJ3cml0ZXMgd2l0aCB0aGUgbmV3IHBhcmVudCwgaWYgbW92aW5nIHRvIGEgbmV3IGNhdGVnb3J5ICovXG4gIGxvY2tQb3NpdGlvbnM/OiBib29sZWFuIHwgbnVsbFxuICAvKiogVGhlIG5ldyBwYXJlbnQgSUQgZm9yIHRoZSBjaGFubmVsIHRoYXQgaXMgbW92ZWQgKi9cbiAgcGFyZW50SWQ/OiBCaWdTdHJpbmcgfCBudWxsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5V2ViaG9vayB7XG4gIC8qKiBUaGUgZGVmYXVsdCBuYW1lIG9mIHRoZSB3ZWJob29rICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIEltYWdlIGZvciB0aGUgZGVmYXVsdCB3ZWJob29rIGF2YXRhciAqL1xuICBhdmF0YXI/OiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBUaGUgbmV3IGNoYW5uZWwgaWQgdGhpcyB3ZWJob29rIHNob3VsZCBiZSBtb3ZlZCB0byAqL1xuICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy93ZWJob29rI2V4ZWN1dGUtd2ViaG9vayAqL1xuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRlV2ViaG9vayB7XG4gIC8qKiBXYWl0cyBmb3Igc2VydmVyIGNvbmZpcm1hdGlvbiBvZiBtZXNzYWdlIHNlbmQgYmVmb3JlIHJlc3BvbnNlLCBhbmQgcmV0dXJucyB0aGUgY3JlYXRlZCBtZXNzYWdlIGJvZHkgKGRlZmF1bHRzIHRvIGBmYWxzZWA7IHdoZW4gYGZhbHNlYCBhIG1lc3NhZ2UgdGhhdCBpcyBub3Qgc2F2ZWQgZG9lcyBub3QgcmV0dXJuIGFuIGVycm9yKSAqL1xuICB3YWl0PzogYm9vbGVhblxuICAvKiogU2VuZCBhIG1lc3NhZ2UgdG8gdGhlIHNwZWNpZmllZCB0aHJlYWQgd2l0aGluIGEgd2ViaG9vaydzIGNoYW5uZWwuIFRoZSB0aHJlYWQgd2lsbCBhdXRvbWF0aWNhbGx5IGJlIHVuYXJjaGl2ZWQuICovXG4gIHRocmVhZElkPzogQmlnU3RyaW5nXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIHJlc3BlY3QgdGhlIGBjb21wb25lbnRzYCBmaWVsZCBvZiB0aGUgcmVxdWVzdC5cbiAgICogV2hlbiBlbmFibGVkLCBhbGxvd3MgYXBwbGljYXRpb24tb3duZWQgd2ViaG9va3MgdG8gdXNlIGFsbCBjb21wb25lbnRzIGFuZCBub24tb3duZWQgd2ViaG9va3MgdG8gdXNlIG5vbi1pbnRlcmFjdGl2ZSBjb21wb25lbnRzLlxuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgd2l0aENvbXBvbmVudHM/OiBib29sZWFuXG4gIC8qKiBOYW1lIG9mIHRoZSB0aHJlYWQgdG8gY3JlYXRlICh0YXJnZXQgY2hhbm5lbCBoYXMgdG8gYmUgdHlwZSBvZiBmb3J1bSBjaGFubmVsKSAqL1xuICB0aHJlYWROYW1lPzogc3RyaW5nXG4gIC8qKiBBcnJheSBvZiB0YWcgaWRzIHRvIGFwcGx5IHRvIHRoZSB0aHJlYWQgKHJlcXVpcmVzIHRoZSB3ZWJob29rIGNoYW5uZWwgdG8gYmUgYSBmb3J1bSBvciBtZWRpYSBjaGFubmVsKSAqL1xuICBhcHBsaWVkVGFncz86IEJpZ1N0cmluZ1tdXG4gIC8qKiBUaGUgbWVzc2FnZSBjb250ZW50cyAodXAgdG8gMjAwMCBjaGFyYWN0ZXJzKSAqL1xuICBjb250ZW50Pzogc3RyaW5nXG4gIC8qKiBPdmVycmlkZSB0aGUgZGVmYXVsdCB1c2VybmFtZSBvZiB0aGUgd2ViaG9vayAqL1xuICB1c2VybmFtZT86IHN0cmluZ1xuICAvKiogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgYXZhdGFyIG9mIHRoZSB3ZWJob29rICovXG4gIGF2YXRhclVybD86IHN0cmluZ1xuICAvKiogVHJ1ZSBpZiB0aGlzIGlzIGEgVFRTIG1lc3NhZ2UgKi9cbiAgdHRzPzogYm9vbGVhblxuICAvKiogVGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlcyBiZWluZyBzZW50ICovXG4gIGZpbGVzPzogRmlsZUNvbnRlbnRbXVxuICAvKiogRW1iZWRkZWQgYHJpY2hgIGNvbnRlbnQgKi9cbiAgZW1iZWRzPzogQ2FtZWxpemU8RGlzY29yZEVtYmVkPltdXG4gIC8qKiBBbGxvd2VkIG1lbnRpb25zIGZvciB0aGUgbWVzc2FnZSAqL1xuICBhbGxvd2VkTWVudGlvbnM/OiBBbGxvd2VkTWVudGlvbnNcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnRzIHRvIGluY2x1ZGUgd2l0aCB0aGUgbWVzc2FnZVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBBcHBsaWNhdGlvbi1vd25lZCB3ZWJob29rcyBjYW4gYWx3YXlzIHNlbmQgY29tcG9uZW50cy5cbiAgICogTm9uLWFwcGxpY2F0aW9uLW93bmVkIHdlYmhvb2tzIGNhbm5vdCBzZW5kIGludGVyYWN0aXZlIGNvbXBvbmVudHMsIGFuZCB0aGUgYGNvbXBvbmVudHNgIGZpZWxkIHdpbGwgYmUgZ25vcmVkIHVubGVzcyB0aGV5IHNldCB0aGUgYHdpdGhfY29tcG9uZW50c2AgcXVlcnkgcGFyYW0uXG4gICAqL1xuICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbiAgLyoqIEEgcG9sbCBvYmplY3QgKi9cbiAgcG9sbD86IENyZWF0ZVBvbGxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRXZWJob29rTWVzc2FnZU9wdGlvbnMge1xuICAvKiogaWQgb2YgdGhlIHRocmVhZCB0aGUgbWVzc2FnZSBpcyBpbiAqL1xuICB0aHJlYWRJZDogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvd2ViaG9vayNlZGl0LXdlYmhvb2stbWVzc2FnZSAqL1xuZXhwb3J0IGludGVyZmFjZSBFZGl0V2ViaG9va01lc3NhZ2VPcHRpb25zIHtcbiAgLyoqIElkIG9mIHRoZSB0aHJlYWQgdGhlIG1lc3NhZ2UgaXMgaW4gKi9cbiAgdGhyZWFkSWQ/OiBCaWdTdHJpbmdcbiAgLyoqXG4gICAqIFdoZXRoZXIgdG8gcmVzcGVjdCB0aGUgYGNvbXBvbmVudHNgIGZpZWxkIG9mIHRoZSByZXF1ZXN0LlxuICAgKiBXaGVuIGVuYWJsZWQsIGFsbG93cyBhcHBsaWNhdGlvbi1vd25lZCB3ZWJob29rcyB0byB1c2UgYWxsIGNvbXBvbmVudHMgYW5kIG5vbi1vd25lZCB3ZWJob29rcyB0byB1c2Ugbm9uLWludGVyYWN0aXZlIGNvbXBvbmVudHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICB3aXRoQ29tcG9uZW50cz86IGJvb2xlYW5cbiAgLyoqIFRoZSBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gIGNvbnRlbnQ/OiBzdHJpbmdcbiAgLyoqIEVtYmVkZGVkIGByaWNoYCBjb250ZW50ICovXG4gIGVtYmVkcz86IENhbWVsaXplPERpc2NvcmRFbWJlZD5bXVxuICAvKiogQWxsb3dlZCBtZW50aW9ucyBmb3IgdGhlIG1lc3NhZ2UgKi9cbiAgYWxsb3dlZE1lbnRpb25zPzogQWxsb3dlZE1lbnRpb25zXG4gIC8qKlxuICAgKiBUaGUgY29tcG9uZW50cyB0byBpbmNsdWRlIHdpdGggdGhlIG1lc3NhZ2VcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogQXBwbGljYXRpb24tb3duZWQgd2ViaG9va3MgY2FuIGFsd2F5cyBzZW5kIGNvbXBvbmVudHMuXG4gICAqIE5vbi1hcHBsaWNhdGlvbi1vd25lZCB3ZWJob29rcyBjYW5ub3Qgc2VuZCBpbnRlcmFjdGl2ZSBjb21wb25lbnRzLCBhbmQgdGhlIGBjb21wb25lbnRzYCBmaWVsZCB3aWxsIGJlIGdub3JlZCB1bmxlc3MgdGhleSBzZXQgdGhlIGB3aXRoX2NvbXBvbmVudHNgIHF1ZXJ5IHBhcmFtLlxuICAgKi9cbiAgY29tcG9uZW50cz86IE1lc3NhZ2VDb21wb25lbnRzXG4gIC8qKiBUaGUgY29udGVudHMgb2YgdGhlIGZpbGVzIGJlaW5nIHNlbnQgKi9cbiAgZmlsZXM/OiBGaWxlQ29udGVudFtdXG4gIC8qKiBBdHRhY2hlZCBmaWxlcyB0byBrZWVwIGFuZCBwb3NzaWJsZSBkZXNjcmlwdGlvbnMgZm9yIG5ldyBmaWxlcyAqL1xuICBhdHRhY2htZW50cz86IChQaWNrPENhbWVsaXplPERpc2NvcmRBdHRhY2htZW50PiwgJ2lkJz4gJiBPbWl0PFBhcnRpYWw8Q2FtZWxpemU8RGlzY29yZEF0dGFjaG1lbnQ+PiwgJ2lkJz4pW11cbiAgLyoqXG4gICAqIEEgcG9sbCFcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogUG9sbHMgY2FuIG9ubHkgYmUgYWRkZWQgd2hlbiBlZGl0aW5nIGEgZGVmZXJyZWQgaW50ZXJhY3Rpb24gcmVzcG9uc2UuXG4gICAqL1xuICBwb2xsPzogQ3JlYXRlUG9sbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIERlbGV0ZVdlYmhvb2tNZXNzYWdlT3B0aW9ucyB7XG4gIC8qKiBpZCBvZiB0aGUgdGhyZWFkIHRoZSBtZXNzYWdlIGlzIGluICovXG4gIHRocmVhZElkOiBCaWdTdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVGb3J1bVBvc3RXaXRoTWVzc2FnZSB7XG4gIC8qKiAxLTEwMCBjaGFyYWN0ZXIgdGhyZWFkIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBEdXJhdGlvbiBpbiBtaW51dGVzIHRvIGF1dG9tYXRpY2FsbHkgYXJjaGl2ZSB0aGUgdGhyZWFkIGFmdGVyIHJlY2VudCBhY3Rpdml0eSAqL1xuICBhdXRvQXJjaGl2ZUR1cmF0aW9uPzogNjAgfCAxNDQwIHwgNDMyMCB8IDEwMDgwXG4gIC8qKiBBbW91bnQgb2Ygc2Vjb25kcyBhIHVzZXIgaGFzIHRvIHdhaXQgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlICgwLTIxNjAwKSAqL1xuICByYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyIHwgbnVsbFxuICAvKiogY29udGVudHMgb2YgdGhlIGZpcnN0IG1lc3NhZ2UgaW4gdGhlIGZvcnVtL21lZGlhIHRocmVhZCAqL1xuICBtZXNzYWdlOiB7XG4gICAgLyoqIFRoZSBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gICAgY29udGVudD86IHN0cmluZ1xuICAgIC8qKiBFbWJlZGRlZCBgcmljaGAgY29udGVudCAodXAgdG8gNjAwMCBjaGFyYWN0ZXJzKSAqL1xuICAgIGVtYmVkcz86IENhbWVsaXplPERpc2NvcmRFbWJlZD5bXVxuICAgIC8qKiBBbGxvd2VkIG1lbnRpb25zIGZvciB0aGUgbWVzc2FnZSAqL1xuICAgIGFsbG93ZWRNZW50aW9ucz86IEFsbG93ZWRNZW50aW9uc1xuICAgIC8qKiBUaGUgY29tcG9uZW50cyB5b3Ugd291bGQgbGlrZSB0byBoYXZlIHNlbnQgaW4gdGhpcyBtZXNzYWdlICovXG4gICAgY29tcG9uZW50cz86IE1lc3NhZ2VDb21wb25lbnRzXG4gICAgLyoqIElEcyBvZiB1cCB0byAzIHN0aWNrZXJzIGluIHRoZSBzZXJ2ZXIgdG8gc2VuZCBpbiB0aGUgbWVzc2FnZSAqL1xuICAgIHN0aWNrZXJJZHM/OiBCaWdTdHJpbmdbXVxuICAgIC8qKiBNZXNzYWdlIGZsYWdzIGNvbWJpbmVkIGFzIGEgYml0ZmllbGQsIG9ubHkgU1VQUFJFU1NfRU1CRURTLCBTVVBQUkVTU19OT1RJRklDQVRJT05TIGFuZCBJU19DT01QT05FTlRTX1YyIGNhbiBiZSBzZXQgKi9cbiAgICBmbGFncz86IE1lc3NhZ2VGbGFnc1xuICB9XG4gIC8qKiBUaGUgSURzIG9mIHRoZSBzZXQgb2YgdGFncyB0aGF0IGhhdmUgYmVlbiBhcHBsaWVkIHRvIGEgdGhyZWFkIGluIGEgR1VJTERfRk9SVU0gb3IgYSBHVUlMRF9NRURJQSBjaGFubmVsICovXG4gIGFwcGxpZWRUYWdzPzogQmlnU3RyaW5nW11cbiAgLyoqIFRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXMgYmVpbmcgc2VudCAqL1xuICBmaWxlcz86IEZpbGVDb250ZW50W11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVTdGFnZUluc3RhbmNlIHtcbiAgLyoqIFRoZSBpZCBvZiB0aGUgU3RhZ2UgY2hhbm5lbCAqL1xuICBjaGFubmVsSWQ6IEJpZ1N0cmluZ1xuICAvKiogVGhlIHRvcGljIG9mIHRoZSBTdGFnZSBpbnN0YW5jZSAoMS0xMjAgY2hhcmFjdGVycykgKi9cbiAgdG9waWM6IHN0cmluZ1xuICAvKiogTm90aWZ5IFxcQGV2ZXJ5b25lIHRoYXQgdGhlIHN0YWdlIGluc3RhbmNlIGhhcyBzdGFydGVkLiBSZXF1aXJlcyB0aGUgTUVOVElPTl9FVkVSWU9ORSBwZXJtaXNzaW9uLiAqL1xuICBzZW5kU3RhcnROb3RpZmljYXRpb24/OiBib29sZWFuXG4gIC8qKiBUaGUgZ3VpbGQgc2NoZWR1bGVkIGV2ZW50IGFzc29jaWF0ZWQgd2l0aCB0aGlzIFN0YWdlIGluc3RhbmNlICovXG4gIGd1aWxkU2NoZWR1bGVkRXZlbnRJZD86IEJpZ1N0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRTdGFnZUluc3RhbmNlT3B0aW9ucyB7XG4gIC8qKiBUaGUgdG9waWMgb2YgdGhlIFN0YWdlIGluc3RhbmNlICgxLTEyMCBjaGFyYWN0ZXJzKSAqL1xuICB0b3BpYzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcnRUaHJlYWRXaXRoTWVzc2FnZSB7XG4gIC8qKiAxLTEwMCBjaGFyYWN0ZXIgdGhyZWFkIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBEdXJhdGlvbiBpbiBtaW51dGVzIHRvIGF1dG9tYXRpY2FsbHkgYXJjaGl2ZSB0aGUgdGhyZWFkIGFmdGVyIHJlY2VudCBhY3Rpdml0eSAqL1xuICBhdXRvQXJjaGl2ZUR1cmF0aW9uPzogNjAgfCAxNDQwIHwgNDMyMCB8IDEwMDgwXG4gIC8qKiBBbW91bnQgb2Ygc2Vjb25kcyBhIHVzZXIgaGFzIHRvIHdhaXQgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlICgwLTIxNjAwKSAqL1xuICByYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyIHwgbnVsbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN0YXJ0VGhyZWFkV2l0aG91dE1lc3NhZ2Uge1xuICAvKiogMS0xMDAgY2hhcmFjdGVyIHRocmVhZCBuYW1lICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogRHVyYXRpb24gaW4gbWludXRlcyB0byBhdXRvbWF0aWNhbGx5IGFyY2hpdmUgdGhlIHRocmVhZCBhZnRlciByZWNlbnQgYWN0aXZpdHkgKi9cbiAgYXV0b0FyY2hpdmVEdXJhdGlvbj86IDYwIHwgMTQ0MCB8IDQzMjAgfCAxMDA4MFxuICAvKiogQW1vdW50IG9mIHNlY29uZHMgYSB1c2VyIGhhcyB0byB3YWl0IGJlZm9yZSBzZW5kaW5nIGFub3RoZXIgbWVzc2FnZSAoMC0yMTYwMCkgKi9cbiAgcmF0ZUxpbWl0UGVyVXNlcj86IG51bWJlciB8IG51bGxcbiAgLyoqIHRoZSB0eXBlIG9mIHRocmVhZCB0byBjcmVhdGUgKi9cbiAgdHlwZTogQ2hhbm5lbFR5cGVzLkFubm91bmNlbWVudFRocmVhZCB8IENoYW5uZWxUeXBlcy5QdWJsaWNUaHJlYWQgfCBDaGFubmVsVHlwZXMuUHJpdmF0ZVRocmVhZFxuICAvKiogd2hldGhlciBub24tbW9kZXJhdG9ycyBjYW4gYWRkIG90aGVyIG5vbi1tb2RlcmF0b3JzIHRvIGEgdGhyZWFkOyBvbmx5IGF2YWlsYWJsZSB3aGVuIGNyZWF0aW5nIGEgcHJpdmF0ZSB0aHJlYWQgKi9cbiAgaW52aXRhYmxlPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUF1dG9Nb2RlcmF0aW9uUnVsZU9wdGlvbnMge1xuICAvKiogVGhlIG5hbWUgb2YgdGhlIHJ1bGUuICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIHR5cGUgb2YgZXZlbnQgdG8gdHJpZ2dlciB0aGUgcnVsZSBvbi4gKi9cbiAgZXZlbnRUeXBlOiBBdXRvTW9kZXJhdGlvbkV2ZW50VHlwZXNcbiAgLyoqIFRoZSB0eXBlIG9mIHRyaWdnZXIgdG8gdXNlIGZvciB0aGUgcnVsZS4gKi9cbiAgdHJpZ2dlclR5cGU6IEF1dG9Nb2RlcmF0aW9uVHJpZ2dlclR5cGVzXG4gIC8qKiBUaGUgbWV0YWRhdGEgdG8gdXNlIGZvciB0aGUgdHJpZ2dlci4gKi9cbiAgdHJpZ2dlck1ldGFkYXRhOiB7XG4gICAgLyoqIFRoZSBrZXl3b3JkcyBuZWVkZWQgdG8gbWF0Y2guIE9ubHkgcHJlc2VudCB3aGVuIFRyaWdnZXJUeXBlLktleXdvcmQgKi9cbiAgICBrZXl3b3JkRmlsdGVyPzogc3RyaW5nW11cbiAgICAvKiogUmVndWxhciBleHByZXNzaW9uIHBhdHRlcm5zIHdoaWNoIHdpbGwgYmUgbWF0Y2hlZCBhZ2FpbnN0IGNvbnRlbnQuIE9ubHkgcHJlc2VudCB3aGVuIFRyaWdnZXJUeXBlLktleXdvcmQgKi9cbiAgICByZWdleFBhdHRlcm5zPzogc3RyaW5nW11cbiAgICAvKiogVGhlIHByZS1kZWZpbmVkIGxpc3RzIG9mIHdvcmRzIHRvIG1hdGNoIGZyb20uIE9ubHkgcHJlc2VudCB3aGVuIFRyaWdnZXJUeXBlLktleXdvcmRQcmVzZXQgKi9cbiAgICBwcmVzZXRzPzogRGlzY29yZEF1dG9Nb2RlcmF0aW9uUnVsZVRyaWdnZXJNZXRhZGF0YVByZXNldHNbXVxuICAgIC8qKiBUaGUgc3Vic3RyaW5ncyB3aGljaCB3aWxsIGV4ZW1wdCBmcm9tIHRyaWdnZXJpbmcgdGhlIHByZXNldCB0cmlnZ2VyIHR5cGUuIE9ubHkgcHJlc2VudCB3aGVuIFRyaWdnZXJUeXBlLktleXdvcmRQcmVzZXQgKi9cbiAgICBhbGxvd0xpc3Q/OiBzdHJpbmdbXVxuICAgIC8qKiBUb3RhbCBudW1iZXIgb2YgbWVudGlvbnMgKHJvbGUgJiB1c2VyKSBhbGxvd2VkIHBlciBtZXNzYWdlIChNYXhpbXVtIG9mIDUwKS4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuTWVudGlvblNwYW0gKi9cbiAgICBtZW50aW9uVG90YWxMaW1pdD86IG51bWJlclxuICB9XG4gIC8qKiBUaGUgYWN0aW9ucyB0aGF0IHdpbGwgdHJpZ2dlciBmb3IgdGhpcyBydWxlICovXG4gIGFjdGlvbnM6IEFycmF5PHtcbiAgICAvKiogVGhlIHR5cGUgb2YgYWN0aW9uIHRvIHRha2Ugd2hlbiBhIHJ1bGUgaXMgdHJpZ2dlcmVkICovXG4gICAgdHlwZTogQXV0b01vZGVyYXRpb25BY3Rpb25UeXBlXG4gICAgLyoqIGFkZGl0aW9uYWwgbWV0YWRhdGEgbmVlZGVkIGR1cmluZyBleGVjdXRpb24gZm9yIHRoaXMgc3BlY2lmaWMgYWN0aW9uIHR5cGUgKi9cbiAgICBtZXRhZGF0YT86IHtcbiAgICAgIC8qKiBUaGUgaWQgb2YgY2hhbm5lbCB0byB3aGljaCB1c2VyIGNvbnRlbnQgc2hvdWxkIGJlIGxvZ2dlZC4gT25seSBpbiBTZW5kQWxlcnRNZXNzYWdlICovXG4gICAgICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbiAgICAgIC8qKiBUaW1lb3V0IGR1cmF0aW9uIGluIHNlY29uZHMuIE1heCBpcyAyNDE5MjAwKDQgd2Vla3MpLiBPbmx5IHN1cHBvcnRlZCBmb3IgVHJpZ2dlclR5cGUuS2V5d29yZCAqL1xuICAgICAgZHVyYXRpb25TZWNvbmRzPzogbnVtYmVyXG4gICAgfVxuICB9PlxuICAvKiogV2hldGhlciB0aGUgcnVsZSBzaG91bGQgYmUgZW5hYmxlZCwgdHJ1ZSBieSBkZWZhdWx0LiAqL1xuICBlbmFibGVkPzogYm9vbGVhblxuICAvKiogVGhlIHJvbGUgaWRzIHRoYXQgc2hvdWxkIG5vdCBiZSBlZmZlY3RlZCBieSB0aGUgcnVsZSAqL1xuICBleGVtcHRSb2xlcz86IEJpZ1N0cmluZ1tdXG4gIC8qKiBUaGUgY2hhbm5lbCBpZHMgdGhhdCBzaG91bGQgbm90IGJlIGVmZmVjdGVkIGJ5IHRoZSBydWxlLiAqL1xuICBleGVtcHRDaGFubmVscz86IEJpZ1N0cmluZ1tdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdEF1dG9Nb2RlcmF0aW9uUnVsZU9wdGlvbnMge1xuICAvKiogVGhlIG5hbWUgb2YgdGhlIHJ1bGUuICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIHR5cGUgb2YgZXZlbnQgdG8gdHJpZ2dlciB0aGUgcnVsZSBvbi4gKi9cbiAgZXZlbnRUeXBlOiBBdXRvTW9kZXJhdGlvbkV2ZW50VHlwZXNcbiAgLyoqIFRoZSBtZXRhZGF0YSB0byB1c2UgZm9yIHRoZSB0cmlnZ2VyLiAqL1xuICB0cmlnZ2VyTWV0YWRhdGE6IHtcbiAgICAvKiogVGhlIGtleXdvcmRzIG5lZWRlZCB0byBtYXRjaC4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZCAqL1xuICAgIGtleXdvcmRGaWx0ZXI/OiBzdHJpbmdbXVxuICAgIC8qKiBUaGUgcHJlLWRlZmluZWQgbGlzdHMgb2Ygd29yZHMgdG8gbWF0Y2ggZnJvbS4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZFByZXNldCAqL1xuICAgIHByZXNldHM/OiBEaXNjb3JkQXV0b01vZGVyYXRpb25SdWxlVHJpZ2dlck1ldGFkYXRhUHJlc2V0c1tdXG4gICAgLyoqIFRoZSBzdWJzdHJpbmdzIHdoaWNoIHdpbGwgZXhlbXB0IGZyb20gdHJpZ2dlcmluZyB0aGUgcHJlc2V0IHRyaWdnZXIgdHlwZS4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZFByZXNldCAqL1xuICAgIGFsbG93TGlzdD86IHN0cmluZ1tdXG4gICAgLyoqIFRvdGFsIG51bWJlciBvZiBtZW50aW9ucyAocm9sZSAmIHVzZXIpIGFsbG93ZWQgcGVyIG1lc3NhZ2UgKE1heGltdW0gb2YgNTApICovXG4gICAgbWVudGlvblRvdGFsTGltaXQ6IG51bWJlclxuICB9XG4gIC8qKiBUaGUgYWN0aW9ucyB0aGF0IHdpbGwgdHJpZ2dlciBmb3IgdGhpcyBydWxlICovXG4gIGFjdGlvbnM6IEFycmF5PHtcbiAgICAvKiogVGhlIHR5cGUgb2YgYWN0aW9uIHRvIHRha2Ugd2hlbiBhIHJ1bGUgaXMgdHJpZ2dlcmVkICovXG4gICAgdHlwZTogQXV0b01vZGVyYXRpb25BY3Rpb25UeXBlXG4gICAgLyoqIGFkZGl0aW9uYWwgbWV0YWRhdGEgbmVlZGVkIGR1cmluZyBleGVjdXRpb24gZm9yIHRoaXMgc3BlY2lmaWMgYWN0aW9uIHR5cGUgKi9cbiAgICBtZXRhZGF0YToge1xuICAgICAgLyoqIFRoZSBpZCBvZiBjaGFubmVsIHRvIHdoaWNoIHVzZXIgY29udGVudCBzaG91bGQgYmUgbG9nZ2VkLiBPbmx5IGluIFNlbmRBbGVydE1lc3NhZ2UgKi9cbiAgICAgIGNoYW5uZWxJZD86IEJpZ1N0cmluZ1xuICAgICAgLyoqIFRpbWVvdXQgZHVyYXRpb24gaW4gc2Vjb25kcy4gT25seSBzdXBwb3J0ZWQgZm9yIFRyaWdnZXJUeXBlLktleXdvcmQgKi9cbiAgICAgIGR1cmF0aW9uU2Vjb25kcz86IG51bWJlclxuICAgIH1cbiAgfT5cbiAgLyoqIFdoZXRoZXIgdGhlIHJ1bGUgc2hvdWxkIGJlIGVuYWJsZWQuICovXG4gIGVuYWJsZWQ/OiBib29sZWFuXG4gIC8qKiBUaGUgcm9sZSBpZHMgdGhhdCBzaG91bGQgbm90IGJlIGVmZmVjdGVkIGJ5IHRoZSBydWxlICovXG4gIGV4ZW1wdFJvbGVzPzogQmlnU3RyaW5nW11cbiAgLyoqIFRoZSBjaGFubmVsIGlkcyB0aGF0IHNob3VsZCBub3QgYmUgZWZmZWN0ZWQgYnkgdGhlIHJ1bGUuICovXG4gIGV4ZW1wdENoYW5uZWxzPzogQmlnU3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVTY2hlZHVsZWRFdmVudCB7XG4gIC8qKiB0aGUgY2hhbm5lbCBpZCBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50LiAqL1xuICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbiAgLyoqIGxvY2F0aW9uIG9mIHRoZSBldmVudC4gUmVxdWlyZWQgZm9yIGV2ZW50cyB3aXRoIGBlbnRpdHlUeXBlOiBTY2hlZHVsZWRFdmVudEVudGl0eVR5cGUuRXh0ZXJuYWxgICovXG4gIGxvY2F0aW9uPzogc3RyaW5nXG4gIC8qKiB0aGUgbmFtZSBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50ICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQgKi9cbiAgZGVzY3JpcHRpb246IHN0cmluZ1xuICAvKiogdGhlIHRpbWUgdGhlIHNjaGVkdWxlZCBldmVudCB3aWxsIHN0YXJ0ICovXG4gIHNjaGVkdWxlZFN0YXJ0VGltZTogc3RyaW5nXG4gIC8qKiB0aGUgdGltZSB0aGUgc2NoZWR1bGVkIGV2ZW50IHdpbGwgZW5kIGlmIGl0IGRvZXMgZW5kLiBSZXF1aXJlZCBmb3IgZXZlbnRzIHdpdGggYGVudGl0eVR5cGU6IFNjaGVkdWxlZEV2ZW50RW50aXR5VHlwZS5FeHRlcm5hbGAgKi9cbiAgc2NoZWR1bGVkRW5kVGltZT86IHN0cmluZ1xuICAvKiogdGhlIHByaXZhY3kgbGV2ZWwgb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBwcml2YWN5TGV2ZWw/OiBTY2hlZHVsZWRFdmVudFByaXZhY3lMZXZlbFxuICAvKiogdGhlIHR5cGUgb2YgaG9zdGluZyBlbnRpdHkgYXNzb2NpYXRlZCB3aXRoIGEgc2NoZWR1bGVkIGV2ZW50ICovXG4gIGVudGl0eVR5cGU6IFNjaGVkdWxlZEV2ZW50RW50aXR5VHlwZVxuICAvKiogdGhlIGNvdmVyIGltYWdlIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQgKi9cbiAgaW1hZ2U/OiBzdHJpbmdcbiAgLyoqIHRoZSBkZWZpbml0aW9uIGZvciBob3cgb2Z0ZW4gdGhpcyBldmVudCBzaG91bGQgcmVjdXIgKi9cbiAgcmVjdXJyZW5jZVJ1bGU/OiBEaXNjb3JkU2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRTY2hlZHVsZWRFdmVudCB7XG4gIC8qKiB0aGUgY2hhbm5lbCBpZCBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50LiBudWxsIGlmIHN3aXRjaGluZyB0byBleHRlcm5hbCBldmVudC4gKi9cbiAgY2hhbm5lbElkOiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBsb2NhdGlvbiBvZiB0aGUgZXZlbnQgKi9cbiAgbG9jYXRpb24/OiBzdHJpbmdcbiAgLyoqIHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZ1xuICAvKiogdGhlIHRpbWUgdGhlIHNjaGVkdWxlZCBldmVudCB3aWxsIHN0YXJ0ICovXG4gIHNjaGVkdWxlZFN0YXJ0VGltZTogc3RyaW5nXG4gIC8qKiB0aGUgdGltZSB0aGUgc2NoZWR1bGVkIGV2ZW50IHdpbGwgZW5kIGlmIGl0IGRvZXMgZW5kLiAqL1xuICBzY2hlZHVsZWRFbmRUaW1lPzogc3RyaW5nXG4gIC8qKiB0aGUgcHJpdmFjeSBsZXZlbCBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50ICovXG4gIHByaXZhY3lMZXZlbDogU2NoZWR1bGVkRXZlbnRQcml2YWN5TGV2ZWxcbiAgLyoqIHRoZSB0eXBlIG9mIGhvc3RpbmcgZW50aXR5IGFzc29jaWF0ZWQgd2l0aCBhIHNjaGVkdWxlZCBldmVudCAqL1xuICBlbnRpdHlUeXBlOiBTY2hlZHVsZWRFdmVudEVudGl0eVR5cGVcbiAgLyoqIHRoZSBzdGF0dXMgb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBzdGF0dXM6IFNjaGVkdWxlZEV2ZW50U3RhdHVzXG4gIC8qKiB0aGUgY292ZXIgaW1hZ2Ugb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBpbWFnZT86IHN0cmluZ1xuICAvKiogdGhlIGRlZmluaXRpb24gZm9yIGhvdyBvZnRlbiB0aGlzIGV2ZW50IHNob3VsZCByZWN1ciAqL1xuICByZWN1cnJlbmNlUnVsZT86IERpc2NvcmRTY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlIHwgbnVsbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFNjaGVkdWxlZEV2ZW50cyB7XG4gIC8qKiBpbmNsdWRlIG51bWJlciBvZiB1c2VycyBzdWJzY3JpYmVkIHRvIGVhY2ggZXZlbnQgKi9cbiAgd2l0aFVzZXJDb3VudD86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVDaGFubmVsSW52aXRlIHtcbiAgLyoqIER1cmF0aW9uIG9mIGludml0ZSBpbiBzZWNvbmRzIGJlZm9yZSBleHBpcnksIG9yIDAgZm9yIG5ldmVyLiBCZXR3ZWVuIDAgYW5kIDYwNDgwMCAoNyBkYXlzKS4gRGVmYXVsdDogODY0MDAgKDI0IGhvdXJzKSAqL1xuICBtYXhBZ2U/OiBudW1iZXJcbiAgLyoqIE1heCBudW1iZXIgb2YgdXNlcnMgb3IgMCBmb3IgdW5saW1pdGVkLiBCZXR3ZWVuIDAgYW5kIDEwMC4gRGVmYXVsdDogMCAqL1xuICBtYXhVc2VzPzogbnVtYmVyXG4gIC8qKiBXaGV0aGVyIHRoaXMgaW52aXRlIG9ubHkgZ3JhbnRzIHRlbXBvcmFyeSBtZW1iZXJzaGlwLiBEZWZhdWx0OiBmYWxzZSAqL1xuICB0ZW1wb3Jhcnk/OiBib29sZWFuXG4gIC8qKiBJZiB0cnVlLCBkb24ndCB0cnkgdG8gcmV1c2Ugc2ltaWxhciBpbnZpdGUgKHVzZWZ1bCBmb3IgY3JlYXRpbmcgbWFueSB1bmlxdWUgb25lIHRpbWUgdXNlIGludml0ZXMpLiBEZWZhdWx0OiBmYWxzZSAqL1xuICB1bmlxdWU/OiBib29sZWFuXG4gIC8qKiBUaGUgdHlwZSBvZiB0YXJnZXQgZm9yIHRoaXMgdm9pY2UgY2hhbm5lbCBpbnZpdGUgKi9cbiAgdGFyZ2V0VHlwZT86IFRhcmdldFR5cGVzXG4gIC8qKiBUaGUgaWQgb2YgdGhlIHVzZXIgd2hvc2Ugc3RyZWFtIHRvIGRpc3BsYXkgZm9yIHRoaXMgaW52aXRlLCByZXF1aXJlZCBpZiBgdGFyZ2V0X3R5cGVgIGlzIDEsIHRoZSB1c2VyIG11c3QgYmUgc3RyZWFtaW5nIGluIHRoZSBjaGFubmVsICovXG4gIHRhcmdldFVzZXJJZD86IEJpZ1N0cmluZ1xuICAvKiogVGhlIGlkIG9mIHRoZSBlbWJlZGRlZCBhcHBsaWNhdGlvbiB0byBvcGVuIGZvciB0aGlzIGludml0ZSwgcmVxdWlyZWQgaWYgYHRhcmdldF90eXBlYCBpcyAyLCB0aGUgYXBwbGljYXRpb24gbXVzdCBoYXZlIHRoZSBgRU1CRURERURgIGZsYWcgKi9cbiAgdGFyZ2V0QXBwbGljYXRpb25JZD86IEJpZ1N0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjZWRpdC1tZXNzYWdlLWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRNZXNzYWdlIHtcbiAgLyoqIFRoZSBuZXcgbWVzc2FnZSBjb250ZW50cyAodXAgdG8gMjAwMCBjaGFyYWN0ZXJzKSAqL1xuICBjb250ZW50Pzogc3RyaW5nIHwgbnVsbFxuICAvKiogRW1iZWRkZWQgYHJpY2hgIGNvbnRlbnQgKHVwIHRvIDYwMDAgY2hhcmFjdGVycykgKi9cbiAgZW1iZWRzPzogQ2FtZWxpemU8RGlzY29yZEVtYmVkPltdIHwgbnVsbFxuICAvKiogRWRpdCB0aGUgZmxhZ3Mgb2YgdGhlIG1lc3NhZ2UgKG9ubHkgYFNVUFBSRVNTX0VNQkVEU2AgY2FuIGN1cnJlbnRseSBiZSBzZXQvdW5zZXQpICovXG4gIGZsYWdzPzogTWVzc2FnZUZsYWdzIHwgbnVsbFxuICAvKiogVGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlcyBiZWluZyBzZW50L2VkaXRlZCAqL1xuICBmaWxlcz86IEZpbGVDb250ZW50W11cbiAgLyoqIEFsbG93ZWQgbWVudGlvbnMgZm9yIHRoZSBtZXNzYWdlICovXG4gIGFsbG93ZWRNZW50aW9ucz86IEFsbG93ZWRNZW50aW9uc1xuICAvKiogV2hlbiBzcGVjaWZpZWQgKGFkZGluZyBuZXcgYXR0YWNobWVudHMpLCBhdHRhY2htZW50cyB3aGljaCBhcmUgbm90IHByb3ZpZGVkIGluIHRoaXMgbGlzdCB3aWxsIGJlIHJlbW92ZWQuICovXG4gIGF0dGFjaG1lbnRzPzogKFBpY2s8Q2FtZWxpemU8RGlzY29yZEF0dGFjaG1lbnQ+LCAnaWQnPiAmIE9taXQ8UGFydGlhbDxDYW1lbGl6ZTxEaXNjb3JkQXR0YWNobWVudD4+LCAnaWQnPilbXVxuICAvKiogVGhlIGNvbXBvbmVudHMgeW91IHdvdWxkIGxpa2UgdG8gaGF2ZSBzZW50IGluIHRoaXMgbWVzc2FnZSAqL1xuICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9tZXNzYWdlI2dldC1jaGFubmVsLXBpbnMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRDaGFubmVsUGluc09wdGlvbnMge1xuICAvKiogR2V0IG1lc3NhZ2VzIHBpbm5lZCBiZWZvcmUgdGhpcyB0aW1lc3RhbXAgKi9cbiAgYmVmb3JlPzogc3RyaW5nXG4gIC8qKiBNYXggbnVtYmVyIG9mIHBpbnMgdG8gcmV0dXJuICgxLTUwKSwgZGVmYXVsdHMgdG8gNTAgKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuLyoqIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL2FwcGxpY2F0aW9uLWNvbW1hbmRzI2dldC1ndWlsZC1hcHBsaWNhdGlvbi1jb21tYW5kLXBlcm1pc3Npb25zIGFuZCBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9pbnRlcmFjdGlvbnMvYXBwbGljYXRpb24tY29tbWFuZHMjZ2V0LWd1aWxkLWFwcGxpY2F0aW9uLWNvbW1hbmQtcGVybWlzc2lvbnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0QXBwbGljYXRpb25Db21tYW5kUGVybWlzc2lvbk9wdGlvbnMge1xuICAvKiogQWNjZXNzIHRva2VuIG9mIHRoZSB1c2VyLiBSZXF1aXJlcyB0aGUgYGFwcGxpY2F0aW9ucy5jb21tYW5kcy5wZXJtaXNzaW9ucy51cGRhdGVgIHNjb3BlICovXG4gIGFjY2Vzc1Rva2VuOiBzdHJpbmdcbiAgLyoqIElkIG9mIHRoZSBhcHBsaWNhdGlvbiAqL1xuICBhcHBsaWNhdGlvbklkOiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNjcmVhdGUtZ3VpbGQgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGQge1xuICAvKiogTmFtZSBvZiB0aGUgZ3VpbGQgKDEtMTAwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogQmFzZTY0IDEyOHgxMjggaW1hZ2UgZm9yIHRoZSBndWlsZCBpY29uICovXG4gIGljb24/OiBzdHJpbmdcbiAgLyoqIFZlcmlmaWNhdGlvbiBsZXZlbCAqL1xuICB2ZXJpZmljYXRpb25MZXZlbD86IFZlcmlmaWNhdGlvbkxldmVsc1xuICAvKiogRGVmYXVsdCBtZXNzYWdlIG5vdGlmaWNhdGlvbiBsZXZlbCAqL1xuICBkZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbnM/OiBEZWZhdWx0TWVzc2FnZU5vdGlmaWNhdGlvbkxldmVsc1xuICAvKiogRXhwbGljaXQgY29udGVudCBmaWx0ZXIgbGV2ZWwgKi9cbiAgZXhwbGljaXRDb250ZW50RmlsdGVyPzogRXhwbGljaXRDb250ZW50RmlsdGVyTGV2ZWxzXG4gIC8qKiBOZXcgZ3VpbGQgcm9sZXMgKGZpcnN0IHJvbGUgaXMgdGhlIGV2ZXJ5b25lIHJvbGUpICovXG4gIHJvbGVzPzogQ2FtZWxpemU8RGlzY29yZFJvbGVbXT5cbiAgLyoqIE5ldyBndWlsZCdzIGNoYW5uZWxzICovXG4gIGNoYW5uZWxzPzogUGFydGlhbDxDYW1lbGl6ZTxEaXNjb3JkQ2hhbm5lbD4+W11cbiAgLyoqIElkIGZvciBhZmsgY2hhbm5lbCAqL1xuICBhZmtDaGFubmVsSWQ/OiBzdHJpbmdcbiAgLyoqIEFmayB0aW1lb3V0IGluIHNlY29uZHMgKi9cbiAgYWZrVGltZW91dD86IG51bWJlclxuICAvKiogVGhlIGlkIG9mIHRoZSBjaGFubmVsIHdoZXJlIGd1aWxkIG5vdGljZXMgc3VjaCBhcyB3ZWxjb21lIG1lc3NhZ2VzIGFuZCBib29zdCBldmVudHMgYXJlIHBvc3RlZCAqL1xuICBzeXN0ZW1DaGFubmVsSWQ/OiBzdHJpbmdcbiAgLyoqIFN5c3RlbSBjaGFubmVsIGZsYWdzICovXG4gIHN5c3RlbUNoYW5uZWxGbGFncz86IFN5c3RlbUNoYW5uZWxGbGFnc1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2NyZWF0ZS1ndWlsZC1yb2xlLWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUd1aWxkUm9sZSB7XG4gIC8qKiBOYW1lIG9mIHRoZSByb2xlLCBtYXggMTAwIGNoYXJhY3RlcnMsIGRlZmF1bHQ6IFwibmV3IHJvbGVcIiAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKiBCaXR3aXNlIHZhbHVlIG9mIHRoZSBlbmFibGVkL2Rpc2FibGVkIHBlcm1pc3Npb25zLCBkZWZhdWx0OiBldmVyeW9uZSBwZXJtaXNzaW9ucyBpbiBndWlsZCAqL1xuICBwZXJtaXNzaW9ucz86IFBlcm1pc3Npb25TdHJpbmdzW11cbiAgLyoqXG4gICAqIFJHQiBjb2xvciB2YWx1ZSwgZGVmYXVsdDogMFxuICAgKiBAZGVwcmVjYXRlZCB0aGUge0BsaW5rIGNvbG9yc30gZmllbGQgaXMgcmVjb21tZW5kZWQgZm9yIHVzZSBpbnN0ZWFkIG9mIHRoaXMgZmllbGRcbiAgICovXG4gIGNvbG9yPzogbnVtYmVyXG4gIC8qKiBUaGUgcm9sZSdzIGNvbG9yICovXG4gIGNvbG9ycz86IEd1aWxkUm9sZUNvbG9yc1xuICAvKiogV2hldGhlciB0aGUgcm9sZSBzaG91bGQgYmUgZGlzcGxheWVkIHNlcGFyYXRlbHkgaW4gdGhlIHNpZGViYXIsIGRlZmF1bHQ6IGZhbHNlICovXG4gIGhvaXN0PzogYm9vbGVhblxuICAvKiogV2hldGhlciB0aGUgcm9sZSBzaG91bGQgYmUgbWVudGlvbmFibGUsIGRlZmF1bHQ6IGZhbHNlICovXG4gIG1lbnRpb25hYmxlPzogYm9vbGVhblxuICAvKiogVGhlIHJvbGUncyB1bmljb2RlIGVtb2ppIChpZiB0aGUgZ3VpbGQgaGFzIHRoZSBgUk9MRV9JQ09OU2AgZmVhdHVyZSkgKi9cbiAgdW5pY29kZUVtb2ppPzogc3RyaW5nXG4gIC8qKiB0aGUgcm9sZSdzIGljb24gaW1hZ2UgKGlmIHRoZSBndWlsZCBoYXMgdGhlIGBST0xFX0lDT05TYCBmZWF0dXJlKSAqL1xuICBpY29uPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy90b3BpY3MvcGVybWlzc2lvbnMjcm9sZS1vYmplY3Qtcm9sZS1jb2xvcnMtb2JqZWN0ICovXG5leHBvcnQgaW50ZXJmYWNlIEd1aWxkUm9sZUNvbG9ycyB7XG4gIC8qKiBUaGUgcHJpbWFyeSBjb2xvciBmb3IgdGhlIHJvbGUgKi9cbiAgcHJpbWFyeUNvbG9yOiBudW1iZXJcbiAgLyoqIFRoZSBzZWNvbmRhcnkgY29sb3IgZm9yIHRoZSByb2xlLCB0aGlzIHdpbGwgbWFrZSB0aGUgcm9sZSBhIGdyYWRpZW50IGJldHdlZW4gdGhlIG90aGVyIHByb3ZpZGVkIGNvbG9ycyAqL1xuICBzZWNvbmRhcnlDb2xvcj86IG51bWJlclxuICAvKiogVGhlIHRlcnRpYXJ5IGNvbG9yIGZvciB0aGUgcm9sZSwgdGhpcyB3aWxsIHR1cm4gdGhlIGdyYWRpZW50IGludG8gYSBob2xvZ3JhcGhpYyBzdHlsZSAqL1xuICB0ZXJ0aWFyeUNvbG9yPzogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdEd1aWxkUm9sZSB7XG4gIC8qKiBOYW1lIG9mIHRoZSByb2xlLCBtYXggMTAwIGNoYXJhY3RlcnMsIGRlZmF1bHQ6IFwibmV3IHJvbGVcIiAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKiBCaXR3aXNlIHZhbHVlIG9mIHRoZSBlbmFibGVkL2Rpc2FibGVkIHBlcm1pc3Npb25zLCBkZWZhdWx0OiBldmVyeW9uZSBwZXJtaXNzaW9ucyBpbiBndWlsZCAqL1xuICBwZXJtaXNzaW9ucz86IFBlcm1pc3Npb25TdHJpbmdzW11cbiAgLyoqXG4gICAqIFJHQiBjb2xvciB2YWx1ZSwgZGVmYXVsdDogMFxuICAgKiBAZGVwcmVjYXRlZCB0aGUge0BsaW5rIGNvbG9yc30gZmllbGQgaXMgcmVjb21tZW5kZWQgZm9yIHVzZSBpbnN0ZWFkIG9mIHRoaXMgZmllbGRcbiAgICovXG4gIGNvbG9yPzogbnVtYmVyXG4gIC8qKiBUaGUgcm9sZSdzIGNvbG9yICovXG4gIGNvbG9ycz86IEd1aWxkUm9sZUNvbG9yc1xuICAvKiogV2hldGhlciB0aGUgcm9sZSBzaG91bGQgYmUgZGlzcGxheWVkIHNlcGFyYXRlbHkgaW4gdGhlIHNpZGViYXIsIGRlZmF1bHQ6IGZhbHNlICovXG4gIGhvaXN0PzogYm9vbGVhblxuICAvKiogV2hldGhlciB0aGUgcm9sZSBzaG91bGQgYmUgbWVudGlvbmFibGUsIGRlZmF1bHQ6IGZhbHNlICovXG4gIG1lbnRpb25hYmxlPzogYm9vbGVhblxuICAvKiogVGhlIHJvbGUncyB1bmljb2RlIGVtb2ppIChpZiB0aGUgZ3VpbGQgaGFzIHRoZSBgUk9MRV9JQ09OU2AgZmVhdHVyZSkgKi9cbiAgdW5pY29kZUVtb2ppPzogc3RyaW5nXG4gIC8qKiB0aGUgcm9sZSdzIGljb24gaW1hZ2UgKGlmIHRoZSBndWlsZCBoYXMgdGhlIGBST0xFX0lDT05TYCBmZWF0dXJlKSAqL1xuICBpY29uPzogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5Um9sZVBvc2l0aW9ucyB7XG4gIC8qKiBUaGUgcm9sZSBpZCAqL1xuICBpZDogQmlnU3RyaW5nXG4gIC8qKiBUaGUgc29ydGluZyBwb3NpdGlvbiBmb3IgdGhlIHJvbGUuIChyb2xlcyB3aXRoIHRoZSBzYW1lIHBvc2l0aW9uIGFyZSBzb3J0ZWQgYnkgaWQpICovXG4gIHBvc2l0aW9uPzogbnVtYmVyIHwgbnVsbFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI21vZGlmeS1ndWlsZCAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlHdWlsZCB7XG4gIC8qKiBHdWlsZCBuYW1lICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIFZlcmlmaWNhdGlvbiBsZXZlbCAqL1xuICB2ZXJpZmljYXRpb25MZXZlbD86IFZlcmlmaWNhdGlvbkxldmVscyB8IG51bGxcbiAgLyoqIERlZmF1bHQgbWVzc2FnZSBub3RpZmljYXRpb24gZmlsdGVyIGxldmVsICovXG4gIGRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9ucz86IERlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9uTGV2ZWxzIHwgbnVsbFxuICAvKiogRXhwbGljaXQgY29udGVudCBmaWx0ZXIgbGV2ZWwgKi9cbiAgZXhwbGljaXRDb250ZW50RmlsdGVyPzogRXhwbGljaXRDb250ZW50RmlsdGVyTGV2ZWxzIHwgbnVsbFxuICAvKiogSWQgZm9yIGFmayBjaGFubmVsICovXG4gIGFma0NoYW5uZWxJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqIEFmayB0aW1lb3V0IGluIHNlY29uZHMgKi9cbiAgYWZrVGltZW91dD86IG51bWJlclxuICAvKiogQmFzZTY0IDEwMjR4MTAyNCBwbmcvanBlZy9naWYgaW1hZ2UgZm9yIHRoZSBndWlsZCBpY29uIChjYW4gYmUgYW5pbWF0ZWQgZ2lmIHdoZW4gdGhlIHNlcnZlciBoYXMgdGhlIGBBTklNQVRFRF9JQ09OYCBmZWF0dXJlKSAqL1xuICBpY29uPzogc3RyaW5nIHwgbnVsbFxuICAvKiogVXNlciBpZCB0byB0cmFuc2ZlciBndWlsZCBvd25lcnNoaXAgdG8gKG11c3QgYmUgb3duZXIpICovXG4gIG93bmVySWQ/OiBCaWdTdHJpbmdcbiAgLyoqIEJhc2U2NCAxNjo5IHBuZy9qcGVnIGltYWdlIGZvciB0aGUgZ3VpbGQgc3BsYXNoICh3aGVuIHRoZSBzZXJ2ZXIgaGFzIGBJTlZJVEVfU1BMQVNIYCBmZWF0dXJlKSAqL1xuICBzcGxhc2g/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBCYXNlNjQgMTY6OSBwbmcvanBlZyBpbWFnZSBmb3IgdGhlIGd1aWxkIGRpc2NvdmVyeSBzcGFzaCAod2hlbiB0aGUgc2VydmVyIGhhcyB0aGUgYERJU0NPVkVSQUJMRWAgZmVhdHVyZSkgKi9cbiAgZGlzY292ZXJ5U3BsYXNoPzogc3RyaW5nIHwgbnVsbFxuICAvKiogQmFzZTY0IDE2OjkgcG5nL2pwZWcgaW1hZ2UgZm9yIHRoZSBndWlsZCBiYW5uZXIgKHdoZW4gdGhlIHNlcnZlciBoYXMgQkFOTkVSIGZlYXR1cmUpICovXG4gIGJhbm5lcj86IHN0cmluZyB8IG51bGxcbiAgLyoqIFRoZSBpZCBvZiB0aGUgY2hhbm5lbCB3aGVyZSBndWlsZCBub3RpY2VzIHN1Y2ggYXMgd2VsY29tZSBtZXNzYWdlcyBhbmQgYm9vc3QgZXZlbnRzIGFyZSBwb3N0ZWQgKi9cbiAgc3lzdGVtQ2hhbm5lbElkPzogQmlnU3RyaW5nIHwgbnVsbFxuICAvKiogU3lzdGVtIGNoYW5uZWwgZmxhZ3MgKi9cbiAgc3lzdGVtQ2hhbm5lbEZsYWdzPzogU3lzdGVtQ2hhbm5lbEZsYWdzXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGNoYW5uZWwgd2hlcmUgQ29tbXVuaXR5IGd1aWxkcyBkaXNwbGF5IHJ1bGVzIGFuZC9vciBndWlkZWxpbmVzICovXG4gIHJ1bGVzQ2hhbm5lbElkPzogQmlnU3RyaW5nIHwgbnVsbFxuICAvKiogVGhlIGlkIG9mIHRoZSBjaGFubmVsIHdoZXJlIGFkbWlucyBhbmQgbW9kZXJhdG9ycyBvZiBDb21tdW5pdHkgZ3VpbGRzIHJlY2VpdmUgbm90aWNlcyBmcm9tIERpc2NvcmQgKi9cbiAgcHVibGljVXBkYXRlc0NoYW5uZWxJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqIFRoZSBwcmVmZXJyZWQgbG9jYWxlIG9mIGEgQ29tbXVuaXR5IGd1aWxkIHVzZWQgaW4gc2VydmVyIGRpc2NvdmVyeSBhbmQgbm90aWNlcyBmcm9tIERpc2NvcmQ7IGRlZmF1bHRzIHRvIFwiZW4tVVNcIiAqL1xuICBwcmVmZXJyZWRMb2NhbGU/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBFbmFibGVkIGd1aWxkIGZlYXR1cmVzICovXG4gIGZlYXR1cmVzPzogR3VpbGRGZWF0dXJlc1tdXG4gIC8qKiBXaGV0aGVyIHRoZSBndWlsZCdzIGJvb3N0IHByb2dyZXNzIGJhciBzaG91bGQgYmUgZW5hYmxlZCAqL1xuICBwcmVtaXVtUHJvZ3Jlc3NCYXJFbmFibGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUd1aWxkU3RpY2tlck9wdGlvbnMge1xuICAvKiogTmFtZSBvZiB0aGUgc3RpY2tlciAoMi0zMCBjaGFyYWN0ZXJzKSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBzdGlja2VyIChlbXB0eSBvciAyLTEwMCBjaGFyYWN0ZXJzKSAqL1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIC8qKiBBdXRvY29tcGxldGUvc3VnZ2VzdGlvbiB0YWdzIGZvciB0aGUgc3RpY2tlciAobWF4IDIwMCBjaGFyYWN0ZXJzKSAqL1xuICB0YWdzOiBzdHJpbmdcbiAgLyoqIFRoZSBzdGlja2VyIGZpbGUgdG8gdXBsb2FkLCBtdXN0IGJlIGEgUE5HLCBBUE5HLCBvciBMb3R0aWUgSlNPTiBmaWxlLCBtYXggNTEyIEtCICovXG4gIGZpbGU6IEZpbGVDb250ZW50XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdEd1aWxkU3RpY2tlck9wdGlvbnMge1xuICAvKiogTmFtZSBvZiB0aGUgc3RpY2tlciAoMi0zMCBjaGFyYWN0ZXJzKSAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKiBEZXNjcmlwdGlvbiBvZiB0aGUgc3RpY2tlciAoZW1wdHkgb3IgMi0xMDAgY2hhcmFjdGVycykgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBBdXRvY29tcGxldGUvc3VnZ2VzdGlvbiB0YWdzIGZvciB0aGUgc3RpY2tlciAobWF4IDIwMCBjaGFyYWN0ZXJzKSAqL1xuICB0YWdzPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvdGVtcGxhdGUjY3JlYXRlLWd1aWxkLWZyb20tdGVtcGxhdGUtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRGcm9tVGVtcGxhdGUge1xuICAvKiogTmFtZSBvZiB0aGUgZ3VpbGQgKDItMTAwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogYmFzZTY0IDEyOHgxMjggaW1hZ2UgZm9yIHRoZSBndWlsZCBpY29uICovXG4gIGljb24/OiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCN1cGRhdGUtY3VycmVudC11c2VyLXZvaWNlLXN0YXRlICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRPd25Wb2ljZVN0YXRlIHtcbiAgLyoqIFRoZSBpZCBvZiB0aGUgY2hhbm5lbCB0aGUgdXNlciBpcyBjdXJyZW50bHkgaW4gKi9cbiAgY2hhbm5lbElkOiBCaWdTdHJpbmdcbiAgLyoqIFRvZ2dsZXMgdGhlIHVzZXIncyBzdXBwcmVzcyBzdGF0ZSAqL1xuICBzdXBwcmVzcz86IGJvb2xlYW5cbiAgLyoqIFNldHMgdGhlIHVzZXIncyByZXF1ZXN0IHRvIHNwZWFrICovXG4gIHJlcXVlc3RUb1NwZWFrVGltZXN0YW1wPzogbnVtYmVyIHwgbnVsbFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI3VwZGF0ZS11c2VyLXZvaWNlLXN0YXRlICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRVc2VyVm9pY2VTdGF0ZSB7XG4gIC8qKiBUaGUgaWQgb2YgdGhlIGNoYW5uZWwgdGhlIHVzZXIgaXMgY3VycmVudGx5IGluICovXG4gIGNoYW5uZWxJZDogQmlnU3RyaW5nXG4gIC8qKiBUb2dnbGVzIHRoZSB1c2VyJ3Mgc3VwcHJlc3Mgc3RhdGUgKi9cbiAgc3VwcHJlc3M/OiBib29sZWFuXG4gIC8qKiBUaGUgdXNlciBpZCB0byB0YXJnZXQgKi9cbiAgdXNlcklkOiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNnZXQtZ3VpbGQtd2lkZ2V0LWltYWdlLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0R3VpbGRXaWRnZXRJbWFnZVF1ZXJ5IHtcbiAgLyoqXG4gICAqIFN0eWxlIG9mIHRoZSB3aWRnZXQgcmV0dXJuZWQsIGRlZmF1bHQ6IHNoaWVsZFxuICAgKlxuICAgKiBTaGllbGQ6IFdpZGdldCB3aXRoIERpc2NvcmQgaWNvbiBhbmQgZ3VpbGQgbWVtYmVycyBvbmxpbmUgY291bnQuXG4gICAqIEJhbm5lcjE6IExhcmdlIGltYWdlIHdpdGggZ3VpbGQgaWNvbiwgbmFtZSBhbmQgb25saW5lIGNvdW50LiBcIlBPV0VSRUQgQlkgRElTQ09SRFwiIGFzIHRoZSBmb290ZXIgb2YgdGhlIHdpZGdldFxuICAgKiBCYW5uZXIyOiBTbWFsbGVyIHdpZGdldCBzdHlsZSB3aXRoIGd1aWxkIGljb24sIG5hbWUgYW5kIG9ubGluZSBjb3VudC4gU3BsaXQgb24gdGhlIHJpZ2h0IHdpdGggRGlzY29yZCBsb2dvXG4gICAqIEJhbm5lcjM6IExhcmdlIGltYWdlIHdpdGggZ3VpbGQgaWNvbiwgbmFtZSBhbmQgb25saW5lIGNvdW50LiBJbiB0aGUgZm9vdGVyLCBEaXNjb3JkIGxvZ28gb24gdGhlIGxlZnQgYW5kIFwiQ2hhdCBOb3dcIiBvbiB0aGUgcmlnaHRcbiAgICogQmFubmVyNDogTGFyZ2UgRGlzY29yZCBsb2dvIGF0IHRoZSB0b3Agb2YgdGhlIHdpZGdldC4gR3VpbGQgaWNvbiwgbmFtZSBhbmQgb25saW5lIGNvdW50IGluIHRoZSBtaWRkbGUgcG9ydGlvbiBvZiB0aGUgd2lkZ2V0IGFuZCBhIFwiSk9JTiBNWSBTRVJWRVJcIiBidXR0b24gYXQgdGhlIGJvdHRvbVxuICAgKi9cbiAgc3R5bGU/OiAnc2hpZWxkJyB8ICdiYW5uZXIxJyB8ICdiYW5uZXIyJyB8ICdiYW5uZXIzJyB8ICdiYW5uZXI0J1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVRlbXBsYXRlIHtcbiAgLyoqIE5hbWUgd2hpY2ggdGhlIHRlbXBsYXRlIHNob3VsZCBoYXZlICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIHRlbXBsYXRlICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvdGVtcGxhdGUjbW9kaWZ5LWd1aWxkLXRlbXBsYXRlICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeUd1aWxkVGVtcGxhdGUge1xuICAvKiogTmFtZSBvZiB0aGUgdGVtcGxhdGUgKDEtMTAwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSB0ZW1wbGF0ZSAoMC0xMjAgY2hhcmFjdGVycykgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmcgfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjY3JlYXRlLWd1aWxkLWJhbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVHdWlsZEJhbiB7XG4gIC8qKlxuICAgKiBOdW1iZXIgb2Ygc2Vjb25kcyB0byBkZWxldGUgbWVzc2FnZXMgZm9yLCBiZXR3ZWVuIDAgYW5kIDYwNDgwMCAoNyBkYXlzKVxuICAgKlxuICAgKiBAZGVmYXVsdCAwXG4gICAqL1xuICBkZWxldGVNZXNzYWdlU2Vjb25kcz86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2J1bGstZ3VpbGQtYmFuLWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUd1aWxkQnVsa0JhbiB7XG4gIC8qKiBsaXN0IG9mIHVzZXIgaWRzIHRvIGJhbiAobWF4IDIwMCkgKi9cbiAgdXNlcklkczogQmlnU3RyaW5nW11cbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIHRvIGRlbGV0ZSBtZXNzYWdlcyBmb3IsIGJldHdlZW4gMCBhbmQgNjA0ODAwICg3IGRheXMpXG4gICAqXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIGRlbGV0ZU1lc3NhZ2VTZWNvbmRzPzogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdEJvdE1lbWJlck9wdGlvbnMge1xuICBuaWNrPzogc3RyaW5nIHwgbnVsbFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI21vZGlmeS1ndWlsZC1tZW1iZXIgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRNZW1iZXIge1xuICAvKiogVmFsdWUgdG8gc2V0IHVzZXJzIG5pY2tuYW1lIHRvLiBSZXF1aXJlcyB0aGUgYE1BTkFHRV9OSUNLTkFNRVNgIHBlcm1pc3Npb24gKi9cbiAgbmljaz86IHN0cmluZyB8IG51bGxcbiAgLyoqIEFycmF5IG9mIHJvbGUgaWRzIHRoZSBtZW1iZXIgaXMgYXNzaWduZWQuIFJlcXVpcmVzIHRoZSBgTUFOQUdFX1JPTEVTYCBwZXJtaXNzaW9uICovXG4gIHJvbGVzPzogQmlnU3RyaW5nW10gfCBudWxsXG4gIC8qKiBXaGV0aGVyIHRoZSB1c2VyIGlzIG11dGVkIGluIHZvaWNlIGNoYW5uZWxzLiBXaWxsIHRocm93IGEgNDAwIGlmIHRoZSB1c2VyIGlzIG5vdCBpbiBhIHZvaWNlIGNoYW5uZWwuIFJlcXVpcmVzIHRoZSBgTVVURV9NRU1CRVJTYCBwZXJtaXNzaW9uICovXG4gIG11dGU/OiBib29sZWFuIHwgbnVsbFxuICAvKiogV2hldGhlciB0aGUgdXNlciBpcyBkZWFmZW5lZCBpbiB2b2ljZSBjaGFubmVscy4gV2lsbCB0aHJvdyBhIDQwMCBpZiB0aGUgdXNlciBpcyBub3QgaW4gYSB2b2ljZSBjaGFubmVsLiBSZXF1aXJlcyB0aGUgYE1PVkVfTUVNQkVSU2AgcGVybWlzc2lvbiAqL1xuICBkZWFmPzogYm9vbGVhbiB8IG51bGxcbiAgLyoqIElkIG9mIGNoYW5uZWwgdG8gbW92ZSB1c2VyIHRvIChpZiB0aGV5IGFyZSBjb25uZWN0ZWQgdG8gdm9pY2UpLiBSZXF1aXJlcyB0aGUgYE1PVkVfTUVNQkVSU2AgcGVybWlzc2lvbiAqL1xuICBjaGFubmVsSWQ/OiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBXaGVuIHRoZSB1c2VyJ3MgdGltZW91dCB3aWxsIGV4cGlyZSBhbmQgdGhlIHVzZXIgd2lsbCBiZSBhYmxlIHRvIGNvbW11bmljYXRlIGluIHRoZSBndWlsZCBhZ2FpbiAodXAgdG8gMjggZGF5cyBpbiB0aGUgZnV0dXJlKSwgc2V0IHRvIG51bGwgdG8gcmVtb3ZlIHRpbWVvdXQuIFJlcXVpcmVzIHRoZSBgTU9ERVJBVEVfTUVNQkVSU2AgcGVybWlzc2lvbi4gVGhlIGRhdGUgbXVzdCBiZSBnaXZlbiBpbiBhIElTTyBzdHJpbmcgZm9ybS4gKi9cbiAgY29tbXVuaWNhdGlvbkRpc2FibGVkVW50aWw/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBTZXQgdGhlIGZsYWdzIGZvciB0aGUgZ3VpbGQgbWVtYmVyLiBSZXF1aXJlcyB0aGUgYE1BTkFHRV9HVUlMRGAgb3IgYE1BTkFHRV9ST0xFU2Agb3IgdGhlIGNvbWJpbmF0aW9uIG9mIGBNT0RFUkFURV9NRU1CRVJTYCBhbmQgYEtJQ0tfTUVNQkVSU2AgYW5kIGBCQU5fTUVNQkVSU2AgKi9cbiAgZmxhZ3M/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNiZWdpbi1ndWlsZC1wcnVuZSAqL1xuZXhwb3J0IGludGVyZmFjZSBCZWdpbkd1aWxkUHJ1bmUge1xuICAvKiogTnVtYmVyIG9mIGRheXMgdG8gcHJ1bmUgKDEgb3IgbW9yZSksIGRlZmF1bHQ6IDcgKi9cbiAgZGF5cz86IG51bWJlclxuICAvKiogV2hldGhlciAncHJ1bmVkJyBpcyByZXR1cm5lZCwgZGlzY291cmFnZWQgZm9yIGxhcmdlIGd1aWxkcywgZGVmYXVsdDogdHJ1ZSAqL1xuICBjb21wdXRlUHJ1bmVDb3VudD86IGJvb2xlYW5cbiAgLyoqIFJvbGUocykgcm8gaW5jbHVkZSwgZGVmYXVsdDogbm9uZSAqL1xuICBpbmNsdWRlUm9sZXM/OiBzdHJpbmdbXVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI21vZGlmeS1ndWlsZC1vbmJvYXJkaW5nLWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRHdWlsZE9uYm9hcmRpbmcge1xuICAvKiogUHJvbXB0cyBzaG93biBkdXJpbmcgb25ib2FyZGluZyBhbmQgaW4gY3VzdG9taXplIGNvbW11bml0eSAqL1xuICBwcm9tcHRzPzogQ2FtZWxpemU8RGlzY29yZEd1aWxkT25ib2FyZGluZ1Byb21wdD5bXVxuICAvKiogQ2hhbm5lbCBJRHMgdGhhdCBtZW1iZXJzIGdldCBvcHRlZCBpbnRvIGF1dG9tYXRpY2FsbHkgKi9cbiAgZGVmYXVsdENoYW5uZWxJZHM/OiBCaWdTdHJpbmdbXVxuICAvKiogV2hldGhlciBvbmJvYXJkaW5nIGlzIGVuYWJsZWQgaW4gdGhlIGd1aWxkICovXG4gIGVuYWJsZWQ/OiBib29sZWFuXG4gIC8qKiBDdXJyZW50IG1vZGUgb2Ygb25ib2FyZGluZyAqL1xuICBtb2RlPzogRGlzY29yZEd1aWxkT25ib2FyZGluZ01vZGVcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL21vbmV0aXphdGlvbi9lbnRpdGxlbWVudHMjbGlzdC1lbnRpdGxlbWVudHMtcXVlcnktcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEdldEVudGl0bGVtZW50cyB7XG4gIC8qKiBVc2VyIElEIHRvIGxvb2sgdXAgZW50aXRsZW1lbnRzIGZvciAqL1xuICB1c2VySWQ/OiBCaWdTdHJpbmdcbiAgLyoqIE9wdGlvbmFsIGxpc3Qgb2YgU0tVIElEcyB0byBjaGVjayBlbnRpdGxlbWVudHMgZm9yICovXG4gIHNrdUlkcz86IEJpZ1N0cmluZ1tdXG4gIC8qKiBSZXRyaWV2ZSBlbnRpdGxlbWVudHMgYmVmb3JlIHRoaXMgZW50aXRsZW1lbnQgSUQgKi9cbiAgYmVmb3JlPzogQmlnU3RyaW5nXG4gIC8qKiBSZXRyaWV2ZSBlbnRpdGxlbWVudHMgYWZ0ZXIgdGhpcyBlbnRpdGxlbWVudCBJRCAqL1xuICBhZnRlcj86IEJpZ1N0cmluZ1xuICAvKiogTnVtYmVyIG9mIGVudGl0bGVtZW50cyB0byByZXR1cm4sIDEtMTAwLCBkZWZhdWx0IDEwMCAqL1xuICBsaW1pdD86IG51bWJlclxuICAvKiogR3VpbGQgSUQgdG8gbG9vayB1cCBlbnRpdGxlbWVudHMgZm9yICovXG4gIGd1aWxkSWQ/OiBCaWdTdHJpbmdcbiAgLyoqIFdoZXRoZXIgb3Igbm90IGVuZGVkIGVudGl0bGVtZW50cyBzaG91bGQgYmUgb21pdHRlZC4gRGVmYXVsdHMgdG8gZmFsc2UsIGVuZGVkIGVudGl0bGVtZW50cyBhcmUgaW5jbHVkZWQgYnkgZGVmYXVsdC4gKi9cbiAgZXhjbHVkZUVuZGVkPzogYm9vbGVhblxuICAvKiogV2hldGhlciBvciBub3QgZGVsZXRlZCBlbnRpdGxlbWVudHMgc2hvdWxkIGJlIG9taXR0ZWQuIERlZmF1bHRzIHRvIHRydWUsIGRlbGV0ZWQgZW50aXRsZW1lbnRzIGFyZSBub3QgaW5jbHVkZWQgYnkgZGVmYXVsdC4gKi9cbiAgZXhjbHVkZURlbGV0ZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9tb25ldGl6YXRpb24vZW50aXRsZW1lbnRzI2NyZWF0ZS10ZXN0LWVudGl0bGVtZW50LWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUVudGl0bGVtZW50IHtcbiAgLyoqIElEIG9mIHRoZSBTS1UgdG8gZ3JhbnQgdGhlIGVudGl0bGVtZW50IHRvICovXG4gIHNrdUlkOiBCaWdTdHJpbmdcbiAgLyoqIElEIG9mIHRoZSBndWlsZCBvciB1c2VyIHRvIGdyYW50IHRoZSBlbnRpdGxlbWVudCB0byAqL1xuICBvd25lcklkOiBCaWdTdHJpbmdcbiAgLyoqIFRoZSB0eXBlIG9mIGVudGl0bGVtZW50LCBndWlsZCBzdWJzY3JpcHRpb24gb3IgdXNlciBzdWJzY3JpcHRpb24gKi9cbiAgb3duZXJUeXBlOiBDcmVhdGVFbnRpdGxlbWVudE93bmVyVHlwZVxufVxuXG4vKiogRnJvbSB0aGUgZGVzY3JpcHRpb24gb2YgQ3JlYXRlRW50aXRsZW1lbnQjb3duZXJUeXBlIG9uIGRpc2NvcmQgZG9jcyAqL1xuZXhwb3J0IGVudW0gQ3JlYXRlRW50aXRsZW1lbnRPd25lclR5cGUge1xuICAvKiogR3VpbGQgc3Vic2NyaXB0aW9uICovXG4gIEd1aWxkU3Vic2NyaXB0aW9uID0gMSxcbiAgLyoqIFVzZXIgc3Vic2NyaXB0aW9uICovXG4gIFVzZXJTdWJzY3JpcHRpb24gPSAyLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRBcHBsaWNhdGlvbiB7XG4gIC8qKiBEZWZhdWx0IGN1c3RvbSBhdXRob3JpemF0aW9uIFVSTCBmb3IgdGhlIGFwcCwgaWYgZW5hYmxlZCAqL1xuICBjdXN0b21JbnN0YWxsVXJsPzogc3RyaW5nXG4gIC8qKiBEZXNjcmlwdGlvbiBvZiB0aGUgYXBwICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4gIC8qKiBSb2xlIGNvbm5lY3Rpb24gdmVyaWZpY2F0aW9uIFVSTCBmb3IgdGhlIGFwcCAqL1xuICByb2xlQ29ubmVjdGlvbnNWZXJpZmljYXRpb25Vcmw/OiBzdHJpbmdcbiAgLyoqIFNldHRpbmdzIGZvciB0aGUgYXBwJ3MgZGVmYXVsdCBpbi1hcHAgYXV0aG9yaXphdGlvbiBsaW5rLCBpZiBlbmFibGVkICovXG4gIGluc3RhbGxQYXJhbXM/OiBEaXNjb3JkSW5zdGFsbFBhcmFtc1xuICAvKiogRGVmYXVsdCBzY29wZXMgYW5kIHBlcm1pc3Npb25zIGZvciBlYWNoIHN1cHBvcnRlZCBpbnN0YWxsYXRpb24gY29udGV4dC4gKi9cbiAgaW50ZWdyYXRpb25UeXBlc0NvbmZpZz86IERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZVxuICAvKipcbiAgICogQXBwJ3MgcHVibGljIGZsYWdzXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIE9ubHkgbGltaXRlZCBpbnRlbnQgZmxhZ3MgKGBHQVRFV0FZX1BSRVNFTkNFX0xJTUlURURgLCBgR0FURVdBWV9HVUlMRF9NRU1CRVJTX0xJTUlURURgLCBhbmQgYEdBVEVXQVlfTUVTU0FHRV9DT05URU5UX0xJTUlURURgKSBjYW4gYmUgdXBkYXRlZCB2aWEgdGhlIEFQSS5cbiAgICovXG4gIGZsYWdzPzogQXBwbGljYXRpb25GbGFnc1xuICAvKiogSWNvbiBmb3IgdGhlIGFwcCAqL1xuICBpY29uPzogc3RyaW5nIHwgbnVsbFxuICAvKiogRGVmYXVsdCByaWNoIHByZXNlbmNlIGludml0ZSBjb3ZlciBpbWFnZSBmb3IgdGhlIGFwcCAqL1xuICBjb3ZlckltYWdlPzogc3RyaW5nIHwgbnVsbFxuICAvKipcbiAgICogSW50ZXJhY3Rpb25zIGVuZHBvaW50IFVSTCBmb3IgdGhlIGFwcFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUbyB1cGRhdGUgYW4gSW50ZXJhY3Rpb25zIGVuZHBvaW50IFVSTCB2aWEgdGhlIEFQSSwgdGhlIFVSTCBtdXN0IGJlIHZhbGlkXG4gICAqL1xuICBpbnRlcmFjdGlvbkVuZHBvaW50VXJsPzogc3RyaW5nXG4gIC8qKlxuICAgKiBMaXN0IG9mIHRhZ3MgZGVzY3JpYmluZyB0aGUgY29udGVudCBhbmQgZnVuY3Rpb25hbGl0eSBvZiB0aGUgYXBwIChtYXggb2YgMjAgY2hhcmFjdGVycyBwZXIgdGFnKVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGVyZSBjYW4gb25seSBiZSBhIG1heCBvZiA1IHRhZ3NcbiAgICovXG4gIHRhZ3M/OiBzdHJpbmdbXVxuICAvKiogRXZlbnQgd2ViaG9vayBVUkwgZm9yIHRoZSBhcHAgdG8gcmVjZWl2ZSB3ZWJob29rIGV2ZW50cyAqL1xuICBldmVudFdlYmhvb2tzVXJsPzogc3RyaW5nXG4gIC8qKiBJZiB3ZWJob29rIGV2ZW50cyBhcmUgZW5hYmxlZCBmb3IgdGhlIGFwcC4gMSB0byBkaXNhYmxlLCBhbmQgMiB0byBlbmFibGUuICovXG4gIGV2ZW50V2ViaG9va3NTdGF0dXM6IERpc2NvcmRBcHBsaWNhdGlvbkV2ZW50V2ViaG9va1N0YXR1c1xuICAvKiogTGlzdCBvZiBXZWJob29rIGV2ZW50IHR5cGVzIHRoZSBhcHAgc3Vic2NyaWJlcyB0byAqL1xuICBldmVudFdlYmhvb2tzVHlwZXM/OiBEaXNjb3JkV2ViaG9va0V2ZW50VHlwZVtdXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvcG9sbCNwb2xsLWNyZWF0ZS1yZXF1ZXN0LW9iamVjdCAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVQb2xsIHtcbiAgLyoqIFRoZSBxdWVzdGlvbiBvZiB0aGUgcG9sbC4gT25seSBgdGV4dGAgaXMgc3VwcG9ydGVkLiAqL1xuICBxdWVzdGlvbjogQ2FtZWxpemU8RGlzY29yZFBvbGxNZWRpYT5cbiAgLyoqIEVhY2ggb2YgdGhlIGFuc3dlcnMgYXZhaWxhYmxlIGluIHRoZSBwb2xsLCB1cCB0byAxMCAqL1xuICBhbnN3ZXJzOiBPbWl0PENhbWVsaXplPERpc2NvcmRQb2xsQW5zd2VyPiwgJ2Fuc3dlcklkJz5bXVxuICAvKipcbiAgICogTnVtYmVyIG9mIGhvdXJzIHRoZSBwb2xsIHNob3VsZCBiZSBvcGVuIGZvclxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiB1cCB0byAzMiBkYXlzXG4gICAqXG4gICAqIEBkZWZhdWx0IDI0XG4gICAqL1xuICBkdXJhdGlvbjogbnVtYmVyXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgdXNlciBjYW4gc2VsZWN0IG11bHRpcGxlIGFuc3dlcnNcbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIGFsbG93TXVsdGlzZWxlY3Q6IGJvb2xlYW5cbiAgLyoqIFRoZSBsYXlvdXQgdHlwZSBvZiB0aGUgcG9sbCAqL1xuICBsYXlvdXRUeXBlPzogRGlzY29yZFBvbGxMYXlvdXRUeXBlXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvcG9sbCNnZXQtYW5zd2VyLXZvdGVycy1xdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEdldFBvbGxBbnN3ZXJWb3RlcyB7XG4gIC8qKiBHZXQgdXNlcnMgYWZ0ZXIgdGhpcyB1c2VyIElEICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG4gIC8qKlxuICAgKiBNYXggbnVtYmVyIG9mIHVzZXJzIHRvIHJldHVybiAoMS0xMDApXG4gICAqXG4gICAqIEBkZWZhdWx0IDI1XG4gICAqL1xuICBsaW1pdD86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL3N1YnNjcmlwdGlvbiNxdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RTa3VTdWJzY3JpcHRpb25zT3B0aW9ucyB7XG4gIC8qKiBMaXN0IHN1YnNjcmlwdGlvbnMgYmVmb3JlIHRoaXMgSUQgKi9cbiAgYmVmb3JlPzogQmlnU3RyaW5nXG4gIC8qKiBMaXN0IHN1YnNjcmlwdGlvbnMgYWZ0ZXIgdGhpcyBJRCAqL1xuICBhZnRlcj86IEJpZ1N0cmluZ1xuICAvKiogTnVtYmVyIG9mIHJlc3VsdHMgdG8gcmV0dXJuICgxLTEwMCkgKi9cbiAgbGltaXQ/OiBudW1iZXJcbiAgLyoqIFVzZXIgSUQgZm9yIHdoaWNoIHRvIHJldHVybiBzdWJzY3JpcHRpb25zLiBSZXF1aXJlZCBleGNlcHQgZm9yIE9BdXRoIHF1ZXJpZXMuICovXG4gIHVzZXJJZD86IEJpZ1N0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL3NvdW5kYm9hcmQjc2VuZC1zb3VuZGJvYXJkLXNvdW5kLWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIFNlbmRTb3VuZGJvYXJkU291bmQge1xuICAvKiogVGhlIGlkIG9mIHRoZSBzb3VuZGJvYXJkIHNvdW5kIHRvIHBsYXkgKi9cbiAgc291bmRJZDogQmlnU3RyaW5nXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGd1aWxkIHRoZSBzb3VuZGJvYXJkIHNvdW5kIGlzIGZyb20sIHJlcXVpcmVkIHRvIHBsYXkgc291bmRzIGZyb20gZGlmZmVyZW50IHNlcnZlcnMgKi9cbiAgc291cmNlR3VpbGRJZD86IEJpZ1N0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL3NvdW5kYm9hcmQjY3JlYXRlLWd1aWxkLXNvdW5kYm9hcmQtc291bmQtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRTb3VuZGJvYXJkU291bmQge1xuICAvKiogTmFtZSBvZiB0aGUgc291bmRib2FyZCBzb3VuZCAoMi0zMiBjaGFyYWN0ZXJzKSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIFRoZSBtcDMgb3Igb2dnIHNvdW5kIGRhdGEsIGJhc2U2NCBlbmNvZGVkLCBzaW1pbGFyIHRvIGltYWdlIGRhdGEgKi9cbiAgc291bmQ6IHN0cmluZ1xuICAvKiogVGhlIHZvbHVtZSBvZiB0aGUgc291bmRib2FyZCBzb3VuZCwgZnJvbSAwIHRvIDEsIGRlZmF1bHRzIHRvIDEgKi9cbiAgdm9sdW1lPzogbnVtYmVyIHwgbnVsbFxuICAvKiogVGhlIGlkIG9mIHRoZSBjdXN0b20gZW1vamkgZm9yIHRoZSBzb3VuZGJvYXJkIHNvdW5kICovXG4gIGVtb2ppSWQ/OiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBUaGUgdW5pY29kZSBjaGFyYWN0ZXIgb2YgYSBzdGFuZGFyZCBlbW9qaSBmb3IgdGhlIHNvdW5kYm9hcmQgc291bmQgKi9cbiAgZW1vamlOYW1lPzogc3RyaW5nIHwgbnVsbFxufVxuXG4vKiogaHR0cHM6Ly9jYW5hcnkuZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9zb3VuZGJvYXJkI21vZGlmeS1ndWlsZC1zb3VuZGJvYXJkLXNvdW5kLWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeUd1aWxkU291bmRib2FyZFNvdW5kIHtcbiAgLyoqIE5hbWUgb2YgdGhlIHNvdW5kYm9hcmQgc291bmQgKDItMzIgY2hhcmFjdGVycykgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBUaGUgdm9sdW1lIG9mIHRoZSBzb3VuZGJvYXJkIHNvdW5kLCBmcm9tIDAgdG8gMSwgZGVmYXVsdHMgdG8gMSAqL1xuICB2b2x1bWU6IG51bWJlciB8IG51bGxcbiAgLyoqIFRoZSBpZCBvZiB0aGUgY3VzdG9tIGVtb2ppIGZvciB0aGUgc291bmRib2FyZCBzb3VuZCAqL1xuICBlbW9qaUlkOiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBUaGUgdW5pY29kZSBjaGFyYWN0ZXIgb2YgYSBzdGFuZGFyZCBlbW9qaSBmb3IgdGhlIHNvdW5kYm9hcmQgc291bmQgKi9cbiAgZW1vamlOYW1lOiBzdHJpbmcgfCBudWxsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlV2ViaG9vayB7XG4gIC8qKiBOYW1lIG9mIHRoZSB3ZWJob29rICgxLTgwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogSW1hZ2UgdXJsIGZvciB0aGUgZGVmYXVsdCB3ZWJob29rIGF2YXRhciAqL1xuICBhdmF0YXI/OiBzdHJpbmcgfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjbW9kaWZ5LWd1aWxkLWluY2lkZW50LWFjdGlvbnMtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRJbmNpZGVudEFjdGlvbnMge1xuICAvKipcbiAgICogV2hlbiBpbnZpdGVzIHdpbGwgYmUgZW5hYmxlZCBhZ2FpblxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGUgdmFsdWUgc2hvdWxkIGVpdGhlciBiZSBhbiBJU084NjAxIHN0cmluZyBvciBudWxsXG4gICAqXG4gICAqIENhbiBiZSBlbmFibGVkIGZvciBhIG1heGltYWwgdGltZXNwYW4gb2YgMjQgaG91cnMgaW4gdGhlIGZ1dHVyZS5cbiAgICogU3VwcGx5aW5nIG51bGwgZGlzYWJsZXMgdGhlIGFjdGlvblxuICAgKi9cbiAgaW52aXRlc0Rpc2FibGVkVW50aWw/OiBzdHJpbmcgfCBudWxsXG4gIC8qKlxuICAgKiBXaGVuIGRpcmVjdCBtZXNzYWdlcyB3aWxsIGJlIGVuYWJsZWQgYWdhaW5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhlIHZhbHVlIHNob3VsZCBlaXRoZXIgYmUgYW4gSVNPODYwMSBzdHJpbmcgb3IgbnVsbFxuICAgKlxuICAgKiBDYW4gYmUgZW5hYmxlZCBmb3IgYSBtYXhpbWFsIHRpbWVzcGFuIG9mIDI0IGhvdXJzIGluIHRoZSBmdXR1cmUuXG4gICAqIFN1cHBseWluZyBudWxsIGRpc2FibGVzIHRoZSBhY3Rpb25cbiAgICovXG4gIGRtc19kaXNhYmxlZF91bnRpbD86IHN0cmluZyB8IG51bGxcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9sb2JieSNjcmVhdGUtbG9iYnkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlTG9iYnkge1xuICAvKiogT3B0aW9uYWwgZGljdGlvbmFyeSBvZiBzdHJpbmcga2V5L3ZhbHVlIHBhaXJzLiBUaGUgbWF4IHRvdGFsIGxlbmd0aCBpcyAxMDAwLiAqL1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfCBudWxsXG4gIC8qKiBPcHRpb25hbCBhcnJheSBvZiB1cCB0byAyNSB1c2VycyB0byBiZSBhZGRlZCB0byB0aGUgbG9iYnkgKi9cbiAgbWVtYmVycz86IENyZWF0ZUxvYmJ5TWVtYmVyW11cbiAgLyoqIFNlY29uZHMgdG8gd2FpdCBiZWZvcmUgc2h1dHRpbmcgZG93biBhIGxvYmJ5IGFmdGVyIGl0IGJlY29tZXMgaWRsZS4gVmFsdWUgY2FuIGJlIGJldHdlZW4gNSBhbmQgNjA0ODAwICg3IGRheXMpLiAqL1xuICBpZGxlVGltZW91dFNlY29uZHM/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9sb2JieSNjcmVhdGUtbG9iYnkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlTG9iYnlNZW1iZXIge1xuICAvKiogRGlzY29yZCB1c2VyIGlkIG9mIHRoZSB1c2VyIHRvIGFkZCB0byB0aGUgbG9iYnkgKi9cbiAgaWQ6IEJpZ1N0cmluZ1xuICAvKiogT3B0aW9uYWwgZGljdGlvbmFyeSBvZiBzdHJpbmcga2V5L3ZhbHVlIHBhaXJzLiBUaGUgbWF4IHRvdGFsIGxlbmd0aCBpcyAxMDAwLiAqL1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfCBudWxsXG4gIC8qKiBMb2JieSBtZW1iZXIgZmxhZ3MgY29tYmluZWQgYXMgYSBiaXRmaWVsZCAqL1xuICBmbGFncz86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2xvYmJ5I2FkZC1hLW1lbWJlci10by1hLWxvYmJ5ICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeUxvYmJ5IHtcbiAgLyoqIE9wdGlvbmFsIGRpY3Rpb25hcnkgb2Ygc3RyaW5nIGtleS92YWx1ZSBwYWlycy4gVGhlIG1heCB0b3RhbCBsZW5ndGggaXMgMTAwMC4gT3ZlcndyaXRlcyBhbnkgZXhpc3RpbmcgbWV0YWRhdGEuICovXG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB8IG51bGxcbiAgLyoqIE9wdGlvbmFsIGFycmF5IG9mIHVwIHRvIDI1IHVzZXJzIHRvIHJlcGxhY2UgdGhlIGxvYmJ5IG1lbWJlcnMgd2l0aC4gSWYgcHJvdmlkZWQsIGxvYmJ5IG1lbWJlcnMgbm90IGluIHRoaXMgbGlzdCB3aWxsIGJlIHJlbW92ZWQgZnJvbSB0aGUgbG9iYnkuICovXG4gIG1lbWJlcnM/OiBDcmVhdGVMb2JieU1lbWJlcltdXG4gIC8qKiBTZWNvbmRzIHRvIHdhaXQgYmVmb3JlIHNodXR0aW5nIGRvd24gYSBsb2JieSBhZnRlciBpdCBiZWNvbWVzIGlkbGUuIFZhbHVlIGNhbiBiZSBiZXR3ZWVuIDUgYW5kIDYwNDgwMCAoNyBkYXlzKS4gKi9cbiAgaWRsZVRpbWVvdXRTZWNvbmRzPzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvbG9iYnkjYWRkLWEtbWVtYmVyLXRvLWEtbG9iYnkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRkTG9iYnlNZW1iZXIge1xuICAvKiogT3B0aW9uYWwgZGljdGlvbmFyeSBvZiBzdHJpbmcga2V5L3ZhbHVlIHBhaXJzLiBUaGUgbWF4IHRvdGFsIGxlbmd0aCBpcyAxMDAwLiAqL1xuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4gfCBudWxsXG4gIC8qKiBMb2JieSBtZW1iZXIgZmxhZ3MgY29tYmluZWQgYXMgYSBiaXRmaWVsZCAqL1xuICBmbGFncz86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2xvYmJ5I2xpbmstY2hhbm5lbC10by1sb2JieSAqL1xuZXhwb3J0IGludGVyZmFjZSBMaW5rQ2hhbm5lbFRvTG9iYnkge1xuICAvKiogVGhlIGlkIG9mIHRoZSBjaGFubmVsIHRvIGxpbmsgdG8gdGhlIGxvYmJ5LiBJZiBub3QgcHJvdmlkZWQsIHdpbGwgdW5saW5rIGFueSBjdXJyZW50bHkgbGlua2VkIGNoYW5uZWxzIGZyb20gdGhlIGxvYmJ5LiAqL1xuICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbn1cbiJdLCJuYW1lcyI6WyJDcmVhdGVFbnRpdGxlbWVudE93bmVyVHlwZSJdLCJtYXBwaW5ncyI6Ijs7OzsrQkFnckRZQTs7O2VBQUFBOzs7QUFBTCxJQUFBLEFBQUtBLG9EQUFBQTtJQUNWLHVCQUF1QjtJQUV2QixzQkFBc0I7V0FIWkEifQ==
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9kaXNjb3JkZW5vLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcbiAgQXBwbGljYXRpb25GbGFncyxcbiAgRGlzY29yZEFwcGxpY2F0aW9uRXZlbnRXZWJob29rU3RhdHVzLFxuICBEaXNjb3JkQXBwbGljYXRpb25JbnRlZ3JhdGlvblR5cGUsXG4gIERpc2NvcmRJbnN0YWxsUGFyYW1zLFxufSBmcm9tICcuL2Rpc2NvcmQvYXBwbGljYXRpb24uanMnXG5pbXBvcnQgdHlwZSB7IEF1ZGl0TG9nRXZlbnRzIH0gZnJvbSAnLi9kaXNjb3JkL2F1ZGl0TG9nLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBdXRvTW9kZXJhdGlvbkFjdGlvblR5cGUsXG4gIEF1dG9Nb2RlcmF0aW9uRXZlbnRUeXBlcyxcbiAgQXV0b01vZGVyYXRpb25UcmlnZ2VyVHlwZXMsXG4gIERpc2NvcmRBdXRvTW9kZXJhdGlvblJ1bGVUcmlnZ2VyTWV0YWRhdGFQcmVzZXRzLFxufSBmcm9tICcuL2Rpc2NvcmQvYXV0b01vZGVyYXRpb24uanMnXG5pbXBvcnQgdHlwZSB7XG4gIENoYW5uZWxUeXBlcyxcbiAgRGlzY29yZENoYW5uZWwsXG4gIERpc2NvcmREZWZhdWx0UmVhY3Rpb25FbW9qaSxcbiAgRGlzY29yZEZvcnVtVGFnLFxuICBGb3J1bUxheW91dCxcbiAgT3ZlcndyaXRlVHlwZXMsXG4gIFNvcnRPcmRlclR5cGVzLFxuICBWaWRlb1F1YWxpdHlNb2Rlcyxcbn0gZnJvbSAnLi9kaXNjb3JkL2NoYW5uZWwuanMnXG5pbXBvcnQgdHlwZSB7XG4gIEJ1dHRvblN0eWxlcyxcbiAgRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW0sXG4gIERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbSxcbiAgTWVzc2FnZUNvbXBvbmVudFR5cGVzLFxuICBTZXBhcmF0b3JTcGFjaW5nU2l6ZSxcbiAgVGV4dFN0eWxlcyxcbn0gZnJvbSAnLi9kaXNjb3JkL2NvbXBvbmVudHMuanMnXG5pbXBvcnQgdHlwZSB7XG4gIERlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9uTGV2ZWxzLFxuICBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nTW9kZSxcbiAgRGlzY29yZEd1aWxkT25ib2FyZGluZ1Byb21wdCxcbiAgRXhwbGljaXRDb250ZW50RmlsdGVyTGV2ZWxzLFxuICBHdWlsZEZlYXR1cmVzLFxuICBTeXN0ZW1DaGFubmVsRmxhZ3MsXG4gIFZlcmlmaWNhdGlvbkxldmVscyxcbn0gZnJvbSAnLi9kaXNjb3JkL2d1aWxkLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBEaXNjb3JkU2NoZWR1bGVkRXZlbnRSZWN1cnJlbmNlUnVsZSxcbiAgU2NoZWR1bGVkRXZlbnRFbnRpdHlUeXBlLFxuICBTY2hlZHVsZWRFdmVudFByaXZhY3lMZXZlbCxcbiAgU2NoZWR1bGVkRXZlbnRTdGF0dXMsXG59IGZyb20gJy4vZGlzY29yZC9ndWlsZFNjaGVkdWxlZEV2ZW50LmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcyxcbiAgRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbixcbiAgRGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbkNob2ljZSxcbiAgRGlzY29yZEludGVyYWN0aW9uQ29udGV4dFR5cGUsXG4gIERpc2NvcmRJbnRlcmFjdGlvbkVudHJ5UG9pbnRDb21tYW5kSGFuZGxlclR5cGUsXG4gIEludGVyYWN0aW9uUmVzcG9uc2VUeXBlcyxcbn0gZnJvbSAnLi9kaXNjb3JkL2ludGVyYWN0aW9ucy5qcydcbmltcG9ydCB0eXBlIHsgVGFyZ2V0VHlwZXMgfSBmcm9tICcuL2Rpc2NvcmQvaW52aXRlLmpzJ1xuaW1wb3J0IHR5cGUge1xuICBBbGxvd2VkTWVudGlvbnNUeXBlcyxcbiAgRGlzY29yZEF0dGFjaG1lbnQsXG4gIERpc2NvcmRFbWJlZCxcbiAgRGlzY29yZE1lc3NhZ2VSZWZlcmVuY2VUeXBlLFxuICBEaXNjb3JkUmVhY3Rpb25UeXBlLFxuICBNZXNzYWdlRmxhZ3MsXG59IGZyb20gJy4vZGlzY29yZC9tZXNzYWdlLmpzJ1xuaW1wb3J0IHR5cGUgeyBEaXNjb3JkUm9sZSwgUGVybWlzc2lvblN0cmluZ3MgfSBmcm9tICcuL2Rpc2NvcmQvcGVybWlzc2lvbnMuanMnXG5pbXBvcnQgdHlwZSB7IERpc2NvcmRQb2xsQW5zd2VyLCBEaXNjb3JkUG9sbExheW91dFR5cGUsIERpc2NvcmRQb2xsTWVkaWEgfSBmcm9tICcuL2Rpc2NvcmQvcG9sbC5qcydcbmltcG9ydCB0eXBlIHsgTG9jYWxpemF0aW9uIH0gZnJvbSAnLi9kaXNjb3JkL3JlZmVyZW5jZS5qcydcbmltcG9ydCB0eXBlIHsgRGlzY29yZFdlYmhvb2tFdmVudFR5cGUgfSBmcm9tICcuL2Rpc2NvcmQvd2ViaG9va0V2ZW50cy5qcydcbmltcG9ydCB0eXBlIHsgQmlnU3RyaW5nLCBDYW1lbGl6ZSB9IGZyb20gJy4vc2hhcmVkLmpzJ1xuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjY3JlYXRlLW1lc3NhZ2UtanNvbmZvcm0tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZU1lc3NhZ2VPcHRpb25zIHtcbiAgLyoqIFRoZSBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gIGNvbnRlbnQ/OiBzdHJpbmdcbiAgLyoqIENhbiBiZSB1c2VkIHRvIHZlcmlmeSBhIG1lc3NhZ2Ugd2FzIHNlbnQgKHVwIHRvIDI1IGNoYXJhY3RlcnMpLiBWYWx1ZSB3aWxsIGFwcGVhciBpbiB0aGUgTWVzc2FnZSBDcmVhdGUgZXZlbnQuICovXG4gIG5vbmNlPzogc3RyaW5nIHwgbnVtYmVyXG4gIC8qKiB0cnVlIGlmIHRoaXMgaXMgYSBUVFMgbWVzc2FnZSAqL1xuICB0dHM/OiBib29sZWFuXG4gIC8qKiBFbWJlZGRlZCBgcmljaGAgY29udGVudCAodXAgdG8gNjAwMCBjaGFyYWN0ZXJzKSAqL1xuICBlbWJlZHM/OiBDYW1lbGl6ZTxEaXNjb3JkRW1iZWQ+W11cbiAgLyoqIEFsbG93ZWQgbWVudGlvbnMgZm9yIHRoZSBtZXNzYWdlICovXG4gIGFsbG93ZWRNZW50aW9ucz86IEFsbG93ZWRNZW50aW9uc1xuICAvKiogSW5jbHVkZSB0byBtYWtlIHlvdXIgbWVzc2FnZSBhIHJlcGx5IG9yIGEgZm9yd2FyZCAqL1xuICBtZXNzYWdlUmVmZXJlbmNlPzoge1xuICAgIC8qKiBUeXBlIG9mIHJlZmVyZW5jZSAqL1xuICAgIHR5cGU/OiBEaXNjb3JkTWVzc2FnZVJlZmVyZW5jZVR5cGVcbiAgICAvKiogaWQgb2YgdGhlIG9yaWdpbmF0aW5nIG1lc3NhZ2UgKi9cbiAgICBtZXNzYWdlSWQ/OiBCaWdTdHJpbmdcbiAgICAvKipcbiAgICAgKiBpZCBvZiB0aGUgb3JpZ2luYXRpbmcgbWVzc2FnZSdzIGNoYW5uZWxcbiAgICAgKiBOb3RlOiBgY2hhbm5lbF9pZGAgaXMgb3B0aW9uYWwgd2hlbiBjcmVhdGluZyBhIHJlcGx5LCBidXQgd2lsbCBhbHdheXMgYmUgcHJlc2VudCB3aGVuIHJlY2VpdmluZyBhbiBldmVudC9yZXNwb25zZSB0aGF0IGluY2x1ZGVzIHRoaXMgZGF0YSBtb2RlbC5cbiAgICAgKi9cbiAgICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbiAgICAvKiogaWQgb2YgdGhlIG9yaWdpbmF0aW5nIG1lc3NhZ2UncyBndWlsZCAqL1xuICAgIGd1aWxkSWQ/OiBCaWdTdHJpbmdcbiAgICAvKiogV2hlbiBzZW5kaW5nLCB3aGV0aGVyIHRvIGVycm9yIGlmIHRoZSByZWZlcmVuY2VkIG1lc3NhZ2UgZG9lc24ndCBleGlzdCBpbnN0ZWFkIG9mIHNlbmRpbmcgYXMgYSBub3JtYWwgKG5vbi1yZXBseSkgbWVzc2FnZSwgZGVmYXVsdCB0cnVlICovXG4gICAgZmFpbElmTm90RXhpc3RzPzogYm9vbGVhblxuICB9XG4gIGF0dGFjaG1lbnRzPzogKFBpY2s8Q2FtZWxpemU8RGlzY29yZEF0dGFjaG1lbnQ+LCAnaWQnPiAmIE9taXQ8UGFydGlhbDxDYW1lbGl6ZTxEaXNjb3JkQXR0YWNobWVudD4+LCAnaWQnPilbXVxuICAvKiogVGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlcyBiZWluZyBzZW50ICovXG4gIGZpbGVzPzogRmlsZUNvbnRlbnRbXVxuICAvKiogVGhlIGNvbXBvbmVudHMgeW91IHdvdWxkIGxpa2UgdG8gaGF2ZSBzZW50IGluIHRoaXMgbWVzc2FnZSAqL1xuICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbiAgLyoqIElEcyBvZiB1cCB0byAzIHN0aWNrZXJzIGluIHRoZSBzZXJ2ZXIgdG8gc2VuZCBpbiB0aGUgbWVzc2FnZSAqL1xuICBzdGlja2VySWRzPzogW0JpZ1N0cmluZ10gfCBbQmlnU3RyaW5nLCBCaWdTdHJpbmddIHwgW0JpZ1N0cmluZywgQmlnU3RyaW5nLCBCaWdTdHJpbmddXG4gIC8qKiBNZXNzYWdlIGZsYWdzIGNvbWJpbmVkIGFzIGEgYml0ZmllbGQsIG9ubHkgU1VQUFJFU1NfRU1CRURTLCBTVVBQUkVTU19OT1RJRklDQVRJT05TLCBJU19DT01QT05FTlRTX1YyIGNhbiBiZSBzZXQgKi9cbiAgZmxhZ3M/OiBNZXNzYWdlRmxhZ3NcbiAgLyoqIElmIHRydWUgYW5kIG5vbmNlIGlzIHByZXNlbnQsIGl0IHdpbGwgYmUgY2hlY2tlZCBmb3IgdW5pcXVlbmVzcyBpbiB0aGUgcGFzdCBmZXcgbWludXRlcy4gSWYgYW5vdGhlciBtZXNzYWdlIHdhcyBjcmVhdGVkIGJ5IHRoZSBzYW1lIGF1dGhvciB3aXRoIHRoZSBzYW1lIG5vbmNlLCB0aGF0IG1lc3NhZ2Ugd2lsbCBiZSByZXR1cm5lZCBhbmQgbm8gbmV3IG1lc3NhZ2Ugd2lsbCBiZSBjcmVhdGVkLiAqL1xuICBlbmZvcmNlTm9uY2U/OiBib29sZWFuXG4gIC8qKiBBIHBvbGwgb2JqZWN0ICovXG4gIHBvbGw/OiBDcmVhdGVQb2xsXG59XG5cbmV4cG9ydCB0eXBlIE1lc3NhZ2VDb21wb25lbnRzID0gTWVzc2FnZUNvbXBvbmVudFtdXG5leHBvcnQgdHlwZSBNZXNzYWdlQ29tcG9uZW50ID1cbiAgfCBBY3Rpb25Sb3dcbiAgfCBCdXR0b25Db21wb25lbnRcbiAgfCBUZXh0SW5wdXRDb21wb25lbnRcbiAgfCBTdHJpbmdTZWxlY3RDb21wb25lbnRcbiAgfCBDaGFubmVsU2VsZWN0Q29tcG9uZW50XG4gIHwgUm9sZVNlbGVjdENvbXBvbmVudFxuICB8IFVzZXJTZWxlY3RDb21wb25lbnRcbiAgfCBNZW50aW9uYWJsZVNlbGVjdENvbXBvbmVudFxuICB8IFNlY3Rpb25Db21wb25lbnRcbiAgfCBUZXh0RGlzcGxheUNvbXBvbmVudFxuICB8IFRodW1ibmFpbENvbXBvbmVudFxuICB8IE1lZGlhR2FsbGVyeUNvbXBvbmVudFxuICB8IFNlcGFyYXRvckNvbXBvbmVudFxuICB8IENvbnRhaW5lckNvbXBvbmVudFxuICB8IEZpbGVDb21wb25lbnRcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2NvbXBvbmVudHMvcmVmZXJlbmNlI2FuYXRvbXktb2YtYS1jb21wb25lbnQgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQmFzZUNvbXBvbmVudCB7XG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgY29tcG9uZW50ICovXG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlc1xuICAvKiogMzIgYml0IGludGVnZXIgdXNlZCBhcyBhbiBvcHRpb25hbCBpZGVudGlmaWVyIGZvciBjb21wb25lbnQgKi9cbiAgaWQ/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2NvbXBvbmVudHMvcmVmZXJlbmNlI2FjdGlvbi1yb3ctYWN0aW9uLXJvdy1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uUm93IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5BY3Rpb25Sb3dcblxuICAvKipcbiAgICogVGhlIGNvbXBvbmVudHMgaW4gdGhpcyByb3dcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVXAgdG8gNSBidXR0b24gY29tcG9uZW50cywgYSBzaW5nbGUgc2VsZWN0IGNvbXBvbmVudCBvciBhIHNpbmdsZSB0ZXh0IGlucHV0IGNvbXBvbmVudFxuICAgKi9cbiAgY29tcG9uZW50czogKFxuICAgIHwgQnV0dG9uQ29tcG9uZW50XG4gICAgfCBTdHJpbmdTZWxlY3RDb21wb25lbnRcbiAgICB8IFVzZXJTZWxlY3RDb21wb25lbnRcbiAgICB8IFJvbGVTZWxlY3RDb21wb25lbnRcbiAgICB8IE1lbnRpb25hYmxlU2VsZWN0Q29tcG9uZW50XG4gICAgfCBDaGFubmVsU2VsZWN0Q29tcG9uZW50XG4gICAgfCBUZXh0SW5wdXRDb21wb25lbnRcbiAgKVtdXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNidXR0b24tYnV0dG9uLXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBCdXR0b25Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkJ1dHRvblxuXG4gIC8qKiBmb3Igd2hhdCB0aGUgYnV0dG9uIHNheXMgKG1heCA4MCBjaGFyYWN0ZXJzKSAqL1xuICBsYWJlbD86IHN0cmluZ1xuICAvKiogYSBkZXYtZGVmaW5lZCB1bmlxdWUgc3RyaW5nIHNlbnQgb24gY2xpY2sgKG1heCAxMDAgY2hhcmFjdGVycykuIHR5cGUgNSBMaW5rIGJ1dHRvbnMgY2FuIG5vdCBoYXZlIGEgY3VzdG9tX2lkICovXG4gIGN1c3RvbUlkPzogc3RyaW5nXG4gIC8qKiBGb3IgZGlmZmVyZW50IHN0eWxlcy9jb2xvcnMgb2YgdGhlIGJ1dHRvbnMgKi9cbiAgc3R5bGU6IEJ1dHRvblN0eWxlc1xuICAvKiogRW1vamkgb2JqZWN0IHRoYXQgaW5jbHVkZXMgZmllbGRzIG9mIG5hbWUsIGlkLCBhbmQgYW5pbWF0ZWQgc3VwcG9ydGluZyB1bmljb2RlIGFuZCBjdXN0b20gZW1vamlzLiAqL1xuICBlbW9qaT86IHtcbiAgICAvKiogRW1vamkgaWQgKi9cbiAgICBpZD86IGJpZ2ludFxuICAgIC8qKiBFbW9qaSBuYW1lICovXG4gICAgbmFtZT86IHN0cmluZ1xuICAgIC8qKiBXaGV0aGVyIHRoaXMgZW1vamkgaXMgYW5pbWF0ZWQgKi9cbiAgICBhbmltYXRlZD86IGJvb2xlYW5cbiAgfVxuICAvKiogSWRlbnRpZmllciBmb3IgYSBwdXJjaGFzYWJsZSBTS1UsIG9ubHkgYXZhaWxhYmxlIHdoZW4gdXNpbmcgcHJlbWl1bS1zdHlsZSBidXR0b25zICovXG4gIHNrdUlkPzogQmlnU3RyaW5nXG4gIC8qKiBvcHRpb25hbCB1cmwgZm9yIGxpbmstc3R5bGUgYnV0dG9ucyB0aGF0IGNhbiBuYXZpZ2F0ZSBhIHVzZXIgdG8gdGhlIHdlYi4gT25seSB0eXBlIDUgTGluayBidXR0b25zIGNhbiBoYXZlIGEgdXJsICovXG4gIHVybD86IHN0cmluZ1xuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBidXR0b24gaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNzdHJpbmctc2VsZWN0LXN0cmluZy1zZWxlY3Qtc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmluZ1NlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuU3RyaW5nU2VsZWN0XG5cbiAgLyoqIEEgY3VzdG9tIGlkZW50aWZpZXIgZm9yIHRoaXMgY29tcG9uZW50LiBNYXhpbXVtIDEwMCBjaGFyYWN0ZXJzLiAqL1xuICBjdXN0b21JZDogc3RyaW5nXG4gIC8qKiBBIGN1c3RvbSBwbGFjZWhvbGRlciB0ZXh0IGlmIG5vdGhpbmcgaXMgc2VsZWN0ZWQuIE1heGltdW0gMTUwIGNoYXJhY3RlcnMuICovXG4gIHBsYWNlaG9sZGVyPzogc3RyaW5nXG4gIC8qKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBtdXN0IGJlIHNlbGVjdGVkLiBEZWZhdWx0IDEuIEJldHdlZW4gMS0yNS4gKi9cbiAgbWluVmFsdWVzPzogbnVtYmVyXG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtYXhWYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFRoZSBjaG9pY2VzISBNYXhpbXVtIG9mIDI1IGl0ZW1zLiAqL1xuICBvcHRpb25zOiBTZWxlY3RPcHRpb25bXVxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBzZWxlY3QgaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSN1c2VyLXNlbGVjdC11c2VyLXNlbGVjdC1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXNlclNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuVXNlclNlbGVjdFxuXG4gIC8qKiBBIGN1c3RvbSBpZGVudGlmaWVyIGZvciB0aGlzIGNvbXBvbmVudC4gTWF4aW11bSAxMDAgY2hhcmFjdGVycy4gKi9cbiAgY3VzdG9tSWQ6IHN0cmluZ1xuICAvKiogQSBjdXN0b20gcGxhY2Vob2xkZXIgdGV4dCBpZiBub3RoaW5nIGlzIHNlbGVjdGVkLiBNYXhpbXVtIDE1MCBjaGFyYWN0ZXJzLiAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKipcbiAgICogTGlzdCBvZiBkZWZhdWx0IHZhbHVlcyBmb3IgYXV0by1wb3B1bGF0ZWQgc2VsZWN0IG1lbnUgY29tcG9uZW50c1xuICAgKiBUaGUgbnVtYmVyIG9mIGRlZmF1bHQgdmFsdWVzIG11c3QgYmUgaW4gdGhlIHJhbmdlIGRlZmluZWQgYnkgbWluVmFsdWVzIGFuZCBtYXhWYWx1ZXNcbiAgICovXG4gIGRlZmF1bHRWYWx1ZXM/OiBTZWxlY3RNZW51RGVmYXVsdFZhbHVlW11cbiAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IG11c3QgYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtaW5WYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IGNhbiBiZSBzZWxlY3RlZC4gRGVmYXVsdCAxLiBCZXR3ZWVuIDEtMjUuICovXG4gIG1heFZhbHVlcz86IG51bWJlclxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBzZWxlY3QgaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNyb2xlLXNlbGVjdC1yb2xlLXNlbGVjdC1zdHJ1Y3R1cmUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZVNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuUm9sZVNlbGVjdFxuXG4gIC8qKiBBIGN1c3RvbSBpZGVudGlmaWVyIGZvciB0aGlzIGNvbXBvbmVudC4gTWF4aW11bSAxMDAgY2hhcmFjdGVycy4gKi9cbiAgY3VzdG9tSWQ6IHN0cmluZ1xuICAvKiogQSBjdXN0b20gcGxhY2Vob2xkZXIgdGV4dCBpZiBub3RoaW5nIGlzIHNlbGVjdGVkLiBNYXhpbXVtIDE1MCBjaGFyYWN0ZXJzLiAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKipcbiAgICogTGlzdCBvZiBkZWZhdWx0IHZhbHVlcyBmb3IgYXV0by1wb3B1bGF0ZWQgc2VsZWN0IG1lbnUgY29tcG9uZW50c1xuICAgKiBUaGUgbnVtYmVyIG9mIGRlZmF1bHQgdmFsdWVzIG11c3QgYmUgaW4gdGhlIHJhbmdlIGRlZmluZWQgYnkgbWluVmFsdWVzIGFuZCBtYXhWYWx1ZXNcbiAgICovXG4gIGRlZmF1bHRWYWx1ZXM/OiBTZWxlY3RNZW51RGVmYXVsdFZhbHVlW11cbiAgLyoqIFRoZSBtaW5pbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IG11c3QgYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtaW5WYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0aGF0IGNhbiBiZSBzZWxlY3RlZC4gRGVmYXVsdCAxLiBCZXR3ZWVuIDEtMjUuICovXG4gIG1heFZhbHVlcz86IG51bWJlclxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBzZWxlY3QgaXMgZGlzYWJsZWQgKi9cbiAgZGlzYWJsZWQ/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNtZW50aW9uYWJsZS1zZWxlY3QtbWVudGlvbmFibGUtc2VsZWN0LXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBNZW50aW9uYWJsZVNlbGVjdENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVudGlvbmFibGVTZWxlY3RcblxuICAvKiogQSBjdXN0b20gaWRlbnRpZmllciBmb3IgdGhpcyBjb21wb25lbnQuIE1heGltdW0gMTAwIGNoYXJhY3RlcnMuICovXG4gIGN1c3RvbUlkOiBzdHJpbmdcbiAgLyoqIEEgY3VzdG9tIHBsYWNlaG9sZGVyIHRleHQgaWYgbm90aGluZyBpcyBzZWxlY3RlZC4gTWF4aW11bSAxNTAgY2hhcmFjdGVycy4gKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVmYXVsdCB2YWx1ZXMgZm9yIGF1dG8tcG9wdWxhdGVkIHNlbGVjdCBtZW51IGNvbXBvbmVudHNcbiAgICogVGhlIG51bWJlciBvZiBkZWZhdWx0IHZhbHVlcyBtdXN0IGJlIGluIHRoZSByYW5nZSBkZWZpbmVkIGJ5IG1pblZhbHVlcyBhbmQgbWF4VmFsdWVzXG4gICAqL1xuICBkZWZhdWx0VmFsdWVzPzogU2VsZWN0TWVudURlZmF1bHRWYWx1ZVtdXG4gIC8qKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBtdXN0IGJlIHNlbGVjdGVkLiBEZWZhdWx0IDEuIEJldHdlZW4gMS0yNS4gKi9cbiAgbWluVmFsdWVzPzogbnVtYmVyXG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtYXhWYWx1ZXM/OiBudW1iZXJcbiAgLyoqIFdoZXRoZXIgb3Igbm90IHRoaXMgc2VsZWN0IGlzIGRpc2FibGVkICovXG4gIGRpc2FibGVkPzogYm9vbGVhblxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjY2hhbm5lbC1zZWxlY3QtY2hhbm5lbC1zZWxlY3Qtc3RydWN0dXJlICovXG5leHBvcnQgaW50ZXJmYWNlIENoYW5uZWxTZWxlY3RDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLkNoYW5uZWxTZWxlY3RcblxuICAvKiogQSBjdXN0b20gaWRlbnRpZmllciBmb3IgdGhpcyBjb21wb25lbnQuIE1heGltdW0gMTAwIGNoYXJhY3RlcnMuICovXG4gIGN1c3RvbUlkOiBzdHJpbmdcbiAgLyoqIEEgY3VzdG9tIHBsYWNlaG9sZGVyIHRleHQgaWYgbm90aGluZyBpcyBzZWxlY3RlZC4gTWF4aW11bSAxNTAgY2hhcmFjdGVycy4gKi9cbiAgcGxhY2Vob2xkZXI/OiBzdHJpbmdcbiAgLyoqXG4gICAqIExpc3Qgb2YgZGVmYXVsdCB2YWx1ZXMgZm9yIGF1dG8tcG9wdWxhdGVkIHNlbGVjdCBtZW51IGNvbXBvbmVudHNcbiAgICogVGhlIG51bWJlciBvZiBkZWZhdWx0IHZhbHVlcyBtdXN0IGJlIGluIHRoZSByYW5nZSBkZWZpbmVkIGJ5IG1pblZhbHVlcyBhbmQgbWF4VmFsdWVzXG4gICAqL1xuICBkZWZhdWx0VmFsdWVzPzogU2VsZWN0TWVudURlZmF1bHRWYWx1ZVtdXG4gIC8qKiBUaGUgbWluaW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBtdXN0IGJlIHNlbGVjdGVkLiBEZWZhdWx0IDEuIEJldHdlZW4gMS0yNS4gKi9cbiAgbWluVmFsdWVzPzogbnVtYmVyXG4gIC8qKiBUaGUgbWF4aW11bSBudW1iZXIgb2YgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQuIERlZmF1bHQgMS4gQmV0d2VlbiAxLTI1LiAqL1xuICBtYXhWYWx1ZXM/OiBudW1iZXJcbiAgLyoqIExpc3Qgb2YgY2hhbm5lbCB0eXBlcyB0byBpbmNsdWRlIGluIHRoZSBvcHRpb25zIGxpc3QgKi9cbiAgY2hhbm5lbFR5cGVzPzogQ2hhbm5lbFR5cGVzW11cbiAgLyoqIFdoZXRoZXIgb3Igbm90IHRoaXMgc2VsZWN0IGlzIGRpc2FibGVkICovXG4gIGRpc2FibGVkPzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdE9wdGlvbiB7XG4gIC8qKiBUaGUgdXNlci1mYWNpbmcgbmFtZSBvZiB0aGUgb3B0aW9uLiBNYXhpbXVtIDI1IGNoYXJhY3RlcnMuICovXG4gIGxhYmVsOiBzdHJpbmdcbiAgLyoqIFRoZSBkZXYtZGVmaW5lZCB2YWx1ZSBvZiB0aGUgb3B0aW9uLiBNYXhpbXVtIDEwMCBjaGFyYWN0ZXJzLiAqL1xuICB2YWx1ZTogc3RyaW5nXG4gIC8qKiBBbiBhZGRpdGlvbmFsIGRlc2NyaXB0aW9uIG9mIHRoZSBvcHRpb24uIE1heGltdW0gNTAgY2hhcmFjdGVycy4gKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgLyoqIFRoZSBpZCwgbmFtZSwgYW5kIGFuaW1hdGVkIHByb3BlcnRpZXMgb2YgYW4gZW1vamkuICovXG4gIGVtb2ppPzoge1xuICAgIC8qKiBFbW9qaSBpZCAqL1xuICAgIGlkPzogYmlnaW50XG4gICAgLyoqIEVtb2ppIG5hbWUgKi9cbiAgICBuYW1lPzogc3RyaW5nXG4gICAgLyoqIFdoZXRoZXIgdGhpcyBlbW9qaSBpcyBhbmltYXRlZCAqL1xuICAgIGFuaW1hdGVkPzogYm9vbGVhblxuICB9XG4gIC8qKiBXaWxsIHJlbmRlciB0aGlzIG9wdGlvbiBhcyBhbHJlYWR5LXNlbGVjdGVkIGJ5IGRlZmF1bHQuICovXG4gIGRlZmF1bHQ/OiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0TWVudURlZmF1bHRWYWx1ZSB7XG4gIC8qKiBJRCBvZiBhIHVzZXIsIHJvbGUsIG9yIGNoYW5uZWwgKi9cbiAgaWQ6IGJpZ2ludFxuICAvKiogVHlwZSBvZiB2YWx1ZSB0aGF0IGlkIHJlcHJlc2VudHMuICovXG4gIHR5cGU6ICd1c2VyJyB8ICdyb2xlJyB8ICdjaGFubmVsJ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjdGV4dC1pbnB1dC10ZXh0LWlucHV0LXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBUZXh0SW5wdXRDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlRleHRJbnB1dFxuXG4gIC8qKiBUaGUgc3R5bGUgb2YgdGhlIElucHV0VGV4dCAqL1xuICBzdHlsZTogVGV4dFN0eWxlc1xuICAvKiogVGhlIGN1c3RvbUlkIG9mIHRoZSBJbnB1dFRleHQgKi9cbiAgY3VzdG9tSWQ6IHN0cmluZ1xuICAvKiogVGhlIGxhYmVsIG9mIHRoZSBJbnB1dFRleHQuIE1heGltdW0gNDUgY2hhcmFjdGVycyAqL1xuICBsYWJlbDogc3RyaW5nXG4gIC8qKiBUaGUgcGxhY2Vob2xkZXIgb2YgdGhlIElucHV0VGV4dCAqL1xuICBwbGFjZWhvbGRlcj86IHN0cmluZ1xuICAvKiogVGhlIG1pbmltdW0gbGVuZ3RoIG9mIHRoZSB0ZXh0IHRoZSB1c2VyIGhhcyB0byBwcm92aWRlICovXG4gIG1pbkxlbmd0aD86IG51bWJlclxuICAvKiogVGhlIG1heGltdW0gbGVuZ3RoIG9mIHRoZSB0ZXh0IHRoZSB1c2VyIGhhcyB0byBwcm92aWRlICovXG4gIG1heExlbmd0aD86IG51bWJlclxuICAvKiogV2hldGhlciBvciBub3QgdGhpcyBpbnB1dCBpcyByZXF1aXJlZC4gKi9cbiAgcmVxdWlyZWQ/OiBib29sZWFuXG4gIC8qKiBQcmUtZmlsbGVkIHZhbHVlIGZvciBpbnB1dCB0ZXh0LiAqL1xuICB2YWx1ZT86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2Ujc2VjdGlvbi1zZWN0aW9uLXN0cnVjdHVyZSAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWN0aW9uQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5TZWN0aW9uXG5cbiAgLyoqIE9uZSB0byB0aHJlZSB0ZXh0IGNvbXBvbmVudHMgKi9cbiAgY29tcG9uZW50czogVGV4dERpc3BsYXlDb21wb25lbnRbXVxuICAvKiogQSB0aHVtYm5haWwgb3IgYSBidXR0b24gY29tcG9uZW50LCB3aXRoIGEgZnV0dXJlIHBvc3NpYmlsaXR5IG9mIGFkZGluZyBtb3JlIGNvbXBhdGlibGUgY29tcG9uZW50cyAqL1xuICBhY2Nlc3Nvcnk6IEJ1dHRvbkNvbXBvbmVudCB8IFRodW1ibmFpbENvbXBvbmVudFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjdGV4dC1kaXNwbGF5ICovXG5leHBvcnQgaW50ZXJmYWNlIFRleHREaXNwbGF5Q29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UZXh0RGlzcGxheVxuXG4gIC8qKiBUZXh0IHRoYXQgd2lsbCBiZSBkaXNwbGF5ZWQgc2ltaWxhciB0byBhIG1lc3NhZ2UgKi9cbiAgY29udGVudDogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSN0aHVtYm5haWwgKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGh1bWJuYWlsQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5UaHVtYm5haWxcblxuICAvKiogQSB1cmwgb3IgYXR0YWNobWVudCAqL1xuICBtZWRpYTogRGlzY29yZFVuZnVybGVkTWVkaWFJdGVtXG4gIC8qKiBBbHQgdGV4dCBmb3IgdGhlIG1lZGlhICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4gIC8qKiBXaGV0aGVyIHRoZSB0aHVtYm5haWwgc2hvdWxkIGJlIGEgc3BvaWxlciAob3IgYmx1cnJlZCBvdXQpLiBEZWZhdWx0cyB0byBgZmFsc2VgICovXG4gIHNwb2lsZXI/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNtZWRpYS1nYWxsZXJ5ICovXG5leHBvcnQgaW50ZXJmYWNlIE1lZGlhR2FsbGVyeUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICB0eXBlOiBNZXNzYWdlQ29tcG9uZW50VHlwZXMuTWVkaWFHYWxsZXJ5XG5cbiAgLyoqIDEgdG8gMTAgbWVkaWEgZ2FsbGVyeSBpdGVtcyAqL1xuICBpdGVtczogRGlzY29yZE1lZGlhR2FsbGVyeUl0ZW1bXVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvY29tcG9uZW50cy9yZWZlcmVuY2UjZmlsZSAqL1xuZXhwb3J0IGludGVyZmFjZSBGaWxlQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5GaWxlXG5cbiAgLyoqIFRoaXMgdW5mdXJsZWQgbWVkaWEgaXRlbSBpcyB1bmlxdWUgaW4gdGhhdCBpdCBvbmx5IHN1cHBvcnRzIGF0dGFjaG1lbnQgcmVmZXJlbmNlcyB1c2luZyB0aGUgYXR0YWNobWVudDovLzxmaWxlbmFtZT4gc3ludGF4ICovXG4gIGZpbGU6IERpc2NvcmRVbmZ1cmxlZE1lZGlhSXRlbVxuICAvKiogV2hldGhlciB0aGUgbWVkaWEgc2hvdWxkIGJlIGEgc3BvaWxlciAob3IgYmx1cnJlZCBvdXQpLiBEZWZhdWx0cyB0byBgZmFsc2VgICovXG4gIHNwb2lsZXI/OiBib29sZWFuXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgZmlsZS4gVGhpcyBmaWVsZCBpcyBpZ25vcmVkIGFuZCBwcm92aWRlZCBieSB0aGUgQVBJIGFzIHBhcnQgb2YgdGhlIHJlc3BvbnNlICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIHNpemUgb2YgdGhlIGZpbGUgaW4gYnl0ZXMuIFRoaXMgZmllbGQgaXMgaWdub3JlZCBhbmQgcHJvdmlkZWQgYnkgdGhlIEFQSSBhcyBwYXJ0IG9mIHRoZSByZXNwb25zZSAqL1xuICBzaXplOiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2NvbXBvbmVudHMvcmVmZXJlbmNlI3NlcGFyYXRvciAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXBhcmF0b3JDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgdHlwZTogTWVzc2FnZUNvbXBvbmVudFR5cGVzLlNlcGFyYXRvclxuXG4gIC8qKiBXaGV0aGVyIGEgdmlzdWFsIGRpdmlkZXIgc2hvdWxkIGJlIGRpc3BsYXllZCBpbiB0aGUgY29tcG9uZW50LiBEZWZhdWx0cyB0byBgdHJ1ZWAgKi9cbiAgZGl2aWRlcj86IGJvb2xlYW5cbiAgLyoqIFNpemUgb2Ygc2VwYXJhdG9yIHBhZGRpbmcg4oCUIGAxYCBmb3Igc21hbGwgcGFkZGluZywgYDJgIGZvciBsYXJnZSBwYWRkaW5nLiBEZWZhdWx0cyB0byBgMWAgKi9cbiAgc3BhY2luZz86IFNlcGFyYXRvclNwYWNpbmdTaXplXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9jb21wb25lbnRzL3JlZmVyZW5jZSNjb250YWluZXIgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ29udGFpbmVyQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHR5cGU6IE1lc3NhZ2VDb21wb25lbnRUeXBlcy5Db250YWluZXJcblxuICAvKiogQ29tcG9uZW50cyBvZiB0aGUgdHlwZSBhY3Rpb24gcm93LCB0ZXh0IGRpc3BsYXksIHNlY3Rpb24sIG1lZGlhIGdhbGxlcnksIHNlcGFyYXRvciwgb3IgZmlsZSAqL1xuICBjb21wb25lbnRzOiBBcnJheTxBY3Rpb25Sb3cgfCBUZXh0RGlzcGxheUNvbXBvbmVudCB8IFNlY3Rpb25Db21wb25lbnQgfCBNZWRpYUdhbGxlcnlDb21wb25lbnQgfCBTZXBhcmF0b3JDb21wb25lbnQgfCBGaWxlQ29tcG9uZW50PlxuICAvKiogQ29sb3IgZm9yIHRoZSBhY2NlbnQgb24gdGhlIGNvbnRhaW5lciBhcyBSR0IgZnJvbSAweDAwMDAwMCB0byAweEZGRkZGRiAqL1xuICBhY2NlbnRDb2xvcj86IG51bWJlclxuICAvKiogV2hldGhlciB0aGUgY29udGFpbmVyIHNob3VsZCBiZSBhIHNwb2lsZXIgKG9yIGJsdXJyZWQgb3V0KS4gRGVmYXVsdHMgdG8gYGZhbHNlYCAqL1xuICBzcG9pbGVyPzogYm9vbGVhblxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjYWxsb3dlZC1tZW50aW9ucy1vYmplY3QgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWxsb3dlZE1lbnRpb25zIHtcbiAgLyoqIEFuIGFycmF5IG9mIGFsbG93ZWQgbWVudGlvbiB0eXBlcyB0byBwYXJzZSBmcm9tIHRoZSBjb250ZW50LiAqL1xuICBwYXJzZT86IEFsbG93ZWRNZW50aW9uc1R5cGVzW11cbiAgLyoqIEZvciByZXBsaWVzLCB3aGV0aGVyIHRvIG1lbnRpb24gdGhlIGF1dGhvciBvZiB0aGUgbWVzc2FnZSBiZWluZyByZXBsaWVkIHRvIChkZWZhdWx0IGZhbHNlKSAqL1xuICByZXBsaWVkVXNlcj86IGJvb2xlYW5cbiAgLyoqIEFycmF5IG9mIHJvbGVfaWRzIHRvIG1lbnRpb24gKE1heCBzaXplIG9mIDEwMCkgKi9cbiAgcm9sZXM/OiBiaWdpbnRbXVxuICAvKiogQXJyYXkgb2YgdXNlcl9pZHMgdG8gbWVudGlvbiAoTWF4IHNpemUgb2YgMTAwKSAqL1xuICB1c2Vycz86IGJpZ2ludFtdXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRmlsZUNvbnRlbnQge1xuICAvKiogVGhlIGZpbGUgYmxvYiAqL1xuICBibG9iOiBCbG9iXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgZmlsZSAqL1xuICBuYW1lOiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNzZWFyY2gtZ3VpbGQtbWVtYmVycy1xdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE1lbWJlcnMge1xuICAvKiogUXVlcnkgc3RyaW5nIHRvIG1hdGNoIHVzZXJuYW1lKHMpIGFuZCBuaWNrbmFtZShzKSBhZ2FpbnN0ICovXG4gIHF1ZXJ5OiBzdHJpbmdcbiAgLyoqIE1heCBudW1iZXIgb2YgbWVtYmVycyB0byByZXR1cm4gKDEtMTAwMCkuIERlZmF1bHQ6IDEgKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPdmVyd3JpdGVSZWFkYWJsZSB7XG4gIC8qKiBSb2xlIG9yIHVzZXIgaWQgKi9cbiAgaWQ6IGJpZ2ludFxuICAvKiogRWl0aGVyIDAgKHJvbGUpIG9yIDEgKG1lbWJlcikgKi9cbiAgdHlwZTogT3ZlcndyaXRlVHlwZXNcbiAgLyoqIFBlcm1pc3Npb24gYml0IHNldCAqL1xuICBhbGxvdz86IFBlcm1pc3Npb25TdHJpbmdzW11cbiAgLyoqIFBlcm1pc3Npb24gYml0IHNldCAqL1xuICBkZW55PzogUGVybWlzc2lvblN0cmluZ3NbXVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjZ2V0LWNoYW5uZWwtbWVzc2FnZXMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRNZXNzYWdlc0xpbWl0IHtcbiAgLyoqIE1heCBudW1iZXIgb2YgbWVzc2FnZXMgdG8gcmV0dXJuICgxLTEwMCkgZGVmYXVsdCA1MCAqL1xuICBsaW1pdD86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjZ2V0LWNoYW5uZWwtbWVzc2FnZXMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRNZXNzYWdlc0Fyb3VuZCBleHRlbmRzIEdldE1lc3NhZ2VzTGltaXQge1xuICAvKiogR2V0IG1lc3NhZ2VzIGFyb3VuZCB0aGlzIG1lc3NhZ2UgaWQgKi9cbiAgYXJvdW5kPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNnZXQtY2hhbm5lbC1tZXNzYWdlcy1xdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEdldE1lc3NhZ2VzQmVmb3JlIGV4dGVuZHMgR2V0TWVzc2FnZXNMaW1pdCB7XG4gIC8qKiBHZXQgbWVzc2FnZXMgYmVmb3JlIHRoaXMgbWVzc2FnZSBpZCAqL1xuICBiZWZvcmU/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9jaGFubmVsI2dldC1jaGFubmVsLW1lc3NhZ2VzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0TWVzc2FnZXNBZnRlciBleHRlbmRzIEdldE1lc3NhZ2VzTGltaXQge1xuICAvKiogR2V0IG1lc3NhZ2VzIGFmdGVyIHRoaXMgbWVzc2FnZSBpZCAqL1xuICBhZnRlcj86IEJpZ1N0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBHZXRNZXNzYWdlc09wdGlvbnMgPSBHZXRNZXNzYWdlc0FmdGVyIHwgR2V0TWVzc2FnZXNCZWZvcmUgfCBHZXRNZXNzYWdlc0Fyb3VuZCB8IEdldE1lc3NhZ2VzTGltaXRcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9jaGFubmVsI2dldC1yZWFjdGlvbnMtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRSZWFjdGlvbnMge1xuICB0eXBlOiBEaXNjb3JkUmVhY3Rpb25UeXBlXG4gIC8qKiBHZXQgdXNlcnMgYWZ0ZXIgdGhpcyB1c2VyIElkICovXG4gIGFmdGVyPzogc3RyaW5nXG4gIC8qKiBNYXggbnVtYmVyIG9mIHVzZXJzIHRvIHJldHVybiAoMS0xMDApICovXG4gIGxpbWl0PzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNsaXN0LXB1YmxpYy1hcmNoaXZlZC10aHJlYWRzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEFyY2hpdmVkVGhyZWFkcyB7XG4gIC8qKiBSZXR1cm5zIHRocmVhZHMgYmVmb3JlIHRoaXMgdGltZXN0YW1wICovXG4gIGJlZm9yZT86IG51bWJlclxuICAvKiogT3B0aW9uYWwgbWF4aW11bSBudW1iZXIgb2YgdGhyZWFkcyB0byByZXR1cm4gKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9jaGFubmVsI2dldC10aHJlYWQtbWVtYmVyLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VGhyZWFkTWVtYmVyIHtcbiAgLyoqIFdoZXRoZXIgdG8gaW5jbHVkZSBhIGd1aWxkIG1lbWJlciBvYmplY3QgZm9yIHRoZSB0aHJlYWQgbWVtYmVyICovXG4gIHdpdGhNZW1iZXI/OiBib29sZWFuXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNsaXN0LXRocmVhZC1tZW1iZXJzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdFRocmVhZE1lbWJlcnMge1xuICAvKiogV2hldGhlciB0byBpbmNsdWRlIGEgZ3VpbGQgbWVtYmVyIG9iamVjdCBmb3IgdGhlIHRocmVhZCBtZW1iZXIgKi9cbiAgd2l0aE1lbWJlcj86IGJvb2xlYW5cbiAgLyoqIEdldCB0aHJlYWQgbWVtYmVycyBhZnRlciB0aGlzIHVzZXIgSUQgKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbiAgLyoqIE1heCBudW1iZXIgb2YgdGhyZWFkIG1lbWJlcnMgdG8gcmV0dXJuICgxLTEwMCkuIERlZmF1bHRzIHRvIDEwMC4gKi9cbiAgbGltaXQ/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9hdWRpdC1sb2cjZ2V0LWd1aWxkLWF1ZGl0LWxvZy1xdWVyeS1zdHJpbmctcGFyYW1ldGVycyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRHdWlsZEF1ZGl0TG9nIHtcbiAgLyoqIEVudHJpZXMgZnJvbSBhIHNwZWNpZmljIHVzZXIgSUQgKi9cbiAgdXNlcklkPzogQmlnU3RyaW5nXG4gIC8qKiBFbnRyaWVzIGZvciBhIHNwZWNpZmljIGF1ZGl0IGxvZyBldmVudCAqL1xuICBhY3Rpb25UeXBlPzogQXVkaXRMb2dFdmVudHNcbiAgLyoqIEVudHJpZXMgd2l0aCBJRCBsZXNzIHRoYW4gYSBzcGVjaWZpYyBhdWRpdCBsb2cgZW50cnkgSUQuICovXG4gIGJlZm9yZT86IEJpZ1N0cmluZ1xuICAvKiogRW50cmllcyB3aXRoIElEIGdyZWF0ZXIgdGhhbiBhIHNwZWNpZmljIGF1ZGl0IGxvZyBlbnRyeSBJRC4gKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbiAgLyoqIE1heGltdW0gbnVtYmVyIG9mIGVudHJpZXMgKGJldHdlZW4gMS0xMDApIHRvIHJldHVybiwgZGVmYXVsdHMgdG8gNTAgKi9cbiAgbGltaXQ/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy91c2VyI2dldC1jdXJyZW50LXVzZXItZ3VpbGRzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0VXNlckd1aWxkcyB7XG4gIC8qKiBHZXQgZ3VpbGRzIGJlZm9yZSB0aGlzIGd1aWxkIElEICovXG4gIGJlZm9yZT86IEJpZ1N0cmluZ1xuICAvKiogR2V0IGd1aWxkcyBhZnRlciB0aGlzIGd1aWxkIElEICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBlbnRyaWVzIChiZXR3ZWVuIDEtMjAwKSB0byByZXR1cm4sIGRlZmF1bHRzIHRvIDIwMCAqL1xuICBsaW1pdD86IG51bWJlclxuICAvKiogSW5jbHVkZSBhcHByb3hpbWF0ZSBtZW1iZXIgYW5kIHByZXNlbmNlIGNvdW50cyBpbiByZXNwb25zZSwgZGVmYXVsdHMgdG8gZmFsc2UgKi9cbiAgd2l0aENvdW50cz86IGJvb2xlYW5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRCYW5zIHtcbiAgLyoqIE51bWJlciBvZiB1c2VycyB0byByZXR1cm4gKHVwIHRvIG1heGltdW0gMTAwMCkuIERlZmF1bHQ6IDEwMDAgKi9cbiAgbGltaXQ/OiBudW1iZXJcbiAgLyoqIENvbnNpZGVyIG9ubHkgdXNlcnMgYmVmb3JlIGdpdmVuIHVzZXIgaWQgKi9cbiAgYmVmb3JlPzogQmlnU3RyaW5nXG4gIC8qKiBDb25zaWRlciBvbmx5IHVzZXJzIGFmdGVyIGdpdmVuIHVzZXIgaWQgKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNsaXN0LWd1aWxkLW1lbWJlcnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdEd1aWxkTWVtYmVycyB7XG4gIC8qKiBNYXggbnVtYmVyIG9mIG1lbWJlcnMgdG8gcmV0dXJuICgxLTEwMDApLiBEZWZhdWx0OiAxICovXG4gIGxpbWl0PzogbnVtYmVyXG4gIC8qKiBUaGUgaGlnaGVzdCB1c2VyIGlkIGluIHRoZSBwcmV2aW91cyBwYWdlLiBEZWZhdWx0OiAwICovXG4gIGFmdGVyPzogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjZ2V0LWd1aWxkLXBydW5lLWNvdW50ICovXG5leHBvcnQgaW50ZXJmYWNlIEdldEd1aWxkUHJ1bmVDb3VudFF1ZXJ5IHtcbiAgLyoqIE51bWJlciBvZiBkYXlzIHRvIGNvdW50IHBydW5lIGZvciAoMSBvciBtb3JlKSwgZGVmYXVsdDogNyAqL1xuICBkYXlzPzogbnVtYmVyXG4gIC8qKiBSb2xlKHMpIHRvIGluY2x1ZGUsIGRlZmF1bHQ6IG5vbmUgKi9cbiAgaW5jbHVkZVJvbGVzPzogc3RyaW5nIHwgc3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBHZXRTY2hlZHVsZWRFdmVudFVzZXJzIHtcbiAgLyoqIG51bWJlciBvZiB1c2VycyB0byByZXR1cm4gKHVwIHRvIG1heGltdW0gMTAwKSwgZGVmYXVsdHMgdG8gMTAwICovXG4gIGxpbWl0PzogbnVtYmVyXG4gIC8qKiB3aGV0aGVyIHRvIGFsc28gaGF2ZSBtZW1iZXIgb2JqZWN0cyBwcm92aWRlZCwgZGVmYXVsdHMgdG8gZmFsc2UgKi9cbiAgd2l0aE1lbWJlcj86IGJvb2xlYW5cbiAgLyoqIGNvbnNpZGVyIG9ubHkgdXNlcnMgYmVmb3JlIGdpdmVuIHVzZXIgaWQgKi9cbiAgYmVmb3JlPzogQmlnU3RyaW5nXG4gIC8qKiBjb25zaWRlciBvbmx5IHVzZXJzIGFmdGVyIGdpdmVuIHVzZXIgaWQuIElmIGJvdGggYmVmb3JlIGFuZCBhZnRlciBhcmUgcHJvdmlkZWQsIG9ubHkgYmVmb3JlIGlzIHJlc3BlY3RlZC4gRmV0Y2hpbmcgdXNlcnMgaW4tYmV0d2VlbiBiZWZvcmUgYW5kIGFmdGVyIGlzIG5vdCBzdXBwb3J0ZWQuICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvaW52aXRlI2dldC1pbnZpdGUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0SW52aXRlIHtcbiAgLyoqIFdoZXRoZXIgdGhlIGludml0ZSBzaG91bGQgY29udGFpbiBhcHByb3hpbWF0ZSBtZW1iZXIgY291bnRzICovXG4gIHdpdGhDb3VudHM/OiBib29sZWFuXG4gIC8qKiBXaGV0aGVyIHRoZSBpbnZpdGUgc2hvdWxkIGNvbnRhaW4gdGhlIGV4cGlyYXRpb24gZGF0ZSAqL1xuICB3aXRoRXhwaXJhdGlvbj86IGJvb2xlYW5cbiAgLyoqIHRoZSBndWlsZCBzY2hlZHVsZWQgZXZlbnQgdG8gaW5jbHVkZSB3aXRoIHRoZSBpbnZpdGUgKi9cbiAgc2NoZWR1bGVkRXZlbnRJZD86IEJpZ1N0cmluZ1xufVxuXG5leHBvcnQgdHlwZSBDcmVhdGVBcHBsaWNhdGlvbkNvbW1hbmQgPSBDcmVhdGVTbGFzaEFwcGxpY2F0aW9uQ29tbWFuZCB8IENyZWF0ZUNvbnRleHRBcHBsaWNhdGlvbkNvbW1hbmRcblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2ludGVyYWN0aW9ucy9hcHBsaWNhdGlvbi1jb21tYW5kcyNlbmRwb2ludHMtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlU2xhc2hBcHBsaWNhdGlvbkNvbW1hbmQge1xuICAvKipcbiAgICogTmFtZSBvZiBjb21tYW5kLCAxLTMyIGNoYXJhY3RlcnMuXG4gICAqIGBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcy5DaGF0SW5wdXRgIGNvbW1hbmQgbmFtZXMgbXVzdCBtYXRjaCB0aGUgZm9sbG93aW5nIHJlZ2V4IGBeWy1fyrxcXHB7TH1cXHB7Tn1cXHB7c2M9RGV2YX1cXHB7c2M9VGhhaX1dezEsMzJ9JGAgd2l0aCB0aGUgdW5pY29kZSBmbGFnIHNldC5cbiAgICogSWYgdGhlcmUgaXMgYSBsb3dlcmNhc2UgdmFyaWFudCBvZiBhbnkgbGV0dGVycyB1c2VkLCB5b3UgbXVzdCB1c2UgdGhvc2UuXG4gICAqIENoYXJhY3RlcnMgd2l0aCBubyBsb3dlcmNhc2UgdmFyaWFudHMgYW5kL29yIHVuY2FzZWQgbGV0dGVycyBhcmUgc3RpbGwgYWxsb3dlZC5cbiAgICogQXBwbGljYXRpb25Db21tYW5kVHlwZXMuVXNlcmAgYW5kIGBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcy5NZXNzYWdlYCBjb21tYW5kcyBtYXkgYmUgbWl4ZWQgY2FzZSBhbmQgY2FuIGluY2x1ZGUgc3BhY2VzLlxuICAgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBMb2NhbGl6YXRpb24gb2JqZWN0IGZvciB0aGUgYG5hbWVgIGZpZWxkLiBWYWx1ZXMgZm9sbG93IHRoZSBzYW1lIHJlc3RyaWN0aW9ucyBhcyBgbmFtZWAgKi9cbiAgbmFtZUxvY2FsaXphdGlvbnM/OiBMb2NhbGl6YXRpb25cbiAgLyoqIDEtMTAwIGNoYXJhY3RlciBkZXNjcmlwdGlvbiAqL1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIC8qKiBMb2NhbGl6YXRpb24gb2JqZWN0IGZvciB0aGUgYGRlc2NyaXB0aW9uYCBmaWVsZC4gVmFsdWVzIGZvbGxvdyB0aGUgc2FtZSByZXN0cmljdGlvbnMgYXMgYGRlc2NyaXB0aW9uYCAqL1xuICBkZXNjcmlwdGlvbkxvY2FsaXphdGlvbnM/OiBMb2NhbGl6YXRpb25cbiAgLyoqIFR5cGUgb2YgY29tbWFuZCwgZGVmYXVsdHMgYEFwcGxpY2F0aW9uQ29tbWFuZFR5cGVzLkNoYXRJbnB1dGAgaWYgbm90IHNldCAgKi9cbiAgdHlwZT86IEFwcGxpY2F0aW9uQ29tbWFuZFR5cGVzXG4gIC8qKlxuICAgKiBQYXJhbWV0ZXJzIGZvciB0aGUgY29tbWFuZFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgaW4gY29tbWFuZHMgb2YgdHlwZSB7QGxpbmsgQXBwbGljYXRpb25Db21tYW5kVHlwZXMuQ2hhdElucHV0IHwgQ2hhdElucHV0fVxuICAgKi9cbiAgb3B0aW9ucz86IENhbWVsaXplPERpc2NvcmRBcHBsaWNhdGlvbkNvbW1hbmRPcHRpb25bXT5cbiAgLyoqIFNldCBvZiBwZXJtaXNzaW9ucyByZXByZXNlbnRlZCBhcyBhIGJpdCBzZXQgKi9cbiAgZGVmYXVsdE1lbWJlclBlcm1pc3Npb25zPzogUGVybWlzc2lvblN0cmluZ3NbXVxuICAvKipcbiAgICogSW50ZWdyYXRpb24gdHlwZXMgd2hlcmUgdGhlIGNvbW1hbmQgaXMgYXZhaWxhYmxlXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgdmFsdWUgaXMgYXZhaWxhYmxlIG9ubHkgZm9yIGdsb2JhbGx5LXNjb3BlZCBjb21tYW5kc1xuICAgKiBEZWZhdWx0cyB0byB0aGUgYXBwbGljYXRpb24gY29uZmlndXJlZCBjb250ZXh0c1xuICAgKi9cbiAgaW50ZWdyYXRpb25UeXBlcz86IERpc2NvcmRBcHBsaWNhdGlvbkludGVncmF0aW9uVHlwZVtdXG4gIC8qKlxuICAgKiBJbnRlcmFjdGlvbiBjb250ZXh0IHR5cGVzIHdoZXJlIHRoZSBjb21tYW5kIGlzIGF2YWlsYWJsZS5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyB2YWx1ZSBpcyBhdmFpbGFibGUgb25seSBmb3IgZ2xvYmFsbHktc2NvcGVkIGNvbW1hbmRzLlxuICAgKi9cbiAgY29udGV4dHM/OiBEaXNjb3JkSW50ZXJhY3Rpb25Db250ZXh0VHlwZVtdXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgY29tbWFuZCBpcyBhdmFpbGFibGUgaW4gRE1zIHdpdGggdGhlIGFwcCwgb25seSBmb3IgZ2xvYmFsbHktc2NvcGVkIGNvbW1hbmRzLiBCeSBkZWZhdWx0LCBjb21tYW5kcyBhcmUgdmlzaWJsZS5cbiAgICpcbiAgICogQGRlcHJlY2F0ZWQgdXNlIHtAbGluayBjb250ZXh0c30gaW5zdGVhZFxuICAgKi9cbiAgZG1QZXJtaXNzaW9uPzogYm9vbGVhblxuICAvKiogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIGNvbW1hbmQgaXMgYWdlLXJlc3RyaWN0ZWQsIGRlZmF1bHRzIHRvIGBmYWxzZWAgKi9cbiAgbnNmdz86IGJvb2xlYW5cbiAgLyoqXG4gICAqIERldGVybWluZXMgd2hldGhlciB0aGUgaW50ZXJhY3Rpb24gaXMgaGFuZGxlZCBieSB0aGUgYXBwJ3MgaW50ZXJhY3Rpb25zIGhhbmRsZXIgb3IgYnkgRGlzY29yZFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGNhbiBvbmx5IGJlIHNldCBmb3IgYXBwbGljYXRpb24gY29tbWFuZHMgb2YgdHlwZSBgUFJJTUFSWV9FTlRSWV9QT0lOVGAgZm9yIGFwcGxpY2F0aW9ucyB3aXRoIHRoZSBgRU1CRURERURgIGZsYWcgKGkuZS4gYXBwbGljYXRpb25zIHRoYXQgaGF2ZSBhbiBBY3Rpdml0eSkuXG4gICAqL1xuICBoYW5kbGVyPzogRGlzY29yZEludGVyYWN0aW9uRW50cnlQb2ludENvbW1hbmRIYW5kbGVyVHlwZVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL2FwcGxpY2F0aW9uLWNvbW1hbmRzI2VuZHBvaW50cy1qc29uLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVDb250ZXh0QXBwbGljYXRpb25Db21tYW5kIGV4dGVuZHMgT21pdDxDcmVhdGVTbGFzaEFwcGxpY2F0aW9uQ29tbWFuZCwgJ29wdGlvbnMnIHwgJ2Rlc2NyaXB0aW9uJyB8ICdkZXNjcmlwdGlvbkxvY2FsaXphdGlvbnMnPiB7XG4gIC8qKiBUaGUgdHlwZSBvZiB0aGUgY29tbWFuZCAqL1xuICB0eXBlOiBBcHBsaWNhdGlvbkNvbW1hbmRUeXBlcy5NZXNzYWdlIHwgQXBwbGljYXRpb25Db21tYW5kVHlwZXMuVXNlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL3NsYXNoLWNvbW1hbmRzI2ludGVyYWN0aW9uLXJlc3BvbnNlLWludGVyYWN0aW9uYXBwbGljYXRpb25jb21tYW5kY2FsbGJhY2tkYXRhICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVyYWN0aW9uQ2FsbGJhY2tEYXRhIHtcbiAgLyoqIFRoZSBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gIGNvbnRlbnQ/OiBzdHJpbmdcbiAgLyoqIFRydWUgaWYgdGhpcyBpcyBhIFRUUyBtZXNzYWdlICovXG4gIHR0cz86IGJvb2xlYW5cbiAgLyoqIEVtYmVkZGVkIGByaWNoYCBjb250ZW50ICh1cCB0byA2MDAwIGNoYXJhY3RlcnMpICovXG4gIGVtYmVkcz86IENhbWVsaXplPERpc2NvcmRFbWJlZD5bXVxuICAvKiogQWxsb3dlZCBtZW50aW9ucyBmb3IgdGhlIG1lc3NhZ2UgKi9cbiAgYWxsb3dlZE1lbnRpb25zPzogQWxsb3dlZE1lbnRpb25zXG4gIC8qKiBUaGUgY29udGVudHMgb2YgdGhlIGZpbGVzIGJlaW5nIHNlbnQgKi9cbiAgZmlsZXM/OiBGaWxlQ29udGVudFtdXG4gIC8qKiBUaGUgY3VzdG9tSWQgeW91IHdhbnQgdG8gdXNlIGZvciB0aGlzIG1vZGFsIHJlc3BvbnNlLiAqL1xuICBjdXN0b21JZD86IHN0cmluZ1xuICAvKiogVGhlIHRpdGxlIHlvdSB3YW50IHRvIHVzZSBmb3IgdGhpcyBtb2RhbCByZXNwb25zZS4gKi9cbiAgdGl0bGU/OiBzdHJpbmdcbiAgLyoqIFRoZSBjb21wb25lbnRzIHlvdSB3b3VsZCBsaWtlIHRvIGhhdmUgc2VudCBpbiB0aGlzIG1lc3NhZ2UgKi9cbiAgY29tcG9uZW50cz86IE1lc3NhZ2VDb21wb25lbnRzXG4gIC8qKiBNZXNzYWdlIGZsYWdzIGNvbWJpbmVkIGFzIGEgYml0IGZpZWxkIChvbmx5IGBTVVBQUkVTU19FTUJFRFNgLCBgRVBIRU1FUkFMYCwgYElTX0NPTVBPTkVOVFNfVjJgLCBgSVNfVk9JQ0VfTUVTU0FHRWAgYW5kIGBTVVBQUkVTU19OT1RJRklDQVRJT05TYCBjYW4gYmUgc2V0KSAqL1xuICBmbGFncz86IG51bWJlclxuICAvKiogQXV0b2NvbXBsZXRlIGNob2ljZXMgKG1heCBvZiAyNSBjaG9pY2VzKSAqL1xuICBjaG9pY2VzPzogQ2FtZWxpemU8RGlzY29yZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbkNob2ljZVtdPlxuICAvKiogRGV0YWlscyBhYm91dCB0aGUgcG9sbCAqL1xuICBwb2xsPzogQ3JlYXRlUG9sbFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL3NsYXNoLWNvbW1hbmRzI2ludGVyYWN0aW9uLXJlc3BvbnNlICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVyYWN0aW9uUmVzcG9uc2Uge1xuICAvKiogVGhlIHR5cGUgb2YgcmVzcG9uc2UgKi9cbiAgdHlwZTogSW50ZXJhY3Rpb25SZXNwb25zZVR5cGVzXG4gIC8qKiBBbiBvcHRpb25hbCByZXNwb25zZSBtZXNzYWdlICovXG4gIGRhdGE/OiBJbnRlcmFjdGlvbkNhbGxiYWNrRGF0YVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvaW50ZXJhY3Rpb25zL3JlY2VpdmluZy1hbmQtcmVzcG9uZGluZyNjcmVhdGUtaW50ZXJhY3Rpb24tcmVzcG9uc2UtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlcmFjdGlvbkNhbGxiYWNrT3B0aW9ucyB7XG4gIHdpdGhSZXNwb25zZT86IGJvb2xlYW5cbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9lbW9qaSNjcmVhdGUtZ3VpbGQtZW1vamkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRFbW9qaSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbW9qaSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIFRoZSAxMjh4MTI4IGVtb2ppIGltYWdlLiBFbW9qaXMgYW5kIGFuaW1hdGVkIGVtb2ppcyBoYXZlIGEgbWF4aW11bSBmaWxlIHNpemUgb2YgMjU2a2IuIEF0dGVtcHRpbmcgdG8gdXBsb2FkIGFuIGVtb2ppIGxhcmdlciB0aGFuIHRoaXMgbGltaXQgd2lsbCBmYWlsIGFuZCByZXR1cm4gNDAwIEJhZCBSZXF1ZXN0IGFuZCBhbiBlcnJvciBtZXNzYWdlLCBidXQgbm90IGEgSlNPTiBzdGF0dXMgY29kZS4gSWYgYSBVUkwgaXMgcHJvdmlkZWQgdG8gdGhlIGltYWdlIHBhcmFtZXRlciwgRGlzY29yZGVubyB3aWxsIGF1dG9tYXRpY2FsbHkgY29udmVydCBpdCB0byBhIGJhc2U2NCBzdHJpbmcgaW50ZXJuYWxseS4gKi9cbiAgaW1hZ2U6IHN0cmluZ1xuICAvKiogUm9sZXMgYWxsb3dlZCB0byB1c2UgdGhpcyBlbW9qaSAqL1xuICByb2xlcz86IEJpZ1N0cmluZ1tdXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZW1vamkjY3JlYXRlLWFwcGxpY2F0aW9uLWVtb2ppICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUFwcGxpY2F0aW9uRW1vamkge1xuICAvKiogTmFtZSBvZiB0aGUgZW1vamkgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBUaGUgMTI4eDEyOCBlbW9qaSBpbWFnZS4gRW1vamlzIGFuZCBhbmltYXRlZCBlbW9qaXMgaGF2ZSBhIG1heGltdW0gZmlsZSBzaXplIG9mIDI1NmtiLiBBdHRlbXB0aW5nIHRvIHVwbG9hZCBhbiBlbW9qaSBsYXJnZXIgdGhhbiB0aGlzIGxpbWl0IHdpbGwgZmFpbCBhbmQgcmV0dXJuIDQwMCBCYWQgUmVxdWVzdCBhbmQgYW4gZXJyb3IgbWVzc2FnZSwgYnV0IG5vdCBhIEpTT04gc3RhdHVzIGNvZGUuIElmIGEgVVJMIGlzIHByb3ZpZGVkIHRvIHRoZSBpbWFnZSBwYXJhbWV0ZXIsIERpc2NvcmRlbm8gd2lsbCBhdXRvbWF0aWNhbGx5IGNvbnZlcnQgaXQgdG8gYSBiYXNlNjQgc3RyaW5nIGludGVybmFsbHkuICovXG4gIGltYWdlOiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9lbW9qaSNtb2RpZnktZ3VpbGQtZW1vamkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRFbW9qaSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBlbW9qaSAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKiBSb2xlcyBhbGxvd2VkIHRvIHVzZSB0aGlzIGVtb2ppICovXG4gIHJvbGVzPzogQmlnU3RyaW5nW10gfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZW1vamkjbW9kaWZ5LWFwcGxpY2F0aW9uLWVtb2ppICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeUFwcGxpY2F0aW9uRW1vamkge1xuICAvKiogTmFtZSBvZiB0aGUgZW1vamkgKi9cbiAgbmFtZT86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvdG9waWNzL2dhdGV3YXkjcmVxdWVzdC1ndWlsZC1tZW1iZXJzICovXG5leHBvcnQgaW50ZXJmYWNlIFJlcXVlc3RHdWlsZE1lbWJlcnMge1xuICAvKiogaWQgb2YgdGhlIGd1aWxkIHRvIGdldCBtZW1iZXJzIGZvciAqL1xuICBndWlsZElkOiBCaWdTdHJpbmdcbiAgLyoqIFN0cmluZyB0aGF0IHVzZXJuYW1lIHN0YXJ0cyB3aXRoLCBvciBhbiBlbXB0eSBzdHJpbmcgdG8gcmV0dXJuIGFsbCBtZW1iZXJzICovXG4gIHF1ZXJ5Pzogc3RyaW5nXG4gIC8qKiBNYXhpbXVtIG51bWJlciBvZiBtZW1iZXJzIHRvIHNlbmQgbWF0Y2hpbmcgdGhlIHF1ZXJ5OyBhIGxpbWl0IG9mIDAgY2FuIGJlIHVzZWQgd2l0aCBhbiBlbXB0eSBzdHJpbmcgcXVlcnkgdG8gcmV0dXJuIGFsbCBtZW1iZXJzICovXG4gIGxpbWl0OiBudW1iZXJcbiAgLyoqIFVzZWQgdG8gc3BlY2lmeSBpZiB3ZSB3YW50IHRoZSBwcmVzZW5jZXMgb2YgdGhlIG1hdGNoZWQgbWVtYmVycyAqL1xuICBwcmVzZW5jZXM/OiBib29sZWFuXG4gIC8qKiBVc2VkIHRvIHNwZWNpZnkgd2hpY2ggdXNlcnMgeW91IHdpc2ggdG8gZmV0Y2ggKi9cbiAgdXNlcklkcz86IEJpZ1N0cmluZ1tdXG4gIC8qKiBOb25jZSB0byBpZGVudGlmeSB0aGUgR3VpbGQgTWVtYmVycyBDaHVuayByZXNwb25zZSAqL1xuICBub25jZT86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2NyZWF0ZS1ndWlsZC1jaGFubmVsICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUd1aWxkQ2hhbm5lbCB7XG4gIC8qKiBDaGFubmVsIG5hbWUgKDEtMTAwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIHR5cGUgb2YgY2hhbm5lbCAqL1xuICB0eXBlPzogQ2hhbm5lbFR5cGVzXG4gIC8qKiBDaGFubmVsIHRvcGljICgwLTEwMjQgY2hhcmFjdGVycykgKi9cbiAgdG9waWM/OiBzdHJpbmdcbiAgLyoqIFRoZSBiaXRyYXRlIChpbiBiaXRzKSBvZiB0aGUgdm9pY2UgY2hhbm5lbCAodm9pY2Ugb25seSkgKi9cbiAgYml0cmF0ZT86IG51bWJlclxuICAvKiogVGhlIHVzZXIgbGltaXQgb2YgdGhlIHZvaWNlIGNoYW5uZWwgKHZvaWNlIG9ubHkpICovXG4gIHVzZXJMaW1pdD86IG51bWJlclxuICAvKiogQW1vdW50IG9mIHNlY29uZHMgYSB1c2VyIGhhcyB0byB3YWl0IGJlZm9yZSBzZW5kaW5nIGFub3RoZXIgbWVzc2FnZSAoMC0yMTYwMCk7IGJvdHMsIGFzIHdlbGwgYXMgdXNlcnMgd2l0aCB0aGUgcGVybWlzc2lvbiBgbWFuYWdlX21lc3NhZ2VzYCBvciBgbWFuYWdlX2NoYW5uZWxgLCBhcmUgdW5hZmZlY3RlZCAqL1xuICByYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyXG4gIC8qKiBTb3J0aW5nIHBvc2l0aW9uIG9mIHRoZSBjaGFubmVsIChjaGFubmVscyB3aXRoIHRoZSBzYW1lIHBvc2l0aW9uIGFyZSBzb3J0ZWQgYnkgaWQpICovXG4gIHBvc2l0aW9uPzogbnVtYmVyXG4gIC8qKiBUaGUgY2hhbm5lbCdzIHBlcm1pc3Npb24gb3ZlcndyaXRlcyAqL1xuICBwZXJtaXNzaW9uT3ZlcndyaXRlcz86IE92ZXJ3cml0ZVJlYWRhYmxlW11cbiAgLyoqIElkIG9mIHRoZSBwYXJlbnQgY2F0ZWdvcnkgZm9yIGEgY2hhbm5lbCAqL1xuICBwYXJlbnRJZD86IEJpZ1N0cmluZ1xuICAvKiogV2hldGhlciB0aGUgY2hhbm5lbCBpcyBuc2Z3ICovXG4gIG5zZnc/OiBib29sZWFuXG4gIC8qKiBEZWZhdWx0IGR1cmF0aW9uIChpbiBtaW51dGVzKSB0aGF0IGNsaWVudHMgKG5vdCB0aGUgQVBJKSB1c2UgZm9yIG5ld2x5IGNyZWF0ZWQgdGhyZWFkcyBpbiB0aGlzIGNoYW5uZWwsIHRvIGRldGVybWluZSB3aGVuIHRvIGF1dG9tYXRpY2FsbHkgYXJjaGl2ZSB0aGUgdGhyZWFkIGFmdGVyIHRoZSBsYXN0IGFjdGl2aXR5ICovXG4gIGRlZmF1bHRBdXRvQXJjaGl2ZUR1cmF0aW9uPzogbnVtYmVyXG4gIC8qKiBFbW9qaSB0byBzaG93IGluIHRoZSBhZGQgcmVhY3Rpb24gYnV0dG9uIG9uIGEgdGhyZWFkIGluIGEgZm9ydW0gY2hhbm5lbCAqL1xuICBkZWZhdWx0UmVhY3Rpb25FbW9qaT86IHtcbiAgICAvKiogVGhlIGlkIG9mIGEgZ3VpbGQncyBjdXN0b20gZW1vamkuIEV4YWN0bHkgb25lIG9mIGBlbW9qaUlkYCBhbmQgYGVtb2ppTmFtZWAgbXVzdCBiZSBzZXQuICovXG4gICAgZW1vamlJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgICAvKiogVGhlIHVuaWNvZGUgY2hhcmFjdGVyIG9mIHRoZSBlbW9qaS4gRXhhY3RseSBvbmUgb2YgYGVtb2ppSWRgIGFuZCBgZW1vamlOYW1lYCBtdXN0IGJlIHNldC4gKi9cbiAgICBlbW9qaU5hbWU/OiBzdHJpbmcgfCBudWxsXG4gIH1cbiAgLyoqIFNldCBvZiB0YWdzIHRoYXQgY2FuIGJlIHVzZWQgaW4gYSBmb3J1bSBjaGFubmVsICovXG4gIGF2YWlsYWJsZVRhZ3M/OiBBcnJheTx7XG4gICAgLyoqIFRoZSBpZCBvZiB0aGUgdGFnICovXG4gICAgaWQ6IEJpZ1N0cmluZ1xuICAgIC8qKiBUaGUgbmFtZSBvZiB0aGUgdGFnICgwLTIwIGNoYXJhY3RlcnMpICovXG4gICAgbmFtZTogc3RyaW5nXG4gICAgLyoqIHdoZXRoZXIgdGhpcyB0YWcgY2FuIG9ubHkgYmUgYWRkZWQgdG8gb3IgcmVtb3ZlZCBmcm9tIHRocmVhZHMgYnkgYSBtZW1iZXIgd2l0aCB0aGUgTUFOQUdFX1RIUkVBRFMgcGVybWlzc2lvbiAqL1xuICAgIG1vZGVyYXRlZDogYm9vbGVhblxuICAgIC8qKiBUaGUgaWQgb2YgYSBndWlsZCdzIGN1c3RvbSBlbW9qaSAqL1xuICAgIGVtb2ppSWQ6IEJpZ1N0cmluZ1xuICAgIC8qKiBUaGUgdW5pY29kZSBjaGFyYWN0ZXIgb2YgdGhlIGVtb2ppICovXG4gICAgZW1vamlOYW1lPzogc3RyaW5nXG4gIH0+XG4gIC8qKiBUaGUgZGVmYXVsdCBzb3J0IG9yZGVyIHR5cGUgdXNlZCB0byBvcmRlciBwb3N0cyBpbiBmb3J1bSBjaGFubmVscyAqL1xuICBkZWZhdWx0U29ydE9yZGVyPzogU29ydE9yZGVyVHlwZXMgfCBudWxsXG4gIC8qKiBUaGUgaW5pdGlhbCByYXRlbGltaXQgdG8gc2V0IG9uIG5ld2x5IGNyZWF0ZWQgdGhyZWFkcyBpbiBhIGNoYW5uZWwuICovXG4gIGRlZmF1bHRUaHJlYWRSYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR2xvYmFsQXBwbGljYXRpb25Db21tYW5kT3B0aW9ucyB7XG4gIC8qKiBUaGUgYmVhcmVyIHRva2VuIG9mIHRoZSBkZXZlbG9wZXIgb2YgdGhlIGFwcGxpY2F0aW9uICovXG4gIGJlYXJlclRva2VuOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMge1xuICAvKiogVGhlIGJlYXJlciB0b2tlbiBvZiB0aGUgZGV2ZWxvcGVyIG9mIHRoZSBhcHBsaWNhdGlvbiAqL1xuICBiZWFyZXJUb2tlbjogc3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgVXBzZXJ0R2xvYmFsQXBwbGljYXRpb25Db21tYW5kT3B0aW9ucyB7XG4gIC8qKiBUaGUgYmVhcmVyIHRva2VuIG9mIHRoZSBkZXZlbG9wZXIgb2YgdGhlIGFwcGxpY2F0aW9uICovXG4gIGJlYXJlclRva2VuOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBVcHNlcnRHdWlsZEFwcGxpY2F0aW9uQ29tbWFuZE9wdGlvbnMge1xuICAvKiogVGhlIGJlYXJlciB0b2tlbiBvZiB0aGUgZGV2ZWxvcGVyIG9mIHRoZSBhcHBsaWNhdGlvbiAqL1xuICBiZWFyZXJUb2tlbjogc3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvdXNlciNjcmVhdGUtZ3JvdXAtZG0tanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0R3JvdXBEbU9wdGlvbnMge1xuICAvKiogQWNjZXNzIHRva2VucyBvZiB1c2VycyB0aGF0IGhhdmUgZ3JhbnRlZCB5b3VyIGFwcCB0aGUgYGdkbS5qb2luYCBzY29wZSAqL1xuICBhY2Nlc3NUb2tlbnM6IHN0cmluZ1tdXG4gIC8qKiBBIG1hcHBpbmcgb2YgdXNlciBpZHMgdG8gdGhlaXIgcmVzcGVjdGl2ZSBuaWNrbmFtZXMgKi9cbiAgbmlja3M/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+XG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNncm91cC1kbS1hZGQtcmVjaXBpZW50LWpzb24tcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEFkZERtUmVjaXBpZW50T3B0aW9ucyB7XG4gIC8qKiBhY2Nlc3MgdG9rZW4gb2YgYSB1c2VyIHRoYXQgaGFzIGdyYW50ZWQgeW91ciBhcHAgdGhlIGBnZG0uam9pbmAgc2NvcGUgKi9cbiAgYWNjZXNzVG9rZW46IHN0cmluZ1xuICAvKiogbmlja25hbWUgb2YgdGhlIHVzZXIgYmVpbmcgYWRkZWQgKi9cbiAgbmljaz86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2FkZC1ndWlsZC1tZW1iZXItanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWRkR3VpbGRNZW1iZXJPcHRpb25zIHtcbiAgLyoqIGFjY2VzcyB0b2tlbiBvZiBhIHVzZXIgdGhhdCBoYXMgZ3JhbnRlZCB5b3VyIGFwcCB0aGUgYGd1aWxkcy5qb2luYCBzY29wZSAqL1xuICBhY2Nlc3NUb2tlbjogc3RyaW5nXG4gIC8qKiBWYWx1ZSB0byBzZXQgdXNlcidzIG5pY2tuYW1lIHRvLiBSZXF1aXJlcyBNQU5BR0VfTklDS05BTUVTIHBlcm1pc3Npb24gb24gdGhlIGJvdCAqL1xuICBuaWNrPzogc3RyaW5nXG4gIC8qKiBBcnJheSBvZiByb2xlIGlkcyB0aGUgbWVtYmVyIGlzIGFzc2lnbmVkLiBSZXF1aXJlcyBNQU5BR0VfUk9MRVMgcGVybWlzc2lvbiBvbiB0aGUgYm90ICovXG4gIHJvbGVzPzogc3RyaW5nW11cbiAgLyoqIFdoZXRoZXIgdGhlIHVzZXIgaXMgbXV0ZWQgaW4gdm9pY2UgY2hhbm5lbHMuIFJlcXVpcmVzIE1VVEVfTUVNQkVSUyBwZXJtaXNzaW9uIG9uIHRoZSBib3QgKi9cbiAgbXV0ZT86IGJvb2xlYW5cbiAgLyoqIFdoZXRoZXIgdGhlIHVzZXIgaXMgZGVhZmVuZWQgaW4gdm9pY2UgY2hhbm5lbHMuIFJlcXVpcmVzIERFQUZFTl9NRU1CRVJTIHBlcm1pc3Npb24gb24gdGhlIGJvdCAqL1xuICBkZWFmPzogYm9vbGVhblxufVxuXG4vKipcbiAqIC0gaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjbW9kaWZ5LWNoYW5uZWwtanNvbi1wYXJhbXMtZ3JvdXAtZG1cbiAqIC0gaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2NoYW5uZWwjbW9kaWZ5LWNoYW5uZWwtanNvbi1wYXJhbXMtZ3VpbGQtY2hhbm5lbFxuICogLSBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNtb2RpZnktY2hhbm5lbC1qc29uLXBhcmFtcy10aHJlYWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlDaGFubmVsIHtcbiAgLyoqXG4gICAqIDEtMTAwIGNoYXJhY3RlciBjaGFubmVsIG5hbWVcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyB2YWxpZCBvbmx5IHdoZW4gZWRpdGluZyBncm91cCBkbXMsIGFueSBndWlsZCBjaGFubmVsIHR5cGUsIG9yIGEgdGhyZWFkXG4gICAqL1xuICBuYW1lPzogc3RyaW5nXG4gIC8qKlxuICAgKiBCYXNlNjQgZW5jb2RlZCBpY29uXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgdmFsaWQgb25seSB3aGVuIGVkaXRpbmcgZ3JvdXAgZG1zXG4gICAqL1xuICBpY29uPzogc3RyaW5nXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBjaGFubmVsXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFlvdSBjYW4gb25seSBjb252ZXJ0IGJldHdlZW4ge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9IGNoYW5uZWxzIGFuZCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkQW5ub3VuY2VtZW50fSBjaGFubmVscyB3aGVuIHRoZSBndWlsZCBoYXMgdGhlIGBORVdTYCBmZWF0dXJlXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRBbm5vdW5jZW1lbnR9LlxuICAgKi9cbiAgdHlwZT86IENoYW5uZWxUeXBlc1xuICAvKipcbiAgICogVGhlIHBvc2l0aW9uIG9mIHRoZSBjaGFubmVsIGluIHRoZSBsZWZ0LWhhbmQgbGlzdGluZyAoY2hhbm5lbHMgd2l0aCB0aGUgc2FtZSBwb3NpdGlvbiBhcmUgc29ydGVkIGJ5IGlkKVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiBhbnkgdHlwZVxuICAgKi9cbiAgcG9zaXRpb24/OiBudW1iZXIgfCBudWxsXG4gIC8qKlxuICAgKiBDaGFubmVsIHRvcGljXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIDAtMTAyNCBjaGFyYWN0ZXIgY2hhbm5lbCB0b3BpYywgb3IgZm9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gYW5kIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0gMC00MDk2XG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkQW5ub3VuY2VtZW50fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgdG9waWM/OiBzdHJpbmcgfCBudWxsXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjaGFubmVsIGlzIG5zZndcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkVGV4dH0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRWb2ljZX0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRBbm5vdW5jZW1lbnR9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkU3RhZ2VWb2ljZX0ge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgbnNmdz86IGJvb2xlYW4gfCBudWxsXG4gIC8qKlxuICAgKiBBbW91bnQgb2Ygc2Vjb25kcyBhIHVzZXIgaGFzIHRvIHdhaXQgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlIGluIHNlY29uZHMgKDAtMjE2MDApXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIEJvdHMgYW5kIHVzZXJzIHdpdGggdGhlIHBlcm1pc3Npb24gYE1BTkFHRV9NRVNTQUdFU2Agb3IgYE1BTkFHRV9DSEFOTkVMYCwgYXJlIHVuYWZmZWN0ZWRcbiAgICpcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkVGV4dH0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRWb2ljZX0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRTdGFnZVZvaWNlfSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0sIG9yIGEgdGhyZWFkLlxuICAgKi9cbiAgcmF0ZUxpbWl0UGVyVXNlcj86IG51bWJlciB8IG51bGxcbiAgLyoqXG4gICAqIFRoZSBiaXRyYXRlIChpbiBiaXRzKSBvZiB0aGUgdm9pY2Ugb3Igc3RhZ2UgY2hhbm5lbFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBNaW5pbXVtIG9mIDgwMDAgYml0c1xuICAgKlxuICAgKiBGb3Igdm9pY2UgY2hhbm5lbHM6XG4gICAqIC0gbm9ybWFsIHNlcnZlcnMgY2FuIHNldCBiaXRyYXRlIHVwIHRvIDk2MDAwXG4gICAqIC0gc2VydmVycyB3aXRoIEJvb3N0IGxldmVsIDEgY2FuIHNldCB1cCB0byAxMjgwMDBcbiAgICogLSBzZXJ2ZXJzIHdpdGggQm9vc3QgbGV2ZWwgMiBjYW4gc2V0IHVwIHRvIDI1NjAwMFxuICAgKiAtIHNlcnZlcnMgd2l0aCBCb29zdCBsZXZlbCAzIG9yIHRoZSBgVklQX1JFR0lPTlNgIGd1aWxkIGZlYXR1cmUgY2FuIHNldCB1cCB0byAzODQwMDAuXG4gICAqXG4gICAqIEZvciBzdGFnZSBjaGFubmVscywgYml0cmF0ZSBjYW4gYmUgc2V0IHVwIHRvIDY0MDAwLlxuICAgKlxuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRWb2ljZX0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRTdGFnZVZvaWNlfS5cbiAgICovXG4gIGJpdHJhdGU/OiBudW1iZXIgfCBudWxsXG4gIC8qKlxuICAgKiBUaGUgdXNlciBsaW1pdCBvZiB0aGUgdm9pY2Ugb3Igc3RhZ2UgY2hhbm5lbCAoMCByZWZlcnMgdG8gbm8gbGltaXQpXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIC0gRm9yIHZvaWNlIGNoYW5uZWxzLCB0aGUgbWF4IGlzIHNldCB0byA5OVxuICAgKiAtIEZvciBzdGFnZSBjaGFubmVscywgdGhlIG1heCBpcyBzZXQgdG8gMTAsMDAwXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFZvaWNlfSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFN0YWdlVm9pY2V9LlxuICAgKi9cbiAgdXNlckxpbWl0PzogbnVtYmVyIHwgbnVsbFxuICAvKipcbiAgICogQ2hhbm5lbCBvciBjYXRlZ29yeS1zcGVjaWZpYyBwZXJtaXNzaW9uc1xuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiBhbnkgdHlwZVxuICAgKi9cbiAgcGVybWlzc2lvbk92ZXJ3cml0ZXM/OiBPdmVyd3JpdGVSZWFkYWJsZVtdIHwgbnVsbFxuICAvKipcbiAgICogSWQgb2YgdGhlIG5ldyBwYXJlbnQgY2F0ZWdvcnkgZm9yIGEgY2hhbm5lbFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRUZXh0fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFZvaWNlfSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEFubm91bmNlbWVudH0sIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRTdGFnZVZvaWNlfSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0uXG4gICAqL1xuICBwYXJlbnRJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqXG4gICAqIFZvaWNlIHJlZ2lvbiBpZCBmb3IgdGhlIHZvaWNlIGNoYW5uZWwsIGF1dG9tYXRpYyB3aGVuIHNldCB0byBudWxsXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFZvaWNlfSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFN0YWdlVm9pY2V9LlxuICAgKi9cbiAgcnRjUmVnaW9uPzogc3RyaW5nIHwgbnVsbFxuICAvKipcbiAgICogVGhlIGNhbWVyYSB2aWRlbyBxdWFsaXR5IG1vZGUgb2YgdGhlIHZvaWNlIGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkVm9pY2V9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkU3RhZ2VWb2ljZX0uXG4gICAqL1xuICB2aWRlb1F1YWxpdHlNb2RlPzogVmlkZW9RdWFsaXR5TW9kZXNcbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IGR1cmF0aW9uIHRoYXQgdGhlIGNsaWVudHMgdXNlIChub3QgdGhlIEFQSSkgZm9yIG5ld2x5IGNyZWF0ZWQgdGhyZWFkcyBpbiB0aGUgY2hhbm5lbCwgaW4gbWludXRlcywgdG8gYXV0b21hdGljYWxseSBhcmNoaXZlIHRoZSB0aHJlYWQgYWZ0ZXIgcmVjZW50IGFjdGl2aXR5XG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZFRleHR9LCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkQW5ub3VuY2VtZW50fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgZGVmYXVsdEF1dG9BcmNoaXZlRHVyYXRpb24/OiA2MCB8IDE0NDAgfCA0MzIwIHwgMTAwODBcbiAgLyoqXG4gICAqIENoYW5uZWwgZmxhZ3MgY29tYmluZWQgYXMgYSBiaXRmaWVsZC5cbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogLSBgUkVRVUlSRV9UQUdgIGlzIHN1cHBvcnRlZCBvbmx5IGJ5IHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gYW5kIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0gY2hhbm5lbHMuXG4gICAqIC0gYEhJREVfTUVESUFfRE9XTkxPQURfT1BUSU9OU2AgaXMgc3VwcG9ydGVkIG9ubHkgYnkge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZE1lZGlhfSBjaGFubmVsc1xuICAgKiAtIGBQSU5ORURgIGNhbiBvbmx5IGJlIHNldCBmb3IgdGhyZWFkcyBpbiB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IGFuZCB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxzXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LCBvciBhIHRocmVhZC5cbiAgICovXG4gIGZsYWdzPzogbnVtYmVyXG4gIC8qKlxuICAgKiBUaGUgc2V0IG9mIHRhZ3MgdGhhdCBjYW4gYmUgdXNlZCBpbiBhIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gb3IgYSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogTGltaXRlZCB0byAyMCB0YWdzXG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSBndWlsZCBjaGFubmVsIG9mIHR5cGUge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgYXZhaWxhYmxlVGFncz86IERpc2NvcmRGb3J1bVRhZ1tdXG4gIC8qKlxuICAgKiBUaGUgZW1vamkgdG8gc2hvdyBpbiB0aGUgYWRkIHJlYWN0aW9uIGJ1dHRvbiBvbiBhIHRocmVhZCBpbiBhIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gb3IgYSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0uXG4gICAqL1xuICBkZWZhdWx0UmVhY3Rpb25FbW9qaT86IERpc2NvcmREZWZhdWx0UmVhY3Rpb25FbW9qaVxuICAvKipcbiAgICogVGhlIGluaXRpYWwgYHJhdGVfbGltaXRfcGVyX3VzZXJgIHRvIHNldCBvbiBuZXdseSBjcmVhdGVkIHRocmVhZHMgaW4gYSBjaGFubmVsLlxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGZpZWxkIGlzIGNvcGllZCB0byB0aGUgdGhyZWFkIGF0IGNyZWF0aW9uIHRpbWUgYW5kIGRvZXMgbm90IGxpdmUgdXBkYXRlLlxuICAgKlxuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRUZXh0fSwge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBvciB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9LlxuICAgKi9cbiAgZGVmYXVsdFRocmVhZFJhdGVMaW1pdFBlclVzZXI/OiBudW1iZXJcbiAgLyoqXG4gICAqIFRoZSBkZWZhdWx0IHNvcnQgb3JkZXIgdHlwZSB1c2VkIHRvIG9yZGVyIHBvc3RzIGluIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gYW5kIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0gY2hhbm5lbHNcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIGd1aWxkIGNoYW5uZWwgb2YgdHlwZSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkRm9ydW19IG9yIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRNZWRpYX0uXG4gICAqL1xuICBkZWZhdWx0U29ydE9yZGVyPzogU29ydE9yZGVyVHlwZXMgfCBudWxsXG4gIC8qKlxuICAgKiBUaGUgZGVmYXVsdCBmb3J1bSBsYXlvdXQgdHlwZSB1c2VkIHRvIGRpc3BsYXkgcG9zdHMgaW4ge0BsaW5rIENoYW5uZWxUeXBlcy5HdWlsZEZvcnVtfSBjaGFubmVsc1xuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGlzIGlzIG9ubHkgdmFsaWQgd2hlbiBlZGl0aW5nIGEgZ3VpbGQgY2hhbm5lbCBvZiB0eXBlIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0uXG4gICAqL1xuICBkZWZhdWx0Rm9ybUxheW91dD86IEZvcnVtTGF5b3V0XG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSB0aHJlYWQgaXMgYXJjaGl2ZWRcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIHRocmVhZFxuICAgKi9cbiAgYXJjaGl2ZWQ/OiBib29sZWFuXG4gIC8qKlxuICAgKiBUaGUgdGhyZWFkIHdpbGwgc3RvcCBzaG93aW5nIGluIHRoZSBjaGFubmVsIGxpc3QgYWZ0ZXIgYGF1dG9fYXJjaGl2ZV9kdXJhdGlvbmAgbWludXRlcyBvZiBpbmFjdGl2aXR5XG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSB0aHJlYWRcbiAgICovXG4gIGF1dG9BcmNoaXZlRHVyYXRpb24/OiA2MCB8IDE0NDAgfCA0MzIwIHwgMTAwODBcbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHRocmVhZCBpcyBsb2NrZWQuIFdoZW4gYSB0aHJlYWQgaXMgbG9ja2VkLCBvbmx5IHVzZXJzIHdpdGggYE1BTkFHRV9USFJFQURTYCBjYW4gdW5hcmNoaXZlIGl0XG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSB0aHJlYWRcbiAgICovXG4gIGxvY2tlZD86IGJvb2xlYW5cbiAgLyoqXG4gICAqIFdoZXRoZXIgbm9uLW1vZGVyYXRvcnMgY2FuIGFkZCBvdGhlciBub24tbW9kZXJhdG9ycyB0byBhIHRocmVhZFxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBPbmx5IGF2YWlsYWJsZSBvbiBwcml2YXRlIHRocmVhZHNcbiAgICpcbiAgICogVGhpcyBpcyBvbmx5IHZhbGlkIHdoZW4gZWRpdGluZyBhIHRocmVhZFxuICAgKi9cbiAgaW52aXRhYmxlPzogYm9vbGVhblxuICAvKipcbiAgICogVGhlIElEcyBvZiB0aGUgc2V0IG9mIHRhZ3MgdGhhdCBoYXZlIGJlZW4gYXBwbGllZCB0byBhIHRocmVhZCBpbiBhIHtAbGluayBDaGFubmVsVHlwZXMuR3VpbGRGb3J1bX0gb3IgYSB7QGxpbmsgQ2hhbm5lbFR5cGVzLkd1aWxkTWVkaWF9IGNoYW5uZWxcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogTGltaXRlZCB0byA1XG4gICAqXG4gICAqIFRoaXMgaXMgb25seSB2YWxpZCB3aGVuIGVkaXRpbmcgYSB0aHJlYWRcbiAgICovXG4gIGFwcGxpZWRUYWdzPzogQmlnU3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0Q2hhbm5lbFBlcm1pc3Npb25PdmVycmlkZXNPcHRpb25zIGV4dGVuZHMgT3ZlcndyaXRlUmVhZGFibGUge31cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNtb2RpZnktZ3VpbGQtY2hhbm5lbC1wb3NpdGlvbnMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRDaGFubmVsUG9zaXRpb25zIHtcbiAgLyoqIENoYW5uZWwgaWQgKi9cbiAgaWQ6IEJpZ1N0cmluZ1xuICAvKiogU29ydGluZyBwb3NpdGlvbiBvZiB0aGUgY2hhbm5lbCAoY2hhbm5lbHMgd2l0aCB0aGUgc2FtZSBwb3NpdGlvbiBhcmUgc29ydGVkIGJ5IGlkKSAqL1xuICBwb3NpdGlvbj86IG51bWJlciB8IG51bGxcbiAgLyoqIFN5bmNzIHRoZSBwZXJtaXNzaW9uIG92ZXJ3cml0ZXMgd2l0aCB0aGUgbmV3IHBhcmVudCwgaWYgbW92aW5nIHRvIGEgbmV3IGNhdGVnb3J5ICovXG4gIGxvY2tQb3NpdGlvbnM/OiBib29sZWFuIHwgbnVsbFxuICAvKiogVGhlIG5ldyBwYXJlbnQgSUQgZm9yIHRoZSBjaGFubmVsIHRoYXQgaXMgbW92ZWQgKi9cbiAgcGFyZW50SWQ/OiBCaWdTdHJpbmcgfCBudWxsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5V2ViaG9vayB7XG4gIC8qKiBUaGUgZGVmYXVsdCBuYW1lIG9mIHRoZSB3ZWJob29rICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIEltYWdlIGZvciB0aGUgZGVmYXVsdCB3ZWJob29rIGF2YXRhciAqL1xuICBhdmF0YXI/OiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBUaGUgbmV3IGNoYW5uZWwgaWQgdGhpcyB3ZWJob29rIHNob3VsZCBiZSBtb3ZlZCB0byAqL1xuICBjaGFubmVsSWQ/OiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy93ZWJob29rI2V4ZWN1dGUtd2ViaG9vayAqL1xuZXhwb3J0IGludGVyZmFjZSBFeGVjdXRlV2ViaG9vayB7XG4gIC8vIFF1ZXJ5IFBhcmFtZXRlcnNcblxuICAvKiogV2FpdHMgZm9yIHNlcnZlciBjb25maXJtYXRpb24gb2YgbWVzc2FnZSBzZW5kIGJlZm9yZSByZXNwb25zZSwgYW5kIHJldHVybnMgdGhlIGNyZWF0ZWQgbWVzc2FnZSBib2R5IChkZWZhdWx0cyB0byBgZmFsc2VgOyB3aGVuIGBmYWxzZWAgYSBtZXNzYWdlIHRoYXQgaXMgbm90IHNhdmVkIGRvZXMgbm90IHJldHVybiBhbiBlcnJvcikgKi9cbiAgd2FpdD86IGJvb2xlYW5cbiAgLyoqIFNlbmQgYSBtZXNzYWdlIHRvIHRoZSBzcGVjaWZpZWQgdGhyZWFkIHdpdGhpbiBhIHdlYmhvb2sncyBjaGFubmVsLiBUaGUgdGhyZWFkIHdpbGwgYXV0b21hdGljYWxseSBiZSB1bmFyY2hpdmVkLiAqL1xuICB0aHJlYWRJZD86IEJpZ1N0cmluZ1xuICAvKipcbiAgICogV2hldGhlciB0byByZXNwZWN0IHRoZSBgY29tcG9uZW50c2AgZmllbGQgb2YgdGhlIHJlcXVlc3QuXG4gICAqIFdoZW4gZW5hYmxlZCwgYWxsb3dzIGFwcGxpY2F0aW9uLW93bmVkIHdlYmhvb2tzIHRvIHVzZSBhbGwgY29tcG9uZW50cyBhbmQgbm9uLW93bmVkIHdlYmhvb2tzIHRvIHVzZSBub24taW50ZXJhY3RpdmUgY29tcG9uZW50cy5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHdpdGhDb21wb25lbnRzPzogYm9vbGVhblxuXG4gIC8vIEpTT04gUGFyYW1ldGVyc1xuXG4gIC8qKiBUaGUgbWVzc2FnZSBjb250ZW50cyAodXAgdG8gMjAwMCBjaGFyYWN0ZXJzKSAqL1xuICBjb250ZW50Pzogc3RyaW5nXG4gIC8qKiBPdmVycmlkZSB0aGUgZGVmYXVsdCB1c2VybmFtZSBvZiB0aGUgd2ViaG9vayAqL1xuICB1c2VybmFtZT86IHN0cmluZ1xuICAvKiogT3ZlcnJpZGUgdGhlIGRlZmF1bHQgYXZhdGFyIG9mIHRoZSB3ZWJob29rICovXG4gIGF2YXRhclVybD86IHN0cmluZ1xuICAvKiogVHJ1ZSBpZiB0aGlzIGlzIGEgVFRTIG1lc3NhZ2UgKi9cbiAgdHRzPzogYm9vbGVhblxuICAvKiogRW1iZWRkZWQgYHJpY2hgIGNvbnRlbnQgKi9cbiAgZW1iZWRzPzogQ2FtZWxpemU8RGlzY29yZEVtYmVkPltdXG4gIC8qKiBBbGxvd2VkIG1lbnRpb25zIGZvciB0aGUgbWVzc2FnZSAqL1xuICBhbGxvd2VkTWVudGlvbnM/OiBBbGxvd2VkTWVudGlvbnNcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnRzIHRvIGluY2x1ZGUgd2l0aCB0aGUgbWVzc2FnZVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBBcHBsaWNhdGlvbi1vd25lZCB3ZWJob29rcyBjYW4gYWx3YXlzIHNlbmQgY29tcG9uZW50cy5cbiAgICogTm9uLWFwcGxpY2F0aW9uLW93bmVkIHdlYmhvb2tzIGNhbm5vdCBzZW5kIGludGVyYWN0aXZlIGNvbXBvbmVudHMsIGFuZCB0aGUgYGNvbXBvbmVudHNgIGZpZWxkIHdpbGwgYmUgZ25vcmVkIHVubGVzcyB0aGV5IHNldCB0aGUgYHdpdGhfY29tcG9uZW50c2AgcXVlcnkgcGFyYW0uXG4gICAqL1xuICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbiAgLyoqIFRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXMgYmVpbmcgc2VudCAqL1xuICBmaWxlcz86IEZpbGVDb250ZW50W11cbiAgLyoqIEF0dGFjaG1lbnQgb2JqZWN0cyB3aXRoIGZpbGVuYW1lIGFuZCBkZXNjcmlwdGlvbiAqL1xuICBhdHRhY2htZW50cz86IChQaWNrPENhbWVsaXplPERpc2NvcmRBdHRhY2htZW50PiwgJ2lkJz4gJiBPbWl0PFBhcnRpYWw8Q2FtZWxpemU8RGlzY29yZEF0dGFjaG1lbnQ+PiwgJ2lkJz4pW11cbiAgLyoqXG4gICAqIE1lc3NhZ2UgZmxhZ3MgY29tYmluZWQgaW4gYSBiaXRmaWVsZFxuICAgKlxuICAgKiBAc2VlIHtAbGluayBNZXNzYWdlRmxhZ3N9XG4gICAqL1xuICBmbGFncz86IG51bWJlclxuICAvKiogTmFtZSBvZiB0aGUgdGhyZWFkIHRvIGNyZWF0ZSAodGFyZ2V0IGNoYW5uZWwgaGFzIHRvIGJlIHR5cGUgb2YgZm9ydW0gY2hhbm5lbCkgKi9cbiAgdGhyZWFkTmFtZT86IHN0cmluZ1xuICAvKiogQXJyYXkgb2YgdGFnIGlkcyB0byBhcHBseSB0byB0aGUgdGhyZWFkIChyZXF1aXJlcyB0aGUgd2ViaG9vayBjaGFubmVsIHRvIGJlIGEgZm9ydW0gb3IgbWVkaWEgY2hhbm5lbCkgKi9cbiAgYXBwbGllZFRhZ3M/OiBCaWdTdHJpbmdbXVxuICAvKiogQSBwb2xsIG9iamVjdCAqL1xuICBwb2xsPzogQ3JlYXRlUG9sbFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEdldFdlYmhvb2tNZXNzYWdlT3B0aW9ucyB7XG4gIC8qKiBpZCBvZiB0aGUgdGhyZWFkIHRoZSBtZXNzYWdlIGlzIGluICovXG4gIHRocmVhZElkOiBCaWdTdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy93ZWJob29rI2VkaXQtd2ViaG9vay1tZXNzYWdlICovXG5leHBvcnQgaW50ZXJmYWNlIEVkaXRXZWJob29rTWVzc2FnZU9wdGlvbnMge1xuICAvKiogSWQgb2YgdGhlIHRocmVhZCB0aGUgbWVzc2FnZSBpcyBpbiAqL1xuICB0aHJlYWRJZD86IEJpZ1N0cmluZ1xuICAvKipcbiAgICogV2hldGhlciB0byByZXNwZWN0IHRoZSBgY29tcG9uZW50c2AgZmllbGQgb2YgdGhlIHJlcXVlc3QuXG4gICAqIFdoZW4gZW5hYmxlZCwgYWxsb3dzIGFwcGxpY2F0aW9uLW93bmVkIHdlYmhvb2tzIHRvIHVzZSBhbGwgY29tcG9uZW50cyBhbmQgbm9uLW93bmVkIHdlYmhvb2tzIHRvIHVzZSBub24taW50ZXJhY3RpdmUgY29tcG9uZW50cy5cbiAgICpcbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIHdpdGhDb21wb25lbnRzPzogYm9vbGVhblxuICAvKiogVGhlIG1lc3NhZ2UgY29udGVudHMgKHVwIHRvIDIwMDAgY2hhcmFjdGVycykgKi9cbiAgY29udGVudD86IHN0cmluZ1xuICAvKiogRW1iZWRkZWQgYHJpY2hgIGNvbnRlbnQgKi9cbiAgZW1iZWRzPzogQ2FtZWxpemU8RGlzY29yZEVtYmVkPltdXG4gIC8qKiBBbGxvd2VkIG1lbnRpb25zIGZvciB0aGUgbWVzc2FnZSAqL1xuICBhbGxvd2VkTWVudGlvbnM/OiBBbGxvd2VkTWVudGlvbnNcbiAgLyoqXG4gICAqIFRoZSBjb21wb25lbnRzIHRvIGluY2x1ZGUgd2l0aCB0aGUgbWVzc2FnZVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBBcHBsaWNhdGlvbi1vd25lZCB3ZWJob29rcyBjYW4gYWx3YXlzIHNlbmQgY29tcG9uZW50cy5cbiAgICogTm9uLWFwcGxpY2F0aW9uLW93bmVkIHdlYmhvb2tzIGNhbm5vdCBzZW5kIGludGVyYWN0aXZlIGNvbXBvbmVudHMsIGFuZCB0aGUgYGNvbXBvbmVudHNgIGZpZWxkIHdpbGwgYmUgZ25vcmVkIHVubGVzcyB0aGV5IHNldCB0aGUgYHdpdGhfY29tcG9uZW50c2AgcXVlcnkgcGFyYW0uXG4gICAqL1xuICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbiAgLyoqIFRoZSBjb250ZW50cyBvZiB0aGUgZmlsZXMgYmVpbmcgc2VudCAqL1xuICBmaWxlcz86IEZpbGVDb250ZW50W11cbiAgLyoqIEF0dGFjaGVkIGZpbGVzIHRvIGtlZXAgYW5kIHBvc3NpYmxlIGRlc2NyaXB0aW9ucyBmb3IgbmV3IGZpbGVzICovXG4gIGF0dGFjaG1lbnRzPzogKFBpY2s8Q2FtZWxpemU8RGlzY29yZEF0dGFjaG1lbnQ+LCAnaWQnPiAmIE9taXQ8UGFydGlhbDxDYW1lbGl6ZTxEaXNjb3JkQXR0YWNobWVudD4+LCAnaWQnPilbXVxuICAvKipcbiAgICogQSBwb2xsIVxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBQb2xscyBjYW4gb25seSBiZSBhZGRlZCB3aGVuIGVkaXRpbmcgYSBkZWZlcnJlZCBpbnRlcmFjdGlvbiByZXNwb25zZS5cbiAgICovXG4gIHBvbGw/OiBDcmVhdGVQb2xsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGVsZXRlV2ViaG9va01lc3NhZ2VPcHRpb25zIHtcbiAgLyoqIGlkIG9mIHRoZSB0aHJlYWQgdGhlIG1lc3NhZ2UgaXMgaW4gKi9cbiAgdGhyZWFkSWQ6IEJpZ1N0cmluZ1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUZvcnVtUG9zdFdpdGhNZXNzYWdlIHtcbiAgLyoqIDEtMTAwIGNoYXJhY3RlciB0aHJlYWQgbmFtZSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIER1cmF0aW9uIGluIG1pbnV0ZXMgdG8gYXV0b21hdGljYWxseSBhcmNoaXZlIHRoZSB0aHJlYWQgYWZ0ZXIgcmVjZW50IGFjdGl2aXR5ICovXG4gIGF1dG9BcmNoaXZlRHVyYXRpb24/OiA2MCB8IDE0NDAgfCA0MzIwIHwgMTAwODBcbiAgLyoqIEFtb3VudCBvZiBzZWNvbmRzIGEgdXNlciBoYXMgdG8gd2FpdCBiZWZvcmUgc2VuZGluZyBhbm90aGVyIG1lc3NhZ2UgKDAtMjE2MDApICovXG4gIHJhdGVMaW1pdFBlclVzZXI/OiBudW1iZXIgfCBudWxsXG4gIC8qKiBjb250ZW50cyBvZiB0aGUgZmlyc3QgbWVzc2FnZSBpbiB0aGUgZm9ydW0vbWVkaWEgdGhyZWFkICovXG4gIG1lc3NhZ2U6IHtcbiAgICAvKiogVGhlIG1lc3NhZ2UgY29udGVudHMgKHVwIHRvIDIwMDAgY2hhcmFjdGVycykgKi9cbiAgICBjb250ZW50Pzogc3RyaW5nXG4gICAgLyoqIEVtYmVkZGVkIGByaWNoYCBjb250ZW50ICh1cCB0byA2MDAwIGNoYXJhY3RlcnMpICovXG4gICAgZW1iZWRzPzogQ2FtZWxpemU8RGlzY29yZEVtYmVkPltdXG4gICAgLyoqIEFsbG93ZWQgbWVudGlvbnMgZm9yIHRoZSBtZXNzYWdlICovXG4gICAgYWxsb3dlZE1lbnRpb25zPzogQWxsb3dlZE1lbnRpb25zXG4gICAgLyoqIFRoZSBjb21wb25lbnRzIHlvdSB3b3VsZCBsaWtlIHRvIGhhdmUgc2VudCBpbiB0aGlzIG1lc3NhZ2UgKi9cbiAgICBjb21wb25lbnRzPzogTWVzc2FnZUNvbXBvbmVudHNcbiAgICAvKiogSURzIG9mIHVwIHRvIDMgc3RpY2tlcnMgaW4gdGhlIHNlcnZlciB0byBzZW5kIGluIHRoZSBtZXNzYWdlICovXG4gICAgc3RpY2tlcklkcz86IEJpZ1N0cmluZ1tdXG4gICAgLyoqIE1lc3NhZ2UgZmxhZ3MgY29tYmluZWQgYXMgYSBiaXRmaWVsZCwgb25seSBTVVBQUkVTU19FTUJFRFMsIFNVUFBSRVNTX05PVElGSUNBVElPTlMgYW5kIElTX0NPTVBPTkVOVFNfVjIgY2FuIGJlIHNldCAqL1xuICAgIGZsYWdzPzogTWVzc2FnZUZsYWdzXG4gIH1cbiAgLyoqIFRoZSBJRHMgb2YgdGhlIHNldCBvZiB0YWdzIHRoYXQgaGF2ZSBiZWVuIGFwcGxpZWQgdG8gYSB0aHJlYWQgaW4gYSBHVUlMRF9GT1JVTSBvciBhIEdVSUxEX01FRElBIGNoYW5uZWwgKi9cbiAgYXBwbGllZFRhZ3M/OiBCaWdTdHJpbmdbXVxuICAvKiogVGhlIGNvbnRlbnRzIG9mIHRoZSBmaWxlcyBiZWluZyBzZW50ICovXG4gIGZpbGVzPzogRmlsZUNvbnRlbnRbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVN0YWdlSW5zdGFuY2Uge1xuICAvKiogVGhlIGlkIG9mIHRoZSBTdGFnZSBjaGFubmVsICovXG4gIGNoYW5uZWxJZDogQmlnU3RyaW5nXG4gIC8qKiBUaGUgdG9waWMgb2YgdGhlIFN0YWdlIGluc3RhbmNlICgxLTEyMCBjaGFyYWN0ZXJzKSAqL1xuICB0b3BpYzogc3RyaW5nXG4gIC8qKiBOb3RpZnkgXFxAZXZlcnlvbmUgdGhhdCB0aGUgc3RhZ2UgaW5zdGFuY2UgaGFzIHN0YXJ0ZWQuIFJlcXVpcmVzIHRoZSBNRU5USU9OX0VWRVJZT05FIHBlcm1pc3Npb24uICovXG4gIHNlbmRTdGFydE5vdGlmaWNhdGlvbj86IGJvb2xlYW5cbiAgLyoqIFRoZSBndWlsZCBzY2hlZHVsZWQgZXZlbnQgYXNzb2NpYXRlZCB3aXRoIHRoaXMgU3RhZ2UgaW5zdGFuY2UgKi9cbiAgZ3VpbGRTY2hlZHVsZWRFdmVudElkPzogQmlnU3RyaW5nXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdFN0YWdlSW5zdGFuY2VPcHRpb25zIHtcbiAgLyoqIFRoZSB0b3BpYyBvZiB0aGUgU3RhZ2UgaW5zdGFuY2UgKDEtMTIwIGNoYXJhY3RlcnMpICovXG4gIHRvcGljOiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTdGFydFRocmVhZFdpdGhNZXNzYWdlIHtcbiAgLyoqIDEtMTAwIGNoYXJhY3RlciB0aHJlYWQgbmFtZSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIER1cmF0aW9uIGluIG1pbnV0ZXMgdG8gYXV0b21hdGljYWxseSBhcmNoaXZlIHRoZSB0aHJlYWQgYWZ0ZXIgcmVjZW50IGFjdGl2aXR5ICovXG4gIGF1dG9BcmNoaXZlRHVyYXRpb24/OiA2MCB8IDE0NDAgfCA0MzIwIHwgMTAwODBcbiAgLyoqIEFtb3VudCBvZiBzZWNvbmRzIGEgdXNlciBoYXMgdG8gd2FpdCBiZWZvcmUgc2VuZGluZyBhbm90aGVyIG1lc3NhZ2UgKDAtMjE2MDApICovXG4gIHJhdGVMaW1pdFBlclVzZXI/OiBudW1iZXIgfCBudWxsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhcnRUaHJlYWRXaXRob3V0TWVzc2FnZSB7XG4gIC8qKiAxLTEwMCBjaGFyYWN0ZXIgdGhyZWFkIG5hbWUgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBEdXJhdGlvbiBpbiBtaW51dGVzIHRvIGF1dG9tYXRpY2FsbHkgYXJjaGl2ZSB0aGUgdGhyZWFkIGFmdGVyIHJlY2VudCBhY3Rpdml0eSAqL1xuICBhdXRvQXJjaGl2ZUR1cmF0aW9uPzogNjAgfCAxNDQwIHwgNDMyMCB8IDEwMDgwXG4gIC8qKiBBbW91bnQgb2Ygc2Vjb25kcyBhIHVzZXIgaGFzIHRvIHdhaXQgYmVmb3JlIHNlbmRpbmcgYW5vdGhlciBtZXNzYWdlICgwLTIxNjAwKSAqL1xuICByYXRlTGltaXRQZXJVc2VyPzogbnVtYmVyIHwgbnVsbFxuICAvKiogdGhlIHR5cGUgb2YgdGhyZWFkIHRvIGNyZWF0ZSAqL1xuICB0eXBlOiBDaGFubmVsVHlwZXMuQW5ub3VuY2VtZW50VGhyZWFkIHwgQ2hhbm5lbFR5cGVzLlB1YmxpY1RocmVhZCB8IENoYW5uZWxUeXBlcy5Qcml2YXRlVGhyZWFkXG4gIC8qKiB3aGV0aGVyIG5vbi1tb2RlcmF0b3JzIGNhbiBhZGQgb3RoZXIgbm9uLW1vZGVyYXRvcnMgdG8gYSB0aHJlYWQ7IG9ubHkgYXZhaWxhYmxlIHdoZW4gY3JlYXRpbmcgYSBwcml2YXRlIHRocmVhZCAqL1xuICBpbnZpdGFibGU/OiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlQXV0b01vZGVyYXRpb25SdWxlT3B0aW9ucyB7XG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgcnVsZS4gKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBUaGUgdHlwZSBvZiBldmVudCB0byB0cmlnZ2VyIHRoZSBydWxlIG9uLiAqL1xuICBldmVudFR5cGU6IEF1dG9Nb2RlcmF0aW9uRXZlbnRUeXBlc1xuICAvKiogVGhlIHR5cGUgb2YgdHJpZ2dlciB0byB1c2UgZm9yIHRoZSBydWxlLiAqL1xuICB0cmlnZ2VyVHlwZTogQXV0b01vZGVyYXRpb25UcmlnZ2VyVHlwZXNcbiAgLyoqIFRoZSBtZXRhZGF0YSB0byB1c2UgZm9yIHRoZSB0cmlnZ2VyLiAqL1xuICB0cmlnZ2VyTWV0YWRhdGE6IHtcbiAgICAvKiogVGhlIGtleXdvcmRzIG5lZWRlZCB0byBtYXRjaC4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZCAqL1xuICAgIGtleXdvcmRGaWx0ZXI/OiBzdHJpbmdbXVxuICAgIC8qKiBSZWd1bGFyIGV4cHJlc3Npb24gcGF0dGVybnMgd2hpY2ggd2lsbCBiZSBtYXRjaGVkIGFnYWluc3QgY29udGVudC4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZCAqL1xuICAgIHJlZ2V4UGF0dGVybnM/OiBzdHJpbmdbXVxuICAgIC8qKiBUaGUgcHJlLWRlZmluZWQgbGlzdHMgb2Ygd29yZHMgdG8gbWF0Y2ggZnJvbS4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZFByZXNldCAqL1xuICAgIHByZXNldHM/OiBEaXNjb3JkQXV0b01vZGVyYXRpb25SdWxlVHJpZ2dlck1ldGFkYXRhUHJlc2V0c1tdXG4gICAgLyoqIFRoZSBzdWJzdHJpbmdzIHdoaWNoIHdpbGwgZXhlbXB0IGZyb20gdHJpZ2dlcmluZyB0aGUgcHJlc2V0IHRyaWdnZXIgdHlwZS4gT25seSBwcmVzZW50IHdoZW4gVHJpZ2dlclR5cGUuS2V5d29yZFByZXNldCAqL1xuICAgIGFsbG93TGlzdD86IHN0cmluZ1tdXG4gICAgLyoqIFRvdGFsIG51bWJlciBvZiBtZW50aW9ucyAocm9sZSAmIHVzZXIpIGFsbG93ZWQgcGVyIG1lc3NhZ2UgKE1heGltdW0gb2YgNTApLiBPbmx5IHByZXNlbnQgd2hlbiBUcmlnZ2VyVHlwZS5NZW50aW9uU3BhbSAqL1xuICAgIG1lbnRpb25Ub3RhbExpbWl0PzogbnVtYmVyXG4gIH1cbiAgLyoqIFRoZSBhY3Rpb25zIHRoYXQgd2lsbCB0cmlnZ2VyIGZvciB0aGlzIHJ1bGUgKi9cbiAgYWN0aW9uczogQXJyYXk8e1xuICAgIC8qKiBUaGUgdHlwZSBvZiBhY3Rpb24gdG8gdGFrZSB3aGVuIGEgcnVsZSBpcyB0cmlnZ2VyZWQgKi9cbiAgICB0eXBlOiBBdXRvTW9kZXJhdGlvbkFjdGlvblR5cGVcbiAgICAvKiogYWRkaXRpb25hbCBtZXRhZGF0YSBuZWVkZWQgZHVyaW5nIGV4ZWN1dGlvbiBmb3IgdGhpcyBzcGVjaWZpYyBhY3Rpb24gdHlwZSAqL1xuICAgIG1ldGFkYXRhPzoge1xuICAgICAgLyoqIFRoZSBpZCBvZiBjaGFubmVsIHRvIHdoaWNoIHVzZXIgY29udGVudCBzaG91bGQgYmUgbG9nZ2VkLiBPbmx5IGluIFNlbmRBbGVydE1lc3NhZ2UgKi9cbiAgICAgIGNoYW5uZWxJZD86IEJpZ1N0cmluZ1xuICAgICAgLyoqIFRpbWVvdXQgZHVyYXRpb24gaW4gc2Vjb25kcy4gTWF4IGlzIDI0MTkyMDAoNCB3ZWVrcykuIE9ubHkgc3VwcG9ydGVkIGZvciBUcmlnZ2VyVHlwZS5LZXl3b3JkICovXG4gICAgICBkdXJhdGlvblNlY29uZHM/OiBudW1iZXJcbiAgICB9XG4gIH0+XG4gIC8qKiBXaGV0aGVyIHRoZSBydWxlIHNob3VsZCBiZSBlbmFibGVkLCB0cnVlIGJ5IGRlZmF1bHQuICovXG4gIGVuYWJsZWQ/OiBib29sZWFuXG4gIC8qKiBUaGUgcm9sZSBpZHMgdGhhdCBzaG91bGQgbm90IGJlIGVmZmVjdGVkIGJ5IHRoZSBydWxlICovXG4gIGV4ZW1wdFJvbGVzPzogQmlnU3RyaW5nW11cbiAgLyoqIFRoZSBjaGFubmVsIGlkcyB0aGF0IHNob3VsZCBub3QgYmUgZWZmZWN0ZWQgYnkgdGhlIHJ1bGUuICovXG4gIGV4ZW1wdENoYW5uZWxzPzogQmlnU3RyaW5nW11cbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0QXV0b01vZGVyYXRpb25SdWxlT3B0aW9ucyB7XG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgcnVsZS4gKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBUaGUgdHlwZSBvZiBldmVudCB0byB0cmlnZ2VyIHRoZSBydWxlIG9uLiAqL1xuICBldmVudFR5cGU6IEF1dG9Nb2RlcmF0aW9uRXZlbnRUeXBlc1xuICAvKiogVGhlIG1ldGFkYXRhIHRvIHVzZSBmb3IgdGhlIHRyaWdnZXIuICovXG4gIHRyaWdnZXJNZXRhZGF0YToge1xuICAgIC8qKiBUaGUga2V5d29yZHMgbmVlZGVkIHRvIG1hdGNoLiBPbmx5IHByZXNlbnQgd2hlbiBUcmlnZ2VyVHlwZS5LZXl3b3JkICovXG4gICAga2V5d29yZEZpbHRlcj86IHN0cmluZ1tdXG4gICAgLyoqIFRoZSBwcmUtZGVmaW5lZCBsaXN0cyBvZiB3b3JkcyB0byBtYXRjaCBmcm9tLiBPbmx5IHByZXNlbnQgd2hlbiBUcmlnZ2VyVHlwZS5LZXl3b3JkUHJlc2V0ICovXG4gICAgcHJlc2V0cz86IERpc2NvcmRBdXRvTW9kZXJhdGlvblJ1bGVUcmlnZ2VyTWV0YWRhdGFQcmVzZXRzW11cbiAgICAvKiogVGhlIHN1YnN0cmluZ3Mgd2hpY2ggd2lsbCBleGVtcHQgZnJvbSB0cmlnZ2VyaW5nIHRoZSBwcmVzZXQgdHJpZ2dlciB0eXBlLiBPbmx5IHByZXNlbnQgd2hlbiBUcmlnZ2VyVHlwZS5LZXl3b3JkUHJlc2V0ICovXG4gICAgYWxsb3dMaXN0Pzogc3RyaW5nW11cbiAgICAvKiogVG90YWwgbnVtYmVyIG9mIG1lbnRpb25zIChyb2xlICYgdXNlcikgYWxsb3dlZCBwZXIgbWVzc2FnZSAoTWF4aW11bSBvZiA1MCkgKi9cbiAgICBtZW50aW9uVG90YWxMaW1pdDogbnVtYmVyXG4gIH1cbiAgLyoqIFRoZSBhY3Rpb25zIHRoYXQgd2lsbCB0cmlnZ2VyIGZvciB0aGlzIHJ1bGUgKi9cbiAgYWN0aW9uczogQXJyYXk8e1xuICAgIC8qKiBUaGUgdHlwZSBvZiBhY3Rpb24gdG8gdGFrZSB3aGVuIGEgcnVsZSBpcyB0cmlnZ2VyZWQgKi9cbiAgICB0eXBlOiBBdXRvTW9kZXJhdGlvbkFjdGlvblR5cGVcbiAgICAvKiogYWRkaXRpb25hbCBtZXRhZGF0YSBuZWVkZWQgZHVyaW5nIGV4ZWN1dGlvbiBmb3IgdGhpcyBzcGVjaWZpYyBhY3Rpb24gdHlwZSAqL1xuICAgIG1ldGFkYXRhOiB7XG4gICAgICAvKiogVGhlIGlkIG9mIGNoYW5uZWwgdG8gd2hpY2ggdXNlciBjb250ZW50IHNob3VsZCBiZSBsb2dnZWQuIE9ubHkgaW4gU2VuZEFsZXJ0TWVzc2FnZSAqL1xuICAgICAgY2hhbm5lbElkPzogQmlnU3RyaW5nXG4gICAgICAvKiogVGltZW91dCBkdXJhdGlvbiBpbiBzZWNvbmRzLiBPbmx5IHN1cHBvcnRlZCBmb3IgVHJpZ2dlclR5cGUuS2V5d29yZCAqL1xuICAgICAgZHVyYXRpb25TZWNvbmRzPzogbnVtYmVyXG4gICAgfVxuICB9PlxuICAvKiogV2hldGhlciB0aGUgcnVsZSBzaG91bGQgYmUgZW5hYmxlZC4gKi9cbiAgZW5hYmxlZD86IGJvb2xlYW5cbiAgLyoqIFRoZSByb2xlIGlkcyB0aGF0IHNob3VsZCBub3QgYmUgZWZmZWN0ZWQgYnkgdGhlIHJ1bGUgKi9cbiAgZXhlbXB0Um9sZXM/OiBCaWdTdHJpbmdbXVxuICAvKiogVGhlIGNoYW5uZWwgaWRzIHRoYXQgc2hvdWxkIG5vdCBiZSBlZmZlY3RlZCBieSB0aGUgcnVsZS4gKi9cbiAgZXhlbXB0Q2hhbm5lbHM/OiBCaWdTdHJpbmdbXVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVNjaGVkdWxlZEV2ZW50IHtcbiAgLyoqIHRoZSBjaGFubmVsIGlkIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQuICovXG4gIGNoYW5uZWxJZD86IEJpZ1N0cmluZ1xuICAvKiogbG9jYXRpb24gb2YgdGhlIGV2ZW50LiBSZXF1aXJlZCBmb3IgZXZlbnRzIHdpdGggYGVudGl0eVR5cGU6IFNjaGVkdWxlZEV2ZW50RW50aXR5VHlwZS5FeHRlcm5hbGAgKi9cbiAgbG9jYXRpb24/OiBzdHJpbmdcbiAgLyoqIHRoZSBuYW1lIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiB0aGUgZGVzY3JpcHRpb24gb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBkZXNjcmlwdGlvbjogc3RyaW5nXG4gIC8qKiB0aGUgdGltZSB0aGUgc2NoZWR1bGVkIGV2ZW50IHdpbGwgc3RhcnQgKi9cbiAgc2NoZWR1bGVkU3RhcnRUaW1lOiBzdHJpbmdcbiAgLyoqIHRoZSB0aW1lIHRoZSBzY2hlZHVsZWQgZXZlbnQgd2lsbCBlbmQgaWYgaXQgZG9lcyBlbmQuIFJlcXVpcmVkIGZvciBldmVudHMgd2l0aCBgZW50aXR5VHlwZTogU2NoZWR1bGVkRXZlbnRFbnRpdHlUeXBlLkV4dGVybmFsYCAqL1xuICBzY2hlZHVsZWRFbmRUaW1lPzogc3RyaW5nXG4gIC8qKiB0aGUgcHJpdmFjeSBsZXZlbCBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50ICovXG4gIHByaXZhY3lMZXZlbD86IFNjaGVkdWxlZEV2ZW50UHJpdmFjeUxldmVsXG4gIC8qKiB0aGUgdHlwZSBvZiBob3N0aW5nIGVudGl0eSBhc3NvY2lhdGVkIHdpdGggYSBzY2hlZHVsZWQgZXZlbnQgKi9cbiAgZW50aXR5VHlwZTogU2NoZWR1bGVkRXZlbnRFbnRpdHlUeXBlXG4gIC8qKiB0aGUgY292ZXIgaW1hZ2Ugb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBpbWFnZT86IHN0cmluZ1xuICAvKiogdGhlIGRlZmluaXRpb24gZm9yIGhvdyBvZnRlbiB0aGlzIGV2ZW50IHNob3VsZCByZWN1ciAqL1xuICByZWN1cnJlbmNlUnVsZT86IERpc2NvcmRTY2hlZHVsZWRFdmVudFJlY3VycmVuY2VSdWxlXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdFNjaGVkdWxlZEV2ZW50IHtcbiAgLyoqIHRoZSBjaGFubmVsIGlkIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQuIG51bGwgaWYgc3dpdGNoaW5nIHRvIGV4dGVybmFsIGV2ZW50LiAqL1xuICBjaGFubmVsSWQ6IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqIGxvY2F0aW9uIG9mIHRoZSBldmVudCAqL1xuICBsb2NhdGlvbj86IHN0cmluZ1xuICAvKiogdGhlIG5hbWUgb2YgdGhlIHNjaGVkdWxlZCBldmVudCAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50ICovXG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nXG4gIC8qKiB0aGUgdGltZSB0aGUgc2NoZWR1bGVkIGV2ZW50IHdpbGwgc3RhcnQgKi9cbiAgc2NoZWR1bGVkU3RhcnRUaW1lOiBzdHJpbmdcbiAgLyoqIHRoZSB0aW1lIHRoZSBzY2hlZHVsZWQgZXZlbnQgd2lsbCBlbmQgaWYgaXQgZG9lcyBlbmQuICovXG4gIHNjaGVkdWxlZEVuZFRpbWU/OiBzdHJpbmdcbiAgLyoqIHRoZSBwcml2YWN5IGxldmVsIG9mIHRoZSBzY2hlZHVsZWQgZXZlbnQgKi9cbiAgcHJpdmFjeUxldmVsOiBTY2hlZHVsZWRFdmVudFByaXZhY3lMZXZlbFxuICAvKiogdGhlIHR5cGUgb2YgaG9zdGluZyBlbnRpdHkgYXNzb2NpYXRlZCB3aXRoIGEgc2NoZWR1bGVkIGV2ZW50ICovXG4gIGVudGl0eVR5cGU6IFNjaGVkdWxlZEV2ZW50RW50aXR5VHlwZVxuICAvKiogdGhlIHN0YXR1cyBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50ICovXG4gIHN0YXR1czogU2NoZWR1bGVkRXZlbnRTdGF0dXNcbiAgLyoqIHRoZSBjb3ZlciBpbWFnZSBvZiB0aGUgc2NoZWR1bGVkIGV2ZW50ICovXG4gIGltYWdlPzogc3RyaW5nXG4gIC8qKiB0aGUgZGVmaW5pdGlvbiBmb3IgaG93IG9mdGVuIHRoaXMgZXZlbnQgc2hvdWxkIHJlY3VyICovXG4gIHJlY3VycmVuY2VSdWxlPzogRGlzY29yZFNjaGVkdWxlZEV2ZW50UmVjdXJyZW5jZVJ1bGUgfCBudWxsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgR2V0U2NoZWR1bGVkRXZlbnRzIHtcbiAgLyoqIGluY2x1ZGUgbnVtYmVyIG9mIHVzZXJzIHN1YnNjcmliZWQgdG8gZWFjaCBldmVudCAqL1xuICB3aXRoVXNlckNvdW50PzogYm9vbGVhblxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUNoYW5uZWxJbnZpdGUge1xuICAvKiogRHVyYXRpb24gb2YgaW52aXRlIGluIHNlY29uZHMgYmVmb3JlIGV4cGlyeSwgb3IgMCBmb3IgbmV2ZXIuIEJldHdlZW4gMCBhbmQgNjA0ODAwICg3IGRheXMpLiBEZWZhdWx0OiA4NjQwMCAoMjQgaG91cnMpICovXG4gIG1heEFnZT86IG51bWJlclxuICAvKiogTWF4IG51bWJlciBvZiB1c2VycyBvciAwIGZvciB1bmxpbWl0ZWQuIEJldHdlZW4gMCBhbmQgMTAwLiBEZWZhdWx0OiAwICovXG4gIG1heFVzZXM/OiBudW1iZXJcbiAgLyoqIFdoZXRoZXIgdGhpcyBpbnZpdGUgb25seSBncmFudHMgdGVtcG9yYXJ5IG1lbWJlcnNoaXAuIERlZmF1bHQ6IGZhbHNlICovXG4gIHRlbXBvcmFyeT86IGJvb2xlYW5cbiAgLyoqIElmIHRydWUsIGRvbid0IHRyeSB0byByZXVzZSBzaW1pbGFyIGludml0ZSAodXNlZnVsIGZvciBjcmVhdGluZyBtYW55IHVuaXF1ZSBvbmUgdGltZSB1c2UgaW52aXRlcykuIERlZmF1bHQ6IGZhbHNlICovXG4gIHVuaXF1ZT86IGJvb2xlYW5cbiAgLyoqIFRoZSB0eXBlIG9mIHRhcmdldCBmb3IgdGhpcyB2b2ljZSBjaGFubmVsIGludml0ZSAqL1xuICB0YXJnZXRUeXBlPzogVGFyZ2V0VHlwZXNcbiAgLyoqIFRoZSBpZCBvZiB0aGUgdXNlciB3aG9zZSBzdHJlYW0gdG8gZGlzcGxheSBmb3IgdGhpcyBpbnZpdGUsIHJlcXVpcmVkIGlmIGB0YXJnZXRfdHlwZWAgaXMgMSwgdGhlIHVzZXIgbXVzdCBiZSBzdHJlYW1pbmcgaW4gdGhlIGNoYW5uZWwgKi9cbiAgdGFyZ2V0VXNlcklkPzogQmlnU3RyaW5nXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGVtYmVkZGVkIGFwcGxpY2F0aW9uIHRvIG9wZW4gZm9yIHRoaXMgaW52aXRlLCByZXF1aXJlZCBpZiBgdGFyZ2V0X3R5cGVgIGlzIDIsIHRoZSBhcHBsaWNhdGlvbiBtdXN0IGhhdmUgdGhlIGBFTUJFRERFRGAgZmxhZyAqL1xuICB0YXJnZXRBcHBsaWNhdGlvbklkPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvY2hhbm5lbCNlZGl0LW1lc3NhZ2UtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdE1lc3NhZ2Uge1xuICAvKiogVGhlIG5ldyBtZXNzYWdlIGNvbnRlbnRzICh1cCB0byAyMDAwIGNoYXJhY3RlcnMpICovXG4gIGNvbnRlbnQ/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBFbWJlZGRlZCBgcmljaGAgY29udGVudCAodXAgdG8gNjAwMCBjaGFyYWN0ZXJzKSAqL1xuICBlbWJlZHM/OiBDYW1lbGl6ZTxEaXNjb3JkRW1iZWQ+W10gfCBudWxsXG4gIC8qKiBFZGl0IHRoZSBmbGFncyBvZiB0aGUgbWVzc2FnZSAob25seSBgU1VQUFJFU1NfRU1CRURTYCBjYW4gY3VycmVudGx5IGJlIHNldC91bnNldCkgKi9cbiAgZmxhZ3M/OiBNZXNzYWdlRmxhZ3MgfCBudWxsXG4gIC8qKiBUaGUgY29udGVudHMgb2YgdGhlIGZpbGVzIGJlaW5nIHNlbnQvZWRpdGVkICovXG4gIGZpbGVzPzogRmlsZUNvbnRlbnRbXVxuICAvKiogQWxsb3dlZCBtZW50aW9ucyBmb3IgdGhlIG1lc3NhZ2UgKi9cbiAgYWxsb3dlZE1lbnRpb25zPzogQWxsb3dlZE1lbnRpb25zXG4gIC8qKiBXaGVuIHNwZWNpZmllZCAoYWRkaW5nIG5ldyBhdHRhY2htZW50cyksIGF0dGFjaG1lbnRzIHdoaWNoIGFyZSBub3QgcHJvdmlkZWQgaW4gdGhpcyBsaXN0IHdpbGwgYmUgcmVtb3ZlZC4gKi9cbiAgYXR0YWNobWVudHM/OiAoUGljazxDYW1lbGl6ZTxEaXNjb3JkQXR0YWNobWVudD4sICdpZCc+ICYgT21pdDxQYXJ0aWFsPENhbWVsaXplPERpc2NvcmRBdHRhY2htZW50Pj4sICdpZCc+KVtdXG4gIC8qKiBUaGUgY29tcG9uZW50cyB5b3Ugd291bGQgbGlrZSB0byBoYXZlIHNlbnQgaW4gdGhpcyBtZXNzYWdlICovXG4gIGNvbXBvbmVudHM/OiBNZXNzYWdlQ29tcG9uZW50c1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL21lc3NhZ2UjZ2V0LWNoYW5uZWwtcGlucy1xdWVyeS1zdHJpbmctcGFyYW1zICovXG5leHBvcnQgaW50ZXJmYWNlIEdldENoYW5uZWxQaW5zT3B0aW9ucyB7XG4gIC8qKiBHZXQgbWVzc2FnZXMgcGlubmVkIGJlZm9yZSB0aGlzIHRpbWVzdGFtcCAqL1xuICBiZWZvcmU/OiBzdHJpbmdcbiAgLyoqIE1heCBudW1iZXIgb2YgcGlucyB0byByZXR1cm4gKDEtNTApLCBkZWZhdWx0cyB0byA1MCAqL1xuICBsaW1pdD86IG51bWJlclxufVxuXG4vKiogQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9pbnRlcmFjdGlvbnMvYXBwbGljYXRpb24tY29tbWFuZHMjZ2V0LWd1aWxkLWFwcGxpY2F0aW9uLWNvbW1hbmQtcGVybWlzc2lvbnMgYW5kIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL2ludGVyYWN0aW9ucy9hcHBsaWNhdGlvbi1jb21tYW5kcyNnZXQtZ3VpbGQtYXBwbGljYXRpb24tY29tbWFuZC1wZXJtaXNzaW9ucyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRBcHBsaWNhdGlvbkNvbW1hbmRQZXJtaXNzaW9uT3B0aW9ucyB7XG4gIC8qKiBBY2Nlc3MgdG9rZW4gb2YgdGhlIHVzZXIuIFJlcXVpcmVzIHRoZSBgYXBwbGljYXRpb25zLmNvbW1hbmRzLnBlcm1pc3Npb25zLnVwZGF0ZWAgc2NvcGUgKi9cbiAgYWNjZXNzVG9rZW46IHN0cmluZ1xuICAvKiogSWQgb2YgdGhlIGFwcGxpY2F0aW9uICovXG4gIGFwcGxpY2F0aW9uSWQ6IEJpZ1N0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2NyZWF0ZS1ndWlsZCAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVHdWlsZCB7XG4gIC8qKiBOYW1lIG9mIHRoZSBndWlsZCAoMS0xMDAgY2hhcmFjdGVycykgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBCYXNlNjQgMTI4eDEyOCBpbWFnZSBmb3IgdGhlIGd1aWxkIGljb24gKi9cbiAgaWNvbj86IHN0cmluZ1xuICAvKiogVmVyaWZpY2F0aW9uIGxldmVsICovXG4gIHZlcmlmaWNhdGlvbkxldmVsPzogVmVyaWZpY2F0aW9uTGV2ZWxzXG4gIC8qKiBEZWZhdWx0IG1lc3NhZ2Ugbm90aWZpY2F0aW9uIGxldmVsICovXG4gIGRlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9ucz86IERlZmF1bHRNZXNzYWdlTm90aWZpY2F0aW9uTGV2ZWxzXG4gIC8qKiBFeHBsaWNpdCBjb250ZW50IGZpbHRlciBsZXZlbCAqL1xuICBleHBsaWNpdENvbnRlbnRGaWx0ZXI/OiBFeHBsaWNpdENvbnRlbnRGaWx0ZXJMZXZlbHNcbiAgLyoqIE5ldyBndWlsZCByb2xlcyAoZmlyc3Qgcm9sZSBpcyB0aGUgZXZlcnlvbmUgcm9sZSkgKi9cbiAgcm9sZXM/OiBDYW1lbGl6ZTxEaXNjb3JkUm9sZVtdPlxuICAvKiogTmV3IGd1aWxkJ3MgY2hhbm5lbHMgKi9cbiAgY2hhbm5lbHM/OiBQYXJ0aWFsPENhbWVsaXplPERpc2NvcmRDaGFubmVsPj5bXVxuICAvKiogSWQgZm9yIGFmayBjaGFubmVsICovXG4gIGFma0NoYW5uZWxJZD86IHN0cmluZ1xuICAvKiogQWZrIHRpbWVvdXQgaW4gc2Vjb25kcyAqL1xuICBhZmtUaW1lb3V0PzogbnVtYmVyXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGNoYW5uZWwgd2hlcmUgZ3VpbGQgbm90aWNlcyBzdWNoIGFzIHdlbGNvbWUgbWVzc2FnZXMgYW5kIGJvb3N0IGV2ZW50cyBhcmUgcG9zdGVkICovXG4gIHN5c3RlbUNoYW5uZWxJZD86IHN0cmluZ1xuICAvKiogU3lzdGVtIGNoYW5uZWwgZmxhZ3MgKi9cbiAgc3lzdGVtQ2hhbm5lbEZsYWdzPzogU3lzdGVtQ2hhbm5lbEZsYWdzXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjY3JlYXRlLWd1aWxkLXJvbGUtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRSb2xlIHtcbiAgLyoqIE5hbWUgb2YgdGhlIHJvbGUsIG1heCAxMDAgY2hhcmFjdGVycywgZGVmYXVsdDogXCJuZXcgcm9sZVwiICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIEJpdHdpc2UgdmFsdWUgb2YgdGhlIGVuYWJsZWQvZGlzYWJsZWQgcGVybWlzc2lvbnMsIGRlZmF1bHQ6IGV2ZXJ5b25lIHBlcm1pc3Npb25zIGluIGd1aWxkICovXG4gIHBlcm1pc3Npb25zPzogUGVybWlzc2lvblN0cmluZ3NbXVxuICAvKipcbiAgICogUkdCIGNvbG9yIHZhbHVlLCBkZWZhdWx0OiAwXG4gICAqIEBkZXByZWNhdGVkIHRoZSB7QGxpbmsgY29sb3JzfSBmaWVsZCBpcyByZWNvbW1lbmRlZCBmb3IgdXNlIGluc3RlYWQgb2YgdGhpcyBmaWVsZFxuICAgKi9cbiAgY29sb3I/OiBudW1iZXJcbiAgLyoqIFRoZSByb2xlJ3MgY29sb3IgKi9cbiAgY29sb3JzPzogR3VpbGRSb2xlQ29sb3JzXG4gIC8qKiBXaGV0aGVyIHRoZSByb2xlIHNob3VsZCBiZSBkaXNwbGF5ZWQgc2VwYXJhdGVseSBpbiB0aGUgc2lkZWJhciwgZGVmYXVsdDogZmFsc2UgKi9cbiAgaG9pc3Q/OiBib29sZWFuXG4gIC8qKiBXaGV0aGVyIHRoZSByb2xlIHNob3VsZCBiZSBtZW50aW9uYWJsZSwgZGVmYXVsdDogZmFsc2UgKi9cbiAgbWVudGlvbmFibGU/OiBib29sZWFuXG4gIC8qKiBUaGUgcm9sZSdzIHVuaWNvZGUgZW1vamkgKGlmIHRoZSBndWlsZCBoYXMgdGhlIGBST0xFX0lDT05TYCBmZWF0dXJlKSAqL1xuICB1bmljb2RlRW1vamk/OiBzdHJpbmdcbiAgLyoqIHRoZSByb2xlJ3MgaWNvbiBpbWFnZSAoaWYgdGhlIGd1aWxkIGhhcyB0aGUgYFJPTEVfSUNPTlNgIGZlYXR1cmUpICovXG4gIGljb24/OiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3RvcGljcy9wZXJtaXNzaW9ucyNyb2xlLW9iamVjdC1yb2xlLWNvbG9ycy1vYmplY3QgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR3VpbGRSb2xlQ29sb3JzIHtcbiAgLyoqIFRoZSBwcmltYXJ5IGNvbG9yIGZvciB0aGUgcm9sZSAqL1xuICBwcmltYXJ5Q29sb3I6IG51bWJlclxuICAvKiogVGhlIHNlY29uZGFyeSBjb2xvciBmb3IgdGhlIHJvbGUsIHRoaXMgd2lsbCBtYWtlIHRoZSByb2xlIGEgZ3JhZGllbnQgYmV0d2VlbiB0aGUgb3RoZXIgcHJvdmlkZWQgY29sb3JzICovXG4gIHNlY29uZGFyeUNvbG9yPzogbnVtYmVyXG4gIC8qKiBUaGUgdGVydGlhcnkgY29sb3IgZm9yIHRoZSByb2xlLCB0aGlzIHdpbGwgdHVybiB0aGUgZ3JhZGllbnQgaW50byBhIGhvbG9ncmFwaGljIHN0eWxlICovXG4gIHRlcnRpYXJ5Q29sb3I/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0R3VpbGRSb2xlIHtcbiAgLyoqIE5hbWUgb2YgdGhlIHJvbGUsIG1heCAxMDAgY2hhcmFjdGVycywgZGVmYXVsdDogXCJuZXcgcm9sZVwiICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIEJpdHdpc2UgdmFsdWUgb2YgdGhlIGVuYWJsZWQvZGlzYWJsZWQgcGVybWlzc2lvbnMsIGRlZmF1bHQ6IGV2ZXJ5b25lIHBlcm1pc3Npb25zIGluIGd1aWxkICovXG4gIHBlcm1pc3Npb25zPzogUGVybWlzc2lvblN0cmluZ3NbXVxuICAvKipcbiAgICogUkdCIGNvbG9yIHZhbHVlLCBkZWZhdWx0OiAwXG4gICAqIEBkZXByZWNhdGVkIHRoZSB7QGxpbmsgY29sb3JzfSBmaWVsZCBpcyByZWNvbW1lbmRlZCBmb3IgdXNlIGluc3RlYWQgb2YgdGhpcyBmaWVsZFxuICAgKi9cbiAgY29sb3I/OiBudW1iZXJcbiAgLyoqIFRoZSByb2xlJ3MgY29sb3IgKi9cbiAgY29sb3JzPzogR3VpbGRSb2xlQ29sb3JzXG4gIC8qKiBXaGV0aGVyIHRoZSByb2xlIHNob3VsZCBiZSBkaXNwbGF5ZWQgc2VwYXJhdGVseSBpbiB0aGUgc2lkZWJhciwgZGVmYXVsdDogZmFsc2UgKi9cbiAgaG9pc3Q/OiBib29sZWFuXG4gIC8qKiBXaGV0aGVyIHRoZSByb2xlIHNob3VsZCBiZSBtZW50aW9uYWJsZSwgZGVmYXVsdDogZmFsc2UgKi9cbiAgbWVudGlvbmFibGU/OiBib29sZWFuXG4gIC8qKiBUaGUgcm9sZSdzIHVuaWNvZGUgZW1vamkgKGlmIHRoZSBndWlsZCBoYXMgdGhlIGBST0xFX0lDT05TYCBmZWF0dXJlKSAqL1xuICB1bmljb2RlRW1vamk/OiBzdHJpbmdcbiAgLyoqIHRoZSByb2xlJ3MgaWNvbiBpbWFnZSAoaWYgdGhlIGd1aWxkIGhhcyB0aGUgYFJPTEVfSUNPTlNgIGZlYXR1cmUpICovXG4gIGljb24/OiBzdHJpbmdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlSb2xlUG9zaXRpb25zIHtcbiAgLyoqIFRoZSByb2xlIGlkICovXG4gIGlkOiBCaWdTdHJpbmdcbiAgLyoqIFRoZSBzb3J0aW5nIHBvc2l0aW9uIGZvciB0aGUgcm9sZS4gKHJvbGVzIHdpdGggdGhlIHNhbWUgcG9zaXRpb24gYXJlIHNvcnRlZCBieSBpZCkgKi9cbiAgcG9zaXRpb24/OiBudW1iZXIgfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjbW9kaWZ5LWd1aWxkICovXG5leHBvcnQgaW50ZXJmYWNlIE1vZGlmeUd1aWxkIHtcbiAgLyoqIEd1aWxkIG5hbWUgKi9cbiAgbmFtZT86IHN0cmluZ1xuICAvKiogVmVyaWZpY2F0aW9uIGxldmVsICovXG4gIHZlcmlmaWNhdGlvbkxldmVsPzogVmVyaWZpY2F0aW9uTGV2ZWxzIHwgbnVsbFxuICAvKiogRGVmYXVsdCBtZXNzYWdlIG5vdGlmaWNhdGlvbiBmaWx0ZXIgbGV2ZWwgKi9cbiAgZGVmYXVsdE1lc3NhZ2VOb3RpZmljYXRpb25zPzogRGVmYXVsdE1lc3NhZ2VOb3RpZmljYXRpb25MZXZlbHMgfCBudWxsXG4gIC8qKiBFeHBsaWNpdCBjb250ZW50IGZpbHRlciBsZXZlbCAqL1xuICBleHBsaWNpdENvbnRlbnRGaWx0ZXI/OiBFeHBsaWNpdENvbnRlbnRGaWx0ZXJMZXZlbHMgfCBudWxsXG4gIC8qKiBJZCBmb3IgYWZrIGNoYW5uZWwgKi9cbiAgYWZrQ2hhbm5lbElkPzogQmlnU3RyaW5nIHwgbnVsbFxuICAvKiogQWZrIHRpbWVvdXQgaW4gc2Vjb25kcyAqL1xuICBhZmtUaW1lb3V0PzogbnVtYmVyXG4gIC8qKiBCYXNlNjQgMTAyNHgxMDI0IHBuZy9qcGVnL2dpZiBpbWFnZSBmb3IgdGhlIGd1aWxkIGljb24gKGNhbiBiZSBhbmltYXRlZCBnaWYgd2hlbiB0aGUgc2VydmVyIGhhcyB0aGUgYEFOSU1BVEVEX0lDT05gIGZlYXR1cmUpICovXG4gIGljb24/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBVc2VyIGlkIHRvIHRyYW5zZmVyIGd1aWxkIG93bmVyc2hpcCB0byAobXVzdCBiZSBvd25lcikgKi9cbiAgb3duZXJJZD86IEJpZ1N0cmluZ1xuICAvKiogQmFzZTY0IDE2OjkgcG5nL2pwZWcgaW1hZ2UgZm9yIHRoZSBndWlsZCBzcGxhc2ggKHdoZW4gdGhlIHNlcnZlciBoYXMgYElOVklURV9TUExBU0hgIGZlYXR1cmUpICovXG4gIHNwbGFzaD86IHN0cmluZyB8IG51bGxcbiAgLyoqIEJhc2U2NCAxNjo5IHBuZy9qcGVnIGltYWdlIGZvciB0aGUgZ3VpbGQgZGlzY292ZXJ5IHNwYXNoICh3aGVuIHRoZSBzZXJ2ZXIgaGFzIHRoZSBgRElTQ09WRVJBQkxFYCBmZWF0dXJlKSAqL1xuICBkaXNjb3ZlcnlTcGxhc2g/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBCYXNlNjQgMTY6OSBwbmcvanBlZyBpbWFnZSBmb3IgdGhlIGd1aWxkIGJhbm5lciAod2hlbiB0aGUgc2VydmVyIGhhcyBCQU5ORVIgZmVhdHVyZSkgKi9cbiAgYmFubmVyPzogc3RyaW5nIHwgbnVsbFxuICAvKiogVGhlIGlkIG9mIHRoZSBjaGFubmVsIHdoZXJlIGd1aWxkIG5vdGljZXMgc3VjaCBhcyB3ZWxjb21lIG1lc3NhZ2VzIGFuZCBib29zdCBldmVudHMgYXJlIHBvc3RlZCAqL1xuICBzeXN0ZW1DaGFubmVsSWQ/OiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBTeXN0ZW0gY2hhbm5lbCBmbGFncyAqL1xuICBzeXN0ZW1DaGFubmVsRmxhZ3M/OiBTeXN0ZW1DaGFubmVsRmxhZ3NcbiAgLyoqIFRoZSBpZCBvZiB0aGUgY2hhbm5lbCB3aGVyZSBDb21tdW5pdHkgZ3VpbGRzIGRpc3BsYXkgcnVsZXMgYW5kL29yIGd1aWRlbGluZXMgKi9cbiAgcnVsZXNDaGFubmVsSWQ/OiBCaWdTdHJpbmcgfCBudWxsXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGNoYW5uZWwgd2hlcmUgYWRtaW5zIGFuZCBtb2RlcmF0b3JzIG9mIENvbW11bml0eSBndWlsZHMgcmVjZWl2ZSBub3RpY2VzIGZyb20gRGlzY29yZCAqL1xuICBwdWJsaWNVcGRhdGVzQ2hhbm5lbElkPzogQmlnU3RyaW5nIHwgbnVsbFxuICAvKiogVGhlIHByZWZlcnJlZCBsb2NhbGUgb2YgYSBDb21tdW5pdHkgZ3VpbGQgdXNlZCBpbiBzZXJ2ZXIgZGlzY292ZXJ5IGFuZCBub3RpY2VzIGZyb20gRGlzY29yZDsgZGVmYXVsdHMgdG8gXCJlbi1VU1wiICovXG4gIHByZWZlcnJlZExvY2FsZT86IHN0cmluZyB8IG51bGxcbiAgLyoqIEVuYWJsZWQgZ3VpbGQgZmVhdHVyZXMgKi9cbiAgZmVhdHVyZXM/OiBHdWlsZEZlYXR1cmVzW11cbiAgLyoqIFdoZXRoZXIgdGhlIGd1aWxkJ3MgYm9vc3QgcHJvZ3Jlc3MgYmFyIHNob3VsZCBiZSBlbmFibGVkICovXG4gIHByZW1pdW1Qcm9ncmVzc0JhckVuYWJsZWQ/OiBib29sZWFuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRTdGlja2VyT3B0aW9ucyB7XG4gIC8qKiBOYW1lIG9mIHRoZSBzdGlja2VyICgyLTMwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIHN0aWNrZXIgKGVtcHR5IG9yIDItMTAwIGNoYXJhY3RlcnMpICovXG4gIGRlc2NyaXB0aW9uOiBzdHJpbmdcbiAgLyoqIEF1dG9jb21wbGV0ZS9zdWdnZXN0aW9uIHRhZ3MgZm9yIHRoZSBzdGlja2VyIChtYXggMjAwIGNoYXJhY3RlcnMpICovXG4gIHRhZ3M6IHN0cmluZ1xuICAvKiogVGhlIHN0aWNrZXIgZmlsZSB0byB1cGxvYWQsIG11c3QgYmUgYSBQTkcsIEFQTkcsIG9yIExvdHRpZSBKU09OIGZpbGUsIG1heCA1MTIgS0IgKi9cbiAgZmlsZTogRmlsZUNvbnRlbnRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0R3VpbGRTdGlja2VyT3B0aW9ucyB7XG4gIC8qKiBOYW1lIG9mIHRoZSBzdGlja2VyICgyLTMwIGNoYXJhY3RlcnMpICovXG4gIG5hbWU/OiBzdHJpbmdcbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBzdGlja2VyIChlbXB0eSBvciAyLTEwMCBjaGFyYWN0ZXJzKSAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGxcbiAgLyoqIEF1dG9jb21wbGV0ZS9zdWdnZXN0aW9uIHRhZ3MgZm9yIHRoZSBzdGlja2VyIChtYXggMjAwIGNoYXJhY3RlcnMpICovXG4gIHRhZ3M/OiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy90ZW1wbGF0ZSNjcmVhdGUtZ3VpbGQtZnJvbS10ZW1wbGF0ZS1qc29uLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVHdWlsZEZyb21UZW1wbGF0ZSB7XG4gIC8qKiBOYW1lIG9mIHRoZSBndWlsZCAoMi0xMDAgY2hhcmFjdGVycykgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBiYXNlNjQgMTI4eDEyOCBpbWFnZSBmb3IgdGhlIGd1aWxkIGljb24gKi9cbiAgaWNvbj86IHN0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI3VwZGF0ZS1jdXJyZW50LXVzZXItdm9pY2Utc3RhdGUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdE93blZvaWNlU3RhdGUge1xuICAvKiogVGhlIGlkIG9mIHRoZSBjaGFubmVsIHRoZSB1c2VyIGlzIGN1cnJlbnRseSBpbiAqL1xuICBjaGFubmVsSWQ6IEJpZ1N0cmluZ1xuICAvKiogVG9nZ2xlcyB0aGUgdXNlcidzIHN1cHByZXNzIHN0YXRlICovXG4gIHN1cHByZXNzPzogYm9vbGVhblxuICAvKiogU2V0cyB0aGUgdXNlcidzIHJlcXVlc3QgdG8gc3BlYWsgKi9cbiAgcmVxdWVzdFRvU3BlYWtUaW1lc3RhbXA/OiBudW1iZXIgfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjdXBkYXRlLXVzZXItdm9pY2Utc3RhdGUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdFVzZXJWb2ljZVN0YXRlIHtcbiAgLyoqIFRoZSBpZCBvZiB0aGUgY2hhbm5lbCB0aGUgdXNlciBpcyBjdXJyZW50bHkgaW4gKi9cbiAgY2hhbm5lbElkOiBCaWdTdHJpbmdcbiAgLyoqIFRvZ2dsZXMgdGhlIHVzZXIncyBzdXBwcmVzcyBzdGF0ZSAqL1xuICBzdXBwcmVzcz86IGJvb2xlYW5cbiAgLyoqIFRoZSB1c2VyIGlkIHRvIHRhcmdldCAqL1xuICB1c2VySWQ6IEJpZ1N0cmluZ1xufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2dldC1ndWlsZC13aWRnZXQtaW1hZ2UtcXVlcnktc3RyaW5nLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBHZXRHdWlsZFdpZGdldEltYWdlUXVlcnkge1xuICAvKipcbiAgICogU3R5bGUgb2YgdGhlIHdpZGdldCByZXR1cm5lZCwgZGVmYXVsdDogc2hpZWxkXG4gICAqXG4gICAqIFNoaWVsZDogV2lkZ2V0IHdpdGggRGlzY29yZCBpY29uIGFuZCBndWlsZCBtZW1iZXJzIG9ubGluZSBjb3VudC5cbiAgICogQmFubmVyMTogTGFyZ2UgaW1hZ2Ugd2l0aCBndWlsZCBpY29uLCBuYW1lIGFuZCBvbmxpbmUgY291bnQuIFwiUE9XRVJFRCBCWSBESVNDT1JEXCIgYXMgdGhlIGZvb3RlciBvZiB0aGUgd2lkZ2V0XG4gICAqIEJhbm5lcjI6IFNtYWxsZXIgd2lkZ2V0IHN0eWxlIHdpdGggZ3VpbGQgaWNvbiwgbmFtZSBhbmQgb25saW5lIGNvdW50LiBTcGxpdCBvbiB0aGUgcmlnaHQgd2l0aCBEaXNjb3JkIGxvZ29cbiAgICogQmFubmVyMzogTGFyZ2UgaW1hZ2Ugd2l0aCBndWlsZCBpY29uLCBuYW1lIGFuZCBvbmxpbmUgY291bnQuIEluIHRoZSBmb290ZXIsIERpc2NvcmQgbG9nbyBvbiB0aGUgbGVmdCBhbmQgXCJDaGF0IE5vd1wiIG9uIHRoZSByaWdodFxuICAgKiBCYW5uZXI0OiBMYXJnZSBEaXNjb3JkIGxvZ28gYXQgdGhlIHRvcCBvZiB0aGUgd2lkZ2V0LiBHdWlsZCBpY29uLCBuYW1lIGFuZCBvbmxpbmUgY291bnQgaW4gdGhlIG1pZGRsZSBwb3J0aW9uIG9mIHRoZSB3aWRnZXQgYW5kIGEgXCJKT0lOIE1ZIFNFUlZFUlwiIGJ1dHRvbiBhdCB0aGUgYm90dG9tXG4gICAqL1xuICBzdHlsZT86ICdzaGllbGQnIHwgJ2Jhbm5lcjEnIHwgJ2Jhbm5lcjInIHwgJ2Jhbm5lcjMnIHwgJ2Jhbm5lcjQnXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlVGVtcGxhdGUge1xuICAvKiogTmFtZSB3aGljaCB0aGUgdGVtcGxhdGUgc2hvdWxkIGhhdmUgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBEZXNjcmlwdGlvbiBvZiB0aGUgdGVtcGxhdGUgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy90ZW1wbGF0ZSNtb2RpZnktZ3VpbGQtdGVtcGxhdGUgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRUZW1wbGF0ZSB7XG4gIC8qKiBOYW1lIG9mIHRoZSB0ZW1wbGF0ZSAoMS0xMDAgY2hhcmFjdGVycykgKi9cbiAgbmFtZT86IHN0cmluZ1xuICAvKiogRGVzY3JpcHRpb24gb2YgdGhlIHRlbXBsYXRlICgwLTEyMCBjaGFyYWN0ZXJzKSAqL1xuICBkZXNjcmlwdGlvbj86IHN0cmluZyB8IG51bGxcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNjcmVhdGUtZ3VpbGQtYmFuICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZUd1aWxkQmFuIHtcbiAgLyoqXG4gICAqIE51bWJlciBvZiBzZWNvbmRzIHRvIGRlbGV0ZSBtZXNzYWdlcyBmb3IsIGJldHdlZW4gMCBhbmQgNjA0ODAwICg3IGRheXMpXG4gICAqXG4gICAqIEBkZWZhdWx0IDBcbiAgICovXG4gIGRlbGV0ZU1lc3NhZ2VTZWNvbmRzPzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjYnVsay1ndWlsZC1iYW4tanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlR3VpbGRCdWxrQmFuIHtcbiAgLyoqIGxpc3Qgb2YgdXNlciBpZHMgdG8gYmFuIChtYXggMjAwKSAqL1xuICB1c2VySWRzOiBCaWdTdHJpbmdbXVxuICAvKipcbiAgICogTnVtYmVyIG9mIHNlY29uZHMgdG8gZGVsZXRlIG1lc3NhZ2VzIGZvciwgYmV0d2VlbiAwIGFuZCA2MDQ4MDAgKDcgZGF5cylcbiAgICpcbiAgICogQGRlZmF1bHQgMFxuICAgKi9cbiAgZGVsZXRlTWVzc2FnZVNlY29uZHM/OiBudW1iZXJcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFZGl0Qm90TWVtYmVyT3B0aW9ucyB7XG4gIG5pY2s/OiBzdHJpbmcgfCBudWxsXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjbW9kaWZ5LWd1aWxkLW1lbWJlciAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlHdWlsZE1lbWJlciB7XG4gIC8qKiBWYWx1ZSB0byBzZXQgdXNlcnMgbmlja25hbWUgdG8uIFJlcXVpcmVzIHRoZSBgTUFOQUdFX05JQ0tOQU1FU2AgcGVybWlzc2lvbiAqL1xuICBuaWNrPzogc3RyaW5nIHwgbnVsbFxuICAvKiogQXJyYXkgb2Ygcm9sZSBpZHMgdGhlIG1lbWJlciBpcyBhc3NpZ25lZC4gUmVxdWlyZXMgdGhlIGBNQU5BR0VfUk9MRVNgIHBlcm1pc3Npb24gKi9cbiAgcm9sZXM/OiBCaWdTdHJpbmdbXSB8IG51bGxcbiAgLyoqIFdoZXRoZXIgdGhlIHVzZXIgaXMgbXV0ZWQgaW4gdm9pY2UgY2hhbm5lbHMuIFdpbGwgdGhyb3cgYSA0MDAgaWYgdGhlIHVzZXIgaXMgbm90IGluIGEgdm9pY2UgY2hhbm5lbC4gUmVxdWlyZXMgdGhlIGBNVVRFX01FTUJFUlNgIHBlcm1pc3Npb24gKi9cbiAgbXV0ZT86IGJvb2xlYW4gfCBudWxsXG4gIC8qKiBXaGV0aGVyIHRoZSB1c2VyIGlzIGRlYWZlbmVkIGluIHZvaWNlIGNoYW5uZWxzLiBXaWxsIHRocm93IGEgNDAwIGlmIHRoZSB1c2VyIGlzIG5vdCBpbiBhIHZvaWNlIGNoYW5uZWwuIFJlcXVpcmVzIHRoZSBgTU9WRV9NRU1CRVJTYCBwZXJtaXNzaW9uICovXG4gIGRlYWY/OiBib29sZWFuIHwgbnVsbFxuICAvKiogSWQgb2YgY2hhbm5lbCB0byBtb3ZlIHVzZXIgdG8gKGlmIHRoZXkgYXJlIGNvbm5lY3RlZCB0byB2b2ljZSkuIFJlcXVpcmVzIHRoZSBgTU9WRV9NRU1CRVJTYCBwZXJtaXNzaW9uICovXG4gIGNoYW5uZWxJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqIFdoZW4gdGhlIHVzZXIncyB0aW1lb3V0IHdpbGwgZXhwaXJlIGFuZCB0aGUgdXNlciB3aWxsIGJlIGFibGUgdG8gY29tbXVuaWNhdGUgaW4gdGhlIGd1aWxkIGFnYWluICh1cCB0byAyOCBkYXlzIGluIHRoZSBmdXR1cmUpLCBzZXQgdG8gbnVsbCB0byByZW1vdmUgdGltZW91dC4gUmVxdWlyZXMgdGhlIGBNT0RFUkFURV9NRU1CRVJTYCBwZXJtaXNzaW9uLiBUaGUgZGF0ZSBtdXN0IGJlIGdpdmVuIGluIGEgSVNPIHN0cmluZyBmb3JtLiAqL1xuICBjb21tdW5pY2F0aW9uRGlzYWJsZWRVbnRpbD86IHN0cmluZyB8IG51bGxcbiAgLyoqIFNldCB0aGUgZmxhZ3MgZm9yIHRoZSBndWlsZCBtZW1iZXIuIFJlcXVpcmVzIHRoZSBgTUFOQUdFX0dVSUxEYCBvciBgTUFOQUdFX1JPTEVTYCBvciB0aGUgY29tYmluYXRpb24gb2YgYE1PREVSQVRFX01FTUJFUlNgIGFuZCBgS0lDS19NRU1CRVJTYCBhbmQgYEJBTl9NRU1CRVJTYCAqL1xuICBmbGFncz86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2d1aWxkI2JlZ2luLWd1aWxkLXBydW5lICovXG5leHBvcnQgaW50ZXJmYWNlIEJlZ2luR3VpbGRQcnVuZSB7XG4gIC8qKiBOdW1iZXIgb2YgZGF5cyB0byBwcnVuZSAoMSBvciBtb3JlKSwgZGVmYXVsdDogNyAqL1xuICBkYXlzPzogbnVtYmVyXG4gIC8qKiBXaGV0aGVyICdwcnVuZWQnIGlzIHJldHVybmVkLCBkaXNjb3VyYWdlZCBmb3IgbGFyZ2UgZ3VpbGRzLCBkZWZhdWx0OiB0cnVlICovXG4gIGNvbXB1dGVQcnVuZUNvdW50PzogYm9vbGVhblxuICAvKiogUm9sZShzKSBybyBpbmNsdWRlLCBkZWZhdWx0OiBub25lICovXG4gIGluY2x1ZGVSb2xlcz86IHN0cmluZ1tdXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvZ3VpbGQjbW9kaWZ5LWd1aWxkLW9uYm9hcmRpbmctanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdEd1aWxkT25ib2FyZGluZyB7XG4gIC8qKiBQcm9tcHRzIHNob3duIGR1cmluZyBvbmJvYXJkaW5nIGFuZCBpbiBjdXN0b21pemUgY29tbXVuaXR5ICovXG4gIHByb21wdHM/OiBDYW1lbGl6ZTxEaXNjb3JkR3VpbGRPbmJvYXJkaW5nUHJvbXB0PltdXG4gIC8qKiBDaGFubmVsIElEcyB0aGF0IG1lbWJlcnMgZ2V0IG9wdGVkIGludG8gYXV0b21hdGljYWxseSAqL1xuICBkZWZhdWx0Q2hhbm5lbElkcz86IEJpZ1N0cmluZ1tdXG4gIC8qKiBXaGV0aGVyIG9uYm9hcmRpbmcgaXMgZW5hYmxlZCBpbiB0aGUgZ3VpbGQgKi9cbiAgZW5hYmxlZD86IGJvb2xlYW5cbiAgLyoqIEN1cnJlbnQgbW9kZSBvZiBvbmJvYXJkaW5nICovXG4gIG1vZGU/OiBEaXNjb3JkR3VpbGRPbmJvYXJkaW5nTW9kZVxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvbW9uZXRpemF0aW9uL2VudGl0bGVtZW50cyNsaXN0LWVudGl0bGVtZW50cy1xdWVyeS1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0RW50aXRsZW1lbnRzIHtcbiAgLyoqIFVzZXIgSUQgdG8gbG9vayB1cCBlbnRpdGxlbWVudHMgZm9yICovXG4gIHVzZXJJZD86IEJpZ1N0cmluZ1xuICAvKiogT3B0aW9uYWwgbGlzdCBvZiBTS1UgSURzIHRvIGNoZWNrIGVudGl0bGVtZW50cyBmb3IgKi9cbiAgc2t1SWRzPzogQmlnU3RyaW5nW11cbiAgLyoqIFJldHJpZXZlIGVudGl0bGVtZW50cyBiZWZvcmUgdGhpcyBlbnRpdGxlbWVudCBJRCAqL1xuICBiZWZvcmU/OiBCaWdTdHJpbmdcbiAgLyoqIFJldHJpZXZlIGVudGl0bGVtZW50cyBhZnRlciB0aGlzIGVudGl0bGVtZW50IElEICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG4gIC8qKiBOdW1iZXIgb2YgZW50aXRsZW1lbnRzIHRvIHJldHVybiwgMS0xMDAsIGRlZmF1bHQgMTAwICovXG4gIGxpbWl0PzogbnVtYmVyXG4gIC8qKiBHdWlsZCBJRCB0byBsb29rIHVwIGVudGl0bGVtZW50cyBmb3IgKi9cbiAgZ3VpbGRJZD86IEJpZ1N0cmluZ1xuICAvKiogV2hldGhlciBvciBub3QgZW5kZWQgZW50aXRsZW1lbnRzIHNob3VsZCBiZSBvbWl0dGVkLiBEZWZhdWx0cyB0byBmYWxzZSwgZW5kZWQgZW50aXRsZW1lbnRzIGFyZSBpbmNsdWRlZCBieSBkZWZhdWx0LiAqL1xuICBleGNsdWRlRW5kZWQ/OiBib29sZWFuXG4gIC8qKiBXaGV0aGVyIG9yIG5vdCBkZWxldGVkIGVudGl0bGVtZW50cyBzaG91bGQgYmUgb21pdHRlZC4gRGVmYXVsdHMgdG8gdHJ1ZSwgZGVsZXRlZCBlbnRpdGxlbWVudHMgYXJlIG5vdCBpbmNsdWRlZCBieSBkZWZhdWx0LiAqL1xuICBleGNsdWRlRGVsZXRlZD86IGJvb2xlYW5cbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL21vbmV0aXphdGlvbi9lbnRpdGxlbWVudHMjY3JlYXRlLXRlc3QtZW50aXRsZW1lbnQtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JlYXRlRW50aXRsZW1lbnQge1xuICAvKiogSUQgb2YgdGhlIFNLVSB0byBncmFudCB0aGUgZW50aXRsZW1lbnQgdG8gKi9cbiAgc2t1SWQ6IEJpZ1N0cmluZ1xuICAvKiogSUQgb2YgdGhlIGd1aWxkIG9yIHVzZXIgdG8gZ3JhbnQgdGhlIGVudGl0bGVtZW50IHRvICovXG4gIG93bmVySWQ6IEJpZ1N0cmluZ1xuICAvKiogVGhlIHR5cGUgb2YgZW50aXRsZW1lbnQsIGd1aWxkIHN1YnNjcmlwdGlvbiBvciB1c2VyIHN1YnNjcmlwdGlvbiAqL1xuICBvd25lclR5cGU6IENyZWF0ZUVudGl0bGVtZW50T3duZXJUeXBlXG59XG5cbi8qKiBGcm9tIHRoZSBkZXNjcmlwdGlvbiBvZiBDcmVhdGVFbnRpdGxlbWVudCNvd25lclR5cGUgb24gZGlzY29yZCBkb2NzICovXG5leHBvcnQgZW51bSBDcmVhdGVFbnRpdGxlbWVudE93bmVyVHlwZSB7XG4gIC8qKiBHdWlsZCBzdWJzY3JpcHRpb24gKi9cbiAgR3VpbGRTdWJzY3JpcHRpb24gPSAxLFxuICAvKiogVXNlciBzdWJzY3JpcHRpb24gKi9cbiAgVXNlclN1YnNjcmlwdGlvbiA9IDIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRWRpdEFwcGxpY2F0aW9uIHtcbiAgLyoqIERlZmF1bHQgY3VzdG9tIGF1dGhvcml6YXRpb24gVVJMIGZvciB0aGUgYXBwLCBpZiBlbmFibGVkICovXG4gIGN1c3RvbUluc3RhbGxVcmw/OiBzdHJpbmdcbiAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBhcHAgKi9cbiAgZGVzY3JpcHRpb24/OiBzdHJpbmdcbiAgLyoqIFJvbGUgY29ubmVjdGlvbiB2ZXJpZmljYXRpb24gVVJMIGZvciB0aGUgYXBwICovXG4gIHJvbGVDb25uZWN0aW9uc1ZlcmlmaWNhdGlvblVybD86IHN0cmluZ1xuICAvKiogU2V0dGluZ3MgZm9yIHRoZSBhcHAncyBkZWZhdWx0IGluLWFwcCBhdXRob3JpemF0aW9uIGxpbmssIGlmIGVuYWJsZWQgKi9cbiAgaW5zdGFsbFBhcmFtcz86IERpc2NvcmRJbnN0YWxsUGFyYW1zXG4gIC8qKiBEZWZhdWx0IHNjb3BlcyBhbmQgcGVybWlzc2lvbnMgZm9yIGVhY2ggc3VwcG9ydGVkIGluc3RhbGxhdGlvbiBjb250ZXh0LiAqL1xuICBpbnRlZ3JhdGlvblR5cGVzQ29uZmlnPzogRGlzY29yZEFwcGxpY2F0aW9uSW50ZWdyYXRpb25UeXBlXG4gIC8qKlxuICAgKiBBcHAncyBwdWJsaWMgZmxhZ3NcbiAgICpcbiAgICogQHJlbWFya3NcbiAgICogT25seSBsaW1pdGVkIGludGVudCBmbGFncyAoYEdBVEVXQVlfUFJFU0VOQ0VfTElNSVRFRGAsIGBHQVRFV0FZX0dVSUxEX01FTUJFUlNfTElNSVRFRGAsIGFuZCBgR0FURVdBWV9NRVNTQUdFX0NPTlRFTlRfTElNSVRFRGApIGNhbiBiZSB1cGRhdGVkIHZpYSB0aGUgQVBJLlxuICAgKi9cbiAgZmxhZ3M/OiBBcHBsaWNhdGlvbkZsYWdzXG4gIC8qKiBJY29uIGZvciB0aGUgYXBwICovXG4gIGljb24/OiBzdHJpbmcgfCBudWxsXG4gIC8qKiBEZWZhdWx0IHJpY2ggcHJlc2VuY2UgaW52aXRlIGNvdmVyIGltYWdlIGZvciB0aGUgYXBwICovXG4gIGNvdmVySW1hZ2U/OiBzdHJpbmcgfCBudWxsXG4gIC8qKlxuICAgKiBJbnRlcmFjdGlvbnMgZW5kcG9pbnQgVVJMIGZvciB0aGUgYXBwXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRvIHVwZGF0ZSBhbiBJbnRlcmFjdGlvbnMgZW5kcG9pbnQgVVJMIHZpYSB0aGUgQVBJLCB0aGUgVVJMIG11c3QgYmUgdmFsaWRcbiAgICovXG4gIGludGVyYWN0aW9uRW5kcG9pbnRVcmw/OiBzdHJpbmdcbiAgLyoqXG4gICAqIExpc3Qgb2YgdGFncyBkZXNjcmliaW5nIHRoZSBjb250ZW50IGFuZCBmdW5jdGlvbmFsaXR5IG9mIHRoZSBhcHAgKG1heCBvZiAyMCBjaGFyYWN0ZXJzIHBlciB0YWcpXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoZXJlIGNhbiBvbmx5IGJlIGEgbWF4IG9mIDUgdGFnc1xuICAgKi9cbiAgdGFncz86IHN0cmluZ1tdXG4gIC8qKiBFdmVudCB3ZWJob29rIFVSTCBmb3IgdGhlIGFwcCB0byByZWNlaXZlIHdlYmhvb2sgZXZlbnRzICovXG4gIGV2ZW50V2ViaG9va3NVcmw/OiBzdHJpbmdcbiAgLyoqIElmIHdlYmhvb2sgZXZlbnRzIGFyZSBlbmFibGVkIGZvciB0aGUgYXBwLiAxIHRvIGRpc2FibGUsIGFuZCAyIHRvIGVuYWJsZS4gKi9cbiAgZXZlbnRXZWJob29rc1N0YXR1czogRGlzY29yZEFwcGxpY2F0aW9uRXZlbnRXZWJob29rU3RhdHVzXG4gIC8qKiBMaXN0IG9mIFdlYmhvb2sgZXZlbnQgdHlwZXMgdGhlIGFwcCBzdWJzY3JpYmVzIHRvICovXG4gIGV2ZW50V2ViaG9va3NUeXBlcz86IERpc2NvcmRXZWJob29rRXZlbnRUeXBlW11cbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9wb2xsI3BvbGwtY3JlYXRlLXJlcXVlc3Qtb2JqZWN0ICovXG5leHBvcnQgaW50ZXJmYWNlIENyZWF0ZVBvbGwge1xuICAvKiogVGhlIHF1ZXN0aW9uIG9mIHRoZSBwb2xsLiBPbmx5IGB0ZXh0YCBpcyBzdXBwb3J0ZWQuICovXG4gIHF1ZXN0aW9uOiBDYW1lbGl6ZTxEaXNjb3JkUG9sbE1lZGlhPlxuICAvKiogRWFjaCBvZiB0aGUgYW5zd2VycyBhdmFpbGFibGUgaW4gdGhlIHBvbGwsIHVwIHRvIDEwICovXG4gIGFuc3dlcnM6IE9taXQ8Q2FtZWxpemU8RGlzY29yZFBvbGxBbnN3ZXI+LCAnYW5zd2VySWQnPltdXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaG91cnMgdGhlIHBvbGwgc2hvdWxkIGJlIG9wZW4gZm9yXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIHVwIHRvIDMyIGRheXNcbiAgICpcbiAgICogQGRlZmF1bHQgMjRcbiAgICovXG4gIGR1cmF0aW9uOiBudW1iZXJcbiAgLyoqXG4gICAqIFdoZXRoZXIgYSB1c2VyIGNhbiBzZWxlY3QgbXVsdGlwbGUgYW5zd2Vyc1xuICAgKlxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgYWxsb3dNdWx0aXNlbGVjdDogYm9vbGVhblxuICAvKiogVGhlIGxheW91dCB0eXBlIG9mIHRoZSBwb2xsICovXG4gIGxheW91dFR5cGU/OiBEaXNjb3JkUG9sbExheW91dFR5cGVcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9wb2xsI2dldC1hbnN3ZXItdm90ZXJzLXF1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgR2V0UG9sbEFuc3dlclZvdGVzIHtcbiAgLyoqIEdldCB1c2VycyBhZnRlciB0aGlzIHVzZXIgSUQgKi9cbiAgYWZ0ZXI/OiBCaWdTdHJpbmdcbiAgLyoqXG4gICAqIE1heCBudW1iZXIgb2YgdXNlcnMgdG8gcmV0dXJuICgxLTEwMClcbiAgICpcbiAgICogQGRlZmF1bHQgMjVcbiAgICovXG4gIGxpbWl0PzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvc3Vic2NyaXB0aW9uI3F1ZXJ5LXN0cmluZy1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGlzdFNrdVN1YnNjcmlwdGlvbnNPcHRpb25zIHtcbiAgLyoqIExpc3Qgc3Vic2NyaXB0aW9ucyBiZWZvcmUgdGhpcyBJRCAqL1xuICBiZWZvcmU/OiBCaWdTdHJpbmdcbiAgLyoqIExpc3Qgc3Vic2NyaXB0aW9ucyBhZnRlciB0aGlzIElEICovXG4gIGFmdGVyPzogQmlnU3RyaW5nXG4gIC8qKiBOdW1iZXIgb2YgcmVzdWx0cyB0byByZXR1cm4gKDEtMTAwKSAqL1xuICBsaW1pdD86IG51bWJlclxuICAvKiogVXNlciBJRCBmb3Igd2hpY2ggdG8gcmV0dXJuIHN1YnNjcmlwdGlvbnMuIFJlcXVpcmVkIGV4Y2VwdCBmb3IgT0F1dGggcXVlcmllcy4gKi9cbiAgdXNlcklkPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvc291bmRib2FyZCNzZW5kLXNvdW5kYm9hcmQtc291bmQtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VuZFNvdW5kYm9hcmRTb3VuZCB7XG4gIC8qKiBUaGUgaWQgb2YgdGhlIHNvdW5kYm9hcmQgc291bmQgdG8gcGxheSAqL1xuICBzb3VuZElkOiBCaWdTdHJpbmdcbiAgLyoqIFRoZSBpZCBvZiB0aGUgZ3VpbGQgdGhlIHNvdW5kYm9hcmQgc291bmQgaXMgZnJvbSwgcmVxdWlyZWQgdG8gcGxheSBzb3VuZHMgZnJvbSBkaWZmZXJlbnQgc2VydmVycyAqL1xuICBzb3VyY2VHdWlsZElkPzogQmlnU3RyaW5nXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvc291bmRib2FyZCNjcmVhdGUtZ3VpbGQtc291bmRib2FyZC1zb3VuZC1qc29uLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVHdWlsZFNvdW5kYm9hcmRTb3VuZCB7XG4gIC8qKiBOYW1lIG9mIHRoZSBzb3VuZGJvYXJkIHNvdW5kICgyLTMyIGNoYXJhY3RlcnMpICovXG4gIG5hbWU6IHN0cmluZ1xuICAvKiogVGhlIG1wMyBvciBvZ2cgc291bmQgZGF0YSwgYmFzZTY0IGVuY29kZWQsIHNpbWlsYXIgdG8gaW1hZ2UgZGF0YSAqL1xuICBzb3VuZDogc3RyaW5nXG4gIC8qKiBUaGUgdm9sdW1lIG9mIHRoZSBzb3VuZGJvYXJkIHNvdW5kLCBmcm9tIDAgdG8gMSwgZGVmYXVsdHMgdG8gMSAqL1xuICB2b2x1bWU/OiBudW1iZXIgfCBudWxsXG4gIC8qKiBUaGUgaWQgb2YgdGhlIGN1c3RvbSBlbW9qaSBmb3IgdGhlIHNvdW5kYm9hcmQgc291bmQgKi9cbiAgZW1vamlJZD86IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqIFRoZSB1bmljb2RlIGNoYXJhY3RlciBvZiBhIHN0YW5kYXJkIGVtb2ppIGZvciB0aGUgc291bmRib2FyZCBzb3VuZCAqL1xuICBlbW9qaU5hbWU/OiBzdHJpbmcgfCBudWxsXG59XG5cbi8qKiBodHRwczovL2NhbmFyeS5kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL3NvdW5kYm9hcmQjbW9kaWZ5LWd1aWxkLXNvdW5kYm9hcmQtc291bmQtanNvbi1wYXJhbXMgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5R3VpbGRTb3VuZGJvYXJkU291bmQge1xuICAvKiogTmFtZSBvZiB0aGUgc291bmRib2FyZCBzb3VuZCAoMi0zMiBjaGFyYWN0ZXJzKSAqL1xuICBuYW1lOiBzdHJpbmdcbiAgLyoqIFRoZSB2b2x1bWUgb2YgdGhlIHNvdW5kYm9hcmQgc291bmQsIGZyb20gMCB0byAxLCBkZWZhdWx0cyB0byAxICovXG4gIHZvbHVtZTogbnVtYmVyIHwgbnVsbFxuICAvKiogVGhlIGlkIG9mIHRoZSBjdXN0b20gZW1vamkgZm9yIHRoZSBzb3VuZGJvYXJkIHNvdW5kICovXG4gIGVtb2ppSWQ6IEJpZ1N0cmluZyB8IG51bGxcbiAgLyoqIFRoZSB1bmljb2RlIGNoYXJhY3RlciBvZiBhIHN0YW5kYXJkIGVtb2ppIGZvciB0aGUgc291bmRib2FyZCBzb3VuZCAqL1xuICBlbW9qaU5hbWU6IHN0cmluZyB8IG51bGxcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVXZWJob29rIHtcbiAgLyoqIE5hbWUgb2YgdGhlIHdlYmhvb2sgKDEtODAgY2hhcmFjdGVycykgKi9cbiAgbmFtZTogc3RyaW5nXG4gIC8qKiBJbWFnZSB1cmwgZm9yIHRoZSBkZWZhdWx0IHdlYmhvb2sgYXZhdGFyICovXG4gIGF2YXRhcj86IHN0cmluZyB8IG51bGxcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9ndWlsZCNtb2RpZnktZ3VpbGQtaW5jaWRlbnQtYWN0aW9ucy1qc29uLXBhcmFtcyAqL1xuZXhwb3J0IGludGVyZmFjZSBNb2RpZnlHdWlsZEluY2lkZW50QWN0aW9ucyB7XG4gIC8qKlxuICAgKiBXaGVuIGludml0ZXMgd2lsbCBiZSBlbmFibGVkIGFnYWluXG4gICAqXG4gICAqIEByZW1hcmtzXG4gICAqIFRoZSB2YWx1ZSBzaG91bGQgZWl0aGVyIGJlIGFuIElTTzg2MDEgc3RyaW5nIG9yIG51bGxcbiAgICpcbiAgICogQ2FuIGJlIGVuYWJsZWQgZm9yIGEgbWF4aW1hbCB0aW1lc3BhbiBvZiAyNCBob3VycyBpbiB0aGUgZnV0dXJlLlxuICAgKiBTdXBwbHlpbmcgbnVsbCBkaXNhYmxlcyB0aGUgYWN0aW9uXG4gICAqL1xuICBpbnZpdGVzRGlzYWJsZWRVbnRpbD86IHN0cmluZyB8IG51bGxcbiAgLyoqXG4gICAqIFdoZW4gZGlyZWN0IG1lc3NhZ2VzIHdpbGwgYmUgZW5hYmxlZCBhZ2FpblxuICAgKlxuICAgKiBAcmVtYXJrc1xuICAgKiBUaGUgdmFsdWUgc2hvdWxkIGVpdGhlciBiZSBhbiBJU084NjAxIHN0cmluZyBvciBudWxsXG4gICAqXG4gICAqIENhbiBiZSBlbmFibGVkIGZvciBhIG1heGltYWwgdGltZXNwYW4gb2YgMjQgaG91cnMgaW4gdGhlIGZ1dHVyZS5cbiAgICogU3VwcGx5aW5nIG51bGwgZGlzYWJsZXMgdGhlIGFjdGlvblxuICAgKi9cbiAgZG1zX2Rpc2FibGVkX3VudGlsPzogc3RyaW5nIHwgbnVsbFxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2xvYmJ5I2NyZWF0ZS1sb2JieSAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVMb2JieSB7XG4gIC8qKiBPcHRpb25hbCBkaWN0aW9uYXJ5IG9mIHN0cmluZyBrZXkvdmFsdWUgcGFpcnMuIFRoZSBtYXggdG90YWwgbGVuZ3RoIGlzIDEwMDAuICovXG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB8IG51bGxcbiAgLyoqIE9wdGlvbmFsIGFycmF5IG9mIHVwIHRvIDI1IHVzZXJzIHRvIGJlIGFkZGVkIHRvIHRoZSBsb2JieSAqL1xuICBtZW1iZXJzPzogQ3JlYXRlTG9iYnlNZW1iZXJbXVxuICAvKiogU2Vjb25kcyB0byB3YWl0IGJlZm9yZSBzaHV0dGluZyBkb3duIGEgbG9iYnkgYWZ0ZXIgaXQgYmVjb21lcyBpZGxlLiBWYWx1ZSBjYW4gYmUgYmV0d2VlbiA1IGFuZCA2MDQ4MDAgKDcgZGF5cykuICovXG4gIGlkbGVUaW1lb3V0U2Vjb25kcz86IG51bWJlclxufVxuXG4vKiogaHR0cHM6Ly9kaXNjb3JkLmNvbS9kZXZlbG9wZXJzL2RvY3MvcmVzb3VyY2VzL2xvYmJ5I2NyZWF0ZS1sb2JieSAqL1xuZXhwb3J0IGludGVyZmFjZSBDcmVhdGVMb2JieU1lbWJlciB7XG4gIC8qKiBEaXNjb3JkIHVzZXIgaWQgb2YgdGhlIHVzZXIgdG8gYWRkIHRvIHRoZSBsb2JieSAqL1xuICBpZDogQmlnU3RyaW5nXG4gIC8qKiBPcHRpb25hbCBkaWN0aW9uYXJ5IG9mIHN0cmluZyBrZXkvdmFsdWUgcGFpcnMuIFRoZSBtYXggdG90YWwgbGVuZ3RoIGlzIDEwMDAuICovXG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB8IG51bGxcbiAgLyoqIExvYmJ5IG1lbWJlciBmbGFncyBjb21iaW5lZCBhcyBhIGJpdGZpZWxkICovXG4gIGZsYWdzPzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvbG9iYnkjYWRkLWEtbWVtYmVyLXRvLWEtbG9iYnkgKi9cbmV4cG9ydCBpbnRlcmZhY2UgTW9kaWZ5TG9iYnkge1xuICAvKiogT3B0aW9uYWwgZGljdGlvbmFyeSBvZiBzdHJpbmcga2V5L3ZhbHVlIHBhaXJzLiBUaGUgbWF4IHRvdGFsIGxlbmd0aCBpcyAxMDAwLiBPdmVyd3JpdGVzIGFueSBleGlzdGluZyBtZXRhZGF0YS4gKi9cbiAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+IHwgbnVsbFxuICAvKiogT3B0aW9uYWwgYXJyYXkgb2YgdXAgdG8gMjUgdXNlcnMgdG8gcmVwbGFjZSB0aGUgbG9iYnkgbWVtYmVycyB3aXRoLiBJZiBwcm92aWRlZCwgbG9iYnkgbWVtYmVycyBub3QgaW4gdGhpcyBsaXN0IHdpbGwgYmUgcmVtb3ZlZCBmcm9tIHRoZSBsb2JieS4gKi9cbiAgbWVtYmVycz86IENyZWF0ZUxvYmJ5TWVtYmVyW11cbiAgLyoqIFNlY29uZHMgdG8gd2FpdCBiZWZvcmUgc2h1dHRpbmcgZG93biBhIGxvYmJ5IGFmdGVyIGl0IGJlY29tZXMgaWRsZS4gVmFsdWUgY2FuIGJlIGJldHdlZW4gNSBhbmQgNjA0ODAwICg3IGRheXMpLiAqL1xuICBpZGxlVGltZW91dFNlY29uZHM/OiBudW1iZXJcbn1cblxuLyoqIGh0dHBzOi8vZGlzY29yZC5jb20vZGV2ZWxvcGVycy9kb2NzL3Jlc291cmNlcy9sb2JieSNhZGQtYS1tZW1iZXItdG8tYS1sb2JieSAqL1xuZXhwb3J0IGludGVyZmFjZSBBZGRMb2JieU1lbWJlciB7XG4gIC8qKiBPcHRpb25hbCBkaWN0aW9uYXJ5IG9mIHN0cmluZyBrZXkvdmFsdWUgcGFpcnMuIFRoZSBtYXggdG90YWwgbGVuZ3RoIGlzIDEwMDAuICovXG4gIG1ldGFkYXRhPzogUmVjb3JkPHN0cmluZywgc3RyaW5nPiB8IG51bGxcbiAgLyoqIExvYmJ5IG1lbWJlciBmbGFncyBjb21iaW5lZCBhcyBhIGJpdGZpZWxkICovXG4gIGZsYWdzPzogbnVtYmVyXG59XG5cbi8qKiBodHRwczovL2Rpc2NvcmQuY29tL2RldmVsb3BlcnMvZG9jcy9yZXNvdXJjZXMvbG9iYnkjbGluay1jaGFubmVsLXRvLWxvYmJ5ICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmtDaGFubmVsVG9Mb2JieSB7XG4gIC8qKiBUaGUgaWQgb2YgdGhlIGNoYW5uZWwgdG8gbGluayB0byB0aGUgbG9iYnkuIElmIG5vdCBwcm92aWRlZCwgd2lsbCB1bmxpbmsgYW55IGN1cnJlbnRseSBsaW5rZWQgY2hhbm5lbHMgZnJvbSB0aGUgbG9iYnkuICovXG4gIGNoYW5uZWxJZD86IEJpZ1N0cmluZ1xufVxuIl0sIm5hbWVzIjpbIkNyZWF0ZUVudGl0bGVtZW50T3duZXJUeXBlIl0sIm1hcHBpbmdzIjoiOzs7OytCQTZyRFlBOzs7ZUFBQUE7OztBQUFMLElBQUEsQUFBS0Esb0RBQUFBO0lBQ1YsdUJBQXVCO0lBRXZCLHNCQUFzQjtXQUhaQSJ9