@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
31 lines • 28 kB
JavaScript
export const minColumnGridTrackSize = 80;
/** Maps column types to relative widths. */
export const ratiosByColumnTypes = {
/** The width ration for icon column type. */
icon: 1,
/** The width ration for numeric column type. */
numeric: 1,
/** The width ration for short text column type. */
'text-short': 1.67,
/** The width ration for long text column type. */
'text-long': 3.33
};
/** Filtering actions. */
export var FilteringActionType;
(function (FilteringActionType) {
/** Action invoked when filter settings are to be applied. */
FilteringActionType["ApplyFilter"] = "APPLY_FILTER";
/** Action invoked when filter settings are to be cleared. */
FilteringActionType["ResetFilter"] = "RESET_FILTER";
})(FilteringActionType || (FilteringActionType = {}));
/** Predefined types of actions. */
export var BuiltInActionType;
(function (BuiltInActionType) {
/** Edit built-in action. */
BuiltInActionType["Edit"] = "EDIT";
/** Delete built-in action. */
BuiltInActionType["Delete"] = "DELETE";
/** Export built-in action. */
BuiltInActionType["Export"] = "EXPORT";
})(BuiltInActionType || (BuiltInActionType = {}));
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1ncmlkLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29yZS9kYXRhLWdyaWQvZGF0YS1ncmlkLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTZLQSxNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxFQUFFLENBQUM7QUFFekMsNENBQTRDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLG1CQUFtQixHQUFHO0lBQ2pDLDZDQUE2QztJQUM3QyxJQUFJLEVBQUUsQ0FBQztJQUVQLGdEQUFnRDtJQUNoRCxPQUFPLEVBQUUsQ0FBQztJQUVWLG1EQUFtRDtJQUNuRCxZQUFZLEVBQUUsSUFBSTtJQUVsQixrREFBa0Q7SUFDbEQsV0FBVyxFQUFFLElBQUk7Q0FDbEIsQ0FBQztBQWFGLHlCQUF5QjtBQUN6QixNQUFNLENBQU4sSUFBWSxtQkFNWDtBQU5ELFdBQVksbUJBQW1CO0lBQzdCLDZEQUE2RDtJQUM3RCxtREFBNEIsQ0FBQTtJQUU1Qiw2REFBNkQ7SUFDN0QsbURBQTRCLENBQUE7QUFDOUIsQ0FBQyxFQU5XLG1CQUFtQixLQUFuQixtQkFBbUIsUUFNOUI7QUE2TkQsbUNBQW1DO0FBQ25DLE1BQU0sQ0FBTixJQUFZLGlCQVNYO0FBVEQsV0FBWSxpQkFBaUI7SUFDM0IsNEJBQTRCO0lBQzVCLGtDQUFhLENBQUE7SUFFYiw4QkFBOEI7SUFDOUIsc0NBQWlCLENBQUE7SUFFakIsOEJBQThCO0lBQzlCLHNDQUFpQixDQUFBO0FBQ25CLENBQUMsRUFUVyxpQkFBaUIsS0FBakIsaUJBQWlCLFFBUzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVtcGxhdGVSZWYsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1Hcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IElSZXN1bHRMaXN0IH0gZnJvbSAnQGM4eS9jbGllbnQnO1xuaW1wb3J0IHsgRm9ybWx5RmllbGRDb25maWcgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEV4dGVuc2lvbkZhY3RvcnkgfSBmcm9tICcuLi9jb21tb24vZXh0ZW5zaW9uLWhvb2tzJztcbmltcG9ydCB7IEdyaWRDb25maWdDb250ZXh0IH0gZnJvbSAnLi9kYXRhLWdyaWQtY29uZmlndXJhdGlvbi5tb2RlbCc7XG5pbXBvcnQgeyBTdXBwb3J0ZWRJY29uc1N1Z2dlc3Rpb25zIH0gZnJvbSAnQGM4eS9uZ3gtY29tcG9uZW50cy9pY29uLXNlbGVjdG9yL2ljb25zJztcblxuLyoqIERlc2NyaWJlcyB0aGUgaW50ZXJmYWNlIG9mIHRoZSBkYXRhIGdyaWQuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFHcmlkIHtcbiAgLyoqIFRoZSBsaXN0IG9mIGNvbHVtbnMuICovXG4gIGNvbHVtbnM6IENvbHVtbltdO1xuXG4gIC8qKiBUaGUgbGlzdCBvZiBpdGVtcy4gKi9cbiAgcm93czogUm93W107XG5cbiAgLyoqIFBhZ2luYXRpb24gb2JqZWN0LiAqL1xuICBwYWdpbmF0aW9uOiBQYWdpbmF0aW9uO1xuXG4gIC8qKiBBIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGZldGNoIHNlcnZlciBkYXRhLiAqL1xuICBzZXJ2ZXJTaWRlRGF0YUNhbGxiYWNrOiBTZXJ2ZXJTaWRlRGF0YUNhbGxiYWNrO1xuXG4gIC8qKiBXaGV0aGVyIGl0ZW1zIGFyZSBzZWxlY3RhYmxlLiAqL1xuICBzZWxlY3RhYmxlOiBib29sZWFuO1xuXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGUgcHJpbWFyeSBrZXkgcHJvcGVydHkuICovXG4gIHNlbGVjdGlvblByaW1hcnlLZXk6IHN0cmluZztcblxuICAvKiogRGF0YSBncmlkIGRpc3BsYXkgb3B0aW9ucy4gKi9cbiAgZGlzcGxheU9wdGlvbnM6IERpc3BsYXlPcHRpb25zO1xuXG4gIC8qKiBJbmRpdmlkdWFsIGFjdGlvbiBjb250cm9scy4gKi9cbiAgYWN0aW9uQ29udHJvbHM6IEFjdGlvbkNvbnRyb2xbXTtcblxuICAvKiogQnVsayBhY3Rpb24gY29udHJvbHMuICovXG4gIGJ1bGtBY3Rpb25Db250cm9sczogQnVsa0FjdGlvbkNvbnRyb2xbXTtcblxuICAvKiogSGVhZGVyIGFjdGlvbiBjb250cm9scy4gKi9cbiAgaGVhZGVyQWN0aW9uQ29udHJvbHM/OiBIZWFkZXJBY3Rpb25Db250cm9sW107XG59XG5cbi8qKiBEZXNjcmliZXMgYSBkYXRhIGdyaWQgY29sdW1uLiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb2x1bW4ge1xuICAvKiogVGhlIG5hbWUgZm9yIHRoZSBjb2x1bW4uICovXG4gIG5hbWU6IHN0cmluZyB8IFNwZWNpYWxDb2x1bW5OYW1lO1xuICAvKiogVGhlIGNvbHVtbidzIGhlYWRlciAoaWYgbm90IGdpdmVuLCBgbmFtZWAgaXMgdXNlZCBieSBkZWZhdWx0KS4gKi9cbiAgaGVhZGVyPzogc3RyaW5nO1xuICAvKiogVGhlIHBhdGggaW4gYSByb3cgaXRlbSB0byByZWFkIHRoZSBjZWxsIHZhbHVlIGZyb20uICovXG4gIHBhdGg/OiBzdHJpbmc7XG4gIC8qKiBXaGV0aGVyIHRoZSBjb2x1bW4gaXMgZGlzcGxheWVkLiAqL1xuICB2aXNpYmxlPzogYm9vbGVhbjtcbiAgLyoqIFdoZXRoZXIgdGhlIGNvbHVtbiBjYW4gYmUgbW92ZWQgdG8gYW5vdGhlciBwb3NpdGlvbi4gKi9cbiAgcG9zaXRpb25GaXhlZD86IGJvb2xlYW47XG4gIC8qKiBNYXJrcyBhIHVzZXIgY29uZmlndXJlZCBjdXN0b20gY29sdW1uICovXG4gIGN1c3RvbT86IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRoZSBjb2x1bW4gY2FuIGJlIHJlc2l6ZWQuICovXG4gIHJlc2l6YWJsZT86IGJvb2xlYW47XG4gIC8qKiBPcHRpb25hbCB0eXBlIG9mIGRhdGEgaW4gdGhlIGNvbHVtbiAodXNlZCB0byBzZXQgZGF0YS10eXBlIGF0dHJpYnV0ZSwgZS5nLiBmb3IgYWRkaXRpb25hbCBzdHlsaW5nKS4gKi9cbiAgZGF0YVR5cGU/OiBDb2x1bW5EYXRhVHlwZTtcbiAgLyoqIFRoZSBjb2x1bW4ncyBzaXplLCBlLmcuIFwiNDAgcHhcIi4gKi9cbiAgZ3JpZFRyYWNrU2l6ZT86IHN0cmluZztcbiAgLyoqIEFkZGl0aW9uYWwgQ1NTIGNsYXNzZXMgZm9yIHRoZSBoZWFkZXIgY2VsbC4gKi9cbiAgaGVhZGVyQ1NTQ2xhc3NOYW1lPzogc3RyaW5nIHwgc3RyaW5nW107XG4gIC8qKiBBZGRpdGlvbmFsIENTUyBjbGFzc2VzIGZvciBkYXRhIGNlbGxzLiAqL1xuICBjZWxsQ1NTQ2xhc3NOYW1lPzogc3RyaW5nIHwgc3RyaW5nW107XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNvbHVtbiBpcyBzb3J0YWJsZS4gKi9cbiAgc29ydGFibGU/OiBib29sZWFuO1xuICAvKiogV2hldGhlciB0aGUgc29ydCBvcmRlciBpcyBhc2NlbmRpbmcsIGRlc2NlbmRpbmcgb3Igbm90IHNwZWNpZmllZC4gKi9cbiAgc29ydE9yZGVyPzogU29ydE9yZGVyO1xuICBzb3J0aW5nQ29uZmlnPzogQ29sdW1uU29ydGluZ0NvbmZpZztcblxuICAvKiogV2hldGhlciB0aGUgY29sdW1uIGlzIGZpbHRlcmFibGUuICovXG4gIGZpbHRlcmFibGU/OiBib29sZWFuO1xuICAvKiogVGhlIHN0cmluZyB0byBzZWFyY2ggZm9yIG9yIGEgZnVuY3Rpb24gZm9yIGNsaWVudC1zaWRlIGZpbHRlcmluZy4gKi9cbiAgZmlsdGVyUHJlZGljYXRlPzogc3RyaW5nIHwgRmlsdGVyUHJlZGljYXRlRnVuY3Rpb247XG4gIC8qKiBDdXN0b20gZmlsdGVyaW5nIGZvcm0gcmVuZGVyZXIgY2FuIHNldCBhbnkgdmFsdWUgaGVyZSBhbmQgaXQgY2FuIGJlIHVzZWQgdG8gYnVpbGQgYSBxdWVyeSB0byB0aGUgc2VydmVyLiAqL1xuICBleHRlcm5hbEZpbHRlclF1ZXJ5PzogYW55O1xuICBmaWx0ZXJpbmdDb25maWc/OiBGb3JtbHlDb2x1bW5GaWx0ZXJpbmdDb25maWc7XG5cbiAgLyoqIEN1c3RvbSBkYXRhIGNlbGwgcmVuZGVyZXIgY29tcG9uZW50LiBJbmplY3QgYENlbGxSZW5kZXJlckNvbnRleHRgIHRvIGdldCBhY2Nlc3MgdG8gZGF0YSB2YWx1ZSwgaXRlbSBhbmQgY29sdW1uIG9iamVjdC4gKi9cbiAgY2VsbFJlbmRlcmVyQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICAvKiogQ3VzdG9tIGhlYWRlciBjZWxsIHJlbmRlcmVyIGNvbXBvbmVudC4gSW5qZWN0IGBDZWxsUmVuZGVyZXJDb250ZXh0YCB0byBnZXQgYWNjZXNzIHRvIGhlYWRlciB2YWx1ZSBhbmQgY29sdW1uIG9iamVjdC4gKi9cbiAgaGVhZGVyQ2VsbFJlbmRlcmVyQ29tcG9uZW50PzogVHlwZTxhbnk+O1xuICAvKiogQ3VzdG9tIGZpbHRlcmluZyBmb3JtIHJlbmRlcmVyIGNvbXBvbmVudC4gSW5qZWN0IGBGaWx0ZXJpbmdGb3JtUmVuZGVyZXJDb250ZXh0YCB0byBnZXQgYWNjZXNzIHRvIGNvbHVtbiBvYmplY3QgYW5kIG1ldGhvZHM6IGFwcGx5RmlsdGVyLCByZXNldEZpbHRlci4gKi9cbiAgZmlsdGVyaW5nRm9ybVJlbmRlcmVyQ29tcG9uZW50PzogVHlwZTxhbnk+O1xufVxuXG4vKiogRGVzY3JpYmVzIGEgY29sdW1uIGNvbmZpZ3VyYXRpb24uICovXG5leHBvcnQgaW50ZXJmYWNlIENvbHVtbkNvbmZpZyB7XG4gIC8qKiBUaGUgbmFtZSBmb3IgdGhlIGNvbHVtbi4gKi9cbiAgbmFtZT86IHN0cmluZztcblxuICAvKiogV2hldGhlciB0aGUgY29sdW1uIGlzIGRpc3BsYXllZC4gKi9cbiAgdmlzaWJsZT86IGJvb2xlYW47XG5cbiAgLyoqIFdoZXRoZXIgdGhlIHNvcnQgb3JkZXIgaXMgYXNjZW5kaW5nLCBkZXNjZW5kaW5nIG9yIG5vdCBzcGVjaWZpZWQuICovXG4gIHNvcnRPcmRlcj86IFNvcnRPcmRlcjtcblxuICAvKiogVGhlIHNldHRpbmdzIG9mIGZpbHRlciBpbiBhIGNvbHVtbi4gKi9cbiAgZmlsdGVyPzogRmlsdGVyO1xufVxuXG4vKiogRGVzY3JpYmVzIGEgY3VzdG9tIGNvbHVtbiBjb25maWd1cmF0aW9uLiAqL1xuZXhwb3J0IGludGVyZmFjZSBDdXN0b21Db2x1bW5Db25maWcgZXh0ZW5kcyBDb2x1bW5Db25maWcge1xuICAvKiogSlNPTiBwYXRoIHRvIHRoZSBtYW5hZ2VkIG9iamVjdCBwcm9wZXJ0eSB0byBiZSBkaXNwbGF5ZWQgKi9cbiAgcGF0aDogc3RyaW5nO1xuXG4gIC8qKiBDb2x1bW4gaGVhZGVyIHRpdGxlICovXG4gIGhlYWRlcjogc3RyaW5nO1xuXG4gIC8qKiBGbGFnIHRvIGlkZW50aWZ5IGN1c3RvbSBjb2x1bW5zICovXG4gIGN1c3RvbTogYm9vbGVhbjtcbn1cblxuLyoqIERlc2NyaWJlcyB0aGUgc2V0dGluZ3Mgb2YgZmlsdGVyIGluIGEgY29sdW1uLiAqL1xuZXhwb3J0IGludGVyZmFjZSBGaWx0ZXIge1xuICAvKiogQ3VzdG9tIGZpbHRlcmluZyBmb3JtIHJlbmRlcmVyIGNhbiBzZXQgYW55IHZhbHVlIGhlcmUgYW5kIGl0IGNhbiBiZSB1c2VkIHRvIGJ1aWxkIGEgcXVlcnkgdG8gdGhlIHNlcnZlci4gKi9cbiAgZXh0ZXJuYWxGaWx0ZXJRdWVyeT86IGFueTtcbiAgLyoqIEFuIG9wdGlvbmFsIHByb3BlcnR5IHRoYXQgaG9sZHMgYSBzdHJpbmcgdG8gc2VhcmNoIGZvci4gKi9cbiAgZmlsdGVyUHJlZGljYXRlPzogc3RyaW5nIHwgRmlsdGVyUHJlZGljYXRlRnVuY3Rpb247XG59XG5cbi8qKiBEZXNjcmliZXMgYW4gb2JqZWN0IHdpdGggZGF0YSBncmlkIGNvbmZpZ3VyYXRpb24uICovXG5leHBvcnQgaW50ZXJmYWNlIEdyaWRDb25maWcge1xuICAvKiogVGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0cyBmb3IgYWxsIHRoZSBjb2x1bW5zLiAqL1xuICBjb2x1bW5zOiBDb2x1bW5Db25maWdbXTtcblxuICAvKiogUGFnaW5hdGlvbiBvYmplY3QuICovXG4gIHBhZ2luYXRpb246IFBhZ2luYXRpb247XG59XG5cbi8qKiAgKi9cbmV4cG9ydCBjb25zdCBlbnVtIFNwZWNpYWxDb2x1bW5OYW1lIHtcbiAgLyoqIENvbHVtbiB3aXRoIGNoZWNrYm94LiAqL1xuICBDaGVja2JveCA9ICdjaGVja2JveCcsXG5cbiAgLyoqIENvbHVtbiB3aXRoIHJhZGlvIGJ1dHRvbi4gKi9cbiAgUmFkaW9CdXR0b24gPSAncmFkaW8tYnV0dG9uJyxcblxuICAvKiogQ29sdW1uIHdpdGggcm93IGFjdGlvbnMuICovXG4gIEFjdGlvbnMgPSAnYWN0aW9ucydcbn1cblxuLyoqICAqL1xuZXhwb3J0IGNvbnN0IGVudW0gQ29sdW1uRGF0YVR5cGUge1xuICAvKiogQ29sdW1uIHdpdGggaWNvbi4gKi9cbiAgSWNvbiA9ICdpY29uJyxcblxuICAvKiogTnVtZXJpYyBjb2x1bW4uICovXG4gIE51bWVyaWMgPSAnbnVtZXJpYycsXG5cbiAgLyoqIENvbHVtbiB3aXRoIHNob3J0IHRleHQuICovXG4gIFRleHRTaG9ydCA9ICd0ZXh0LXNob3J0JyxcblxuICAvKiogQ29sdW1uIHdpdGggbG9uZyB0ZXh0LiAqL1xuICBUZXh0TG9uZyA9ICd0ZXh0LWxvbmcnXG59XG5cbi8qKiBDbGFzc2VzIGZvciBjb2x1bW4gZGF0YSByZWNvcmQuICovXG5leHBvcnQgY29uc3QgZW51bSBDb2x1bW5EYXRhUmVjb3JkQ2xhc3NOYW1lIHtcbiAgLyoqIEFuIGljb24uICovXG4gIEljb24gPSAnZGF0YS1yZWNvcmQtaWNvbicsXG5cbiAgLyoqIEEgaGVhZGVyLiAqL1xuICBIZWFkZXIgPSAnZGF0YS1yZWNvcmQtaGVhZGVyJyxcblxuICAvKiogRGVmYXVsdCAtIGVtcHR5LiAqL1xuICBEZWZhdWx0ID0gJydcbn1cblxuZXhwb3J0IGNvbnN0IG1pbkNvbHVtbkdyaWRUcmFja1NpemUgPSA4MDtcblxuLyoqIE1hcHMgY29sdW1uIHR5cGVzIHRvIHJlbGF0aXZlIHdpZHRocy4gKi9cbmV4cG9ydCBjb25zdCByYXRpb3NCeUNvbHVtblR5cGVzID0ge1xuICAvKiogVGhlIHdpZHRoIHJhdGlvbiBmb3IgaWNvbiBjb2x1bW4gdHlwZS4gKi9cbiAgaWNvbjogMSxcblxuICAvKiogVGhlIHdpZHRoIHJhdGlvbiBmb3IgbnVtZXJpYyBjb2x1bW4gdHlwZS4gKi9cbiAgbnVtZXJpYzogMSxcblxuICAvKiogVGhlIHdpZHRoIHJhdGlvbiBmb3Igc2hvcnQgdGV4dCBjb2x1bW4gdHlwZS4gKi9cbiAgJ3RleHQtc2hvcnQnOiAxLjY3LFxuXG4gIC8qKiBUaGUgd2lkdGggcmF0aW9uIGZvciBsb25nIHRleHQgY29sdW1uIHR5cGUuICovXG4gICd0ZXh0LWxvbmcnOiAzLjMzXG59O1xuXG4vKiogU29ydGluZyBvcmRlcjogYXNjZW5kaW5nLCBkZXNjZW5kaW5nLCBvciBub3Qgc3BlY2lmaWVkLiAqL1xuZXhwb3J0IHR5cGUgU29ydE9yZGVyID0gJ2FzYycgfCAnZGVzYycgfCAnJztcblxuLyoqXG4gKiBBIGZpbHRlciBwcmVkaWNhdGUgZnVuY3Rpb24uXG4gKiBAcGFyYW0gaXRlbSBUaGUgY3VycmVudCBpdGVtIHRvIGJlIGNoZWNrZWQuXG4gKiBAcGFyYW0gcGF0aCBUaGUgcHJvcGVydHkgcGF0aCBjb25maWd1cmVkIGluIHRoZSBjdXJyZW50IGNvbHVtbi5cbiAqIEByZXR1cm5zIFRoZSBib29sZWFuIHZhbHVlIGluZGljYXRpbmcgd2hldGhlciB0aGUgaXRlbSBtYXRjaGVzIGEgY29uZGl0aW9uIG9yIG5vdC5cbiAqL1xuZXhwb3J0IHR5cGUgRmlsdGVyUHJlZGljYXRlRnVuY3Rpb24gPSAoaXRlbTogb2JqZWN0LCBwYXRoOiBzdHJpbmcpID0+IGJvb2xlYW47XG5cbi8qKiBGaWx0ZXJpbmcgYWN0aW9ucy4gKi9cbmV4cG9ydCBlbnVtIEZpbHRlcmluZ0FjdGlvblR5cGUge1xuICAvKiogQWN0aW9uIGludm9rZWQgd2hlbiBmaWx0ZXIgc2V0dGluZ3MgYXJlIHRvIGJlIGFwcGxpZWQuICovXG4gIEFwcGx5RmlsdGVyID0gJ0FQUExZX0ZJTFRFUicsXG5cbiAgLyoqIEFjdGlvbiBpbnZva2VkIHdoZW4gZmlsdGVyIHNldHRpbmdzIGFyZSB0byBiZSBjbGVhcmVkLiAqL1xuICBSZXNldEZpbHRlciA9ICdSRVNFVF9GSUxURVInXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRm9ybWx5Q29sdW1uRmlsdGVyaW5nQ29uZmlnIHtcbiAgLyoqIERlZmluZXMgYSBGaWVsZENvbmZpZyBjb25maWd1cmF0aW9uIGZvciBGb3JtbHkuICAqL1xuICBmaWVsZHM/OiBGb3JtbHlGaWVsZENvbmZpZ1tdO1xuICAvKiogRGVmaW5lcyBhIEpTT04gc2NoZW1hIGZvciBmaWx0ZXJpbmcgY29uZmlnIG1vZGVsLiBDYW4gYmUgdXNlZCBpbnN0ZWFkIG9mIGBmaWVsZHNgICovXG4gIHNjaGVtYT86IG9iamVjdDtcbiAgLyoqIERlZmluZXMgYSBtb2RlbCB0aGF0IHdpbGwgYmUgYXBwbGllZCB0byByZW5kZXJlZCBmb3JtLiAqL1xuICBtb2RlbD86IG9iamVjdDtcbiAgLyoqIERlZmluZXMgRm9ybUdyb3VwIGluc3RhbmNlICovXG4gIGZvcm1Hcm91cD86IEZvcm1Hcm91cDtcbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgYSBmaWx0ZXJpbmcgY29uZmlnIG1vZGVsIHRvIGFuIGFycmF5IG9mIHBhcnRpYWwgZmlsdGVyIGNoaXAgb2JqZWN0cy5cbiAgICogQHBhcmFtIG1vZGVsIEFuIG9iamVjdCB3aXRoIGRlZmluZWQgc3RydWN0dXJlIChlLmcuIGJ5IHNjaGVtYSkuXG4gICAqIEByZXR1cm5zIEFuIGFycmF5IG9mIHBhcnRpYWwgZmlsdGVyIGNoaXAgb2JqZWN0cywgZWFjaCBjb250YWluaW5nIGF0IGxlYXN0IGBkaXNwbGF5VmFsdWVgIGFuZCB0aGUgYWN0dWFsIGB2YWx1ZWAgdG8gYmUgdXBkYXRlZC5cbiAgICogT3B0aW9uYWxseSwgb3RoZXIgcHJvcGVydGllcyBmcm9tIGBGaWx0ZXJDaGlwYCBhcmUgYWxsb3dlZCwgZm9yIGV4YW1wbGUsIGEgY3VzdG9tIGByZW1vdmVgIGNhbGxiYWNrIHRvIGJlIGV4ZWN1dGVkIHdoZW4gYSBjaGlwIGlzIGJlaW5nIHJlbW92ZWQuXG4gICAqL1xuICBnZW5lcmF0ZUNoaXBzPzogKG1vZGVsOiBhbnkpID0+IFBhcnRpYWxGaWx0ZXJDaGlwR2VuZXJhdGlvblR5cGVbXTtcbiAgLyoqXG4gICAqIFRyYW5zZm9ybXMgYSBmaWx0ZXJpbmcgY29uZmlnIG1vZGVsIChlLmcuIGNvbWluZyBmcm9tIHNjaGVtYSBmb3JtIGNvbXBvbmVudCkgdG8gYSBxdWVyeSBvYmplY3QuXG4gICAqIEhvd2V2ZXIsIHVzaW5nIHNjaGVtYSBmb3JtIGNvbXBvbmVudCBpcyBub3QgbmVjZXNzYXJ5LlxuICAgKiBNb2RlbCBjYW4gYmUgZGVmaW5lZCBhcmJpdHJhcmlseSBidXQgbXVzdCBjb252ZXJ0ZWQgdG8gYSB2YWxpZCBxdWVyeSBvYmplY3QuXG4gICAqIEBwYXJhbSBtb2RlbCBBbiBvYmplY3Qgd2l0aCBkZWZpbmVkIHN0cnVjdHVyZSAoZS5nLiBieSBzY2hlbWEpLlxuICAgKiBAcmV0dXJucyBBIHF1ZXJ5IG9iamVjdCB0byBiZSB1c2VkIHRvIGdlbmVyYXRlIGEgcXVlcnkgc3RyaW5nIChRdWVyeVV0aWxzKS5cbiAgICovXG4gIGdldEZpbHRlcjogKG1vZGVsOiBhbnkpID0+IGFueTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2x1bW5Tb3J0aW5nQ29uZmlnIHtcbiAgcGF0aFNvcnRpbmdDb25maWdzOiBQYXRoU29ydGluZ0NvbmZpZ1tdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhdGhTb3J0aW5nQ29uZmlnIHtcbiAgcGF0aDogc3RyaW5nO1xuICBzb3J0T3JkZXJNb2RpZmllcj86IFNvcnRPcmRlck1vZGlmaWVyO1xufVxuXG5leHBvcnQgY29uc3QgZW51bSBTb3J0T3JkZXJNb2RpZmllciB7XG4gIEtlZXAsXG4gIEludmVydFxufVxuXG4vKiogRGVzY3JpYmVzIGFuIGl0ZW0gaW4gdGhlIHJvdy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm93IHtcbiAgLyoqIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgaXRlbS4gKi9cbiAgaWQ6IHN0cmluZztcblxuICAvKiogQW55IGl0ZW0gcHJvcGVydHkuICovXG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuLyoqIERlc2NyaWJlcyBhIHBhZ2luYXRpb24gb2JqZWN0LiAqL1xuZXhwb3J0IGludGVyZmFjZSBQYWdpbmF0aW9uIHtcbiAgLyoqIFRoZSBudW1iZXIgb2YgdGhlIGN1cnJlbnQgcGFnZS4gKi9cbiAgY3VycmVudFBhZ2U/OiBudW1iZXI7XG5cbiAgLyoqIFRoZSBudW1iZXIgb2YgdGhlIG5leHQgcGFnZS4gKi9cbiAgbmV4dFBhZ2U/OiBudW1iZXI7XG5cbiAgLyoqIFRoZSBudW1iZXIgb2YgaXRlbXMgb24gYSBzaW5nbGUgcGFnZS4gKi9cbiAgcGFnZVNpemU6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGZldGNoIHNlcnZlciBkYXRhLlxuICogQHBhcmFtIGRhdGFTb3VyY2VNb2RpZmllciBUaGUgY3VycmVudCBkYXRhIHNvdXJjZSBtb2RpZmllci5cbiAqIEByZXR1cm5zIFJldHVybnMgdGhlIHJlc3VsdCBmcm9tIHNlcnZlci5cbiAqL1xuZXhwb3J0IHR5cGUgU2VydmVyU2lkZURhdGFDYWxsYmFjayA9IChcbiAgZGF0YVNvdXJjZU1vZGlmaWVyOiBEYXRhU291cmNlTW9kaWZpZXJcbikgPT4gU2VydmVyU2lkZURhdGFSZXN1bHQgfCBQcm9taXNlPFNlcnZlclNpZGVEYXRhUmVzdWx0PiB8IE9ic2VydmFibGU8U2VydmVyU2lkZURhdGFSZXN1bHQ+O1xuXG4vKiogRGVzY3JpYmVzIGEgZGF0YSBzb3VyY2UgbW9kaWZpZXIgZm9yIHJlcXVlc3Rpbmcgc2VydmVyIGRhdGEuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFTb3VyY2VNb2RpZmllciB7XG4gIC8qKiBUaGUgbGlzdCBvZiBjb2x1bW5zLiAqL1xuICBjb2x1bW5zOiBDb2x1bW5bXTtcblxuICAvKiogVGV4dCB0byBzZWFyY2guICovXG4gIHNlYXJjaFRleHQ6IHN0cmluZztcblxuICAvKiogUGFnaW5hdGlvbiBvYmplY3QuICovXG4gIHBhZ2luYXRpb246IFBhZ2luYXRpb247XG5cbiAgLyoqIFNlbGVjdGlvbiBpbmZvIG9iamVjdC4gKi9cbiAgc2VsZWN0aW9uOiB7XG4gICAgLyoqIFdoZXRoZXIgdGhlIHNlbGVjdGlvbiBpcyBlbmFibGVkLiAqL1xuICAgIGVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICAvKiogVGhlIG5hbWUgb2YgdGhlIHByaW1hcnkga2V5LiAqL1xuICAgIHByaW1hcnlLZXk6IHN0cmluZztcbiAgfTtcbn1cblxuLyoqIERlc2NyaWJlcyBhIHJlc3VsdCBmcm9tIHNlcnZlciB3aXRoIGRhdGEgYW5kIGFkZGl0aW9uYWwgc3RhdGlzdGljcy4gKi9cbmV4cG9ydCB0eXBlIFNlcnZlclNpZGVEYXRhUmVzdWx0ID0gSVJlc3VsdExpc3Q8b2JqZWN0PiAmIHtcbiAgLyoqIFRoZSByZWFsIGdyYW5kIHRvdGFsIG51bWJlciBvZiBpdGVtcyAodGhlIHdob2xlIGRhdGFzZXQpLiAqL1xuICBzaXplOiBudW1iZXI7XG5cbiAgLyoqIFRoZSBudW1iZXIgb2YgaXRlbXMgYWZ0ZXIgZmlsdGVyaW5nIGFwcGxpZWQgdG8gdGhlIHdob2xlIGRhdGFzZXQgKHN1YnNldCkuICovXG4gIGZpbHRlcmVkU2l6ZTogbnVtYmVyO1xuXG4gIC8qKiBUaGUgbGlzdCBvZiBpZHMgb2YgYWxsIGZpbHRlcmVkIGl0ZW1zIChzdWJzZXQpLiAqL1xuICBmaWx0ZXJlZERhdGFJZHM/OiBzdHJpbmdbXTtcbn07XG5cbi8qKiBEZXNjcmliZXMgYW4gb2JqZWN0IHdpdGggZGF0YSBzb3VyY2Ugc3RhdGlzdGljcy4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVNvdXJjZVN0YXRzIHtcbiAgLyoqIFRoZSByZWFsIGdyYW5kIHRvdGFsIG51bWJlciBvZiBpdGVtcyAodGhlIHdob2xlIGRhdGFzZXQpLiAqL1xuICBzaXplOiBudW1iZXI7XG5cbiAgLyoqIFRoZSBudW1iZXIgb2YgaXRlbXMgYWZ0ZXIgZmlsdGVyaW5nIGFwcGxpZWQgdG8gdGhlIHdob2xlIGRhdGFzZXQgKHN1YnNldCkuICovXG4gIGZpbHRlcmVkU2l6ZTogbnVtYmVyO1xuXG4gIC8qKiBUaGUgbnVtYmVyIG9mIHRoZSBjdXJyZW50IHBhZ2UuICovXG4gIGN1cnJlbnRQYWdlOiBudW1iZXI7XG5cbiAgLyoqIFRoZSBudW1iZXIgb2YgdGhlIG5leHQgcGFnZS4gKi9cbiAgbmV4dFBhZ2U/OiBudW1iZXI7XG5cbiAgLyoqIFRoZSBudW1iZXIgb2YgaXRlbXMgY3VycmVudGx5IHNob3duIGluIHRoZSBsaXN0IHZpZXcsIGEuay5hLiBjdXJyZW50IHBhZ2UgKHdoYXQgdGhlIHVzZXIgc2VlcyBvbiBzY3JlZW4pLiAqL1xuICBjdXJyZW50UGFnZVNpemU6IG51bWJlcjtcblxuICAvKiogVGhlIG51bWJlciBvZiBpdGVtcyBvbiB0aGUgZmlyc3QgcGFnZS4gICovXG4gIGZpcnN0UGFnZVNpemU6IG51bWJlcjtcbn1cblxuLyoqIERlc2NyaWJlcyBkYXRhIGdyaWQgZGlzcGxheSBvcHRpb25zLiAqL1xuZXhwb3J0IGludGVyZmFjZSBEaXNwbGF5T3B0aW9ucyB7XG4gIC8qKiBTaG93IG9yIGhpZGUgemVicmEtc3RyaXBpbmcgaW4gdGhlIHRhYmxlICovXG4gIHN0cmlwZWQ6IGJvb2xlYW47XG5cbiAgLyoqIFNob3cgb3IgaGlkZSBlYWNoIGNlbGwgYm9yZGVyICovXG4gIGJvcmRlcmVkOiBib29sZWFuO1xuXG4gIC8qKiBTaG93IG9yIGhpZGUgdGhlIGdyaWQgaGVhZGVyICovXG4gIGdyaWRIZWFkZXI6IGJvb2xlYW47XG5cbiAgLyoqIFNob3cgb3IgaGlkZSBmaWx0ZXIgbGFiZWwgaW4gdGhlIGdyaWQgaGVhZGVyICovXG4gIGZpbHRlcjogYm9vbGVhbjtcblxuICAvKiogRW5hYmxlIHRvIGRpc3BsYXkgYSBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyICovXG4gIGhvdmVyOiBib29sZWFuO1xufVxuXG4vKiogRGVzY3JpYmVzIGEgZGF0YSBncmlkIGFjdGlvbiBjb250cm9sIGZvciBpbmRpdmlkdWFsIGl0ZW0uICovXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkNvbnRyb2wge1xuICAvKiogVGhlIHR5cGUgb2YgdGhlIGFjdGlvbiwgcHJlZGVmaW5lZCBvciBjdXN0b20uICovXG4gIHR5cGU6IEJ1aWx0SW5BY3Rpb25UeXBlIHwgc3RyaW5nO1xuXG4gIC8qKiBUaGUgbGFiZWwgZm9yIHRoZSBhY3Rpb24gYnV0dG9uLiAqL1xuICB0ZXh0Pzogc3RyaW5nO1xuXG4gIC8qKiBUaGUgaWNvbiBmb3IgdGhlIGFjdGlvbiBidXR0b24uICovXG4gIGljb24/OiBTdXBwb3J0ZWRJY29uc1N1Z2dlc3Rpb25zO1xuXG4gIC8qKiBUaGUgaWNvbiBjbGFzc2VzIGZvciB0aGUgYWN0aW9uIGJ1dHRvbiBpY29uLiAqL1xuICBpY29uQ2xhc3Nlcz86IHN0cmluZztcblxuICAvKiogQWN0aW9uIGljb24gd2lsbCBiZSB2aXNpYmxlIG9uIGhvdmVyIG9ubHkgKi9cbiAgc2hvd09uSG92ZXI/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLlxuICAgKiBAcGFyYW0gaXRlbSBUaGUgaXRlbSB0byBwZXJmb3JtIHRoZSBhY3Rpb24gb24uXG4gICAqIEBwYXJhbSByZWxvYWQgVGhlIGZ1bmN0aW9uIHRvIGNhbGwsIGlmIHlvdSB3YW50IHRvIHJlbG9hZCB0aGUgZ3JpZC5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG4gIGNhbGxiYWNrOiAoKGl0ZW06IFJvdywgcmVsb2FkOiAoKSA9PiB2b2lkKSA9PiB2b2lkKSB8IEZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBEZXRlcm1pbmVzIGlmIHRoZSBhY3Rpb24gc2hvdWxkIGJlIHNob3duIGZvciBnaXZlbiBpdGVtIChpZiBub3QgZGVmaW5lZCwgdGhlIGFjdGlvbiB3aWxsIGJlIHNob3duIGFsd2F5cykuXG4gICAqIEBwYXJhbSBpdGVtIFRoZSBpdGVtIGZvciB3aGljaCB0aGUgYWN0aW9uIGlzIHN1cHBvc2VkIHRvIGJlIHBlcmZvcm1lZC5cbiAgICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvYmFuLXR5cGVzXG4gIHNob3dJZj86ICgoaXRlbTogUm93ICYgc3RyaW5nW10pID0+IGJvb2xlYW4gfCBQcm9taXNlPGJvb2xlYW4+IHwgT2JzZXJ2YWJsZTxib29sZWFuPikgfCBGdW5jdGlvbjtcblxuICAvKipcbiAgICogRGVmaW5lcyB0aGUgb3JkZXIgaW4gd2hpY2ggYWN0aW9uIGNvbnRyb2xzIGFwcGVhci4gSGlnaGVyIHZhbHVlIG1lYW5zIGVhcmxpZXIgcG9zaXRpb24uXG4gICAqIENvbnRyb2xzIHdpdGhvdXQgcHJpb3JpdHkgYXJlIGhhbmRsZWQgd2l0aCBwcmlvcml0eSA9IDAuIElmIHlvdSB3YW50IHRvIHBsYWNlIGFuIGFjdGlvbiBhZnRlclxuICAgKiBhbiBhY3Rpb24gd2l0aG91dCBwcmlvcml0eSwgbmVnYXRpdmUgbnVtYmVycyBjYW4gYmUgdXNlZC5cbiAgICovXG4gIHByaW9yaXR5PzogbnVtYmVyO1xuXG4gIFtrZXk6IHN0cmluZ106IGFueTtcbn1cblxuLyoqIERlc2NyaWJlcyBhIGRhdGEgZ3JpZCBhY3Rpb24gY29udHJvbCBmb3IgbXVsdGlwbGUgaXRlbXMuICovXG5leHBvcnQgaW50ZXJmYWNlIEJ1bGtBY3Rpb25Db250cm9sIGV4dGVuZHMgQWN0aW9uQ29udHJvbCB7XG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLlxuICAgKiBAcGFyYW0gc2VsZWN0ZWRJdGVtSWRzIFRoZSBsaXN0IG9mIGlkcyBvZiB0aGUgc2VsZWN0ZWQgaXRlbXMuXG4gICAqIEBwYXJhbSByZWxvYWQgVGhlIGZ1bmN0aW9uIHRvIGNhbGwsIGlmIHlvdSB3YW50IHRvIHJlbG9hZCB0aGUgZ3JpZC5cbiAgICovXG4gIGNhbGxiYWNrKHNlbGVjdGVkSXRlbUlkczogc3RyaW5nW10sIHJlbG9hZDogKCkgPT4gdm9pZCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIERldGVybWluZXMgaWYgdGhlIGFjdGlvbiBzaG91bGQgYmUgc2hvd24gZm9yIGdpdmVuIHNlbGVjdGVkIGl0ZW1zIChpZiBub3QgZGVmaW5lZCwgdGhlIGFjdGlvbiB3aWxsIGJlIHNob3duIGFsd2F5cykuXG4gICAqIEBwYXJhbSBzZWxlY3RlZEl0ZW1JZHMgVGhlIGxpc3Qgb2YgaWRzIG9mIHRoZSBzZWxlY3RlZCBpdGVtcyBmb3Igd2hpY2ggdGhlIGFjdGlvbiBpcyBzdXBwb3NlZCB0byBiZSBwZXJmb3JtZWQuXG4gICAqL1xuICBzaG93SWY/KHNlbGVjdGVkSXRlbUlkczogc3RyaW5nW10pOiBib29sZWFuO1xufVxuXG4vKiogRGVzY3JpYmVzIGEgZGF0YSBncmlkIGFjdGlvbiBjb250cm9sIGZvciB0aGUgaGVhZGVyLiAqL1xuZXhwb3J0IGludGVyZmFjZSBIZWFkZXJBY3Rpb25Db250cm9sIGV4dGVuZHMgQWN0aW9uQ29udHJvbCB7XG4gIC8qKlxuICAgKiBDdXN0b20gdGVtcGxhdGUgY2FuIGJlIHByb3ZpZGVkLiBJZiBubyB0ZW1wbGF0ZSBpcyBwcm92aWRlZCxcbiAgICogdGhlIGRlZmF1bHQgaGVhZGVyQWN0aW9uQ29udHJvbCB0ZW1wbGF0ZSBpcyB1c2VkLlxuICAgKi9cbiAgdGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIC8qKlxuICAgKiBBIGNhbGxiYWNrIGZ1bmN0aW9uLlxuICAgKi9cbiAgY2FsbGJhY2soKTogdm9pZDtcblxuICAvKipcbiAgICogRGV0ZXJtaW5lcyBpZiB0aGUgYWN0aW9uIHNob3VsZCBiZSBzaG93bi5cbiAgICovXG4gIHNob3dJZj8oKTogYm9vbGVhbjtcbn1cblxuLyoqIFByZWRlZmluZWQgdHlwZXMgb2YgYWN0aW9ucy4gKi9cbmV4cG9ydCBlbnVtIEJ1aWx0SW5BY3Rpb25UeXBlIHtcbiAgLyoqIEVkaXQgYnVpbHQtaW4gYWN0aW9uLiAqL1xuICBFZGl0ID0gJ0VESVQnLFxuXG4gIC8qKiBEZWxldGUgYnVpbHQtaW4gYWN0aW9uLiAqL1xuICBEZWxldGUgPSAnREVMRVRFJyxcblxuICAvKiogRXhwb3J0IGJ1aWx0LWluIGFjdGlvbi4gKi9cbiAgRXhwb3J0ID0gJ0VYUE9SVCdcbn1cblxuLyoqXG4gKiBBbGxvd3MgdG8gYXR0YWNoIGFjdGlvbiBjb250cm9scyB0byBzcGVjaWZpZWQgZ3JpZHMuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uQ29udHJvbEhvb2sge1xuICAvKipcbiAgICogVGhlIGFjdGlvbiBjb250cm9sKHMpIHRoYXQgd2lsbCBiZSBhdHRhY2hlZCB0byB0aGUgZ3JpZC5cbiAgICovXG4gIGFjdGlvbkNvbnRyb2xzOiBBY3Rpb25Db250cm9sIHwgQWN0aW9uQ29udHJvbFtdO1xuICAvKipcbiAgICogQSBmdW5jdGlvbnMgdGhhdCBkZXRlcm1pbmVzIHRvIHdoaWNoIGdyaWQocykgdGhlIGFjdGlvbiBjb250cm9sKHMpIHdpbGwgYmUgYXR0YWNoZWQuXG4gICAqIE5vdCBwcm92aWRpbmcgYSBmdW5jdGlvbiByZXN1bHRzIGluIHRoZSBhY3Rpb25zIGNvbnRyb2wocykgbm90IGJlaW5nIGF0dGFjaGVkIHRvIGFueSBncmlkLlxuICAgKi9cbiAgbWF0Y2hlc0dyaWQ6IChcbiAgICByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgY29udGV4dD86IEdyaWRDb25maWdDb250ZXh0XG4gICkgPT4gYm9vbGVhbiB8IFByb21pc2U8Ym9vbGVhbj4gfCBPYnNlcnZhYmxlPGJvb2xlYW4+O1xufVxuXG4vKipcbiAqIEZhY3RvcnkgdG8gaW1wbGVtZW50IGluIG9yZGVyIHRvIGFkZCBhY3Rpb24gY29udHJvbHMgZnJvbSBhbiBleHRlbnNpb24uXG4gKi9cbmV4cG9ydCB0eXBlIEFjdGlvbkNvbnRyb2xGYWN0b3J5ID0gRXh0ZW5zaW9uRmFjdG9yeTxBY3Rpb25Db250cm9sSG9vaz47XG5cbi8qKlxuICogRGVmaW5lcyBhbiBpbnRlcmZhY2UgZm9yIGEgZmlsdGVyIGNoaXAgb2JqZWN0LCB3aGljaCByZXByZXNlbnRzIGEgZmlsdGVyIGFwcGxpZWQgdG8gYSBjb2x1bW4uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRmlsdGVyQ2hpcCB7XG4gIC8qKlxuICAgKiBUaGUgYWN0dWFsIHZhbHVlIHRoYXQgdGhlIGNoaXAgd2lsbCBob2xkLlxuICAgKiBJdCBjYW4gYmUganVzdCBhIHN0cmluZyBvciBhIG1vcmUgY29tcGxleCBvYmplY3QgbGlrZVxuICAgKiB7aWQ6IDEyMywgbmFtZTogVGVzdCwgdmFsdWU6IHRlc3R9LlxuICAgKi9cbiAgdmFsdWU6IGFueTtcblxuICAvKipcbiAgICogVGhlIHZhbHVlIHRoYXQgdGhlIGNoaXAgd2lsbCBkaXNwbGF5IGluIHRoZSBkcm9wZG93bi5cbiAgICovXG4gIGRpc3BsYXlWYWx1ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBsYWJlbCB0aGF0IHdpbGwgYmUgZGlzcGxheWVkIGlmIGZpbHRlciBjaGlwcyBhcmUgc2VwYXJhdGVkIGludG8gbXVsdGlwbGUgZ3JvdXBzLlxuICAgKi9cbiAgbGFiZWw/OiBzdHJpbmc7XG5cbiAgLyoqIEFuIG9wdGlvbmFsIHByb3BlcnR5IHRoYXQgaG9sZHMgdGhlIHBhdGggdG8gdGhlIGNoaXAgdmFsdWUgaW4gdGhlIGV4dGVybmFsRmlsdGVyUXVlcnkuICovXG4gIHBhdGg/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQW4gb3B0aW9uYWwgcHJvcGVydHkgdGhhdCBob2xkcyB0aGUgZm9ybSB2YWx1ZSB0YWtlbiBmcm9tIHRoZSBjb2x1bW4gY29uZmlndXJhdGlvbi5cbiAgICovXG4gIGV4dGVybmFsRmlsdGVyUXVlcnk/OiBhbnk7XG5cbiAgLyoqXG4gICAqIEFuIG9wdGlvbmFsIHByb3BlcnR5IHRoYXQgaG9sZHMgdGhlIGZvcm1seSBmaWx0ZXJpbmcgY29uZmlndXJhdGlvbiBmb3IgdGhlIGNvbHVtbiB0aGF0IHRoaXMgZmlsdGVyIGlzIGFwcGxpZWQgdG8uXG4gICAqL1xuICBmaWx0ZXJpbmdDb25maWc/OiBGb3JtbHlDb2x1bW5GaWx0ZXJpbmdDb25maWc7XG5cbiAgLyoqIEFuIG9wdGlvbmFsIHByb3BlcnR5IHRoYXQgaG9sZHMgYSBzdHJpbmcgdG8gc2VhcmNoIGZvci4gKi9cbiAgZmlsdGVyUHJlZGljYXRlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgY29sdW1uIHRoYXQgdGhpcyBmaWx0ZXIgaXMgYXBwbGllZCB0by5cbiAgICovXG4gIGNvbHVtbk5hbWU6IHN0cmluZyB8IFNwZWNpYWxDb2x1bW5OYW1lO1xuXG4gIC8qKlxuICAgKiBBbiBvcHRpb25hbCBmdW5jdGlvbiB0byByZW1vdmUgdGhpcyBmaWx0ZXIgZnJvbSB0aGUgY29sdW1uLlxuICAgKiBJZiBub3QgcHJvdmlkZWQgd2lsbCBzZXQgZGVmYXVsdCByZW1vdmFsIGZ1bmN0aW9uIHRoYXQgd2lsbCByZWR1Y2UgdGhlIGV4dGVybmFsIHF1ZXJ5IGJ5IHJlbW92aW5nIHRoZSBvYmplY3QgdGhhdCBpcyByZXNvbHZlZCBieSB0aGUgcGF0aCBzZXQgaW4gdGhlIEZpbHRlckNoaXAuXG4gICAqIEByZXR1cm5zIEFuIG9iamVjdCBkZWZpbmVkIGJ5IHRoZSBgRmlsdGVyQ2hpcGAgdHlwZSwgaW5jbHVkaW5nIHRoZSBgY29sdW1uTmFtZWAgYW5kICB1cGRhdGVkIGBleHRlcm5hbEZpbHRlclF1ZXJ5YCBvciAnZmlsdGVyUHJlZGljYXRlJyBwcm9wZXJ0aWVzLlxuICAgKiBUaGUgcmV0dXJuZWQgb2JqZWN0IG1heSBhbHNvIGluY2x1ZGUgYWRkaXRpb25hbCBwcm9wZXJ0aWVzIGRlZmluZWQgYnkgdGhlIGBGaWx0ZXJDaGlwYCB0eXBlIGFzIHBhcnRpYWxzLlxuICAgKi9cbiAgcmVtb3ZlPzogKCkgPT4gUGFydGlhbEZpbHRlckNoaXBSZW1vdmFsVHlwZTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcGFydGlhbCBmaWx0ZXIgY2hpcCB3aXRoIGVpdGhlciAnY29sdW1uTmFtZScgYW5kICdleHRlcm5hbEZpbHRlclF1ZXJ5JyBvciAnY29sdW1uTmFtZScgYW5kICdmaWx0ZXJQcmVkaWNhdGUnLlxuICogQHR5cGVkZWYge09iamVjdH0gUGFydGlhbEZpbHRlckNoaXBSZW1vdmFsVHlwZVxuICogQHByb3BlcnR5IHtzdHJpbmd9IGNvbHVtbk5hbWUgLSBUaGUgY29sdW1uIG5hbWUgZm9yIHRoZSBmaWx0ZXIgY2hpcC5cbiAqIEBwcm9wZXJ0eSB7YW55fSBbZXh0ZXJuYWxGaWx0ZXJRdWVyeV0gLSBUaGUgZXh0ZXJuYWwgZmlsdGVyIHF1ZXJ5IGZvciB0aGUgY2hpcCB1c2VkIGZvciBjb21wbGV4IGZpbHRlcnMuXG4gKiBAcHJvcGVydHkge2FueX0gW2ZpbHRlclByZWRpY2F0ZV0gLSBUaGUgZmlsdGVyaW5nIHByZWRpY2F0ZSBmb3IgdGhlIGNoaXAgdXNlZCBmb3Igc2ltcGxlIGZpbHRlcnMgd2l0aCBjbGllbnQtc2lkZSBmaWx0ZXJpbmcuXG4gKiBAcHJvcGVydHkgey4uLkZpbHRlckNoaXB9IFtvcHRpb25hbFByb3BlcnRpZXNdIC0gT3B0aW9uYWwgcHJvcGVydGllcyBmcm9tIHRoZSBGaWx0ZXJDaGlwIHR5cGUuXG4gKi9cbmV4cG9ydCB0eXBlIFBhcnRpYWxGaWx0ZXJDaGlwUmVtb3ZhbFR5cGUgPSAoXG4gIHwgUmVxdWlyZWQ8UGljazxGaWx0ZXJDaGlwLCAnY29sdW1uTmFtZScgfCAnZXh0ZXJuYWxGaWx0ZXJRdWVyeSc+PlxuICB8IFJlcXVpcmVkPFBpY2s8RmlsdGVyQ2hpcCwgJ2NvbHVtbk5hbWUnIHwgJ2ZpbHRlclByZWRpY2F0ZSc+PlxuKSAmXG4gIFBhcnRpYWw8RmlsdGVyQ2hpcD47XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHBhcnRpYWwgZmlsdGVyIGNoaXAgd2l0aCByZXF1aXJlZCBwcm9wZXJ0aWVzICdkaXNwbGF5VmFsdWUnIGFuZCAndmFsdWUnLlxuICogQHR5cGVkZWYge09iamVjdH0gUGFydGlhbEZpbHRlckNoaXBHZW5lcmF0aW9uVHlwZVxuICogQHByb3BlcnR5IHtzdHJpbmd9IGRpc3BsYXlWYWx1ZSAtIFRoZSBkaXNwbGF5IHZhbHVlIGZvciB0aGUgZmlsdGVyIGNoaXAuXG4gKiBAcHJvcGVydHkge2FueX0gdmFsdWUgLSBUaGUgdmFsdWUgZm9yIHRoZSBmaWx0ZXIgY2hpcC5cbiAqIEBwcm9wZXJ0eSB7Li4uRmlsdGVyQ2hpcH0gW29wdGlvbmFsUHJvcGVydGllc10gLSBPcHRpb25hbCBwcm9wZXJ0aWVzIGZyb20gdGhlIEZpbHRlckNoaXAgdHlwZS5cbiAqL1xuZXhwb3J0IHR5cGUgUGFydGlhbEZpbHRlckNoaXBHZW5lcmF0aW9uVHlwZSA9IFJlcXVpcmVkPFBpY2s8RmlsdGVyQ2hpcCwgJ2Rpc3BsYXlWYWx1ZScgfCAndmFsdWUnPj4gJlxuICBQYXJ0aWFsPEZpbHRlckNoaXA+O1xuXG4vKipcbiAqIERlZmluZXMgYW4gaW50ZXJmYWNlIGZvciBhIG1hcHBlciBmdW5jdGlvbiB0aGF0IG1hcHMgYSBgRm9ybWx5RmllbGRDb25maWdgIHRvIGEgYEZpbHRlckNoaXBgLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEZpbHRlck1hcHBlciB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvciB0eXBlcyBvZiB0aGUgYEZvcm1seUZpZWxkQ29uZmlnYCB0aGF0IHRoaXMgbWFwcGVyIGFwcGxpZXMgdG8uXG4gICAqL1xuICBmaWVsZFR5cGU6IHN0cmluZ1tdIHwgc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNYXBzIGEgYEZvcm1seUZpZWxkQ29uZmlnYCBhbmQgYSBgRmlsdGVyQ2hpcGAgdG8gYW4gYE9ic2VydmFibGVgIG9mIGEgYEZpbHRlckNoaXBgLlxuICAgKlxuICAgKiBUaGlzIGZ1bmN0aW9uIGV4dGVuZHMgdGhlIHByb3ZpZGVkIGBGaWx0ZXJDaGlwYCBvYmplY3Qgd2l0aCBhZGRpdGlvbmFsIHByb3BlcnRpZXMgYmFzZWQgb24gdGhlIGluZm9ybWF0aW9uIGluIHRoZSBgRm9ybWx5RmllbGRDb25maWdgLlxuICAgKiBUaGUgbWFwcGluZyBwcm9jZXNzIGRlcGVuZHMgb24gdGhlIHNwZWNpZmljIGltcGxlbWVudGF0aW9uIG9mIHRoZSBgRmlsdGVyTWFwcGVyYC5cbiAgICpcbiAgICogQHBhcmFtIGZpZWxkIC0gVGhlIGBGb3JtbHlGaWVsZENvbmZpZ2AgdG8gbWFwLlxuICAgKiBAcGFyYW0gZmlsdGVyIC0gVGhlIGBGaWx0ZXJDaGlwYCB0byBtYXAuXG4gICAqIEByZXR1cm5zIEFuIGBPYnNlcnZhYmxlYCB0aGF0IGVtaXRzIHRoZSBtYXBwZWQgYEZpbHRlckNoaXBgLlxuICAgKiBJZiB1bmRlZmluZWQgaXMgcmV0dXJuZWQgYW4gZXJyb3IgaXMgdGhyb3duIGFuZCB0aGUgY2hpcCBpcyBub3QgdmlzdWFsaXplZC5cbiAgICpcbiAgICogYGBgdHlwZXNjcmlwdFxuICAgKiAvLyBFeGFtcGxlIGltcGxlbWVudGF0aW9uIG9mIGBtYXBgIGZ1bmN0aW9uIGluIGEgYEZpbHRlck1hcHBlcmBcbiAgICogbWFwKGZpZWxkOiBGb3JtbHlGaWVsZENvbmZpZywgZmlsdGVyOiBGaWx0ZXJDaGlwKTogT2JzZXJ2YWJsZTxGaWx0ZXJDaGlwPiB7XG4gICAqICAgaWYgKHRoaXMuZmllbGRUeXBlLmluY2x1ZGVzKGZpZWxkLnR5cGUudG9TdHJpbmcoKSkpIHtcbiAgICogICAgIHJldHVybiB0b09ic2VydmFibGUoZmllbGQudGVtcGxhdGVPcHRpb25zLm9wdGlvbnMpLnBpcGUoXG4gICAqICAgICAgIG1hcChvcHRpb25zID0+IHtcbiAgICogICAgICAgICBjb25zdCBvYmplY3QgPSBvcHRpb25zLmZpbmQob3B0aW9uID0+IG9wdGlvbi52YWx1ZSA9PT0gZ2V0KGZpbHRlci5leHRlcm5hbEZpbHRlclF1ZXJ5LCBmaWx0ZXIucGF0aCkpO1xuICAgKiAgICAgICAgIHJldHVybiB7XG4gICAqICAgICAgICAgICAuLi5maWx0ZXIsXG4gICAqICAgICAgICAgICB2YWx1ZTogb2JqZWN0LFxuICAgKiAgICAgICAgICAgZGlzcGxheVZhbHVlOiBvYmplY3Q/LmxhYmVsXG4gICAqICAgICAgICAgfTtcbiAgICogICAgICAgfSlcbiAgICogICAgICk7XG4gICAqICAgfVxuICAgKiB9XG4gICAqIGBgYFxuICAgKi9cbiAgbWFwOiAoZmllbGQ6IEZvcm1seUZpZWxkQ29uZmlnLCBmaWx0ZXI6IEZpbHRlckNoaXApID0+IE9ic2VydmFibGU8RmlsdGVyQ2hpcD47XG59XG4iXX0=