@bizdoc/core 1.17.23 → 1.17.25

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.
@@ -594,5 +594,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
594
594
  ]
595
595
  }]
596
596
  }] });
597
- registerLicense('ORg4AjUWIQA/Gnt2VVhjQlFaclhJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRd0ViW39acHdQRGNeUkc=');
598
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvc2hhcmVkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUF1QixRQUFRLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUs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LEVBQUUsYUFBYSxFQUFFLFlBQVk7d0JBQ3JDLGVBQWUsRUFBRSx3QkFBd0I7d0JBQ3pDLGlCQUFpQjt3QkFDakIsd0JBQXdCLEVBQUUsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsdUJBQXVCO3dCQUMxSCxrQkFBa0IsRUFBRSxpQkFBaUI7d0JBQ3JDLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLHdCQUF3Qjt3QkFDdEUscUJBQXFCLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxzQkFBc0I7d0JBQ3BILG1CQUFtQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLG1CQUFtQjt3QkFDdEYseUJBQXlCO3dCQUN6QiwyQkFBMkIsRUFBRSwwQkFBMEI7d0JBQ3ZELGNBQWMsRUFBRSxlQUFlO3dCQUMvQixtQkFBbUIsRUFBRSxtQkFBbUI7d0JBQ3hDLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZiw4QkFBOEIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBRSxpQkFBaUI7cUJBQ3BIO2lCQUNGOztBQThCRCxlQUFlLENBQUMsc0ZBQXNGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFQUF9JTklUSUFMSVpFUiwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIFByb3ZpZGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IE1BVF9EQVRFX0ZPUk1BVFMgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcclxuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSwgSFRUUF9JTlRFUkNFUFRPUlMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFBpY2tlck1vZHVsZSB9IGZyb20gJ0BjdHJsL25neC1lbW9qaS1tYXJ0JztcclxuaW1wb3J0IHsgS2FuYmFuTW9kdWxlIH0gZnJvbSAnQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXIta2FuYmFuJztcclxuaW1wb3J0IHsgU2lnbmF0dXJlTW9kdWxlIH0gZnJvbSAnQHN5bmNmdXNpb24vZWoyLWFuZ3VsYXItaW5wdXRzJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvblRleHRFZGl0b3JNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvdGV4dGVkaXRvci5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uQ2hhcnRNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvY2hhcnQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkRpYWdyYW1Nb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvZGlhZ3JhbS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uR3JpZE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9ncmlkLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25DaXJjdWxhckdhdWdlTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2NpcmN1bGFyLWdhdWdlLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25QaXZvdE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9waXZvdC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uU2NoZWR1bGVNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvc2NoZWR1bGUubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvblNwcmVhZHNoZWV0TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL3NwcmVhZHNoZWV0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25HYW50dE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9nYW50dC5tb2R1bGUnO1xyXG5pbXBvcnQgeyByZWdpc3RlckxpY2Vuc2UgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYmFzZSc7XHJcbmltcG9ydCB7IERheUpzTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2RheWpzLm1vZHVsZSc7XHJcbmltcG9ydCB7IE1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL21hdGVyaWFsLm1vZHVsZSc7XHJcbmltcG9ydCB7IENvb2tpZVNlcnZpY2UgfSBmcm9tICduZ3gtY29va2llLXNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDaGF0U2VydmljZSB9IGZyb20gJy4vY2hhdC9jaGF0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBCaXpEb2NDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIgfSBmcm9tICcuL2NvcmUvY29tcG9uZW50LWZhY3RvcnktcmVzb2x2ZXInO1xyXG5pbXBvcnQgeyBIdWJTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2h1Yi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFdpbmRvd1RpdGxlU2VydmljZSB9IGZyb20gJy4vY29yZS93aW5kb3ctdGl0bGUuc2VydmljZSc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IE9wdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9vcHRpb25zL29wdGlvbnMuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25Qcm92aWRlckZhY3RvcnksIFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3Nlc3Npb24uc2VydmljZSc7XHJcbmltcG9ydCB7IEN1YmVTZXJ2aWNlIH0gZnJvbSAnLi9jdWJlL2N1YmUuc2VydmljZSc7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL21haWxib3guc2VydmljZSc7XHJcbmltcG9ydCB7IERhdGFzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2RhdGFzb3VyY2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEFjY291bnRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2FjY291bnQuc2VydmljZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVByb3ZpZGVyRmFjdG9yeSwgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJy4vY29yZS90cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEd1aWRlU2VydmljZSB9IGZyb20gJy4vY29yZS9ndWlkZS9ndWlkZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRG9jdW1lbnRJbmZvIH0gZnJvbSAnLi9jb3JlL2luZm8vZG9jdW1lbnQtaW5mby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWFwSW5mbyB9IGZyb20gXCIuL2NvcmUvaW5mby9tYXAtaW5mb1wiO1xyXG5pbXBvcnQgeyBDdWJlSW5mbyB9IGZyb20gXCIuL2N1YmUvY3ViZS1pbmZvLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgQ2hhdEluZm8gfSBmcm9tICcuL2NoYXQvY2hhdC1pbmZvJztcclxuaW1wb3J0IHsgQXR0YWNobWVudEluZm8gfSBmcm9tICcuL2NvcmUvaW5mby9hdHRhY2htZW50LWluZm8uc2VydmljZSc7XHJcbmltcG9ydCB7IFBvcHVwIH0gZnJvbSBcIi4vY29yZS9wb3B1cC9wb3B1cC5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7IE5nUm91dGVyLCBQYW5lUm91dGVyLCBSb3V0ZXJJbXBsIH0gZnJvbSAnLi9jb3JlL3JvdXRlcic7XHJcbmltcG9ydCB7IEV4cGFuZGVkSXRlbUNvbXBvbmVudCB9IGZyb20gJy4vYnJvd3NlL2V4cGFuZGVkLWl0ZW0vZXhwYW5kZWQtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb250YWN0c0NvbXBvbmVudCwgSHRtbFNpbXBsZVBpcGUgfSBmcm9tICcuL2NoYXQvY29udGFjdHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29udmVyc2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jaGF0L2NvbnZlcnNhdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBc3NpZ25BY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL2Fzc2lnbi1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmV0dXJuQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2FjdGlvbi9yZXR1cm4tYWN0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL2F0dGFjaG1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByb2dyZXNzRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL3Byb2dyZXNzLWJ1dHRvbi5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2NvbW1lbnRzL2NvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvY29tbWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvZWRpdC1jb21tZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1lbnRFZGl0c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9lZGl0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50TGlrZXNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvdm90ZXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9jdW1lbnRFdmVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvZXZlbnRzL2V2ZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTYXZlQ2hhbmdlc0RpYWxvZyB9IGZyb20gJy4vY29yZS9zYXZlLWNoYW5nZXMuZGlhbG9nJztcclxuaW1wb3J0IHsgVGFnc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90YWcvdGFncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQZW9wbGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvdHJhY2UvcGVvcGxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZlcnNpb25Db21wYXJlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL3ZlcnNpb24tY29tcGFyZS92ZXJzaW9uLWNvbXBhcmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbkFuaW1hdGUgfSBmcm9tICcuL2NvcmUvYW5pbWF0ZWQtaWNvbi9hbmltYXRlZC1pY29uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEd1aWRlQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2d1aWRlL2d1aWRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hcENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9pbmZvL2xvY2F0aW9uLWluZm8uY29tcG9uZW50JztcclxuaW1wb3J0IHsgTGF5b3V0Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2xheW91dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdXRvY29tcGxldGVGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvYXV0b2NvbXBsZXRlLmZpZWxkJztcclxuaW1wb3J0IHsgQ2hlY2tib3hGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvY2hlY2tib3guZmllbGQnO1xyXG5pbXBvcnQgeyBEYXRlUmFuZ2VGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvZGF0ZS1yYW5nZS5maWVsZCc7XHJcbmltcG9ydCB7IERhdGVGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvZGF0ZS5maWVsZCc7XHJcbmltcG9ydCB7IEV4cHJlc3Npb25GaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvZXhwcmVzc2lvbi5maWVsZCc7XHJcbmltcG9ydCB7IEh0bWxGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvaHRtbC5maWVsZCc7XHJcbmltcG9ydCB7IElucHV0RmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL2lucHV0LmZpZWxkJztcclxuaW1wb3J0IHsgTnVtZXJpY0ZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9udW1lcmljLmZpZWxkJztcclxuaW1wb3J0IHsgU2VsZWN0RmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL3NlbGVjdC5maWVsZCc7XHJcbmltcG9ydCB7IFN3aXRjaEZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9zd2l0Y2guZmllbGQnO1xyXG5pbXBvcnQgeyBGaWxlRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL2ZpbGUuZmllbGQnO1xyXG5pbXBvcnQgeyBUZXh0YXJlYUZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy90ZXh0YXJlYS5maWVsZCc7XHJcbmltcG9ydCB7IFRpbWVzcGFuRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL3RpbWVzcGFuLmZpZWxkJztcclxuaW1wb3J0IHsgWWVzTm9GaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMveWVzbm8uZmllbGQnO1xyXG5pbXBvcnQgeyBDaGVja2xpc3RGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvY2hlY2tsaXN0LmZpZWxkJztcclxuaW1wb3J0IHsgUmFkaW9CdXR0b25GaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvcmFkaW8tYnV0dG9uLmZpZWxkJztcclxuaW1wb3J0IHsgQWRkcmVzc0ZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9hZGRyZXNzLmZpZWxkJztcclxuaW1wb3J0IHsgU2lnbmF0dXJlRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL3NpZ25hdHVyZS5maWVsZCc7XHJcbmltcG9ydCB7IExvdHRpZUFuaW1hdGlvbiB9IGZyb20gJy4vY29yZS9sb3R0aWUtYW5pbWF0aW9uJztcclxuaW1wb3J0IHsgTmd4Q29tcG9uZW50T3V0bGV0IH0gZnJvbSAnLi9jb3JlL05nQ29tcG9uZW50T3V0bGV0JztcclxuaW1wb3J0IHsgTm9uZUNvbXBvbmVudCB9IGZyb20gJy4vY29yZS9ub25lLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBvcHVwQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3BvcHVwL3BvcHVwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFza0RpYWxvZyB9IGZyb20gJy4vY29yZS9wcm9tcHQvYXNrL2Fzay5kaWFsb2cnO1xyXG5pbXBvcnQgeyBNYXNrQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3Byb21wdC9tYXNrL21hc2suY29tcG9uZW50JztcclxuaW1wb3J0IHsgRG9jdW1lbnRUYWdnaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvZG9jdW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEVkaXRJbnB1dENvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWdnaW5nL2VkaXQtaW5wdXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRW1vamlIb3N0Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvZW1vamkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVGFnZ2luZ0l0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy90YWdnaW5nLWl0ZW0uZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGFnZ2luZ0RpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS90YWdnaW5nL3RhZ2dpbmcuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGFnZ2luZ1BpcGUgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy90YWdnaW5nLnBpcGUnO1xyXG5pbXBvcnQgeyBVc2VyVGFnZ2luZ0NvbXBvbmVudCB9IGZyb20gJy4vY29yZS90YWdnaW5nL3VzZXJzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9leHBsb3JlL2RvY3VtZW50LWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRmlsdGVyVGFnc0NvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9maWx0ZXIvZmlsdGVyLXRhZ3MuY29tcG9uZW50LmV4cCc7XHJcbmltcG9ydCB7IEN1YmVBY2N1bXVsYXRpb25DaGFydENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9hY2N1bS9hY2N1bS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlQ2hhcnRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvY2hhcnQvY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUdyaWRDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZ3JpZC9ncmlkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVTcHJlYWRzaGVldENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9ncmlkL3NwcmVhZHNoZWV0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVQaXZvdENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9waXZvdC9waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlTWF0cml4UG9wdXBDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvbWF0cml4L3BvcHVwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVNYXRyaXhDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvbWF0cml4L3RhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERhc2hib2FyZENvbXBvbmVudCB9IGZyb20gJy4vZGFzaGJvYXJkL2Rhc2hib2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25zV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvYWN0aW9ucy9hY3Rpb25zLndpZGdldCc7XHJcbmltcG9ydCB7IEN1YmVBY2N1bUFuYWx5c2lzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9hY2N1bS1jdWJlLndpZGdldCc7XHJcbmltcG9ydCB7IEN1YmVBbmFseXNpc1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvY3ViZS1hbmFseXNpcy53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlQ2hhcnRBbmFseXNpc1dpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvY3ViZS1jaGFydC53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9kb2N1bWVudHMud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZVdpZGdldEZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvZmlsdGVyL2ZpbHRlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZWNlbnRzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvcmVjZW50cy9yZWNlbnRzLndpZGdldCc7XHJcbmltcG9ydCB7IFBlcnNvbmFsQWN0aXZpdHlXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9zY29yZS9hY3Rpdml0eS53aWRnZXQnO1xyXG5pbXBvcnQgeyBDb21wYXJlR3JvdXBzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvY29tcGFyZS1ncm91cHMud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVlcnNQZXJmb3JtYW5jZVdpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3Njb3JlL3BlZXJzLXBlcmZvcm1hbmNlLndpZGdldCc7XHJcbmltcG9ydCB7IFBlbmRpbmdSZXN1bHRzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvcGVuZGluZy1yZXN1bHRzLndpZGdldCc7XHJcbmltcG9ydCB7IFBlcnNvbmFsU2NvcmVXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9zY29yZS9wZXJzb25hbC1zY29yZS53aWRnZXQnO1xyXG5pbXBvcnQgeyBBYm91dERpYWxvZyB9IGZyb20gJy4vaG9tZS9hYm91dC9hYm91dC5kaWFsb2cnO1xyXG5pbXBvcnQgeyBJbXBlcnNvbmF0ZURpYWxvZyB9IGZyb20gJy4vaW1wZXJzb25hdGUvaW1wZXJzb25hdGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudGVkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2NvbW1lbnRlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBDdWJlQW5vbWFseU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9jdWJlLWFub21hbHkubm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgRXNjYWxhdGVkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2VzY2FsYXRlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBMaWtlZE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9saWtlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBMb25nUnVubmluZ1Rhc2tOb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvbG9uZy1ydW5uaW5nLXRhc2subm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgTnVkZ2VOb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvbnVkZ2Uubm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgU3RhdGVDaGFuZ2VkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL3N0YXRlLWNoYW5nZWQubm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgVGFnZ2VkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL3RhZ2dlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBUZXh0Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL3RleHQubm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgVXBjb21pbmdFdmVudE5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy91cGNvbWluZy1ldmVudC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zVGFibGVDb21wb25lbnQgfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy10YWJsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOb3RpZmljYXRpb25zRmlsdGVyQ29tcG9uZW50IH0gZnJvbSBcIi4vbm90aWZpY2F0aW9ucy9maWx0ZXIuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IE9wdGlvbnNDb21wb25lbnQgfSBmcm9tICcuL29wdGlvbnMvb3B0aW9ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXBvcnRBcmd1bWVudHNDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvYXJndW1lbnRzLWNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudHNHcmlkQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvZ3JpZC1kb2N1bWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZURvY3VtZW50c1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvdGFibGUtZG9jdW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzYWdlUmVwb3J0QXJncyB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLWFyZ3MuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNhZ2VDaGFydENvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLWNoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFVzYWdlUGl2b3RDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS91c2FnZS1waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTdWJzdGl0dXRpb25Db21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvc3Vic3RpdHV0aW9uL3N1YnN0aXR1dGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWJsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvdGFibGUvdGFibGUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYXNrc0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy90YXNrcy90YXNrcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25QaWNrZXIgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL2FjdGlvbi1waWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXBwSHR0cEludGVyY2VwdG9yIH0gZnJvbSAnLi9jb3JlL2h0dHAuaW50ZXJjZXB0b3InO1xyXG5pbXBvcnQgeyBUaW1lc3BhbklucHV0IH0gZnJvbSAnLi9jb3JlL2lucHV0cy90aW1lc3Bhbi5pbnB1dCc7XHJcbmltcG9ydCB7IEFkZHJlc3NJbnB1dCB9IGZyb20gJy4vY29yZS9pbnB1dHMvYWRkcmVzcy5pbnB1dCc7XHJcbmltcG9ydCB7IFR5cGVTZWxlY3QgfSBmcm9tICcuL2NvcmUvaW5wdXRzL3NlbGVjdC5pbnB1dCc7XHJcbmltcG9ydCB7IFNpZ25hdHVyZSB9IGZyb20gJy4vY29yZS9pbnB1dHMvc2lnbmF0dXJlLmlucHV0JztcclxuaW1wb3J0IHsgVHlwZUF1dG9jb21wbGV0ZSB9IGZyb20gJy4vY29yZS9pbnB1dHMvYXV0by1jb21wbGV0ZS5pbnB1dCc7XHJcbmltcG9ydCB7IEZpbGVJbnB1dCB9IGZyb20gJy4vY29yZS9pbnB1dHMvZmlsZS5pbnB1dCc7XHJcbmltcG9ydCB7IFRpbWVQaWNrZXIgfSBmcm9tICcuL2NvcmUvaW5wdXRzL3RpbWUtcGlja2VyJztcclxuaW1wb3J0IHsgQ29tYmluYXRpb25QaWNrZXJCb2R5IH0gZnJvbSAnLi9jb3JlL2lucHV0cy9jb21iaW5hdGlvbi1waWNrZXItYm9keSc7XHJcbmltcG9ydCB7IENvbWJpbmF0aW9uUGlja2VyIH0gZnJvbSAnLi9jb3JlL2lucHV0cy9jb21iaW5hdGlvbi1waWNrZXInO1xyXG5pbXBvcnQgeyBDb21iaW5hdGlvblBvb2wgfSBmcm9tICcuL2NvcmUvaW5wdXRzL2NvbWJpbmF0aW9uLXBvb2wnO1xyXG5pbXBvcnQgeyBBY2VJbnB1dCB9IGZyb20gJy4vYWRtaW4vY29yZS9hY2UuaW5wdXQnO1xyXG5pbXBvcnQgeyBJZGVudGl0eU5hbWUgfSBmcm9tICcuL2NvcmUvaWRlbnRpdHkvaWRlbnRpdHkuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXJyYXlTb3J0UGlwZSwgRmlsdGVyUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9zb3J0LnBpcGUnO1xyXG5pbXBvcnQgeyBMMThuUGlwZSwgVHJhbnNsYXRlUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvdHJhbnNsYXRlLnBpcGVcIjtcclxuaW1wb3J0IHsgRm9ybVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZm9ybS5waXBlJztcclxuaW1wb3J0IHsgUm9sZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvcm9sZS5waXBlJztcclxuaW1wb3J0IHsgSm9pblBpcGUgfSBmcm9tIFwiLi9jb3JlL3BpcGVzL2pvaW4ucGlwZVwiO1xyXG5pbXBvcnQgeyBTYW5pdGl6ZUh0bWxQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3Nhbml0aXplLWh0bWwucGlwZSc7XHJcbmltcG9ydCB7IFR5cGVWYWx1ZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdHlwZS12YWx1ZS5waXBlJztcclxuaW1wb3J0IHsgQWdvUGlwZSwgRGF0ZVJhbmdlUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvZGF0ZXJhbmdlLnBpcGVcIjtcclxuaW1wb3J0IHsgRHVyYXRpb25QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2R1cmF0aW9uLnBpcGUnO1xyXG5pbXBvcnQgeyBBY3Rpb25QaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2FjdGlvbi5waXBlJztcclxuaW1wb3J0IHsgU3RhdGVQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3N0YXRlLnBpcGUnO1xyXG5pbXBvcnQgeyBVc2VyTmFtZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdXNlci1uYW1lLnBpcGUnO1xyXG5pbXBvcnQgeyBEaWZmZXJlbmNlUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9kaWZmZXJlbmNlLnBpcGUnO1xyXG5pbXBvcnQgeyBEYXRlRm9ybWF0UGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9kYXRlLWZvcm1hdC5waXBlJztcclxuaW1wb3J0IHsgQ2FsZW5kYXJQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2NhbGVuZGFyLnBpcGUnO1xyXG5pbXBvcnQgeyBUaW1lQWdvUGlwZSwgVG9Ob3dQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3RpbWUtYWdvLnBpcGUnO1xyXG5pbXBvcnQgeyBEdXJhdGlvbkZvcm1hdFBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZHVyYXRpb24tZm9ybWF0LnBpcGUnO1xyXG5pbXBvcnQgeyBCcm93c2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jyb3dzZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRyYWNlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS90cmFjZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGbG93Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS9mbG93LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbkRpYWxvZyB9IGZyb20gJy4vY29tcG9zZS9hY3Rpb24vYWN0aW9uLmRpYWxvZyc7XHJcbmltcG9ydCB7IFJlcG9ydFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9yZXBvcnQtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF0dGFjaG1lbnRQcmV2aWV3IH0gZnJvbSAnLi9jb21wb3NlL2F0dGFjaG1lbnRzL3ByZXZpZXcvYXR0YWNobWVudC1wcmV2aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByaXZpbGVnZUhpZGRlbkRpcmVjdGl2ZSwgUHJpdmlsZWdlRGlzYWJsZWREaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvc2UvcHJpdmlsYWdlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlQ29udGV4dERpcmVjdGl2ZSwgQ29tcGFyZUdyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL3ZlcnNpb24tY29tcGFyZS92ZXJzaW9uLWNvbXBhcmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ3ViZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2N1YmUtdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21wb3NlRm9ybUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJyb3dzZUl0ZW1zQ29tcG9uZW50IH0gZnJvbSAnLi9icm93c2UvYnJvd3NlLWl0ZW1zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV4cGxvcmVJdGVtc0NvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9leHBsb3JlL2V4cGxvcmUtaXRlbXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2NoZWR1bGVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9zY2hlZHVsZXIvc2NoZWR1bGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgV2lkZ2V0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4vZGFzaGJvYXJkL3dpZGdldC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE91dE9mT2ZmaWNlVG9hc3QgfSBmcm9tICcuL2hvbWUvb3V0b2ZvZmZpY2Uvb3V0b2ZvZmZpY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgcmVnaXN0ZXJDb21wb25lbnRzIH0gZnJvbSAnLi9jb3JlL2NvbXBvbmVudC1mYWN0b3J5LXJlc29sdmVyJztcclxuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSwgVG9vbHRpcENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9wb3B1cC90b29sdGlwLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFF1aWNrQ29tbWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9xdWljay1jb21tZW50LmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBEb2N1bWVudFZpZXdzQ29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy92aWV3cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBWaWV3SXRlbUNvbXBvbmVudCB9IGZyb20gXCIuL3ZpZXdzL3ZpZXctaXRlbS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgRG9jdW1lbnRJbmZvQ29tcG9uZW50IH0gZnJvbSBcIi4vY29tcG9zZS9kb2N1bWVudC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgU2hhcmVkQ29uZmlnIH0gZnJvbSAnLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvbWF0cml4LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvdmlldy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUaW1lbGluZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL3RpbWVsaW5lL3RpbWVsaW5lLmNvbXBvbmVudC5leHAnO1xyXG5pbXBvcnQgeyBTdGF0ZURpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9zZS9zdGF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFeHBsb3JlSXRlbUltcGxDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvZXhwbG9yZS9leHBsb3JlLWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBpdm90Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9waXZvdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvc3VtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVDaGFydFZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy9jdWJlL2V4cGxvcmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9wYXJhbGxlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlU3VtQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3N1bS9zdW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBhcmFsbGVsQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3BhcmFsbGVsL3BhcmFsbGVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2NoZWNrYm94JztcclxuaW1wb3J0IHsgQ3ViZURvY3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL2RvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlVXNhZ2VDb21wb25lbnQgfSBmcm9tIFwiLi9yZXBvcnRzL2N1YmUvdXNhZ2UuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7IEN1YmVQZXJmb3JtYW5jZVdpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvY29tcGFyZS53aWRnZXQnO1xyXG5pbXBvcnQgeyBNb3ZlVG9BY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL21vdmV0by1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVscFRpcENvbXBvbmVudCB9IGZyb20gJy4vY29yZS9ndWlkZS9oZWxwLXRpcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCcm9rZW5QYWdlIH0gZnJvbSAnLi9hcHAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQm94Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9ib3gvYm94LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJvbGVzUGVyZm9ybWFuY2VDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS9yb2xlLXBlcmZvcm1hbmNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEludml0ZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9pbnZpdGUubm90aWZpY2F0aW9uJztcclxuaW1wb3J0IHsgRG9jdW1lbnRTdGF0ZVdpZGdldENvbXBvbmVudCB9IGZyb20gJy4vZGFzaGJvYXJkL2N1YmUvZG9jdW1lbnQtc3RhdGUud2lkZ2V0JztcclxuaW1wb3J0IHsgTG9jYWxpemVkU3RyaW5nUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9sb2NhbGl6ZWQtc3RyaW5nLnBpcGUnO1xyXG5pbXBvcnQgeyBCb3hGb3JtUm93Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2JveC9yb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQm94Rm9ybUNvbnRyb2xDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYm94L2NvbnRyb2wuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTG9jYWxpemVkU3RyaW5nQ29udHJvbERlc2lnbmVyLCBMb2NhbGl6ZWRTdHJpbmdGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvbG9jYWxpemVkLXN0cmluZy5maWVsZCc7XHJcbmltcG9ydCB7IFRpbWVGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvdGltZS5maWVsZCc7XHJcbi8qKiBjb25maWd1cmF0aW9uIGNvbXBvbmVuZXRzICovXHJcbmNvbnN0IENPUkVfQ09NUE9ORU5UUyA9IFtSb2xlc1BlcmZvcm1hbmNlQ29tcG9uZW50LCBDdWJlUGVyZm9ybWFuY2VXaWRnZXQsIEN1YmVQYXJhbGxlbFZpZXdDb21wb25lbnQsIEN1YmVFeHBsb3JlVmlld0NvbXBvbmVudCwgQ3ViZUNoYXJ0Vmlld0NvbXBvbmVudCwgQ3ViZURvY3VtZW50U3VtQ29tcG9uZW50LCBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQsIEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQsIEN1YmVQaXZvdFZpZXdDb21wb25lbnQsIFRpbWVsaW5lVmlld0NvbXBvbmVudCxcclxuICBTdWJzdGl0dXRpb25Db21wb25lbnQsIE1vdmVUb0FjdGlvbkNvbXBvbmVudCwgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCxcclxuICBBY3Rpb25zV2lkZ2V0LCBDdWJlQW5hbHlzaXNXaWRnZXQsIEN1YmVEb2N1bWVudHNXaWRnZXQsIFJlY2VudHNXaWRnZXQsIFBlcnNvbmFsQWN0aXZpdHlXaWRnZXQsXHJcbiAgQ29tcGFyZUdyb3Vwc1dpZGdldCwgUGVlcnNQZXJmb3JtYW5jZVdpZGdldCwgUGVuZGluZ1Jlc3VsdHNXaWRnZXQsIFBlcnNvbmFsU2NvcmVXaWRnZXQsIEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQsXHJcbiAgRG9jdW1lbnRTdGF0ZVdpZGdldENvbXBvbmVudCwgQ3ViZURvY3VtZW50c0NvbXBvbmVudCwgVGFza3NDb21wb25lbnQsIFVzYWdlUmVwb3J0QXJncywgQ3ViZVVzYWdlQ29tcG9uZW50LCBCb3hGb3JtQ29tcG9uZW50XHJcbl07XHJcblxyXG5jb25zdCBDT05UUk9MU19DT01QT05FTlRTID0gW1NpZ25hdHVyZUZpZWxkLCBBZGRyZXNzRmllbGQsIENoZWNrbGlzdEZpZWxkLCBSYWRpb0J1dHRvbkZpZWxkLFxyXG4gIFllc05vRmllbGQsIEh0bWxGaWVsZCwgRmlsZUZpZWxkLCBMb2NhbGl6ZWRTdHJpbmdGaWVsZCwgTnVtZXJpY0ZpZWxkLCBBdXRvY29tcGxldGVGaWVsZCwgQ2hlY2tib3hGaWVsZCxUaW1lRmllbGQsICBEYXRlRmllbGQsIERhdGVSYW5nZUZpZWxkLCBFeHByZXNzaW9uRmllbGQsXHJcbiAgSW5wdXRGaWVsZCwgU2VsZWN0RmllbGQsIFN3aXRjaEZpZWxkLCBUZXh0YXJlYUZpZWxkLCBUaW1lc3BhbkZpZWxkXHJcbl1cclxuLyoqIGNvbW1vbiBCaXpEb2MgY29tcG9uZW50cyAqL1xyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW0xvY2FsaXplZFN0cmluZ1BpcGUsIEhlbHBUaXBDb21wb25lbnQsIEJveEZvcm1Db21wb25lbnQsIEJveEZvcm1Sb3dDb21wb25lbnQsIEJveEZvcm1Db250cm9sQ29tcG9uZW50LFxyXG4gICAgUm9sZXNQZXJmb3JtYW5jZUNvbXBvbmVudCxcclxuICAgIEN1YmVVc2FnZUNvbXBvbmVudCxcclxuICAgIEN1YmVEb2N1bWVudHNDb21wb25lbnQsXHJcbiAgICBEYXRlRm9ybWF0UGlwZSwgQ2FsZW5kYXJQaXBlLCBEaWZmZXJlbmNlUGlwZSwgRHVyYXRpb25QaXBlLCBUaW1lQWdvUGlwZSwgVG9Ob3dQaXBlLFxyXG4gICAgSHRtbFNpbXBsZVBpcGUsXHJcbiAgICBDaGVja2JveENvbXBvbmVudCxcclxuICAgIEN1YmVQYXJhbGxlbENvbXBvbmVudCwgQ3ViZVN1bUNvbXBvbmVudCxcclxuICAgIEN1YmVQYXJhbGxlbFZpZXdDb21wb25lbnQsIEN1YmVDaGFydFZpZXdDb21wb25lbnQsIEN1YmVFeHBsb3JlVmlld0NvbXBvbmVudCwgQ3ViZURvY3VtZW50U3VtQ29tcG9uZW50LFxyXG4gICAgRXhwbG9yZUl0ZW1JbXBsQ29tcG9uZW50LCBEb2N1bWVudEluZm9Db21wb25lbnQsIERvY3VtZW50Vmlld3NDb21wb25lbnQsIFZpZXdJdGVtQ29tcG9uZW50LCBDdWJlRG9jdW1lbnRNYXRyaXhDb21wb25lbnQsXHJcbiAgICBDdWJlRG9jdW1lbnRWaWV3Q29tcG9uZW50LCBDdWJlUGl2b3RWaWV3Q29tcG9uZW50LCBBY3Rpb25QaWNrZXIsXHJcbiAgICBRdWlja0NvbW1lbnRDb21wb25lbnQsXHJcbiAgICBEdXJhdGlvbkZvcm1hdFBpcGUsIENvbWJpbmF0aW9uUGlja2VyLCBDb21iaW5hdGlvblBpY2tlckJvZHksIENvbWJpbmF0aW9uUG9vbCwgVGltZWxpbmVWaWV3Q29tcG9uZW50LFxyXG4gICAgTWF0SWNvbkFuaW1hdGUsIERhdGVSYW5nZVBpcGUsIEFnb1BpcGUsIFN0YXRlRGlyZWN0aXZlLFxyXG4gICAgSm9pblBpcGUsXHJcbiAgICBUeXBlVmFsdWVQaXBlLFxyXG4gICAgTDE4blBpcGUsIFRyYW5zbGF0ZVBpcGUsIElkZW50aXR5TmFtZSwgU2FuaXRpemVIdG1sUGlwZSxcclxuICAgIFN0YXRlUGlwZSwgQWN0aW9uUGlwZSwgUm9sZVBpcGUsIEZvcm1QaXBlLCBGaWx0ZXJQaXBlLCBBcnJheVNvcnRQaXBlLCBVc2VyTmFtZVBpcGUsXHJcbiAgICBUYWdnaW5nUGlwZSxcclxuICAgIFR5cGVTZWxlY3QsIFR5cGVBdXRvY29tcGxldGUsIFNpZ25hdHVyZSxcclxuICAgIEFjZUlucHV0LCBUaW1lc3BhbklucHV0LCBBZGRyZXNzSW5wdXQsXHJcbiAgICBGaWxlSW5wdXQsXHJcbiAgICBUaW1lUGlja2VyLFxyXG4gICAgTGF5b3V0Q29tcG9uZW50LFxyXG4gICAgVGltZUZpZWxkLCBTaWduYXR1cmVGaWVsZCwgQWRkcmVzc0ZpZWxkLCBSYWRpb0J1dHRvbkZpZWxkLCBDaGVja2xpc3RGaWVsZCwgWWVzTm9GaWVsZCwgSHRtbEZpZWxkLCBGaWxlRmllbGQsIE51bWVyaWNGaWVsZCwgQXV0b2NvbXBsZXRlRmllbGQsIENoZWNrYm94RmllbGQsIERhdGVGaWVsZCwgRGF0ZVJhbmdlRmllbGQsIEV4cHJlc3Npb25GaWVsZCxcclxuICAgIElucHV0RmllbGQsIFNlbGVjdEZpZWxkLCBTd2l0Y2hGaWVsZCwgVGV4dGFyZWFGaWVsZCwgVGltZXNwYW5GaWVsZCxcclxuICAgIFJldHVybkFjdGlvbkNvbXBvbmVudCwgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBNb3ZlVG9BY3Rpb25Db21wb25lbnQsXHJcbiAgICBBdmF0YXJDb21wb25lbnQsIFBlb3BsZUNvbXBvbmVudCwgRWRpdElucHV0Q29tcG9uZW50LFxyXG4gICAgTmd4Q29tcG9uZW50T3V0bGV0LFxyXG4gICAgTG90dGllQW5pbWF0aW9uLFxyXG4gICAgQ29udGFjdHNDb21wb25lbnQsXHJcbiAgICBDdWJlTWF0cml4Q29tcG9uZW50LCBGaWx0ZXJUYWdzQ29tcG9uZW50LCBFeHBsb3JlSXRlbXNDb21wb25lbnQsXHJcbiAgICBDb21wYXJlTmFtZURpcmVjdGl2ZSwgQ29tcGFyZUdyb3VwRGlyZWN0aXZlLCBDb21wYXJlQ29udGV4dERpcmVjdGl2ZSxcclxuICAgIEd1aWRlQ29tcG9uZW50LFxyXG4gICAgT3V0T2ZPZmZpY2VUb2FzdCxcclxuICAgIE5vdGlmaWNhdGlvbnNUYWJsZUNvbXBvbmVudCwgTm90aWZpY2F0aW9uc0ZpbHRlckNvbXBvbmVudCxcclxuICAgIFByaXZpbGVnZUhpZGRlbkRpcmVjdGl2ZSxcclxuICAgIFRhZ2dpbmdJdGVtRGlyZWN0aXZlLCBUYWdnaW5nRGlyZWN0aXZlLCBEb2N1bWVudFRhZ2dpbmdDb21wb25lbnQsIFVzZXJUYWdnaW5nQ29tcG9uZW50LFxyXG4gICAgUHJpdmlsZWdlRGlzYWJsZWREaXJlY3RpdmUsIEN1YmVEb2N1bWVudHNHcmlkQ29tcG9uZW50LFxyXG4gICAgTG9uZ1J1bm5pbmdUYXNrTm90aWZpY2F0aW9uLCBUYWdnZWROb3RpZmljYXRpb24sIENvbW1lbnRlZE5vdGlmaWNhdGlvbiwgTnVkZ2VOb3RpZmljYXRpb24sIEludml0ZU5vdGlmaWNhdGlvbiwgVGV4dE5vdGlmaWNhdGlvbiwgQ3ViZUFub21hbHlOb3RpZmljYXRpb24sIEVzY2FsYXRlZE5vdGlmaWNhdGlvbiwgTGlrZWROb3RpZmljYXRpb24sIFN0YXRlQ2hhbmdlZE5vdGlmaWNhdGlvbiwgVXBjb21pbmdFdmVudE5vdGlmaWNhdGlvbixcclxuICAgIE5vbmVDb21wb25lbnQsIFNjaGVkdWxlVmlld0NvbXBvbmVudCxcclxuICAgIE9wdGlvbnNDb21wb25lbnQsIFRyYWNlVmlld0NvbXBvbmVudCxcclxuICAgIFByb2dyZXNzRGlyZWN0aXZlLFxyXG4gICAgQXR0YWNobWVudHNDb21wb25lbnQsXHJcbiAgICBEb2N1bWVudEV2ZW50c0NvbXBvbmVudCxcclxuICAgIFRhZ3NDb21wb25lbnQsXHJcbiAgICBNYXBDb21wb25lbnQsXHJcbiAgICBNYXNrQ29tcG9uZW50LFxyXG4gICAgRmxvd1ZpZXdDb21wb25lbnQsXHJcbiAgICBTdWJzdGl0dXRpb25Db21wb25lbnQsXHJcbiAgICBQb3B1cENvbXBvbmVudCxcclxuICAgIEF0dGFjaG1lbnRQcmV2aWV3LCBDb21tZW50c0NvbXBvbmVudCwgQ29tbWVudENvbXBvbmVudCwgRWRpdENvbW1lbnRDb21wb25lbnQsIENvbW1lbnRMaWtlc0NvbXBvbmVudCwgQ29tbWVudEVkaXRzQ29tcG9uZW50LFxyXG4gICAgQnJvd3NlSXRlbXNDb21wb25lbnQsXHJcbiAgICBCcm93c2VGaWx0ZXJDb21wb25lbnQsIEV4cGFuZGVkSXRlbUNvbXBvbmVudCxcclxuICAgIENvbXBvc2VGb3JtQ29tcG9uZW50LFxyXG4gICAgQ3ViZVZpZXdDb21wb25lbnQsXHJcbiAgICBDdWJlRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgQ3ViZUFjY3VtdWxhdGlvbkNoYXJ0Q29tcG9uZW50LCBDdWJlQ2hhcnRDb21wb25lbnQsIEN1YmVQaXZvdENvbXBvbmVudCwgQ3ViZVNwcmVhZHNoZWV0Q29tcG9uZW50LCBDdWJlR3JpZENvbXBvbmVudCxcclxuICAgIFJlcG9ydFZpZXdlckNvbXBvbmVudCwgVGFibGVWaWV3Q29tcG9uZW50LCBSZXBvcnRBcmd1bWVudHNDb21wb25lbnQsXHJcbiAgICBEYXNoYm9hcmRDb21wb25lbnQsIFdpZGdldEl0ZW1Db21wb25lbnQsXHJcbiAgICBDdWJlV2lkZ2V0RmlsdGVyQ29tcG9uZW50LFxyXG4gICAgU2F2ZUNoYW5nZXNEaWFsb2csXHJcbiAgICBBc2tEaWFsb2csIEFib3V0RGlhbG9nLCBBY3Rpb25EaWFsb2csXHJcbiAgICBJbXBlcnNvbmF0ZURpYWxvZyxcclxuICAgIENvbnZlcnNhdGlvbkNvbXBvbmVudCwgQ3ViZU1hdHJpeFBvcHVwQ29tcG9uZW50LFxyXG4gICAgVmVyc2lvbkNvbXBhcmVDb21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCwgVGFza3NDb21wb25lbnQsXHJcbiAgICBDdWJlRG9jdW1lbnRzVGFibGVDb21wb25lbnQsXHJcbiAgICBDdWJlUGVyZm9ybWFuY2VXaWRnZXQsIEN1YmVBY2N1bUFuYWx5c2lzV2lkZ2V0LCBDdWJlQW5hbHlzaXNXaWRnZXQsIEN1YmVDaGFydEFuYWx5c2lzV2lkZ2V0LCBBY3Rpb25zV2lkZ2V0LCBSZWNlbnRzV2lkZ2V0LFxyXG4gICAgUGVuZGluZ1Jlc3VsdHNXaWRnZXQsIENvbXBhcmVHcm91cHNXaWRnZXQsIEN1YmVEb2N1bWVudHNXaWRnZXQsXHJcbiAgICBEb2N1bWVudFN0YXRlV2lkZ2V0Q29tcG9uZW50LCBQZXJzb25hbFNjb3JlV2lkZ2V0LCBQZXJzb25hbEFjdGl2aXR5V2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LFxyXG4gICAgVXNhZ2VQaXZvdENvbXBvbmVudCwgVXNhZ2VDaGFydENvbXBvbmVudCwgVXNhZ2VSZXBvcnRBcmdzLFxyXG4gICAgRW1vamlIb3N0Q29tcG9uZW50LCBUb29sdGlwRGlyZWN0aXZlLCBUb29sdGlwQ29tcG9uZW50LCBCcm9rZW5QYWdlXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBEYXlKc01vZHVsZSxcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEh0dHBDbGllbnRNb2R1bGUsXHJcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxyXG4gICAgUm91dGVyTW9kdWxlLFxyXG4gICAgUGlja2VyTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvbkdhbnR0TW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvblNjaGVkdWxlTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvbkNpcmN1bGFyR2F1Z2VNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uQ2hhcnRNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uR2FudHRNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uR3JpZE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25UZXh0RWRpdG9yTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvblNwcmVhZHNoZWV0TW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvblBpdm90TW9kdWxlLFxyXG4gICAgU2lnbmF0dXJlTW9kdWxlLFxyXG4gICAgS2FuYmFuTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvbkRpYWdyYW1Nb2R1bGUsXHJcbiAgICBNYXRlcmlhbE1vZHVsZVxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbUG9wdXAsXHJcbiAgICBDb29raWVTZXJ2aWNlLFxyXG4gICAgRG9jdW1lbnRJbmZvLCBBdHRhY2htZW50SW5mbywgTWFwSW5mbywgQ3ViZUluZm8sXHJcbiAgICBNYWlsYm94U2VydmljZSwgU2Vzc2lvblNlcnZpY2UsIEh1YlNlcnZpY2UsXHJcbiAgICBDdWJlU2VydmljZSwgRGF0YXNvdXJjZVNlcnZpY2UsXHJcbiAgICBEYXRlUmFuZ2VQaXBlLCBBZ29QaXBlLCBEdXJhdGlvbkZvcm1hdFBpcGUsXHJcbiAgICBXaW5kb3dUaXRsZVNlcnZpY2UsIE5vdGlmaWNhdGlvbnNTZXJ2aWNlLFxyXG4gICAgQWNjb3VudFNlcnZpY2UsIENoYXRTZXJ2aWNlLCBDaGF0SW5mbyxcclxuICAgIEd1aWRlU2VydmljZSwgT3B0aW9uc1NlcnZpY2UsXHJcbiAgICBCaXpEb2NDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsIFByb21wdFNlcnZpY2UsIFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICAvL3sgcHJvdmlkZTogTE9DQUxFX0lELCB1c2VDbGFzczogU2Vzc2lvblNlcnZpY2UuZ2V0TG9jYWxlKCkgfSxcclxuICAgIHsgcHJvdmlkZTogSFRUUF9JTlRFUkNFUFRPUlMsIHVzZUNsYXNzOiBBcHBIdHRwSW50ZXJjZXB0b3IsIG11bHRpOiB0cnVlIH0sXHJcbiAgICB7IHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUiwgdXNlRmFjdG9yeTogVHJhbnNsYXRlUHJvdmlkZXJGYWN0b3J5LCBkZXBzOiBbVHJhbnNsYXRlU2VydmljZV0sIG11bHRpOiB0cnVlIH0sXHJcbiAgICB7IHByb3ZpZGU6IEFQUF9JTklUSUFMSVpFUiwgdXNlRmFjdG9yeTogU2Vzc2lvblByb3ZpZGVyRmFjdG9yeSwgZGVwczogW1Nlc3Npb25TZXJ2aWNlXSwgbXVsdGk6IHRydWUgfVxyXG4gIF0sXHJcbiAgZXhwb3J0czogW1xyXG4gICAgTG9jYWxpemVkU3RyaW5nUGlwZSxcclxuICAgIE1hdGVyaWFsTW9kdWxlLFxyXG4gICAgQnJva2VuUGFnZSxcclxuICAgIEhlbHBUaXBDb21wb25lbnQsXHJcbiAgICBGaWx0ZXJUYWdzQ29tcG9uZW50LFxyXG4gICAgRGF0ZUZvcm1hdFBpcGUsIENhbGVuZGFyUGlwZSwgRGlmZmVyZW5jZVBpcGUsIER1cmF0aW9uUGlwZSwgVGltZUFnb1BpcGUsIFRvTm93UGlwZSxcclxuICAgIENoZWNrYm94Q29tcG9uZW50LCBDdWJlUGFyYWxsZWxDb21wb25lbnQsIEN1YmVTdW1Db21wb25lbnQsIEV4cGxvcmVJdGVtSW1wbENvbXBvbmVudCwgRG9jdW1lbnRJbmZvQ29tcG9uZW50LCBEb2N1bWVudFZpZXdzQ29tcG9uZW50LFxyXG4gICAgRGFzaGJvYXJkQ29tcG9uZW50LFxyXG4gICAgVGFnc0NvbXBvbmVudCwgUXVpY2tDb21tZW50Q29tcG9uZW50LFxyXG4gICAgQ29tbWVudHNDb21wb25lbnQsXHJcbiAgICBMYXlvdXRDb21wb25lbnQsXHJcbiAgICBBY3Rpb25EaWFsb2csXHJcbiAgICBCcm93c2VGaWx0ZXJDb21wb25lbnQsIEN1YmVGaWx0ZXJDb21wb25lbnQsIFNjaGVkdWxlVmlld0NvbXBvbmVudCwgUmVwb3J0Vmlld2VyQ29tcG9uZW50LCBXaWRnZXRJdGVtQ29tcG9uZW50LCBDdWJlVmlld0NvbXBvbmVudCxcclxuICAgIEV4cGxvcmVJdGVtc0NvbXBvbmVudCwgQ29tcG9zZUZvcm1Db21wb25lbnQsIEJyb3dzZUl0ZW1zQ29tcG9uZW50LCBOb3RpZmljYXRpb25zVGFibGVDb21wb25lbnQsXHJcbiAgICBBY3Rpb25QaWNrZXIsIENvbnZlcnNhdGlvbkNvbXBvbmVudCxcclxuICAgIFN0YXRlRGlyZWN0aXZlLFxyXG4gICAgQ29udGFjdHNDb21wb25lbnQsXHJcbiAgICBDdWJlTWF0cml4Q29tcG9uZW50LFxyXG4gICAgTmd4Q29tcG9uZW50T3V0bGV0LCBNYXRJY29uQW5pbWF0ZSxcclxuICAgIFRvb2x0aXBEaXJlY3RpdmUsXHJcbiAgICBUaW1lc3BhbklucHV0LFxyXG4gICAgRmlsZUlucHV0LFxyXG4gICAgQWRkcmVzc0lucHV0LFxyXG4gICAgQWNlSW5wdXQsXHJcbiAgICBDb21iaW5hdGlvblBpY2tlciwgQ29tYmluYXRpb25Qb29sLFxyXG4gICAgVHlwZVNlbGVjdCwgVHlwZUF1dG9jb21wbGV0ZSxcclxuICAgIFRpbWVQaWNrZXIsXHJcbiAgICBEdXJhdGlvbkZvcm1hdFBpcGUsXHJcbiAgICBEYXRlUmFuZ2VQaXBlLFxyXG4gICAgVHlwZVZhbHVlUGlwZSxcclxuICAgIEpvaW5QaXBlLFxyXG4gICAgU3RhdGVQaXBlLCBBY3Rpb25QaXBlLCBSb2xlUGlwZSwgRm9ybVBpcGUsIEZpbHRlclBpcGUsIEFycmF5U29ydFBpcGUsIFVzZXJOYW1lUGlwZSwgU2FuaXRpemVIdG1sUGlwZSxcclxuICAgIEwxOG5QaXBlLCBUcmFuc2xhdGVQaXBlLCBJZGVudGl0eU5hbWUsXHJcbiAgICBBdmF0YXJDb21wb25lbnQsIFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCxcclxuICAgIEF0dGFjaG1lbnRQcmV2aWV3LFxyXG4gICAgUHJpdmlsZWdlSGlkZGVuRGlyZWN0aXZlLCBQcml2aWxlZ2VEaXNhYmxlZERpcmVjdGl2ZSwgQ29tcGFyZUdyb3VwRGlyZWN0aXZlLCBDb21wYXJlTmFtZURpcmVjdGl2ZSwgQ29tcGFyZUNvbnRleHREaXJlY3RpdmUsXHJcbiAgICBUcmFjZVZpZXdDb21wb25lbnQsIEZsb3dWaWV3Q29tcG9uZW50LFxyXG4gICAgQXNzaWduQWN0aW9uQ29tcG9uZW50LCBSZXR1cm5BY3Rpb25Db21wb25lbnQsIEV4cGxvcmVEb2N1bWVudENvbXBvbmVudCxcclxuICAgIEN1YmVQZXJmb3JtYW5jZVdpZGdldCwgQWN0aW9uc1dpZGdldCwgQ3ViZUFuYWx5c2lzV2lkZ2V0LCBDdWJlRG9jdW1lbnRzV2lkZ2V0LCBSZWNlbnRzV2lkZ2V0LCBQZXJzb25hbEFjdGl2aXR5V2lkZ2V0LFxyXG4gICAgQ29tcGFyZUdyb3Vwc1dpZGdldCwgUGVlcnNQZXJmb3JtYW5jZVdpZGdldCwgUGVuZGluZ1Jlc3VsdHNXaWRnZXQsIFBlcnNvbmFsU2NvcmVXaWRnZXQsXHJcbiAgICBDdWJlV2lkZ2V0RmlsdGVyQ29tcG9uZW50LFxyXG4gICAgQ3ViZURvY3VtZW50c1RhYmxlQ29tcG9uZW50LCBDdWJlRG9jdW1lbnRzR3JpZENvbXBvbmVudCxcclxuICAgIFRhc2tzQ29tcG9uZW50LCBVc2FnZVJlcG9ydEFyZ3MsXHJcbiAgICBVc2FnZUNoYXJ0Q29tcG9uZW50LCBVc2FnZVBpdm90Q29tcG9uZW50LFxyXG4gICAgVmVyc2lvbkNvbXBhcmVDb21wb25lbnQsXHJcbiAgICBMb3R0aWVBbmltYXRpb24sXHJcbiAgICBDdWJlQWNjdW11bGF0aW9uQ2hhcnRDb21wb25lbnQsIEN1YmVDaGFydENvbXBvbmVudCwgQ3ViZVBpdm90Q29tcG9uZW50LCBDdWJlU3ByZWFkc2hlZXRDb21wb25lbnQsIEN1YmVHcmlkQ29tcG9uZW50XHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2hhcmVkTW9kdWxlIHtcclxuICBzdGF0aWMgZm9yQ2hpbGQoY29uZmlnPzogU2hhcmVkQ29uZmlnKTogTW9kdWxlV2l0aFByb3ZpZGVyczxTaGFyZWRNb2R1bGU+IHtcclxuICAgIGNvbnN0IHsgZm9ybWF0cywgcm91dGluZyB9ID0gY29uZmlnIHx8IHt9O1xyXG4gICAgcmVnaXN0ZXJDb21wb25lbnRzKENPUkVfQ09NUE9ORU5UUyk7XHJcbiAgICByZWdpc3RlckNvbXBvbmVudHMoQ09OVFJPTFNfQ09NUE9ORU5UUyk7XHJcbiAgICBjb25zdCBwcm92aWRlcnMgPSBbe1xyXG4gICAgICBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZToge1xyXG4gICAgICAgIHBhcnNlOiB7XHJcbiAgICAgICAgICBkYXRlSW5wdXQ6ICdMTCcsXHJcbiAgICAgICAgfSxcclxuICAgICAgICBkaXNwbGF5OiB7XHJcbiAgICAgICAgICBkYXRlSW5wdXQ6IChmb3JtYXRzIHx8IHt9KS5kYXRlIHx8ICdsbCcsXHJcbiAgICAgICAgICBtb250aFllYXJMYWJlbDogJ01NTSBZWVlZJyxcclxuICAgICAgICAgIGRhdGVBMTF5TGFiZWw6ICdMTCcsXHJcbiAgICAgICAgICBtb250aFllYXJBMTF5TGFiZWw6ICdNTU1NIFlZWVknLFxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfV0gYXMgUHJvdmlkZXJbXTtcclxuICAgIGlmIChyb3V0aW5nKVxyXG4gICAgICBwcm92aWRlcnMucHVzaCh7XHJcbiAgICAgICAgcHJvdmlkZTogUm91dGVySW1wbCwgdXNlQ2xhc3M6IHJvdXRpbmcgPT09ICduZycgPyBOZ1JvdXRlciA6IFBhbmVSb3V0ZXJcclxuICAgICAgfSk7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBuZ01vZHVsZTogU2hhcmVkTW9kdWxlLFxyXG4gICAgICBwcm92aWRlcnNcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbnJlZ2lzdGVyTGljZW5zZSgnT1JnNEFqVVdJUUEvR250MlZWaGpRbEZhY2xoSlhHRldmVkpwVEdwUWRrNXhkVjlEYVZaVVRXWS9QMVpoU1h4UmQwVmlXMzlhY0hkUVJHTmVVa2M9Jyk7XHJcbiJdfQ==
597
+ registerLicense('Mgo+DSMBaFt/QHRqVVhjVFpFdEBBXHxAd1p/VWJYdVt5flBPcDwsT3RfQF9iS3xbd0diWH1XcHBdRA==;Mgo+DSMBPh8sVXJ0S0J+XE9HflRDX3xKf0x/TGpQb19xflBPallYVBYiSV9jS3xSdEdrWH1fcXZcRmZZUw==;ORg4AjUWIQA/Gnt2VVhkQlFadVdJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRd0dhUX5ccXVXT2BUVUY=;ODMyMjA0QDMyMzAyZTM0MmUzMG80eEs4RTJnQnlWWXl6L2pENEh4UGtRQVhHY0FEWDdzbXYrdnZ2ekVpUXc9;ODMyMjA1QDMyMzAyZTM0MmUzMGRsSUhTNHJFSUxiMGR0QlBJbnpNSkdkTkNFY0l1L1c0RHRBS25Fc2RRcG89;NRAiBiAaIQQuGjN/V0Z+WE9EaFxKVmJLYVB3WmpQdldgdVRMZVVbQX9PIiBoS35RdERhW3dfcnVURGldWEx0;ODMyMjA3QDMyMzAyZTM0MmUzMEdHYkxRekwyMWJ4eXZFSkZBdnRpRHB5V2FwZXR4WmJNZkljRWJ4TFk3RHc9;ODMyMjA4QDMyMzAyZTM0MmUzMGI1Z0xOVjBNZk1PT05zMTd3WWNCUGpFV2pVMnZaWGJQM1JmU0VXY3pUU1U9;Mgo+DSMBMAY9C3t2VVhkQlFadVdJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRd0dhUX5ccXVXT2JbVkY=;ODMyMjEwQDMyMzAyZTM0MmUzMEczRS9zQ0p0UGNYaEQxVXA2L0FQcjFmQXhrOTFETlJlTU9TWE5tTzUrMWs9;ODMyMjExQDMyMzAyZTM0MmUzMFR2TnVxOHRxeXdVa0VYbWRRZm1CRGw5TzZtTGFwTVR4ZmFKb3dBRThEZ289;ODMyMjEyQDMyMzAyZTM0MmUzMEdHYkxRekwyMWJ4eXZFSkZBdnRpRHB5V2FwZXR4WmJNZkljRWJ4TFk3RHc9');
598
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhcmVkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvc2hhcmVkLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUF1QixRQUFRLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNoRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUs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LEVBQUUsYUFBYSxFQUFFLFlBQVk7d0JBQ3JDLGVBQWUsRUFBRSx3QkFBd0I7d0JBQ3pDLGlCQUFpQjt3QkFDakIsd0JBQXdCLEVBQUUsMEJBQTBCLEVBQUUscUJBQXFCLEVBQUUsb0JBQW9CLEVBQUUsdUJBQXVCO3dCQUMxSCxrQkFBa0IsRUFBRSxpQkFBaUI7d0JBQ3JDLHFCQUFxQixFQUFFLHFCQUFxQixFQUFFLHdCQUF3Qjt3QkFDdEUscUJBQXFCLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFFLG1CQUFtQixFQUFFLGFBQWEsRUFBRSxzQkFBc0I7d0JBQ3BILG1CQUFtQixFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFFLG1CQUFtQjt3QkFDdEYseUJBQXlCO3dCQUN6QiwyQkFBMkIsRUFBRSwwQkFBMEI7d0JBQ3ZELGNBQWMsRUFBRSxlQUFlO3dCQUMvQixtQkFBbUIsRUFBRSxtQkFBbUI7d0JBQ3hDLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZiw4QkFBOEIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSx3QkFBd0IsRUFBRSxpQkFBaUI7cUJBQ3BIO2lCQUNGOztBQThCRCxlQUFlLENBQUMseS9CQUF5L0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVBQX0lOSVRJQUxJWkVSLCBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSwgUHJvdmlkZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50TW9kdWxlLCBIVFRQX0lOVEVSQ0VQVE9SUyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgUGlja2VyTW9kdWxlIH0gZnJvbSAnQGN0cmwvbmd4LWVtb2ppLW1hcnQnO1xyXG5pbXBvcnQgeyBLYW5iYW5Nb2R1bGUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1rYW5iYW4nO1xyXG5pbXBvcnQgeyBTaWduYXR1cmVNb2R1bGUgfSBmcm9tICdAc3luY2Z1c2lvbi9lajItYW5ndWxhci1pbnB1dHMnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uVGV4dEVkaXRvck1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy90ZXh0ZWRpdG9yLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25DaGFydE1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9jaGFydC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uRGlhZ3JhbU1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9kaWFncmFtLm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25HcmlkTW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2dyaWQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkNpcmN1bGFyR2F1Z2VNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvY2lyY3VsYXItZ2F1Z2UubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvblBpdm90TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL3Bpdm90Lm1vZHVsZSc7XHJcbmltcG9ydCB7IFN5bmNmdXNpb25TY2hlZHVsZU1vZHVsZSB9IGZyb20gJy4vbW9kdWxlcy9zY2hlZHVsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBTeW5jZnVzaW9uU3ByZWFkc2hlZXRNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvc3ByZWFkc2hlZXQubW9kdWxlJztcclxuaW1wb3J0IHsgU3luY2Z1c2lvbkdhbnR0TW9kdWxlIH0gZnJvbSAnLi9tb2R1bGVzL2dhbnR0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IHJlZ2lzdGVyTGljZW5zZSB9IGZyb20gJ0BzeW5jZnVzaW9uL2VqMi1iYXNlJztcclxuaW1wb3J0IHsgRGF5SnNNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvZGF5anMubW9kdWxlJztcclxuaW1wb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuL21vZHVsZXMvbWF0ZXJpYWwubW9kdWxlJztcclxuaW1wb3J0IHsgQ29va2llU2VydmljZSB9IGZyb20gJ25neC1jb29raWUtc2VydmljZSc7XHJcbmltcG9ydCB7IENoYXRTZXJ2aWNlIH0gZnJvbSAnLi9jaGF0L2NoYXQuc2VydmljZSc7XHJcbmltcG9ydCB7IEJpekRvY0NvbXBvbmVudEZhY3RvcnlSZXNvbHZlciB9IGZyb20gJy4vY29yZS9jb21wb25lbnQtZmFjdG9yeS1yZXNvbHZlcic7XHJcbmltcG9ydCB7IEh1YlNlcnZpY2UgfSBmcm9tICcuL2NvcmUvaHViLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3Byb21wdC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgV2luZG93VGl0bGVTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3dpbmRvdy10aXRsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTm90aWZpY2F0aW9uc1NlcnZpY2UgfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9ucy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgT3B0aW9uc1NlcnZpY2UgfSBmcm9tICcuL29wdGlvbnMvb3B0aW9ucy5zZXJ2aWNlJztcclxuaW1wb3J0IHsgU2Vzc2lvblByb3ZpZGVyRmFjdG9yeSwgU2Vzc2lvblNlcnZpY2UgfSBmcm9tICcuL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQ3ViZVNlcnZpY2UgfSBmcm9tICcuL2N1YmUvY3ViZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgTWFpbGJveFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvbWFpbGJveC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuL2NvcmUvZGF0YXNvdXJjZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQWNjb3VudFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvYWNjb3VudC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgVHJhbnNsYXRlUHJvdmlkZXJGYWN0b3J5LCBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgR3VpZGVTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2d1aWRlL2d1aWRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBEb2N1bWVudEluZm8gfSBmcm9tICcuL2NvcmUvaW5mby9kb2N1bWVudC1pbmZvLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBNYXBJbmZvIH0gZnJvbSBcIi4vY29yZS9pbmZvL21hcC1pbmZvXCI7XHJcbmltcG9ydCB7IEN1YmVJbmZvIH0gZnJvbSBcIi4vY3ViZS9jdWJlLWluZm8uc2VydmljZVwiO1xyXG5pbXBvcnQgeyBDaGF0SW5mbyB9IGZyb20gJy4vY2hhdC9jaGF0LWluZm8nO1xyXG5pbXBvcnQgeyBBdHRhY2htZW50SW5mbyB9IGZyb20gJy4vY29yZS9pbmZvL2F0dGFjaG1lbnQtaW5mby5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9wdXAgfSBmcm9tIFwiLi9jb3JlL3BvcHVwL3BvcHVwLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgTmdSb3V0ZXIsIFBhbmVSb3V0ZXIsIFJvdXRlckltcGwgfSBmcm9tICcuL2NvcmUvcm91dGVyJztcclxuaW1wb3J0IHsgRXhwYW5kZWRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9icm93c2UvZXhwYW5kZWQtaXRlbS9leHBhbmRlZC1pdGVtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbnRhY3RzQ29tcG9uZW50LCBIdG1sU2ltcGxlUGlwZSB9IGZyb20gJy4vY2hhdC9jb250YWN0cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb252ZXJzYXRpb25Db21wb25lbnQgfSBmcm9tICcuL2NoYXQvY29udmVyc2F0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFzc2lnbkFjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9hY3Rpb24vYXNzaWduLWFjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBSZXR1cm5BY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYWN0aW9uL3JldHVybi1hY3Rpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXR0YWNobWVudHNDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYXR0YWNobWVudHMvYXR0YWNobWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJvZ3Jlc3NEaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvc2UvYXR0YWNobWVudHMvcHJvZ3Jlc3MtYnV0dG9uLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbW1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvY29tbWVudHMvY29tbWVudC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9jb21tZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFZGl0Q29tbWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy9lZGl0LWNvbW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ29tbWVudEVkaXRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2NvbW1lbnRzL2VkaXRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbW1lbnRMaWtlc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9jb21tZW50cy92b3Rlcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEb2N1bWVudEV2ZW50c0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9ldmVudHMvZXZlbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNhdmVDaGFuZ2VzRGlhbG9nIH0gZnJvbSAnLi9jb3JlL3NhdmUtY2hhbmdlcy5kaWFsb2cnO1xyXG5pbXBvcnQgeyBUYWdzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL3RhZy90YWdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBlb3BsZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS90cmFjZS9wZW9wbGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVmVyc2lvbkNvbXBhcmVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvdmVyc2lvbi1jb21wYXJlL3ZlcnNpb24tY29tcGFyZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRJY29uQW5pbWF0ZSB9IGZyb20gJy4vY29yZS9hbmltYXRlZC1pY29uL2FuaW1hdGVkLWljb24uZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgR3VpZGVDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvZ3VpZGUvZ3VpZGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWFwQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2luZm8vbG9jYXRpb24taW5mby5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMYXlvdXRDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvbGF5b3V0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEF1dG9jb21wbGV0ZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9hdXRvY29tcGxldGUuZmllbGQnO1xyXG5pbXBvcnQgeyBDaGVja2JveEZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9jaGVja2JveC5maWVsZCc7XHJcbmltcG9ydCB7IERhdGVSYW5nZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9kYXRlLXJhbmdlLmZpZWxkJztcclxuaW1wb3J0IHsgRGF0ZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9kYXRlLmZpZWxkJztcclxuaW1wb3J0IHsgRXhwcmVzc2lvbkZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9leHByZXNzaW9uLmZpZWxkJztcclxuaW1wb3J0IHsgSHRtbEZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9odG1sLmZpZWxkJztcclxuaW1wb3J0IHsgSW5wdXRGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvaW5wdXQuZmllbGQnO1xyXG5pbXBvcnQgeyBOdW1lcmljRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL251bWVyaWMuZmllbGQnO1xyXG5pbXBvcnQgeyBTZWxlY3RGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvc2VsZWN0LmZpZWxkJztcclxuaW1wb3J0IHsgU3dpdGNoRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL3N3aXRjaC5maWVsZCc7XHJcbmltcG9ydCB7IEZpbGVGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvZmlsZS5maWVsZCc7XHJcbmltcG9ydCB7IFRleHRhcmVhRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL3RleHRhcmVhLmZpZWxkJztcclxuaW1wb3J0IHsgVGltZXNwYW5GaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvdGltZXNwYW4uZmllbGQnO1xyXG5pbXBvcnQgeyBZZXNOb0ZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy95ZXNuby5maWVsZCc7XHJcbmltcG9ydCB7IENoZWNrbGlzdEZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9jaGVja2xpc3QuZmllbGQnO1xyXG5pbXBvcnQgeyBSYWRpb0J1dHRvbkZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9yYWRpby1idXR0b24uZmllbGQnO1xyXG5pbXBvcnQgeyBBZGRyZXNzRmllbGQgfSBmcm9tICcuL2NvcmUvZmllbGRzL2FkZHJlc3MuZmllbGQnO1xyXG5pbXBvcnQgeyBTaWduYXR1cmVGaWVsZCB9IGZyb20gJy4vY29yZS9maWVsZHMvc2lnbmF0dXJlLmZpZWxkJztcclxuaW1wb3J0IHsgTG90dGllQW5pbWF0aW9uIH0gZnJvbSAnLi9jb3JlL2xvdHRpZS1hbmltYXRpb24nO1xyXG5pbXBvcnQgeyBOZ3hDb21wb25lbnRPdXRsZXQgfSBmcm9tICcuL2NvcmUvTmdDb21wb25lbnRPdXRsZXQnO1xyXG5pbXBvcnQgeyBOb25lQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL25vbmUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUG9wdXBDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvcG9wdXAvcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXNrRGlhbG9nIH0gZnJvbSAnLi9jb3JlL3Byb21wdC9hc2svYXNrLmRpYWxvZyc7XHJcbmltcG9ydCB7IE1hc2tDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvcHJvbXB0L21hc2svbWFzay5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEb2N1bWVudFRhZ2dpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy9kb2N1bWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRWRpdElucHV0Q29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvZWRpdC1pbnB1dC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBFbW9qaUhvc3RDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvdGFnZ2luZy9lbW9qaS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBUYWdnaW5nSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vY29yZS90YWdnaW5nL3RhZ2dpbmctaXRlbS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBUYWdnaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvdGFnZ2luZy5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBUYWdnaW5nUGlwZSB9IGZyb20gJy4vY29yZS90YWdnaW5nL3RhZ2dpbmcucGlwZSc7XHJcbmltcG9ydCB7IFVzZXJUYWdnaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3RhZ2dpbmcvdXNlcnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXhwbG9yZURvY3VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2V4cGxvcmUvZG9jdW1lbnQtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGaWx0ZXJUYWdzQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2ZpbHRlci9maWx0ZXItdGFncy5jb21wb25lbnQuZXhwJztcclxuaW1wb3J0IHsgQ3ViZUFjY3VtdWxhdGlvbkNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2FjY3VtL2FjY3VtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVDaGFydENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9jaGFydC9jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlR3JpZENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9ncmlkL2dyaWQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVNwcmVhZHNoZWV0Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2dyaWQvc3ByZWFkc2hlZXQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVBpdm90Q29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL3Bpdm90L3Bpdm90LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVNYXRyaXhQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9tYXRyaXgvcG9wdXAuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZU1hdHJpeENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9tYXRyaXgvdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRGFzaGJvYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9kYXNoYm9hcmQvZGFzaGJvYXJkLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbnNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9hY3Rpb25zL2FjdGlvbnMud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZUFjY3VtQW5hbHlzaXNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2FjY3VtLWN1YmUud2lkZ2V0JztcclxuaW1wb3J0IHsgQ3ViZUFuYWx5c2lzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9jdWJlLWFuYWx5c2lzLndpZGdldCc7XHJcbmltcG9ydCB7IEN1YmVDaGFydEFuYWx5c2lzV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9jdWJlLWNoYXJ0LndpZGdldCc7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudHNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9jdWJlL2RvY3VtZW50cy53aWRnZXQnO1xyXG5pbXBvcnQgeyBDdWJlV2lkZ2V0RmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9maWx0ZXIvZmlsdGVyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlY2VudHNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9yZWNlbnRzL3JlY2VudHMud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVyc29uYWxBY3Rpdml0eVdpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3Njb3JlL2FjdGl2aXR5LndpZGdldCc7XHJcbmltcG9ydCB7IENvbXBhcmVHcm91cHNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9zY29yZS9jb21wYXJlLWdyb3Vwcy53aWRnZXQnO1xyXG5pbXBvcnQgeyBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvc2NvcmUvcGVlcnMtcGVyZm9ybWFuY2Uud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVuZGluZ1Jlc3VsdHNXaWRnZXQgfSBmcm9tICcuL2Rhc2hib2FyZC9zY29yZS9wZW5kaW5nLXJlc3VsdHMud2lkZ2V0JztcclxuaW1wb3J0IHsgUGVyc29uYWxTY29yZVdpZGdldCB9IGZyb20gJy4vZGFzaGJvYXJkL3Njb3JlL3BlcnNvbmFsLXNjb3JlLndpZGdldCc7XHJcbmltcG9ydCB7IEFib3V0RGlhbG9nIH0gZnJvbSAnLi9ob21lL2Fib3V0L2Fib3V0LmRpYWxvZyc7XHJcbmltcG9ydCB7IEltcGVyc29uYXRlRGlhbG9nIH0gZnJvbSAnLi9pbXBlcnNvbmF0ZS9pbXBlcnNvbmF0ZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDb21tZW50ZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvY29tbWVudGVkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IEN1YmVBbm9tYWx5Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2N1YmUtYW5vbWFseS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBFc2NhbGF0ZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvZXNjYWxhdGVkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IExpa2VkTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2xpa2VkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IExvbmdSdW5uaW5nVGFza05vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9sb25nLXJ1bm5pbmctdGFzay5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBOdWRnZU5vdGlmaWNhdGlvbiB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy90eXBlcy9udWRnZS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBTdGF0ZUNoYW5nZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvc3RhdGUtY2hhbmdlZC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBUYWdnZWROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvdGFnZ2VkLm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IFRleHROb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbnMvdHlwZXMvdGV4dC5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBVcGNvbWluZ0V2ZW50Tm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL3VwY29taW5nLWV2ZW50Lm5vdGlmaWNhdGlvbic7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb25zLXRhYmxlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5vdGlmaWNhdGlvbnNGaWx0ZXJDb21wb25lbnQgfSBmcm9tIFwiLi9ub3RpZmljYXRpb25zL2ZpbHRlci5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgT3B0aW9uc0NvbXBvbmVudCB9IGZyb20gJy4vb3B0aW9ucy9vcHRpb25zLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9hcmd1bWVudHMtY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZURvY3VtZW50c0dyaWRDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS9ncmlkLWRvY3VtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRzVGFibGVDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydHMvY3ViZS90YWJsZS1kb2N1bWVudHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNhZ2VSZXBvcnRBcmdzIH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvdXNhZ2UtYXJncy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBVc2FnZUNoYXJ0Q29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvdXNhZ2UtY2hhcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVXNhZ2VQaXZvdENvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3VzYWdlLXBpdm90LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFN1YnN0aXR1dGlvbkNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9zdWJzdGl0dXRpb24vc3Vic3RpdHV0aW9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhYmxlVmlld0NvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy90YWJsZS90YWJsZS12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRhc2tzQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL3Rhc2tzL3Rhc2tzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvblBpY2tlciB9IGZyb20gJy4vY29tcG9zZS9hY3Rpb24vYWN0aW9uLXBpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcHBIdHRwSW50ZXJjZXB0b3IgfSBmcm9tICcuL2NvcmUvaHR0cC5pbnRlcmNlcHRvcic7XHJcbmltcG9ydCB7IFRpbWVzcGFuSW5wdXQgfSBmcm9tICcuL2NvcmUvaW5wdXRzL3RpbWVzcGFuLmlucHV0JztcclxuaW1wb3J0IHsgQWRkcmVzc0lucHV0IH0gZnJvbSAnLi9jb3JlL2lucHV0cy9hZGRyZXNzLmlucHV0JztcclxuaW1wb3J0IHsgVHlwZVNlbGVjdCB9IGZyb20gJy4vY29yZS9pbnB1dHMvc2VsZWN0LmlucHV0JztcclxuaW1wb3J0IHsgU2lnbmF0dXJlIH0gZnJvbSAnLi9jb3JlL2lucHV0cy9zaWduYXR1cmUuaW5wdXQnO1xyXG5pbXBvcnQgeyBUeXBlQXV0b2NvbXBsZXRlIH0gZnJvbSAnLi9jb3JlL2lucHV0cy9hdXRvLWNvbXBsZXRlLmlucHV0JztcclxuaW1wb3J0IHsgRmlsZUlucHV0IH0gZnJvbSAnLi9jb3JlL2lucHV0cy9maWxlLmlucHV0JztcclxuaW1wb3J0IHsgVGltZVBpY2tlciB9IGZyb20gJy4vY29yZS9pbnB1dHMvdGltZS1waWNrZXInO1xyXG5pbXBvcnQgeyBDb21iaW5hdGlvblBpY2tlckJvZHkgfSBmcm9tICcuL2NvcmUvaW5wdXRzL2NvbWJpbmF0aW9uLXBpY2tlci1ib2R5JztcclxuaW1wb3J0IHsgQ29tYmluYXRpb25QaWNrZXIgfSBmcm9tICcuL2NvcmUvaW5wdXRzL2NvbWJpbmF0aW9uLXBpY2tlcic7XHJcbmltcG9ydCB7IENvbWJpbmF0aW9uUG9vbCB9IGZyb20gJy4vY29yZS9pbnB1dHMvY29tYmluYXRpb24tcG9vbCc7XHJcbmltcG9ydCB7IEFjZUlucHV0IH0gZnJvbSAnLi9hZG1pbi9jb3JlL2FjZS5pbnB1dCc7XHJcbmltcG9ydCB7IElkZW50aXR5TmFtZSB9IGZyb20gJy4vY29yZS9pZGVudGl0eS9pZGVudGl0eS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBcnJheVNvcnRQaXBlLCBGaWx0ZXJQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL3NvcnQucGlwZSc7XHJcbmltcG9ydCB7IEwxOG5QaXBlLCBUcmFuc2xhdGVQaXBlIH0gZnJvbSBcIi4vY29yZS9waXBlcy90cmFuc2xhdGUucGlwZVwiO1xyXG5pbXBvcnQgeyBGb3JtUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9mb3JtLnBpcGUnO1xyXG5pbXBvcnQgeyBSb2xlUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9yb2xlLnBpcGUnO1xyXG5pbXBvcnQgeyBKb2luUGlwZSB9IGZyb20gXCIuL2NvcmUvcGlwZXMvam9pbi5waXBlXCI7XHJcbmltcG9ydCB7IFNhbml0aXplSHRtbFBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvc2FuaXRpemUtaHRtbC5waXBlJztcclxuaW1wb3J0IHsgVHlwZVZhbHVlUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy90eXBlLXZhbHVlLnBpcGUnO1xyXG5pbXBvcnQgeyBBZ29QaXBlLCBEYXRlUmFuZ2VQaXBlIH0gZnJvbSBcIi4vY29yZS9waXBlcy9kYXRlcmFuZ2UucGlwZVwiO1xyXG5pbXBvcnQgeyBEdXJhdGlvblBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvZHVyYXRpb24ucGlwZSc7XHJcbmltcG9ydCB7IEFjdGlvblBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvYWN0aW9uLnBpcGUnO1xyXG5pbXBvcnQgeyBTdGF0ZVBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvc3RhdGUucGlwZSc7XHJcbmltcG9ydCB7IFVzZXJOYW1lUGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy91c2VyLW5hbWUucGlwZSc7XHJcbmltcG9ydCB7IERpZmZlcmVuY2VQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2RpZmZlcmVuY2UucGlwZSc7XHJcbmltcG9ydCB7IERhdGVGb3JtYXRQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2RhdGUtZm9ybWF0LnBpcGUnO1xyXG5pbXBvcnQgeyBDYWxlbmRhclBpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvY2FsZW5kYXIucGlwZSc7XHJcbmltcG9ydCB7IFRpbWVBZ29QaXBlLCBUb05vd1BpcGUgfSBmcm9tICcuL2NvcmUvcGlwZXMvdGltZS1hZ28ucGlwZSc7XHJcbmltcG9ydCB7IER1cmF0aW9uRm9ybWF0UGlwZSB9IGZyb20gJy4vY29yZS9waXBlcy9kdXJhdGlvbi1mb3JtYXQucGlwZSc7XHJcbmltcG9ydCB7IEJyb3dzZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4vYnJvd3NlL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgVHJhY2VWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL3RyYWNlL3RyYWNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZsb3dWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL3RyYWNlL2Zsb3cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQWN0aW9uRGlhbG9nIH0gZnJvbSAnLi9jb21wb3NlL2FjdGlvbi9hY3Rpb24uZGlhbG9nJztcclxuaW1wb3J0IHsgUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL3JlcG9ydC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQXR0YWNobWVudFByZXZpZXcgfSBmcm9tICcuL2NvbXBvc2UvYXR0YWNobWVudHMvcHJldmlldy9hdHRhY2htZW50LXByZXZpZXcuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUHJpdmlsZWdlSGlkZGVuRGlyZWN0aXZlLCBQcml2aWxlZ2VEaXNhYmxlZERpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9zZS9wcml2aWxhZ2UuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29tcGFyZU5hbWVEaXJlY3RpdmUsIENvbXBhcmVDb250ZXh0RGlyZWN0aXZlLCBDb21wYXJlR3JvdXBEaXJlY3RpdmUgfSBmcm9tICcuL2NvbXBvc2UvdmVyc2lvbi1jb21wYXJlL3ZlcnNpb24tY29tcGFyZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDdWJlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2ZpbHRlci9maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvY3ViZS12aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbXBvc2VGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2Zvcm0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQnJvd3NlSXRlbXNDb21wb25lbnQgfSBmcm9tICcuL2Jyb3dzZS9icm93c2UtaXRlbXMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXhwbG9yZUl0ZW1zQ29tcG9uZW50IH0gZnJvbSAnLi9jdWJlL2V4cGxvcmUvZXhwbG9yZS1pdGVtcy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTY2hlZHVsZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3NjaGVkdWxlci9zY2hlZHVsZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBdmF0YXJDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvYXZhdGFyL2F2YXRhci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBXaWRnZXRJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9kYXNoYm9hcmQvd2lkZ2V0LWl0ZW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3V0T2ZPZmZpY2VUb2FzdCB9IGZyb20gJy4vaG9tZS9vdXRvZm9mZmljZS9vdXRvZm9mZmljZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyByZWdpc3RlckNvbXBvbmVudHMgfSBmcm9tICcuL2NvcmUvY29tcG9uZW50LWZhY3RvcnktcmVzb2x2ZXInO1xyXG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlLCBUb29sdGlwQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL3BvcHVwL3Rvb2x0aXAuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgUXVpY2tDb21tZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2NvbW1lbnRzL3F1aWNrLWNvbW1lbnQuY29tcG9uZW50LmV4cCc7XHJcbmltcG9ydCB7IERvY3VtZW50Vmlld3NDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL3ZpZXdzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFZpZXdJdGVtQ29tcG9uZW50IH0gZnJvbSBcIi4vdmlld3Mvdmlldy1pdGVtLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBEb2N1bWVudEluZm9Db21wb25lbnQgfSBmcm9tIFwiLi9jb21wb3NlL2RvY3VtZW50LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQgeyBTaGFyZWRDb25maWcgfSBmcm9tICcuL2NvcmUvY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudE1hdHJpeENvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9tYXRyaXguY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZURvY3VtZW50Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS92aWV3LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFRpbWVsaW5lVmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvdGltZWxpbmUvdGltZWxpbmUuY29tcG9uZW50LmV4cCc7XHJcbmltcG9ydCB7IFN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb3NlL3N0YXRlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV4cGxvcmVJdGVtSW1wbENvbXBvbmVudCB9IGZyb20gJy4vY3ViZS9leHBsb3JlL2V4cGxvcmUtaXRlbS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlUGl2b3RWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy9jdWJlL3Bpdm90LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVEb2N1bWVudFN1bUNvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9zdW0uY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3ViZUNoYXJ0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vdmlld3MvY3ViZS9jaGFydC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlRXhwbG9yZVZpZXdDb21wb25lbnQgfSBmcm9tICcuL3ZpZXdzL2N1YmUvZXhwbG9yZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlUGFyYWxsZWxWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi92aWV3cy9jdWJlL3BhcmFsbGVsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVTdW1Db21wb25lbnQgfSBmcm9tICcuL2N1YmUvc3VtL3N1bS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDdWJlUGFyYWxsZWxDb21wb25lbnQgfSBmcm9tICcuL2N1YmUvcGFyYWxsZWwvcGFyYWxsZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2hlY2tib3hDb21wb25lbnQgfSBmcm9tICcuL2NvcmUvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBDdWJlRG9jdW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnRzL2N1YmUvZG9jdW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEN1YmVVc2FnZUNvbXBvbmVudCB9IGZyb20gXCIuL3JlcG9ydHMvY3ViZS91c2FnZS5jb21wb25lbnRcIjtcclxuaW1wb3J0IHsgQ3ViZVBlcmZvcm1hbmNlV2lkZ2V0IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9jb21wYXJlLndpZGdldCc7XHJcbmltcG9ydCB7IE1vdmVUb0FjdGlvbkNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9hY3Rpb24vbW92ZXRvLWFjdGlvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIZWxwVGlwQ29tcG9uZW50IH0gZnJvbSAnLi9jb3JlL2d1aWRlL2hlbHAtdGlwLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEJyb2tlblBhZ2UgfSBmcm9tICcuL2FwcC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCb3hGb3JtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb3NlL2JveC9ib3guY29tcG9uZW50JztcclxuaW1wb3J0IHsgUm9sZXNQZXJmb3JtYW5jZUNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0cy9jdWJlL3JvbGUtcGVyZm9ybWFuY2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSW52aXRlTm90aWZpY2F0aW9uIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL3R5cGVzL2ludml0ZS5ub3RpZmljYXRpb24nO1xyXG5pbXBvcnQgeyBEb2N1bWVudFN0YXRlV2lkZ2V0Q29tcG9uZW50IH0gZnJvbSAnLi9kYXNoYm9hcmQvY3ViZS9kb2N1bWVudC1zdGF0ZS53aWRnZXQnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZWRTdHJpbmdQaXBlIH0gZnJvbSAnLi9jb3JlL3BpcGVzL2xvY2FsaXplZC1zdHJpbmcucGlwZSc7XHJcbmltcG9ydCB7IEJveEZvcm1Sb3dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvc2UvYm94L3Jvdy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBCb3hGb3JtQ29udHJvbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9zZS9ib3gvY29udHJvbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMb2NhbGl6ZWRTdHJpbmdDb250cm9sRGVzaWduZXIsIExvY2FsaXplZFN0cmluZ0ZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy9sb2NhbGl6ZWQtc3RyaW5nLmZpZWxkJztcclxuaW1wb3J0IHsgVGltZUZpZWxkIH0gZnJvbSAnLi9jb3JlL2ZpZWxkcy90aW1lLmZpZWxkJztcclxuLyoqIGNvbmZpZ3VyYXRpb24gY29tcG9uZW5ldHMgKi9cclxuY29uc3QgQ09SRV9DT01QT05FTlRTID0gW1JvbGVzUGVyZm9ybWFuY2VDb21wb25lbnQsIEN1YmVQZXJmb3JtYW5jZVdpZGdldCwgQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCwgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50LCBDdWJlQ2hhcnRWaWV3Q29tcG9uZW50LCBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQsIEN1YmVEb2N1bWVudE1hdHJpeENvbXBvbmVudCwgQ3ViZURvY3VtZW50Vmlld0NvbXBvbmVudCwgQ3ViZVBpdm90Vmlld0NvbXBvbmVudCwgVGltZWxpbmVWaWV3Q29tcG9uZW50LFxyXG4gIFN1YnN0aXR1dGlvbkNvbXBvbmVudCwgTW92ZVRvQWN0aW9uQ29tcG9uZW50LCBBc3NpZ25BY3Rpb25Db21wb25lbnQsIFJldHVybkFjdGlvbkNvbXBvbmVudCwgRXhwbG9yZURvY3VtZW50Q29tcG9uZW50LFxyXG4gIEFjdGlvbnNXaWRnZXQsIEN1YmVBbmFseXNpc1dpZGdldCwgQ3ViZURvY3VtZW50c1dpZGdldCwgUmVjZW50c1dpZGdldCwgUGVyc29uYWxBY3Rpdml0eVdpZGdldCxcclxuICBDb21wYXJlR3JvdXBzV2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LCBQZW5kaW5nUmVzdWx0c1dpZGdldCwgUGVyc29uYWxTY29yZVdpZGdldCwgQ3ViZVdpZGdldEZpbHRlckNvbXBvbmVudCxcclxuICBEb2N1bWVudFN0YXRlV2lkZ2V0Q29tcG9uZW50LCBDdWJlRG9jdW1lbnRzQ29tcG9uZW50LCBUYXNrc0NvbXBvbmVudCwgVXNhZ2VSZXBvcnRBcmdzLCBDdWJlVXNhZ2VDb21wb25lbnQsIEJveEZvcm1Db21wb25lbnRcclxuXTtcclxuXHJcbmNvbnN0IENPTlRST0xTX0NPTVBPTkVOVFMgPSBbU2lnbmF0dXJlRmllbGQsIEFkZHJlc3NGaWVsZCwgQ2hlY2tsaXN0RmllbGQsIFJhZGlvQnV0dG9uRmllbGQsXHJcbiAgWWVzTm9GaWVsZCwgSHRtbEZpZWxkLCBGaWxlRmllbGQsIExvY2FsaXplZFN0cmluZ0ZpZWxkLCBOdW1lcmljRmllbGQsIEF1dG9jb21wbGV0ZUZpZWxkLCBDaGVja2JveEZpZWxkLFRpbWVGaWVsZCwgIERhdGVGaWVsZCwgRGF0ZVJhbmdlRmllbGQsIEV4cHJlc3Npb25GaWVsZCxcclxuICBJbnB1dEZpZWxkLCBTZWxlY3RGaWVsZCwgU3dpdGNoRmllbGQsIFRleHRhcmVhRmllbGQsIFRpbWVzcGFuRmllbGRcclxuXVxyXG4vKiogY29tbW9uIEJpekRvYyBjb21wb25lbnRzICovXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbTG9jYWxpemVkU3RyaW5nUGlwZSwgSGVscFRpcENvbXBvbmVudCwgQm94Rm9ybUNvbXBvbmVudCwgQm94Rm9ybVJvd0NvbXBvbmVudCwgQm94Rm9ybUNvbnRyb2xDb21wb25lbnQsXHJcbiAgICBSb2xlc1BlcmZvcm1hbmNlQ29tcG9uZW50LFxyXG4gICAgQ3ViZVVzYWdlQ29tcG9uZW50LFxyXG4gICAgQ3ViZURvY3VtZW50c0NvbXBvbmVudCxcclxuICAgIERhdGVGb3JtYXRQaXBlLCBDYWxlbmRhclBpcGUsIERpZmZlcmVuY2VQaXBlLCBEdXJhdGlvblBpcGUsIFRpbWVBZ29QaXBlLCBUb05vd1BpcGUsXHJcbiAgICBIdG1sU2ltcGxlUGlwZSxcclxuICAgIENoZWNrYm94Q29tcG9uZW50LFxyXG4gICAgQ3ViZVBhcmFsbGVsQ29tcG9uZW50LCBDdWJlU3VtQ29tcG9uZW50LFxyXG4gICAgQ3ViZVBhcmFsbGVsVmlld0NvbXBvbmVudCwgQ3ViZUNoYXJ0Vmlld0NvbXBvbmVudCwgQ3ViZUV4cGxvcmVWaWV3Q29tcG9uZW50LCBDdWJlRG9jdW1lbnRTdW1Db21wb25lbnQsXHJcbiAgICBFeHBsb3JlSXRlbUltcGxDb21wb25lbnQsIERvY3VtZW50SW5mb0NvbXBvbmVudCwgRG9jdW1lbnRWaWV3c0NvbXBvbmVudCwgVmlld0l0ZW1Db21wb25lbnQsIEN1YmVEb2N1bWVudE1hdHJpeENvbXBvbmVudCxcclxuICAgIEN1YmVEb2N1bWVudFZpZXdDb21wb25lbnQsIEN1YmVQaXZvdFZpZXdDb21wb25lbnQsIEFjdGlvblBpY2tlcixcclxuICAgIFF1aWNrQ29tbWVudENvbXBvbmVudCxcclxuICAgIER1cmF0aW9uRm9ybWF0UGlwZSwgQ29tYmluYXRpb25QaWNrZXIsIENvbWJpbmF0aW9uUGlja2VyQm9keSwgQ29tYmluYXRpb25Qb29sLCBUaW1lbGluZVZpZXdDb21wb25lbnQsXHJcbiAgICBNYXRJY29uQW5pbWF0ZSwgRGF0ZVJhbmdlUGlwZSwgQWdvUGlwZSwgU3RhdGVEaXJlY3RpdmUsXHJcbiAgICBKb2luUGlwZSxcclxuICAgIFR5cGVWYWx1ZVBpcGUsXHJcbiAgICBMMThuUGlwZSwgVHJhbnNsYXRlUGlwZSwgSWRlbnRpdHlOYW1lLCBTYW5pdGl6ZUh0bWxQaXBlLFxyXG4gICAgU3RhdGVQaXBlLCBBY3Rpb25QaXBlLCBSb2xlUGlwZSwgRm9ybVBpcGUsIEZpbHRlclBpcGUsIEFycmF5U29ydFBpcGUsIFVzZXJOYW1lUGlwZSxcclxuICAgIFRhZ2dpbmdQaXBlLFxyXG4gICAgVHlwZVNlbGVjdCwgVHlwZUF1dG9jb21wbGV0ZSwgU2lnbmF0dXJlLFxyXG4gICAgQWNlSW5wdXQsIFRpbWVzcGFuSW5wdXQsIEFkZHJlc3NJbnB1dCxcclxuICAgIEZpbGVJbnB1dCxcclxuICAgIFRpbWVQaWNrZXIsXHJcbiAgICBMYXlvdXRDb21wb25lbnQsXHJcbiAgICBUaW1lRmllbGQsIFNpZ25hdHVyZUZpZWxkLCBBZGRyZXNzRmllbGQsIFJhZGlvQnV0dG9uRmllbGQsIENoZWNrbGlzdEZpZWxkLCBZZXNOb0ZpZWxkLCBIdG1sRmllbGQsIEZpbGVGaWVsZCwgTnVtZXJpY0ZpZWxkLCBBdXRvY29tcGxldGVGaWVsZCwgQ2hlY2tib3hGaWVsZCwgRGF0ZUZpZWxkLCBEYXRlUmFuZ2VGaWVsZCwgRXhwcmVzc2lvbkZpZWxkLFxyXG4gICAgSW5wdXRGaWVsZCwgU2VsZWN0RmllbGQsIFN3aXRjaEZpZWxkLCBUZXh0YXJlYUZpZWxkLCBUaW1lc3BhbkZpZWxkLFxyXG4gICAgUmV0dXJuQWN0aW9uQ29tcG9uZW50LCBBc3NpZ25BY3Rpb25Db21wb25lbnQsIE1vdmVUb0FjdGlvbkNvbXBvbmVudCxcclxuICAgIEF2YXRhckNvbXBvbmVudCwgUGVvcGxlQ29tcG9uZW50LCBFZGl0SW5wdXRDb21wb25lbnQsXHJcbiAgICBOZ3hDb21wb25lbnRPdXRsZXQsXHJcbiAgICBMb3R0aWVBbmltYXRpb24sXHJcbiAgICBDb250YWN0c0NvbXBvbmVudCxcclxuICAgIEN1YmVNYXRyaXhDb21wb25lbnQsIEZpbHRlclRhZ3NDb21wb25lbnQsIEV4cGxvcmVJdGVtc0NvbXBvbmVudCxcclxuICAgIENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlR3JvdXBEaXJlY3RpdmUsIENvbXBhcmVDb250ZXh0RGlyZWN0aXZlLFxyXG4gICAgR3VpZGVDb21wb25lbnQsXHJcbiAgICBPdXRPZk9mZmljZVRvYXN0LFxyXG4gICAgTm90aWZpY2F0aW9uc1RhYmxlQ29tcG9uZW50LCBOb3RpZmljYXRpb25zRmlsdGVyQ29tcG9uZW50LFxyXG4gICAgUHJpdmlsZWdlSGlkZGVuRGlyZWN0aXZlLFxyXG4gICAgVGFnZ2luZ0l0ZW1EaXJlY3RpdmUsIFRhZ2dpbmdEaXJlY3RpdmUsIERvY3VtZW50VGFnZ2luZ0NvbXBvbmVudCwgVXNlclRhZ2dpbmdDb21wb25lbnQsXHJcbiAgICBQcml2aWxlZ2VEaXNhYmxlZERpcmVjdGl2ZSwgQ3ViZURvY3VtZW50c0dyaWRDb21wb25lbnQsXHJcbiAgICBMb25nUnVubmluZ1Rhc2tOb3RpZmljYXRpb24sIFRhZ2dlZE5vdGlmaWNhdGlvbiwgQ29tbWVudGVkTm90aWZpY2F0aW9uLCBOdWRnZU5vdGlmaWNhdGlvbiwgSW52aXRlTm90aWZpY2F0aW9uLCBUZXh0Tm90aWZpY2F0aW9uLCBDdWJlQW5vbWFseU5vdGlmaWNhdGlvbiwgRXNjYWxhdGVkTm90aWZpY2F0aW9uLCBMaWtlZE5vdGlmaWNhdGlvbiwgU3RhdGVDaGFuZ2VkTm90aWZpY2F0aW9uLCBVcGNvbWluZ0V2ZW50Tm90aWZpY2F0aW9uLFxyXG4gICAgTm9uZUNvbXBvbmVudCwgU2NoZWR1bGVWaWV3Q29tcG9uZW50LFxyXG4gICAgT3B0aW9uc0NvbXBvbmVudCwgVHJhY2VWaWV3Q29tcG9uZW50LFxyXG4gICAgUHJvZ3Jlc3NEaXJlY3RpdmUsXHJcbiAgICBBdHRhY2htZW50c0NvbXBvbmVudCxcclxuICAgIERvY3VtZW50RXZlbnRzQ29tcG9uZW50LFxyXG4gICAgVGFnc0NvbXBvbmVudCxcclxuICAgIE1hcENvbXBvbmVudCxcclxuICAgIE1hc2tDb21wb25lbnQsXHJcbiAgICBGbG93Vmlld0NvbXBvbmVudCxcclxuICAgIFN1YnN0aXR1dGlvbkNvbXBvbmVudCxcclxuICAgIFBvcHVwQ29tcG9uZW50LFxyXG4gICAgQXR0YWNobWVudFByZXZpZXcsIENvbW1lbnRzQ29tcG9uZW50LCBDb21tZW50Q29tcG9uZW50LCBFZGl0Q29tbWVudENvbXBvbmVudCwgQ29tbWVudExpa2VzQ29tcG9uZW50LCBDb21tZW50RWRpdHNDb21wb25lbnQsXHJcbiAgICBCcm93c2VJdGVtc0NvbXBvbmVudCxcclxuICAgIEJyb3dzZUZpbHRlckNvbXBvbmVudCwgRXhwYW5kZWRJdGVtQ29tcG9uZW50LFxyXG4gICAgQ29tcG9zZUZvcm1Db21wb25lbnQsXHJcbiAgICBDdWJlVmlld0NvbXBvbmVudCxcclxuICAgIEN1YmVGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBDdWJlQWNjdW11bGF0aW9uQ2hhcnRDb21wb25lbnQsIEN1YmVDaGFydENvbXBvbmVudCwgQ3ViZVBpdm90Q29tcG9uZW50LCBDdWJlU3ByZWFkc2hlZXRDb21wb25lbnQsIEN1YmVHcmlkQ29tcG9uZW50LFxyXG4gICAgUmVwb3J0Vmlld2VyQ29tcG9uZW50LCBUYWJsZVZpZXdDb21wb25lbnQsIFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCxcclxuICAgIERhc2hib2FyZENvbXBvbmVudCwgV2lkZ2V0SXRlbUNvbXBvbmVudCxcclxuICAgIEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBTYXZlQ2hhbmdlc0RpYWxvZyxcclxuICAgIEFza0RpYWxvZywgQWJvdXREaWFsb2csIEFjdGlvbkRpYWxvZyxcclxuICAgIEltcGVyc29uYXRlRGlhbG9nLFxyXG4gICAgQ29udmVyc2F0aW9uQ29tcG9uZW50LCBDdWJlTWF0cml4UG9wdXBDb21wb25lbnQsXHJcbiAgICBWZXJzaW9uQ29tcGFyZUNvbXBvbmVudCwgRXhwbG9yZURvY3VtZW50Q29tcG9uZW50LCBUYXNrc0NvbXBvbmVudCxcclxuICAgIEN1YmVEb2N1bWVudHNUYWJsZUNvbXBvbmVudCxcclxuICAgIEN1YmVQZXJmb3JtYW5jZVdpZGdldCwgQ3ViZUFjY3VtQW5hbHlzaXNXaWRnZXQsIEN1YmVBbmFseXNpc1dpZGdldCwgQ3ViZUNoYXJ0QW5hbHlzaXNXaWRnZXQsIEFjdGlvbnNXaWRnZXQsIFJlY2VudHNXaWRnZXQsXHJcbiAgICBQZW5kaW5nUmVzdWx0c1dpZGdldCwgQ29tcGFyZUdyb3Vwc1dpZGdldCwgQ3ViZURvY3VtZW50c1dpZGdldCxcclxuICAgIERvY3VtZW50U3RhdGVXaWRnZXRDb21wb25lbnQsIFBlcnNvbmFsU2NvcmVXaWRnZXQsIFBlcnNvbmFsQWN0aXZpdHlXaWRnZXQsIFBlZXJzUGVyZm9ybWFuY2VXaWRnZXQsXHJcbiAgICBVc2FnZVBpdm90Q29tcG9uZW50LCBVc2FnZUNoYXJ0Q29tcG9uZW50LCBVc2FnZVJlcG9ydEFyZ3MsXHJcbiAgICBFbW9qaUhvc3RDb21wb25lbnQsIFRvb2x0aXBEaXJlY3RpdmUsIFRvb2x0aXBDb21wb25lbnQsIEJyb2tlblBhZ2VdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIERheUpzTW9kdWxlLFxyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgSHR0cENsaWVudE1vZHVsZSxcclxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXHJcbiAgICBSb3V0ZXJNb2R1bGUsXHJcbiAgICBQaWNrZXJNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uR2FudHRNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uU2NoZWR1bGVNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uQ2lyY3VsYXJHYXVnZU1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25DaGFydE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HYW50dE1vZHVsZSxcclxuICAgIFN5bmNmdXNpb25HcmlkTW9kdWxlLFxyXG4gICAgU3luY2Z1c2lvblRleHRFZGl0b3JNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uU3ByZWFkc2hlZXRNb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uUGl2b3RNb2R1bGUsXHJcbiAgICBTaWduYXR1cmVNb2R1bGUsXHJcbiAgICBLYW5iYW5Nb2R1bGUsXHJcbiAgICBTeW5jZnVzaW9uRGlhZ3JhbU1vZHVsZSxcclxuICAgIE1hdGVyaWFsTW9kdWxlXHJcbiAgXSxcclxuICBwcm92aWRlcnM6IFtQb3B1cCxcclxuICAgIENvb2tpZVNlcnZpY2UsXHJcbiAgICBEb2N1bWVudEluZm8sIEF0dGFjaG1lbnRJbmZvLCBNYXBJbmZvLCBDdWJlSW5mbyxcclxuICAgIE1haWxib3hTZXJ2aWNlLCBTZXNzaW9uU2VydmljZSwgSHViU2VydmljZSxcclxuICAgIEN1YmVTZXJ2aWNlLCBEYXRhc291cmNlU2VydmljZSxcclxuICAgIERhdGVSYW5nZVBpcGUsIEFnb1BpcGUsIER1cmF0aW9uRm9ybWF0UGlwZSxcclxuICAgIFdpbmRvd1RpdGxlU2VydmljZSwgTm90aWZpY2F0aW9uc1NlcnZpY2UsXHJcbiAgICBBY2NvdW50U2VydmljZSwgQ2hhdFNlcnZpY2UsIENoYXRJbmZvLFxyXG4gICAgR3VpZGVTZXJ2aWNlLCBPcHRpb25zU2VydmljZSxcclxuICAgIEJpekRvY0NvbXBvbmVudEZhY3RvcnlSZXNvbHZlciwgUHJvbXB0U2VydmljZSwgVHJhbnNsYXRlU2VydmljZSxcclxuICAgIC8veyBwcm92aWRlOiBMT0NBTEVfSUQsIHVzZUNsYXNzOiBTZXNzaW9uU2VydmljZS5nZXRMb2NhbGUoKSB9LFxyXG4gICAgeyBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUywgdXNlQ2xhc3M6IEFwcEh0dHBJbnRlcmNlcHRvciwgbXVsdGk6IHRydWUgfSxcclxuICAgIHsgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBUcmFuc2xhdGVQcm92aWRlckZhY3RvcnksIGRlcHM6IFtUcmFuc2xhdGVTZXJ2aWNlXSwgbXVsdGk6IHRydWUgfSxcclxuICAgIHsgcHJvdmlkZTogQVBQX0lOSVRJQUxJWkVSLCB1c2VGYWN0b3J5OiBTZXNzaW9uUHJvdmlkZXJGYWN0b3J5LCBkZXBzOiBbU2Vzc2lvblNlcnZpY2VdLCBtdWx0aTogdHJ1ZSB9XHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBMb2NhbGl6ZWRTdHJpbmdQaXBlLFxyXG4gICAgTWF0ZXJpYWxNb2R1bGUsXHJcbiAgICBCcm9rZW5QYWdlLFxyXG4gICAgSGVscFRpcENvbXBvbmVudCxcclxuICAgIEZpbHRlclRhZ3NDb21wb25lbnQsXHJcbiAgICBEYXRlRm9ybWF0UGlwZSwgQ2FsZW5kYXJQaXBlLCBEaWZmZXJlbmNlUGlwZSwgRHVyYXRpb25QaXBlLCBUaW1lQWdvUGlwZSwgVG9Ob3dQaXBlLFxyXG4gICAgQ2hlY2tib3hDb21wb25lbnQsIEN1YmVQYXJhbGxlbENvbXBvbmVudCwgQ3ViZVN1bUNvbXBvbmVudCwgRXhwbG9yZUl0ZW1JbXBsQ29tcG9uZW50LCBEb2N1bWVudEluZm9Db21wb25lbnQsIERvY3VtZW50Vmlld3NDb21wb25lbnQsXHJcbiAgICBEYXNoYm9hcmRDb21wb25lbnQsXHJcbiAgICBUYWdzQ29tcG9uZW50LCBRdWlja0NvbW1lbnRDb21wb25lbnQsXHJcbiAgICBDb21tZW50c0NvbXBvbmVudCxcclxuICAgIExheW91dENvbXBvbmVudCxcclxuICAgIEFjdGlvbkRpYWxvZyxcclxuICAgIEJyb3dzZUZpbHRlckNvbXBvbmVudCwgQ3ViZUZpbHRlckNvbXBvbmVudCwgU2NoZWR1bGVWaWV3Q29tcG9uZW50LCBSZXBvcnRWaWV3ZXJDb21wb25lbnQsIFdpZGdldEl0ZW1Db21wb25lbnQsIEN1YmVWaWV3Q29tcG9uZW50LFxyXG4gICAgRXhwbG9yZUl0ZW1zQ29tcG9uZW50LCBDb21wb3NlRm9ybUNvbXBvbmVudCwgQnJvd3NlSXRlbXNDb21wb25lbnQsIE5vdGlmaWNhdGlvbnNUYWJsZUNvbXBvbmVudCxcclxuICAgIEFjdGlvblBpY2tlciwgQ29udmVyc2F0aW9uQ29tcG9uZW50LFxyXG4gICAgU3RhdGVEaXJlY3RpdmUsXHJcbiAgICBDb250YWN0c0NvbXBvbmVudCxcclxuICAgIEN1YmVNYXRyaXhDb21wb25lbnQsXHJcbiAgICBOZ3hDb21wb25lbnRPdXRsZXQsIE1hdEljb25BbmltYXRlLFxyXG4gICAgVG9vbHRpcERpcmVjdGl2ZSxcclxuICAgIFRpbWVzcGFuSW5wdXQsXHJcbiAgICBGaWxlSW5wdXQsXHJcbiAgICBBZGRyZXNzSW5wdXQsXHJcbiAgICBBY2VJbnB1dCxcclxuICAgIENvbWJpbmF0aW9uUGlja2VyLCBDb21iaW5hdGlvblBvb2wsXHJcbiAgICBUeXBlU2VsZWN0LCBUeXBlQXV0b2NvbXBsZXRlLFxyXG4gICAgVGltZVBpY2tlcixcclxuICAgIER1cmF0aW9uRm9ybWF0UGlwZSxcclxuICAgIERhdGVSYW5nZVBpcGUsXHJcbiAgICBUeXBlVmFsdWVQaXBlLFxyXG4gICAgSm9pblBpcGUsXHJcbiAgICBTdGF0ZVBpcGUsIEFjdGlvblBpcGUsIFJvbGVQaXBlLCBGb3JtUGlwZSwgRmlsdGVyUGlwZSwgQXJyYXlTb3J0UGlwZSwgVXNlck5hbWVQaXBlLCBTYW5pdGl6ZUh0bWxQaXBlLFxyXG4gICAgTDE4blBpcGUsIFRyYW5zbGF0ZVBpcGUsIElkZW50aXR5TmFtZSxcclxuICAgIEF2YXRhckNvbXBvbmVudCwgUmVwb3J0QXJndW1lbnRzQ29tcG9uZW50LFxyXG4gICAgQXR0YWNobWVudFByZXZpZXcsXHJcbiAgICBQcml2aWxlZ2VIaWRkZW5EaXJlY3RpdmUsIFByaXZpbGVnZURpc2FibGVkRGlyZWN0aXZlLCBDb21wYXJlR3JvdXBEaXJlY3RpdmUsIENvbXBhcmVOYW1lRGlyZWN0aXZlLCBDb21wYXJlQ29udGV4dERpcmVjdGl2ZSxcclxuICAgIFRyYWNlVmlld0NvbXBvbmVudCwgRmxvd1ZpZXdDb21wb25lbnQsXHJcbiAgICBBc3NpZ25BY3Rpb25Db21wb25lbnQsIFJldHVybkFjdGlvbkNvbXBvbmVudCwgRXhwbG9yZURvY3VtZW50Q29tcG9uZW50LFxyXG4gICAgQ3ViZVBlcmZvcm1hbmNlV2lkZ2V0LCBBY3Rpb25zV2lkZ2V0LCBDdWJlQW5hbHlzaXNXaWRnZXQsIEN1YmVEb2N1bWVudHNXaWRnZXQsIFJlY2VudHNXaWRnZXQsIFBlcnNvbmFsQWN0aXZpdHlXaWRnZXQsXHJcbiAgICBDb21wYXJlR3JvdXBzV2lkZ2V0LCBQZWVyc1BlcmZvcm1hbmNlV2lkZ2V0LCBQZW5kaW5nUmVzdWx0c1dpZGdldCwgUGVyc29uYWxTY29yZVdpZGdldCxcclxuICAgIEN1YmVXaWRnZXRGaWx0ZXJDb21wb25lbnQsXHJcbiAgICBDdWJlRG9jdW1lbnRzVGFibGVDb21wb25lbnQsIEN1YmVEb2N1bWVudHNHcmlkQ29tcG9uZW50LFxyXG4gICAgVGFza3NDb21wb25lbnQsIFVzYWdlUmVwb3J0QXJncyxcclxuICAgIFVzYWdlQ2hhcnRDb21wb25lbnQsIFVzYWdlUGl2b3RDb21wb25lbnQsXHJcbiAgICBWZXJzaW9uQ29tcGFyZUNvbXBvbmVudCxcclxuICAgIExvdHRpZUFuaW1hdGlvbixcclxuICAgIEN1YmVBY2N1bXVsYXRpb25DaGFydENvbXBvbmVudCwgQ3ViZUNoYXJ0Q29tcG9uZW50LCBDdWJlUGl2b3RDb21wb25lbnQsIEN1YmVTcHJlYWRzaGVldENvbXBvbmVudCwgQ3ViZUdyaWRDb21wb25lbnRcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTaGFyZWRNb2R1bGUge1xyXG4gIHN0YXRpYyBmb3JDaGlsZChjb25maWc/OiBTaGFyZWRDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPFNoYXJlZE1vZHVsZT4ge1xyXG4gICAgY29uc3QgeyBmb3JtYXRzLCByb3V0aW5nIH0gPSBjb25maWcgfHwge307XHJcbiAgICByZWdpc3RlckNvbXBvbmVudHMoQ09SRV9DT01QT05FTlRTKTtcclxuICAgIHJlZ2lzdGVyQ29tcG9uZW50cyhDT05UUk9MU19DT01QT05FTlRTKTtcclxuICAgIGNvbnN0IHByb3ZpZGVycyA9IFt7XHJcbiAgICAgIHByb3ZpZGU6IE1BVF9EQVRFX0ZPUk1BVFMsIHVzZVZhbHVlOiB7XHJcbiAgICAgICAgcGFyc2U6IHtcclxuICAgICAgICAgIGRhdGVJbnB1dDogJ0xMJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgIGRpc3BsYXk6IHtcclxuICAgICAgICAgIGRhdGVJbnB1dDogKGZvcm1hdHMgfHwge30pLmRhdGUgfHwgJ2xsJyxcclxuICAgICAgICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxyXG4gICAgICAgICAgZGF0ZUExMXlMYWJlbDogJ0xMJyxcclxuICAgICAgICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWScsXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XSBhcyBQcm92aWRlcltdO1xyXG4gICAgaWYgKHJvdXRpbmcpXHJcbiAgICAgIHByb3ZpZGVycy5wdXNoKHtcclxuICAgICAgICBwcm92aWRlOiBSb3V0ZXJJbXBsLCB1c2VDbGFzczogcm91dGluZyA9PT0gJ25nJyA/IE5nUm91dGVyIDogUGFuZVJvdXRlclxyXG4gICAgICB9KTtcclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5nTW9kdWxlOiBTaGFyZWRNb2R1bGUsXHJcbiAgICAgIHByb3ZpZGVyc1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxucmVnaXN0ZXJMaWNlbnNlKCdNZ28rRFNNQmFGdC9RSFJxVlZoalZGcEZkRUJCWEh4QWQxcC9WV0pZZFZ0NWZsQlBjRHdzVDNSZlFGOWlTM3hiZDBkaVdIMVhjSEJkUkE9PTtNZ28rRFNNQlBoOHNWWEowUzBKK1hFOUhmbFJEWDN4S2YweC9UR3BRYjE5eGZsQlBhbGxZVkJZaVNWOWpTM3hTZEVkcldIMWZjWFpjUm1aWlV3PT07T1JnNEFqVVdJUUEvR250MlZWaGtRbEZhZFZkSlhHRldmVkpwVEdwUWRrNXhkVjlEYVZaVVRXWS9QMVpoU1h4UmQwZGhVWDVjY1hWWFQyQlVWVVk9O09ETXlNakEwUURNeU16QXlaVE0wTW1Vek1HODBlRXM0UlRKblFubFdXWGw2TDJwRU5FaDRVR3RSUVZoSFkwRkVXRGR6YlhZcmRuWjJla1ZwVVhjOTtPRE15TWpBMVFETXlNekF5WlRNME1tVXpNR1JzU1VoVE5ISkZTVXhpTUdSMFFsQkpibnBOU2tka1RrTkZZMGwxTDFjMFJIUkJTMjVGYzJSUmNHODk7TlJBaUJpQWFJUVF1R2pOL1YwWitXRTlFYUZ4S1ZtSkxZVkIzV21wUWRsZGdkVlJNWlZWYlFYOVBJaUJvUzM1UmRFUmhXM2RmY25WVVJHbGRXRXgwO09ETXlNakEzUURNeU16QXlaVE0wTW1Vek1FZEhZa3hSZWt3eU1XSjRlWFpGU2taQmRuUnBSSEI1VjJGd1pYUjRXbUpOWmtsalJXSjRURmszUkhjOTtPRE15TWpBNFFETXlNekF5WlRNME1tVXpNR0kxWjB4T1ZqQk5aazFQVDA1ek1UZDNXV05DVUdwRlYycFZNblphV0dKUU0xSm1VMFZYWTNwVVUxVTk7TWdvK0RTTUJNQVk5QzN0MlZWaGtRbEZhZFZkSlhHRldmVkpwVEdwUWRrNXhkVjlEYVZaVVRXWS9QMVpoU1h4UmQwZGhVWDVjY1hWWFQySmJWa1k9O09ETXlNakV3UURNeU16QXlaVE0wTW1Vek1FY3pSUzl6UTBwMFVHTllhRVF4VlhBMkwwRlFjakZtUVhock9URkVUbEpsVFU5VFdFNXRUelVyTVdzOTtPRE15TWpFeFFETXlNekF5WlRNME1tVXpNRlIyVG5WeE9IUnhlWGRWYTBWWWJXUlJabTFDUkd3NVR6WnRUR0Z3VFZSNFptRktiM2RCUlRoRVoyODk7T0RNeU1qRXlRRE15TXpBeVpUTTBNbVV6TUVkSFlreFJla3d5TVdKNGVYWkZTa1pCZG5ScFJIQjVWMkZ3WlhSNFdtSk5aa2xqUldKNFRGazNSSGM5Jyk7XHJcbiJdfQ==
@@ -3111,24 +3111,30 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
3111
3111
  }], ctorParameters: function () { return [{ type: i1$3.HttpClient }]; } });
3112
3112
 
3113
3113
  class OptionsControlField {
3114
- constructor(_ds) {
3114
+ constructor(_session, _ds) {
3115
+ this._session = _session;
3115
3116
  this._ds = _ds;
3116
3117
  }
3117
3118
  ngOnInit() {
3118
3119
  this.required && this.control.addValidators(Validators.required);
3119
- if (this.dataType)
3120
- this._ds.all(this.dataType).subscribe(v => this.options = v);
3120
+ if (this.dataType) {
3121
+ const dataType = this._session.profile.types.find(t => t.name == this.dataType), column = dataType.columns.find(c => !c.flags || c.flags.indexOf('Key') < 0);
3122
+ this._ds.all(this.dataType).
3123
+ subscribe(v => this.options = dataType.columns ? v.map(o => ({
3124
+ key: o.key, value: o.value[column.name]
3125
+ })) : v);
3126
+ }
3121
3127
  }
3122
3128
  optionOf(value) {
3123
3129
  var _a, _b;
3124
3130
  return (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.find(o => o.key === value)) === null || _b === void 0 ? void 0 : _b.value;
3125
3131
  }
3126
3132
  }
3127
- OptionsControlField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: OptionsControlField, deps: [{ token: DatasourceService }], target: i0.ɵɵFactoryTarget.Directive });
3133
+ OptionsControlField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: OptionsControlField, deps: [{ token: SessionService }, { token: DatasourceService }], target: i0.ɵɵFactoryTarget.Directive });
3128
3134
  OptionsControlField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: OptionsControlField, ngImport: i0 });
3129
3135
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: OptionsControlField, decorators: [{
3130
3136
  type: Directive
3131
- }], ctorParameters: function () { return [{ type: DatasourceService }]; } });
3137
+ }], ctorParameters: function () { return [{ type: SessionService }, { type: DatasourceService }]; } });
3132
3138
  class OptionsControlDesigner {
3133
3139
  constructor(_service) {
3134
3140
  this._service = _service;
@@ -23627,8 +23633,10 @@ class CubeChartAnalysisWidget extends CubeAnalysisBase {
23627
23633
  width: 10,
23628
23634
  height: 10
23629
23635
  };
23636
+ this.multiLevelLabels = [];
23630
23637
  this.primaryXAxis = {
23631
23638
  valueType: 'Category',
23639
+ //multiLevelLabels: this.multiLevelLabels,
23632
23640
  labelStyle: {
23633
23641
  fontFamily: FONT_FAMILY
23634
23642
  }
@@ -23657,6 +23665,12 @@ class CubeChartAnalysisWidget extends CubeAnalysisBase {
23657
23665
  this.animation = { enable: true };
23658
23666
  }
23659
23667
  onLoad(data) {
23668
+ //if (isArray(this._options.series) && this._options.series.length > 1) {
23669
+ // this.multiLevelLabels = [{
23670
+ // textStyle: {},
23671
+ // categories: [{ text: '' }]
23672
+ // }];
23673
+ //}
23660
23674
  const series = data.map(s => {
23661
23675
  if (s.index)
23662
23676
  return {
@@ -23675,6 +23689,7 @@ class CubeChartAnalysisWidget extends CubeAnalysisBase {
23675
23689
  return {
23676
23690
  yName: 'y', xName: 'name', type: this.type,
23677
23691
  dataSource: s.points,
23692
+ //groupName: '',
23678
23693
  name: s.title ||
23679
23694
  this._translate.get('Usage')
23680
23695
  };
@@ -23877,7 +23892,7 @@ let CubeWidgetFilterComponent = class CubeWidgetFilterComponent {
23877
23892
  this.axes = this.form.value;
23878
23893
  }
23879
23894
  valuesChange(axes) {
23880
- this.form.patchValue(axes);
23895
+ this.form.reset(axes, { emitEvent: false });
23881
23896
  }
23882
23897
  };
23883
23898
  CubeWidgetFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: CubeWidgetFilterComponent, deps: [{ token: WidgetRef }, { token: SessionService }, { token: i1.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
@@ -29654,7 +29669,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
29654
29669
  ]
29655
29670
  }]
29656
29671
  }] });
29657
- registerLicense('ORg4AjUWIQA/Gnt2VVhjQlFaclhJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRd0ViW39acHdQRGNeUkc=');
29672
+ registerLicense('Mgo+DSMBaFt/QHRqVVhjVFpFdEBBXHxAd1p/VWJYdVt5flBPcDwsT3RfQF9iS3xbd0diWH1XcHBdRA==;Mgo+DSMBPh8sVXJ0S0J+XE9HflRDX3xKf0x/TGpQb19xflBPallYVBYiSV9jS3xSdEdrWH1fcXZcRmZZUw==;ORg4AjUWIQA/Gnt2VVhkQlFadVdJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRd0dhUX5ccXVXT2BUVUY=;ODMyMjA0QDMyMzAyZTM0MmUzMG80eEs4RTJnQnlWWXl6L2pENEh4UGtRQVhHY0FEWDdzbXYrdnZ2ekVpUXc9;ODMyMjA1QDMyMzAyZTM0MmUzMGRsSUhTNHJFSUxiMGR0QlBJbnpNSkdkTkNFY0l1L1c0RHRBS25Fc2RRcG89;NRAiBiAaIQQuGjN/V0Z+WE9EaFxKVmJLYVB3WmpQdldgdVRMZVVbQX9PIiBoS35RdERhW3dfcnVURGldWEx0;ODMyMjA3QDMyMzAyZTM0MmUzMEdHYkxRekwyMWJ4eXZFSkZBdnRpRHB5V2FwZXR4WmJNZkljRWJ4TFk3RHc9;ODMyMjA4QDMyMzAyZTM0MmUzMGI1Z0xOVjBNZk1PT05zMTd3WWNCUGpFV2pVMnZaWGJQM1JmU0VXY3pUU1U9;Mgo+DSMBMAY9C3t2VVhkQlFadVdJXGFWfVJpTGpQdk5xdV9DaVZUTWY/P1ZhSXxRd0dhUX5ccXVXT2JbVkY=;ODMyMjEwQDMyMzAyZTM0MmUzMEczRS9zQ0p0UGNYaEQxVXA2L0FQcjFmQXhrOTFETlJlTU9TWE5tTzUrMWs9;ODMyMjExQDMyMzAyZTM0MmUzMFR2TnVxOHRxeXdVa0VYbWRRZm1CRGw5TzZtTGFwTVR4ZmFKb3dBRThEZ289;ODMyMjEyQDMyMzAyZTM0MmUzMEdHYkxRekwyMWJ4eXZFSkZBdnRpRHB5V2FwZXR4WmJNZkljRWJ4TFk3RHc9');
29658
29673
 
29659
29674
  class MobileModule {
29660
29675
  }
@@ -31660,7 +31675,7 @@ let PositionsComponent = class PositionsComponent {
31660
31675
  value: ''
31661
31676
  }];
31662
31677
  if (type.columns)
31663
- type.columns.slice(2).forEach((c, i) => cells.push({
31678
+ type.columns.slice(2).forEach((_, i) => cells.push({
31664
31679
  index: i + 4,
31665
31680
  value: ''
31666
31681
  }));
@@ -34603,13 +34618,13 @@ let AnalysisWidgetDesignComponent = class AnalysisWidgetDesignComponent extends
34603
34618
  }
34604
34619
  };
34605
34620
  AnalysisWidgetDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AnalysisWidgetDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
34606
- AnalysisWidgetDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AnalysisWidgetDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length > 1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('xAxis').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('xAxis').value && form.get('xAxis').value.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title}}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let i of cube?.indices\" [value]=\"i.name\">{{i.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Pie\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Doughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Doughnut'|translate}}</mat-option>\r\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'HalfDoughnut'|translate}}</mat-option>\r\n <mat-option value=\"Funnel\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Funnel'|translate}}</mat-option>\r\n <mat-option value=\"Pyramid\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pyramid'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar\" [disabled]=\"!form.get('series').value\">{{'StackingBar'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.get('series').value\">{{'StackingBar100'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea\" [disabled]=\"!form.get('series').value\">{{'StackingArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.get('series').value\">{{'StackingArea100'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.get('series').value\">{{'StackingColumn'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.get('series').value\">{{'StackingColumn100'|translate}}</mat-option>\r\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.get('series').value\">{{'StackingStepArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine\" [disabled]=\"!form.get('series').value\">{{'StackingLine'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.get('series').value\">{{'StackingLine100'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\" *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"indicesChartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n <!--<div *ngIf=\"options.xAxis\">\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\"\r\n [chartType]=\"options.chartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"options.filters\"\r\n [xAxis]=\"options.xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"options.xAxis\"\r\n [series]=\"options.series\"\r\n [indices]=\"options.indices\"\r\n [filters]=\"options.filters\"\r\n [chartType]=\"options.chartType\"\r\n [indicesChartType]=\"options.indicesChartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"></bizdoc-cube-chart>\r\n </ng-container>\r\n </div>-->\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: DesignerCubeFilterComponent, selector: "bizdoc-designer-cube-filter", inputs: ["cube", "form"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
34621
+ AnalysisWidgetDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: AnalysisWidgetDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length > 1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('xAxis').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('xAxis').value && form.get('xAxis').value.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title}}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let i of cube?.indices\" [value]=\"i.name\">{{i.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div>\r\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\r\n <mat-radio-group formControlName=\"scope\">\r\n <mat-radio-button>{{'Global'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n </div>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Pie\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Doughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Doughnut'|translate}}</mat-option>\r\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'HalfDoughnut'|translate}}</mat-option>\r\n <mat-option value=\"Funnel\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Funnel'|translate}}</mat-option>\r\n <mat-option value=\"Pyramid\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pyramid'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar\" [disabled]=\"!form.get('series').value\">{{'StackingBar'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.get('series').value\">{{'StackingBar100'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea\" [disabled]=\"!form.get('series').value\">{{'StackingArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.get('series').value\">{{'StackingArea100'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.get('series').value\">{{'StackingColumn'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.get('series').value\">{{'StackingColumn100'|translate}}</mat-option>\r\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.get('series').value\">{{'StackingStepArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine\" [disabled]=\"!form.get('series').value\">{{'StackingLine'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.get('series').value\">{{'StackingLine100'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\" *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"indicesChartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n <!--<div *ngIf=\"options.xAxis\">\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\"\r\n [chartType]=\"options.chartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"options.filters\"\r\n [xAxis]=\"options.xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"options.xAxis\"\r\n [series]=\"options.series\"\r\n [indices]=\"options.indices\"\r\n [filters]=\"options.filters\"\r\n [chartType]=\"options.chartType\"\r\n [indicesChartType]=\"options.indicesChartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"></bizdoc-cube-chart>\r\n </ng-container>\r\n </div>-->\r\n</ng-template>\r\n", dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3$6.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3$6.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: DesignerCubeFilterComponent, selector: "bizdoc-designer-cube-filter", inputs: ["cube", "form"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
34607
34622
  AnalysisWidgetDesignComponent = __decorate([
34608
34623
  BizDoc({ selector: 'analysis-widget-designer' })
34609
34624
  ], AnalysisWidgetDesignComponent);
34610
34625
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: AnalysisWidgetDesignComponent, decorators: [{
34611
34626
  type: Component,
34612
- args: [{ template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length > 1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('xAxis').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('xAxis').value && form.get('xAxis').value.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title}}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let i of cube?.indices\" [value]=\"i.name\">{{i.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Pie\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Doughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Doughnut'|translate}}</mat-option>\r\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'HalfDoughnut'|translate}}</mat-option>\r\n <mat-option value=\"Funnel\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Funnel'|translate}}</mat-option>\r\n <mat-option value=\"Pyramid\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pyramid'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar\" [disabled]=\"!form.get('series').value\">{{'StackingBar'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.get('series').value\">{{'StackingBar100'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea\" [disabled]=\"!form.get('series').value\">{{'StackingArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.get('series').value\">{{'StackingArea100'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.get('series').value\">{{'StackingColumn'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.get('series').value\">{{'StackingColumn100'|translate}}</mat-option>\r\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.get('series').value\">{{'StackingStepArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine\" [disabled]=\"!form.get('series').value\">{{'StackingLine'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.get('series').value\">{{'StackingLine100'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\" *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"indicesChartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n <!--<div *ngIf=\"options.xAxis\">\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\"\r\n [chartType]=\"options.chartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"options.filters\"\r\n [xAxis]=\"options.xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"options.xAxis\"\r\n [series]=\"options.series\"\r\n [indices]=\"options.indices\"\r\n [filters]=\"options.filters\"\r\n [chartType]=\"options.chartType\"\r\n [indicesChartType]=\"options.indicesChartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"></bizdoc-cube-chart>\r\n </ng-container>\r\n </div>-->\r\n</ng-template>\r\n" }]
34627
+ args: [{ template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-form-field *ngIf=\"cubes.length > 1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('xAxis').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('XAxis'|translate)\"></mat-error>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('xAxis').value && form.get('xAxis').value.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title}}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple>\r\n <mat-option *ngFor=\"let i of cube?.indices\" [value]=\"i.name\">{{i.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div>\r\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\r\n <mat-radio-group formControlName=\"scope\">\r\n <mat-radio-button>{{'Global'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n </div>\r\n <div class=\"row\">\r\n <mat-form-field class=\"flex\">\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Pie\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pie'|translate}}</mat-option>\r\n <mat-option value=\"Doughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Doughnut'|translate}}</mat-option>\r\n <mat-option value=\"HalfDoughnut\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'HalfDoughnut'|translate}}</mat-option>\r\n <mat-option value=\"Funnel\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Funnel'|translate}}</mat-option>\r\n <mat-option value=\"Pyramid\" [disabled]=\"form.get('series').value || form.get('indices').value\">{{'Pyramid'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar\" [disabled]=\"!form.get('series').value\">{{'StackingBar'|translate}}</mat-option>\r\n <mat-option value=\"StackingBar100\" [disabled]=\"!form.get('series').value\">{{'StackingBar100'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea\" [disabled]=\"!form.get('series').value\">{{'StackingArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingArea100\" [disabled]=\"!form.get('series').value\">{{'StackingArea100'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn\" [disabled]=\"!form.get('series').value\">{{'StackingColumn'|translate}}</mat-option>\r\n <mat-option value=\"StackingColumn100\" [disabled]=\"!form.get('series').value\">{{'StackingColumn100'|translate}}</mat-option>\r\n <mat-option value=\"StackingStepArea\" [disabled]=\"!form.get('series').value\">{{'StackingStepArea'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine\" [disabled]=\"!form.get('series').value\">{{'StackingLine'|translate}}</mat-option>\r\n <mat-option value=\"StackingLine100\" [disabled]=\"!form.get('series').value\">{{'StackingLine100'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n &nbsp;\r\n <mat-form-field class=\"flex\" *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'IndicesChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"indicesChartType\">\r\n <mat-option>{{'Default'|translate}}</mat-option>\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Bubble\">{{'Bubble'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n <mat-option value=\"Spline\">{{'Spline'|translate}}</mat-option>\r\n <mat-option value=\"Area\">{{'Area'|translate}}</mat-option>\r\n <mat-option value=\"SplineArea\">{{'SplineArea'|translate}}</mat-option>\r\n <mat-option value=\"Scatter\">{{'Scatter'|translate}}</mat-option>\r\n <mat-option value=\"Polar\">{{'Polar'|translate}}</mat-option>\r\n <mat-option value=\"Radar\">{{'Radar'|translate}}</mat-option>\r\n <mat-option value=\"StepLine\">{{'StepLine'|translate}}</mat-option>\r\n <mat-option value=\"StepArea\">{{'StepArea'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n <!--<div *ngIf=\"options.xAxis\">\r\n <ng-container [ngSwitch]=\"isAccum\">\r\n <bizdoc-cube-accum *ngSwitchCase=\"true\"\r\n [chartType]=\"options.chartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"\r\n [cube]=\"cube.name\"\r\n [filters]=\"options.filters\"\r\n [xAxis]=\"options.xAxis\"></bizdoc-cube-accum>\r\n <bizdoc-cube-chart *ngSwitchDefault\r\n [cube]=\"cube.name\"\r\n [xAxis]=\"options.xAxis\"\r\n [series]=\"options.series\"\r\n [indices]=\"options.indices\"\r\n [filters]=\"options.filters\"\r\n [chartType]=\"options.chartType\"\r\n [indicesChartType]=\"options.indicesChartType\"\r\n [width]=\"200\"\r\n [scope]=\"options.scope\"></bizdoc-cube-chart>\r\n </ng-container>\r\n </div>-->\r\n</ng-template>\r\n" }]
34613
34628
  }] });
34614
34629
 
34615
34630
  let ExploreViewDesignComponent = class ExploreViewDesignComponent extends DesignerCubeElementComponent {
@@ -34768,13 +34783,13 @@ let UsageReportDesignComponent = class UsageReportDesignComponent extends Design
34768
34783
  }
34769
34784
  };
34770
34785
  UsageReportDesignComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UsageReportDesignComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
34771
- UsageReportDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UsageReportDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-radio-group [formControl]=\"type\" (change)=\"typechange($event)\">\r\n <mat-radio-button value=\"Chart\">{{'Chart'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Pivot\">{{'Pivot'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('series').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n </mat-form-field>\r\n <ng-container [ngSwitch]=\"type.value\">\r\n <ng-container *ngSwitchCase=\"'Pivot'\">\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('series').value?.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let x of cube?.indices\" [value]=\"x.name\">{{x.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <ng-container *ngSwitchCase=\"'Chart'\">\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n </ng-container>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3$6.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3$6.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: DesignerCubeFilterComponent, selector: "bizdoc-designer-cube-filter", inputs: ["cube", "form"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
34786
+ UsageReportDesignComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: UsageReportDesignComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-radio-group [formControl]=\"type\" (change)=\"typechange($event)\">\r\n <mat-radio-button value=\"Chart\">{{'Chart'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Pivot\">{{'Pivot'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('series').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n </mat-form-field>\r\n <ng-container [ngSwitch]=\"type.value\">\r\n <ng-container *ngSwitchCase=\"'Pivot'\">\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('series').value?.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'Chart'\">\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n </ng-container>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let x of cube?.indices\" [value]=\"x.name\">{{x.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div>\r\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\r\n <mat-radio-group formControlName=\"scope\">\r\n <mat-radio-button>{{'Global'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n </div>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n</ng-template>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1$2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3$6.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i3$6.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "component", type: i3$2.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: i4.MatError, selector: "mat-error", inputs: ["id"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["color", "appearance", "hideRequiredMarker", "hintLabel", "floatLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex"], exportAs: ["matSelect"] }, { kind: "component", type: DesignerCubeFilterComponent, selector: "bizdoc-designer-cube-filter", inputs: ["cube", "form"] }, { kind: "pipe", type: LocalizedStringPipe, name: "localizedString" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
34772
34787
  UsageReportDesignComponent = __decorate([
34773
34788
  BizDoc({ selector: 'usage-report-designer' })
34774
34789
  ], UsageReportDesignComponent);
34775
34790
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: UsageReportDesignComponent, decorators: [{
34776
34791
  type: Component,
34777
- args: [{ template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-radio-group [formControl]=\"type\" (change)=\"typechange($event)\">\r\n <mat-radio-button value=\"Chart\">{{'Chart'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Pivot\">{{'Pivot'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('series').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n </mat-form-field>\r\n <ng-container [ngSwitch]=\"type.value\">\r\n <ng-container *ngSwitchCase=\"'Pivot'\">\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('series').value?.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let x of cube?.indices\" [value]=\"x.name\">{{x.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <ng-container *ngSwitchCase=\"'Chart'\">\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n </ng-container>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n</ng-template>\r\n" }]
34792
+ args: [{ template: "<ng-container *ngIf=\"mode === 'widget'; else edit\">\r\n</ng-container>\r\n<ng-template #edit>\r\n <form autocomplete=\"off\" [formGroup]=\"form\" class=\"column\">\r\n <mat-radio-group [formControl]=\"type\" (change)=\"typechange($event)\">\r\n <mat-radio-button value=\"Chart\">{{'Chart'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Pivot\">{{'Pivot'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n <mat-form-field *ngIf=\"cubes.length>1\">\r\n <mat-label>{{'Cube'|translate}}</mat-label>\r\n <mat-select required formControlName=\"cube\" (selectionChange)=\"cubeSelected($event)\">\r\n <mat-option *ngFor=\"let c of cubes\" [value]=\"c.name\">{{c.title|localizedString}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <mat-form-field>\r\n <mat-label>{{'Series'|translate}}</mat-label>\r\n <mat-select formControlName=\"series\" required multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let a of cube?.axes\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"form.get('series').hasError('required')\" [innerHTML]=\"'RequiredErr'|translate:('Series'|translate)\"></mat-error>\r\n </mat-form-field>\r\n <ng-container [ngSwitch]=\"type.value\">\r\n <ng-container *ngSwitchCase=\"'Pivot'\">\r\n <mat-form-field>\r\n <mat-label>{{'XAxis'|translate}}</mat-label>\r\n <mat-select formControlName=\"xAxis\" multiple [sortComparator]=\"sortComparator\">\r\n <ng-container *ngFor=\"let a of cube?.axes\">\r\n <mat-option *ngIf=\"form.get('series').value?.indexOf(a.name) < 0\" [value]=\"a.name\">{{a.title }}</mat-option>\r\n </ng-container>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'Chart'\">\r\n <mat-form-field>\r\n <mat-label>{{'ChartType'|translate}}</mat-label>\r\n <mat-select formControlName=\"chartType\">\r\n <mat-option value=\"Column\">{{'Column'|translate}}</mat-option>\r\n <mat-option value=\"Bar\">{{'Bar'|translate}}</mat-option>\r\n <mat-option value=\"Line\">{{'Line'|translate}}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </ng-container>\r\n </ng-container>\r\n <mat-form-field *ngIf=\"cube?.indices?.length\">\r\n <mat-label>{{'Indices'|translate}}</mat-label>\r\n <mat-select formControlName=\"indices\" multiple [sortComparator]=\"sortComparator\">\r\n <mat-option *ngFor=\"let x of cube?.indices\" [value]=\"x.name\">{{x.title }}</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n <div>\r\n <mat-label>{{'SecurityLevel'|translate}}</mat-label>\r\n <mat-radio-group formControlName=\"scope\">\r\n <mat-radio-button>{{'Global'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Positions\">{{'Positions'|translate}}</mat-radio-button>\r\n <mat-radio-button value=\"Patterns\">{{'Patterns'|translate}}</mat-radio-button>\r\n </mat-radio-group>\r\n </div>\r\n <bizdoc-designer-cube-filter *ngIf=\"cube\" [cube]=\"cube\" [form]=\"form.get('filters')\"></bizdoc-designer-cube-filter>\r\n </form>\r\n</ng-template>\r\n" }]
34778
34793
  }] });
34779
34794
 
34780
34795
  let AnomalyRuleDesignComponent = class AnomalyRuleDesignComponent extends DesignerElementComponentBase {